OSDN Git Service

2001-10-19 H.J. Lu <hjl@gnu.org>
[pf3gnuchains/gcc-fork.git] / libiberty / ChangeLog
index 6616938..de76760 100644 (file)
@@ -1,3 +1,626 @@
+2001-10-19  H.J. Lu <hjl@gnu.org>
+
+       * Makefile.in ($(TARGETLIB)): Also generate pic/$(TARGETLIB) if
+       necessary.
+
+2001-10-17  DJ Delorie  <dj@redhat.com>
+
+       * argv.c, asprintf.c, choose-temp.c, concat.c, cplus-dem.c,
+       ffs.c, fnmatch.txh, getruntime.c, make-temp-file.c,
+       mkstemps.c, pexecute.c, random.c, strsitnal.c, vasprintf.c:
+       Improve manual formatting.
+       * functions.texi: Regenerate.
+
+2001-10-15  DJ Delorie  <dj@redhat.com>
+
+       * Makefile.in (TEXIFILES): Add fnmatch.txh.
+       (maint-undoc): New.
+       maint-tool: Add "undoc" tool.
+       * alloca.c, argv.c, asprintf.c, choose-temp.c, concat.c,
+       fdmatch.c, ffs.c, getruntime.c, insque.c, lbasename.c,
+       make-temp-file.c, mkstemps.c, pexecute.c, random.c, spaces.c,
+       strerror.s, strsignal.c, strtol.c, vasprintf.c: Add or update
+       documentation.
+       * fnmatch.txh: New.
+       * functions.texi: Regenerate.
+       
+2001-10-10  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * bcmp.c, setenv.c: Use "nonzero" instead of "non-zero".
+       * strtod.c: Use "ISO C" instead of "ANSI C".
+       * functions.texi: Regenerate.
+
+2001-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
+
+       * alloca.c, clock.c, getcwd.c, getpagesize.c, getpwd.c, index.c,
+       libiberty.texi, memchr.c, putenv.c, rindex.c, strchr.c, strdup.c,
+       strerror.c, strrchr.c, strstr.c, strtod.c, tmpnam.c, vfork.c,
+       xatexit.c, xmalloc.c, xstrerror.c: Improve manual formatting.  Fix
+       spelling.  Give names to function arguments in documentation.  Use
+       (void) prototypes in documentation.
+       * functions.texi: Regenerate.
+
+2001-10-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * argv.c (buildargv, tests, main): Const-ify.
+       * cp-demangle.c (operator_code): Likewise.
+       * cplus-dem.c (optable, libiberty_demanglers,
+       cplus_demangle_set_style, cplus_demangle_name_to_style,
+       print_demangler_list): Likewise.
+       * hashtab.c (higher_prime_number): Likewise.
+       * strcasecmp.c (charmap): Likewise.
+       * strerror.c (error_info, strerror, main): Likewise.
+       * strncasecmp.c (charmap): Likewise.
+       * strsignal.c (signal_info): Likewise.
+
+2001-09-29  DJ Delorie  <dj@redhat.com>
+
+       * configure: Regenerate.
+
+2001-09-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * concat.c: Include stdlib.h.
+
+2001-09-27  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * libiberty.texi: (Top level): Add syncodeindex pg.  Add
+       @dircategory and @direntry directives.  Add @finalout.
+       (many nodes): Lose the next,prev,up pointers on the @nide line.
+       (Using, Supplemental Functions, Replacement Functions): Fix
+       markup.
+       (Functions): Move around, to allow makeinfo to build the manual
+       without next,prev,up pointers in thye node lines.
+       (Licenses): Fix typos.
+
+       * index.c, rindex.c, strchr.c, strerror.c, strrchr.c, strstr.c,
+       strtol.c, xatexit.c, xexit.c, xmalloc.c: Fix spelling and markup.
+       * functions.texi: Regenerate.
+
+       * copying-lib.texi: Lose the next,prev,up pointers on the @node
+       line.
+
+2001-09-27  DJ Delorie  <dj@redhat.com>
+
+       * configure.in: Don't use in-tree texinfo, because libiberty must
+       be built before it.  Check for makeinfo version 4 or higher.
+       * functions.texi: Regenerate.
+       
+2001-09-20  DJ Delorie  <dj@redhat.com>
+           Phil Edwards  <pedwards@disaster.jaj.com>
+       
+       * configure.in (MAKEINFO, PERL): Detect these.
+       (--enable-maintainer-mode): Add.
+       * configure: Regenerate.
+       * Makefile.in (MAKEINFO, PERL): Define.
+       (libiberty.info, libiberty.dvi, libiberty.html): New.
+       (CFILES): Add bsearch.c.
+       (CONFIGURED_OFILES): New, list of objects configure might add.
+       (maint-missing, maint-buildall): New, for maintainers only.
+       (clean, mostlyclean): Add info/dvi/html files.
+       * libiberty.texi, copying-lib.texi, obstacks.texi, functions.texi: New.
+       * gather-docs: New, for maintainers.
+       * maint-tool: New, for maintainers.
+       * alloca.c, atexit.c, basename.c, bcmp.c, bcopy.c, bsearch.c,
+       bzero.c, calloc.c, clock.c, configure.in, configure, getcwd.c,
+       getpagesize.c, getpwd.c, index.c, memchr.c, memcmp.c, memcpy.c,
+       memmove.c, memset.c, putenv.c, rename.c, rindex.c, setenv.c,
+       sigsetmask.c, strcasecmp.c, strchr.c, strdup.c, strerror.c,
+       strncasecmp.c, strncmp.c, strrchr.c, strstr.c, strtod.c, strtol.c,
+       tmpnam.c, vfork.c, vprintf.c, waitpid.c, xatexit.c, xexit.c,
+       xmalloc.c, xmemdup.c, xstrdup.c, xstrerror.c: Add or update
+       documentation.
+       
+2001-09-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * concat.c (reconcat): Fix for traditional C.
+
+2001-09-24  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * concat.c (reconcat): New function.
+
+2001-09-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * concat.c (vconcat_length, vconcat_copy, concat_length,
+       concat_copy, concat_copy2): New functions.
+       (concat): Use vconcat_length/vconcat_copy.
+
+       * alloca.c (libiberty_optr, libiberty_nptr, libiberty_len):
+       Define.
+
+2001-09-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * asprintf.c: Don't define USE_STDARG.  Use VPARAMS, VA_OPEN,
+       VA_FIXEDARG & VA_CLOSE.
+       
+       * vasprintf.c: Check HAVE_STRING_H when including string.h.
+       (checkit): Delete redundant prototype.  Add ATTRIBUTE_PRINTF_1.
+       Use VA_OPEN, VA_FIXEDARG & VA_CLOSE.  Free allocated string.
+
+2001-08-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * concat.c (concat): Use VPARAMS, VA_OPEN, VA_FIXEDARG & VA_CLOSE.
+
+2001-08-23  Ulrich Drepper  <drepper@redhat.com>
+
+       * regex.c (truncate_wchar): Use wcrtomb not wctomb.
+
+2001-08-23  Ulrich Drepper  <drepper@redhat.com>
+
+       * posix/regex.c [_LIBC] (convert_mbs_to_wcs): Use __mbrtowc
+       instead of mbrtowc.
+       [_LIBC]: Use __iswctype instead of iswctype, __wcslen instead of
+       wcslen, and __wcscoll instead of wcscoll.
+
+2001-08-22  Matt Kraai  <kraai@alumni.carnegiemellon.edu>
+
+       * fibheap.c (fibheap_init, fibnode_init): Remove.
+       (fibheap_new, fibnode_new): Use xcalloc to allocate and
+       initialize memory.
+       (fibheap_insert): Remove check for node allocation failure.
+
+2001-08-21  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (fibheap.o): Depend on config.h.
+       * fibheap.c: Tidy formatting.  Use config.h.` Rearrange some
+       functions for inlining.
+
+Tue Aug 21 12:35:04 2001  Christopher Faylor <cgf@cygnus.com>
+
+       * configure.in: Need to set HAVE_SYS_ERRLIST and HAVE_SYS_NERR whenever
+       hosting on cygwin.
+       * configure: Regenerate.
+
+2001-08-20  Andrew Cagney  <ac131313@redhat.com>
+
+       * floatformat.c (floatformat_m88110_ext): Remove #ifdef
+       HARRIS_FLOAT_FORMAT.
+       (floatformat_ia64_spill_little, floatformat_ia64_quad_little)
+       (floatformat_ia64_spill_big, floatformat_ia64_quad_big)
+       (floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword)
+       (floatformat_m88110_harris_ext): New float formats.
+
+2001-08-20  Daniel Berlin  <dan@cgsoftware.com>
+
+       * fibheap.c: New file. Fibonacci heap.
+
+       * Makefile.in (CFILES): Add fibheap.c.
+       (REQUIRED_OFILES): Add fibheap.o.
+       (fibheap.o): Add dependencies for fibheap.o.
+
+2001-08-17  Christopher Faylor <cgf@cygnus.com>
+
+       * configure.in: Always set HAVE_SYS_ERRLIST when targetting cygwin.
+       * configure: Regenerate.
+
+2001-08-16  Richard Henderson  <rth@redhat.com>
+
+       * hashtab.c (htab_hash_string): New.
+
+2001-08-13  Andrew Cagney  <ac131313@redhat.com>
+
+       * floatformat.c (floatformat_ieee_double_littlebyte_bigword): Fix
+       name.
+
+2001-08-12  Isamu Hasegawa  <isamu@yamato.ibm.com>
+
+       * regex.c (wcs_regex_compile): Use appropriate string
+       to compare with collating element.
+       Fix the padding for the alignment.
+
+2001-08-10  Andrew Cagney  <ac131313@redhat.com>
+
+       * lbasename.c (lbasename): Change function definition to return a
+       const char pointer.
+
+2001-08-07  Jason Merrill  <jason_merrill@redhat.com>
+
+       * cp-demangle.c (demangle_special_name): "GR" -> "reference temporary
+       for".
+
+2001-08-03  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (concat.o): Depend on config.h.
+
+2001-07-30  Andreas Jaeger  <aj@suse.de>
+
+       * concat.c: Include "config.h".
+
+2001-07-30  Andreas Jaeger  <aj@suse.de>
+
+       * regex.c: Declare wcs functions only if compiling with
+       MBS_SUPPORT.
+       Don't use #elif for traditional C.
+
+2001-07-23  Ulrich Drepper  <drepper@redhat.com>
+
+       * regex.c: Revamp memory allocation for WCHAR functions to
+       not use too much stack.
+
+2001-07-30  Andreas Jaeger  <aj@suse.de>
+
+       * regex.c: Declare wcs functions only if compiling with
+       MBS_SUPPORT.
+       Don't use #elif for traditional C.
+
+2001-07-25  Daniel Jacobowitz  <drow@mvista.com>
+
+       * Makefile.in (regex.o): Add dependency on config.h.
+
+2001-07-18  Andreas Schwab  <schwab@suse.de>
+
+       * regex.c (WORDCHAR_P) [WCHAR]: Also return true for the
+       underscore character.
+
+2001-07-18  Ulrich Drepper  <drepper@redhat.com>
+
+       * regex.c: Limit string length printed in debug messages to 100
+       chars.
+
+2001-07-18  Andreas Jaeger  <aj@suse.de>
+
+       * regex.c: Place under LGPL version 2.1.
+
+2001-07-10  Jeff Johnston  <jjohnstn@redhat.com>
+
+       * Makefile.in: Add support for regex code.
+       * regex.c: New file.
+
+2001-07-05  Mark Klein  <mklein@dis.com>
+
+       * Makefile.in: Add ffs.c dependency.
+       * configure.in: Add ffs.c.
+       * ffs.c: New file.
+
+2001-06-18  Richard Henderson  <rth@redhat.com>
+
+       * concat.c: Include <sys/types.h>.
+
+2001-06-11  Loren J. Rittle  <ljrittle@acm.org>
+
+       bootstrap/3106
+       * strerror.c (sys_nerr): Hide the OS header version.
+       * strsignal.c (sys_nsig): Likewise.
+
+2001-06-10  Richard Henderson  <rth@redhat.com>
+
+       * concat.c: Include string.h.  Fix int vs size_t usage.
+       Simplify the iteration loops.  Use memcpy.
+
+2001-05-16  Matt Kraai  <kraai@alumni.carnegiemellon.edu>
+
+       * partition.c: Fix misspelling of `implementation'.
+
+2001-05-09  Thiemo Seufer  <seufer@csv.ica.uni-stuttgart.de>
+
+       * md5.c (md5_init_ctx): Declare constants as unsigned.
+       (md5_process_block): Likewise.
+
+2001-05-07  Zack Weinberg  <zackw@stanford.edu>
+
+       * cp-demangle.c (demangle_v3_with_details,
+       is_gnu_v3_mangled_ctor, is_gnu_v3_mangled_dtor): Use K+R style
+       function definition.
+       * ternary.c: Use K+R style function definitions.  Use PTR, not
+       void *.  Make arguments constant where possible.
+
+2001-05-07  Mark Mitchell  <mark@codesourcery.com>
+
+       * splay-tree.h (splay_tree_max): New function.
+       (splay_tree_min): Likewise.
+
+2001-04-15  Daniel Berlin  <dan@cgsoftware.com>
+
+       * ternary.c: New file - Ternary search tree implementation.
+
+       * Makefile.in: Add ternary.o, and ternary.c dependencies.
+
+2001-04-03  Zack Weinberg  <zackw@stanford.edu>
+
+       * make-temp-file.c (try): Inline.
+
+2001-02-28  Richard Henderson  <rth@redhat.com>
+
+       * Makefile.in (make-temp-file.o): Depend on config.h.
+
+2001-03-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * memchr.c (memchr): Adjust condition to avoid infinite loop.
+
+2001-03-23  Jakub Jelinek  <jakub@redhat.com>
+
+       * cp-demangle.c (demangle_discriminator): `_0' is discriminator #1,
+       `_' not followed by a digit is invalid.
+
+2001-03-22  Jim Blandy  <jimb@redhat.com>
+
+       * cp-demangle.c (string_list_delete): Use dyn_string_delete
+       instead of free, to free the contents as well as the string
+       structure.
+
+2001-03-21  Zack Weinberg  <zackw@stanford.edu>
+
+       * make-temp-file.c: Always default DIR_SEPARATOR to '/'.
+       Don't default P_tmpdir to anything.  Try /var/tmp before
+       /usr/tmp.
+
+2001-03-20  Zack Weinberg  <zackw@stanford.edu>
+
+       * choose-temp.c: Split off make_temp_file, and the code
+       duplicated between it and choose_temp_base, into...
+       * make-temp-file.c: ... here; new file.
+
+       * Makefile.in (CFILES): Add make-temp-file.c.
+       (REQUIRED_OFILES): Add make-temp-file.o.
+
+2001-03-20  Jim Blandy  <jimb@redhat.com>
+
+       * cp-demangle.c (struct demangling_def): New fields:
+       is_constructor and is_destructor.
+       (demangling_new): Initialize them.
+       (demangle_ctor_dtor_name): Set them, if we detect a constructor
+       or destructor.
+       (demangle_v3_with_details, is_gnu_v3_mangled_ctor,
+       is_gnu_v3_mangled_dtor): New functions.
+
+2001-03-20  Jason Merrill  <jason@redhat.com>
+
+       * cplus-dem.c (main): Skip initial $.
+
+2001-03-15  Michael Meissner  <meissner@redhat.com>
+
+       * hashtab.c (higher_prime_number): Silence warning that 4294967291
+       might be a signed integer under pre-ISO C systems.
+
+2001-03-10  Neil Booth  <neil@daikokuya.demon.co.uk>
+           John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * libiberty/lbasename.c: New file.
+       * libiberty/Makefile.in: Update for lbasename.
+
+2001-03-06  Zack Weinberg  <zackw@stanford.edu>
+
+       * aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New.
+       * configure.in: Replace all alloca logic with a simple use of
+       the above new macro.
+       * config.table: Kill *-*-beos* entry.
+       * config/mh-beos: Delete.
+       * configure, config.in: Regenerate.
+
+       * Makefile.in (ALLOCA, HFILES): Kill.
+       (REQUIRED_OFILES): Add alloca.o.
+       (alloca.o): Depend on libiberty.h.
+       (argv.o): Don't depend on alloca-conf.h.
+       * alloca-conf.h: Delete.
+       * alloca.c: Include libiberty.h.  Kill all #ifdef emacs
+       blocks.  Provide the C alloca unconditionally.  Use PTR where
+       appropriate.  Make i00afunc static.
+       * argv.c: Don't include alloca-conf.h.
+
+2001-03-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>
+
+       * cplus-dem.c (main): Cast enum style to int.
+
+2001-02-16  Loren J. Rittle  <ljrittle@acm.org>
+
+       * cplus-dem.c (main): Initialize style.
+
+2001-02-02  Phil Edwards  <pme@sources.redhat.com>
+
+       * COPYING.LIB:  Update to LGPL 2.1 from the FSF.
+
+2001-01-31  Bryce McKinlay  <bryce@albatross.co.nz>
+
+       Add support for Java demangling under the v3 ABI:
+       * cp-demangle.c (NAMESPACE_SEPARATOR): New define.
+       (struct demangling_def): Add `style' field.
+       (demangling_new): New parameter `style'. Set it in demangling_t.
+       (demangle_prefix): Use NAMESPACE_SEPARATOR.
+       (demangle_type_ptr): Don't emit pointer symbol if doing Java output.
+       (cp_demangle): New parameter `style'. Pass it to demangling_new().
+       (main): Call cp_demangle with extra parameter.
+       (java_demangle_v3): New function.
+       (java_builtin_type_names): New. Table of primitive type names used
+       for Java demangling.
+       (demangle_builtin_type): Look up in java_builtin_type_names if doing
+       Java output.
+       * cplus-dem.c (cplus_demangle): Use java_demangle_v3 to do Java
+       demangling.
+       (long_options): Remove obsolete `java' option.
+       (main): Remove explicit handling of `java' option. Instead, pass style
+       parameter in cplus_demangle flags as gdb does.
+       * testsuite/demangle.expected: Add some Java test cases.
+
+2000-12-29  DJ Delorie  <dj@redhat.com>
+
+       * fnmatch.c: Make the note about the origins of this file more
+       accurate, at least until we can sync with glibc.
+       * getopt.c: Ditto.
+       * getopt1.c: Ditto.
+       * md5.c: Ditto.
+       * obstack.c: Ditto.
+
+2000-12-26  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
+
+       * bsearch.c: New file.
+       * configure.in (funcs): Add bsearch.
+       (AC_CHECK_FUNCS): Likewise.
+       * configure, config.in: Regenerate.
+
+2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
+
+       * safe-ctype.c: #include "ansidecl.h".
+       * strtod.c: Likewise.
+
+2000-12-13  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
+
+       * strtoul.c: Include safe-ctype.h, not ctype.h.
+
+2000-12-07  Zack Weinberg  <zack@wolery.stanford.edu>
+
+       * safe-ctype.c: New file.
+       * Makefile.in (CFILES): Add safe-ctype.c.
+       (REQUIRED_OFILES): Add safe-ctype.o.
+
+       * argv.c: Define ISBLANK and use it, not isspace.
+       * basename.c, cplus-dem.c, fnmatch.c, pexecute.c, strtod.c,
+       strtol.c, strtoul.c: Include safe-ctype.h, not ctype.h.  Use
+       uppercase ctype macros.  Don't test ISUPPER(c)/ISLOWER(c)
+       before calling TOLOWER(c)/TOUPPER(c).
+
+2000-12-07  Mike Stump  <mrs@wrs.com>
+
+       * Makefile.in (distclean): When cleaning, remove testsuite.
+
+2000-12-05  Jason Merrill  <jason@redhat.com>
+
+       * cp-demangle.c (cplus_demangle_v3): Check that it's a v3 mangled
+       name before allocating the dyn_string.
+
+2000-12-04  Jason Merrill  <jason@redhat.com>
+
+       * cp-demangle.c: s/new_abi/v3/.
+       * cplus-dem.c: Likewise.
+       (current_demangling_style): Now auto_demangling.
+       (cplus_demangle): Try v3 demangling if AUTO_DEMANGLING.
+       (main): Use standard symbol chars for auto_demangling.
+
+2000-11-26  Mark Mitchell  <mark@codesourcery.com>
+
+       * hashtab.c (higher_prime_number): Use a table, rather than a
+       seive, to find the next prime.
+
+2000-11-22  H.J. Lu  <hjl@gnu.org>
+
+       * cplus-dem.c (main): Handle gnat_demangling.
+
+2000-11-22  Zack Weinberg  <zack@wolery.stanford.edu>
+
+       * aclocal.m4 (LIB_AC_PROG_CC): Moved here from configure.in.
+       (AC_DEFINE_NOAUTOHEADER): New - work around bug in autoheader.
+       * configure.in: Call AC_C_INLINE and AC_C_CONST.  Use three
+       argument form of AC_DEFINE in dummy definitions block.  Use
+       AC_DEFINE_NOAUTOHEADER for real definitions of things defined
+       in dummy block.  Preload cache variables instead of bypassing
+       tests, where possible.
+       * acconfig.h: Removed.
+
+       * xmalloc.c (xmalloc_failed): New function, does error
+       reporting on failed allocation.
+       (xmalloc, xcalloc, xrealloc): Use it.
+
+2000-11-21  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * cplus-dem.c (cplus_demangle): Fix formatting.
+       (grow_vect): Ditto.
+       (ada_demangle): Ditto.
+       (internal_cplus_demangle): Ditto.
+       (mop_up): Ditto.
+
+2000-11-21  H.J. Lu  <hjl@gnu.org>
+
+       * cplus-dem.c (main): Handle java_demangling.
+
+2000-11-19  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * cplus-dem.c (grow_vect): Prototype.
+       (ada_demangle): Cast the arg of ctype macros to unsigned char.
+
+2000-11-15  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * cplus-dem.c (ada_demangle): Add back ATTRIBUTE_UNUSED for
+       parameter `option'.
+
+2000-11-15  Kenneth Block  <kenneth.block@compaq.com>
+
+       * cplus-dem.c: Eliminate use of DEFUN, it is obsolete and cannot
+       be used in GCC.
+
+2000-11-15  Kenneth Block  <kenneth.block@compaq.com>
+
+       * cplus-dem.c: Add gnat demangler.  Add java to demangle style
+       list.
+
+2000-11-04  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * hashtab.c (htab_expand): Change to return int.  Use calloc or
+       xcalloc depending on htab->return_allocation_failure.  Return zero
+       if calloc fails.
+       (htab_create): Update comment to cover memory allocation.
+       (htab_try_create): New.
+       (htab_find_slot_with_hash): Return NULL if htab_expand fails.
+       Update comment to cover this.
+
+2000-11-03  Hans-Peter Nilsson  <hp@bitrange.com>
+
+       * hashtab.c: Change void * to PTR where necessary.
+       (htab_create, htab_expand): Correct formatting of comment before
+       function.
+
+2000-10-22  Alex Samuel  <samuel@codesourcery.com>
+
+       * cp-demangle.c (string_list_def): Add caret_position and comments.
+       (result_caret_pos): New macro.
+       (result_append_string): Rename to...
+       (result_add_string): ... this, and insert at caret position.
+       Rename throughout.
+       (result_append): Rename to...
+       (result_add): ... this, and insert at caret position.  Rename
+       throughout.
+       (result_append_char): Rename to...
+       (result_add_char): ... this, and insert at caret position.  Rename
+       throughout.
+       (result_append_space): Remove.
+       (string_list_new): Initialize caret position.
+       (result_add_separated_char): Use caret position.
+       (result_get_caret): New funtion.
+       (result_set_caret): Likewise.
+       (result_shift_caret): Likewise.
+       (result_previous_char_is_space): Likewise.
+       (substitution_start): Use caret position.
+       (substitution_add): Likewise.
+       (demangling_new): Initialize caret position.
+       (demangle_encoding): Use caret position.
+       (demanglin_nested_name): Put CV qualifiers after name.
+       (demangle_type_ptr): Use switch statement.  Handle pointers to
+       arrays.  Don't use result_append_space.  Use caret position.
+       (demangle_type): Emit CV qualifiers after underlying type.  Adjust
+       call to demangle_array_type.
+       (demangle_array_type): Add parameter to handle pointers to arrays.
+
+2000-10-01  Mark Mitchell  <mark@codesourcery.com>
+
+       * splay-tree.c (splay_tree_insert): Fix formatting.
+
+2000-09-16  Mark Mitchell  <mark@codesourcery.com>
+
+       * splay-tree.c (splay_tree_predecessor): Fix typo in comment.
+
+2000-09-14  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
+
+       * splay-tree.c: #include <stdio.h>.
+
+2000-09-14  Hans-Peter Nilsson  <hp@axis.com>
+
+       * testsuite/demangle-expected: Add two tests for anonymous
+       namespaces.
+       * cplus-dem.c (gnu_special): Handle anonymous namespaces.
+
+2000-09-10  Mark Mitchell  <mark@codesourcery.com>
+
+       * splay-tree.c (splay_tree_predecessor): New function.
+       (splay_tree_successor): Likewise.
+
+2000-09-10  Hans-Peter Nilsson  <hp@axis.com>
+
+       * testsuite/demangle-expected: Add four tests for type_info
+       mangling.
+       * cplus-dem.c (gnu_special): Use do_type, not demangle_fund_type,
+       for a non-template non-qualified type_info function or node.
+
+2000-09-08  Alex Samuel  <samuel@codesourcery.com>
+
+       * cp-demangle.c: Fix copyright banner.
+
 2000-09-07  Michael Sokolov  <msokolov@ivan.Harhan.ORG>
 
        * md5.c: #include "ansidecl.h".
        (demangle_special_name): Fix comment.
        (demangle_type): Rename variable.
        (demangle_bare_function_type): Check for missing return type and
