OSDN Git Service

PR preprocessor/39512:
[pf3gnuchains/gcc-fork.git] / libcpp / ChangeLog
index 9eef6ef..2672832 100644 (file)
@@ -1,3 +1,272 @@
+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>
+
+       * include/cpplib.h (cpp_comments, cpp_comment_table): New structs.
+       (cpp_get_comments): New function.
+       * internal.h (struct cpp_reader): Add comments field.
+       * init.c (cpp_destroy): Free comments.
+       * lex.c (store_comment, cpp_get_comments): New functions.
+       (comments): New struct.
+       (save_comment): Store comments in comments struct.
+
+2008-09-18  Simon Baldwin  <simonb@google.com>
+
+       * include/cpplib.h (struct cpp_options): Add new boolean flag
+       warn_builtin_macro_redefined.
+       * init.c (cpp_create_reader): Initialize warn_builtin_macro_redefined.
+       * (struct builtin_operator): Split out from previous struct builtin,
+       enhance extra const correctness.
+       * (struct builtin_macro): Split out from previous struct builtin, add
+       new always_warn_if_redefined flag, enhance const correctness.
+       * (mark_named_operators): Use struct builtin_operator.
+       * (cpp_init_special_builtins): Use struct builtin_macro, add NODE_WARN
+       to builtins selectively.
+       * macro.c (warn_of_redefinition): Return false if a builtin macro
+       is not flagged with NODE_WARN.
+
+2008-07-31  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/36649
+       * files.c (struct report_missing_guard_data): New type.
+       (report_missing_guard): Put paths into an array instead of printing
+       them right away.  Return 1 rather than 0.
+       (report_missing_guard_cmp): New function.
+       (_cpp_report_missing_guards): Sort and print paths gathered by
+       report_missing_guard callback.
+
+2008-07-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       PR 28079
+       * directives.c (strtolinenum): Handle overflow.
+       (do_line): Give a warning if line number overflowed.
+       (do_linemarker): Update call to strtolinenum.
+
+2008-07-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+       * include/line-map.h (linenum_type): New typedef.
+       (struct line_map): Use it.
+       (SOURCE_LINE): Second arguments is a LOCATION not a LINE.
+       (SOURCE_COLUMN): Likewise.
+       * macro.c (_cpp_builtin_macro_text): Use linenum_type. Don't store
+       source_location values in a variable of type linenum_type.
+       * directives.c (struct if_stack): Use linenum_type.
+       (strtoul_for_line): Rename as strtolinenum.
+       (do_line): Use linenum_type.
+       (do_linemarker): Use linenum_type and strtolinenum.
+       (_cpp_do_file_change): Use linenum_t.
+       * line-map.c (linemap_add): Likewise.
+       (linemap_line_start): Likewise.
+       * traditional.c (struct fun_macro): 'line' is a source_location.
+       * errors.c (print_location): Use linenum_type.
+       * directives-only.c (_cpp_preprocess_dir_only): Likewise.
+       * internal.h (CPP_INCREMENT_LINE): Likewise.
+       * lex.c (_cpp_skip_block_comment): Use source_location.
+       
+2008-07-14  Ben Elliston  <bje@au.ibm.com>
+
+       * include/cpplib.h (NODE_CONDITIONAL): New.
+       (struct cpp_callbacks): New macro_to_expand field.
+       (struct cpp_hashnode): Adjust size of flags and type fields.
+       (cpp_peek_token): Prototype.
+       * lex.c (cpp_peek_token): New function.
+       (_cpp_temp_token): Protect pre-existing lookaheads.
+       * macro.c (cpp_get_token): Expand any conditional macros.
+       (_cpp_backup_tokens_direct): New.
+       (_cpp_backup_tokens): Call _cpp_backup_tokens_direct.
+       (warn_of_redefinition): Silently allow redefined conditional
+       macros.
+       (_cpp_create_definition): Remove the conditional flag when a user
+       defines one of the conditional macros.
+       * internal.h (_cpp_backup_tokens_direct): New prototype.
+
+2008-06-13  Andrew Haley  <aph@redhat.com>
+
+       PR preprocessor/33305
+       * macro.c (replace_args): Print a warning for empty macro
+       arguments in C89 and C++.
+
+2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * Makefile.in ($(srcdir)/aclocal.m4): Update dependencies.
+       * configure: Regenerate.
+
+2008-06-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * Makefile.in (datarootdir): New variable.
+
+2008-06-12  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR preprocessor/36479
+       * charset.c (cpp_interpret_string_notranslate): Also set
+       narrow_cset_desc.width.
+
+2008-06-07  Joseph Myers  <joseph@codesourcery.com>
+
+       * configure.ac (parisc*64*-*-*): Remove.
+       * configure: Regenerate.
+
+2008-05-30  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/36320:
+       * internal.h (_cpp_parse_expr): Update.
+       * expr.c (_cpp_parse_expr): Add 'is_if' argument.  Update error
+       messages.
+       * directives.c (do_if): Update.
+       (do_elif): Require expression if processing group.
+
+2008-05-30  Danny Smith  <dannysmith@users.sourceforge.net>
+
+       * include/cpplib.h (struct cpp_dir): Add new field, canonical_name.
+
+2008-05-21  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/27777:
+       * lex.c (cpp_output_line_to_string): New function.
+       * internal.h (_cpp_begin_message): Don't declare.
+       * errors.c (_cpp_begin_message): Now static.
+       * include/cpplib.h (cpp_output_line_to_string): Declare.
+       * directives.c (do_diagnostic): Rewrote.  Use
+       cpp_output_line_to_string.  Don't use _cpp_begin_message.
+
+2008-05-21  Tom Tromey  <tromey@redhat.com>
+
+       * include/symtab.h (HT_ALLOCED): Remove.
+       (ht_purge): Declare.
+       * symtab.c (DELETED): New define.
+       (ht_lookup): Update comment.
+       (ht_lookup_with_hash): Handle deleted entries.  Remove HT_ALLOCED
+       code.  Use subobject allocator for strings, if it exists.
+       (ht_expand): Handle deleted entries.
+       (ht_forall): Likewise.
+       (ht_purge): New function.
+       (ht_dump_statistics): Print deletion statistics.
+
+2008-05-13  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/22168:
+       * include/cpplib.h (struct cpp_options) <objc>: Update
+       documentation.
+       * expr.c (eval_token): Warn for use of assertions.
+       * directives.c (directive_diagnostics): Warn about extensions.
+       (DEPRECATED): New define.
+       (DIRECTIVE_TABLE): Use it.
+
+2008-05-06  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/35313, PR preprocessor/36088:
+       * expr.c (optab) <QUERY, COMMA>: Set precedence to 4.
+       (reduce) <case CPP_QUERY>: Special case CPP_COMMA and CPP_COLON.
+
+2008-05-04  David S. Miller  <davem@davemloft.net>
+
+       * configure.ac (sparc*-*-*): Always set need_64bit_hwint to yes.
+       * configure: Regenerate.
+
+2008-04-22  Daniel Franke  <franke.daniel@gmail.com>
+
+       * include/cpplib.h (cpp_define_formatted): New.
+       * directives.c (cpp_define_formatted): New.
+
+2008-04-21  Tom Tromey  <tromey@redhat.com>
+
+       PR libcpp/33415:
+       * charset.c (_cpp_convert_input): Add buffer_start argument.
+       Ignore UTF-8 BOM if seen.
+       * internal.h (_cpp_convert_input): Add argument.
+       * files.c (struct _cpp_file) <buffer_start>: New field.
+       (destroy_cpp_file): Free buffer_start, not buffer.
+       (_cpp_pop_file_buffer): Likewise.
+       (read_file_guts): Update.
+
 2008-04-18  Kris Van Hees <kris.van.hees@oracle.com>
 
        * include/cpp-id-data.h (UC): Was U, conflicts with U"..." literal.