summaryrefslogtreecommitdiff
path: root/gcc/c-opts.c
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-06 11:23:23 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-06 11:23:23 +0000
commit3304fb1c75b739d6f91161842c6e0e0a4c7abaa3 (patch)
tree2423669b264154305c8f708c1b78d38c7f40ddd2 /gcc/c-opts.c
parentf1f85ed28b551fb90cb6b199cbef99a3d4007016 (diff)
downloadgcc-3304fb1c75b739d6f91161842c6e0e0a4c7abaa3.tar.gz
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85638 138bc75d-0d04-0410-961f-82ee72b054a4
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 faa6023b1b9..92a6c7273a3 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. */