-       parameter. 
+       parameter.
        (demangle_class_enum_type): Rename parameter.
        (demangle_discriminator): Fix misspelling in comment.
 
 2000-09-04  Alex Samuel  <samuel@codesourcery.com>
 
        * cp-demangle.c (demangle_template_arg): Eat an `E' after an
-       <expression>. 
-       
+       <expression>.
+
 2000-09-04  Alex Samuel  <samuel@codesourcery.com>
 
        * cp-demangle.c (demangle_type_ptr): Increment position past
        (demangle_call_offset): Likewise.
        (demangle_special_name): Update thunk demangling to comply with
        ABI changes.
-       
+
 2000-09-03  Alex Samuel  <samuel@codesourcery.com>
 
        * cp-demangle.c (ANONYMOUS_NAMESPACE_PREFIX): New macro.
        (result_insert): Likewise.
        (result_insert_char): Likewise.
        (substitution_add): Remove last parameter.  Don't store template
-       parm number. 
+       parm number.
        (BFT_NO_RETURN_TYPE): Define as NULL.
        (demangle_encoding): Adjust call to demangle_bare_function_type.
        (demangle_name): Adjust substitution.  Adjust call to
-       substitution_add. 
+       substitution_add.
        (demangle_prefix): Adjust call to substitution_add.
        (demangle_identifier): Handle anonymous namespaces.
        (demangle_operator_name): Change demangling of vendor-extended
        operator to match ABI changes.
        (demangle_type_ptr): Change parameters.  Make recursive.  Handle
-       substitutions here.  
+       substitutions here.
        (demangle_type): Adjust calls to demangle_template_param,
        substitution_add, and demangle_type_ptr.  Fix substitution of
        templated types.
        (demangle_bare_function_type): Likewise.  Adjust insertion point.
        (demangle_template_param): Remove last parameter.
        (demangle_expr_primary): Remove unused variable.  Adjust call to
-       demangle_template_param. 
+       demangle_template_param.
        (is_mangled_char): Accept `$' and `.'.
        * cplus-dem.c (gnu_new_abi_symbol_characters): Add '$' and '.'.
        * dyn-string.c (dyn_string_insert_char): New function.
        (demangle_type): Don't treat r as built-in type.  Remove argument
        to demangle_substitution.  Fix substitution candidate mechanics.
        Handle <template-template-parm>s.  Improve comments.
