Revert "Sync libiberty sources with master version in gcc repository. Updated stabs demangling and cxxfilt tests to match."

The previous commit breaks the GDB build, which is still using functions
cplus_demangle_opname & co.  Since removing these usages is not an
obvious fix, let's revert this patch until we get rid of them.
This commit is contained in:
Simon Marchi
2019-01-07 18:05:36 -05:00
parent 053af8c903
commit 4ae80ffc55
7 changed files with 8012 additions and 133 deletions

View File

@ -3037,15 +3037,27 @@ parse_stab_argtypes (void *dhandle, struct stab_handle *info,
&& fieldname[1] == 'p'
&& (fieldname[2] == '$' || fieldname[2] == '.'))
{
/* Opname selection is no longer supported by libiberty's demangler. */
return DEBUG_TYPE_NULL;
}
const char *opname;
physname = (char *) xmalloc (mangled_name_len);
if (is_constructor)
physname[0] = '\0';
opname = cplus_mangle_opname (fieldname + 3, 0);
if (opname == NULL)
{
fprintf (stderr, _("No mangling for \"%s\"\n"), fieldname);
return DEBUG_TYPE_NULL;
}
mangled_name_len += strlen (opname);
physname = (char *) xmalloc (mangled_name_len);
strncpy (physname, fieldname, 3);
strcpy (physname + 3, opname);
}
else
strcpy (physname, fieldname);
{
physname = (char *) xmalloc (mangled_name_len);
if (is_constructor)
physname[0] = '\0';
else
strcpy (physname, fieldname);
}
physname_len = strlen (physname);
strcat (physname, buf);