From d9de0b06fda6fc5283267b50f362e21eebd660dd Mon Sep 17 00:00:00 2001 From: jason Date: Sun, 13 Feb 2005 06:58:20 +0000 Subject: [PATCH] * cp-demangle.c (__cxa_demangle): Change resolution of ambiguous arguments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@94980 138bc75d-0d04-0410-961f-82ee72b054a4 --- libiberty/ChangeLog | 5 +++++ libiberty/cp-demangle.c | 15 --------------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index adbb2498124..1d801adf38f 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,8 @@ +2005-02-13 Jason Merrill + + * cp-demangle.c (__cxa_demangle): Change resolution of ambiguous + arguments. + 2005-01-11 Tobias Schl"uter * hex.c (hex_value): Group 'unsigned int' together to get correct diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index 5707aa20aa2..c4436d7d7d5 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -4047,21 +4047,6 @@ __cxa_demangle (mangled_name, output_buffer, length, status) return NULL; } - /* The specification for __cxa_demangle() is that if the mangled - name could be either an extern "C" identifier, or an internal - built-in type name, then we resolve it as the identifier. All - internal built-in type names are a single lower case character. - Frankly, this simplistic disambiguation doesn't make sense to me, - but it is documented, so we implement it here. */ - if (IS_LOWER (mangled_name[0]) - && mangled_name[1] == '\0' - && cplus_demangle_builtin_types[mangled_name[0] - 'a'].name != NULL) - { - if (status != NULL) - *status = -2; - return NULL; - } - demangled = d_demangle (mangled_name, DMGL_PARAMS | DMGL_TYPES, &alc); if (demangled == NULL) -- 2.11.4.GIT