Testing something for diego
[official-gcc.git] / libcpp / ChangeLog.gomp
blobc6ef6c3b05d11859049b44e28b71958e95d0e147
1 2005-12-20  Richard Henderson  <rth@redhat.com>
3         PR preprocessor/25240
4         * directives.c (run_directive): Remove pragma hacks.
5         (destringize_and_run): Save tokens for deferred pragmas.
6         * internal.h (_cpp_push_token_context): Declare.
7         * macro.c (builtin_macro): Remove pragma token hack.
8         (_cpp_push_token_context): Rename from push_token_context and export.
10 2005-09-29  Dmitry Kurochkin <dmitry.kurochkin@gmail.com>
11             Richard Henderson  <rth@redhat.com>
13         * directives.c (struct pragma_entry): Add is_deferred.  Add ident
14         entry to value union.
15         (end_directive): Don't eat the line if in_deferred_pragma.
16         (insert_pragma_entry): Remove.
17         (new_pragma_entry): New.
18         (register_pragma_1): Split out of register_pragma.  Only handle
19         the lookup tree and return the new entry.
20         (cpp_register_pragma): Fill in the pragma entry here.
21         (cpp_register_deferred_pragma): New.
22         (register_pragma_internal): New.
23         (_cpp_init_internal_pragmas): Use register_pragma_internal.
24         (do_pragma): Allow pragma expansion after namespace.  For deferred
25         pragmas, don't slurp the line into a string.
26         (cpp_handle_deferred_pragma): Remove.
27         * internal.h (struct lexer_state): Add pragma_allow_expansion.
28         * lex.c (_cpp_lex_token): Allow _cpp_handle_directive to return
29         a token.  Update the line number correctly if so.
30         (_cpp_lex_direct): Emit CPP_PRAGMA_EOL tokens.
31         (cpp_token_val_index): Return CPP_TOKEN_FLD_PRAGMA for pragmas.