Commit graph

125 commits

Author SHA1 Message Date
DJ Delorie
4e59450ef0 merge from gcc 2008-12-18 15:56:12 +00:00
DJ Delorie
d2825c1a4c merge from gcc 2008-12-10 23:28:19 +00:00
DJ Delorie
1c08f2c880 merge from gcc 2008-10-07 01:28:01 +00:00
DJ Delorie
ba8cb4bac5 merge from gcc 2008-09-09 18:21:49 +00:00
DJ Delorie
dddc49b73b merge from gcc 2008-03-31 18:11:50 +00:00
David Daney
830ef6349c include/
2008-01-26  David Daney  <ddaney@avtrex.com>

	* demangle.h (demangle_component_type):  Add
	DEMANGLE_COMPONENT_JAVA_RESOURCE,
	DEMANGLE_COMPONENT_COMPOUND_NAME, and
	DEMANGLE_COMPONENT_CHARACTER as new enum values.
	(demangle_component): Add struct s_character to union u.

libiberty/
2008-01-26  David Daney  <ddaney@avtrex.com>

	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_JAVA_RESOURCE,
	DEMANGLE_COMPONENT_COMPOUND_NAME, and
	DEMANGLE_COMPONENT_CHARACTER cases.
	(d_make_comp): Handle DEMANGLE_COMPONENT_COMPOUND_NAME and
	DEMANGLE_COMPONENT_JAVA_RESOURCE cases.
	(d_make_character): New function.
	(d_java_resource): Same.
	(d_special_name): Handle "Gr" case.
	(d_print_comp): Handle DEMANGLE_COMPONENT_JAVA_RESOURCE,
	DEMANGLE_COMPONENT_COMPOUND_NAME, and
	DEMANGLE_COMPONENT_CHARACTER cases.
	* testsuite/demangle-expected: Add test for java resource name
	mangling.
2008-01-27 06:25:45 +00:00
DJ Delorie
8969a67f0a merge from gcc 2007-08-31 20:20:49 +00:00
Michael Snyder
168b82983a 2007-07-31 Michael Snyder <msnyder@access-company.com>
* cp-demangle.c (d_print_comp): Guard against null.
2007-08-01 19:43:08 +00:00
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
DJ Delorie
208c16740c merge from gcc 2007-01-30 23:16:58 +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
abf6a75b42 merge from gcc 2005-05-24 21:01:33 +00:00
Nick Clifton
979c05d324 Update the address and phone number of the FSF organization. 2005-05-10 15:33:34 +00:00
Ian Lance Taylor
b31a49d78d * cp-demangle.c: Update copyright. 2005-04-02 17:18:43 +00:00
DJ Delorie
e064c173c6 merge from gcc 2005-03-28 17:14:34 +00:00
DJ Delorie
9334f9c6cd merge from gcc 2005-03-27 05:28:42 +00:00
Jason Merrill
aca9a74241 * cp-demangle.c (__cxa_demangle): Change resolution of ambiguous
arguments.
2005-02-13 06:58:55 +00:00
DJ Delorie
eb129e357a merge from gcc 2004-11-24 03:00:34 +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
Daniel Jacobowitz
2d6520ee20 * cp-demangle.c (d_make_comp): DEMANGLE_COMPONENT_CONSTRUCTION_VTABLE
takes two parameters.
	* cp-demint.c (cplus_demangle_fill_component): Likewise.