-       (demangle_template_param): Don't handle template arg lists here. 
+       (demangle_template_param): Don't handle template arg lists here.
        (demangle_substitution): Remove parameter.
        (print_usage): Remove extra fprintf option.
 
        (demangle_type_ptr): Remove duplicate RETURN_IF_ERROR.
        (demangle_type): Check for template args after substitution.
        (demangle_template_args): Use result_open_template_list.
-       
+
 2000-08-02  Zack Weinberg  <zack@wolery.cumb.org>
 
        * pexecute.c:  Don't use vfork.  Initialize 'pid' before retry loop.
 
-2000-07-26  Dave Pitts  <dpitts@cozx.com>      
+2000-07-26  Dave Pitts  <dpitts@cozx.com>
 
        * config/mh-openedition.h: Added -DLE370 definition.
 
 
 2000-07-24  Daniel Berlin <dberlin@redhat.com>
 
-       * cplus-dem.c (demangle_signature): Change if (GNU_DEMANGLING) to 
+       * cplus-dem.c (demangle_signature): Change if (GNU_DEMANGLING) to
        if (AUTO_DEMANGLING || GNU_DEMANGLING)
 
 2000-07-21  Alex Samuel  <samuel@codesourcery.com>
        <class-enum-type>
        (demangle_subtitution): Set template_p for special substitutions.
        (main): Fix typos.
