diff options
author | Ian Lance Taylor <ian@airs.com> | 1997-06-26 16:06:03 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1997-06-26 16:06:03 +0000 |
commit | 677525e961543526a86d8497ab051f4a06195104 (patch) | |
tree | 448c8ab4c6ae0d835fd222901345b81801511168 | |
parent | 20db24950cc296d9308620b6aee0f4eb6006c29e (diff) | |
download | gdb-677525e961543526a86d8497ab051f4a06195104.zip gdb-677525e961543526a86d8497ab051f4a06195104.tar.gz gdb-677525e961543526a86d8497ab051f4a06195104.tar.bz2 |
* elflink.h (elf_link_add_object_symbols): When a version
indirection symbol is overridden, make the original symbol point
at the real overriding symbol.
-rw-r--r-- | bfd/ChangeLog | 4 | ||||
-rw-r--r-- | bfd/elflink.h | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 272c89d..aa5b956 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,9 @@ Thu Jun 26 01:26:31 1997 Ian Lance Taylor <ian@cygnus.com> + * elflink.h (elf_link_add_object_symbols): When a version + indirection symbol is overridden, make the original symbol point + at the real overriding symbol. + * elf.c (bfd_elf_string_from_elf_section): Check for an invalid string index. diff --git a/bfd/elflink.h b/bfd/elflink.h index 82e10d2..a40e1d4 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -1411,6 +1411,10 @@ elf_link_add_object_symbols (abfd, info) mapped to the definition in the regular object. */ + while (hi->root.type == bfd_link_hash_indirect + || hi->root.type == bfd_link_hash_warning) + hi = (struct elf_link_hash_entry *) hi->root.u.i.link; + h->root.type = bfd_link_hash_indirect; h->root.u.i.link = (struct bfd_link_hash_entry *) hi; if (h->elf_link_hash_flags & ELF_LINK_HASH_DEF_DYNAMIC) |