3 * configure.in: Hardcode that vfork works on VMS host.
4 * configure: Regenerated.
8 * cplus-dem.c (libiberty_demanglers): Add no_demangling case.
9 (cplus_demangle): Support no_demangling.
13 * _doprnt.c: Moved here from gcc/doprint.c. Adjust to build
14 in libiberty context. Fix typo in leading comment.
15 * configure.in: Fix various AC_DEFINEs so autoheader works.
16 If any of vprintf, vsprintf, vfprintf is missing from libc,
17 then AC_REPLACE_FUNCS(_doprnt).
22 * Makefile.in (stamp-h): Depend on Makefile for proper
24 (*-subdir): Depend on config.h for proper serialization.
28 * configure.in: Check for alloca.h (for regex.c and putenv.c).
29 * configure: Regenerate.
30 * config.h: Add HAVE_ALLOCA_H.
34 * regex.c: Check defined(__STDC__) || defined(ALMOST_STDC) ||
35 defined(HAVE_STRINGIZE) to determine whether ISO CPP token pasting
40 * config.in (HAVE_UINTPTR_T): Provide autoconf stub.
41 * configure.in (HAVE_UINTPTR_T): Test for system defining
42 uintptr_t and define HAVE_UINTPTR_T appropriately.
43 * regex.c (uintptr_t): Do not provide a definition if the
46 * regex.c (PREFIX): Provide an alternate definition for
47 non-ANSI/ISO compilers.
48 (ARG_PREFIX): Likewise.
52 * obstack.c (_): Honor the setting of ENABLE_NLS. Otherwise,
53 this code would end up calling gettext even in packages built
55 * getopt.c (_): Likewise.
56 * regex.c (_): Likewise.
60 * configure.in: Cope with missing makeinfo.
61 * configure: Regenerate.
65 * hex.c (hex_init): Provide empty stub.
67 * hex.c (hex_init): Delete.
68 (_hex_value): Const-ify and initialize at compile-time.
72 * Makefile.in ($(TARGETLIB)): Also generate pic/$(TARGETLIB) if
77 * argv.c, asprintf.c, choose-temp.c, concat.c, cplus-dem.c,
78 ffs.c, fnmatch.txh, getruntime.c, make-temp-file.c,
79 mkstemps.c, pexecute.c, random.c, strsignal.c, vasprintf.c:
80 Improve manual formatting.
81 * functions.texi: Regenerate.
85 * Makefile.in (TEXIFILES): Add fnmatch.txh.
87 maint-tool: Add "undoc" tool.
88 * alloca.c, argv.c, asprintf.c, choose-temp.c, concat.c,
89 fdmatch.c, ffs.c, getruntime.c, insque.c, lbasename.c,
90 make-temp-file.c, mkstemps.c, pexecute.c, random.c, spaces.c,
91 strerror.s, strsignal.c, strtol.c, vasprintf.c: Add or update
94 * functions.texi: Regenerate.
98 * bcmp.c, setenv.c: Use "nonzero" instead of "non-zero".
99 * strtod.c: Use "ISO C" instead of "ANSI C".
100 * functions.texi: Regenerate.
104 * alloca.c, clock.c, getcwd.c, getpagesize.c, getpwd.c, index.c,
105 libiberty.texi, memchr.c, putenv.c, rindex.c, strchr.c, strdup.c,
106 strerror.c, strrchr.c, strstr.c, strtod.c, tmpnam.c, vfork.c,
107 xatexit.c, xmalloc.c, xstrerror.c: Improve manual formatting. Fix
108 spelling. Give names to function arguments in documentation. Use
109 (void) prototypes in documentation.
110 * functions.texi: Regenerate.
114 * argv.c (buildargv, tests, main): Const-ify.
115 * cp-demangle.c (operator_code): Likewise.
116 * cplus-dem.c (optable, libiberty_demanglers,
117 cplus_demangle_set_style, cplus_demangle_name_to_style,
118 print_demangler_list): Likewise.
119 * hashtab.c (higher_prime_number): Likewise.
120 * strcasecmp.c (charmap): Likewise.
121 * strerror.c (error_info, strerror, main): Likewise.
122 * strncasecmp.c (charmap): Likewise.
123 * strsignal.c (signal_info): Likewise.
127 * configure: Regenerate.
131 * concat.c: Include stdlib.h.
135 * libiberty.texi: (Top level): Add syncodeindex pg. Add
136 @dircategory and @direntry directives. Add @finalout.
137 (many nodes): Lose the next,prev,up pointers on the @nide line.
138 (Using, Supplemental Functions, Replacement Functions): Fix
140 (Functions): Move around, to allow makeinfo to build the manual
141 without next,prev,up pointers in thye node lines.
142 (Licenses): Fix typos.
144 * index.c, rindex.c, strchr.c, strerror.c, strrchr.c, strstr.c,
145 strtol.c, xatexit.c, xexit.c, xmalloc.c: Fix spelling and markup.
146 * functions.texi: Regenerate.
148 * copying-lib.texi: Lose the next,prev,up pointers on the @node
153 * configure.in: Don't use in-tree texinfo, because libiberty must
154 be built before it. Check for makeinfo version 4 or higher.
155 * functions.texi: Regenerate.
160 * configure.in (MAKEINFO, PERL): Detect these.
161 (--enable-maintainer-mode): Add.
162 * configure: Regenerate.
163 * Makefile.in (MAKEINFO, PERL): Define.
164 (libiberty.info, libiberty.dvi, libiberty.html): New.
165 (CFILES): Add bsearch.c.
166 (CONFIGURED_OFILES): New, list of objects configure might add.
167 (maint-missing, maint-buildall): New, for maintainers only.
168 (clean, mostlyclean): Add info/dvi/html files.
169 * libiberty.texi, copying-lib.texi, obstacks.texi, functions.texi: New.
170 * gather-docs: New, for maintainers.
171 * maint-tool: New, for maintainers.
172 * alloca.c, atexit.c, basename.c, bcmp.c, bcopy.c, bsearch.c,
173 bzero.c, calloc.c, clock.c, configure.in, configure, getcwd.c,
174 getpagesize.c, getpwd.c, index.c, memchr.c, memcmp.c, memcpy.c,
175 memmove.c, memset.c, putenv.c, rename.c, rindex.c, setenv.c,
176 sigsetmask.c, strcasecmp.c, strchr.c, strdup.c, strerror.c,
177 strncasecmp.c, strncmp.c, strrchr.c, strstr.c, strtod.c, strtol.c,
178 tmpnam.c, vfork.c, vprintf.c, waitpid.c, xatexit.c, xexit.c,
179 xmalloc.c, xmemdup.c, xstrdup.c, xstrerror.c: Add or update
184 * concat.c (reconcat): Fix for traditional C.
188 * concat.c (reconcat): New function.
192 * concat.c (vconcat_length, vconcat_copy, concat_length,
193 concat_copy, concat_copy2): New functions.
194 (concat): Use vconcat_length/vconcat_copy.
196 * alloca.c (libiberty_optr, libiberty_nptr, libiberty_len):
201 * asprintf.c: Don't define USE_STDARG. Use VPARAMS, VA_OPEN,
202 VA_FIXEDARG & VA_CLOSE.
204 * vasprintf.c: Check HAVE_STRING_H when including string.h.
205 (checkit): Delete redundant prototype. Add ATTRIBUTE_PRINTF_1.
206 Use VA_OPEN, VA_FIXEDARG & VA_CLOSE. Free allocated string.
210 * concat.c (concat): Use VPARAMS, VA_OPEN, VA_FIXEDARG & VA_CLOSE.
214 * regex.c (truncate_wchar): Use wcrtomb not wctomb.
218 * posix/regex.c [_LIBC] (convert_mbs_to_wcs): Use __mbrtowc
220 [_LIBC]: Use __iswctype instead of iswctype, __wcslen instead of
221 wcslen, and __wcscoll instead of wcscoll.
225 * fibheap.c (fibheap_init, fibnode_init): Remove.
226 (fibheap_new, fibnode_new): Use xcalloc to allocate and
228 (fibheap_insert): Remove check for node allocation failure.
232 * Makefile.in (fibheap.o): Depend on config.h.
233 * fibheap.c: Tidy formatting. Use config.h.` Rearrange some
234 functions for inlining.
238 * configure.in: Need to set HAVE_SYS_ERRLIST and HAVE_SYS_NERR whenever
240 * configure: Regenerate.
244 * floatformat.c (floatformat_m88110_ext): Remove #ifdef
246 (floatformat_ia64_spill_little, floatformat_ia64_quad_little)
247 (floatformat_ia64_spill_big, floatformat_ia64_quad_big)
248 (floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword)
249 (floatformat_m88110_harris_ext): New float formats.
253 * fibheap.c: New file. Fibonacci heap.
255 * Makefile.in (CFILES): Add fibheap.c.
256 (REQUIRED_OFILES): Add fibheap.o.
257 (fibheap.o): Add dependencies for fibheap.o.
261 * configure.in: Always set HAVE_SYS_ERRLIST when targetting cygwin.
262 * configure: Regenerate.
266 * hashtab.c (htab_hash_string): New.
270 * floatformat.c (floatformat_ieee_double_littlebyte_bigword): Fix
275 * regex.c (wcs_regex_compile): Use appropriate string
276 to compare with collating element.
277 Fix the padding for the alignment.
281 * lbasename.c (lbasename): Change function definition to return a
286 * cp-demangle.c (demangle_special_name): "GR" -> "reference temporary
291 * Makefile.in (concat.o): Depend on config.h.
295 * concat.c: Include "config.h".
299 * regex.c: Declare wcs functions only if compiling with
301 Don't use #elif for traditional C.
305 * regex.c: Revamp memory allocation for WCHAR functions to
306 not use too much stack.
310 * regex.c: Declare wcs functions only if compiling with
312 Don't use #elif for traditional C.
316 * Makefile.in (regex.o): Add dependency on config.h.
320 * regex.c (WORDCHAR_P) [WCHAR]: Also return true for the
321 underscore character.
325 * regex.c: Limit string length printed in debug messages to 100
330 * regex.c: Place under LGPL version 2.1.
334 * Makefile.in: Add support for regex code.
339 * Makefile.in: Add ffs.c dependency.
340 * configure.in: Add ffs.c.
345 * concat.c: Include <sys/types.h>.
350 * strerror.c (sys_nerr): Hide the OS header version.
351 * strsignal.c (sys_nsig): Likewise.
355 * concat.c: Include string.h. Fix int vs size_t usage.
356 Simplify the iteration loops. Use memcpy.
360 * partition.c: Fix misspelling of `implementation'.
364 * md5.c (md5_init_ctx): Declare constants as unsigned.
365 (md5_process_block): Likewise.
369 * cp-demangle.c (demangle_v3_with_details,
370 is_gnu_v3_mangled_ctor, is_gnu_v3_mangled_dtor): Use K+R style
372 * ternary.c: Use K+R style function definitions. Use PTR, not
373 void *. Make arguments constant where possible.
377 * splay-tree.h (splay_tree_max): New function.
378 (splay_tree_min): Likewise.
382 * ternary.c: New file - Ternary search tree implementation.
384 * Makefile.in: Add ternary.o, and ternary.c dependencies.
388 * make-temp-file.c (try): Inline.
392 * Makefile.in (make-temp-file.o): Depend on config.h.
396 * memchr.c (memchr): Adjust condition to avoid infinite loop.
400 * cp-demangle.c (demangle_discriminator): `_0' is discriminator #1,
401 `_' not followed by a digit is invalid.
405 * cp-demangle.c (string_list_delete): Use dyn_string_delete
406 instead of free, to free the contents as well as the string
411 * make-temp-file.c: Always default DIR_SEPARATOR to '/'.
412 Don't default P_tmpdir to anything. Try /var/tmp before
417 * choose-temp.c: Split off make_temp_file, and the code
418 duplicated between it and choose_temp_base, into...
419 * make-temp-file.c: ... here; new file.
421 * Makefile.in (CFILES): Add make-temp-file.c.
422 (REQUIRED_OFILES): Add make-temp-file.o.
426 * cp-demangle.c (struct demangling_def): New fields:
427 is_constructor and is_destructor.
428 (demangling_new): Initialize them.
429 (demangle_ctor_dtor_name): Set them, if we detect a constructor
431 (demangle_v3_with_details, is_gnu_v3_mangled_ctor,
432 is_gnu_v3_mangled_dtor): New functions.
436 * cplus-dem.c (main): Skip initial $.
440 * hashtab.c (higher_prime_number): Silence warning that 4294967291
441 might be a signed integer under pre-ISO C systems.
446 * libiberty/lbasename.c: New file.
447 * libiberty/Makefile.in: Update for lbasename.
451 * aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New.
452 * configure.in: Replace all alloca logic with a simple use of
454 * config.table: Kill *-*-beos* entry.
455 * config/mh-beos: Delete.
456 * configure, config.in: Regenerate.
458 * Makefile.in (ALLOCA, HFILES): Kill.
459 (REQUIRED_OFILES): Add alloca.o.
460 (alloca.o): Depend on libiberty.h.
461 (argv.o): Don't depend on alloca-conf.h.
462 * alloca-conf.h: Delete.
463 * alloca.c: Include libiberty.h. Kill all #ifdef emacs
464 blocks. Provide the C alloca unconditionally. Use PTR where
465 appropriate. Make i00afunc static.
466 * argv.c: Don't include alloca-conf.h.
470 * cplus-dem.c (main): Cast enum style to int.
474 * cplus-dem.c (main): Initialize style.
478 * COPYING.LIB: Update to LGPL 2.1 from the FSF.
482 Add support for Java demangling under the v3 ABI:
483 * cp-demangle.c (NAMESPACE_SEPARATOR): New define.
484 (struct demangling_def): Add `style' field.
485 (demangling_new): New parameter `style'. Set it in demangling_t.
486 (demangle_prefix): Use NAMESPACE_SEPARATOR.
487 (demangle_type_ptr): Don't emit pointer symbol if doing Java output.
488 (cp_demangle): New parameter `style'. Pass it to demangling_new().
489 (main): Call cp_demangle with extra parameter.
490 (java_demangle_v3): New function.
491 (java_builtin_type_names): New. Table of primitive type names used
493 (demangle_builtin_type): Look up in java_builtin_type_names if doing
495 * cplus-dem.c (cplus_demangle): Use java_demangle_v3 to do Java
497 (long_options): Remove obsolete `java' option.
498 (main): Remove explicit handling of `java' option. Instead, pass style
499 parameter in cplus_demangle flags as gdb does.
500 * testsuite/demangle.expected: Add some Java test cases.
504 * fnmatch.c: Make the note about the origins of this file more
505 accurate, at least until we can sync with glibc.
513 * bsearch.c: New file.
514 * configure.in (funcs): Add bsearch.
515 (AC_CHECK_FUNCS): Likewise.
516 * configure, config.in: Regenerate.
520 * safe-ctype.c: #include "ansidecl.h".
521 * strtod.c: Likewise.
525 * strtoul.c: Include safe-ctype.h, not ctype.h.
529 * safe-ctype.c: New file.
530 * Makefile.in (CFILES): Add safe-ctype.c.
531 (REQUIRED_OFILES): Add safe-ctype.o.
533 * argv.c: Define ISBLANK and use it, not isspace.
534 * basename.c, cplus-dem.c, fnmatch.c, pexecute.c, strtod.c,
535 strtol.c, strtoul.c: Include safe-ctype.h, not ctype.h. Use
536 uppercase ctype macros. Don't test ISUPPER(c)/ISLOWER(c)
537 before calling TOLOWER(c)/TOUPPER(c).
541 * Makefile.in (distclean): When cleaning, remove testsuite.
545 * cp-demangle.c (cplus_demangle_v3): Check that it's a v3 mangled
546 name before allocating the dyn_string.
550 * cp-demangle.c: s/new_abi/v3/.
551 * cplus-dem.c: Likewise.
552 (current_demangling_style): Now auto_demangling.
553 (cplus_demangle): Try v3 demangling if AUTO_DEMANGLING.
554 (main): Use standard symbol chars for auto_demangling.
558 * hashtab.c (higher_prime_number): Use a table, rather than a
559 seive, to find the next prime.
563 * cplus-dem.c (main): Handle gnat_demangling.
567 * aclocal.m4 (LIB_AC_PROG_CC): Moved here from configure.in.
568 (AC_DEFINE_NOAUTOHEADER): New - work around bug in autoheader.
569 * configure.in: Call AC_C_INLINE and AC_C_CONST. Use three
570 argument form of AC_DEFINE in dummy definitions block. Use
571 AC_DEFINE_NOAUTOHEADER for real definitions of things defined
572 in dummy block. Preload cache variables instead of bypassing
573 tests, where possible.
574 * acconfig.h: Removed.
576 * xmalloc.c (xmalloc_failed): New function, does error
577 reporting on failed allocation.
578 (xmalloc, xcalloc, xrealloc): Use it.
582 * cplus-dem.c (cplus_demangle): Fix formatting.
584 (ada_demangle): Ditto.
585 (internal_cplus_demangle): Ditto.
590 * cplus-dem.c (main): Handle java_demangling.
594 * cplus-dem.c (grow_vect): Prototype.
595 (ada_demangle): Cast the arg of ctype macros to unsigned char.
599 * cplus-dem.c (ada_demangle): Add back ATTRIBUTE_UNUSED for
604 * cplus-dem.c: Eliminate use of DEFUN, it is obsolete and cannot
609 * cplus-dem.c: Add gnat demangler. Add java to demangle style
614 * hashtab.c (htab_expand): Change to return int. Use calloc or
615 xcalloc depending on htab->return_allocation_failure. Return zero
617 (htab_create): Update comment to cover memory allocation.
618 (htab_try_create): New.
619 (htab_find_slot_with_hash): Return NULL if htab_expand fails.
620 Update comment to cover this.
624 * hashtab.c: Change void * to PTR where necessary.
625 (htab_create, htab_expand): Correct formatting of comment before
630 * cp-demangle.c (string_list_def): Add caret_position and comments.
631 (result_caret_pos): New macro.
632 (result_append_string): Rename to...
633 (result_add_string): ... this, and insert at caret position.
635 (result_append): Rename to...
636 (result_add): ... this, and insert at caret position. Rename
638 (result_append_char): Rename to...
639 (result_add_char): ... this, and insert at caret position. Rename
641 (result_append_space): Remove.
642 (string_list_new): Initialize caret position.
643 (result_add_separated_char): Use caret position.
644 (result_get_caret): New funtion.
645 (result_set_caret): Likewise.
646 (result_shift_caret): Likewise.
647 (result_previous_char_is_space): Likewise.
648 (substitution_start): Use caret position.
649 (substitution_add): Likewise.
650 (demangling_new): Initialize caret position.
651 (demangle_encoding): Use caret position.
652 (demanglin_nested_name): Put CV qualifiers after name.
653 (demangle_type_ptr): Use switch statement. Handle pointers to
654 arrays. Don't use result_append_space. Use caret position.
655 (demangle_type): Emit CV qualifiers after underlying type. Adjust
656 call to demangle_array_type.
657 (demangle_array_type): Add parameter to handle pointers to arrays.
661 * splay-tree.c (splay_tree_insert): Fix formatting.
665 * splay-tree.c (splay_tree_predecessor): Fix typo in comment.
669 * splay-tree.c: #include <stdio.h>.
673 * testsuite/demangle-expected: Add two tests for anonymous
675 * cplus-dem.c (gnu_special): Handle anonymous namespaces.
679 * splay-tree.c (splay_tree_predecessor): New function.
680 (splay_tree_successor): Likewise.
684 * testsuite/demangle-expected: Add four tests for type_info
686 * cplus-dem.c (gnu_special): Use do_type, not demangle_fund_type,
687 for a non-template non-qualified type_info function or node.
691 * cp-demangle.c: Fix copyright banner.
695 * md5.c: #include "ansidecl.h".
699 * cp-demangle.c (status_allocation_failed): Rearrange whitespace.
700 (demangle_type): Handle substitution candidates correctly in the
701 face of special substitutions.
705 * cp-demangle.c (demangle_encoding): Rename variable.
706 (demangle_name): Rename parameter. Handle return type
708 (demangle_nested_name): Rename parameter.
709 (demangle_prefix): Likewise. Change return type suppression.
710 (demangle_unqualified_name): Add parameter. Flag constructors and
711 conversion operators.
712 (demangle_special_name): Fix comment.
713 (demangle_type): Rename variable.
714 (demangle_bare_function_type): Check for missing return type and
716 (demangle_class_enum_type): Rename parameter.
717 (demangle_discriminator): Fix misspelling in comment.
721 * configure.in (Cygwin): special case cygwin only when we're
722 building cygwin, not when we're hosting cygwin.
726 * cp-demangle.c (demangle_template_arg): Eat an `E' after an
731 * cp-demangle.c (demangle_type_ptr): Increment position past
732 pointer and reference characters.
736 * cp-demangle.c (demangle_nv_offset): New function.
737 (demangle_v_offset): Likewise.
738 (demangle_call_offset): Likewise.
739 (demangle_special_name): Update thunk demangling to comply with
744 * cp-demangle.c (ANONYMOUS_NAMESPACE_PREFIX): New macro.
745 (substitution_def): Remove template_parm_number.
746 (NOT_TEMPLATE_PARM): Remove.
747 (result_insert_string): New macro.
748 (result_insert): Likewise.
749 (result_insert_char): Likewise.
750 (substitution_add): Remove last parameter. Don't store template
752 (BFT_NO_RETURN_TYPE): Define as NULL.
753 (demangle_encoding): Adjust call to demangle_bare_function_type.
754 (demangle_name): Adjust substitution. Adjust call to
756 (demangle_prefix): Adjust call to substitution_add.
757 (demangle_identifier): Handle anonymous namespaces.
758 (demangle_operator_name): Change demangling of vendor-extended
759 operator to match ABI changes.
760 (demangle_type_ptr): Change parameters. Make recursive. Handle
762 (demangle_type): Adjust calls to demangle_template_param,
763 substitution_add, and demangle_type_ptr. Fix substitution of
765 (demangle_function_type): Change parameter to a pointer.
766 (demangle_bare_function_type): Likewise. Adjust insertion point.
767 (demangle_template_param): Remove last parameter.
768 (demangle_expr_primary): Remove unused variable. Adjust call to
769 demangle_template_param.
770 (is_mangled_char): Accept `$' and `.'.
771 * cplus-dem.c (gnu_new_abi_symbol_characters): Add '$' and '.'.
772 * dyn-string.c (dyn_string_insert_char): New function.
776 * testsuite/demangle-expected: Add nine tests for
777 underscore-after-number followed by five tests for name-signature
782 * Makefile.in (md5.o): Depend on config.h.
786 * Makefile.in (REQUIRED_OFILES): Add md5.o.
792 * cp-demangle.c (demangle_name): Initialize template_p in local
793 name case. Don't re-add substitutions as candidates.
794 (demangle_nested_name): Use <unqualified-name>.
795 (demangle_prefix): Likewise. Don't add template names as
796 substitution candidates twice, or re-add a substitution or the
797 last prefix component.
798 (demangle_local_name): Adjust output format.
802 * cp-demangle.c (result_add_separated_char): Change parameter to
804 (substitution_add): Don't check for duplicates. Check if
805 previously allocated size is zero.
806 (demangle_name): Remove duplicate check for std substitution.
807 Clear template flag appropriately.
808 (demangle_prefix): Remove argument to demangle_substitution.
809 Don't check that template flag is already set.
810 (demangle_operator_name): Add pt operator.
811 (demangle_type): Don't treat r as built-in type. Remove argument
812 to demangle_substitution. Fix substitution candidate mechanics.
813 Handle <template-template-parm>s. Improve comments.
814 (demangle_template_param): Don't handle template arg lists here.
815 (demangle_substitution): Remove parameter.
816 (print_usage): Remove extra fprintf option.
820 * libiberty/random.c (end_ptr): Revert previous change.
824 * libiberty/cplus-dem.c (cplus_demangle_opname, cplus_mangle_opname,
825 demangle_expression, demangle_function_name): Use ARRAY_SIZE.
826 * libiberty/random.c (end_ptr): Likewise.
830 * cp-demangle.c (result_close_template_list): Remove function.
831 (result_add_separated_char): New function.
832 (result_open_template_list): New macro.
833 (result_close_template_list): Likewise.
834 (demangle_prefix): Don't set template_p if the
835 prefix ends with a ctor name.
836 (demangle_type_ptr): Remove duplicate RETURN_IF_ERROR.
837 (demangle_type): Check for template args after substitution.
838 (demangle_template_args): Use result_open_template_list.
842 * pexecute.c: Don't use vfork. Initialize 'pid' before retry loop.
846 * config/mh-openedition.h: Added -DLE370 definition.
850 * pexecute.c (pexecute) [__MSDOS__]: Change __GO32__ to
851 __DJGPP__. Use P_WAIT instead of constant in the spawnv* call.
852 Cast program to 'char *' in errmsg_arg assignment.
853 (PWAIT_ERROR): Define.
854 (pwait): Use PWAIT_ERROR. Adjust DJGPP's status code to conform
855 to DJGPP's WIF* macros.
860 * getcwd.c: Include string.h, stdlib.h for prototypes
862 * Makefile.in (rename.o, waitpid.o): Depend on config.h
863 * rename.c: Include config.h, unistd.h
864 * waitpid.c: Include config.h, sys/wait.h
868 * cplus-dem.c (work_stuff_copy_to_from): New.
869 (delete_non_B_K_work_stuff): New.
870 (delete_work_stuff): New.
871 (mop_up): Break out work_stuff partly destruction to
872 delete_non_B_K_work_stuff.
873 (iterate_demangle_function): New.
874 (demangle_prefix): Call iterate_demangle_function instead of
875 demangle_function_name. Leave handling of name-signature
876 __-delimiters to iterate_demangle_function.
877 (demangle_integral_value): Strip an optional
878 following underscore cautiously. Handle negative numbers.
882 * cplus-dem.c (demangle_signature): Change if (GNU_DEMANGLING) to
883 if (AUTO_DEMANGLING || GNU_DEMANGLING)
887 * cp-demangle.c (demangle_ctor_dtor_name): Remove not-in-charge
888 allocating ctor mangling.
889 (demangle_array_type): Handle empty and non-constant array length.
894 * configure.in (AC_CHECK_HEADERS): Add time.h.
895 (AC_HEADER_TIME): Add check.
896 * configure, config.in: Regenerate.
897 * getruntime.c: Portably #include <sys/time.h> and/or <time.h>.
899 * configure.in (AC_CHECK_HEADERS): Add limits.h.
900 * configure, config.in: Regenerate.
901 * sort.c: Portably #include <limits.h> and/or <sys/param.h>.
902 * strtol.c, strtoul.c: #include "config.h". Portably #include
903 <limits.h> and/or <sys/param.h>.
904 * Makefile.in (strtol.o, strtoul.o): Update dependencies.
906 * aclocal.m4 (libiberty_AC_DECLARE_ERRNO): New macro.
907 * configure.in (libiberty_AC_DECLARE_ERRNO): Add check.
908 * configure, config.in: Regenerate.
909 * pexecute.c, strtol.c, strtoul.c: Declare errno if necessary.
911 * cp-demangle.c, mkstemps.c: #include <sys/types.h>.
915 * Makefile.in (xexit.o): Add dependency for config.h in xexit.c.
916 * (vasprintf.o): Add dependency for config.h in vasprintf.c.
920 * cp-demangle.c (cp_demangle_type): Wrap in IN_LIBGCC2.
922 * setenv.c (setenv): Initialize variable `ep'.
924 * sigsetmask.c (abort): Prototype.
926 * vasprintf.c: Include config.h. Check ANSI_PROTOTYPES, not
927 __STDC__ for stdarg.h include.
928 (int_vasprintf): Prototype.
929 (checkit): Prototype. Use VPARAMS/ANSI_PROTOTYPES/VA_START in
930 definition. Cast `global_total_width' in comparison.
931 (main): Prototype. Return a value.
933 * vfork.c (fork): Prototype.
935 * xexit.c: Include config.h.
939 * cplus-dem.c (demangle_fund_type): Make 'dec' an unsigned int,
940 and print it with %u.
944 * testsuite/regress-demangle (failed test): Show result and
949 * cplus-dem.c (main): fflush() after emitting last char before
954 * cp-demangle.c (demangle_encoding): Accept no substitutions.
955 (demangle_name): Handle <substitution> followed by
956 <unqualified-template-name>.
957 (demangle_type): Follow special substitutions with
959 (demangle_subtitution): Set template_p for special substitutions.
964 * cp-demangle.c (demangle_special_name): Swap base and derived
965 class when demangling construction vtables.
969 * cp-demangle.c: Don't include ctype.h.
970 (IS_DIGIT): New macro.
971 (IS_ALPHA): Likewise. Use IS_DIGIT and IS_ALPHA throughout
972 instead of isdigit and isalpanum.
973 (demangling_def): Make name and next const pointers.
974 (STATUS_ALLOCATION_FAILED): New status code.
975 (dyn_string_append_space): Handle failure in
976 dyn_string_append_char.
977 (int_to_dyn_string): Likewise. Change return value to status_t.
978 (string_list_new): Handle failure of dyn_string_init.
979 (result_close_template_list): Change return type to status_t.
980 Handle failure in dyn_string_append.
981 (result_push): Change return value to status_t. Handle failure in
982 string_list_new. Handle failure of result_push throughout.
983 (substitution_add): Change return value to status_t. Handle
984 dyn_string failures. Handle failure of substitution_add
986 (template_arg_list_new): Return NULL on allocation failure.
987 (result_append_string): Return STATUS_ALLOCATION_FAILED on error.
988 Handle error result throughout.
989 (result_append): Likewise.
990 (result_append_char): Likewise.
991 (result_append_space): Likewise.
992 (demangling_new): Make argument a const pointer. Handle
994 (demangle_template_args): Handle failure in template_arg_list_new
995 and result_close_template_list.
996 (demangle_discriminator): Return if int_to_dyn_string fails.
997 (cp_demangle): Likewise.
998 (cp_demangle_type): New function.
999 (cplus_demangle_new_abi): Don't call dyn_string_delete. Abort on
1000 memory allocation failure.
1002 * dyn-string.c (RETURN_ON_ALLOCATION_FAILURE): Define if
1004 (dyn_string_init): Change return value to int. Handle
1005 RETURN_ON_ALLOCATION_FAILURE case.
1006 (dyn_string_new): Handle RETURN_ON_ALLOCATION_FAILURE case.
1007 (dyn_string_release): Delete the dyn_string.
1008 (dyn_string_resize): Handle RETURN_ON_ALLOCATION_FAILURE case.
1009 (dyn_string_copy): Change return type to int.
1010 (dyn_string_copy_cstr): Likewise.
1011 (dyn_string_prepend): Likewise.
1012 (dyn_string_prepend_cstr): Likewise.
1013 (dyn_string_insert): Likewise.
1014 (dyn_string_insert_cstr): Likewise.
1015 (dyn_string_append): Likewise.
1016 (dyn_string_append_cstr): Likewise.
1017 (dyn_string_append_char): Likewise.
1018 (dyn_string_substring): Likewise.
1022 * cp-demangle.c (demangle_operator_name): Add spaces before
1023 names beginning with a letter: delete, delete[], new, new[],
1025 (demangle_special_name): Handle TF <type> and TJ <type>.
1029 * cp-demangle.c (template_arg_list_new): Revert previous PARAMS patch.
1033 * cp-demangle.c (stdio.h): File included unconditionaly.
1034 (template_arg_list_new): Parameter list is PARAMS ((void)), not ().
1035 * dyn-string.c (stdio.h): File included.
1036 * partition.c (partition_print): No `&' needed to take the address of
1041 * configure.in (ac_libiberty_warn_cflags): Add -pedantic.
1043 * choose-temp.c (try, choose_temp_base, make_temp_file): Constify.
1045 * cp-demangle.c (demangle_char): Change parameter from char to int.
1046 (demangle_expression, demangle_expr_primary): Remove extra
1047 semi-colon in prototype.
1049 * dyn-string.c (dyn_string_append_char): Change parameter from
1052 * memcmp.c (memcmp): Constify.
1054 * mkstemps.c (gcc_uint64_t): Mark GNUC `long long' case with
1057 * partition.c (elem_compare): Prototype. Don't cast away
1060 * setenv.c (setenv): Use braces to avoid ambiguous `else'.
1064 * Makefile.in (cp-demangle.o): Depend on $(INCDIR)/demangle.h.
1066 * cp-demangle.c: Include demangle.h.
1067 (template_arg_list_new): DeANSIfy.
1068 (cp_demangle): Make static and add prototype.
1069 (operator_code, operators): Constify.
1070 (demangle_operator_name): Likewise for variables `p1', `p2' and `p'.
1074 * cp-demangle.c (demangle_prefix): Cast argument to isdigit to
1076 (demangle_unqualified_name): Likewise.
1077 (demangle_number_literally): Likewise.
1078 (demangle_type): Likewise.
1079 (demangle_substitution): Likewise.
1080 (is_mangled_char): Likewise, for isalnum.
1084 * Makefile.in (CFILES): Add cp-demangle.c and dyn-string.c.
1085 (REQUIRED_OFILES): Add cp-demangle.o and dyn-string.o.
1086 (cp-demangle.o): New dependency.
1087 (dyn-string.o): Likewise.
1089 * dyn-string.c: Move here from gcc/dyn-string.c. Add new functions.
1091 * cplus-dem.c (libiberty_demanglers): Add initializer for new-ABI
1093 (cplus_demangle): Call cplus_demangle_new_abi if in new-ABI
1095 (gnu_new_abi_symbol_characters): New function.
1096 (main): Use gnu_new_abi_symbol_characters. * cp-demangle.c: New
1098 * cp-demangle.c: New file.
1102 * floatformat.c: Add name to each floatformat field.
1106 * Makefile.in (objalloc.o): Depend on config.h
1110 * hashtab.c, partition.c, sort.c, xmemdup.c: Include string.h
1112 * pexecute.c, xexit.c: Include stdlib.h if HAVE_STDLIB_H.
1113 * objalloc.c: Include config.h. Include stdlib.h and don't
1114 declare malloc or free if HAVE_STDLIB_H.
1115 * strerror.c, strsignal.c: Include stdlib.h if HAVE_STDLIB_H,
1116 else declare malloc without prototype. Include string.h if
1117 HAVE_STRING_H, else declare memset without prototype. Don't
1122 * Makefile.in (xmalloc.o): Add dependency for config.h, fixes make
1127 * xmalloc.c: Include config.h for HAVE_SBRK definition.
1131 * hashtab.c (hash_pointer): Delete low-order bits which are
1132 probably zero, also eliminate a warning on alpha.
1136 * Makefile.in: Change "pic" to depend on $(PICFLAG), not
1137 on $(enable_shared).
1141 * config.table: Use mh-sparcpic for sparc*-*-*.
1145 * Makefile.in (CFILES): Add strncmp.c.
1146 (NEEDED): Add strncmp.
1150 * cplus-dem.c (cplus_demangle_opname, demangle_function_name):
1151 Cast the arguments to `islower' to `unsigned char'.
1152 (print_demangler_list): Prototype.
1156 * sort.c (UCHAR_MAX): Provide fallback definition.
1160 * Makefile.in (maintainer-clean-subdir): Fix handling of empty
1166 * cplus-dem.c (libiberty_demanglers): New table for demangle styles.
1167 (cplus_demangle_set_style): New function for setting style.
1168 (cplus_demangle_name_to_style): New function to translate name.
1172 * aclocal.m4: New file with new test libiberty_AC_FUNC_STRNCMP.
1174 * configure.in (AC_CHECK_HEADERS): Add sys/mman.h fcntl.h.
1175 (libiberty_AC_FUNC_STRNCMP): Invoke.
1177 * strncmp.c: New file.
1181 * hashtab.c (htab_expand): Add prototype.
1182 (find_empty_slot_for_expand): Likewise.
1186 * hashtab.c (hash_pointer, eq_pointer): Make definition static to
1188 (htab_expand): Cast the return value of xcalloc.
1192 * hashtab.c (hash_pointer): New function.
1193 (eq_pointer): Likewise.
1194 (htab_hash_pointer): New variable.
1195 (htab_eq_pointer): Likewise.
1199 * sort.c (sort_pointers): Fix endianness bugs.
1202 * Makefile.in (CFILES): Add sort.c
1203 (REQUIRED_OFILES): Add sort.o.
1204 (sort.o): New target.
1208 * Makefile.in (*-subdir): Revamp slightly to avoid losing on
1213 * hashtab.c: Various minor cleanups.
1214 (htab_find_slot_with_hash): INSERT is now enum insert_option.
1215 (htab_find_slot): Likewise.
1219 * cplus-dem.c (cplus_demangle_opname): Changed to use islower.
1223 * splay-tree.c (splay_tree_remove): New.
1227 * hashtab.c (find_empty_slot_for_expand): Use hashval_t for hash
1229 (htab_find_with_hash): Likewise.
1230 (htab_find_slot_with_hash): Likewise.
1234 * hashtab.c (htab_find_with_hash): Avoid calculating hash2
1235 unless it will be used. Rearrange loop for better
1237 (higher_prime_number): Add static prototype.
1241 * Makefile.in (partition.o): Depend on config.h
1245 * hashtab.c (find_empty_slot_for_expand): New function.
1246 (htab_expand): Use it instead of htab_find_slot.
1247 (htab_find_with_hash): Renamed from htab_find; now accepts extra
1249 (htab_find_slot_with_hash): Likewise for htab_find_slot.
1250 (htab_find): New wrapper function.
1251 (htab_find_slot): Likewise.
1252 (htab_traverse): Pass slot, not entry, to called function.
1256 * Makefile.in (CFILES): Add partition.c.
1257 (REQUIRED_OFILES): Add partition.o.
1258 (partition.o): New rule.
1259 * partition.c: New file.
1263 * hashtab.c (htab_create): Set del_f.
1264 (htab_delete, htab_empty, htab_remove_elt, htab_clear_slot):
1269 * hashtab.c: Remove debugging variables (all_searches,
1270 all_collisions, all_expansions). Delete
1271 all_hash_table_collisions.
1272 (create_hash_table, delete_hash_table, empty_hash_table,
1273 find_hash_table_entry, remove_element_from_hash_table_entry,
1274 clear_hash_table_slot, traverse_hash_table, hash_table_size,
1275 hash_table_elements_number, hash_table_collisions): Rename to:
1276 htab_create, htab_delete, htab_empty, htab_find_slot,
1277 htab_remove_elt, htab_clear_slot, htab_traverse, htab_size,
1278 htab_elements, htab_collisions.
1279 (htab_find): New function, handles common case where you don't
1280 plan to add or delete an entry.
1281 (htab_expand): Don't create a whole new table, just a new
1283 (htab_find_slot): Simplify logic.
1287 * floatformat.c: Add casts to avoid signed/unsigned warnings.
1288 * pexecute.c: Add ATTRIBUTE_UNUSED as needed on Unix.
1290 * Makefile.in (install_to_libdir): Change $(TARGETLIB).n to
1291 $(TARGETLIB)n so it works on MSDOS.
1292 (install_to_tooldir): Likewise.
1297 * makefile.dos: Remove; obsolete.
1298 * configure.bat: Remove; obsolete.
1302 * splay-tree.c (splay_tree_insert): Add initialization to avoid
1307 * pexecute.c: Conditionally include string.h.
1308 (fix_argv): Handle embedded whitespace in args for Mingw32.
1312 * configure.in (ac_libiberty_warn_cflags): Turn on warnings if
1315 * Makefile.in (COMPILE.c): Add @ac_libiberty_warn_cflags@
1319 * vasprintf.c (int_vasprintf): Don't re-read the format character
1320 as this mishandles strings like '%%s'.
1324 * splay-tree.c (splay_tree_new): Use struct splay_tree_node_s
1325 rather than struct splay_tree_node.
1326 (splay_tree_insert): Use struct splay_tree_s rather than struct
1331 * hashtab.c (sys/types.h): File included.
1335 * strtoul.c, strtol.c, random.c: Remove advertising clause from
1336 BSD license, pursuant with
1338 ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
1342 * hashtab.c: Include stdio.h.
1346 * hashtab.c (traverse_hash_table): Protect prototype with PARAMS.
1350 * xstrdup (sys/types.h): Include this file.
1354 * Makefile.in (SUBDIRS): New macro.
1355 (mostlyclean, clean, distclean, maintainer-clean): Adjust to
1356 avoid multiple subdirectory cleaning.
1357 (*-subdir): Use SUBDIRS.
1359 1999-10-25 Jim Kingdon <http://developer.redhat.com/>
1361 * cplus-dem.c: Move declarations of standard_symbol_characters and
1362 hp_symbol_characters inside #ifdef MAIN to avoid compiler
1367 * hashtab.c (find_hash_table_entry): When returning a
1368 DELETED_ENTRY slot, change it to EMPTY_ENTRY first.
1369 (clear_hash_table_slot): New function which deletes an entry
1370 by its position in the table, not its value.
1371 (traverse_hash_table): New function which calls a hook
1372 function for every live entry in the table.
1376 * cplus-dem.c (INTBUF_SIZE): New macro.
1377 (string_append_template_idx): New function.
1378 (demangle_expression): Likewise.
1379 (demangle_integral_value): Use it.
1380 (demangle_real_value): New function, split out from ...
1381 (demangle_template_value_parm): ... here. Use
1382 string_append_template_idx. Use demangle_real_value.
1383 (demangle_template): Use string_append_template_idx.
1384 (demangle_qualified): Use consume_count_with_underscores.
1385 (get_count): Tweak formatting.
1386 (do_type): Use string_append_template_idx.
1390 * calloc.c: Add a public domain notice.
1394 * setenv.c (sys/types.h, stdio.h): Include those files unconditionaly.
1398 * Makefile.in (CFILES): Add hashtab.c
1399 (REQUIRED_OFILES): Add hashtab.o
1400 (hashtab.o): Add dependencies.
1401 * hashtab.c: New file
1405 * basename.c (DIR_SEPARATOR): New macro.
1406 (DIR_SEPARATOR_2): Likewise.
1407 (HAVE_DOS_BASED_FILESYSTEM): Likewise.
1408 (IS_DIR_SEPARATOR): Likewise.
1409 (main): Handle MSDOS style pathname.
1413 * cplus-dem.c (do_type): Handle pointer to member types whose
1414 enclosing classes have namespace scope.
1418 * config.table: Provide a backup shell for executing move-if-change.
1422 * xmalloc.c (xmalloc): Fix spelling error.
1423 (xcalloc, xrealloc): Likewise.
1427 * cplus-dem.c (fancy_abort, demangle_integral_value,
1428 demangle_arm_hp_template, recursively_demangle,
1429 standard_symbol_characters, hp_symbol_characters, main): Add prototype.
1430 (program_name, program_version, fatal): Constify a char*.
1431 (usage, fatal): Mark with ATTRIBUTE_NORETURN.
1432 (main): Call return, not exit.
1436 * choose-temp.c: Remove obsolete comment about gcc.
1437 (make_temp_file): Constify a char*.
1441 * xmemdup.c: Include sys/types.h.
1445 * xmemdup.c: New xmemdup function.
1446 * Makefile.in, makefile.vms, vmsbuild.com: Use xmemdup.[co].
1450 * config.table: Add openedition target.
1451 * config/mh-openedition: New file.
1455 * pexecute.c (pexecute): Fill in temp_base when needed.
1459 * getpwd.c: Check HAVE_GETCWD before defining it away.
1463 * Makefile.in (CFILES): Add calloc.c and getpwd.c.
1464 (REQUIRED_OFILES): Add getpwd.o.
1465 (getpwd.o): Add target.
1467 * configure.in (AC_PREREQ): Bump to 2.13.
1468 (AC_CHECK_HEADERS): Add check for <sys/stat.h>.
1470 * getpwd.c: New file, moved here from gcc.
1474 * cplus-dem.c (gnu_special): Cast a `size_t' to `long' when
1475 comparing against a signed quantity.
1476 (arm_special): Likewise.
1477 (demangle_fund_type): Likewise.
1478 (do_hpacc_template_const_value): Mark parameter `work' with
1480 (main): Constify variable `valid_symbols'.
1484 * strtoul.c (strtoul): Add parentheses around && within ||.
1488 * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
1489 libdir, libsubdir and tooldir.
1493 * splay-tree.c (splay_tree_insert): Return the new node.
1497 * argv.c: Include stdlib.h and string.h instead of
1498 prototyping directly.
1499 * choose-temp.c: Conditionally include string.h.
1503 * Makefile.in (NEEDED): Add bcmp, bcopy, bzero.
1507 * splay-tree.c (splay_tree_insert): Add initialization to avoid
1512 * Makefile.in (needed-list): Only include stuff we actually need
1517 * configure.in (checkfuncs): Add gettimeofday.
1518 * config.in, configure: Regenerated.
1522 * configure.in (*-*-uwin*): UWIN has sys_{errlist,nerr} even if
1524 * configure: Regenerate.
1528 * Makefile.in (setenv.o): Add config.h dep for setenv.o to fix
1533 * putenv.c: Include ansidecl.h to define `const'.
1534 * setenv.c: Likewise.
1538 * Makefile.in (CFILES): Add putenv.c and setenv.c.
1539 * configure.in (funcs): Add putenv and setenv.
1540 (AC_CHECK_FUNCS): Check for putenv and setenv.
1541 * configure: Rebuilt.
1542 * putenv.c setenv.c: New files.
1544 * getcwd.c (getcwd): If pathname is NULL, then obtain SIZE
1545 bytes of space using malloc.
1549 * cplus-dem.c (demangle_fund_type (near 'I' case)): Don't advance
1550 the *mangled pointer beyond the end of the string. Clean up code to
1551 match prevailing coding style.
1555 * tmpnam.c (L_tmpnam): Fix typo.
1559 * cplus-dem.c (standard_symbol_characters): Renamed from
1560 standard_symbol_alphabet. No longer modify TABLE.
1561 (hp_symbol_characters): Renamed from hp_symbol_alphabet. No longer
1563 (main): Corresponding changes. Use strchr to determine if a
1568 * cplus-dem.c (main): Use table lookup to distinguish identifier
1569 characters from non-identifier characters.
1570 (standard_symbol_alphabet, hp_symbol_alphabet): New functions.
1574 * configure.in (sys/resource.h): Add to AC_CHECK_HEADERS list.
1575 * getruntime.c: Only attempt to include sys/resource.h and
1576 use getrusage if both HAVE_GETRUSAGE and HAVE_SYS_RESOURCE_H
1581 * configure.in (alloca detection): Handle alloca directly for interix.
1582 * configure: Rebuilt.
1586 * choose-temp.c (DIR_SEPARATOR): Use '\\' only for native windows32.
1590 Fix from Dale Hawkins:
1591 * cplus-dem.c (mop_up): Set typevec_size to zero, so it'll be
1592 reallocated properly if we use it again.
1594 * cplus-dem.c (demangle_fund_type): Check for buffer overrun. Be
1595 stricter about syntax. Always null-terminate string.
1599 * configure.in (checkfuncs): Check for sbrk.
1600 * config.in: Rebuilt.
1601 * configure: Likewise.
1602 * xmalloc.c: Use HAVE_SBRK instead of the host specific definitions.
1606 Fix from Marcus Daniels:
1607 * cplus-dem.c (demangle_fund_type): Don't run off the end of the
1608 identifier looking for another underscore.
1612 * pexecute.c: Change all references to __UWIN__ to _UWIN.
1613 * xmalloc.c: Likewise.
1614 (xcalloc): UWIN has sbrk.
1615 (xrealloc): Fix guard macro.
1619 * alloca-conf.h (alloca) [C_ALLOCA]: Don't use Gcc builtin
1621 * clock.c (GNU_HZ): New definition.
1623 * getruntime.c: Likewise.
1625 * config.table: Use mh-beos.
1626 * config/mh-beos: New file.
1630 * cplus-dem.c (demangle_template_value_parm): Handle
1631 pointers-to-members.
1632 (do_type): Handle template parameters as qualifiers.
1636 * cplus-dem.c: Attempt to handle overflows in counts with some
1638 (consume_count): Detect overflows. Return -1 to indicate errors,
1640 (demangle_template_value_parm, demangle_template): Handle change
1641 to consume_count's return convention.
1645 * testsuite/regress-demangle: New file.
1646 * testsuite/demangle-expected: New file.
1648 * Makefile.in (all, check, installcheck, info, install-info,
1649 clean-info, dvi, install, etags, tags, mostlyclean, clean,
1650 distclean, maintainer-clean, realclean): Depend on corresponding
1652 (all-subdir check-subdir installcheck-subdir info-subdir
1653 install-info-subdir clean-info-subdir dvi-subdir
1654 install-info-subdir etags-subdir mostlyclean-subdir clean-subdir
1655 distclean-subdir maintainer-clean-subdir): New target.
1656 * testsuite/Makefile.in: New file.
1657 * configure: Rebuilt.
1658 * configure.in: Create testsuite/Makefile.
1662 * splay-tree.h (splay_tree_compare_pointers): Define.
1666 * splay-tree.c (splay_tree_compare_ints): Define.
1670 * cplus-dem.c (consume_count): If `count' wraps, return 0 and
1671 don't advance input pointer.
1672 (demangle_class_name): If consume_count didn't find a count, do
1673 nothing. Don't bother with `strlen' sanity check; consume_count
1679 * cplus-dem.c (demangle_prefix): Don't grab all the '__' strings
1680 when doing arm or hp style.
1681 (demangle_nested_args): Decr forgetting_types field when done.
1685 * pexecute.c (__CYGWIN32__): Rename to
1687 * xmalloc.c: Likewise.
1689 Changes to support i386-pc-uwin.
1690 * configure.in (*-*-uwin*): Workaround for vfork bug.
1691 * configure: Regenerate.
1692 * pexecute.c (pexecute): Be like standard Unix.
1694 * xmalloc.c (first_break): Define.
1695 (xmalloc_set_program_name): Use.
1700 * config.table: Cleanup and add mh-*pic handling for alpha, arm, powerpc
1704 * config.table: Check cygwin*, not cygwin32*.
1708 * Makefile.in: Change mkstemp -> mkstemps.
1712 * Makefile.in (REQUIRED_OFILES): remove mkstemp.o
1713 * configure.in (funcs): Check for and conditionally add mkstemps to
1714 the list of functions libiberty will provide.
1715 * configure: Rebuilt.
1719 * clock.c (HZ): Define in terms of (ISO C) CLOCKS_PER_SEC on
1720 platforms that don't have HZ.
1721 * getruntime.c (HZ): Likewise.
1725 * Makefile.in (xstrdup.o): Depend on config.h.
1729 * cplus-dem.c (mop_up): Set work->previous_argument to NULL after
1734 * xstrdup.c (xstrdup): Switch from strcpy to memcpy for speed.
1738 * Makefile.in (CFILES): fix typo, splay-tree.c instead of
1743 * configure.in: Require autoconf 2.12.1 or higher.
1747 * random.c (NULL): Don't redefine NULL if it is already defined.
1751 * argv.c (buildargv): Cast the result of alloca in assignment.
1753 * choose-temp.c: Include stdlib.h.
1755 * cplus-dem.c (demangle_arm_pt): Remove unused prototype.
1756 (snarf_numeric_literal): Constify first parameter.
1757 (code_for_qualifier): Avoid a gcc extension, make the parameter an
1759 (demangle_qualifier): Likewise.
1760 (demangle_signature): Cast the argument of a ctype function to
1762 (arm_pt): Add parens around assignment used as truth value.
1763 (demangle_arm_hp_template): Constify variable `args'.
1764 (do_hpacc_template_const_value): Cast the argument of a ctype
1765 function to unsigned char.
1766 (do_hpacc_template_literal): Remove unused variable `i'.
1767 (snarf_numeric_literal): Constify parameter `args'.
1768 Cast the argument of a ctype function to unsigned char.
1770 * floatformat.c (floatformat_to_double): Add explicit braces to
1771 avoid ambiguous `else'.
1773 * fnmatch.c (fnmatch): Change type of variables `c', `c1',
1774 `cstart' and `cend' to unsigned char. Cast the argument of macro
1775 `FOLD', which uses ctype functions, to unsigned char.
1777 * objalloc.c (free): Add prototype.
1781 * Makefile.in (CFILES): Fix typo: splay-tree.c, not splay-tree.o
1785 * cplus-dem.c (demangle_arm_pt): remove declaration -- function
1787 (do_hpacc_template_literal): remove unused variable `i'.
1791 * cplus-dem.c (demangle_fund_type): Process CV and u codes before
1792 bumping the pointer we read from. Also prepend these codes,
1793 as we do in other places.
1797 * cplus-dem.c (demangle_arm_hp_template): Make variable 'args' be
1798 'const char *' in order to match its usage when calling siblings.
1799 (snarf_numeric_literal): Make first arg 'const char **' in order
1804 * choose-temp.c: Don't check IN_GCC anymore.
1806 * floatformat.c (floatformat_from_double): Use `const', not `CONST'.
1807 * memchr.c (memchr): Likewise.
1808 * memcpy.c (memcpy): Likewise.
1809 * memmove.c (memmove): Likewise.
1811 * mkstemp.c: Don't check IN_GCC anymore.
1812 * pexecute.c: Likewise.
1813 * splay-tree.c: Likewise.
1815 * strchr.c (strchr): Use `const', not `CONST'.
1816 * strrchr.c (strrchr): Likewise.
1817 * strtol.c (strtol): Likewise.
1818 * strtoul.c (strtoul): Likewise.
1827 * HP aCC demangling support.
1829 (main): Remove default to HP style demangling, set to EDG
1830 demangling correctly when -edg specified; set the demangling style
1831 when user specifies 'edg'. Set strip_underscore to
1832 prepends_underscore, if not HPUXHPPA. Set
1833 current_demangling_style to hp_demangling if HPUXHPPA. Set
1834 current demangling style correctly if the switch is hp. Read
1835 label correctly also in the HP style case.
1836 (work_stuff): add temp_start field; add field for volatile member
1838 (arm_pt): handle ARM_DEMANGLING and EDG_DEMANGLING styles; HP
1839 style for this case is the same as ARM.
1840 (demangle_args): handle EDG_DEMANGLING style; support HP style.
1841 (demangle_arm_hp_template): new function. (It was
1842 demangle_arm_pt.); check and set value of temp_start field in
1843 multiple places. Also, when ceching for end of template args,
1844 check to see if at end of static member of template class.
1845 (demangle_class): new local variable : save_class_name_end Don't
1846 include template args in string defining class.
1847 (demangle_class_name): use demangel_arm_hp_template.
1848 (demangle_function_name): handle case where demangling style is
1849 HP_DEMANGLING and currently point at an 'X' in the mangled name.
1850 Handle EDG_DEMANGLING style. Handle constructor and destructor
1852 (demangle_prefix): handle EDG_DEMANGLING and ARM_DEMANGLING
1853 styles. global destructor and constructor for HP style are same
1854 as for ARM style. Same for local variables.
1855 (demangle_qualified): handle EDG_DEMANGLING style.
1856 (demangle_signature): add case for volatile member function. For
1857 cases '1' - '9' : initialize the temp_start field to -1 and handle
1858 the EDG_DEMANGLING style. for case 'F' : handle EDG_DEMANGLING
1859 and AUTO_DEMANGLING styles. If expecting a function and managed
1860 to demangle the funct args, then handle the LUCID_DEMANGLING,
1861 ARM_DEMANGLING, and EDG_DEMANGLING styles. Add case for local
1862 class name after "Lnnn_ in HP style case. HP style too needs to
1863 forget types. _nnn is OK for HP style, so don't report failure.
1864 (do_hpacc_template_const_value): new function. Handle template's
1865 value param for HP/aCC.
1866 (do_hpacc_template_literal): new function. Handle a template's
1867 literal parameter for HP aCC.
1868 (recursively_demangle): new function
1869 (snarf_numeric_literal): new function.
1870 (usage): add 'edg' to the list of demangling styles; add hp switch
1875 * pexecute.c: Remove obsolete ifdefed cygwin code.
1879 * choose-temp.c: Always include libiberty.h. Avoid redundancies.
1880 * cplus-dem.c: Likewise. Conform to libiberty.h.
1881 * pexecute.c: Likewise.
1882 * splay-tree.c: Likewise.
1886 * Makefile.in (splay-tree.o): Add config.h dependency.
1890 * configure.in: Use AC_PREREQ(2.12.1).
1894 * cplus-dem.c (demangle_fund_type): Add demangling for C9x types.
1898 * mpw.c (mpw_access): Add missing parens.
1902 * configure.in: Call AC_HEADER_SYS_WAIT.
1904 * pexecute.c: Include sys/wait.h when !IN_GCC.
1908 * pexecute.c: revert back to checking old Cygwin
1909 preprocessor symbol until some time has passed.
1913 * pexecute.c: Reorganize WIN32 case to accomodate Cygwin
1914 since it will now support similar constructs.
1918 * configure.in: Check for calloc.
1920 * calloc.c: New file.
1922 * xmalloc.c (xcalloc): New function.
1926 *cplus-dem.c (demangle_prefix): Use the last "__"
1927 in the mangled name when looking for the signature. This allows
1928 template names to begin with "__".
1932 * cplus-dem.c (type_kind_t): Add tk_reference.
1933 (demangle_template_value_parm): Handle it.
1934 (do_type): Use it for references, instead of tk_pointer.
1936 * cplus-dem.c (demangle_template_value_parm): Use cplus_demangle,
1937 not internal_cplus_demangle.
1941 * choose-temp.c: Don't include gansidecl.h.
1942 * mkstemp.c: Likewise.
1943 * pexecute.c: Likewise.
1947 * configure.in: detect cygwin* instead of cygwin32*
1948 * configure: regenerate
1952 * pexecute.c: Check HAVE_CONFIG_H, not IN_GCC, when determining
1953 whether to include config.h. Possibly include unistd.h in the
1954 !IN_GCC case. Define VFORK_STRING as a printable function call
1955 for error messages (either "vfork" or "fork".) If HAVE_VFORK_H is
1956 defined, include vfork.h. If VMS is defined, define vfork()
1957 appropriately. Remove vfork check on USG, we're using autoconf.
1958 (pexecute): Set `errmsg_fmt' to VFORK_STRING instead of checking
1959 locally what string to use.
1963 * splay-tree.c: Tweak include directives to make sure declarations of
1964 xmalloc and free are available.
1968 * cplus-dem.c (gnu_special): Fix handling of virtual tables in
1969 anonymous namespaces.
1973 * cplus-dem.c (work_stuff): Replace const_type and volatile_type
1975 (TYPE_UNQUALIFIED): New macro.
1976 (TYPE_QUAL_CONST): Likewise.
1977 (TYPE_QUAL_VOLATILE): Likewise.
1978 (TYPE_QUAL_RESTRICT): Likewise.
1979 (code_for_qualifier): New function.
1980 (qualifier_string): Likewise.
1981 (demangle_qualifier): Likewise.
1982 (internal_cplus_demangle): Use them.
1983 (demangle_signature): Likewise.
1984 (demangle_template_value_parm): Likewise.
1985 (do_type): Likewise.
1986 (demangle_fund_type)): Likewise.
1990 * splay-tree.c (splay_tree_foreach_helper): Make definition static
1995 * splay-tree.c: New file.
1996 * Makefile.in (CFILES): Add it.
1997 (REQUIRED_OFILES): Likewise.
1998 (splay-tree.o): Add dependencies.
2002 * cplus-dem.c (demangle_qualified): Fix off-by-one when checking
2007 * choose-temp.c: Prototype mkstemps() when IN_GCC.
2009 * cplus-dem.c (consume_count): Cast argument of ctype macro to
2011 (cplus_demangle_opname): Cast the result of `strlen' to (int) when
2012 comparing against one.
2013 (cplus_mangle_opname): Likewise.
2014 (demangle_integral_value): Cast argument of ctype macro to
2016 (demangle_template_value_parm): Likewise.
2017 (demangle_template): Initialize variable `bindex'. Cast the
2018 result of `strlen' to (int) when comparing against one. Remove
2019 unused variable `start_of_value_parm'.
2020 (demangle_class_name): Cast the result of `strlen' to (int) when
2021 comparing against one.
2022 (demangle_prefix): Cast argument of ctype macro to `unsigned char'.
2023 (gnu_special): Likewise. Cast the result of `strlen' to (int)
2024 when comparing against one.
2025 (demangle_qualified): Cast argument of ctype macro to `unsigned char'.
2026 (get_count): Likewise.
2027 (do_type): Likewise. Cast the result of `strlen' to (int) when
2028 comparing against one.
2029 (demangle_fund_type): Cast argument of ctype macro to `unsigned char'.
2030 (demangle_function_name): Cast the result of `strlen' to (int)
2031 when comparing against one.
2033 * mkstemp.c (mkstemps): Cast variable `len' to (int) when
2034 comparing against one.
2038 * mkstemp.c: Check HAVE_SYS_TIME_H before including sys/time.h
2039 * configure.in (AC_CHECK_HEADERS): Check for sys/time.h too.
2040 * config.in, configure: Rebuilt.
2042 * getopt.c: Check HAVE_STRINGS_H before including strings.h.
2043 * configure.in (AC_CHECK_HEADERS): Check for strings.h too.
2044 * config.in, configure: Rebuilt.
2048 * configure.in: in comment, call AC_EXEEXT instead of AM_EXEEXT
2052 * Makefile.in (cplus-dem.o, obstack.o): Depend upon config.h.
2056 * Merge egcs & devo libiberty.
2060 * cplus-dem.c (demangle_arm_pt): Demangle anonymous namespaces.
2064 * mkstemp.c: Include config.h even when not IN_GCC. Wrap header
2065 inclusions inside HAVE_*_H macros. Include ansidecl.h when not
2068 * vasprintf.c: Include stdarg.h/varargs.h first.
2070 * vprintf.c: Likewise.
2074 * pexecute.c: Updates from gcc. Copy in gcc has been removed. This
2075 is the canonical copy. Define ISSPACE if !IN_GCC.
2076 * alloca.c, vfprintf.c, choose-temp.c, mkstemp.c, getopt.c: Similarly.
2077 * getopt1.c, obstack.c: Similarly.
2078 * Makefile.in: Build mkstemp.o
2082 * configure.in: Include asprintf in list of functions known not
2084 * configure: Rebuild.
2088 * cplus-dem.c (work_stuff): Add dllimported.
2089 (demangled_prefix): Mark symbols imported from PE DLL.
2090 (internal_cplus_demangled): Handle.
2094 * cplus-dem.c (do_type): Fix simple array handling. If we fail,
2099 * cplus-dem.c: Include config.h if it exists. Also, only
2100 prototype malloc/realloc if we can't get stdlib.h.
2104 * configure.in: Switch back to checking --with-target-subdir when
2105 deciding whether to check for newlib, undoing part of July 15
2107 * configure: Rebuild.
2111 * cplus-dem.c (type_kind_t): New type.
2112 (demangle_template_value_parm): Add type_kind_t parameter. Rely
2113 on this paramter, rather than demangling the type again.
2114 (demangle_integral_value): Pass tk_integral.
2115 (demangle_template_: Pass the value returned from do_type.
2116 (do_type): Return a type_kind_t. Pass tk_integral to
2117 demangle_template_value_parm for array bounds.
2118 (demangle_fund_type): Likewise.
2120 Also incorporate from GCC version:
2124 * cplus-dem.c (do_type): Use demangle_template_value_parm for arrays.
2128 * cplus-dem.c (demangle_nested_args): Make function definition
2129 static to match the prototype.
2133 * cplus-dem.c (type_kind_t): New type.
2134 (demangle_template_value_parm): Add type_kind_t parameter. Rely
2135 on this paramter, rather than demangling the type again.
2136 (demangle_integral_value): Pass tk_integral.
2137 (demangle_template_: Pass the value returned from do_type.
2138 (do_type): Return a type_kind_t. Pass tk_integral to
2139 demangle_template_value_parm for array bounds.
2140 (demangle_fund_type): Likewise.
2142 Also incorporate from GCC version:
2146 * cplus-dem.c (do_type): Use demangle_template_value_parm for arrays.
2150 * Makefile.in (ALLOCA): New variable.
2151 ($(TARGETLIB)): Add $(ALLOCA) to library.
2152 (needed-list): Add $(ALLOCA).
2153 ($(ALLOCA)): Depend upon stamp-picdir.
2157 * cplus-dem.c (demangle_nested_args): Make function definition
2158 static to match the prototype.
2162 * configure.in: Check --with-cross-host rather than
2163 --with-target-subdir when deciding whether build uses a cross
2164 compiler, and when deciding where to install the library.
2165 * configure: Rebuild.
2169 * cplus-dem.c (demangle_nested_args): Return a value.
2173 * cplus-dem.c (string): Move definition before work_stuff.
2174 (work_stuff): Add volatile_type, forgetting_types,
2175 previous_argument, and nrepeats fields.
2176 (SCOPE_STRING): New macro.
2177 (demangle_template): Add `remember' parameter. Add comment.
2178 Register the `B' code type here, if remembering. Tidy. Fix crash
2179 on NULL tmpl_argvec. Be consistent with use of tname/trawname.
2180 (demangle_nested_args): New function.
2181 (internal_cplus_demangle): Handle volatile-qualified member
2183 (mop_up): Delete the previous_argument string if present.
2184 (demangle_signature): Tidy. Handle volatile-qualified member
2185 functions. Handle back-references using the `B' code. Use extra
2186 parameter to demangle_template and SCOPE_STRING where appropriate.
2187 (demangle_template_value_parm): Fix thinko; 'B' is not an integral
2189 (demangle_class): Use SCOPE_STRING.
2190 (gnu_special): Pass additional argument to demangle_template.
2192 (demangle_qualified): Save qualified types for later
2193 back-references. Handle constructors and destructors for template
2195 (do_type): Tidy. Use SCOPE_STRING. Pass extra argument to
2196 demangle_template. Use demangled_nested_args. Don't remember
2197 qualified types here; that's now done in demangle_qualified.
2198 Similarly for templates.
2199 (do_arg): Improve commment. Handle 'n' repeat code.
2200 (remember_type): Check forgetting_types.
2201 (demangle_args): Deal with 'n' repeat codes. Tidy.
2205 * config.table: Only use mh-fbsd21 on *-*-freebsd2.2.[012], not on
2210 * configure.in (setobjs): Correct quoting error in cygwin32 case.
2215 * obstack.c: Update to latest FSF version.
2219 * Makefile.in: Add a dependency on stamp-picdir for the
2220 objects, so that we can do a parallel build.
2224 * configure.in (checkfuncs): Add missing "'".
2228 * obstack.c (_obstack_memory_used): Elide this function if we're
2229 on a system with GNU libc.
2233 * Makefile.in (distclean): Remove config.log.
2237 * Makefile.in (distclean): Don't remove alloca-conf.h.
2241 * cplus-dem.c (MBUF_SIZE): Bumped from 512 to 32767.
2245 * cplus-dem.c (do_type): Handle volatile qualification.
2249 * configure.in: Check for unistd.h as well.
2250 * configure: Rebuild.
2251 * config.in: Rebuild.
2252 * getpagesize.c (GNU_OUR_PAGESIZE): Use sysconf only if _SC_PAGESIZE
2253 is defined in unistd.h. Reformat conditional block for easier reading.
2255 * config.table (shared): Default to no if ${enable_shared}
2256 is unset or empty; this logic is used by the toplevel
2257 configure scripts, too.
2261 * config.table: Add line to set enable_shared in the Makefile
2266 * cplus-dem.c (squangle_mop_up): Change return type to void.
2267 (internal_cplus_demangle): Remove unused parameter `options'.
2268 All callers changed.
2269 (cplus_demangle_opname): Remove function wide variable `int i' and
2270 replace with `size_t i' at each location where it is used.
2271 (cplus_mangle_opname): change type of `i' from int to size_t.
2275 * alloca-conf.h: Include config.h. Check HAVE_ALLOCA_H rather
2277 * Makefile.in (argv.o): Depend upon config.h and alloca-conf.h.
2281 * configure.in: Set libiberty_topdir correctly when srcdir is
2282 "." and with_target_subdir is not set.
2283 * configure: Rebuild.
2287 * configure.in: Add *-*-mingw32* case.
2288 * configure: Rebuild.
2292 * config.table: Never use a PIC file for *-*-cygwin32*.
2294 * Makefile.in (config.status): Depend upon config.table.
2296 * configure.in: On a cygwin32 host, always compile random, and
2297 don't test for sys_siglist, strsignal, or psignal.
2298 * configure: Rebuild.
2300 * clock.c: Check HAVE_SYS_PARAM_H rather than NO_SYS_PARAM_H.
2301 * getcwd.c: Likewise.
2302 * getpagesize.c: Likewise.
2303 * getruntime.c: Likewise.
2307 Use autoconf tests rather than the old dummy.c test:
2308 * configure.in: Add AC_ARG_WITH calls for --with-target-subdir and
2309 --with-newlib. Add AC_CONFIG_HEADER. Use AC_REPLACE_FUNCS for
2310 most functions. Add special cases to handle newlib and VxWorks.
2311 Remove target_makefile_frag. Create stamp-h in AC_OUTPUT if
2312 CONFIG_HEADERS is set. Only call config-ml.in in AC_OUTPUT if
2313 CONFIG_FILES is set; set ac_file before calling it.
2314 * config.table (arm-*-riscix*, *-*-cygwin32): Remove.
2315 (*-*-hpux*, *-*-hiux*, *-*-irix4*, *-*-solaris2*): Remove.
2316 (*-*-sysv4*, *-*-go32, *-*-vxworks5*, *-*-vxworks): Remove
2317 (i[3456]-*-mingw32*): Remove.
2318 * Makefile.in (ERRORS_CC, CONFIG_H, NEEDED_LIST): Remove.
2319 (LIBOBJS): New variable.
2320 (HOST_OFILES, DO_ALSO, STAGESTUFF): Remove.
2321 (all): Depend upon needed-list. Don't check RULE1.
2322 (@target_makefile_frag@): Remove.
2323 (COMPILE.c): Include @DEFS@.
2324 (HFILES): Add alloca-conf.h.
2325 (REQUIRED_OFILES): Remove basename.o.
2326 ($(TARGETLIB)): New target.
2327 (stamp-needed, lneeded-list, needed.awk, stamp-config): Remove.
2328 (lconfig.h, needed2.awk, dummy.o, errors): Remove.
2329 (needed-list, config.h): Rewrite.
2330 (RULE1, $(RULE1), RULE2, $(RULE2)): Remove.
2332 (Makefile): Set CONFIG_FILES and CONFIG_HEADERS.
2333 (stamp-h): New target.
2334 (atexit.o, clock.o, getcwd.o, getpagesize.o): New targets.
2335 (basename.o): Don't depend upon config.h.
2336 (getruntime.o): Depend upon config.h.
2337 * atexit.c: Include config.h. Check HAVE_ON_EXIT rather than
2339 * basename.c: Don't include config.h. Don't check NEED_basename.
2340 * clock.c: Include config.h.
2341 * getcwd.c: Likewise.
2342 * getpagesize.c: Likewise.
2343 * getruntime.c: Likewise. Fix checks which set HAVE_GETRUSAGE and
2345 * strerror.c: Change uses of NEED_sys_errlist to
2346 HAVE_SYS_ERRLIST. Likewise for NEED_strerror and HAVE_STRERROR.
2347 * strsignal.c: Likewise for NEED_sys_siglist and HAVE_SYS_SIGLIST,
2348 and for NEED_strsignal and HAVE_STRSIGNAL and for NEED_psignal and
2350 * acconfig.h: New file.
2352 * functions.def: Remove.
2353 * config/mh-cxux7 (HDEFINES): Remove -DHAVE_SYSCONF.
2354 * config/mh-windows (HDEFINES): Remove.
2355 * config/mh-cygwin32: Remove.
2356 * config/mh-go32: Remove.
2357 * config/mh-irix4: Remove.
2358 * config/mh-riscix: Remove.
2359 * config/mh-sysv4: Remove.
2360 * config/mt-mingw32: Remove.
2361 * config/mt-vxworks5: Remove.
2362 * config.in: New file, generated using autoheader.
2363 * configure: Rebuild.
2367 * configure.in: Rewrite to use autoconf.
2368 * configure: Generate using autoconf.
2369 * config/mh-a68bsd: Remove.
2370 * config/mh-apollo68: Remove.
2371 * config/mh-hpbsd: Remove.
2372 * config/mh-ncr3000: Remove.
2373 * config/mh-sysv: Remove.
2374 * config/mh-aix (RANLIB, INSTALL): Don't define.
2375 * config/mh-cxux7 (RANLIB, INSTALL): Don't define.
2376 * config/mh-irix4 (CC, RANLIB, INSTALL): Don't define.
2377 * config/mh-sysv4 (RANLIB, INSTALL): Don't define.
2378 * config.table: Change config_shell to CONFIG_SHELL, and use
2379 libiberty_topdir to find move-if-change.
2380 (m68k-apollo-bsd*, m68k-apollo-sysv*): Remove.
2381 (i[3456]86-ncr-sysv4*, *-*-dgux*, hppa*-hp-bsd*): Remove.
2382 (*-*-irix*, *-*-m88kbcs*, *-*-sysv*): Remove.
2383 * Makefile.in (srcdir): Set to @srcdir@.
2385 (prefix, exec_prefix, bindir, libdir): Set to autoconf variables.
2386 (SHELL, INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Likewise.
2387 (CC, CFLAGS, RANLIB)): Likewise.
2388 (datadir, man*dir, infodir, includedir, MAKEINFO): Remove.
2389 (target_makefile_frag, host_makefile_frag): Add substitutions.
2390 (INSTALL_DEST): Set to @INSTALL_DEST@.
2391 (Makefile): Depend upon config.status. Don't depend upon
2392 $(host_makefile_frag) or $(target_makefile_frag).
2393 (config.status): New target.
2397 * config/mt-sunos4: Remove. Should be handled by --with-headers
2398 and --with-libraries options at top level.
2399 * config.table: Never use mt-sunos4.
2401 * alloca-conf.h: New file, combining alloca-norm.h and
2403 * alloca-norm.h: Remove.
2404 * alloca-botch.h: Remove.
2405 * configure.in: Set shell variables files and links to empty.
2406 * config.table: Don't set shell variable files.
2407 * configure.bat: Don't create alloca-conf.h.
2408 * makefile.vms: Likewise.
2409 * mpw-config.in: Likewise.
2410 * vmsbuild.com: Likewise.
2414 * Makefile.in ($(HOST_OFILES) $(REQUIRED_OFILES)): Remove old
2415 target depending upon config.h.
2416 (alloca.o): Add target depending upon config.h
2417 (basename.o, choose-temp.o, fnmatch.o): Likewise.
2418 (getopt.o, getopt1.o, pexecute.o, strerror.o): Likewise.
2419 (strsignal.o, xstrerror.o): Likewise.
2423 * cplus-dem.c (cplus_demangle_opname): Initialize work.
2427 * cplus-dem.c (demangle_qualified): Replace missing else.
2431 * cplus-dem.c (gnu_special): Fix off-by-one bug when checking the
2432 length in the name of a virtual table.
2436 * cplus-dem.c (struct work stuff): Add field for B and K mangle codes.
2437 (cplus_demangle_opname): Call mop_up_squangle.
2438 (cplus_demangle): Initialize squangle info, then call
2439 internal_cplus_demangle. (Most code moved there as well)
2440 (internal_cplus_demangle): New function, performs most of what use
2441 to be done in cplus_demangle, but is only called with this file.
2442 (squangle_mop_up): New function to clean up B and K code data.
2443 (mop_up): set pointers to NULL after freeing.
2444 (demangle_signature, demangle_template, demangle_class): Add
2445 switch elements to handle K and B codes.
2446 (demangle_prefix, gnu_special, demangle_qualified): Add
2447 code to handle K and B codes.
2448 (do_type, demangle_fund_type): Handle B and K codes.
2449 (remember_Ktype): New function to store K info.
2450 (register_Btype, remember_Btype): New functions for B codes.
2451 (forget_B_and_K_types): New function to destroy B and K info.
2455 * COPYING.LIB, choose-temp.c, cplus-dem.c: Sync with egcs & gcc.
2459 * config.table: Make locating frag files failsafe even for the
2460 special case if configuring and building in srcdir.
2464 * choose-temp.c: Fix handling of sys/file.h to work in libiberty.
2468 * choose-temp.c: Sync with copy in gcc.
2472 * getopt.c: Update to latest FSF version.
2473 * getopt1.c: Likewise.
2477 * cplus-dem.c (gnu_special): Don't get confused by .<digits>
2478 strings that are not actually lengths.
2482 * Makefile.in (FLAGS_TO_PASS): Don't pass PICFLAG.
2483 (.c.o): Check value of enable_shared, not PICFLAG.
2484 (stamp-picdir): Dito.
2488 * config/mh-cygwin32: remove vasprintf.o from EXTRA_OFILES
2489 since it gets built automatically
2493 * config.table (vxworks configs): Default to VxWorks 5.x, as that is
2494 the currently shipping OS.
2498 * vmsbuild.com [REQUIRE_OFILES]: Synchronized with Makefile.in:
2499 Add fnmatch.o and objalloc.o; remove vasprintf.o.
2500 [config.h]: Define NEED_strsignal.
2504 * functions.def: Correct argument types for strerror and
2509 * vasprintf.c (int_vasprintf): Increase buffer size for float/double
2515 Add mingw32 support.
2516 * pexecute.c (pexecute): New function for mingw32. Supports pipes.
2517 (pwait): New function for mingw32.
2519 * config.table (i[3456]86-*-mingw32*): Support for i386-mingw32.
2520 * config/mt-mingw32: New file.
2521 * xmalloc.c (first_break): Not used for mingw32.
2522 (xmalloc_set_program_name): Don't use sbrk on mingw32.
2523 (xmalloc): Likewise.
2524 (xrealloc): Likewise.
2528 * choose-temp.c: Sync with gcc version.
2532 * Makefile.in (install_to_libdir, install_to_tooldir): Add MULTISUBDIR
2533 to all filenames in libdir and tooldir.
2534 (distclean): Do MULTICLEAN before deleting Makefile.
2535 (stamp-needed, stamp-config): Add MULTISRCTOP to
2536 pathname for move-if-change.
2540 * strsignal.c (sys_nsig): Try NSIG and _NSIG.
2544 * alloca-norm.h (alloca, GCC case): Don't redefine alloca if it
2545 was already defined previously.
2549 * Makefile.in (INSTALL): Use ../install-sh, not install.
2553 * Makefile.in (CFILES): Add pexecute.c.
2557 * asprintf.c: Consistently use either stdarg or varargs.
2561 * cplus-dem.c (demangle_signature): Don't look for return types on
2562 constructors. Handle member template constructors.
2566 * README: Fix configuration instructions.
2570 * pexecute.c: Update to current version from /gd/gnu/lib:
2574 * pexecute.c: Use spawn if __CYGWIN32__.
2578 * pexecute.c: Include "config.h" first, as per autoconf manual.
2582 * pexecute.c (fix_argv): New function.
2583 (pexecute): Win32 but not Cygwin32 needs its arguments fixed.
2584 Add underscore to cwait function call.
2588 * cplus-dem.c (demangle_template): Add new parameter. Handle new
2589 template-function mangling.
2590 (consume_count_with_underscores): New function.
2591 (demangle_signature): Handle new name-mangling scheme.
2595 * asprintf.c: stdarg.h when ALMOST_STDC
2596 * config/mh-windows (EXTRA_OFILES): add asprintf.o and
2601 * vasprintf.c (vasprintf): Allow for _BSD_VA_LIST_.
2603 * config.table: Add case for FreeBSD 2.1 and 2.2, needs mh-fbsd21.
2605 * config/mh-fbsd21 (EXTRA_OFILES): Force vasprintf.o
2609 * cplus-dem.c (demangle_fund_type): Change "complex" to "__complex".
2613 * asprintf.c (asprintf): New file.
2614 * Makefile.in (CFILES): Add asprintf.c
2615 * functions.def: Ditto.
2619 * argv.c (dupargv): New function, duplicate an argument vector.
2623 * config/mh-cygwin32: also build random.o
2627 * cplus-dem.c: Add 'extern' to prepends_underscore.
2631 * cplus-dem.c: Various changes to produce Java output when passed
2632 DMGL_JAVA. Thus "::" becomes "." and "JArray<Foo>" becomes "Foo[]".
2633 (main): Support --java and -j flags to set DMGL_JAVA.
2637 * config/mh-go32 (CC, AR, RANLIB): Don't define.
2641 * Makefile.in (REQUIRED_OFILES): Add pexecute.o.
2642 (pexecute.o): New target.
2644 * Makefile.in (stamp-needed): New target, replacing needed-list.
2645 (needed-list): Just depend upon stamp-needed.
2646 (stamp-config): New target, replacing config.h.
2647 (config.h): Just depend upon stamp-config.
2648 (mostlyclean): Remove stamp-*.
2652 * Makefile.in (FLAGS_TO_PASS): pass INSTALL, INSTALL_PROGRAM and
2653 INSTALL_DATA for multilibbed installs
2659 * choose-temp.c (choose_temp_base): Don't dump core if TMPDIR is empty.
2661 * choose-temp.c (try): Insist that temp dir be searchable.
2665 * choose-temp.c (choose_temp_base): On VMS, use proper syntax
2666 for current directory.
2670 * pexecute.c: Remove special cases for cygwin32.
2671 (pwait): Remove local definition of `pid'.
2675 * pexecute.c (vfork): Supply new definition for VMS.
2676 (pwait): Use waitpid instead of wait for VMS.
2680 * cplus-dem.c (do_type): Handle `J'.
2681 (demangle_fund_type): Print "complex" for it.
2685 * configure.in: Don't turn on multilib here.
2689 * obstack.c: move _obstack_memory_used outside of ifdef. Cannot be
2690 elided; needed by gdb and not present in libc.
2694 * Makefile.in (clean): Remove tmpmulti.out.
2698 * floatformat.c (floatformat_ieee_double_littlebyte_bigword):
2699 Add new floatformat, mainly for ARM doubles.
2703 * config.table: Use ${config_shell} with ${moveifchange}. From
2708 * configure.in: Enable multilibing by default.
2709 Update multilib template to read config-ml.in.
2713 * makefile.vms: Add objalloc.
2717 * cplus-dem.c (demangle_it): Add prototype declaration.
2718 (usage, fatal): Likewise.
2720 * xexit.c (_xexit_cleanup): Add prototype.
2722 * strerror.c (init_error_tables): Declare.
2726 * functions.def: Add DEF of vasprintf, and DEFFUNC of strsignal.
2727 * strsignal.c: Only define strsignal if NEED_strsignal.
2728 * Makefile.in (REQUIRED_OFILES): Remove vasprintf.o.
2729 * configure.in: Add NEED_strsignal to xconfig.h. Add vasprintf.o
2731 * config/mh-cygwin32 (HDEFINES): Add -DNEED_strsignal.
2732 (EXTRA_OFILES): Define to vasprintf.o.
2733 * config/mh-windows (HDEFINES): Add -DNEED_strsignal.
2734 (EXTRA_OFILES): Add vasprintf.o.
2735 * config/mt-vxworks5 (vxconfig.h): Define NEED_strsignal.
2736 (vxneeded-list): Add vasprintf.o.
2740 * objalloc.c: Include <stdio.h>.
2744 * objalloc.c: New file.
2745 * Makefile.in (CFILES): Add objalloc.c
2746 (REQUIRED_OFILES): Add objalloc.o.
2747 (objalloc.o): New target.
2751 * obstack.c: Update to current FSF version.
2755 * cplus-dem.c: Add prototypes for all static functions.
2756 (mystrstr): Make static. Make arguments and result const.
2757 (cplus_match): Remove; not used.
2761 * cplus-dem.c (gnu_special): Call demangled_fund_type for other
2766 * spaces.c: Declare malloc and free properly.
2767 * strsignal.c (init_signal_tables): Add prototype.
2768 * xatexit.c (_xexit_cleanup): Add parameter declarations.
2772 * Makefile.in (lneeded-list): If alloca.o is needed, xexit.o is
2773 also required because of xmalloc.o.
2777 * strsignal.c: Unconditionally redefine sys_siglist around the
2778 inclusion of the system header files.
2782 * makefile.vms: Remove 8 bit characters. Update to latest
2787 * strsignal.c: Use NEED_sys_siglist instead of
2789 * config.table: Don't use mh-lynxos.
2790 * config/mh-lynxos: Remove.
2794 * cplus-dem.c: Fix indenting; make identical to the copy
2796 (do_type, case 'M'): Check for a template as well as a class.
2800 * config/mt-vxworks5 (vxneeded-list): Remove sigsetmask.o, since
2801 vxworks 5.[0-3] all have sigsetmask in them; the one provided by
2802 libiberty is incorrect, as well.
2806 * alloca.c (alloca): When compiled with an ANSI/ISO compiler,
2807 alloca takes a size_t argument, not just unsigned.
2811 * cplus-dem.c: Note that this file also lives in GCC.
2815 * alloca.c: Remove include of libiberty.h for hpux.
2816 * argv.c: Replace defs from libiberty.h.
2817 * spaces.c: Put back externs from removed from libiberty.h.
2818 * vasprintf.c: Remove include of libiberty.h for hpux.
2822 * cplus-dem.c: Checking in again; last checkin filed due to sticky tag.
2826 * cplus-dem.c: Revert last two commits due to conflicts with
2827 hpux system headers.
2831 * alloca.c, argv.c, spaces.c, strcasecmp.c, vasprintf.c, vprintf.c:
2832 Revert last commit due to conflicts with hpux system headers.
2836 * cplus-dem.c (x{m,re}alloc): Make declarations compatibile with
2837 libiberty.h when compiled with a standard compiler.
2841 * alloca.c: Include libiberty.h for definition of xmalloc.
2842 Don't redefine NULL.
2843 * argv.c: Move prototypes to libiberty.h.
2844 * cplus-dem.c: Include libiberty.h for definition of xmalloc.
2845 Don't redefine NULL.
2846 Use casts to eliminate compiler warnings.
2847 * spaces.c: Remove prototypes for malloc and free which are
2848 already in libibrty.h.
2849 * strcasecmp.c: Use casts to eliminate compiler warnings.
2850 * vasprintf.c: Include libiberty.h for definition of malloc.
2851 Don't redefine NULL.
2852 * vprintf.c: Include stdarg.h if __STDC__.
2856 * config/mh-windows: Add strcasecmp.o to EXTRA_OFILES.
2860 * mpw.c (mpwify_filename): Rewrite to simplify, and to handle
2861 upward components correctly.
2865 * config.table, config/mh-windows: Add support for building under
2866 MSVC (the Microsoft build environment).
2870 * fnmatch.c: Undef const if not __STDC__.
2874 * fnmatch.c: New file.
2875 * Makefile.in (CFILES): Add fnmatch.c.
2876 (REQUIRED_OFILES): Add fnmatch.o.
2877 (fnmatch.o): New target.
2881 * cplus-dem.c (demangle_template): Fix handling of address args.
2882 (gnu_special): Handle type_info stuff.
2886 * mpw.c (DebugPI): Make settable from the env var DEBUG_PATHNAMES.
2887 (mpwify_filename): Handle "::/" case.
2891 * config/mh-cygwin32: new file (need -DNEED_basename and
2892 -DNEED_sys_siglist for native NT rebuilding)
2893 * config.table (*-*-cygwin32): new entry
2894 * choose-temp.c: bring in sync with gcc (revert Aug 17 change)
2898 * config.table (i[345]86-*-*): Recognize i686 for pentium pro.
2902 * pexecute.c (pexecute) [MPW]: Remove old bogus code that
2903 messed with arguments that included a '/', add escape chars
2904 to double quotes, remove const decl from arg that Mac
2905 compilers don't seem to like.
2909 * pexecute.c: Update test for win32 (&& ! cygwin32).
2910 * choose-temp.c: fix WIN32 preprocessor defines
2914 * mpw-make.sed: Add @DASH_C_FLAG@ and @SEGMENT_FLAG({Default})@
2915 to editing of default makefile rule.
2919 * alloca-norm.h: Include <malloc.h> if _WIN32.
2920 * argv.c: Include non-prototyped decls for malloc and string
2921 functions if ! _WIN32 or if __GNUC__.
2925 * config.h-vms: New file.
2926 * makefile.vms: Use it.
2930 * getopt.c (_getopt_internal): If argc is 0, just return (before
2931 we reference *argv and segfault).
2935 * Makefile.in (distclean): Add multilib.out.
2939 * alloca-norm.h: Change #ifdef sparc to #if defined (sparc) &&
2946 * vmsbuild.com (REQUIRD_OFILES): Add choose-temp.o and xstrdup.o.
2950 * vmsbuild.com: Changes to handle DEFFUNC(on_exit).
2951 (do_ofiles): Allow nonexistent source file in pass 3.
2952 (chk_deffunc): New routine.
2956 * pexecute.c (PEXECUTE_VERBOSE): Define.
2957 (MPW pexecute): Check flags & PEXECUTE_VERBOSE instead of verbose_flag.
2961 * Makefile.in (docdir): Removed.
2965 * Makefile.in (oldincludedir): Removed.
2969 * Makefile.in (datadir): Set to $(prefix)/share.
2973 * cplus-dem.c (demangle_arm_pt): Reindent. Avoid endless loop by
2974 checking for errors from do_type.
2978 * makefile.vms: New file.
2979 * xmalloc.c: If VMS, include <stdlib.h> and <unixlib.h> rather
2980 than declaring malloc, realloc, and sbrk.
2984 * pexecute.c: New file.
2988 * xmalloc.c: Declare sbrk.
2992 * alloca-norm.h: Add SPARCworks cc compatible __builtin_alloca
2997 * xstrerror.c: Include <stdio.h>.
3001 * Makefile.in (CFILES): Add atexit.c.
3005 * choose-temp.c: Include sys/types.h before sys/file.h for sco3.2v5.
3009 * choose-temp.c: Don't #include sys/file.h ifdef NO_SYS_FILE_H.
3011 * config/mt-vxworks5 (HDEFINES): Define NO_SYS_FILE_H.
3015 * Makefile.in (lneeded-list): If alloca.o is needed, so is xmalloc.o.
3016 Reverts Feb 8, 1995 change.
3020 * choose-temp.c: New file.
3021 * Makefile.in (CFILES): Add choose-temp.c.
3022 (REQUIRED_OFILES): Add choose-temp.o.
3026 * floatformat.c (floatformat_to_double): Don't bias exponent when
3027 handling zero's, denorms or NaNs.
3031 * floatformat.c (floatformat_to_double): Fix bugs with handling
3032 numbers with fractions < 32 bits.
3036 * config.table: Permit --enable-shared to specify a list of
3041 * cplus-dem.c (demangle_template): Fix for non-mangled pointer
3046 * configure.in: If srcdir is `.' and with_target_subdir is not
3047 `.', then set MULTISRCTOP before calling config-ml.in.
3051 * mpw.c (mpw_open): Add debugging output option.
3055 * cplus-dem.c (demangle_template): Fix for address-of-extern arguments.
3059 * mpw.c (mpwify_filename): Change 6 to 5 in
3060 strncmp (unixname, "/tmp/", 5).
3064 * cplus-dem.c (demangle_template): Initialize is_bool. Correctly
3065 handle 0 as a pointer value parameter.
3069 * Makefile.in (all): Depend upon required-list.
3070 (required-list): New target.
3071 (clean): Remove required-list.
3076 * config.table (i386-*-win32): Deleted.
3077 * config/mh-i386win32: Deleted.
3081 * cplus-dem.c (cplus_demangle_opname): Change opname parameter to
3083 (cplus_mangle_opname): Change return type and opname parameter to
3084 const char *. Don't cast return value.
3088 * mpw.c: Include Timer.h, in order to get m68k Microseconds trap
3093 * obstack.c: Update copyright to 1996.
3094 (_obstack_memory_used): Define new function. Called via
3095 obstack_memory_used macro.
3099 * xstrdup.c: New file.
3100 * Makefile.in (CFILES): Add xstrdup.c.
3101 (REQUIRED_OFILES): Add xstrdup.o.
3102 (xstrdup.o): New target.
3106 * atexit.c: New stub to provide atexit on systems that have
3107 on_exit, like SunOS 4.1.x systems.
3108 * functions.def (on_exit, atexit): Ditto.
3112 * mpw.c (mpw_abort): Remove decl.
3113 (mpw_access): Move debugging printf.
3117 * config.table: Consistently use ${host} rather than ${xhost} or
3119 * configure.in: Don't bother to set ${xhost} before calling
3124 * Makefile.in (.c.o): Use test instead of the left bracket, to
3125 avoid problems with some versions of make.
3129 * mpw-make.sed: Fix INCDIR edit to work with Nov 14 change.
3133 * config/mh-hpux: Remove. It was only used to define EXTRA_OFILES,
3134 which was set to just alloca.o, which is now automatically marked
3135 as needed by the autoconfiguration process.
3139 * config.table: Check ${with_cross_host} rather than comparing
3140 ${host} and ${target}.
3144 * configure.in: If with_target_subdir is empty, set xhost to
3145 ${host} rather than ${target} before calling config.table.
3149 * Makefile.in (MULTITOP): Deleted.
3150 (MULTISRCTOP, MULTIBUILDTOP): New.
3151 (FLAGS_TO_PASS): Delete INCDIR.
3152 (INCDIR): Add $(MULTISRCTOP).
3153 (install_to_libdir): Add $(MULTISUBDIR). Call $(MULTIDO).
3154 * configure.in: Delete call to cfg-ml-com.in. Call config-ml.in
3155 instead of cfg-ml-pos.in.
3156 (cross-compile check): Change to test for with_target_subdir.
3157 (EXTRA_LINKS): Delete.
3161 * mpw-make.sed: Add getpagesize.c.o to needed-list.
3162 * mpw.c [USE_MW_HEADERS]: Conditionalize compiling of
3163 functions that are supplied by Metrowerks libraries.
3164 (fstat): Clean up descriptor->pointer conversion code.
3165 (InstallConsole, etc): Empty definitions, for when linking
3170 * Makefile.in (FLAGS_TO_PASS): Also pass PICFLAGS.
3171 (.c.o): Stylistic change.
3175 * strtol.c, strtoul.c: Don't include <stdlib.h>. From
3180 * configure.in: Correct sed call.
3184 * configure.in: Clean up / simplify for native.
3186 * configure.in: Merge in stuff from ../xiberty/configure.in.
3187 * Makefile.in (CC): Add definition (so it can be overrridden
3192 * mpw-make.sed: Leave strerror.c.o in standard list of functions.
3193 * mpw.c (R_OK, ENOENT, EACCESS, ENOSYS): Remove.
3194 (link): Remove useless definition with error return.
3195 (last_microseconds, warn_if_spin_delay, record_for_spin_delay):
3196 Use UnsignedWide type for microsecond counts.
3200 * memcmp.c (memcmp): Argument types are const void *, not void
3203 * strncasecmp.c (strncasecmp): Include ansidecl.h/stdarg.h, not
3205 * strcasecmp.c (strcasecmp): Ditto.
3209 * Makefile.in (BISON): Remove macro.
3213 * Makefile.in (HFILES): Add default empty definition.
3214 * mpw-config.in (config.h): Only update if changed.
3215 * mpw-make.in: Remove.
3216 * mpw-make.sed: New file, edits Makefile.in into MPW makefile.
3217 * mpw.c: Remove semi-clone of strerror code.
3218 (sys_nerr, sys_errlist): Define here.
3219 (Microseconds): Only define as A-line trap if m68k Mac.
3223 * Makefile.in (maintainer-clean): New synonym for distclean.
3227 * config.table: For host, generalize rs6000-ibm-aix*
3228 to *-ibm-aix* so we also include powerpc.
3234 * xstrerror.c: New file.
3235 * Makefile.in, vmsbuild.com: Compile it.
3239 * config.table (i386-*-win32): New.
3243 * Makefile.in (MULTITOP): New variable.
3244 (MULTIDIRS, MULTISUBDIR, MULTIDO, MULTICLEAN): Likewise.
3245 (all): Add multilib support.
3246 (install_to_tooldir, *clean): Likewise.
3250 * makefile.dos (OBJS): Add hex.o. From DJ Delorie.
3254 * vmsbuild.com: create "new-lib.olb", build libiberty under that
3255 name, and then make it become "liberty.olb" when done, so that an
3256 incomplete build attempt never leaves behind something which looks
3257 like a complete library.
3261 * config/mh-i386pe: New file for PE hosts.
3262 * config.table: Understand PE hosts.
3266 * cplus-dem.c: Update from gcc.
3268 * argv.c, dummy.c: If __STDC__, #include "alloca-conf.h" after
3270 * alloca-norm.h: If __STDC__, declare alloca with its parameter.
3274 * mpw-make.in (ALL_CFLAGS): Define NEED_basename.
3275 * mpw.c: Only test DebugPI once whenever printing debug info.
3276 (mpwify_filename): If filename is /tmp/foo, change it into :_foo,
3277 also fix to not write on input filename buffer.
3278 (mpw_access): Use stat() instead of open(), works for directories
3283 * Makefile.in: Massage broken shells that require 'else true'.
3287 * alloca-norm.h: Declare alloca as type "PTR" to match functions.def.
3288 Declare __builtin_alloca in the sparc case, as argv.c did.
3289 * argv.c: Replace inline version of alloca-norm.h at start of file with
3290 a #include of alloca-conf.h. Precede it with an include of ansidecl.h
3291 because alloca-norm.h needs to declare alloca as "PTR".
3295 * win32.c: New file.
3299 * dummy.c: #include "alloca-conf.h".
3303 * Makefile.in (mostlyclean): Remove stamp-picdir.
3308 * config.table (frags): Use toplevel pic frags.
3310 * Makefile.in (PICFLAG): New macro.
3311 (all): Depend on stamp-picdir.
3312 (needed-list): Ditto.
3313 (.c.o): Also build pic object.
3314 (stamp-picdir): New rule.
3315 (mostlyclean): Remove pic.
3316 (clean): Remove stamp-picdir.
3320 * vmsbuild.com (config.h): Add `#define NEED_basename'.
3324 * clock.c, getopt.c, strtod.c, vsprintf.c: Change from using LGPL
3325 to libio-style copyright.
3326 * getpagesize.c: Remove FSF copyright.
3330 Added improved VMS support from Pat Rankin:
3334 * vmsbuild.com: new file.
3336 * getpagesize.c (getpagesize): implement for VMS;
3337 * strerror.c (strerror, strerrno, strtoerrno): add rudimentary
3338 support for EVMSERR.
3344 * floatformat.c (floatformat_arm_ext): Define.
3348 * basename.c, bcmp.c, getcwd.c, insque.c, rename.c, sigsetmask.c,
3349 strerror.c, strsignal.c: Remove FSF copyright.
3350 * sigsetmask.c: #include <sys/types.h> - seems to be needed by ISC.
3354 * bcopy.c, bzero.c, memcmp.c, memcpy.c, memset.c, strchr.c,
3355 strrchr.c, strstr.c, vfork.c: Remove FSF Copyright, because this
3356 might contaminate libstdc++ with the LGPL. (OK'd by RMS 11 Oct 94.)
3357 * strchr.c, strrchr.c: Add cast to suppress const warning.
3361 * cplus-dem.c: Use const instead of CONST. Don't include
3362 ansidecl.h directly.
3366 * cplus-dem.c: Don't include libiberty.h. Do declare xmalloc and
3368 (-DMAIN): Don't rely on an externally-defined version number;
3369 instead, require the version number to be defined as a
3370 preprocessor macro. Handle the RS/6000 leading dot. Define
3371 xmalloc, xrealloc and fatal. Don't strip a leading underscore
3372 if we couldn't demangle the word.
3376 (Old mpw.c change descriptions retained for informational value.)
3377 * mpw.c (warning_threshold): Default to .4 sec.
3378 (overflow_count, current_progress): New globals.
3379 (warn_if_spin_delay): Include current progress type,
3380 such as program name, in message.
3381 (mpw_start_progress): Set current_progress variable from arg.
3382 (mpw_end_progress): Report spin delays by power-of-two-size
3383 buckets instead of constant-size buckets.
3385 * mpw.c: Clean up formatting, types, returns, etc.
3387 (mpw_fread, mpw_fwrite): Define.
3388 (sleep): Define correctly.
3390 * mpw.c: New code to implement cursor spinning support.
3391 (umask): New function.
3392 (mpw_fopen, mpw_fseek, stat, fstat): Call PROGRESS.
3394 * mpw.c (mpw_basename, mpw_mixed_basename): New functions, find
3395 basenames for MPW and MPW/Unix filenames.
3396 (mpw_special_init): New function, calls Macsbug if desired.
3398 * mpw.c: Add GPL notice.
3399 (mpwify_filename): Add more transformations.
3400 (mpw_fopen): Call mpwify_filename on file names.
3402 (chdir, getcwd): Add simple definitions.
3404 * mpw.c: Random cleanups, remove unused code bits.
3405 Added copy of strerror.c for gcc's use.
3406 (stat, fstat, _stat): New versions based on Guido van Rossum code.
3408 * mpw.c (mpw_fseek): Make it work correctly when doing SEEK_CUR.
3410 * mpw.c (stat): Remove hack definition, get from sys/stat.h.
3411 (fork, vfork, etc): Print error messages if called.
3412 (getrusage, sbrk, environ, isatty, link, utime, mkdir, rmdir,
3413 rename, chown): Define.
3415 * mpw-config.in: New file, MPW version of configure.in.
3416 * mpw-make.in: New file, MPW version of Makefile.in.
3417 * mpw.c: New file, MPW compatibility routines.
3421 * basename.c: Include config.h before checking for NEED_basename.
3425 * functions.def: Add DEFFUNC for basename.
3427 * basename.c: Only define basename if NEED_basename.
3431 * config.table: Fix --enable-shared logic for native builds.
3435 * cplus-dem.c (demangle_template): Demangle bool literals properly.
3439 * strtol.c strtoul.c: Replace these with less buggy versions from
3440 NetBSD. (strtoul in particular couldn't handle base 16.)
3444 * config/mt-vxworks5 (HDEFINES): Define NO_SYS_PARAM_H.
3446 * clock.c: If NO_SYS_PARAM_H is defined, don't include
3448 * getcwd.c, getpagesize.c, getruntime.c: Likewise.
3452 * getruntime.c (get_run_time): Don't assume that CLOCKS_PER_SEC is
3453 a number; ANSI appears to permit any expression, including a
3456 * config.table (*-*-vxworks5*): Use mt-vxworks5 when configuring
3458 * config/mt-vxworks5: New file.
3462 * basename.c (basename): Change argument to be const.
3466 * Makefile.in (lneeded-list): Don't worry about xmalloc.
3470 * Makefile.in (distclean): Delete xhost-mkfrag.
3474 * Makefile.in (lneeded-list): If alloca.o is needed, so is xmalloc.o.
3479 * Makefile.in (REQUIRED_OFILES, CFILES): List it.
3480 (hex.o): Add dependencies.
3482 * cplus-dem.c (demangle_prefix): For GNU style constructor and
3483 destructor names, try demangling the remainder of the string.
3487 * vasprintf.c (int_vasprintf): New static function.
3488 (vasprintf): Use int_vasprintf. Removes assumption that va_list
3489 is assignment compatible.
3493 * Makefile.in (LIBCFLAGS): New variable.
3494 (FLAGS_TO_PASS): Pass it.
3499 * getopt.c, getopt1.c: Do compile these functions under Linux,
3500 since many native versions are based on glibc but are buggy.
3504 * vasprintf.c: Make 'format' arg be const, to avoid a mismatch
3505 with prototype in GNU libc. Support stdarg.h as well as varargs.h.
3509 * Makefile.in (REQUIRED_OFILES): Add vasprintf.o.
3510 * functions.def: Remove vasprintf.
3514 * xmalloc.c (first_break): New static variable.
3515 (xmalloc_set_program_name): Record sbrk (0) in first_break.
3516 (xmalloc): If memory allocation fails, try to report how much
3517 memory was allocated by the program up to this point.
3518 (xrealloc): Likewise.
3522 * Makefile.in (ERRORS_CC): New variable, defaulted to $(CC). Use it
3524 * config.table: Add host RISCiX Makefile frag.
3525 * config/mh-riscix: New file.
3529 * Makefile.in (FLAGS_TO_PASS): Define.
3530 ($(RULE1)): Use $(FLAGS_TO_PASS).
3534 * vasprintf.c: Include <string.h>.
3535 (vasprintf): Add casts to void for va_arg to avoid gcc warnings.
3536 * xatexit.c: Declare malloc.
3540 * cplus-dem.c (demangle_args): Fix a bug in previous patch (the
3545 * cplus-dem.c (demangle args): Handle ARM repeat encoding where
3546 the type index is greater than 9.
3550 * cplus-dem.c (demangle_qualified): accept optional '_' between
3551 qualified name. This is baecause the template name may end with
3552 numeric and can mixed up with the length of next qualified name.
3556 * config/mt-sunos4: Use our standard location for cross-includes
3557 and cross-libs when the target is also a "host" environment (ie no
3558 newlib; includes and such don't belong to us). This is specific
3559 to the Cygnus Support environment.
3563 * cplus-dem.c (demangle_template): demangle as xxx<'Q'> not
3568 * cplus-dem.c (main): flush stdout to make pipe work.
3572 * config.table (*-*-cxux7*): Recognize.
3573 * floatformat.c (floatformat_m88110_ext) [HARRIS_FLOAT_FORMAT]:
3574 Harris-specific float format.
3575 * config/mh-cxux7: New file.
3579 * cplus-dem.c (demangle_template): Make sure that the result of
3580 consume_count doesn't index beyond the end of the string.
3584 * cplus-dem.c (gnu_special): Handle vtable mangling of gcc-2.4.5 and
3585 earlier. Improve test for new vtable mangling. Change output back
3590 * obstack.c: Always compile this code, even if using the GNU
3591 library. Avoids problems with relatively recent binary
3596 * cplus-dem.c: Include libiberty.h.
3597 (xmalloc, xrealloc, free): Don't declare.
3598 (strstr): Don't declare parameters.
3599 (xmalloc, xrealloc): Don't define.
3600 (long_options): Add no-strip-underscores.
3601 (main): Call xmalloc_set_program_name. Pass n in short options to
3602 getopt_long. Handle option 'n' to not strip underscores.
3603 (usage): Mention -n and --no-strip-underscores.
3607 * cplus-dem.c (demangle_template): Separate consecutive >'s with a
3609 (gnu_special): Demangle template and qualified names in a vtable name.
3613 From gas-2.3 and binutils-2.4 net releases:
3617 * makefile.dos: [new] Makefile for dos/go32
3618 * configure.bat: update for latest files
3619 * msdos.c: remove some functions now in libc.a
3623 * cplus-dem.c (gnu_special): Recognize thunks, as well as
3624 the new naming style for vtables (when -fvtable-thunks).
3628 * Makefile.in (XTRAFLAGS): Don't define.
3629 (.c.o, dummy.o): Don't use XTRAFLAGS.
3630 ($(RULE1)): Don't pass XTRAFLAGS down in recursive call.
3634 * vasprintf.c: New file.
3635 * Makefile.in, functions.def: Add it.
3639 * cplus-dem.c (demangle_fund_type): Grok bool.
3643 * config.table: Add go32
3644 * config/mh-go32: New template.
3648 * config.table, config/mt-sunos4: config for when sun4 is cross target.
3652 * getopt.c [not __GNU_LIBRARY__] [__GCC__] [not __STDC__]:
3653 Declare strlen to return int. Don't include stddef.h.
3657 * getopt.c: Delete use of IN_GCC to control whether
3658 stddef.h or gstddef.h is included.
3662 * cplus-dem.c (demangle_signature): Fix a bug in template function
3667 * cplus-dem.c (demangle_signature): Fix template function with arm
3668 style argument type number, Tn.
3672 * cplus-dem.c (optable): Add new[] and delete[].
3676 * argv.c (buildargv): Don't produce empty argument just because
3677 there is trailing whitespace.
3681 * cplus-dem.c (demangle_template): fix 'Q' qualified name bug.
3682 Handle 'p' same as 'P'.
3683 * cplus-dem.c (do_type): Handle 'p' same as 'P'.
3687 * floatformat.c (get_field, put_field): Fix off by one error in
3692 * floatformat.c (floatformat_from_double): Pass unsigned char *,
3693 not char *, to put_field.
3697 * memmove.c: Re-wrote; placed in public domain.
3701 * cplus-dem.c (demangle_prefix): If ARM demangling, don't treat
3702 __Q* as a constructor.
3706 * ieee-float.c: Removed; no longer used.
3707 * Makefile.in: Changed accordingly.
3711 * floatformat.c (get_field): Removed unused local variable i.
3712 (put_field): Removed unused local variable i.
3716 * floatformat.c: New file, intended to replace ieee-float.c.
3717 * Makefile.in: Change accordingly.
3721 * getopt.c: Remove #ifdef GETOPT_COMPAT and #if 0 code.
3722 (_getopt_initialize): New function, broken out of _getopt_internal.
3724 If long_only and the ARGV-element has the form "-f", where f is
3725 a valid short option, don't consider it an abbreviated form of
3726 a long option that starts with f. Otherwise there would be no
3727 way to give the -f short option.
3731 * getopt.c [not __GNU_LIBRARY__] [__GNUC__] [not IN_GCC]:
3732 Test just __STDC__, not emacs.
3736 * getopt.c [not __GNU_LIBRARY__] [__GNUC__] [not IN_GCC]
3737 [emacs] [not __STDC__]: Don't include stddef.h. Don't declare strlen.
3741 * getopt.c (_NO_PROTO): Define before config.h is included.
3745 * getopt.c, getopt1.c [emacs || CONFIG_BROKETS]: Include
3746 <config.h> only under these, else "config.h".
3750 * getopt.c, getopt1.c [HAVE_CONFIG_H]: Include
3751 <config.h> instead of "config.h".
3755 * concat.c: Check ANSI_PROTOTYPES rather than __STDC__ to decide
3756 whether to use prototypes or not.
3757 * strerror.c (const): Never undefine; let ansidecl.h handle it.
3758 * strsignal.c (const): Likewise.
3762 * xatexit.c (_xexit_cleanup): Declare as extern; don't initialize.
3763 Merging common and initialized variables need not be supported by
3765 (xatexit): Initialize _xexit_cleanup if not already set.
3766 * xexit.c: Comment fix.
3770 * xmalloc.c: Don't declare xexit; it's declared in libiberty.h.
3771 (xrealloc): If oldmem is NULL, allocate with malloc, rather than
3772 assuming that realloc works correctly.
3776 * concat.c, ieee-float.c: Replace inclusion of <string.h>
3777 with explicit function declarations, as recommended by Ian Taylor.
3781 * xmalloc.c (xmalloc, xrealloc): Use PTR and size_t throughout.
3782 (malloc, realloc): Declare.
3786 * argv.c, basename.c: Include ansidecl.h and libiberty.h.
3787 * concat.c, fdmatch.c, getruntime.c, spaces.c: Likewise.
3788 * strerror.c, strsignal.c, xatexit.c, xexit.c: Likewise.
3789 * xmalloc.c: Likewise.
3790 * concat.c: Don't declare xmalloc. If __STDC__, use <stdarg.h>
3791 macros, not <varargs.h> macros.
3792 * spaces.c (spaces): Make return type const. Don't crash if
3793 malloc returns NULL.
3794 * strerror.c (struct error_info): Make name and msg fields const.
3795 (error_names): Make const.
3796 (strerrno): Make const.
3797 (strtoerrno): Make argument const.
3798 * strsignal.c (struct signal_info): Make name and msg fields
3800 (signal_names, sys_siglist): Make const.
3801 (strsignal, strsigno): Make const.
3802 (strtosigno): Make argument const.
3803 * xatexit.c: Declare parameter types.
3804 * xmalloc.c (name): Make const.
3805 (xmalloc_set_program_name): Make argument const.
3806 * Makefile.in (INCDIR): Define.
3807 (.c.o): Use $(INCDIR).
3808 (dummy.o): Likewise.
3809 (argv.o, basename.o): New targets; depend on libiberty.h.
3810 (concat.o, fdmatch.o, getruntime.o, spaces.o): Likewise.
3811 (strerror.o, strsignal.o, xatexit.o, xexit.o): Likewise.
3812 (xmalloc.o): Likewise.
3813 (cplus-dem.o): New target; depend on demangle.h.
3814 (getopt.o, getopt1.o): New targets; depend on getopt.h.
3815 (ieee-float.o): New target; depend on ieee-float.h.
3816 (obstack.o): New target; depend on obstack.h.
3820 Handle obstack_chunk_alloc returning NULL. This allows
3821 obstacks to be used by libraries, without forcing them
3822 to call exit or longjmp.
3823 * obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
3824 If CALL_CHUNKFUN returns NULL, set alloc_failed, else clear it.
3825 (_obstack_begin, _obstack_begin_1): Return 1 if successful, 0 if not.
3829 * concat.c, ieee-float.c: Include <string.h>.
3833 * xmalloc.c (xmalloc_set_program_name): New function.
3834 (xmalloc, xrealloc): Include the name in the error message, if set.
3836 * Replace atexit.c with xatexit.c.
3837 * Makefile.in (CFILES), functions.def: Change references.
3841 * getruntime.c (get_run_time): Use getrusage or times if
3842 HAVE_GETRUSAGE or HAVE_TIMES are defined.
3846 * atexit.c: New file.
3847 * Makefile.in (CFILES), functions.def: Add it.
3848 * xexit.c: New file.
3849 * Makefile.in (CFILES, REQUIRED_OFILES): Add it.
3850 * xmalloc.c (xmalloc, xrealloc): Call xexit instead of exit.
3851 Change request for 0 bytes into request for 1 byte.
3855 * xmalloc.c (xmalloc, xrealloc): Print size using %lu, and cast to
3856 unsigned long, to avoid warnings.
3860 * dummy.c: Don't include time.h ever; always define clock_t as
3861 "unsigned long". Until gcc/fixincludes ensures that clock_t
3862 exists, __STDC__ isn't a sufficient test. And if clock() doesn't
3863 exist, clock_t probably doesn't either.
3867 * clock.c, getruntime.c: New files.
3868 * Makefile.in: Add to file lists.
3869 * functions.def (clock): Add to list.
3870 * dummy.c (time.h): Add if __STDC__.
3871 (clock_t): #define as "unsigned long" if not __STDC__.
3880 * Makefile.in (errors): Use CFLAGS as well as LDFLAGS when
3885 * cplus-dem.c (demangle_arm_pt): New function. Common code
3886 for ARM template demangling.
3887 * cplus-dem.c (demangle_class_name): Use demangle_arm_pt.
3888 * cplus-dem.c (demangle_prefix): Likewise.
3892 * cplus-dem.c (cplus_demangle_opname): Add CONST to please gcc.
3897 * strerror.c, strsignal.c: As a small space optimization, don't
3898 include messages when they aren't actually used.
3900 Merge changes from takefive.co.at!joe (Josef Leherbauer)
3901 * cplus-dem.c (demangle_prefix, demangle_function_name,
3902 cplus_demangle_opname): Fixes for systems where cplus_marker
3903 is something other than '$'.
3907 * waitpid.c: Simple-minded approcimation to waitpid
3909 * functions.def, Makefile.in: Update accordingly,
3913 * cplus-dem.c(demangle_template): fix bug template instantiation
3914 with value of user defined type.
3918 * cplus-dem.c(cplus_demangle_opname): add the subject new function
3919 to support unified search of operator in class.
3924 * strtoul.c (strtoul): use "(digit = *s) != '\0'" not just
3925 "digit = *s" as condition in while loop.
3929 * Makefile.in: pass SHELL to recursive make
3933 * vfprintf.c, vprintf.c, vsprintf.c: Make format arg
3934 be (const char*), for ANSI (and gcc w/fixproto) consistency.
3938 * config.table: Make *-*-hiux* use mh-hpux.
3942 * config.table: Add * to end of all OS names.
3946 * Makefile.in (lneeded-list): ensure that object file names are
3947 not duplicated, as multiple instances of the same object file in
3948 a library causes problems on some machines
3952 * strcasecmp.c, strncasecmp.c: Change u_char to unsigned char.
3956 * strncasecmp.c: new file, implements strncasecmp
3957 * strcasecmp.c: new file, implement strcasecmp
3959 * Makefile.in (CFILES): list these two new source files
3961 * functions.def: add strcasecmp and strncasecmp entries
3965 * strtoul.c (strtoul), strtol.c (strtol): Handle overflow
3966 according to ANSI C.
3970 * cplus-dem.c: add support of ARM global constructor/destructor,
3971 and 'G' for passing record or union in parameter.
3975 * Makefile.in: Fix comment to clarify that stuff in REQUIRED_OFILES
3976 should not be in functions.def.
3980 * functions.def: Removed xmalloc. Stuff in REQUIRED_OFILES should
3981 not be in functions.def.
3985 * cplus-dem.c: change globl constructor/destructor to proper name
3989 * cplus-dem.c: fix bug in constructor/destructor
3993 * cplus-dem.c: support both old and new _vt$... vtbl mangled names
3997 * cplus-dem.c: Fix demangle_template prototype
4001 * cplus-dem.c: fix template demangling
4002 * cplus-dem.c: fix const type demangling
4003 * cplus-dem.c: fix constructor/destructor, virtual table,
4004 qualifier, global constructor/destructor demangling
4008 * strsignal.c, strerror.c: Use fully-bracketed initializer to
4009 keep gcc -Wall happy.
4013 * cplus-dem.c (do_type): Add CONSTS to make gcc happy with last
4018 Patch from Paul Flinders:
4019 * cplus-dem.c (do_type): Deal with arrays.
4023 * cplus-dem.c (demangle_qualified: Deal with GNU format for more
4028 * Makefile.in (dummy.o): Redirect to /dev/null to avoid "variable
4029 not initialized" warnings under HP/UX
4033 * strerror.c: Move include of stdio.h after sys_errlist #define.
4034 Also remove NULL definition (stdio.h always defines NULL, so it
4035 never did anything but clutter up the code).
4039 * Makefile.in, functions.def: handle xmalloc.c
4041 * xmalloc.c: provide xmalloc and xrealloc functions
4045 * cplus-dem.c: Fix a comment.
4049 * getopt1.c: Declare const the way getopt.c does.
4053 * obstack.c, alloca.c: Update from FSF.
4054 * getopt.c, getopt1.c: Update to current FSF version, which
4059 * Makefile.in (demangle): Add the target with a message saying
4060 where demangle went.
4064 * Makefile.in: Remove obsolete `demangle' target.
4069 avoid infinite loop on vtbl symbols with disambiguating "junk"
4074 * strsignal.c: work around some systems losing definitions of
4077 * config/mh-lynxos: this system has a losing definition of
4080 * config.table: use mh-lynxos for *-*-lynxos
4084 * config.table: Add support for HPPA BSD hosts.
4086 * config/mh-hpbsd: New file.
4090 * Makefile.in (TAGS): make work when srcdir != objdir.
4094 * cplus-dem.c (main): Add long options, including --help and
4096 (usage): New function from code in main.
4100 * config.table: New shell scipt, sourced by both ./configure,in
4101 and ../xiberty/configure.in, to avoid maintainance lossages.
4102 * configure.in and ../xiberty/configure.in: Use config.table.
4104 * configure.in: Don't use mh-aix for AIX 3.2, only for 3.1.
4105 * configure.in: Map *-*-irix* (except irix4) to mh-sysv.
4106 * ../xiberty/configure.in: Update from ./configure.in.
4108 Tue Jun 15 17:05:31 1993 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4110 * Makefile.in: remove parentdir support
4114 * cplus-dem.c (xrealloc): Match definition with prototype.
4118 * cplus-dem.c (demangle_prefix): Demangle cfront
4119 local variables as an extension to ARM demangling.
4123 * ieee-float.c: Don't require pointers to double to be aligned.
4128 * cplus-dem.c (consume_count): Simplify.
4129 * cplus-dem.c (arm_pt, demangle_class_name): New functions.
4130 * cplus-dem.c (various): Calls to arm_pt, demangle_class_name.
4132 * cplus-dem.c (xmalloc, xrealloc, strstr): Make extern decls into
4134 * cplus-dem.c (free): Add prototype.
4135 * cplus-dem.c (optable): Fully bracketize initializer.
4139 * cplus-dem.c: Whether initial underscores are stripped
4140 depends on the external variable prepends_underscore
4141 (which is generated by the binutils Makefile).
4145 * cplus-dem.c (mop_up, arm_special): Remove some unused variables.
4149 * cplus-dem.c (consume_count): Return zero if arg does not
4150 start with digit, and don't consume any input.
4154 * Makefile.in (demangle): Use ${srcdir} not $^.
4156 * strtod.c: New file, needed at least for BSD 4.3.
4160 * strsignal.c (sys_siglist): For ANSI compilations, type is
4161 "const char *const". Also remove conditionalization on __STDC__
4162 since const is defined away for non-ANSI.
4166 * configure.in: Recognize *-*-hpux.
4167 * config/mh-hpux: New file.
4171 * tmpnam.c: Added ANSI tmpnam() function.
4172 * functions.def, Makefile.in: Update accordingly.
4176 * cplus-dem.c (demangle_function_name): Get the demangling of
4179 Fri Apr 16 23:48:24 1993 Jim Kingdon (kingdon at calvin)
4181 * cplus-dem.c: Declare strstr return type.
4185 * strsignal.c: Add some AIX signals.
4189 * Makefile.in (MAKEOVERRIDES): Define to be empty.
4191 Wed Mar 24 01:59:25 1993 david d `zoo' zuhn (zoo at poseidon.cygnus.com)
4193 * Makefile.in: add installcheck & dvi targets
4197 * ieee-float.c: New file, moved from ../gdb (since it is
4198 needed by ../opcode/m68k-dis.c).
4202 * cplus-dem.c: Replace all references to cfront with ARM.
4206 * cplus-dem.c: Fix main program (when compiled with -DMAIN)
4207 to be more useful as a filter.
4211 * Makefile.in (install_to_libdir, install_to_tooldir): Go into the
4212 destination directory before running $(RANLIB), in case that
4213 program tries to create a file in the current directory as part of
4218 * strsignal.c (sys_siglist): Remove yet another *%^&%&$# "const"
4219 because BSD 4.4 lacks one. Isn't this fun?
4223 * cplus-dem.c (demangle_signature): Set func_done after
4224 demangling a template.
4225 * cplus-dem.c (demangle_template): Fix several small bugs
4226 in demangling GNU style templates.
4227 * cplus-dem.c (demangle_prefix): Fix for templates in GNU
4229 * cplus-dem.c (gnu_special): Fix for templates in GNU style
4230 static data members.
4234 * cplus-dem.c (demangle_signature): Modify to include type
4235 modifiers like static and const in remembered types.
4239 * cplus-dem.c (demangled_qualified): Add new parameter that tells
4240 whether to prepend or append the qualifiers.
4241 * cplus-dem.c (string_prepends): Used now, remove #if 0.
4242 * cplus-dem.c (demangle_signature): Call demangle_qualified
4244 * cplus-dem.c (gnu_special): Recognize static data members that
4245 use qualified names.
4246 * cplus-dem.c (demangle_qualified): Accumulate qualifiers in a
4247 temporary buffer and the prepend or append them to the result,
4248 as specified by the new "append" flag.
4249 * cplus-dem.c (do_type): Call demangled_qualified with
4254 * strsignal.c (signal_table): Now const.
4255 (init_signal_tables): Variable eip now points to const.
4257 * strerror.c (error_table): Now const.
4258 (init_error_tables): Variable eip now points to const.
4262 * memchr.c (memchr): New (ANSI standard) function.
4263 * Makefile.in, functions.def: Added memchr.
4264 * Makefile.in (AR_FLAGS): Use rc instad of non-standard cq.
4266 Wed Dec 2 22:49:10 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4268 * getopt.c: remove use of USG around <alloca.h>, which never meant
4271 * config/mh-{aix,apollo68,ncr3000,sysv,sysv4}: removed definitions
4276 * cplus-dem.c (demangle_fund_type): Recognize `w', a wide character;
4277 it's now a type according to the ANSI X3J16 working paper; output
4279 (demangle_template): Accept `w' as an integral type.
4280 (xmalloc, xrealloc): Use `char *', not `PTR'. Cast calls to their
4281 counterparts malloc and realloc to `char *'.
4282 (main): Exit with a 0 status.
4283 * Makefile.in (demangle): Don't expect the user to define
4284 DEMANGLE, instead force to be cplus-dem.c. Look in $(srcdir)/../include
4285 for demangle.h. Pass it any HDEFINES or XTRAFLAGS.
4289 * Makefile.in (AR_FLAGS): Avoid verbosity.
4290 * config/mh-sysv4: Remove AR_FLAGS override, use INSTALL=cp,
4291 replace USGr4 with HAVE_SYSCONF.
4292 * config/mh-solaris: Remove; mh-sysv4 works now.
4293 * getpagesize.c: Replace USGr4 with HAVE_SYSCONF.
4294 * configure.in: Simplify host matching table, remove separate
4295 solaris config file.
4299 * configure.in (i[34]86-*-solaris2*): Add, use mh-sysv4.
4303 * cplus-dem.c (xmalloc, xrealloc): Add decls.
4304 (remember_type): Don't cast xmalloc.
4305 (string_need): Likewise; don't cast xrealloc either.
4309 * Makefile.in, functions.defs, rename.c: added simple
4310 implementation of rename, since some binutils programs use it.
4314 * strsignal.c: Add appropriate 'const' to sys_siglist
4315 extern declaration (if __STDC__). (Needed for Linux.)
4316 * strsignal.c (strsignal): Add cast to remove const-ness.
4320 * Makefile.in (needed.awk, needed2.awk): Remove erroneous \'s
4321 before "'s, diagnosed by BSD 4.4 awk.
4325 * Makefile.in: create config.h and needed-list through $(CONFIG_H)
4326 and $(NEEDED_LIST), to give some hooks for xiberty.
4328 Thu Oct 1 23:31:42 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4330 * configure.in: use cpu-vendor-triple instead of nested cases
4334 * Makefile.in, argv.c, basename.c, bcmp.c, bcopy.c, bzero.c,
4335 concat.c, cplus-dem.c, fdmatch.c, getcwd.c, getopt.c, getopt1.c,
4336 getpagesize.c, insque.c, memcmp.c, memcpy.c, memmove.c, memset.c,
4337 obstack.c, sigsetmask.c, spaces.c, strchr.c, strerror.c,
4338 strrchr.c, strsignal.c, strstr.c, vfork.c, vsprintf.c:
4339 Convert from using GPL to LGPL.
4343 * Makefile.in (errors): Leave dummy.o and dummy around so that
4344 we can see how the needed list was generated (it's sometimes wrong).
4345 (mostlyclean): Remove them.
4349 * getcwd.c: supply a default if MAXPATHLEN is not defined.
4351 * config/mh-irix4: set EXTRA_OFILES to alloca.o, from WRS.
4355 * Makefile.in: Use XTRAFLAGS when compiling, so that xiberty works
4356 when cross-compiling.
4360 * cplus-dem.c: (demangle_prefix): reduction in strength of strstr
4361 as a time optimization.
4363 * cplus-dem.c (cplus_demangle): remove strpbrk test. Appears to
4364 be more expensive than simply demangling.
4366 * cplus-dem.c (cplus_match): new function.
4370 * cplus-dem.c: #include <stdio.h>, to define NULL.
4371 Define current_demangling_style.
4375 * cplus-dem.c: New file, moved from ../gdb.
4376 * cplus-dem.c (set_cplus_marker_for_demangling): New exported
4377 function, to avoid compiling in target-dependency for CPLUS_MARKER.
4378 * cplus-dem.c (cplus_demangle): Allow demangling style option
4379 to be passed as a parameter, but using the global variable
4380 current_demangling_style as a default.
4381 * Makefile.in: Update for cplus-dem.c
4385 * obstack.c: Merge in comment changes from FSF version. Now
4386 matches the FSF version exactly.
4390 * obstack.c (CALL_FREEFUN): Can't use ?: with void values (at
4391 least on losing DECstations!); use if-then-else instead.
4395 * Makefile.in: always create installation directories.
4397 Mon Aug 10 17:33:40 1992 david d `zoo' zuhn (zoo at cirdan.cygnus.com)
4399 * Makefile.in: clean up definition of CFILES, more comments
4403 * getopt.c (my_index): Make first arg const to match strchr,
4404 which it sometimes is remapped to.
4408 * obstack.c (DEFAULT_ALIGNMENT): Update to match FSF version.
4409 * obstack.c (_obstack_begin): Initialize use_extra_arg.
4410 * obstack.c (_obstack_begin_1): New, from FSF version.
4414 * obstack.c (CALL_CHECKFUN, CALL_FREEFUN): Use use_extra_arg and
4416 * obstack.c (_obstack_begin): Remove area_id and flags arguments
4417 (previously added for mmalloc support, interface has changed).
4418 Also convert flags usage to use use_extra_arg and maybe_empty_object.
4422 * argv.c: Move expandargv inline and eliminate static variables.
4423 Rewrite to always allocate in powers of two. Fix to return an
4424 argv with a single null string arg if passed a null string.
4428 * random.c, sigsetmask.c, strerror.c, strsignal.c: Remove
4429 "(void)" casts from function calls where the return value is
4430 ignored, in accordance with GNU coding standards.
4432 Mon Jun 29 10:54:19 1992 Fred Fish (fnf at cygnus.com)
4434 * bcopy.c, strerror.c, strsignal.c: Lint.
4438 * getopt.c: merge changes from make.
4440 Thu Jun 25 04:43:22 1992 John Gilmore (gnu at cygnus.com)
4442 * alloca.c: Incorporate fixes from gdb/alloca.c.
4443 FIXME: Eventually move gdb's alloca configuration files here,
4444 and remove gdb/alloca.c and its Makefile.in support.
4448 * dummy.c: Define NOTHING to /*nothing*/, change return type
4449 of main to int and return zero.
4450 * functions.def: Supply NOTHING as the fourth arg to macros
4451 that don't have an explicit arg, to satisfy picky preprocessors.
4455 * Makefile.in: Clean up *clean rules, as per standards.texi.
4459 * getopt.c, getopt1.c: merged largely gratuitous, mostly
4460 whitespace diffs from other prep distributions.
4464 * config/mh-ncr3000 (INSTALL): Don't use /usr/ucb/install,
4465 it is broken on ncr 3000's.
4467 Mon Jun 15 01:03:26 1992 John Gilmore (gnu at cygnus.com)
4469 * sigsetmask.c: Rewrite. Old one was very confused about its
4470 arguments and result. New one can't do much, but at least knows
4471 what it can't do, and it's good enough for GDB's use.
4473 Sun Jun 14 15:17:40 1992 Stu Grossman (grossman at cygnus.com)
4475 * functions.def: Use proper prototype for strtoul.
4477 Fri Jun 12 19:22:40 1992 John Gilmore (gnu at cygnus.com)
4479 * Makefile.in: Add random.c.
4480 * config/mh-*: Use "true" rather than "echo >/dev/null" for ranlib.
4481 * configure.in: update solaris2 config.
4485 * random.c: Add for random() and srandom().
4486 * functions.def: Add random
4490 * config/{mh-ncr3000, mh-sysv4}: Add definition for INSTALL
4491 using /usr/ucb/install.
4495 * strerror.c: Kludge to guard against a conflict with
4496 possible declaration of sys_errlist in errno.h.
4498 Sun May 31 15:07:47 1992 Mark Eichin (eichin at cygnus.com)
4500 * configure.in, config/mh-solaris: add solaris2 config support.
4504 * sigsetmask.c: #ifdef out sigsetmask if SIG_SETMASK
4505 is not defined (should be defined in signal.h, says Posix.).
4509 * getopt.c: merged changes from make-3.62.11.
4513 * getopt.c: merged changes from bison-1.18.
4517 * Makefile.in: Don't have $(EXTRA_OFILES) depend on config.h,
4518 since that introduces a circular dependency.
4519 ($(EXTRA_OFILES) are used to build config.h.)
4521 * strtoul.c: Fixes to handle non-decimal bases better.
4525 * config/mh-ncr3000: Replace MINUS_G with CFLAGS.
4526 * Makefile.dos: Finish MINUS_G eradication.
4527 * Makefile.in (CFILES): Add strsignal.c.
4528 * Makefile.in (REQUIRED_OFILES): Add strerror.o strsignal.o
4529 * Makefile.in (needed-list): Split creation of errors file to
4530 separate make target.
4531 * Makefile.in (config.h, needed2.awk, errors): New targets.
4532 * Makefile.in (clean): Split to multiple lines, add needed2.awk
4534 * dummy.c (DEFFUNC, DEFVAR): Add defines and undefs.
4535 * functions.def (strerror): Remove from optional list.
4536 * functions.def (sys_nerr, sys_errlist, sys_siglist): DEFVAR's
4537 * functions.def (strerror, psignal): DEFFUNC's
4538 * strerror.c: Rewrite from scratch to use sys_errlist only if
4539 available, add errno_max(), add strerrno(), add strtoerrno(),
4541 * strsignal.c: New file, signal equivalent to strerror.c.
4542 Uses sys_siglist if available, defines signo_max(), strsignal(),
4543 strsigno(), strtosigno(), psignal(), and test driver.
4547 * Makefile.in: do not print recursion line.
4549 * Makefile.in: allow CFLAGS to be passed in from command line.
4550 Removed MINUS_G. Default CFLAGS to -g.
4554 * config/mh-aix: New. EXTRA_OFILES lists copysign.o,
4555 so libg++ users don't have to be inconvenienced by a
4556 libc.a bug (libc.a needs copysign, but doesn't define it!).
4557 * configure.in: Use config/mh-aix.
4558 * strtoul.c: Handle '-' as required by ANSI.
4559 Clean up radix handling.
4560 * strstr.c: Fix buggy algorithm.
4561 * Makefile.in: Change so that ${EXTRA_OFILES} is
4562 appended to needed-list (which is used by libg++).
4566 * configure.in: Recognize new ncr3000 config.
4567 * config/mh-ncr3000: New config file.
4569 Wed Apr 1 23:31:43 1992 John Gilmore (gnu at cygnus.com)
4571 * argv.c, dummy.c: Lint.
4575 * config/mh-sysv4: New config file.
4576 * configure.in (host_makefile_frag): Set to config/mh-sysv4 for
4578 * getpagesize.c: For SVR4, use sysconf(_SC_PAGESIZE) to get
4581 Sun Mar 29 12:26:42 1992 John Gilmore (gnu at cygnus.com)
4587 * functions.def (alloca): Fix return type and args to avoid
4588 type clash with gcc's builtin alloca.
4592 * configure.in, config/mh-irix4: irix4 support.
4594 * Makefile.in, functions.def, alloca.c: added alloca.
4596 Tue Mar 24 17:34:46 1992 Stu Grossman (grossman at cygnus.com)
4598 * obstack.c (CALL_FREEFUN): Make it compile on DECstations.
4602 * argv.c: Fix various external function definitions to be
4603 correct in an ANSI compilation environment.
4607 * obstack.c: Changes to support calling mmalloc functions,
4608 which take an additional argument over malloc functions.
4612 * added check target.
4616 * argv.c: #include alloca-conf.h (needed by AIX).
4620 * Makefile.in, configure.in: removed traces of namesubdir,
4621 -subdirs, $(subdir), $(unsubdir), some rcs triggers. Forced
4622 copyrights to '92, changed some from Cygnus to FSF.
4624 Sat Feb 22 01:09:21 1992 Stu Grossman (grossman at cygnus.com)
4626 * argv.c: Check in Fred's version which fixes problems with
4629 Fri Feb 7 21:46:08 1992 Stu Grossman (grossman at cygnus.com)
4631 * makefile.dos: Remove NUL to keep patch from failing.
4633 Thu Jan 30 22:48:41 1992 Stu Grossman (grossman at cygnus.com)
4635 * getopt.c (_getopt_internal): Fix usage of enum has_arg.
4637 Mon Jan 20 18:53:23 1992 Stu Grossman (grossman at cygnus.com)
4639 * getopt.c, getopt1.c, ../include/getopt.h: Get latest versions.
4641 Sat Jan 18 16:53:01 1992 Fred Fish (fnf at cygnus.com)
4643 * argv.c: New file to build and destroy standard argument
4644 vectors from a command string.
4646 * Makefile.in: Add argv.c and argv.o to appropriate macros.
4648 Fri Dec 20 12:12:57 1991 Fred Fish (fnf at cygnus.com)
4650 * configure.in: Change svr4 references to sysv4.
4652 * rindex.c: Declare return type of externally used function
4655 Thu Dec 19 18:35:03 1991 John Gilmore (gnu at cygnus.com)
4657 * Makefile.in: Remove "***" in normal output, since Make produces
4658 this on errors, and it's convenient to search for.
4660 Tue Dec 17 23:21:30 1991 Per Bothner (bothner at cygnus.com)
4662 * memcmp.c, memcpy.c, memmove.c, memset.c, strchr.c, strrchr.c:
4663 New ANSI functions. The old non-ANSI functions (such as bcopy)
4665 * bcopy.c: Fix to correctly handle overlapping regions.
4666 * index.c, rindex.c: Re-write in terms of strchr() and strrchr().
4667 * functions.def: Add the new functions.
4668 * functions.def: Add 4th parameter to DEF macro,
4669 an ansidecl.h-style prototype.
4670 * dummy.c: Use expanded DEF macro to create a dummy function
4671 call, with correct parameter types. (This avoids some
4672 complaints from gcc about predefined builtins.)
4674 Move the functionality of config/mh-default into Makefile.in.
4675 This avoid duplication, and simplifies things slightly.
4676 * Makefile.in: Tweak so we don't need config/mh-default.
4678 * configure.in: No longer need config/mh-default.
4679 * config/mh-default: Deleted.
4680 * config/mh-sysv: Remove lines copied from old mh-default.
4682 Tue Dec 17 05:46:46 1991 John Gilmore (gnu at cygnus.com)
4684 * fdmatch.c (fdmatch): Don't compare st_rdev, which is for
4685 'mknod' device numbers.
4687 Mon Dec 16 12:25:34 1991 Fred Fish (fnf at cygnus.com)
4689 * fdmatch.c, Makefile.in: Add new function that takes two
4690 open file descriptors and returns nonzero if they refer to
4691 the same file, zero otherwise. (used in gdb)
4693 Wed Dec 11 17:40:39 1991 Steve Chamberlain (sac at rtl.cygnus.com)
4695 * msdos.c: stub functions for dos.
4696 * makefile.dos, configdj.bat: new.
4697 * getopt.c: Don't include alloca-conf.h in a GO32 world.
4700 Tue Dec 10 04:14:49 1991 K. Richard Pixley (rich at rtl.cygnus.com)
4702 * Makefile.in: infodir belongs in datadir.
4704 Fri Dec 6 23:26:45 1991 K. Richard Pixley (rich at rtl.cygnus.com)
4706 * Makefile.in: remove spaces following hyphens because bsd make
4707 can't cope. added standards.text support. install using
4710 * configure.in: remove commontargets as it is no longer a
4713 Thu Dec 5 22:46:46 1991 K. Richard Pixley (rich at rtl.cygnus.com)
4715 * Makefile.in: idestdir and ddestdir go away. Added copyrights
4716 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
4717 and mandir now keyed off datadir by default.
4719 Fri Nov 22 19:15:29 1991 John Gilmore (gnu at cygnus.com)
4721 * Makefile.in: find-needed.awk does not fit in 14 chars.
4723 * Makefile.in: Suppress error checking when compiling the test
4724 program, because Ultrix make/sh aborts there due to a bug.
4726 Fri Nov 22 12:23:17 1991 Per Bothner (bothner at cygnus.com)
4728 * Makefile.in: Re-did how EXTRA_OFILES is used to be more useful.
4729 * README: Explained how the auto-configuration works,
4730 and how to add new files and/or configurations.
4732 Fri Nov 22 09:45:23 1991 John Gilmore (gnu at cygnus.com)
4734 * strtoul.c: Avoid defining ULONG_MAX if already defined;
4735 cast a const char * to char * for pedants.
4737 * getopt.c: Only define "const" after local include files get to,
4738 and only if they haven't defined it.
4740 Thu Nov 21 16:58:53 1991 John Gilmore (gnu at cygnus.com)
4742 * getcwd.c (remove getwd.c): GNU code should call getcwd(). We
4743 emulate it with getwd() if available. This avoids callers having
4744 to find a MAXPATHLEN or PATH_MAX value from somewhere.
4745 * Makefile.in, functions.def: getwd->getcwd.
4746 * configure.in: Use generic case for every system.
4747 * config/mh-{delta88,mach,rs6000,svr4}: Remove.
4748 * config/mh-sysv: Use default handling, just add -DUSG.
4750 Thu Nov 14 10:58:05 1991 Per Bothner (bothner at cygnus.com)
4752 * Makefile.in, config/mh-default: Re-do make magic
4753 so that for the default ("automatic") mode we only
4754 compile the files we actually need. Do this using
4755 a recursive make: The top-level generates the list
4756 of needed files (loosely, the ones missing in libc),
4757 and then passes that list to the recursive make.
4758 * config/mh-mach: Remove obsolete STRERROR-{C,O} macros.
4760 Tue Nov 12 19:10:57 1991 John Gilmore (gnu at cygnus.com)
4762 RS/6000 host support (grumble).
4764 * configure.in: Build alloca-conf.h file from alloca-norm.h
4765 (everything else) or alloca-botch.h (rs/6000).
4766 * Makefile.in: Include . on the include path.
4767 * getopt.c: Use alloca-conf.h.
4768 * alloca-norm.h: How to declare alloca on reasonable machines.
4769 * alloca-botch.h: How to declare alloca on braindead machines.
4771 Tue Nov 12 09:21:48 1991 Fred Fish (fnf at cygnus.com)
4773 * concat.c : New file, like concat() in gdb but can take a
4774 variable number of arguments rather than fixed at 3 args. For
4775 now, client applications must supply an xmalloc(), which is a
4776 front end function to malloc() that deals with out-of-memory
4779 * Makefile.in: Add concat.c and concat.o to appropriate macros.
4781 Sat Nov 9 13:29:59 1991 Fred Fish (fnf at cygnus.com)
4783 * config/mh-svr4: Add sigsetmask to list of required functions.
4785 Sun Nov 3 11:57:56 1991 Per Bothner (bothner at cygnus.com)
4787 * vsprintf.c: New file.
4788 * functions.def, Makefile.in: Add vsprintf.
4790 Sun Oct 27 16:31:22 1991 John Gilmore (gnu at cygnus.com)
4792 * configure.in, config/mh-rs6000: Add rs/6000 host support.
4793 * Makefile.in: Compile with debug info.
4795 Fri Oct 25 17:01:12 1991 Per Bothner (bothner at cygnus.com)
4797 * Makefile.in, configure.in, and new files: dummy.c, functions.def,
4798 config/mf-default: Added a default configuration mode,
4799 which includes into libiberty.a functions that are "missing" in libc.
4800 * strdup.c, vprintf.c, vfprintf.c: New files.
4802 Thu Oct 24 02:29:26 1991 Fred Fish (fnf at cygnus.com)
4804 * config/hmake-svr4: New file.
4806 * config/hmake-sysv: Add HOST_CFILES and HOST_OFILES.
4808 * basename.c, bcmp.c, bcopy.c, bzero.c, getpagesize.c getwd.c,
4809 index.c, insque.c, rindex.c, spaces.c, strstr.c, vfork.c: New
4810 files containing either portable C versions or emulations using
4811 native library calls.
4813 * strerror.c: Add copyright, internal documentation, etc.
4815 * strtol.c: Replace hardwired hex constants with some more
4816 portable macros. Remove illegal (according to gcc) cast.
4818 * strtoul.c: Replace hardwired hex constant with more portable
4821 * Makefile.in: Move TARGETLIB and CFLAGS where makefile fragments
4822 can override them. Add new source and object file names to CFILES
4823 and OFILES respectively.
4825 * configure.in: Add support for SVR4 makefile fragments.
4827 Tue Oct 22 19:00:23 1991 Steve Chamberlain (steve at cygnus.com)
4829 * Makefile.in: Move RANLIB, AR and AR_FLAGS to where they can be
4830 over-ridden by config/hmake-*
4831 * configure.in: added m88kcvs to sysv list
4833 Fri Oct 4 01:29:08 1991 John Gilmore (gnu at cygnus.com)
4835 * Makefile.in: Most hosts need strerror, but one or two don't,
4836 and they override these definitions in the host-dependent makefile
4838 * config/hmake-mach: The odd man out on strerror -- it's supplied.
4839 * strerror.c: New file.
4841 * strtol.c, strtoul.c: Add strtol to libiberty, since Mach lacks
4843 * configure.in, Makefile.in, config/hmake-mach: Only configure
4844 strtol & strotoul in on Mach.
4846 Tue Sep 3 06:36:23 1991 John Gilmore (gnu at cygint.cygnus.com)
4848 * obstack.c: Merge with latest FSF version.
4852 version-control: never