-       
+
 2000-06-27  Alex Samuel  <samuel@codesourcery.com>
 
        * cp-demangle.c (demangle_special_name): Swap base and derived
        (dyn_string_append_cstr): Likewise.
        (dyn_string_append_char): Likewise.
        (dyn_string_substring): Likewise.
-       
+
 2000-06-09  Zack Weinberg  <zack@wolery.cumb.org>
 
        * cp-demangle.c (demangle_operator_name): Add spaces before
@@ -347,7 +970,7 @@ Thu Jun  8 09:25:54 2000  Philippe De Muyter  <phdm@macqel.be>
 2000-06-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * configure.in (ac_libiberty_warn_cflags): Add -pedantic.
-       
+
        * choose-temp.c (try, choose_temp_base, make_temp_file): Constify.
 
        * cp-demangle.c (demangle_char): Change parameter from char to int.
@@ -366,7 +989,7 @@ Thu Jun  8 09:25:54 2000  Philippe De Muyter  <phdm@macqel.be>
        const-ness.
 
        * setenv.c (setenv): Use braces to avoid ambiguous `else'.
-       
+
 2000-06-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * Makefile.in (cp-demangle.o): Depend on $(INCDIR)/demangle.h.
@@ -404,7 +1027,7 @@ Thu Jun  8 09:25:54 2000  Philippe De Muyter  <phdm@macqel.be>
        (main): Use gnu_new_abi_symbol_characters.  * cp-demangle.c: New
        file.
        * cp-demangle.c: New file.
-       
+
 Tue May 30 16:45:25 2000  Andrew Cagney  <cagney@b1.cygnus.com>
 
        * floatformat.c: Add name to each floatformat field.
@@ -428,7 +1051,7 @@ Tue May 30 15:07:52 2000  Jeffrey A Law  (law@cygnus.com)
 2000-05-23  Mike Stump  <mrs@wrs.com>
 
        * Makefile.in (xmalloc.o): Add dependency for config.h, fixes make
-       -j3.
+       -j3.
 
 2000-05-18  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
 
@@ -436,7 +1059,7 @@ Tue May 30 15:07:52 2000  Jeffrey A Law  (law@cygnus.com)
 
 2000-05-16  Horst von Brand <vonbrand@sleipnir.valparaiso.cl>
 
-        * hashtab.c (hash_pointer): Delete low-order bits which are
+       * hashtab.c (hash_pointer): Delete low-order bits which are
        probably zero, also eliminate a warning on alpha.
 
 2000-05-15  David Edelsohn  <edelsohn@gnu.org>
@@ -471,9 +1094,9 @@ Thu May  4 17:14:41 2000  Philippe De Muyter  <phdm@macqel.be>
 2000-04-28  Kenneth Block  <block@zk3.dec.com>
            Jason Merrill  <jason@casey.cygnus.com>
 
-        * cplus-dem.c (libiberty_demanglers): New table for demangle styles.
-        (cplus_demangle_set_style): New function for setting style.
-        (cplus_demangle_name_to_style): New function to translate name.
+       * cplus-dem.c (libiberty_demanglers): New table for demangle styles.
+       (cplus_demangle_set_style): New function for setting style.
+       (cplus_demangle_name_to_style): New function to translate name.
 
 2000-04-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
@@ -525,7 +1148,7 @@ Tue Apr 18 16:23:31 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 2000-04-16  Dave Pitts  <dpitts@cozx.com>
 
        * cplus-dem.c (cplus_demangle_opname): Changed to use islower.
+
 2000-04-05  Richard Henderson  <rth@cygnus.com>
 
        * splay-tree.c (splay_tree_remove): New.
@@ -536,7 +1159,7 @@ Tue Apr 18 16:23:31 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
        codes.
        (htab_find_with_hash): Likewise.
        (htab_find_slot_with_hash): Likewise.
-       
+
 2000-03-29  Zack Weinberg  <zack@wolery.cumb.org>
 
        * hashtab.c (htab_find_with_hash): Avoid calculating hash2
@@ -565,7 +1188,7 @@ Thu Mar 16 01:33:58 2000  Jeffrey A Law  (law@cygnus.com)
        (REQUIRED_OFILES): Add partition.o.
        (partition.o): New rule.
        * partition.c: New file.
-       
+
 2000-03-09  Zack Weinberg  <zack@wolery.cumb.org>
 
        * hashtab.c (htab_create): Set del_f.
@@ -1061,9 +1684,9 @@ Tue Dec 22 09:43:35 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        * choose-temp.c: Include stdlib.h.
 
        * cplus-dem.c (demangle_arm_pt): Remove unused prototype.
-       (snarf_numeric_literal): Constify first parameter.
-       (code_for_qualifier): Avoid a gcc extension, make the parameter an
-       int, not a char.
+       (snarf_numeric_literal): Constify first parameter.
+       (code_for_qualifier): Avoid a gcc extension, make the parameter an
+       int, not a char.
        (demangle_qualifier): Likewise.
        (demangle_signature): Cast the argument of a ctype function to
        unsigned char.
@@ -1076,11 +1699,11 @@ Tue Dec 22 09:43:35 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
        Cast the argument of a ctype function to unsigned char.
 
        * floatformat.c (floatformat_to_double): Add explicit braces to
-       avoid ambiguous `else'.
+       avoid ambiguous `else'.
 
        * fnmatch.c (fnmatch): Change type of variables `c', `c1',
