From 1b9ee6a2f0ff431cced5f27b28a2a9094abe7ae7 Mon Sep 17 00:00:00 2001 From: David Daney Date: Sun, 31 Jul 2005 06:14:15 +0000 Subject: [PATCH] * elflink.c (elf_gc_sweep): Set dynsymcount to correct value. --- bfd/ChangeLog | 4 ++++ bfd/elflink.c | 6 ++++++ 2 files changed, 10 insertions(+) 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 + + * elflink.c (elf_gc_sweep): Set dynsymcount to correct value. + 2005-07-29 David Daney * 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; } -- 2.7.4