re PR c++/28858 (Algorithm to find the end of a template parameter list is flawed)
authorVolker Reichelt <reichelt@igpm.rwth-aachen.de>
Fri, 8 Sep 2006 22:56:44 +0000 (22:56 +0000)
committerVolker Reichelt <reichelt@gcc.gnu.org>
Fri, 8 Sep 2006 22:56:44 +0000 (22:56 +0000)
commita7b9d08c3563ec731b3213c279a25e66be384d0b
tree7f8c829898d90a21a450edc8b19bfc0094314329
parent38371be9886507f8bf82fe2fb0a56803efd4ea79
re PR c++/28858 (Algorithm to find the end of a template parameter list is flawed)

PR c++/28858
* parser.c (cp_parser_skip_until_found): Rename to
cp_parser_skip_to_end_of_template_parameter_list.  Remove last two
parameters.  Track levels of '< ... >'.  Stop at '{', '}', or ';'.
Reorganize.  Adjust comment.
(cp_parser_template_declaration_after_export): Adjust call.
(cp_parser_enclosed_template_argument_list): Likewise.

* g++.dg/parse/template20.C: New test.
* g++.dg/template/operator8.C: Remove obsolete part.
* g++.dg/parse/def-tmpl-arg1.C: Adjust error-markers.
* g++.old-deja/g++.pt/crash65.C: Likewise.

From-SVN: r116788
gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/parse/def-tmpl-arg1.C
gcc/testsuite/g++.dg/parse/template20.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/operator8.C
gcc/testsuite/g++.old-deja/g++.pt/crash65.C