Commit Graph

37 Commits

Author SHA1 Message Date
Geoffrey Keating 8bf955e1b8 * cp-demangle.c (d_name): Detect local-source-name.
(d_prefix): Likewise.
	(d_unqualified_name): Implement local-source-name.
2007-05-06 00:25:11 +00:00
Geoffrey Keating 8d3010701b * cp-demangle.c (d_encoding): Exit early on error.
(d_pointer_to_member_type): Exit early if cplus_demangle_type
	returns NULL.
	(cplus_demangle_type): Likewise.
	* testsuite/demangle-expected: New testcase.
2007-03-16 01:09:26 +00:00
Geoffrey Keating 6ef6358e51 * cp-demangle.h: Add comment explaining what to do to avoid
overrunning string.
	(d_check_char): New.
	(d_next_char): Don't advance past trailing '\0'.
	* cp-demangle.c (cplus_demangle_mangled_name): Use d_check_char.
	(d_nested_name): Likewise.
	(d_special_name): Likewise.
	(d_call_offset): Likewise.
	(d_function_type): Likewise.
	(d_array_type): Likewise.
	(d_pointer_to_member_type): Likewise.
	(d_template_param): Likewise.
	(d_template_args): Likewise.
	(d_template_arg): Likewise.
	(d_expr_primary): Likewise.
	(d_local_name): Likewise.
	(d_substitution): Likewise.
	(d_ctor_dtor_name): Use d_advance rather than d_next_char.
	* testsuite/test-demangle.c: Include sys/mman.h.
	(MAP_ANONYMOUS): Define.
	(protect_end): New.
	(main): Use protect_end.
	* testsuite/demangle-expected: Add testcases for overrunning
	the end of the string.
2006-12-21 01:32:48 +00:00
DJ Delorie e63f184e3f merge from gcc 2006-09-22 19:19:32 +00:00
DJ Delorie cb6c09ace5 merge from gcc 2006-08-28 00:56:25 +00:00
DJ Delorie 7887b2ce66 merge from gcc 2005-12-11 02:16:09 +00:00
DJ Delorie 6ba85b8caf merge from gcc 2005-07-03 19:16:20 +00:00
Richard Henderson 839e4798b0 include/
* demangle.h (DEMANGLE_COMPONENT_HIDDEN_ALIAS): New.
libiberty/
	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_HIDDEN_ALIAS.
	(d_make_comp, d_print_comp): Likewise.
	(d_special_name): Generate one.
	* testsuite/demangle-expected: Add a hidden alias test.
2005-05-25 23:32:36 +00:00
DJ Delorie a21da8bff0 merge from gcc 2004-06-28 18:01:46 +00:00
DJ Delorie 2d7332114a merge from gcc 2004-02-25 05:40:03 +00:00
DJ Delorie 099f84cfba merge from gcc 2004-02-25 02:04:37 +00:00
DJ Delorie 74aee4eb9f merge from gcc 2004-02-24 16:30:50 +00:00
DJ Delorie 820542c970 merge from gcc 2004-01-02 21:11:34 +00:00
DJ Delorie 2730f65149 merge from gcc 2003-12-20 16:06:10 +00:00
DJ Delorie d4edd1123b merge from gcc 2003-12-19 22:03:41 +00:00
DJ Delorie d35d0cd43c merge from gcc 2003-12-16 00:58:45 +00:00
DJ Delorie 97ceaf5b4d merge from gcc 2003-12-15 17:45:42 +00:00
DJ Delorie 858b45cfbf merge from gcc 2003-12-04 20:03:39 +00:00
DJ Delorie 24afc00d03 merge from gcc 2003-12-01 23:54:49 +00:00
DJ Delorie 331c3da232 merge from gcc 2003-11-27 01:17:34 +00:00
DJ Delorie 54a962d927 merge from gcc 2003-11-21 22:01:27 +00:00
DJ Delorie 8fe0d34792 merge from gcc 2003-11-21 21:02:26 +00:00
DJ Delorie e281fb7919 merge from gcc 2003-10-21 00:06:36 +00:00
Joel Brobecker eec65ede89 * cplus-dem.c (demangle_template): Register a new Btype only
when needed.
	* testsuite/demangle-expected: Add a new test.
2003-10-20 23:50:37 +00:00
H.J. Lu cd275bff00 2003-10-14 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/demangle-expected: Update the expected output of
	_GLOBAL__I__Z2fnv.
2003-10-16 15:22:27 +00:00
H.J. Lu 78c5b0a5c0 2003-06-26 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/demangle-expected: Add more GNU V3 testcases.
2003-06-26 19:08:40 +00:00
DJ Delorie a54ba43fe9 merge from gcc 2002-09-12 01:11:29 +00:00
DJ Delorie b851d07bfd merge from gcc 2002-07-10 00:01:58 +00:00
DJ Delorie 59ea9fe7b6 merge from gcc 2002-02-19 21:01:40 +00:00
DJ Delorie 6f84855018 merge from gcc 2002-02-18 23:01:39 +00:00
DJ Delorie 2c955b8b61 merge from gcc 2002-01-31 02:21:27 +00:00
DJ Delorie ae53364610 merge from gcc 2001-12-13 00:05:32 +00:00
DJ Delorie bc9bf2596e merge from gcc 2001-02-02 18:58:51 +00:00
Hans-Peter Nilsson d3e8500506 * testsuite/demangle-expected: Add two tests for anonymous
namespaces.
	* cplus-dem.c (gnu_special): Handle anonymous namespaces.
2000-09-13 22:59:40 +00:00
Hans-Peter Nilsson 1dc349e58c * testsuite/demangle-expected: Add four tests for type_info
mangling.

	* cplus-dem.c (gnu_special): Use do_type, not demangle_fund_type,
	for a non-template non-qualified type_info function or node.
2000-09-10 19:43:30 +00:00
Hans-Peter Nilsson 6ef554e3f6 (From GCC:) Add testcases and missing changelogs:
2000-08-31  Hans-Peter Nilsson  <hp@axis.com>

	* testsuite/demangle-expected: Add nine tests for
	underscore-after-number followed by five tests for name-signature
	delimiter.

2000-07-24  Hans-Peter Nilsson  <hp@axis.com>

	* cplus-dem.c (work_stuff_copy_to_from): New.
	(delete_non_B_K_work_stuff): New.
	(delete_work_stuff): New.
	(mop_up): Break out work_stuff destruction to delete_work_stuff.
	(iterate_demangle_function): New.
	(demangle_prefix): Call iterate_demangle_function instead of
	demangle_function_name.  Leave handling of name-signature
	__-delimiters to iterate_demangle_function.

	* cplus-dem.c (demangle_integral_value): Strip an optional
	following underscore cautiously.  Handle negative numbers.
2000-08-31 22:16:08 +00:00
Ian Lance Taylor e2eaf47799 import libiberty from egcs 2000-02-22 15:59:20 +00:00