OSDN Git Service

2011-05-29 John Tytgat <John.Tytgat@aaug.net>
[pf3gnuchains/gcc-fork.git] / libcpp / ChangeLog
index 278bb06..485d66e 100644 (file)
@@ -1,3 +1,754 @@
+2011-05-29  John Tytgat  <John.Tytgat@aaug.net>
+
+       * files.c (read_file_guts): Add test on non-zero value of S_ISREG.
+
+2011-05-22  Uros Bizjak  <ubizjak@gmail.com>
+
+       PR target/49104
+       * lex.c (init_vectorized_lexer): Do not set "minimum" when __3dNOW_A__
+       is defined.  Check bit_MMXEXT and bit_CMOV to use search_line_mmx.
+
+2011-04-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * system.h (ENUM_BITFIELD): Remove.
+
+2011-04-24  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/48740
+       * lex.c (lex_raw_string): When raw string ends with
+       ??) followed by raw prefix and ", ensure it is preprocessed
+       with ??) rather than ??].
+
+2011-04-20  Jim Meyering  <meyering@redhat.com>
+
+       * files.c (destroy_cpp_file): Remove useless if-before-free.
+       * init.c (cpp_destroy): Likewise.
+       * macro.c (replace_args): Likewise.
+       * pch.c (cpp_valid_state): Likewise.
+
+2011-03-25  Kai Tietz  <ktietz@redhat.com>
+
+       * files.c (file_hash_eq): Use filename_cmp
+       instead of strcmp.
+       (nonexistent_file_hash_eq): Likewise.
+       (remap_filename): Likewise.
+       Handle absolute DOS-path,
+       (append_file_to_dir): Check for IS_DIR_SEPARATOR
+       instead of slash.
+       (read_name_map): Likewise.
+       * linemap.c (linemap_add): Use filename_cmp
+       instead of strcmp.
+       * mkdeps.c (apply_vpath): Use filename_ncmp
+       instead of strncmp.
+       (deps_restore): Use filename_cmp instead of
+       strcmp.
+       * init.c (read_original_directory): Use
+       IS_DIR_SEPARATOR instead of checking for slash.
+
+2011-03-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
+
+       PR preprocessor/48192
+       * directives.c (do_ifdef): Do not consider conditional macros as
+       being defined.
+       (do_ifndef): Ditto.
+       * expr.c (parse_defined): Ditto.
+
+2011-03-18  Richard Henderson  <rth@redhat.com>
+
+       PR bootstrap/45381
+       * lex.c [ALTIVEC] (search_line_fast): Require gcc version 4.5.
+
+2011-11-04  Eric Botcazou  <ebotcazou@adacore.com>
+            Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/39213
+       * directives.c (end_directive): Call _cpp_remove_overlay for deferred
+       pragmas as well in traditional mode.
+
+2010-11-17  Ian Lance Taylor  <iant@google.com>
+
+       PR bootstrap/45538
+       * configure.ac: Use AC_USE_SYSTEM_EXTENSIONS.  Remove switch of
+       AC_LANG based on ENABLE_BUILD_WITH_CXX.
+
+2010-11-16  Kai Tietz  <kai.tietz@onevision.com>
+
+       PR preprocessor/17349
+       * lex.c (save_comment): Handle in argument passing c++
+       comments special.
+
+2010-11-02  Ian Lance Taylor  <iant@google.com>
+
+       * configure.ac: Use AC_SYS_LARGEFILE.
+       * configure: Rebuild.
+       * config.in: Rebuild.
+
+2010-10-19  Basile Starynkevitch  <basile@starynkevitch.net>
+
+       * line-map.h (source_location): Remove obsolete comment
+       mentioning location_s.
+
+2010-09-29  Kai Tietz  <kai.tietz@onevision.com>
+
+       PR preprocessor/45362
+       * directives.c (cpp_pop_definition): Make static.
+       (do_pragma_push_macro): Reworked to store text
+       definition.
+       (do_pragma_pop_macro): Add free text definition.
+       (cpp_push_definition): Removed.
+       * include/cpplib.h (cpp_push_definition): Removed.
+       (cpp_pop_definition): Likewise.
+       * internal.h (def_pragma_macro): Remove member 'value'
+       and add new members 'definition', 'line',
+       'syshdr', 'sued' and 'is_undef'.
+       * pch.c (_cpp_restore_pushed_macros): Rework to work
+       on text definition and store additional macro flags.
+       (_cpp_save_pushed_macros): Likewise.
+
+2010-09-29  Joseph Myers  <joseph@codesourcery.com>
+
+       * include/cpplib.h (cpp_options): Rename warn_deprecated,
+       warn_traditional, warn_long_long and pedantic.
+       * directives.c (directive_diagnostics, _cpp_handle_directive):
+       Update names of cpp_options members.
+       * expr.c (cpp_classify_number, eval_token): Update names of
+       cpp_options members.
+       * init.c (cpp_create_reader, post_options): Update names of
+       cpp_options members.
+       * internal.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Update names of
+       cpp_options members.
+       * macro.c (parse_params): Update names of cpp_options members.
+
+2010-09-15  Ian Lance Taylor  <iant@google.com>
+
+       * init.c: Fix type name in comment.
+
+2010-08-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/45457
+       * expr.c (parse_defined): Call pfile->cb.user_builtin_macro hook if
+       needed.
+       * directives.c (do_ifdef, do_ifndef): Likewise.
+
+2010-08-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * system.h [HAVE_INTTYPES_H]: Include inttypes.h.
+
+2010-08-24  Richard Henderson  <rth@redhat.com>
+
+       PR bootstrap/45376
+       * configure.ac (HAVE_SSE4): New check.
+       * configure, config.in: Rebuild.
+       * lex.c (search_line_sse42): Omit if !HAVE_SSE4.
+
+2010-08-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * lex.c [__sun__ && __svr4__]: Disable init_vectorized_lexer
+       etc. on Solaris 2/x86.
+
+2010-08-21  Richard Henderson  <rth@redhat.com>
+           Andi Kleen <ak@linux.intel.com>
+           David S. Miller  <davem@davemloft.net>
+
+       * configure.ac (AC_C_BIGENDIAN, AC_TYPE_UINTPTR_T): New tests.
+       (ssize_t): Check via AC_TYPE_SSIZE_T instead of AC_CHECK_TYPE.
+       (ptrdiff_t): Check via AC_CHECK_TYPE.
+       * config.in, configure: Rebuild.
+       * system.h: Include stdint.h, if available.
+       * lex.c (WORDS_BIGENDIAN): Provide default.
+       (acc_char_mask_misalign, acc_char_replicate, acc_char_cmp,
+       acc_char_index, search_line_acc_char, repl_chars, search_line_mmx,
+       search_line_sse2, search_line_sse42, init_vectorized_lexer,
+       search_line_fast): New.
+       (_cpp_clean_line): Use search_line_fast.  Restructure the fast
+       loop to make it clear when we're leaving the loop.  Stay in the
+       fast loop for non-trigraph '?'.
+
+2010-06-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * include/cpplib.h (struct cpp_callbacks): Add user_builtin_macro
+       callback.
+       (enum cpp_builtin_type): Add BT_FIRST_USER and BT_LAST_USER.
+       (cpp_macro_definition): Remove const qual from second argument.
+       * macro.c (enter_macro_context): Call user_builtin_macro callback for
+       NODE_BUILTIN !NODE_USED macros.
+       (warn_of_redefinition): Likewise.  Remove const qual from second
+       argument.
+       (cpp_macro_definition): Likewise.
+       * pch.c (write_macdef, save_macros): Call user_builtin_macro callback
+       for NODE_BUILTIN !NODE_USED macros.
+
+2010-06-10  Joseph Myers  <joseph@codesourcery.com>
+
+       * include/cpplib.h (struct cpp_options): Remove show_column.
+       * init.c (cpp_create_reader, post_options): Don't set show_column.
+
+2010-06-09  Joern Rennecke  <joern.rennecke@embecosm.com>
+
+       PR bootstrap/44432
+       * configure.ac: Before using ZW_PROG_COMPILER_DEPENDENCIES for C++,
+       check that C++ compiler works.
+       * configure: Regenerate.
+
+2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>
+
+       * include/symtab.h (ht_identifier_ptr): New.
+
+2010-06-03  Joern Rennecke <joern.rennecke@embecosm.com>
+           Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       PR bootstrap/42798
+       * configure.ac: Check for declaration of 'basename(char *)'.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+
+2010-04-25  Joseph Myers  <joseph@codesourcery.com>
+
+       * include/cpplib.h (enum c_lang): Add CLK_GNUC1X and CLK_STDC1X.
+       * init.c (lang_defaults): Add entries for new language variants.
+       (cpp_init_builtins): Define __STDC_VERSION__ to 201000L for C1X
+       variants.
+
+2010-04-09  Manuel López-Ibáñez <manu@gcc.gnu.org>
+
+       PR cpp/43195
+       * files.c (report_missing_guard): Test for #pragma once.
+
+2010-04-07  Simon Baldwin  <simonb@google.com>
+
+       * directives.c (do_diagnostic): Add warning reason argument,
+       call appropriate error reporting function for code.
+       (directive_diagnostics): Call specific warning functions with
+       warning reason where appropriate.
+       (do_error, do_warning, do_pragma_dependency): Add warning reason
+       argument to do_diagnostic calls.
+       * macro.c (_cpp_warn_if_unused_macro, enter_macro_context,
+       _cpp_create_definition): Call specific warning functions with
+       warning reason where appropriate.
+       * Makefile.in: Add new diagnostic functions to gettext translations.
+       * include/cpplib.h (struct cpp_callbacks): Add warning reason code
+       to error callback.
+       (CPP_DL_WARNING, CPP_DL_WARNING_SYSHDR, CPP_DL_PEDWARN, CPP_DL_ERROR,
+       CPP_DL_ICE, CPP_DL_NOTE, CPP_DL_FATAL): Replace macros with enums.
+       (CPP_W_NONE, CPP_W_DEPRECATED, CPP_W_COMMENTS,
+       CPP_W_MISSING_INCLUDE_DIRS, CPP_W_TRIGRAPHS, CPP_W_MULTICHAR,
+       CPP_W_TRADITIONAL, CPP_W_LONG_LONG, CPP_W_ENDIF_LABELS,
+       CPP_W_NUM_SIGN_CHANGE, CPP_W_VARIADIC_MACROS,
+       CPP_W_BUILTIN_MACRO_REDEFINED, CPP_W_DOLLARS, CPP_W_UNDEF,
+       CPP_W_UNUSED_MACROS, CPP_W_CXX_OPERATOR_NAMES, CPP_W_NORMALIZE,
+       CPP_W_INVALID_PCH, CPP_W_WARNING_DIRECTIVE): New enums for cpp
+       warning reason codes.
+       (cpp_warning, cpp_pedwarning, cpp_warning_syshdr,
+       cpp_warning_with_line, cpp_pedwarning_with_line,
+       cpp_warning_with_line_syshdr): New specific error reporting functions.
+       * pch.c (cpp_valid_state): Call specific warning functions with
+       warning reason where appropriate.
+       * errors.c (cpp_diagnostic, cpp_diagnostic_with_line): New central
+       diagnostic handlers.
+       (cpp_warning, cpp_pedwarning, cpp_warning_syshdr,
+       cpp_warning_with_line, cpp_pedwarning_with_line,
+       cpp_warning_with_line_syshdr): New specific error reporting functions.
+       * expr.c (cpp_classify_number, eval_token, num_unary_op): Call
+       specific warning functions with warning reason where appropriate.
+       * lex.c (_cpp_process_line_notes, _cpp_skip_block_comment,
+       warn_about_normalization, lex_identifier_intern, lex_identifier,
+       _cpp_lex_direct): Ditto.
+       * charset.c (_cpp_valid_ucn, convert_hex, convert_escape,
+       narrow_str_to_charconst): Ditto.
+
+2010-04-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/43642
+       * lex.c (lex_raw_string): Change type of TYPE variable to
+       unsigned char.
+
+2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * aclocal.m4: Regenerate.
+
+2010-03-29  Jason Merrill  <jason@redhat.com>
+
+       More N3077 raw string changes
+       * charset.c (cpp_interpret_string): Don't transform UCNs in raw
+       strings.
+       * lex.c (bufring_append): Split out from...
+       (lex_raw_string): ...here.  Undo trigraph and line splicing
+       transformations.  Do process line notes in multi-line literals.
+       (_cpp_process_line_notes): Ignore notes that were already handled.
+
+       Some raw string changes from N3077
+       * charset.c (cpp_interpret_string): Change inner delimiters to ().
+       * lex.c (lex_raw_string): Likewise.  Also disallow '\' in delimiter.
+
+2010-02-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * init.c (read_original_filename): Don't call read_original_directory
+       if _cpp_handle_directive returns 0.
+
+2010-01-01  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/41947
+       * expr.c (cpp_classify_number): Give error for hexadecimal
+       floating-point constant with no digits before or after point.
+
+2009-11-20  Arnaud Charlet  <charlet@adacore.com>
+
+       * macro.c (enter_macro_context): Call cb.used callback if defined.
+       * directives.c (do_idef, do_ifndef): Ditto.
+       * include/cpplib.h (struct cpp_callbacks): Add used callback.
+
+2009-11-11  Kai Tietz  <kai.tietz@onevision.com>
+
+       * directives.c (do_pragma_push_macro): New pragma handler.
+       (do_pragma_pop_macro): Likewise.
+       (_cpp_init_internal_pragmas): Add push_macro and
+       pop_macro handler to internal pragmas.
+       (lex_macro_node_from_str): Removed.
+       (cpp_push_definition): Replace lex_macro_node_from_str
+       by _cpp_lex_identifier.
+       (cpp_pop_definition): Likewise.
+       * internal.h (_cpp_lex_identifier): New prototype.
+       (def_pragma_macro): New structure.
+       (cpp_reader): New member pushed_macros.
+       * lex.c (_cpp_lex_identifier): New function.
+       (lex_identifier_intern): New function.
+       * init.c (cpp_create_reader): Initialize pushed_macros
+       member.
+       (cpp_destroy): Free elements in pushed_macros member.
+       * pch.c (_cpp_save_pushed_macros): New function.
+       (_cpp_restore_pushed_macros): Likewise.
+       (_cpp_restore_pushed_macros): Use _cpp_save_pushed_macros.
+       (cpp_read_state): Use _cpp_restore_pushed_macros.
+
+2009-10-19  Jakub Jelinek  <jakub@redhat.com>
+
+       * charset.c (cpp_init_iconv): Initialize utf8_cset_desc.
+       (_cpp_destroy_iconv): Destroy utf8_cset_desc, char16_cset_desc
+       and char32_cset_desc.
+       (converter_for_type): Handle CPP_UTF8STRING.
+       (cpp_interpret_string): Handle CPP_UTF8STRING and raw-strings.
+       * directives.c (get__Pragma_string): Handle CPP_UTF8STRING.
+       (parse_include): Reject raw strings.
+       * include/cpplib.h (CPP_UTF8STRING): New token type.
+       * internal.h (struct cpp_reader): Add utf8_cset_desc field.
+       * lex.c (lex_raw_string): New function.
+       (lex_string): Handle u8 string literals, call lex_raw_string
+       for raw string literals.
+       (_cpp_lex_direct): Call lex_string even for u8" and {,u,U,L,u8}R"
+       sequences.
+       * macro.c (stringify_arg): Handle CPP_UTF8STRING.
+
+2009-10-14  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/41543
+       * include/line-map.h (RESERVED_LOCATION_COUNT): Define.
+       * line-map.c (linemap_init): Initialize highest_location and
+       highest_line to RESERVED_LOCATION_COUNT-1 instead of 0.
+
+2009-10-09  Jason Merrill  <jason@redhat.com>
+
+       * charset.c (_cpp_valid_ucn): Update C++0x restrictions.
+
+2009-10-09  Neil Vachharajani <nvachhar@google.com>
+
+       * directives.c (DIRECTIVE_TABLE): Remove DEPRECATED from ident and
+       sccs.
+
+2009-09-23  Loren J. Rittle  <ljrittle@acm.org>
+
+       * configure.ac (AC_CHECK_HEADERS after AC_LANG(C++)): Add sys/stat.h.
+       * configure: Rebuilt.
+
+2009-09-22  Richard Guenther  <rguenther@suse.de>
+
+       PR pch/38987
+       * files.c (pch_open_file): Disallow non-toplevel PCH inclusion.
+
+2009-09-18  Chris Demetriou  <cgd@google.com>
+
+       PR preprocessor/28435:
+       * include/cpplib.h (struct cpp_options): Add new member
+       deps.need_preprocessor_output.
+       * files.c (open_file_failed): If preprocessor output is needed
+       always report an error.
+
+2009-09-13  Kai Tietz  <kai.tietz@onevision.com>
+
+       * configure.ac: Set for i?86-w64-mingw*
+       need_64bit_hwint to yes.
+       * configure: Regenerated.
+
+2009-09-10  Jason Merrill  <jason@redhat.com>
+
+       * directives.c (cpp_define): constify.
+
+2009-09-02  Ian Lance Taylor  <iant@google.com>
+
+       * macro.c (stringify_arg): Escape CPP_WCHAR tokens.
+
+2009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * configure.ac (AC_PREREQ): Bump to 2.64.
+
+2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * aclocal.m4: Regenerate.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+
+2009-08-17  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/41067:
+       * charset.c (convert_escape): Add missing ":" to error text.
+
+2009-07-27  Douglas B Rupp  <rupp@gnat.com>
+
+       * include/cpplib.h (INO_T_CPP): New macro.
+       (struct cpp_dir): Use it.
+
+2009-07-20  Jerry Quinn  <jlquinn@optonline.net>
+
+       PR regression/40800
+       * configure.ac: Use = instead of == for testing
+       ENABLE_BUILD_WITH_CXX.
+       * configure: Rebuild.
+
+2009-07-17  Jerry Quinn  <jlquinn@optonline.net>
+
+       * directives.c (do_linemarker, do_line): Use CPP_STRING for
+       ignored enum value.
+       * files.c (find_file_in_dir): Add cast from void* to char*.
+       * symtab.c (ht_lookup_with_hash): Add cast from void* to char*.
+       * Makefile.in: (WARN_CFLAGS): Use general and C-specific
+       warnings.
+       (CXX, CXXFLAGS, WARN_CXXFLAGS, ALL_CXXFLAGS,
+       ENABLE_BUILD_WITH_CXX, CCDEPMODE, CXXDEPMODE, COMPILER,
+       COMPILER_FLAGS): New.
+       (DEPMODE): Set from CCDEPMODE or CXXDEPMODE.
+       (COMPILE.base): Use COMPILER instead of CC.  Use COMPILER_FLAGS
+       instead of ALL_CFLAGS.
+       * configure.ac: Invoke AC_PROG_CXX.  Separate C-specific warnings
+       from other warnings.  Add -Wc++-compat to C-specific warnings.
+       Check for --enable-build-with-cxx.  Set and substitute
+       ENABLE_BUILD_WITH_CXX.  Invoke ZW_PROG_COMPILER_DEPENDENCIES
+       according to ENABLE_BUILD_WITH_CXX.  Invoke AC_LANG before
+       AC_CHECK_HEADERS.
+       * configure: Rebuild.
+       * include/cpp-id-data.h: Remove extern "C".
+       * include/line-map.h: Likewise.
+       * include/mkdeps.h: Likewise.
+       * include/symtab.h: Likewise.
+       * internal.h: Likewise.
+
+2009-06-23  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       * directives.c (parse_include): Add location argument. Update all
+       calls.
+       (parse_answer): Likewise.
+       (do_include_common): Error with exact location.
+       (parse_assertion): Likewise.
+
+2009-06-18  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       * expr.c (num_div_op): Take explicit location.
+
+2009-06-17  Ian Lance Taylor  <iant@google.com>
+
+       * include/cpplib.h (progname): Don't declare.
+
+2009-06-12  Ian Lance Taylor  <iant@google.com>
+
+       * include/cpplib.h (struct cpp_options): Add
+       warn_cxx_operator_names field.
+       (NODE_WARN_OPERATOR): Define.
+       (struct cpp_hashnode): Increase flags field to 10 bits, decrease
+       type to 6 bits.
+       * init.c (mark_named_operators): Add flags parameter.
+       (cpp_post_options): Pick flags value to pass to
+       mark_named_operators.
+       * lex.c (lex_identifier): If NODE_WARN_OPERATOR is set, warn that
+       identifier is an operator name in C++.
+
+2009-06-01  Aldy Hernandez  <aldyh@redhat.com>
+
+       * include/line-map.h (LAST_SOURCE_COLUMN): New.
+
+2009-06-01  Ian Lance Taylor  <iant@google.com>
+
+       * include/cpp-id-data.h: Add extern "C".
+       * include/line-map.h: Likewise.
+       * include/mkdeps.h: Likewise.
+       * include/symtab.h: Likewise.
+       * internal.h: Likewise.
+
+2009-05-15  Ian Lance Taylor  <iant@google.com>
+
+       * include/cpplib.h (enum cpp_builtin_type): Rename from enum
+       builtin_type.  Change all uses.
+
+2009-05-14  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR cpp/36674
+       * directives (do_linemarker): Compensate for the increment in
+       location that occurs when we reach the end of line.
+       * files (_cpp_stack_include): Mention _cpp_find_file in the
+       comment.
+
+2009-05-10  Joseph Myers  <joseph@codesourcery.com>
+
+       * include/cpplib.h (enum cpp_token_fld_kind): Add
+       CPP_TOKEN_FLD_TOKEN_NO.
+       (struct cpp_macro_arg, struct cpp_identifier): Define.
+       (union cpp_token_u): Use struct cpp_identifier for identifiers.
+       Use struct cpp_macro_arg for macro arguments.  Add token_no for
+       CPP_PASTE token numbers.
+       * directives.c (_cpp_handle_directive, lex_macro_node, do_pragma,
+       do_pragma_poison, parse_assertion): Use val.node.node in place of
+       val.node.
+       * expr.c (parse_defined, eval_token): Use val.node.node in place
+       of val.node.
+       * lex.c (cpp_ideq, _cpp_lex_direct, cpp_token_len,
+       cpp_spell_token, cpp_output_token, _cpp_equiv_tokens,
+       cpp_token_val_index): Use val.macro_arg.arg_no or val.token_no in
+       place of val.arg_no.  Use val.node.node in place of val.node.
+       * macro.c (replace_args, cpp_get_token, parse_params,
+       lex_expansion_token, create_iso_definition, cpp_macro_definition):
+       Use val.macro_arg.arg_no or val.token_no in place of val.arg_no.
+       Use val.node.node in place of val.node.
+
+2009-05-03  Joseph Myers  <joseph@codesourcery.com>
+
+       * charset.c (one_utf8_to_cppchar): Correct mask used for 5-byte
+       UTF-8 sequences.
+
+2009-04-25  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/39559
+       * expr.c (cpp_interpret_integer): Use a pedwarn for decimal
+       constants larger than intmax_t in C99 mode.
+
+2009-04-21  Taras Glek <tglek@mozilla.com>
+
+       * include/cpp-id-data.h: Update GTY annotations to new syntax.
+       * include/cpplib.h: Likewise.
+       * include/line-map.h: Likewise.
+       * include/symtab.h: Likewise.
+
+2009-04-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c++/14875
+       * lex.c (cpp_type2name): Take a flags parameter. Call
+       cpp_named_operator2name for named operators and cpp_digraph2name
+       for digraphs.
+       (cpp_digraph2name): New.
+       (cpp_spell_token): Use it.
+       (cpp_output_token): Likewise.
+       * include/cpplib.h (cpp_type2name): Update declaration.
+       * init.c (cpp_named_operator2name): New.
+       * internal.h (cpp_named_operator2name): Declare.
+
+2009-04-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR c++/13358
+       * init.c (cpp_create_reader): Wlong_long is disabled by default.
+       * expr.c (cpp_classify_number): Give different messages for C and
+       C++ front-ends.
+
+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
+       3 of the GNU General Public License and to point readers at the
+       COPYING3 file and the FSF's license web page.
+       * charset.c: Likewise.
+       * directives-only.c: Likewise.
+       * directives.c: Likewise.
+       * errors.c: Likewise.
+       * expr.c: Likewise.
+       * files.c: Likewise.
+       * identifiers.c: Likewise.
+       * include/cpp-id-data.h: Likewise.
+       * include/cpplib.h: Likewise.
+       * include/line-map.h: Likewise.
+       * include/mkdeps.h: Likewise.
+       * include/symtab.h: Likewise.
+       * init.c: Likewise.
+       * internal.h: Likewise.
+       * lex.c: Likewise.
+       * line-map.c: Likewise.
+       * macro.c: Likewise.
+       * makeucnid.c: Likewise.
+       * mkdeps.c: Likewise.
+       * pch.c: Likewise.
+       * symtab.c: Likewise.
+       * system.h: Likewise.
+       * traditional.c: Likewise.
+       * ucnid.tab: Likewise.
+       * ucnid.h: Regenerate.
+
+2009-04-01  Janis Johnson  <janis187@us.ibm.com>
+
+       PR c/39027
+       * include/cpplib.h (CPP_N_DEFAULT): Define.
+       * expr.c (interpret_float_suffix): Recognize d or D for double,
+       return new value for default.
+       (cpp_classify_number): Issue pedwarn for use of d or D in suffix.
+
+       PR c/33466
+       * expr.c (interpret_float_suffix): Reject invalid suffix that uses
+       letters from decimal float and fixed-point suffixes.
+
+2009-03-31  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/15638
+       * files.c (_cpp_find_file): Call open_file_failed after diagnosing
+       invalid PCH.
+       (open_file_failed): Make error for missing file fatal.
+       * include/cpplib.h (CPP_DL_FATAL): Define.
+
+2009-03-30  Sergiy Vyshnevetskiy  <serg@vostok.net>
+
+       PR preprocessor/31932:
+       * internal.h: Don't mention HAVE_ICONV_H.
+       * configure, config.in: Rebuild.
+       * configure.ac: Don't check for iconv.h.
+
+2009-03-30  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/39512:
+       * line-map.c (linemap_init): Initialize 'reallocator' field.
+
+2009-03-30  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/39558
+       * macro.c (cpp_get_token): If macro_to_expand returns NULL
+       and used some tokens, add CPP_PADDING before next token.
+
+2009-03-29  Joseph Myers  <joseph@codesourcery.com>
+
+       PR preprocessor/34695
+       * makedepend.c: Remove.
+       * Makefile.in (makedepend_OBJS, makedepend$(EXEEXT)): Remove.
+       (all, clean, TAGS_SOURCES, include): Remove makedepend handling.
+       * directives.c (cpp_errors): Remove.
+       * errors.c (print_location, _cpp_begin_message, v_message):
+       Remove.
+       (cpp_error, cpp_error_with_line): Always use error callback.
+       (cpp_error, cpp_error_with_line, cpp_errno): Return bool.
+       * include/cpplib.h (cpp_options): Remove pedantic_errors,
+       inhibit_warnings, warn_system_headers, inhibit_errors,
+       warnings_are_errors, client_diagnostic.
+       (cpp_callbacks): Add extra arguments to error callback; make it
+       return bool.
+       (cpp_finish): Return void.
+       (cpp_destroy): Remove inaccurate comment about return value.
+       (cpp_errors, CPP_DL_EXTRACT, CPP_DL_WARNING_P): Remove.
+       (CPP_DL_NOTE): Define.
+       * include/line-map.h (linemap_print_containing_files): Remove.
+       * init.c (cpp_finish): Do not check for or return number of
+       errors.
+       * internal.h (cpp_reader): Remove errors field.
+       * line-map.c (linemap_print_containing_files): Remove.
+       * macro.c (_cpp_create_definition): Use CPP_DL_NOTE for message
+       about previous definition.  Only emit it if previous diagnostic
+       was emitted.
+
+2009-03-28  Joseph Myers  <joseph@codesourcery.com>
+
+       * Makefile.in (po/$(PACKAGE).pot): Use $(mkinstalldirs) not
+       mkinstalldirs.
+
+2009-03-18  Jakub Jelinek  <jakub@redhat.com>
+
+       * include/cpplib.h (struct cpp_dir): Reorder fields for 64-bit hosts.
+
+2009-02-21  Joseph Myers  <joseph@codesourcery.com>
+
+       * lex.c (lex_string): Return a CPP_LESS token for missing '>' in a
+       header name.
+       (_cpp_lex_direct): Handle this.
+
+2009-02-15  Richard Guenther  <rguenther@suse.de>
+
+       Revert last change.
+
+2009-02-13  Richard Guenther  <rguenther@suse.de>
+
+       * configure.ac: Enable LFS.
+       * configure: Re-generate.
+       * config.in: Likewise.
+
+2009-01-05  Ben Elliston  <bje@au.ibm.com>
+
+       * Makefile.in (.po.gmo): Use mkinstalldirs, not test -d || mkdir.
+       (.po.pox): Likewise.
+       (po/$(PACKAGE).pot): Likewise.
+
+2008-12-10  Alexandre Oliva  <aoliva@redhat.com>
+
+       PR target/37033
+       * pch.c (cpp_valid_state): Improve message for poisoned symbols.
+       Allow for differences in __GCC_HAVE_DWARF2_CFI_ASM.
+
+2008-11-29  Joseph Myers  <joseph@codesourcery.com>
+
+       * lex.c (cpp_token_len): Use 6 as default length.
+
+2008-10-31  Manuel López-Ibáñez  <manu@gcc.gnu.org>
+
+       * expr.c (struct op): Add location.
+       (_cpp_parse_expr): Propagate locations throught the stack
+       of expressions.
+       (reduce): Likewise.
+       (check_promotion): Use explicit location in errors.
+
 2008-10-05  Matthew Gingell  <gingell@adacore.com>
            Arnaud Charlet  <charlet@adacore.com>