aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-opts.c
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-08-06 11:23:23 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-08-06 11:23:23 +0000
commiteaac467945c87292784a1773c911f649e340136a (patch)
tree2423669b264154305c8f708c1b78d38c7f40ddd2 /gcc/c-opts.c
parent155cb61615af89497814ef6c2685e2dfd098f2f7 (diff)
downloadgcc-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/c-opts.c')
-rw-r--r--gcc/c-opts.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/c-opts.c b/gcc/c-opts.c
index faa6023..92a6c72 100644
--- a/gcc/c-opts.c
+++ b/gcc/c-opts.c
@@ -958,10 +958,12 @@ c_common_post_options (const char **pfilename)
if (flag_objc_exceptions && !flag_objc_sjlj_exceptions)
flag_exceptions = 1;
- /* -Wextra implies -Wsign-compare, but not if explicitly
- overridden. */
+ /* -Wextra implies -Wsign-compare and -Wmissing-field-initializers,
+ but not if explicitly overridden. */
if (warn_sign_compare == -1)
warn_sign_compare = extra_warnings;
+ if (warn_missing_field_initializers == -1)
+ warn_missing_field_initializers = extra_warnings;
/* Special format checking options don't work without -Wformat; warn if
they are used. */