aboutsummaryrefslogtreecommitdiff
path: root/bfd/elflink.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1997-03-13 19:24:20 +0000
committerIan Lance Taylor <ian@airs.com>1997-03-13 19:24:20 +0000
commit37897db02caa2a3a99ca6dc873c4fb72d468dd1d (patch)
tree0db38911c5bc7b5f6e60c7dd8e55d396cc28328e /bfd/elflink.h
parent94ba939aaed3ff9257a74308e49ffc514aa8b850 (diff)
downloadgdb-37897db02caa2a3a99ca6dc873c4fb72d468dd1d.zip
gdb-37897db02caa2a3a99ca6dc873c4fb72d468dd1d.tar.gz
gdb-37897db02caa2a3a99ca6dc873c4fb72d468dd1d.tar.bz2
* elflink.h (elf_link_add_object_symbols): Don't warn about type
or size changes because of a weak symbol. PR 11827.
Diffstat (limited to 'bfd/elflink.h')
-rw-r--r--bfd/elflink.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/bfd/elflink.h b/bfd/elflink.h
index b6a5d58..dee5a8a 100644
--- a/bfd/elflink.h
+++ b/bfd/elflink.h
@@ -861,9 +861,11 @@ elf_link_add_object_symbols (abfd, info)
h = (struct elf_link_hash_entry *) h->root.u.i.link;
/* It's OK to change the type if it used to be a weak
- definition. */
+ definition, or if the current definition is weak (and
+ hence might be ignored). */
if (h->root.type == bfd_link_hash_defweak
- || h->root.type == bfd_link_hash_undefweak)
+ || h->root.type == bfd_link_hash_undefweak
+ || bind == STB_WEAK)
type_change_ok = true;
/* It's OK to change the size if it used to be a weak