Remove support for old gnu v2 name mangling.

PR 24044
	* cxxfilt.c (hp_symbol_characters): Delete.
	(main): Remove depcreated demangling styles.
	* stabs.c (parse_stab_argtypes): Remove support for old gnu v2
	demangling opnames.
	* testsuite/binutils-all/cxxfilt.exp: Use the
	--no-strip-underscore option for targets that do prefix their
	symbols with underscores.
	Update tests to elimiate those that use gnu v2 encoding.
This commit is contained in:
Nick Clifton
2019-01-08 16:53:02 +00:00
parent c8fcc36012
commit 236f4ebe3a
4 changed files with 54 additions and 72 deletions

View File

@@ -3037,27 +3037,15 @@ parse_stab_argtypes (void *dhandle, struct stab_handle *info,
&& fieldname[1] == 'p'
&& (fieldname[2] == '$' || fieldname[2] == '.'))
{
const char *opname;
/* Opname selection is no longer supported by libiberty's demangler. */
return DEBUG_TYPE_NULL;
}
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);
}
physname = (char *) xmalloc (mangled_name_len);
if (is_constructor)
physname[0] = '\0';
else
{
physname = (char *) xmalloc (mangled_name_len);
if (is_constructor)
physname[0] = '\0';
else
strcpy (physname, fieldname);
}
strcpy (physname, fieldname);
physname_len = strlen (physname);
strcat (physname, buf);