aboutsummaryrefslogtreecommitdiff
path: root/bfd/elflink.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2011-10-19 05:24:38 +0000
committerAlan Modra <amodra@gmail.com>2011-10-19 05:24:38 +0000
commit371a586695a0e5d47ecfc014ecef4c657c046fca (patch)
treedcfd5d8e387dbb8ab0af8c1f0af9d9071bd94e5c /bfd/elflink.c
parentc192a1336807cc9515666b1ba5028b6e36d91a3a (diff)
downloadgdb-371a586695a0e5d47ecfc014ecef4c657c046fca.zip
gdb-371a586695a0e5d47ecfc014ecef4c657c046fca.tar.gz
gdb-371a586695a0e5d47ecfc014ecef4c657c046fca.tar.bz2
PR ld/13311
* elflink.c (elf_link_output_extsym): Correct test for warning when forced local executable syms are referenced from shared libraries.
Diffstat (limited to 'bfd/elflink.c')
-rw-r--r--bfd/elflink.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/bfd/elflink.c b/bfd/elflink.c
index bd1f2f2..9956e81 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -8659,10 +8659,11 @@ elf_link_output_extsym (struct bfd_hash_entry *bh, void *data)
/* We should also warn if a forced local symbol is referenced from
shared libraries. */
- if (! finfo->info->relocatable
- && (! finfo->info->shared)
+ if (!finfo->info->relocatable
+ && finfo->info->executable
&& h->forced_local
&& h->ref_dynamic
+ && h->def_regular
&& !h->dynamic_def
&& !h->dynamic_weak
&& ! elf_link_check_versioned_symbol (finfo->info, bed, h))