* elfread.c (elf_symtab_read): Install versioned symbol under

unversioned name as well.
This commit is contained in:
Tom Tromey 2013-04-15 17:31:17 +00:00
parent 8de20a37d6
commit 715c6909e2
2 changed files with 20 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2013-04-15 Tom Tromey <tromey@redhat.com>
* elfread.c (elf_symtab_read): Install versioned symbol under
unversioned name as well.
2013-04-15 Tom Tromey <tromey@redhat.com>
PR c++/11990:

View File

@ -574,6 +574,21 @@ elf_symtab_read (struct objfile *objfile, int type,
gdbarch_elf_make_msymbol_special (gdbarch, sym, msym);
}
/* If we see a default versioned symbol, install it under
its version-less name. */
if (msym != NULL)
{
const char *atsign = strchr (sym->name, '@');
if (atsign != NULL && atsign[1] == '@' && atsign > sym->name)
{
int len = atsign - sym->name;
record_minimal_symbol (sym->name, len, 1, symaddr,
ms_type, sym->section, objfile);
}
}
/* For @plt symbols, also record a trampoline to the
destination symbol. The @plt symbol will be used in
disassembly, and the trampoline will be used when we are