Index: elf64-sparc.c =================================================================== RCS file: /cvs/src/src/bfd/elf64-sparc.c,v retrieving revision 1.100 diff -u -p -r1.100 elf64-sparc.c --- elf64-sparc.c 9 Jan 2005 19:48:28 -0000 1.100 +++ elf64-sparc.c 9 Jan 2005 20:42:34 -0000 @@ -1680,7 +1680,11 @@ sparc64_elf_adjust_dynamic_symbol (info, || h->root.type == bfd_link_hash_defweak) && (h->root.u.def.section->flags & SEC_CODE) != 0)) { - if (! elf_hash_table (info)->dynamic_sections_created) + if (! info->shared + && !h->def_dynamic + && !h->ref_dynamic + && h->root.type != bfd_link_hash_undefweak + && h->root.type != bfd_link_hash_undefined) { /* This case can occur if we saw a WPLT30 reloc in an input file, but none of the input files were dynamic objects.