OSDN Git Service

* cp-demangle.c (__cxa_demangle): Adjust last patch to handle
[pf3gnuchains/gcc-fork.git] / libiberty / ChangeLog
index 695c450..a43fb90 100644 (file)
@@ -1,3 +1,183 @@
+2004-02-23  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * cp-demangle.c (__cxa_demangle): Adjust last patch to handle
+       empty string correctly.
+
+       * cp-demangle.c (__cxa_demangle): It is not an error if status is
+       not NULL.  It is an error if the mangled name is the same as a
+       built-in type name.
+       (main): If IN_GLIBCPP_V3 is defined, test __cxa_demangle rather
+       than cplus_demangle_v3.
+
+       * dyn-string.c: Remove test of IN_LIBGCC2 and IN_GLIBCPP_V3 and
+       the associated #define of RETURN_ON_ALLOCATION_FAILURE.
+
+2004-02-16  Matt Kraai  <kraai@alumni.cmu.edu>
+
+       * regex.c: Include <ansidecl.h>.
+       (regcomp): Cast i to int.
+       (regerror): Add ATTRIBUTE_UNUSED to parameter preg.
+
+2004-01-25  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * configure.ac: Add m4_pattern_allow(LIBOBJS).
+       * configure: Regenerate.
+
+2004-01-22  DJ Delorie  <dj@redhat.com>
+
+       * Makefile.in: Convert to ./ throughout.  Rebuild dependencies
+       with explicit build rules.
+       (VPATH): Remove.
+       (.c.o): Poison.
+       * configure.ac (pexecute, LIBOBJS): Add ./ .
+       * maint-tool: Build dependencies with explicit rules.
+
+2004-01-15  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * strdup.c (strdup): Constify the argument.
+
+2004-01-14  Loren J. Rittle  <ljrittle@acm.org>
+
+       * Makefile.in (distclean): Remove config.cache.
+
+2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
+
+       * cp-demangle.c (d_make_comp): DEMANGLE_COMPONENT_CONSTRUCTION_VTABLE
+       takes two parameters.
+       * cp-demint.c (cplus_demangle_fill_component): Likewise.
+
+2004-01-12  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * cp-demangle.c: Include "cp-demangle.h".  If IN_GLIBCPP_V3 is
+       defined, rename some functions which are to become static via
+       #define.
+       (CP_STATIC_IF_GLIBCPP_V3): Define.
+       (struct d_operator_info): Move definition to cp-demangle.h, and
+       rename to demangle_operator_info.  Change all uses.
+       (enum d_builtin_type_print): Move definition to cp-demangle.h.
+       (struct d_builtin_type_info): Move definition to cp-demangle.h,
+       and rename to demangle_builtin_type_info.  Change all uses.
+       (enum d_comp_type): Move definition to include/demangle.h, and
+       rename to demangle_component_type, and change all enums to start
+       with DEMANGLE_COMPONENT_ instead of D_.  Change all uses.
+       (struct d_comp): Move definition to include/demangle.h, and rename
+       to demangle_component.  Change all uses.
+       (struct d_info): Move definition to cp-demangle.h.
+       (cplus_demangle_fill_name): New function.
+       (cplus_demangle_fill_extended_operator): New function.
+       (cplus_demangle_fill_ctor): New function.
+       (cplus_demangle_fill_dtor): New function.
+       (d_make_empty): Remove type parameter.  Change all callers.
+       (d_make_name): Use cplus_demangle_fill_name.
+       (d_make_extended_operator): Use
+       cplus_demangle_fill_extended_operator.
+       (d_make_ctor): Use cplus_demangle_fill_ctor.
+       (d_make_dtor): Use cplus_demangle_fill_dtor.
+       (cplus_demangle_mangled_name): Rename from d_mangled_name.  Make
+       non-static by default.  Change all callers.
+       (cplus_demangle_operators): Rename from d_operators.  Change all
+       uses.  Make non-static by default.  Add sentinel at end of array.
+       (d_operator_name): Adjust initialization of high for new sentinel
+       in cplus_demangle_operators.
+       (cplus_demangle_builtin_types): Rename from d_builtin_types.
+       Change all uses.  Make non-static by default.  Change initializer
+       to use D_BUILTIN_TYPE_COUNT instead of magic number 26.
+       (cplus_demangle_type): Rename from d_type.  Make non-static by
+       default.  Change all callers.
+       (cplus_demangle_init_info): Rename from d_init_info.  Make
+       non-static by default.  Change all callers.
+       * cp-demangle.h: New file.
+       * cp-demint.c: New file.
+       * Makefile.in: Rebuild dependencies.
+       (CFILES): Add cp-demint.c.
+       (REQUIRED_OFILES): Add cp-demint.o.
+
+2004-01-09  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * configure.in:  Rename file to ...
+       * configure.ac:  ... this.
+       * Makefile.in: Update a comment for above change.
+       * README: Likewise.
+       * config.in: Regenerate.
+
+2004-01-02  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * cp-demangle.c (d_encoding): When DMGL_PARAMS is not set, strip
+       CV-qualifiers from D_COMP_LOCAL_NAME right subtree.
+       * cplus-dem.c (demangle_arm_hp_template): Set DMGL_PARAMS when
+       demangling template parameters.
+       * testsuite/test-demangle.c (fail): New static function.
+       (main): Support new options in input file: --no-params,
+       --is-v3-ctor, and --is-v3-dtor.
+       * testsuite/demangle-expected: Add --no-params to most tests, and
+       add the correct result when parameters are not demangled.  Add
+       some simple tests for V3 constructor/destructor recognition.
+
+2003-12-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * cp-demangle.c (is_ctor_or_dtor): Fix error in last change.
+
+2003-12-22  Daniel Jacobowitz  <drow@mvista.com>
+
+       PR debug/13272
+       * Makefile.in (lbasename.o): Depend on filenames.h.
+       * lbasename.c: Include "filenames.h" instead of defining
+       its macros locally.
+
+2003-12-22  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * cp-demangle.c (CP_DYNAMIC_ARRAYS): Define if compiler supports
+       dynamic arrays.
+       (struct d_operator_info): Add len field.
+       (struct d_builtin_type_info): Add len and java_len fields.
+       (struct d_standard_sub_info): Add simple_len, full_len, and
+       set_last_name_len fields.
+       (struct d_comp): Add len field to s_string.
+       (struct d_info): Add send, did_subs, and expansion fields.
+       (d_append_string_constant): Define.
+       (d_append_string): Remove.  Change all users to use
+       d_append_string_constant or d_append_buffer instead.
+       (d_make_sub): Add len parameter.  Change all callers.
+       (d_name): Increase expansion when substituting std::.
+       (d_unqualified_name): Increase expansion for an operator.
+       (d_number): Don't use multiplication for negative numbers.
+       (d_identifier): Make sure there are enough characters in the
+       string for the specified length.  Adjust expansion for an
+       anonymous namespace.
+       (d_operators): Initialize len field.
+       (d_special_name, d_ctor_dtor_name): Increase expansion.
+       (d_builtin_types): Initialize len and java_len fields.
+       (d_type): Increase expansion for a builtin type.
+       (d_cv_qualifiers): Increase expansion for each qualifier.
+       (d_bare_function_type): Decrease expansion when removing single
+       void parameter.
+       (d_template_param): Increment did_subs.
+       (d_expression): Increase expansion for an operator.
+       (d_expr_primary): Decrease expansion for a type we will print
+       specially.
+       (standard_subs): Initialize new fields.
+       (d_substitution): Increment did_subs when doing a normal
+       substitution.  Increase expansion for a special substitution.
+       (d_print): Add estimate parameter.  Change all callers.
+       (d_print_comp) [D_COMP_NAME]: Handle C++ case inline.
+       (d_print_comp) [D_COMP_BINARY]: Use length to avoid strcmp call.
+       (d_print_java_identifier): Rename from d_print_identifier.  Handle
+       only Java case.  Change caller.
+       (d_init_info): Change return type to void.  Change all callers.
+       Initialize send, did_subs, and expansion fields.  Do not
+       initialize comps and subs fields.
+       (d_demangle): Ifdef CP_DYNAMIC_ARRAYS, allocate comps and subs
+       arrays on stack.  Make an estimate of the length of the demangled
+       name.  Ifdef CP_DEMANGLE_DEBUG, print estimation failures.
+       (is_ctor_or_dtor): Ifdef CP_DYNAMIC_ARRAYS, allocate comps and
+       subs arrays on stack.
+
+2003-12-20  Ian Lance Taylor  <ian@wasabisystems.com>
+
+       * cp-demangle.c (d_identifier): In Java mode, skip an optional '$'
+       after the identifier.
+       * testsuite/demangle-expected: Add test case.
+
 2003-12-19  Ian Lance Taylor  <ian@wasabisystems.com>
 
        Fix for PR c++/13447: