* parser.c (cp_parser_declaration_seq_opt): Handle pending_lang_change.

From-SVN: r60644
This commit is contained in:
Mark Mitchell 2002-12-30 20:18:38 +00:00 committed by Mark Mitchell
parent afd9b9dd9d
commit c838d82f7b
2 changed files with 18 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2002-12-30 Mark Mitchell <mark@codesourcery.com>
* parser.c (cp_parser_declaration_seq_opt): Handle pending_lang_change.
2002-12-30 David Edelsohn <edelsohn@gnu.org>
* parser.c (cp_parser_parameter_declaration_clause): Treat system

View File

@ -6456,6 +6456,20 @@ cp_parser_declaration_seq_opt (parser)
continue;
}
/* The C lexer modifies PENDING_LANG_CHANGE when it wants the
parser to enter or exit implict `extern "C"' blocks. */
while (pending_lang_change > 0)
{
push_lang_context (lang_name_c);
--pending_lang_change;
}
while (pending_lang_change < 0)
{
pop_lang_context ();
++pending_lang_change;
}
/* Parse the declaration itself. */
cp_parser_declaration (parser);
}
}