parser.c (cp_parser_abort_tentative_parse): Make sure we haven't committed to this tentative parse.

* parser.c (cp_parser_abort_tentative_parse): Make sure we haven't
	committed to this tentative parse.

From-SVN: r171054
This commit is contained in:
Jason Merrill 2011-03-16 13:04:41 -04:00 committed by Jason Merrill
parent bb4586d388
commit 23d956f935
2 changed files with 5 additions and 0 deletions

View File

@ -1,5 +1,8 @@
2011-03-16 Jason Merrill <jason@redhat.com>
* parser.c (cp_parser_abort_tentative_parse): Make sure we haven't
committed to this tentative parse.
PR c++/47999
* semantics.c (finish_call_expr): Preserve reference semantics
in templates.

View File

@ -21398,6 +21398,8 @@ cp_parser_commit_to_tentative_parse (cp_parser* parser)
static void
cp_parser_abort_tentative_parse (cp_parser* parser)
{
gcc_assert (parser->context->status != CP_PARSER_STATUS_KIND_COMMITTED
|| errorcount > 0);
cp_parser_simulate_error (parser);
/* Now, pretend that we want to see if the construct was
successfully parsed. */