-       `cstart' and `cend' to unsigned char.  Cast the argument of macro
-       `FOLD', which uses ctype functions, to unsigned char.
+       `cstart' and `cend' to unsigned char.  Cast the argument of macro
+       `FOLD', which uses ctype functions, to unsigned char.
 
        * objalloc.c (free): Add prototype.
 
@@ -1091,7 +1714,7 @@ Sun Dec 20 16:03:46 1998  Hans-Peter Nilsson  <hp@axis.se>
 Fri Dec 18 17:50:18 1998  David Taylor  <taylor@texas.cygnus.com>
 
        * cplus-dem.c (demangle_arm_pt): remove declaration -- function
-       doesn't exist.
+       doesn't exist.
        (do_hpacc_template_literal): remove unused variable `i'.
 
 Fri Dec 18 16:11:43 EST 1998  Andrew MacLeod  <amacleod@cygnus.com>
@@ -1135,48 +1758,48 @@ Fri Dec  4 13:51:04 1998  David Taylor   <taylor@texas.cygnus.com>
        * HP aCC demangling support.
        * cplus-dem.c
        (main): Remove default to HP style demangling, set to EDG
-       demangling correctly when -edg specified; set the demangling style
-       when user specifies 'edg'. Set strip_underscore to
-       prepends_underscore, if not HPUXHPPA.  Set
-       current_demangling_style to hp_demangling if HPUXHPPA.  Set
-       current demangling style correctly if the switch is hp.  Read
-       label correctly also in the HP style case.
+       demangling correctly when -edg specified; set the demangling style
+       when user specifies 'edg'. Set strip_underscore to
+       prepends_underscore, if not HPUXHPPA.  Set
+       current_demangling_style to hp_demangling if HPUXHPPA.  Set
+       current demangling style correctly if the switch is hp.  Read
+       label correctly also in the HP style case.
        (work_stuff): add temp_start field; add field for volatile member
