* cp-demangle.c (__cxa_demangle): Change resolution of ambiguous

arguments.
This commit is contained in:
Jason Merrill 2005-02-13 06:58:55 +00:00
parent eed5120384
commit aca9a74241
2 changed files with 5 additions and 15 deletions

View file

@ -1,3 +1,8 @@
2005-02-13 Jason Merrill <jason@redhat.com>
* cp-demangle.c (__cxa_demangle): Change resolution of ambiguous
arguments.
2005-01-11 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
* hex.c (hex_value): Group 'unsigned int' together to get correct

View file

@ -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)