PR ld/12365
authorAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 00:11:33 +0000 (00:11 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 20 Apr 2011 00:11:33 +0000 (00:11 +0000)
commit24f58f47de96a6c061fc6eeb37a699c03dde970a
tree6d218f4096841f46c906ecab5f7090df8723161e
parent43a8278ee9e14776343b7b3692650b130c301363
PR ld/12365
include/
* bfdlink.h (struct bfd_link_callbacks): Modify multiple_definition
and multiple_common parameters to pass in a bfd_link_hash_entry
pointer rather than name,bfd etc. found in the hash entry.
bfd/
* elflink.c (_bfd_elf_merge_symbol): Update multiple_common calls.
* linker.c (_bfd_generic_link_add_one_symbol): Likewise.  Call
multiple_definition regardless of allow_multiple_definition.
* simple.c (simple_dummy_multiple_definition): Update.
* xcofflink.c (xcoff_link_add_symbols): Update multiple_definition
calls.
ld/
* ldmain.c (multiple_definition): Take a bfd_link_hash_entry
pointer arg rather than "name", "obfd", "osec", "oval".  Add code
removed from linker.c.  Hack around xcofflink.c oddity in
passing NULL nbfd.
(multiple_common): Similarly.
* plugin.c (orig_allow_multiple_defs): Delete.
(plugin_call_all_symbols_read): Don't twiddle allow_multiple_definition.
(plugin_multiple_definition): Update.
bfd/ChangeLog
bfd/elflink.c
bfd/linker.c
bfd/simple.c
bfd/xcofflink.c
include/ChangeLog
include/bfdlink.h
ld/ChangeLog
ld/ldmain.c
ld/plugin.c