diff options
Diffstat (limited to 'bfd/elflink.h')
-rw-r--r-- | bfd/elflink.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/bfd/elflink.h b/bfd/elflink.h index 39f8811..3879dbc 100644 --- a/bfd/elflink.h +++ b/bfd/elflink.h @@ -3615,11 +3615,12 @@ elf_fix_symbol_flags (h, eif) if ((weakdef->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) != 0) h->weakdef = NULL; else - weakdef->elf_link_hash_flags |= - (h->elf_link_hash_flags - & (ELF_LINK_HASH_REF_REGULAR - | ELF_LINK_HASH_REF_REGULAR_NONWEAK - | ELF_LINK_NON_GOT_REF)); + { + struct elf_backend_data *bed; + + bed = get_elf_backend_data (elf_hash_table (eif->info)->dynobj); + (*bed->elf_backend_copy_indirect_symbol) (weakdef, h); + } } return true; |