cp:
* parse.y (template_datadef): Check for error_mark_node.
testsuite:
* g++.old-deja/g++.pt/crash62.C: New test.
From-SVN: r38714
+2001-01-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * parse.y (template_datadef): Check for error_mark_node.
+
2001-01-05 Nathan Sidwell <nathan@codesourcery.com>
* cp-tree.def (DEFAULT_ARG): Make `x' class.
| typed_declspecs initdecls ';'
{ note_list_got_semicolon ($1.t); }
| structsp ';'
- { maybe_process_partial_specialization ($1.t);
- note_got_semicolon ($1.t); }
+ {
+ if ($1.t != error_mark_node)
+ {
+ maybe_process_partial_specialization ($1.t);
+ note_got_semicolon ($1.t);
+ }
+ }
;
datadef:
+2001-01-05 Nathan Sidwell <nathan@codesourcery.com>
+
+ * g++.old-deja/g++.pt/crash62.C: New test.
+
2001-01-04 Richard Henderson <rth@redhat.com>
* gcc.dg/20000926-1.c: Update expected warnings.
--- /dev/null
+// Build don't link:
+
+// Copyright (C) 2000 Free Software Foundation, Inc.
+// Contributed by Nathan Sidwell 5 Jan 2001 <nathan@codesourcery.com>
+
+// Bug 911, ICE on bogus template declaration
+
+template <class T> class A<T>; // ERROR - not a template