2004-01-13 21:34:31 +00:00
DJ Delorie
5972747385 merge from gcc 2004-01-12 21:24:38 +00:00
DJ Delorie
820542c970 merge from gcc 2004-01-02 21:11:34 +00:00
DJ Delorie
2f9c405836 merge from gcc 2003-12-26 16:27:37 +00:00
DJ Delorie
b6fb00c07b merge from gcc 2003-12-22 16:03:32 +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
51948b34c5 merge from gcc 2003-11-25 22:35:33 +00:00
DJ Delorie
6d95373e7c merge from gcc 2003-11-24 19:33:33 +00:00
DJ Delorie
54a962d927 merge from gcc 2003-11-21 22:01:27 +00:00
DJ Delorie
d00edca556 merge from gcc 2003-11-21 17:42:45 +00:00
DJ Delorie
dd9d4b48fd merge from gcc 2003-11-20 02:01:32 +00:00
DJ Delorie
0976f6a782 merge from gcc 2003-11-19 16:19:14 +00:00
DJ Delorie
9ad1aa2911 merge from gcc 2003-08-12 12:23:42 +00:00
DJ Delorie
8730135a67 merge from gcc 2003-05-03 17:14:52 +00:00
DJ Delorie
585cc78f65 merge from gcc 2002-09-20 13:45:20 +00:00
DJ Delorie
b851d07bfd merge from gcc 2002-07-10 00:01:58 +00:00
DJ Delorie
2a9dffbf14 merge from gcc 2002-07-09 01:01:18 +00:00
DJ Delorie
793011ca4e merge from gcc 2002-07-02 04:09:35 +00:00
DJ Delorie
0c4460bb3c merge from gcc 2002-04-01 22:01:20 +00:00
DJ Delorie
f2160d2bd1 merge from gcc 2002-03-30 06:17:57 +00:00
DJ Delorie
35efcd67ac merge from gcc 2002-03-12 21:11:11 +00:00
DJ Delorie
44354ae183 merge from gcc 2002-02-05 17:53:17 +00:00
DJ Delorie
42da15d6b3 merge from gcc 2002-02-03 13:12:45 +00:00
DJ Delorie
b117c15877 merge from gcc 2002-02-01 21:20:30 +00:00
DJ Delorie
c78d91b126 merge from gcc 2002-02-01 01:34:09 +00:00
DJ Delorie
2c955b8b61 merge from gcc 2002-01-31 02:21:27 +00:00
DJ Delorie
c23795e245 merge from gcc 2002-01-03 00:25:57 +00:00
DJ Delorie
e6450fe561 merge from gcc 2001-10-07 17:24:36 +00:00
DJ Delorie
e7e9b06936 merge from gcc 2001-08-09 00:05:37 +00:00
DJ Delorie
457161bf17 merge from gcc 2001-05-08 14:35:18 +00:00
DJ Delorie
079c672a7a merge from gcc 2001-03-23 23:57:50 +00:00
Jim Blandy
a88e356aab * cp-demangle.c (string_list_delete): Don't forget to free the
actual contents of the string.
2001-03-22 15:16:04 +00:00
Jim Blandy
e61231f114 * libiberty/cp-demangle.c (struct demangling_def): New fields:
is_constructor and is_destructor.
(demangling_new): Initialize them.
(demangle_ctor_dtor_name): Set them, if we detect a constructor
or destructor.
(demangle_v3_with_details, is_gnu_v3_mangled_ctor,
is_gnu_v3_mangled_dtor): New functions.

* include/demangle.h (enum gnu_v3_constructor_kinds,
is_gnu_v3_mangled_ctor, enum gnu_v3_destructor_kinds,
is_gnu_v3_mangled_dtor): New declarations.
2001-03-20 18:22:38 +00:00
DJ Delorie
bc9bf2596e merge from gcc 2001-02-02 18:58:51 +00:00
DJ Delorie
849ee22471 * cp-demangle.c (cplus_demangle_v3): Check that it's a v3 mangled
name before allocating the dyn_string.
2000-12-05 19:08:13 +00:00
DJ Delorie
e49a569c10 * cp-demangle.c: s/new_abi/v3/.
* cplus-dem.c: Likewise.
(current_demangling_style): Now auto_demangling.
(cplus_demangle): Try v3 demangling if AUTO_DEMANGLING.
(main): Use standard symbol chars for auto_demangling.
2000-12-05 16:51:29 +00:00
DJ Delorie
59666b35a8 [merge from gcc]
* cp-demangle.c (string_list_def): Add caret_position and comments.
(result_caret_pos): New macro.
(result_append_string): Rename to...
(result_add_string): ... this, and insert at caret position.
Rename throughout.
(result_append): Rename to...
(result_add): ... this, and insert at caret position.  Rename
throughout.
(result_append_char): Rename to...
(result_add_char): ... this, and insert at caret position.  Rename
throughout.
(result_append_space): Remove.
(string_list_new): Initialize caret position.
(result_add_separated_char): Use caret position.
(result_get_caret): New funtion.
(result_set_caret): Likewise.
(result_shift_caret): Likewise.
(result_previous_char_is_space): Likewise.
(substitution_start): Use caret position.
(substitution_add): Likewise.
(demangling_new): Initialize caret position.
(demangle_encoding): Use caret position.
(demanglin_nested_name): Put CV qualifiers after name.
(demangle_type_ptr): Use switch statement.  Handle pointers to
arrays.  Don't use result_append_space.  Use caret position.
(demangle_type): Emit CV qualifiers after underlying type.  Adjust
call to demangle_array_type.
(demangle_array_type): Add parameter to handle pointers to arrays.
2000-10-23 15:30:54 +00:00
DJ Delorie
74bcd5294f merge from gcc repository 2000-10-12 02:16:48 +00:00
Jeff Law
b123325783 * cp-demangle.c, mkstemps.c: #include <sys/types.h>. 2000-07-23 15:58:11 +00:00
Jason Merrill
03d5f569de merge with gcc 2000-07-20 18:56:16 +00:00
H.J. Lu
eb383413c2 Synced with libiberty in the gcc repository. 2000-06-15 20:56:25 +00:00