OSDN Git Service

gcc/testsuite
[pf3gnuchains/gcc-fork.git] / libcpp / ChangeLog
index 475d4f6..b86e22e 100644 (file)
-2007-11-05  Tom Tromey  <tromey@redhat.com>
+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.
+       * include/cpplib.h (CHAR16, CHAR32, STRING16, STRING32): New tokens.
+       (struct cpp_options): Added uliterals.
+       (cpp_interpret_string): Update prototype.
+       (cpp_interpret_string_notranslate): Idem.
+       * charset.c (init_iconv_desc): New width member in cset_converter.
+       (cpp_init_iconv): Add support for char{16,32}_cset_desc.
+       (convert_ucn): Idem.
+       (emit_numeric_escape): Idem.
+       (convert_hex): Idem.
+       (convert_oct): Idem.
+       (convert_escape): Idem.
+       (converter_for_type): New function.
+       (cpp_interpret_string): Use converter_for_type, support u and U prefix.
+       (cpp_interpret_string_notranslate): Match changed prototype.
+       (wide_str_to_charconst): Use converter_for_type.
+       (cpp_interpret_charconst): Add support for CPP_CHAR{16,32}.
+       * directives.c (linemarker_dir): Macro U changed to UC.
+       (parse_include): Idem.
+       (register_pragma_1): Idem.
+       (restore_registered_pragmas): Idem.
+       (get__Pragma_string): Support CPP_STRING{16,32}.
+       * expr.c (eval_token): Support CPP_CHAR{16,32}.
+       * init.c (struct lang_flags): Added uliterals.
+       (lang_defaults): Idem.
+       * internal.h (struct cset_converter) <width>: New field.
+       (struct cpp_reader) <char16_cset_desc>: Idem.
+       (struct cpp_reader) <char32_cset_desc>: Idem.
+       * lex.c (digraph_spellings): Macro U changed to UC.
+       (OP, TK): Idem.
+       (lex_string): Add support for u'...', U'...', u"..." and U"...".
+       (_cpp_lex_direct): Idem.
+       * macro.c (_cpp_builtin_macro_text): Macro U changed to UC.
+       (stringify_arg): Support CPP_CHAR{16,32} and CPP_STRING{16,32}.
+
+2008-04-18  Paolo Bonzini  <bonzini@gnu.org>
+
+       PR bootstrap/35457
+       * aclocal.m4: Regenerate.
+       * configure: Regenerate.
+
+2008-04-17  Tom Tromey  <tromey@redhat.com>
+
+       PR libcpp/34866:
+       * errors.c (cpp_error): Don't reference a token before the start
+       of the current run.
+
+2008-04-16  Tom Tromey  <tromey@redhat.com>
+
+       * Makefile.in (TAGS_SOURCES): New variable.
+       (TAGS): New target.
+
+2008-04-11  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * configure.ac: (need_64bit_hwint): Need 64bit hwint for sh-*-*
+       and shbe-*-*.
+       * configure: Rebuilt.
+
+2008-04-02  Joseph Myers  <joseph@codesourcery.com>
+
+       * include/cpplib.h (struct cpp_callbacks): Add used_define,
+       used_undef and before_define.
+       (NODE_USED): Define.
+       * directives.c (do_define, do_undef, undefine_macros, do_ifdef,
+       do_ifndef, cpp_pop_definition): Handle new flag and use new
+       callbacks.
+       * expr.c (parse_defined): Handle new flag and use new callbacks.
+       * macro.c (enter_macro_context, _cpp_free_definition): Handle new
+       flag and use new callbacks.
+
+2008-04-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR pch/13675
+       * files.c (struct _cpp_file): Remove pch field.
+       (pch_open_file): Don't set file->pch, just file->pchname.
+       (should_stack_file): After pfile->cb.read_pch call
+       free pchname and clear pchname, don't close file->fd.
+       Test file->pchname instead of file->pch.  Don't close fd after cb.
+       (_cpp_stack_include): Test file->pchname instead of file->pch.
+
+2008-03-28  Tom Tromey  <tromey@redhat.com>
+
+       * Makefile.in (POSTCOMPILE): New variable.
+       (.c.o): Use it.
+
+2008-03-13  Tom Tromey  <tromey@redhat.com>
+
+       PR libcpp/35322:
+       * directives.c (destringize_and_run): Set pfile->directive.
+
+2008-03-06  Markus Milleder  <markus.milleder@generali.at>
+
+       PR preprocessor/35458
+       * mkdeps.c (munge): Quote '#' with a '\'.
+
+2008-02-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       PR preprocessor/35379
+       * mkdeps.c (deps_write): Ensure the first target always appears
+       in the first column, without leading backslash newline.  Avoid
+       some more extra whitespace.
+
+2008-02-25  Thiemo Seufer <ths@mips.com>
+
+       * Makefile.in ($(srcdir)/config.in): Depend on configure.ac.
+
+2008-02-19  Tom Tromey  <tromey@redhat.com>
+
+       * traditional.c (lex_identifier): Use CPP_HASHNODE.
+       * lex.c (lex_identifier): Use CPP_HASHNODE.
        * include/line-map.h (LINEMAP_POSITION_FOR_COLUMN): Wrap in
        do-while.
