From: Mathieu Desnoyers Date: Wed, 13 Jul 2011 19:15:35 +0000 (-0400) Subject: Add tofix/ parser test files X-Git-Tag: v0.1~9^2 X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=5594f671013222791119b10d4489b2a98f7ffe85 Add tofix/ parser test files Signed-off-by: Mathieu Desnoyers --- diff --git a/formats/ctf/metadata/ctf-test/readme.txt b/formats/ctf/metadata/ctf-test/readme.txt index 8dbb1314..5bcb830b 100644 --- a/formats/ctf/metadata/ctf-test/readme.txt +++ b/formats/ctf/metadata/ctf-test/readme.txt @@ -1,4 +1,7 @@ These are the CTF metadata parser test. Those under succeed/ should successfully parse. Those under fail/ should provide an appropriate failure message. +The tests under tofix/ do not follow the CTF specifications due to +ambiguity in the LALR parser implementation. These are rarely used. + Mathieu Desnoyers diff --git a/formats/ctf/metadata/ctf-test/tofix/ctf-redefine-type.txt b/formats/ctf/metadata/ctf-test/tofix/ctf-redefine-type.txt new file mode 100644 index 00000000..f7a03d39 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/tofix/ctf-redefine-type.txt @@ -0,0 +1,23 @@ +typealias integer { size = 8; align = 8; signed = false; } := uint8_t; +typealias integer { size = 32; align = 8; signed = false; } := uint32_t; + +// Define newtype +typealias uint32_t := newtype; + +trace { + // Hide newtype + typedef uint8_t newtype; + + major = 0; + minor = 1; + uuid = "2a6422d0-6cee-11e0-8c08-cb07d7b3a564"; + byte_order = le; + packet.header := struct { + uint8_t field; + }; +}; + +event { + name = string; + fields := struct { string str; }; +}; diff --git a/formats/ctf/metadata/ctf-test/tofix/ctf-typedef-ambiguity.txt b/formats/ctf/metadata/ctf-test/tofix/ctf-typedef-ambiguity.txt new file mode 100644 index 00000000..a5dd3a72 --- /dev/null +++ b/formats/ctf/metadata/ctf-test/tofix/ctf-typedef-ambiguity.txt @@ -0,0 +1,8 @@ +// Define unsigned long +typealias integer { ... } := unsigned long; + +// Define unsigned long int +typealias integer { ... } := unsigned long int; + +// Define int +typedef unsigned long int;