From: Jason Merrill Date: Sun, 13 Feb 2005 06:58:20 +0000 (-0500) Subject: cp-demangle.c (__cxa_demangle): Change resolution of ambiguous arguments. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b8b3c655b01914f3164c267320d6ef16d2d36ac0;p=gcc.git cp-demangle.c (__cxa_demangle): Change resolution of ambiguous arguments. * cp-demangle.c (__cxa_demangle): Change resolution of ambiguous arguments. From-SVN: r94980 --- 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)