re PR c++/26660 (PCH vs -save-temps, ICE while GCing)

PR c++/26660
* parser.c (cp_parser_initial_pragma): Read one more token for
caller after reading PCH file in.

From-SVN: r114298
This commit is contained in:
Alexandre Oliva 2006-06-01 04:55:32 +00:00 committed by Alexandre Oliva
parent 699fa7aa1a
commit f3d5aeebf4
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2006-06-01 Alexandre Oliva <aoliva@redhat.com>
PR c++/26660
* parser.c (cp_parser_initial_pragma): Read one more token for
caller after reading PCH file in.
2006-05-31 Mark Mitchell <mark@codesourcery.com>
PR c++/27801

View File

@ -19006,12 +19006,14 @@ cp_parser_initial_pragma (cp_token *first_token)
while (first_token->type != CPP_PRAGMA_EOL && first_token->type != CPP_EOF)
cp_lexer_get_preprocessor_token (NULL, first_token);
/* Read one more token to return to our caller. */
cp_lexer_get_preprocessor_token (NULL, first_token);
/* Now actually load the PCH file. */
if (name)
c_common_pch_pragma (parse_in, TREE_STRING_POINTER (name));
/* Read one more token to return to our caller. We have to do this
after reading the PCH file in, since its pointers have to be
live. */
cp_lexer_get_preprocessor_token (NULL, first_token);
}
/* Normal parsing of a pragma token. Here we can (and must) use the