* c-typeck.c (output_init_element): Return early if value is
error_mark_node.
testsuite:
* gcc.dg/init-undef-1.c: New test.
From-SVN: r90146
+2004-11-05 Joseph S. Myers <joseph@codesourcery.com>
+
+ * c-typeck.c (output_init_element): Return early if value is
+ error_mark_node.
+
2004-11-05 James E Wilson <wilson@specifixinc.com>
* invoke.texi (-fno-guess-branch-probability): Rewrite.
output_init_element (tree value, bool strict_string, tree type, tree field,
int pending)
{
- if (type == error_mark_node)
+ if (type == error_mark_node || value == error_mark_node)
{
constructor_erroneous = 1;
return;
+2004-11-05 Joseph S. Myers <joseph@codesourcery.com>
+
+ * gcc.dg/init-undef-1.c: New test.
+
2004-11-05 Joseph S. Myers <joseph@codesourcery.com>
* gcc.dg/20040910-1.c, gcc.dg/cpp/digraph2.c,
--- /dev/null
+/* Invalid initializers should not receive an "is not constant"
+ error. */
+/* Origin: Joseph Myers <joseph@codesourcery.com> */
+/* { dg-do compile } */
+/* { dg-options "" } */
+
+int p = c; /* { dg-error "undeclared" } */
+struct s { int a; } x = { b }; /* { dg-error "undeclared" } */