OSDN Git Service

libcpp
[pf3gnuchains/gcc-fork.git] / libcpp / ChangeLog
index 072c6aa..3701c80 100644 (file)
@@ -1,3 +1,237 @@
+2007-11-30  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/32868:
+       * macro.c (_cpp_create_definition): Special case
+       __STDC_FORMAT_MACROS.
+
+2007-11-16  Michael Matz  <matz@suse.de>
+
+       * files.c (search_path_head): Fix check for absolute paths.
+
+2007-11-11  Tom Tromey  <tromey@redhat.com>
+
+       PR c++/17557:
+       * include/cpplib.h (cpp_included_before): Declare.
+       * files.c (struct file_hash_entry) <location>: New field.
+       (_cpp_find_file): Initialize new field.
+       (make_cpp_dir): Likewise.
+       (cpp_included_before): New function.
+
+2007-11-01  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/30805:
+       * macro.c (paste_tokens): Handle padding token.
+       (paste_tokens): Don't abort unless padding has PASTE_LEFT flag.
+
+2007-10-31  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/30786:
+       * macro.c (builtin_macro): Return result of _cpp_do__Pragma.
+       * directives.c (_cpp_do__Pragma): Return error status.
+       * internal.h (_cpp_do__Pragma): Update.
+       * directives.c (get__Pragma_string): Back up if EOF seen.
+
+2007-09-06  Tom Tromey  <tromey@redhat.com>
+
+       * internal.h (struct cpp_reader) <invocation_location>: New
+       field.
+       (struct cpp_reader) <set_invocation_location>: Likewise.
+       * init.c (cpp_set_line_map): New function.
+       * line-map.c (linemap_add): Use linemap's allocator.
+       * include/line-map.h (GTY): Define.
+       (line_map_realloc): New typedef.
+       (struct line_map): Mark with GTY.
+       (struct line_maps): Likewise.
+       (struct line_maps) <maps>: Likewise.
+       (struct line_maps) <reallocator>: New field.
+       * include/symtab.h (GTY): Conditionally define.
+       * include/cpplib.h (cpp_set_line_map): Declare.
+       (cpp_get_token_with_location): Declare.
+       * macro.c (cpp_get_token): Set invocation_location on the reader.
+       (cpp_get_token_with_location): New function.
+
+2007-08-30  Chao-ying Fu  <fu@mips.com>
+
+       * expr.c (interpret_float_suffix): Support hr, r, lr, llr, uhr, ur,
+       ulr, ullr, hk, k, lk, llk, uhk, uk, ulk, ullk.
+       (cpp_classify_number): Support decimal fixed-point constants without
+       exponents.
+       Warn about fixed-point constants when -pedantic.
+       * include/cpplib.h (CPP_N_SMALL, CPP_N_MEDIUM, CPP_N_LARGE): Change
+       comments to support fixed-point values.
+       (CPP_N_FRACT, CPP_N_ACCUM): Define.
+
+2007-08-18  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/32974:
+       * directives.c (parse_include): Don't check for EOL when
+       processing #pragma dependency.
+
+2007-07-30  Ollie Wild  <aaw@google.com>
+
+       * directives-only.c: New file.
+       * internal.h (struct _cpp_dir_only_callbacks): New.
+       (_cpp_preprocess_dir_only): New function.
+       * directives.c (_cpp_handle_directive): Check directives_only before
+       disabling execution of indented directives.
+       * files.c (_cpp_stack_file): Add directives_only check.
+       * include/cpplib.h (struct cpp_options): Add directives_only.
+       (cpp_init_special_builtins): New function.
+       * init.c (cpp_init_special_builtins): New function.
+       (cpp_init_builtins): Move builtin_array initialization to
+       cpp_init_special_builtins.
+       (post_options): Check directives_only before setting
+       pfile->state.prevent_expansion = 1.
+       * macro.c (_cpp_builtin_macro_text): Print an error if __COUNTER__
+       is expanded inside a directive while -fdirectives-only is enabled.
+       * Makefile.in (libcpp_a_OBJS): Add directives-only.o.
+       (libcpp_a_SOURCES): Add directives-only.c.
+
+2007-07-04  Uros Bizjak  <ubizjak@gmail.com>
+
+       * traditional.c (_cpp_scan_out_logical_line): Initialize
+       fmacro.args, fmacro.node, fmacro.offset, fmacro.line and
+       fmacro.args to prevent 'may be used uninitialized' warning.
+
+2007-07-03  Uros Bizjak  <ubizjak@gmail.com>
+
+       * include/cpplib.h (CPP_N_WIDTH_MD, CPP_N_MD_W, CPP_N_MD_Q):
+       Add new constants.
+       * expr.c (interpret_float_suffix): Process 'w', 'W', 'q' and 'Q'
+       suffixes.  Return CPP_N_MD_W for 'w' or 'W' suffixes and CPP_N_MD_Q
+       for 'q' or 'Q' suffixes.
+
+2007-06-17  Danny Smith  <dannysmith@users.sourceforge.net
+
+       * files.c (open_file): Correct typo.
+
+2007-06-16  Vladimir Prus  <vladimir@codesourcery.com>
+
+       * files.c (open_file): Prevent the call
+       for stat from overwriting errno.
+
+2007-06-09  Vladimir Prus  <vladimir@codesourcery.com>
+
+       * files.c (open_file): Account for the
+        fact that on windows, opening a directory gives
+        EACCES.
+
+2007-06-05  Joerg Wunsch  <j.gnu@uriah.heep.sax.de>
+
+       PR preprocessor/23479
+       * expr.c (cpp_classify_number): Implement 0b-prefixed binary
+       integer constants.
+       (append_digit): Likewise.
+       * include/cpplib.h: Add CPP_N_BINARY, to be used for 0b-prefixed
+       binary integer constants.
+
+2007-05-31  Dave Korn  <dave.korn@artimi.com>
+
+       PR preprocessor/14331
+       * lex.c (_cpp_get_fresh_line):  Don't warn if no newline at EOF.
+
+2007-05-24  Ollie Wild  <aaw@google.com>
+
+       * macro.c (_cpp_builtin_macro_text): Handle BT_COUNTER.
+       * pch.c (cpp_write_pch_deps): Save __COUNTER__ state.
+       (cpp_write_pch_state): Save __COUNTER__ state.
+       (cpp_valid_state): Check valid __COUNTER__ state.
+       (cpp_read_state): Read new __COUNTER__ state.
+       * include/cpplib.h (enum builtin_type): Add BT_COUNTER enumerator.
+       * init.c (builtin_array): Add __COUNTER__/BT_COUNTER.
+       * internal.h (struct cpp_reader): Add counter member.
+
+2007-05-23  Simon Martin  <simartin@users.sourceforge.net>
+
+       PR preprocessor/20077
+       * macro.c (create_iso_definition): Fixed the method to determine
+       whether the token-pasting operator appears at the beginning or the end
+       of a macro.
+
+2007-05-21  Ian Lance Taylor  <iant@google.com>
+
+       * internal.h (struct cpp_reader): Add new fields:
+       nonexistent_file_hash and nonexistent_file_ob.
+       * files.c: Include "obstack.h".
+       (find_file_in_dir): Before trying to open the file, look up the
+       path name in the hash table of nonexistent files.  After failing
+       to open the file, add the path name to the hash table.
+       (_cpp_find_file): Cache the results of looking up the file name
+       starting with the quote and bracket chain heads, if we can.
+       (nonexistent_file_hash_eq): New static function.
+       (_cpp_init_files): Initialize pfile->nonexistent_file_hash and
+       pfile->nonexistent_file_ob.
+       (_cpp_cleanup_files): Free pfile->nonexistent_file_hash and
+       pfile->nonexistent_file_ob.
+
+2007-05-14  Janis Johnson  <janis187@us.ibm.com>
+
+        * expr.c (cpp_classify_number): Warn about dfp constant for -pedantic.
+
+       PR c/31924
+       * expr.c (interpret_float_suffix): Check for invalid suffix.
+
+2007-05-02  Eric Christopher  <echristo@apple.com>
+
+       * expr.c (num_div_op): Don't overflow if the result is
+       zero.
+
+2007-05-02  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/28709:
+       * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs.
+
+2007-03-30  Michael Meissner  <michael.meissner@amd.com>
+
+       * directives.c (lex_macro_node_from_str): Fix alloca call to be
+       type correct.
+
+2007-03-30  Richard Henderson  <rth@redhat.com>
+
+       * directives.c (lex_macro_node_from_str): New.
+       (cpp_push_definition, cpp_pop_definition): New.
+       * include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare.
+
+2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
+
+       * Makefile.in: Add dummy install-pdf target.
+
+2007-01-30  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/30468:
+       * mkdeps.c (apply_vpath): Strip successive '/'s if we stripped
+       './'.
+
+2007-01-30  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/29966:
+       * macro.c (lex_expansion_token): Save and restore cpp_reader's
+       cur_token.
+       (_cpp_create_definition): Don't restore cur_token here.
+       * lex.c (_cpp_lex_token): Added assertion.
+
+2007-01-27  Tom Tromey  <tromey@redhat.com>
+
+       * configure: Rebuilt.
+
+2007-01-12  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/28227:
+       * directives.c (lex_macro_node): Added 'is_def_or_undef'
+       argument.
+       (do_define): Update.
+       (do_undef): Update.
+       (do_ifdef): Update.
+       (do_ifndef): Update.
+
+2007-01-11  Paolo Bonzini  <bonzini@gnu.org>
+
+       * configure: Regenerate.
+
+2007-01-11  Paolo Bonzini  <bonzini@gnu.org>
+
+       * configure: Regenerate.
+
 2007-01-04  Tom Tromey  <tromey@redhat.com>
 
        PR preprocessor/28165: