diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/cp/decl.c | 13 | ||||
| -rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/testsuite/g++.dg/warn/Wbraces1.C | 3 | 
4 files changed, 22 insertions, 4 deletions
| diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 490a54e..971baca 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2005-02-10  Mark Mitchell  <mark@codesourcery.com> + +	PR c++/19755 +	* decl.c (reshape_init): Issue warnings about missing braces. +  2005-02-11  Kazu Hirata  <kazu@cs.umass.edu>  	* cp-tree.def, except.c, ptree.c: Update copyright. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 05918f5..a93cdf8 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -4352,10 +4352,15 @@ reshape_init (tree type, tree *initp)  	new_init = build_tree_list (TREE_PURPOSE (old_init), new_init);      } -  /* If this was a brace-enclosed initializer and all of the -     initializers were not used up, there is a problem.  */ -  if (brace_enclosed_p && *initp) -    error ("too many initializers for %qT", type); +  /* If there are more initializers than necessary, issue a +     diagnostic.  */   +  if (*initp) +    { +      if (brace_enclosed_p) +	error ("too many initializers for %qT", type); +      else if (warn_missing_braces) +	warning ("missing braces around initializer"); +    }    return new_init;  } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6e7dc97..1064f44 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-02-11  Mark Mitchell  <mark@codesourcery.com> + +	PR c++/19755 +	* g++.dg/warn/Wbraces1.C: New test. +  2005-02-10  Richard Guenther  <rguenth@gcc.gnu.org>  	* gcc.dg/builtins-52.c: New testcase. diff --git a/gcc/testsuite/g++.dg/warn/Wbraces1.C b/gcc/testsuite/g++.dg/warn/Wbraces1.C new file mode 100644 index 0000000..0efce7b --- /dev/null +++ b/gcc/testsuite/g++.dg/warn/Wbraces1.C @@ -0,0 +1,3 @@ +// PR c++/19755 +// { dg-options "-Wmissing-braces" } +int a[2][2] = { 0, 1 , 2, 3 }; // { dg-warning "" } | 
