+2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ * class.c (duplicate_tag_error): Clear more flags.
+
2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
* call.c (build_new_method_call): Use binfo_for_vbase.
TYPE_VFIELD (t) = NULL_TREE;
TYPE_CONTEXT (t) = NULL_TREE;
TYPE_NONCOPIED_PARTS (t) = NULL_TREE;
+
+ TYPE_HAS_NONTRIVIAL_DESTRUCTOR (t) = 0;
+ TYPE_HAS_CONSTRUCTOR (t) = 0;
+ TYPE_HAS_DESTRUCTOR (t) = 0;
+ TYPE_HAS_CONVERSION (t) = 0;
+ TYPE_HAS_ASSIGN_REF (t) = 0;
+ TYPE_HAS_CONST_ASSIGN_REF (t) = 0;
+ TYPE_HAS_INIT_REF (t) = 0;
+ TYPE_HAS_CONST_INIT_REF (t) = 0;
+ TYPE_HAS_NEW_OPERATOR (t) = 0;
+ TYPE_HAS_ARRAY_NEW_OPERATOR (t) = 0;
+ TYPE_HAS_DEFAULT_CONSTRUCTOR (t) = 0;
+ CLASSTYPE_HAS_MUTABLE (t) = 0;
+ CLASSTYPE_NON_POD_P (t) = 0;
+ CLASSTYPE_NEARLY_EMPTY_P (t) = 0;
+ CLASSTYPE_NON_AGGREGATE (t) = 0;
+ TYPE_HAS_REAL_ASSIGN_REF (t) = 0;
+ TYPE_HAS_COMPLEX_ASSIGN_REF (t) = 0;
+ TYPE_HAS_ABSTRACT_ASSIGN_REF (t) = 0;
+ TYPE_HAS_COMPLEX_INIT_REF (t) = 0;
}
/* Make the BINFO's vtablehave N entries, including RTTI entries,
+2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
+
+ * g++.old_deja/g++.other/crash39.C: New test.
+
2001-01-10 Nathan Sidwell <nathan@codesourcery.com>
* g++.old_deja/g++.other/vbase4.C: New test.
--- /dev/null
+// Build don't link:
+
+// Copyright (C) 2000 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 10 Jan 2001 <nathan@codesourcery.com>
+
+// Bug 595. We failed to clear out some things after seeing a duplicate
+// struct definition. That caused us to become inconsistent.
+
+struct X
+{
+ ~X ();
+};
+struct S { X a; }; // ERROR - previous defn
+struct S { X a; }; // ERROR - redefinition
+
+void c1(S s)
+{
+}