diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 4 | ||||
-rw-r--r-- | bfd/linker.c | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 21e8a92..72eaad8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -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. diff --git a/bfd/linker.c b/bfd/linker.c index 5868b95..f940d32 100644 --- a/bfd/linker.c +++ b/bfd/linker.c @@ -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; |