From: Ian Lance Taylor Date: Tue, 8 Oct 1996 18:50:59 +0000 (+0000) Subject: * elflink.h (elf_link_add_object_symbols): If a symbol is a weak X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1c4794f58f892986b25fcf390c4e967bda6e19fa;p=binutils-gdb.git * elflink.h (elf_link_add_object_symbols): If a symbol is a weak definition in a dynamic object, add it to the dynamic symbol table if any dynamic object mentions it. Reverts part of last patch. PR 10827. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e05cd4c58f7..1b0f8d017c2 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -5,6 +5,10 @@ Tue Oct 8 08:51:19 1996 Stu Grossman (grossman@critters.cygnus.com) Tue Oct 8 11:40:16 1996 Ian Lance Taylor + * elflink.h (elf_link_add_object_symbols): If a symbol is a weak + definition in a dynamic object, add it to the dynamic symbol table + if any dynamic object mentions it. Reverts part of last patch. + * sunos.c (struct sunos_link_hash_table): Add got_base field. (sunos_link_hash_table_create): Initialize got_base. (bfd_sunos_size_dynamic_sections): If the .got section is more diff --git a/bfd/elflink.h b/bfd/elflink.h index dae7597835b..dcc5827db30 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -828,7 +828,10 @@ elf_link_add_object_symbols (abfd, info) else new_flag = ELF_LINK_HASH_DEF_DYNAMIC; if ((old_flags & (ELF_LINK_HASH_DEF_REGULAR - | ELF_LINK_HASH_REF_REGULAR)) != 0) + | ELF_LINK_HASH_REF_REGULAR)) != 0 + || (h->weakdef != NULL + && (old_flags & (ELF_LINK_HASH_DEF_DYNAMIC + | ELF_LINK_HASH_REF_DYNAMIC)) != 0)) dynsym = true; }