* linker.c (_bfd_link_hash_newfunc): Set all local fields.
authorAlan Modra <amodra@gmail.com>
Thu, 3 Feb 2005 13:54:30 +0000 (13:54 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 3 Feb 2005 13:54:30 +0000 (13:54 +0000)
bfd/ChangeLog
bfd/linker.c

index 21e8a92..72eaad8 100644 (file)
@@ -1,5 +1,9 @@
 2005-02-03  Alan Modra  <amodra@bigpond.net.au>
 
+       * linker.c (_bfd_link_hash_newfunc): Set all local fields.
+
+2005-02-03  Alan Modra  <amodra@bigpond.net.au>
+
        * linker.c (_bfd_generic_link_add_one_symbol): Set u.undef.weak.
        * elflink.c (elf_smash_syms): Restore symbols that were undefweak
        before the as-needed lib was loaded.  Abort on unexpected refs.
index 5868b95..f940d32 100644 (file)
@@ -455,7 +455,9 @@ _bfd_link_hash_newfunc (struct bfd_hash_entry *entry,
 
       /* Initialize the local fields.  */
       h->type = bfd_link_hash_new;
-      h->u.undef.next = NULL;
+      memset (&h->u.undef.next, 0,
+             (sizeof (struct bfd_link_hash_entry)
+              - offsetof (struct bfd_link_hash_entry, u.undef.next)));
     }
 
   return entry;