X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=formats%2Fctf%2Fmetadata%2Fctf-test%2Fsucceed%2Fctf-test.txt;h=b6b1ab9d02a50a71369feab8b779715fdd0c8762;hp=c148a436964ea350a926c564e1096f6a2b294789;hb=b7beee1d5411e01d477c089756592605c1202be8;hpb=a030d0842e2f7f6d88fbcd496d9e9287a8d5b78e diff --git a/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt b/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt index c148a436..b6b1ab9d 100644 --- a/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt +++ b/formats/ctf/metadata/ctf-test/succeed/ctf-test.txt @@ -1,9 +1,11 @@ +/* CTF 1.8 */ typealias integer { size = 32; align = 32; signed = true; } := int; +typealias integer { size = 32; align = 32; signed = false; } := uint; typealias integer { size = 64; align = 64; signed = true; } := long; typealias integer { size = 64; align = 64; } := unsigned long; -enum name1 { +enum name1 : int { ZERO, ONE, TWO, @@ -11,18 +13,20 @@ enum name1 { ELEVEN, }; -enum name2 { ONE, TWO }; +enum name2 : long { ONE, TWO }; -enum name3 { ONE, TWO }; +enum name3 : unsigned long { ONE, TWO }; -enum name4 { +enum name4 : unsigned long { string = 1 ... 2, "other string" = 3...4, yet_another_string, /* will be assigned to end_value2 + 1 */ "some other string" = 10, }; -enum name5 { "int" = 1, }; +enum name5 : long { "int" = 1, }; + +enum name6 { "int" = 1, }; typealias floating_point { exp_dig = 8; /* sizeof(float) * CHAR_BIT - FLT_MANT_DIG */ @@ -36,11 +40,21 @@ typealias integer { signed = false; } := struct page *; +struct event_packet_header { + typealias integer { size = 32; align = 32; signed = false; } := uint32_t; + typealias integer { size = 8; align = 8; signed = false; } := uint8_t; + + uint32_t magic; + uint8_t uuid[16]; + uint32_t stream_id; +}; + trace { major = 66; minor = 2; + byte_order = le; uuid = "1123fcea-706e-11e0-a38b-f3c28a683a3d"; - word_size = 64; + packet.header := struct event_packet_header; }; stream { @@ -69,7 +83,7 @@ struct name { typealias integer { size = 16; align = 16; signed = true; } := short; typealias uint32_t := unsigned int; - enum { a, b, c, d } choice; + enum : uint2_t { a, b, c, d } choice; /* Unrelated fields can be added between the variant and its tag */ int32_t somevalue; variant { @@ -91,15 +105,6 @@ typealias integer { typealias string { encoding = UTF8; } := test; -struct event_packet_header { - typealias integer { size = 32; align = 32; signed = false; } := uint32_t; - typealias integer { size = 8; align = 8; signed = false; } := uint8_t; - - uint32_t magic; - uint8_t trace_uuid[16]; - uint32_t stream_id; -}; - struct event_packet_context { typealias integer { size = 64; align = 64; signed = false; } := uint64_t; typealias integer { size = 32; align = 32; signed = false; } := uint32_t; @@ -130,7 +135,7 @@ struct event_header_1 { * id: range: 0 - 30. * id 31 is reserved to indicate an extended header. */ - enum { compact = 0 ... 30, extended = 31 } id; + enum : uint5_t { compact = 0 ... 30, extended = 31 } id; variant { struct { uint27_t timestamp; @@ -151,7 +156,7 @@ struct event_header_2 { * id: range: 0 - 65534. * id 65535 is reserved to indicate an extended header. */ - enum { compact = 0 ... 65534, extended = 65535 } id; + enum : uint16_t { compact = 0 ... 65534, extended = 65535 } id; variant { struct { uint32_t timestamp; @@ -172,7 +177,29 @@ event { id = 0; stream_id = 5; context := struct {}; - payload := struct {}; + fields := struct {}; }; typealias integer { size = 32; align = 32; signed = false; } := unsigned long long *; + +variant vardecl { + int a; + int b; +}; + +event { + typealias integer { size = 8; align = 8; signed = true; } := char; + typealias integer { size = 32; align = 32; signed = false; } := unsigned int; + + name = test_event2; + id = 1; + stream_id = 5; + fields := struct { + enum : char { a = 0, b = 1, } tag; + variant vardecl myvariant; + unsigned int seqlen; + int myseq[seqlen]; + }; +}; + +typedef int myarray[10];