diff options
-rw-r--r-- | bfd/ChangeLog | 4 | ||||
-rw-r--r-- | bfd/elflink.c | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index ef863dc..957841e 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,7 @@ +2005-07-30 David Daney <ddaney@avtrex.com> + + * elflink.c (elf_gc_sweep): Set dynsymcount to correct value. + 2005-07-29 David Daney <ddaney@avtrex.com> * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Ignore _gp_disp diff --git a/bfd/elflink.c b/bfd/elflink.c index 092119a..082b530 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -8943,6 +8943,12 @@ elf_gc_sweep (struct bfd_link_info *info, gc_sweep_hook_fn gc_sweep_hook) elf_link_hash_traverse (elf_hash_table (info), elf_gc_sweep_symbol, &i); + /* There is an unused NULL entry at the head of the table which + we must account for in our count. Unless there weren't any + symbols, which means we'll have no table at all. */ + if (i != 0) + ++i; + elf_hash_table (info)->dynsymcount = i; } |