diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elflink.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5dcf47b..605c795 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,10 @@ 2007-02-12 Alan Modra <amodra@bigpond.net.au> + * elflink.c (evaluate_complex_relocation_symbols): Ignore relocs + with a zero symbol index. + +2007-02-12 Alan Modra <amodra@bigpond.net.au> + * elflink.c (bfd_elf_discard_info): Tidy setting of "eh". 2007-02-05 Dave Brolley <brolley@redhat.com> diff --git a/bfd/elflink.c b/bfd/elflink.c index 0b40641..d76faae 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -6769,7 +6769,10 @@ evaluate_complex_relocation_symbols (bfd * input_bfd, index = ELF32_R_SYM (rel->r_info); if (bed->s->arch_size == 64) index >>= 24; - + + if (index == STN_UNDEF) + continue; + if (index < locsymcount) { /* The symbol is local. */ |