From 847c8ce4d147f2de0d99b517f7557f804e592867 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20L=C3=B3pez-Ib=C3=A1=C3=B1ez?= Date: Sat, 3 Nov 2007 19:41:20 +0000 Subject: re PR c/29062 (unclear diagnostic for declaration after label) 2007-11-03 Manuel Lopez-Ibanez PR c/29062 * c-parser.c (c_parser_statement_after_labels): Error if a declaration is parsed after a label. testsuite/ * gcc.dg/20031223-1.c: Adjust error output. * gcc.dg/parse-decl-after-label.c: New. From-SVN: r129873 --- gcc/testsuite/gcc.dg/parse-decl-after-label.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/parse-decl-after-label.c (limited to 'gcc/testsuite/gcc.dg/parse-decl-after-label.c') diff --git a/gcc/testsuite/gcc.dg/parse-decl-after-label.c b/gcc/testsuite/gcc.dg/parse-decl-after-label.c new file mode 100644 index 0000000..f457c6a --- /dev/null +++ b/gcc/testsuite/gcc.dg/parse-decl-after-label.c @@ -0,0 +1,17 @@ +/* PR 29062 +{ dg-do compile } +{ dg-options "-fsyntax-only" } +*/ + +int f(x) +{ + if (x > 1) + { + goto finish; + } + return x; + + finish: + int ret = 1; /* { dg-error "a label can only be part of a statement and a declaration is not a statement" } */ + return ret; +} -- cgit v1.1