There is no need to finalize local error_mark_node decls.
gcc/
PR target/66810
* cgraphbuild.c (pass_build_cgraph_edges::execute): Skip local
error_mark_node decls.
gcc/testsuite/
PR target/66810
* gcc.target/i386/pr66810.c: New test.
From-SVN: r229083
+2015-10-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/66810
+ * cgraphbuild.c (pass_build_cgraph_edges::execute): Skip local
+ error_mark_node decls.
+
2015-10-20 H.J. Lu <hongjiu.lu@intel.com>
PR target/67963
FOR_EACH_LOCAL_DECL (fun, ix, decl)
if (TREE_CODE (decl) == VAR_DECL
&& (TREE_STATIC (decl) && !DECL_EXTERNAL (decl))
- && !DECL_HAS_VALUE_EXPR_P (decl))
+ && !DECL_HAS_VALUE_EXPR_P (decl)
+ && TREE_TYPE (decl) != error_mark_node)
varpool_node::finalize_decl (decl);
record_eh_tables (node, fun);
+2015-10-20 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/66810
+ * gcc.target/i386/pr66810.c: New test.
+
2015-10-20 H.J. Lu <hongjiu.lu@intel.com>
PR target/67963
--- /dev/null
+/* { dg-do compile { target ia32 } } */
+/* { dg-options "-mno-sse -mno-mmx -miamcu" } */
+
+int vv;
+
+void
+i (void)
+{
+ static int a[vv]; /* { dg-error "storage size" } */
+}