From 82a9579c066928ea651d26bacd53a90be20ba1b2 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 5 Jun 2000 20:46:21 +0000 Subject: [PATCH] 2000-06-05 H.J. Lu * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag an error when seeing an undefined symbol with hidden/internal attribute. It is handled in *_relocate_section (). --- bfd/ChangeLog | 6 ++++++ bfd/elflink.c | 17 ++--------------- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4d07a187d..ddced7919 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,11 @@ 2000-06-05 H.J. Lu + * elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag + an error when seeing an undefined symbol with hidden/internal + attribute. It is handled in *_relocate_section (). + +2000-06-05 H.J. Lu + * elflink.h (elf_fix_symbol_flags): Follow the link for the indirect symbol for the ELF_LINK_NON_ELF bit. (elf_link_output_extsym): Don't output the indirect symbol even diff --git a/bfd/elflink.c b/bfd/elflink.c index c593e496f..8039b4fe3 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -226,21 +226,8 @@ _bfd_elf_link_record_dynamic_symbol (info, h) { case STV_INTERNAL: case STV_HIDDEN: - /* This symbol must be defined in the shared object or - executable. */ - if (h->root.type == bfd_link_hash_undefined) - { - bfd * abfd = h->root.u.undef.abfd; - const char * name = h->root.root.string; - - (*info->callbacks->undefined_symbol) - (info, name, abfd, bfd_und_section_ptr, 0, true); - - /* We have flaged a fatal error. We now treat this as - a normal symbol to avoid further error messages. */ - h->other ^= ELF_ST_VISIBILITY (h->other); - } - else if (h->root.type != bfd_link_hash_undefweak) + if (h->root.type != bfd_link_hash_undefined + && h->root.type != bfd_link_hash_undefweak) { h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL; return true; -- 2.11.4.GIT