2005-06-15 Nathan Sidwell <nathan@codesourcery.com>
+ PR c++/20678
+ * error.c (dump_expr) <COMPONENT_REF case>: Check DECL_NAME is not
+ null.
+
* Make-lang.in: Reformat some long lines.
(gt-cp-rtti.h): New target.
(cp/rtti.o): Add dependency.
{
ob = TREE_OPERAND (ob, 0);
if (TREE_CODE (ob) != PARM_DECL
- || strcmp (IDENTIFIER_POINTER (DECL_NAME (ob)), "this"))
+ || (DECL_NAME (ob)
+ && strcmp (IDENTIFIER_POINTER (DECL_NAME (ob)), "this")))
{
dump_expr (ob, flags | TFF_EXPR_IN_PARENS);
pp_cxx_arrow (cxx_pp);
+2005-06-15 Nathan Sidwell <nathan@codesourcery.com>
+
+ PR c++/20678
+ * g++.dg/other/crash-4.C: New.
+
2005-06-14 Devang Patel <dpatel@apple.com>
* gcc.dg/vect/vect-ifcvt-1.c: Remove.
--- /dev/null
+// Copyright (C) 2005 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 14 Jun 2005 <nathan@codesourcery.com>
+
+// PR 20678: ICE on error message
+// Origin: Andrew Pinski pinskia@gcc.gnu.org
+
+struct a
+{
+ a(const a&);
+};
+struct b
+{ // { dg-error "cannot bind packed field" }
+ a aa __attribute__((packed));
+};
+struct c
+{
+ b bb;
+ c(const b& __a): bb(__a) {} // { dg-error "synthesized" }
+};