summaryrefslogtreecommitdiffstats
path: root/libiberty/dyn-string.c
Commit message (Collapse)AuthorAgeFilesLines
* 2002-04-01 Phil Edwards <pme@gcc.gnu.org>pme2002-04-011-1/+1
| | | | | | | | | | * cp-demangle.c (__cxa_demangle): Also protect with IN_GLIBCPP_V3. (is_gnu_v3_mangled_ctor, is_gnu_v3_mangled_ctor): Conditionally not compile if IN_GLIBCPP_V3 defined. * dyn-string.c: Also allow IN_GLIBCPP_V3 to change allocation scheme. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51708 138bc75d-0d04-0410-961f-82ee72b054a4
* * dyn-string.c: Add libgcc exception to copyright notice.mmitchel2002-03-271-1/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51461 138bc75d-0d04-0410-961f-82ee72b054a4
* In include:samuel2000-09-051-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dyn-string.h: Adjust formatting. (dyn_string_insert_char): New macro. New declaration. In libiberty: * cp-demangle.c (ANONYMOUS_NAMESPACE_PREFIX): New macro. (substitution_def): Remove template_parm_number. (NOT_TEMPLATE_PARM): Remove. (result_insert_string): New macro. (result_insert): Likewise. (result_insert_char): Likewise. (substitution_add): Remove last parameter. Don't store template parm number. (BFT_NO_RETURN_TYPE): Define as NULL. (demangle_encoding): Adjust call to demangle_bare_function_type. (demangle_name): Adjust substitution. Adjust call to substitution_add. (demangle_prefix): Adjust call to substitution_add. (demangle_identifier): Handle anonymous namespaces. (demangle_operator_name): Change demangling of vendor-extended operator to match ABI changes. (demangle_type_ptr): Change parameters. Make recursive. Handle substitutions here. (demangle_type): Adjust calls to demangle_template_param, substitution_add, and demangle_type_ptr. Fix substitution of templated types. (demangle_function_type): Change parameter to a pointer. (demangle_bare_function_type): Likewise. Adjust insertion point. (demangle_template_param): Remove last parameter. (demangle_expr_primary): Remove unused variable. Adjust call to demangle_template_param. (is_mangled_char): Accept `$' and `.'. * cplus-dem.c (gnu_new_abi_symbol_characters): Add '$' and '.'. * dyn-string.c (dyn_string_insert_char): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36148 138bc75d-0d04-0410-961f-82ee72b054a4
* in include/ChangeLog:samuel2000-06-231-61/+137
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dyn-string.h (dyn_string_init, dyn_string_new, dyn_string_delete, dyn_string_release, dyn_string_resize, dyn_string_clear, dyn_string_copy, dyn_string_copy_cstr, dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, dyn_string_append_char, dyn_string_substring_dyn_string_eq): Define as same name with __cxa_ prepended, if IN_LIBGCC2. (dyn_string_init, dyn_string_copy, dyn_string_copy_cstr, dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, dyn_string_append_char, dyn_string_substring): Change return type to int. in libiberty/ChangeLog: * cp-demangle.c: Don't include ctype.h. (IS_DIGIT): New macro. (IS_ALPHA): Likewise. Use IS_DIGIT and IS_ALPHA throughout instead of isdigit and isalpanum. (demangling_def): Make name and next const pointers. (STATUS_ALLOCATION_FAILED): New status code. (dyn_string_append_space): Handle failure in dyn_string_append_char. (int_to_dyn_string): Likewise. Change return value to status_t. (string_list_new): Handle failure of dyn_string_init. (result_close_template_list): Change return type to status_t. Handle failure in dyn_string_append. (result_push): Change return value to status_t. Handle failure in string_list_new. Handle failure of result_push throughout. (substitution_add): Change return value to status_t. Handle dyn_string failures. Handle failure of substitution_add throughout. (template_arg_list_new): Return NULL on allocation failure. (result_append_string): Return STATUS_ALLOCATION_FAILED on error. Handle error result throughout. (result_append): Likewise. (result_append_char): Likewise. (result_append_space): Likewise. (demangling_new): Make argument a const pointer. Handle allocation failures. (demangle_template_args): Handle failure in template_arg_list_new and result_close_template_list. (demangle_discriminator): Return if int_to_dyn_string fails. (cp_demangle): Likewise. (cp_demangle_type): New function. (cplus_demangle_new_abi): Don't call dyn_string_delete. Abort on memory allocation failure. (main): Likewise. * dyn-string.c (RETURN_ON_ALLOCATION_FAILURE): Define if IN_LIBGCC2. (dyn_string_init): Change return value to int. Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_new): Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_release): Delete the dyn_string. (dyn_string_resize): Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_copy): Change return type to int. (dyn_string_copy_cstr): Likewise. (dyn_string_prepend): Likewise. (dyn_string_prepend_cstr): Likewise. (dyn_string_insert): Likewise. (dyn_string_insert_cstr): Likewise. (dyn_string_append): Likewise. (dyn_string_append_cstr): Likewise. (dyn_string_append_char): Likewise. (dyn_string_substring): Likewise. in gcc/cp/ChangeLog: * Make-lang.in (CXX_LIB2FUNCS): Add cp-demangle.o and dyn-string.o. (CXX_LIB2SRCS): Add cp-demangle.c and dyn-string.c. (cp-demangle.o): New rule. (dyn-string.o): Likewise. * inc/cxxabi.h (__cxa_demangle): New declaration. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34657 138bc75d-0d04-0410-961f-82ee72b054a4
* * cp-demangle.c (stdio.h): File included unconditionaly.phdm2000-06-081-0/+2
| | | | | | | | | | (template_arg_list_new): Parameter list is PARAMS ((void)), not (). * dyn-string.c (stdio.h): File included. * partition.c (partition_print): No `&' needed to take the address of a function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34450 138bc75d-0d04-0410-961f-82ee72b054a4
* libiberty:ghazi2000-06-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in (ac_libiberty_warn_cflags): Add -pedantic. * choose-temp.c (try, choose_temp_base, make_temp_file): Constify. * cp-demangle.c (demangle_char): Change parameter from char to int. (demangle_expression, demangle_expr_primary): Remove extra semi-colon in prototype. * dyn-string.c (dyn_string_append_char): Change parameter from char to int. * memcmp.c (memcmp): Constify. * mkstemps.c (gcc_uint64_t): Mark GNUC `long long' case with __extension__. * partition.c (elem_compare): Prototype. Don't cast away const-ness. * setenv.c (setenv): Use braces to avoid ambiguous `else'. include: * demangle.h (demangling_styles): Remove trailing comma in enum. * dyn-string.h (dyn_string_append_char): Change parameter from char to int. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34447 138bc75d-0d04-0410-961f-82ee72b054a4
* In include,samuel2000-06-051-0/+331
* dyn-string.h: Move here from gcc/dyn-string.h. Add new functions. * demangle.h (DMGL_GNU_NEW_ABI): New macro. (DMGL_STYLE_MASK): Or in DMGL_GNU_NEW_ABI. (current_demangling_style): Add gnu_new_abi_demangling. (GNU_NEW_ABI_DEMANGLING_STYLE_STRING): New macro. (GNU_NEW_ABI_DEMANGLING): Likewise. (cplus_demangle_new_abi): New declaration. In libiberty, * Makefile.in (CFILES): Add cp-demangle.c and dyn-string.c. (REQUIRED_OFILES): Add cp-demangle.o and dyn-string.o. (cp-demangle.o): New dependency. (dyn-string.o): Likewise. * dyn-string.c: Move here from gcc/dyn-string.c. Add new functions. * cplus-dem.c (libiberty_demanglers): Add initializer for new-ABI demangler. (cplus_demangle): Call cplus_demangle_new_abi if in new-ABI demangling mode. (gnu_new_abi_symbol_characters): New function. (main): Use gnu_new_abi_symbol_characters. * cp-demangle.c: New file. * cp-demangle.c: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34397 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud