* elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong
definition has already been seen.
+2005-05-01 Paul Brook <paul@codesourcery.com>
+
+ * elflink.c (_bfd_elf_merge_symbol): Skip weak definitions if a strong
+ definition has already been seen.
+
2005-05-01 Paul Brook <paul@codesourcery.com>
* elf32-arm.c (bfd_elf32_arm_process_before_allocation): Treat
|| h->root.type == bfd_link_hash_undefined)
*size_change_ok = TRUE;
+ /* Skip weak definitions of symbols that are already defined. */
+ if (newdef && olddef && newweak && !oldweak)
+ {
+ *skip = TRUE;
+ return TRUE;
+ }
+
/* NEWDYNCOMMON and OLDDYNCOMMON indicate whether the new or old
symbol, respectively, appears to be a common symbol in a dynamic
object. If a symbol appears in an uninitialized section, and is