Allow tracepoint providers to be compiled with g++
[lttng-ust.git] / include / lttng / ust-events.h
index 0b8664c3cbae0635c441f777e11d4d359e21ba5d..329ed3a8ecf34bccd0eec2a62709f185334f9c99 100644 (file)
@@ -98,15 +98,21 @@ struct lttng_enum_entry {
 
 #define __type_integer(_type, _byte_order, _base, _encoding)   \
        {                                                       \
-           .atype = atype_integer,                             \
-           .u.basic.integer =                                  \
+         .atype = atype_integer,                               \
+         .u =                                                  \
                {                                               \
-                 .size = sizeof(_type) * CHAR_BIT,             \
-                 .alignment = lttng_alignof(_type) * CHAR_BIT, \
-                 .signedness = lttng_is_signed_type(_type),    \
-                 .reverse_byte_order = _byte_order != BYTE_ORDER,      \
-                 .base = _base,                                \
-                 .encoding = lttng_encode_##_encoding,         \
+                 .basic =                                      \
+                       {                                       \
+                         .integer =                            \
+                               {                               \
+                                 .size = sizeof(_type) * CHAR_BIT,             \
+                                 .alignment = lttng_alignof(_type) * CHAR_BIT, \
+                                 .signedness = lttng_is_signed_type(_type),    \
+                                 .reverse_byte_order = _byte_order != BYTE_ORDER, \
+                                 .base = _base,                                \
+                                 .encoding = lttng_encode_##_encoding,         \
+                               }                               \
+                       }                                       \
                },                                              \
        }                                                       \
 
@@ -132,14 +138,20 @@ struct lttng_integer_type {
 
 #define __type_float(_type)                                    \
        {                                                       \
-           .atype = atype_float,                               \
-           .u.basic._float =                                   \
+         .atype = atype_float,                                 \
+         .u =                                                  \
                {                                               \
-                 .exp_dig = sizeof(_type) * CHAR_BIT           \
-                               - _float_mant_dig(_type),       \
-                 .mant_dig = _float_mant_dig(_type),           \
-                 .alignment = lttng_alignof(_type) * CHAR_BIT, \
-                 .reverse_byte_order = BYTE_ORDER != FLOAT_WORD_ORDER, \
+                 .basic =                                      \
+                       {                                       \
+                         ._float =                             \
+                               {                               \
+                                 .exp_dig = sizeof(_type) * CHAR_BIT           \
+                                                 - _float_mant_dig(_type),     \
+                                 .mant_dig = _float_mant_dig(_type),           \
+                                 .alignment = lttng_alignof(_type) * CHAR_BIT, \
+                                 .reverse_byte_order = BYTE_ORDER != FLOAT_WORD_ORDER, \
+                               }                               \
+                       }                                       \
                },                                              \
        }                                                       \
 
This page took 0.025307 seconds and 4 git commands to generate.