OSDN Git Service

2009-04-20 Joey Ye <joey.ye@intel.com>
[pf3gnuchains/gcc-fork.git] / libcpp / ChangeLog
index 1a6dc55..74979a2 100644 (file)
@@ -1,3 +1,51 @@
+2009-04-19  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/20078
+       * include/cpp-id-data.h (struct cpp_macro): Add extra_tokens
+       field.
+       * include/cpplib.h (SP_DIGRAPH, SP_PREV_WHITE): Define.
+       (struct cpp_token): Change flags to unsigned short.
+       * lex.c (_cpp_lex_direct): Initialize arg_no for CPP_PASTE tokens.
+       (_cpp_equiv_tokens): Check arg_no for CPP_PASTE tokens.
+       (cpp_token_val_index): Return CPP_TOKEN_FLD_ARG_NO for CPP_PASTE
+       tokens.
+       * macro.c (macro_real_token_count): New.
+       (enter_macro_context, replace_args): Use macro_real_token_count.
+       (create_iso_definition): Record whitespace surrounding and digraph
+       spelling of # and ## tokens using SP_PREV_WHITE and SP_DIGRAPH.
+       Set extra_tokens and save CPP_PASTE tokens with arg_no set for
+       multiple consecutive ## tokens.
+       (_cpp_create_definition): Initialize extra_tokens.
+       (cpp_macro_definition): Use macro_real_token_count.
+
+2009-04-18  Joseph Myers  <joseph@codesourcery.com>
+
+       * directives.c (parse_include): Pass true to check_eol.
+
+2009-04-18  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/39646
+       * include/line-map.h (enum lc_reason): Add LC_RENAME_VERBATIM.
+       * line-map.c (linemap_add): Handle LC_RENAME_VERBATIM.
+       * directives.c (do_line, do_linemarker): Use LC_RENAME_VERBATIM in
+       place of LC_RENAME.
+
+2009-04-18  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/39647
+       * directives.c (check_eol): Add parameter expand.
+       (do_undef, parse_include, do_line, do_linemarker, do_ident,
+       do_pragma_once, do_pragma_system_header, do_ifdef, do_ifndef,
+       do_else, do_endif, do_assert, do_unassert): All callers changed.
+       Pass true from do_line, false elsewhere.
+
+2009-04-12  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/31869
+       * macro.c (stringify_arg): Handle NULL source token in padding
+       token where previous padding token did not have source token with
+       preceding whitespace.
+
 2009-04-09  Jakub Jelinek  <jakub@redhat.com>
 
        * Makefile.in: Change copyright header to refer to version