diff options
author | Richard Sandiford <rsandifo@redhat.com> | 2004-08-06 11:23:23 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2004-08-06 11:23:23 +0000 |
commit | eaac467945c87292784a1773c911f649e340136a (patch) | |
tree | 2423669b264154305c8f708c1b78d38c7f40ddd2 /gcc/testsuite/gcc.dg/missing-field-init-1.c | |
parent | 155cb61615af89497814ef6c2685e2dfd098f2f7 (diff) | |
download | gcc-eaac467945c87292784a1773c911f649e340136a.zip gcc-eaac467945c87292784a1773c911f649e340136a.tar.gz gcc-eaac467945c87292784a1773c911f649e340136a.tar.bz2 |
re PR c/13282 (A "-Wno..." switch to turn off "missing initializer" warnings)
PR c/13282
* c.opt (Wmissing-field-initializers): New option.
* c-opts.c (c_common_post_options): Make -Wextra turn it on by default.
* c-typeck.c (pop_init_level): Guard the missing field warning with
warn_missing_field_initializers rather than extra_warnings.
* doc/invoke.texi (-Wmissing-field-initializers): Document, moving
some of the explanation from...
(-Wextra): ...here. Say that the missing field warning can be
seperately controlled by -Wmissing-field-initializers.
cp/
* typeck2.c (process_init_constructor): Guard the missing field warning
with warn_missing_field_initializers rather than extra_warnings.
testsuite/
* gcc.dg/missing-field-init-[12].c: New tests.
* g++.dg/warn/missing-field-init-[12].C: New tests.
From-SVN: r85638
Diffstat (limited to 'gcc/testsuite/gcc.dg/missing-field-init-1.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/missing-field-init-1.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/missing-field-init-1.c b/gcc/testsuite/gcc.dg/missing-field-init-1.c new file mode 100644 index 0000000..5f32b02 --- /dev/null +++ b/gcc/testsuite/gcc.dg/missing-field-init-1.c @@ -0,0 +1,10 @@ +/* { dg-do compile } */ +/* { dg-options "-Wextra -Wno-missing-field-initializers -std=c99" } */ + +struct s { int a, b, c; }; +struct s s1 = { 1, 2, 3 }; +struct s s2 = { 1, 2 }; /* { dg-bogus "missing initializer" } */ +struct s s3[] = { { 1, 2 }, { 4, 5 } }; /* { dg-bogus "missing initializer" } */ +struct s s4[] = { 1, 2, 3, 4, 5 }; /* { dg-bogus "missing initializer" } */ +struct s s5[] = { 1, 2, 3, 4, 5, 6 }; +struct s s6 = { .a = 1 }; /* { dg-bogus "missing initializer" } */ |