-       function.
+       function.
        (arm_pt): handle ARM_DEMANGLING and EDG_DEMANGLING styles; HP
-       style for this case is the same as ARM.
+       style for this case is the same as ARM.
        (demangle_args): handle EDG_DEMANGLING style; support HP style.
        (demangle_arm_hp_template): new function. (It was
-       demangle_arm_pt.); check and set value of temp_start field in
-       multiple places. Also, when ceching for end of template args,
-       check to see if at end of static member of template class.
+       demangle_arm_pt.); check and set value of temp_start field in
+       multiple places. Also, when ceching for end of template args,
+       check to see if at end of static member of template class.
        (demangle_class): new local variable : save_class_name_end Don't
-       include template args in string defining class.
+       include template args in string defining class.
        (demangle_class_name): use demangel_arm_hp_template.
        (demangle_function_name): handle case where demangling style is
-       HP_DEMANGLING and currently point at an 'X' in the mangled name.
-       Handle EDG_DEMANGLING style.  Handle constructor and destructor
-       ops for HP style.
+       HP_DEMANGLING and currently point at an 'X' in the mangled name.
+       Handle EDG_DEMANGLING style.  Handle constructor and destructor
+       ops for HP style.
        (demangle_prefix): handle EDG_DEMANGLING and ARM_DEMANGLING
