From f41d945baeff0467b6f35aba7a3d54ec916f90af Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 26 Jul 2005 15:19:37 +0000 Subject: [PATCH] * elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition regardless of strength of previous definition. --- bfd/ChangeLog | 5 +++++ bfd/elflink.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 062d9e4fe0e..ff5c1bc2886 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2005-07-27 Alan Modra + + * elflink.c (_bfd_elf_merge_symbol): Skip weak redefinition + regardless of strength of previous definition. + 2005-07-26 Alan Modra * elflink.c (elf_gc_mark_dynamic_ref_symbol): Handle -shared. diff --git a/bfd/elflink.c b/bfd/elflink.c index 102b895f0a4..98fee0ce4b4 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -1216,7 +1216,7 @@ _bfd_elf_merge_symbol (bfd *abfd, } /* Skip weak definitions of symbols that are already defined. */ - if (newdef && olddef && newweak && !oldweak) + if (newdef && olddef && newweak) *skip = TRUE; /* If the old symbol is from a dynamic object, and the new symbol is -- 2.30.2