X-Git-Url: http://git.efficios.com/?p=ctf.git;a=blobdiff_plain;f=common-trace-format-proposal.txt;h=2a4dbfe25a40d8f206760054c80b196feaa4593b;hp=8d8fb7ca04d2582fdf7522c0e54e8f07ff7143fc;hb=550aca336f90ab7bca145122d5b138132fa58fa5;hpb=4fa992a5b44f9c2eecd93c2c12820428f5d7c36f diff --git a/common-trace-format-proposal.txt b/common-trace-format-proposal.txt index 8d8fb7c..2a4dbfe 100644 --- a/common-trace-format-proposal.txt +++ b/common-trace-format-proposal.txt @@ -273,7 +273,7 @@ repeating the start and end values with the value = string declaration. If a numeric value is encountered between < >, it represents the integer type size used to hold the enumeration, in bits. -enum name { +enum name { string = start_value1 ... end_value1, "other string" = start_value2 ... end_value2, yet_another_string, /* will be assigned to end_value2 + 1 */ @@ -284,7 +284,7 @@ enum name { If the values are omitted, the enumeration starts at 0 and increment of 1 for each entry: -enum <32> name { +enum name <32> { ZERO, ONE, TWO, @@ -591,7 +591,7 @@ struct event_packet_context { uint8_t stream_packet_count_bits; /* Significant counter bits */ uint8_t compression_scheme; uint8_t encryption_scheme; - uint8_t checksum; + uint8_t checksum_scheme; }; @@ -848,7 +848,7 @@ variant name { ... }; -enum name { +enum name { ... }; @@ -981,6 +981,7 @@ stream string struct trace +typealias typedef unsigned variant @@ -1152,9 +1153,6 @@ unary-expression: unary-operator: one of + - -assignment-expression: - unary-expression assignment-operator unary-expression - assignment-operator: = @@ -1167,11 +1165,11 @@ constant-expression-range: 2.2) Declarations: declaration: - declaration-specifiers declarator-list-opt ; + declaration-specifiers ; + declaration-specifiers storage-class-specifier declaration-specifiers declarator-list ; ctf-specifier ; declaration-specifiers: - storage-class-specifier declaration-specifiers-opt type-specifier declaration-specifiers-opt type-qualifier declaration-specifiers-opt @@ -1194,13 +1192,14 @@ type-specifier: unsigned _Bool _Complex - struct-or-variant-specifier + struct-specifier + variant-specifier enum-specifier typedef-name ctf-type-specifier struct-specifier: - struct identifier-opt { struct-or-variant-declaration-list } + struct identifier-opt { struct-or-variant-declaration-list-opt } struct identifier struct-or-variant-declaration-list: @@ -1209,6 +1208,8 @@ struct-or-variant-declaration-list: struct-or-variant-declaration: specifier-qualifier-list struct-or-variant-declarator-list ; + declaration-specifiers storage-class-specifier declaration-specifiers declarator-list ; + typealias declaration-specifiers declaration-specifiers declarator-list : declaration-specifiers declarator-list ; specifier-qualifier-list: type-specifier specifier-qualifier-list-opt @@ -1262,17 +1263,13 @@ direct-declarator: direct-declarator [ constant-expression ] pointer: - type-qualifier-list-opt - type-qualifier-list-opt pointer + * type-qualifier-list-opt + * type-qualifier-list-opt pointer type-qualifier-list: type-qualifier type-qualifier-list type-qualifier -identifier-list: - identifier - identifier-list , identifier - typedef-name: identifier @@ -1282,6 +1279,7 @@ ctf-specifier: event { ctf-assignment-expression-list-opt } stream { ctf-assignment-expression-list-opt } trace { ctf-assignment-expression-list-opt } + typealias declaration-specifiers declaration-specifiers declarator-list : declaration-specifiers declarator-list ; ctf-type-specifier: floating_point { ctf-assignment-expression-list-opt } @@ -1295,3 +1293,5 @@ ctf-assignment-expression-list: ctf-assignment-expression: unary-expression assignment-operator unary-expression unary-expression type-assignment-operator type-specifier + declaration-specifiers storage-class-specifier declaration-specifiers declarator-list + typealias declaration-specifiers declaration-specifiers declarator-list : declaration-specifiers declarator-list