From dd95046b3d6bb6603529e20f2d15b14fe4144a94 Mon Sep 17 00:00:00 2001 From: François Pottier Date: Fri, 23 Oct 2015 13:45:27 +0200 Subject: Added some handwritten .c files in tests/handwritten/. --- cparser/tests/handwritten/conditional-0.c | 4 ++++ cparser/tests/handwritten/conditional-1.c | 4 ++++ cparser/tests/handwritten/dubious-enum.c | 7 +++++++ cparser/tests/handwritten/missing-assignment.c | 4 ++++ .../handwritten/missing-closing-brace-at-end-of-function.c | 10 ++++++++++ cparser/tests/handwritten/missing-loop-body.c | 5 +++++ cparser/tests/handwritten/missing-operator.c | 5 +++++ cparser/tests/handwritten/missing-semicolon.c | 5 +++++ cparser/tests/handwritten/too-many-closing-parens.c | 4 ++++ cparser/tests/handwritten/unclosed-paren.c | 5 +++++ cparser/tests/handwritten/variable-type-confusion.c | 6 ++++++ 11 files changed, 59 insertions(+) create mode 100644 cparser/tests/handwritten/conditional-0.c create mode 100644 cparser/tests/handwritten/conditional-1.c create mode 100644 cparser/tests/handwritten/dubious-enum.c create mode 100644 cparser/tests/handwritten/missing-assignment.c create mode 100644 cparser/tests/handwritten/missing-closing-brace-at-end-of-function.c create mode 100644 cparser/tests/handwritten/missing-loop-body.c create mode 100644 cparser/tests/handwritten/missing-operator.c create mode 100644 cparser/tests/handwritten/missing-semicolon.c create mode 100644 cparser/tests/handwritten/too-many-closing-parens.c create mode 100644 cparser/tests/handwritten/unclosed-paren.c create mode 100644 cparser/tests/handwritten/variable-type-confusion.c (limited to 'cparser/tests') diff --git a/cparser/tests/handwritten/conditional-0.c b/cparser/tests/handwritten/conditional-0.c new file mode 100644 index 00000000..4aeb4659 --- /dev/null +++ b/cparser/tests/handwritten/conditional-0.c @@ -0,0 +1,4 @@ +int main (int x, int y) +{ + return x == 0 ? x : y == 0 : y; +} diff --git a/cparser/tests/handwritten/conditional-1.c b/cparser/tests/handwritten/conditional-1.c new file mode 100644 index 00000000..c6a5210a --- /dev/null +++ b/cparser/tests/handwritten/conditional-1.c @@ -0,0 +1,4 @@ +int main (int x, int y) +{ + return x == 0 ? x : y == 0 ? y; +} diff --git a/cparser/tests/handwritten/dubious-enum.c b/cparser/tests/handwritten/dubious-enum.c new file mode 100644 index 00000000..12ee6683 --- /dev/null +++ b/cparser/tests/handwritten/dubious-enum.c @@ -0,0 +1,7 @@ +int f (void) +{ + int x = sizeof(enum e; + /* Maybe a closing parenthesis is missing, + maybe also "enum e" could be continued with an opening brace. + Our message ignores the latter possibility. */ +} diff --git a/cparser/tests/handwritten/missing-assignment.c b/cparser/tests/handwritten/missing-assignment.c new file mode 100644 index 00000000..2fce2cbf --- /dev/null +++ b/cparser/tests/handwritten/missing-assignment.c @@ -0,0 +1,4 @@ +int main (void) +{ + int x = 10, y 8; +} diff --git a/cparser/tests/handwritten/missing-closing-brace-at-end-of-function.c b/cparser/tests/handwritten/missing-closing-brace-at-end-of-function.c new file mode 100644 index 00000000..dfb3691d --- /dev/null +++ b/cparser/tests/handwritten/missing-closing-brace-at-end-of-function.c @@ -0,0 +1,10 @@ +int main (void) +{ + int x = 0; + x++; + /* missing closing brace, here */ + /* unfortunately, the error is detected only after the declaration of f */ + +void f (void) +{ +} diff --git a/cparser/tests/handwritten/missing-loop-body.c b/cparser/tests/handwritten/missing-loop-body.c new file mode 100644 index 00000000..44781564 --- /dev/null +++ b/cparser/tests/handwritten/missing-loop-body.c @@ -0,0 +1,5 @@ +int main (void) +{ + int x = 10; + while (x--) /* missing loop body */ +} diff --git a/cparser/tests/handwritten/missing-operator.c b/cparser/tests/handwritten/missing-operator.c new file mode 100644 index 00000000..d93e91f4 --- /dev/null +++ b/cparser/tests/handwritten/missing-operator.c @@ -0,0 +1,5 @@ +int main (void) +{ + int y = 7, z = 8; + int x = (3 * (2 x) - y * y); +} diff --git a/cparser/tests/handwritten/missing-semicolon.c b/cparser/tests/handwritten/missing-semicolon.c new file mode 100644 index 00000000..a655ca3b --- /dev/null +++ b/cparser/tests/handwritten/missing-semicolon.c @@ -0,0 +1,5 @@ +int main (void) +{ + int y = 7, z = 8 + int x = (3 * (2 + x) - y * y); +} diff --git a/cparser/tests/handwritten/too-many-closing-parens.c b/cparser/tests/handwritten/too-many-closing-parens.c new file mode 100644 index 00000000..68fe0b62 --- /dev/null +++ b/cparser/tests/handwritten/too-many-closing-parens.c @@ -0,0 +1,4 @@ +int main (void) +{ + int x = main()); +} diff --git a/cparser/tests/handwritten/unclosed-paren.c b/cparser/tests/handwritten/unclosed-paren.c new file mode 100644 index 00000000..b0ef6747 --- /dev/null +++ b/cparser/tests/handwritten/unclosed-paren.c @@ -0,0 +1,5 @@ +int main (void) +{ + int y = 7; + int x = (3 * (2 + x) - y * y; +} diff --git a/cparser/tests/handwritten/variable-type-confusion.c b/cparser/tests/handwritten/variable-type-confusion.c new file mode 100644 index 00000000..0957ca9d --- /dev/null +++ b/cparser/tests/handwritten/variable-type-confusion.c @@ -0,0 +1,6 @@ +typedef int t; +typedef int u; +int f (void) { + t = 3; +} + -- cgit