re PR c++/16964 (ICE in cp_parser_class_specifier due to redefinition)
authorMark Mitchell <mark@codesourcery.com>
Wed, 11 Aug 2004 22:13:32 +0000 (22:13 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Wed, 11 Aug 2004 22:13:32 +0000 (22:13 +0000)
commit2436b51feb8a5cf7ca694eb4bf13bcb1e6899217
tree2147acebf7d4edadc9b4e0c586c723982b26e08f
parent5079843a2094412a6b25a23c1eeae4296d0ed15a
re PR c++/16964 (ICE in cp_parser_class_specifier due to redefinition)

PR c++/16964
* parser.c (cp_parser_class_specifier): Robustify.

PR c++/16904
* pt.c (tsubst_copy_and_build): Complain about invalid
qualification.

PR c++/16929
* pt.c (tsubst_default_argument): Clear out current_class_ptr and
current_class_ref while tsubsting.

PR c++/16964
* g++.dg/parse/error16.C: New test.

PR c++/16904
* g++.dg/template/error14.C: New test.

PR c++/16929
* g++.dg/template/error15.C: New test.

From-SVN: r85824
gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/cp/pt.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/parse/error16.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/error14.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/error15.C [new file with mode: 0644]