-       styles.  global destructor and constructor for HP style are same
-       as for ARM style. Same for local variables.
+       styles.  global destructor and constructor for HP style are same
+       as for ARM style. Same for local variables.
        (demangle_qualified): handle EDG_DEMANGLING style.
        (demangle_signature): add case for volatile member function.  For
-       cases '1' - '9' : initialize the temp_start field to -1 and handle
-       the EDG_DEMANGLING style.  for case 'F' : handle EDG_DEMANGLING
-       and AUTO_DEMANGLING styles.  If expecting a function and managed
-       to demangle the funct args, then handle the LUCID_DEMANGLING,
-       ARM_DEMANGLING, and EDG_DEMANGLING styles.  Add case for local
-       class name after "Lnnn_ in HP style case. HP style too needs to
-       forget types.  _nnn is OK for HP style, so don't report failure.
+       cases '1' - '9' : initialize the temp_start field to -1 and handle
+       the EDG_DEMANGLING style.  for case 'F' : handle EDG_DEMANGLING
+       and AUTO_DEMANGLING styles.  If expecting a function and managed
+       to demangle the funct args, then handle the LUCID_DEMANGLING,
+       ARM_DEMANGLING, and EDG_DEMANGLING styles.  Add case for local
+       class name after "Lnnn_ in HP style case. HP style too needs to
+       forget types.  _nnn is OK for HP style, so don't report failure.
        (do_hpacc_template_const_value): new function. Handle template's
