From: Alan Modra Date: Sat, 14 Dec 2013 02:40:04 +0000 (+1030) Subject: Correct elf_merge_st_other arguments for weak symbols X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=57fa7b8c7e59e35bced580f9bcb9668af43fdbce;p=binutils-gdb.git Correct elf_merge_st_other arguments for weak symbols * elflink.c (_bfd_elf_merge_symbol): If merging a new weak symbol that will be skipped, we don't have a new definition. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index ce6fc956deb..60d6e0cd089 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2013-12-14 Alan Modra + + * elflink.c (_bfd_elf_merge_symbol): If merging a new weak + symbol that will be skipped, we don't have a new definition. + 2013-12-13 Kuan-Lin Chen Wei-Cheng Wang diff --git a/bfd/elflink.c b/bfd/elflink.c index 6fa62f9b0be..7dcafd67f1e 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -1437,7 +1437,10 @@ _bfd_elf_merge_symbol (bfd *abfd, if (!(oldbfd != NULL && (oldbfd->flags & BFD_PLUGIN) != 0 && (abfd->flags & BFD_PLUGIN) == 0)) - *skip = TRUE; + { + newdef = FALSE; + *skip = TRUE; + } /* Merge st_other. If the symbol already has a dynamic index, but visibility says it should not be visible, turn it into a