re PR c/38243 (Restrict constraint violation not an error with -pedantic-errors)

PR c/38243
	* c-decl.c (shadow_tag_warned): Diagnose use of restrict when
	declaring a tag.

testsuite:
	* gcc.dg/c99-restrict-3.c: New test.

From-SVN: r146356
This commit is contained in:
Joseph Myers 2009-04-19 19:25:07 +01:00 committed by Joseph Myers
parent 3baf459d85
commit da377db901
4 changed files with 24 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2009-04-19 Joseph Myers <joseph@codesourcery.com>
PR c/38243
* c-decl.c (shadow_tag_warned): Diagnose use of restrict when
declaring a tag.
2009-04-19 Diego Novillo <dnovillo@google.com>
* toplev.c (compile_file): Move call to coverage_finish ...

View File

@ -2883,6 +2883,12 @@ shadow_tag_warned (const struct c_declspecs *declspecs, int warned)
found_tag = true;
if (declspecs->restrict_p)
{
error ("invalid use of %<restrict%>");
warned = 1;
}
if (name == 0)
{
if (warned != 1 && code != ENUMERAL_TYPE)

View File

@ -1,3 +1,8 @@
2009-04-19 Joseph Myers <joseph@codesourcery.com>
PR c/38243
* gcc.dg/c99-restrict-3.c: New test.
2009-04-19 Joseph Myers <joseph@codesourcery.com>
PR preprocessor/20078

View File

@ -0,0 +1,7 @@
/* restrict qualifiers on non-pointers must be diagnosed even when
only a tag is being declared. PR 38243. */
/* { dg-do compile } */
/* { dg-options "-std=iso9899:1999 -pedantic-errors" } */
restrict struct s; /* { dg-error "restrict" } */
restrict union u; /* { dg-error "restrict" } */