-       value param for HP/aCC.
+       value param for HP/aCC.
        (do_hpacc_template_literal): new function.  Handle a template's
-       literal parameter for HP aCC.
+       literal parameter for HP aCC.
        (recursively_demangle): new function
        (snarf_numeric_literal): new function.
        (usage): add 'edg' to the list of demangling styles; add hp switch
-       to message.
+       to message.
 
 Sat Nov 28 17:25:22 1998  Christopher Faylor <cgf@cygnus.com>
 
@@ -1258,13 +1881,13 @@ Mon Nov  2 15:05:33 1998  Geoffrey Noer  <noer@cygnus.com>
 Mon Nov  2 10:22:01 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * pexecute.c: Check HAVE_CONFIG_H, not IN_GCC, when determining
-       whether to include config.h.  Possibly include unistd.h in the
-       !IN_GCC case.  Define VFORK_STRING as a printable function call
-       for error messages (either "vfork" or "fork".)  If HAVE_VFORK_H is
-       defined, include vfork.h.  If VMS is defined, define vfork()
-       appropriately.  Remove vfork check on USG, we're using autoconf.
-       (pexecute): Set `errmsg_fmt' to VFORK_STRING instead of checking
-       locally what string to use.
+       whether to include config.h.  Possibly include unistd.h in the
+       !IN_GCC case.  Define VFORK_STRING as a printable function call
+       for error messages (either "vfork" or "fork".)  If HAVE_VFORK_H is
+       defined, include vfork.h.  If VMS is defined, define vfork()
+       appropriately.  Remove vfork check on USG, we're using autoconf.
+       (pexecute): Set `errmsg_fmt' to VFORK_STRING instead of checking
+       locally what string to use.
 
 1998-10-26  Mark Mitchell  <mark@markmitchell.com>
 
@@ -1370,8 +1993,8 @@ Thu Oct  8 23:42:08 1998  Jeffrey A Law  (law@cygnus.com)
 Mon Sep  7 23:29:01 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        * mkstemp.c: Include config.h even when not IN_GCC.  Wrap header
-       inclusions inside HAVE_*_H macros.  Include ansidecl.h when not
-       IN_GCC.
+       inclusions inside HAVE_*_H macros.  Include ansidecl.h when not
+       IN_GCC.
 
        * vasprintf.c: Include stdarg.h/varargs.h first.
 
@@ -1685,7 +2308,7 @@ Mon May  4 13:00:28 1998  Ian Lance Taylor  <ian@cygnus.com>
        * config/mh-sysv4 (RANLIB, INSTALL): Don't define.
        * config.table: Change config_shell to CONFIG_SHELL, and use
        libiberty_topdir to find move-if-change.
-       (m68k-apollo-bsd*, m68k-apollo-sysv*): Remove.
+       (m68k-apollo-bsd*, m68k-apollo-sysv*): Remove.
        (i[3456]86-ncr-sysv4*, *-*-dgux*, hppa*-hp-bsd*): Remove.
        (*-*-irix*, *-*-m88kbcs*, *-*-sysv*): Remove.
        * Makefile.in (srcdir): Set to @srcdir@.
@@ -1902,7 +2525,7 @@ Wed Sep 24 00:31:59 1997  Felix Lee  <flee@yin.cygnus.com>
 
        * asprintf.c: stdarg.h when ALMOST_STDC
        * config/mh-windows (EXTRA_OFILES): add asprintf.o and
-       strncasecmp.o.
+       strncasecmp.o.
 
 Thu Aug 28 14:27:15 1997  Andrew Cagney  <cagney@b1.cygnus.com>
 
@@ -3549,7 +4172,7 @@ Thu Feb 11 22:20:47 1993  Fred Fish  (fnf@cygnus.com)
        * cplus-dem.c (string_prepends):  Used now, remove #if 0.
        * cplus-dem.c (demangle_signature):  Call demangle_qualified
        with prepending.
-       * cplus_dem.c (gnu_special):  Recognize static data members that
+       * cplus-dem.c (gnu_special):  Recognize static data members that
        use qualified names.
        * cplus-dem.c (demangle_qualified):  Accumulate qualifiers in a
        temporary buffer and the prepend or append them to the result,
@@ -3944,7 +4567,7 @@ Thu Jan 30 22:48:41 1992  Stu Grossman  (grossman at cygnus.com)
 
 Mon Jan 20 18:53:23 1992  Stu Grossman  (grossman at cygnus.com)
 
-       * getopt.c, getopt1.c, ../include/getopt.h:  Get latest versions.
+       * getopt.c, getopt1.c, ../include/getopt.h:  Get latest versions.
 
 Sat Jan 18 16:53:01 1992  Fred Fish  (fnf at cygnus.com)