OSDN Git Service

* elflink.c (bfd_elf_record_link_assignment): Mark undefweak and
authoraoliva <aoliva>
Wed, 3 Mar 2004 21:31:10 +0000 (21:31 +0000)
committeraoliva <aoliva>
Wed, 3 Mar 2004 21:31:10 +0000 (21:31 +0000)
undefined symbols as hash_new.

bfd/ChangeLog
bfd/elflink.c

index 83c4f41..e0da01f 100644 (file)
@@ -1,3 +1,8 @@
+2004-03-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       * elflink.c (bfd_elf_record_link_assignment): Mark undefweak and
+       undefined symbols as hash_new.
+
 2003-03-03  Andrew Stubbs  <andrew.stubbs@superh.com>
 
        * archures.c: Add bfd_mach_sh4_nommu_nofpu.
index b992c39..5051364 100644 (file)
@@ -430,6 +430,13 @@ bfd_elf_record_link_assignment (bfd *output_bfd ATTRIBUTE_UNUSED,
   if (h == NULL)
     return FALSE;
 
+  /* Since we're defining the symbol, don't let it seem to have not
+     been defined.  record_dynamic_symbol and size_dynamic_sections
+     may depend on this.  */
+  if (h->root.type == bfd_link_hash_undefweak
+      || h->root.type == bfd_link_hash_undefined)
+    h->root.type = bfd_link_hash_new;
+
   if (h->root.type == bfd_link_hash_new)
     h->elf_link_hash_flags &= ~ELF_LINK_NON_ELF;