+       * identifiers.c (alloc_node): Change return type.
+       (_cpp_init_hashtable): Don't cast 'alloc_node'.
+       (proxy_assertion_broken): New declaration.
+       (cpp_forall_identifiers): Move comment.
+       * line-map.c (linemap_add): Comment fix.
+       (linemap_line_start): Indentation fix.
+
+2008-01-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR preprocessor/34692
+       * macro.c (collect_args): Add pragma_buff argument.  Push
+       CPP_PRAGMA ... CPP_PRAGMA_EOL tokens to *pragma_buff, rather
+       than into arguments.  Reset prevent_expansion and parsing_args
+       state at CPP_PRAGMA_EOL/CPP_EOF.
+       (funlike_invocation_p): Add pragma_buff argument, pass it through
+       to collect_args.
+       (enter_macro_context): Add result argument.  Adjust
+       funlike_invocation_p caller.  Emit all deferred pragma tokens
+       gathered during collect_args before the expansion, add a padding
+       token.  Return 2 instead of 1 if any pragma tokens were prepended.
+       (cpp_get_token): If enter_macro_context returns 2, don't return
+       a padding token, instead cycle to grab CPP_PRAGMA token.
+       * directives.c (_cpp_handle_directive): If was_parsing_args
+       in deferred pragma, leave parsing_args and prevent_expansion as is.
+
+2008-01-22  Tom Tromey  <tromey@redhat.com>
+
+       PR c++/34859
+       * macro.c (_cpp_create_definition): Handle __STDC_LIMIT_MACROS and
+       __STDC_CONSTANT_MACROS.
+
+2008-01-07  Fred Fish  <fnf@specifix.com>
+
+       PR preprocessor/30363
+       * traditional.c (replace_args_and_push): Add local variable
+       cxtquote, calculate the replacement text size assuming a 
+       worst case of every input character quoted with backslash,
+       and properly handle output quoting of quote characters in
+       actual arguments used in function-like macros.
+
+2008-01-03  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/34602
+       * directives.c (do_line): Don't try to spell EOF token.
+       (do_linemarker): Add comment.
+
+2007-12-11  DJ Delorie  <dj@redhat.com>
+
+       * charset.c (convert_using_iconv): Close out any shift states,
+       returning to the initial state.
+
+2007-12-06  Tom Tromey  <tromey@redhat.com>
+
+       PR c/29172
+       * internal.h (struct cpp_reader) <file_hash_entries>: Changed
+       type.
+       <file_hash_entries_allocated, file_hash_entries_used>: Removed.
+       * files.c (FILE_HASH_POOL_SIZE): New macro.
+       (struct file_hash_entry_pool): New.
+       (destroy_all_cpp_files): New function.
+       (allocate_file_hash_entries): Allocate a file_hash_entry_pool.
+       (new_file_hash_entry): Update.
+       (free_file_hash_entries): New function.
+       (_cpp_cleanup_files): Call free_file_hash_entries and
+       destroy_all_cpp_files.
+       (cpp_clear_file_cache): New function.
+       * include/cpplib.h (cpp_clear_file_cache): Declare.
+
+2007-12-03  Tom Tromey  <tromey@redhat.com>
+
+       PR preprocessor/34288
+       * configure.ac, config.in: Rebuilt.
+       * configure.ac: Check for ssize_t.
+
+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:
+       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.
 
 2007-11-01  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/30805:
+       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:
+       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.
 
 2007-08-18  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/32974:
+       PR preprocessor/32974
        * directives.c (parse_include): Don't check for EOL when
        processing #pragma dependency.
 
 
 2007-05-02  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/28709:
+       PR preprocessor/28709
        * macro.c (paste_tokens): Remove PASTE_LEFT from the old lhs.
 
 2007-03-30  Michael Meissner  <michael.meissner@amd.com>
 
 2007-01-30  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/30468:
+       PR preprocessor/30468
        * mkdeps.c (apply_vpath): Strip successive '/'s if we stripped
        './'.
 
 2007-01-30  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/29966:
+       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.
 
 2007-01-12  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/28227:
+       PR preprocessor/28227
        * directives.c (lex_macro_node): Added 'is_def_or_undef'
        argument.
        (do_define): Update.
 
 2007-01-04  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/28165:
+       PR preprocessor/28165
        * internal.h (cpp_in_primary_file): New function.
        * directives.c (do_include_next): Use cpp_in_primary_file.
        (do_pragma_once): Likewise.
 
 2006-12-28  Tom Tromey  <tromey@redhat.com>
 
-       PR preprocessor/30001:
+       PR preprocessor/30001
        * charset.c (_cpp_convert_input): Check that to.len is greater
        than zero.