summaryrefslogtreecommitdiffstats
path: root/contrib/binutils/bfd/elflink.c
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2000-11-15 20:52:56 +0000
committerobrien <obrien@FreeBSD.org>2000-11-15 20:52:56 +0000
commit58a790571531103aac1af77ce3ede9485ee1798d (patch)
tree0c15e6d73e6b72e4827681b4de1c8e83e2c90f5d /contrib/binutils/bfd/elflink.c
parent7c4d7cfec1e42798f40e828b4f7a6350815ad9b7 (diff)
downloadFreeBSD-src-58a790571531103aac1af77ce3ede9485ee1798d.zip
FreeBSD-src-58a790571531103aac1af77ce3ede9485ee1798d.tar.gz
Import of GNU Binutils version 2.10.1.
Believe it or not, this is heavily stripped down.
Diffstat (limited to 'contrib/binutils/bfd/elflink.c')
-rw-r--r--contrib/binutils/bfd/elflink.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/contrib/binutils/bfd/elflink.c b/contrib/binutils/bfd/elflink.c
index 6534d84..8039b4f 100644
--- a/contrib/binutils/bfd/elflink.c
+++ b/contrib/binutils/bfd/elflink.c
@@ -226,20 +226,13 @@ _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)
+ if (h->root.type != bfd_link_hash_undefined
+ && h->root.type != bfd_link_hash_undefweak)
{
- 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);
+ h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL;
+ return true;
}
-
- h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL;
- break;
-
+
default:
break;
}
OpenPOWER on IntegriCloud