diff options
author | Nick Clifton <nickc@redhat.com> | 2006-05-09 11:47:48 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2006-05-09 11:47:48 +0000 |
commit | 081e441d109180dcf2faa2b3806e1167cc7ee64d (patch) | |
tree | ba3f1ab93201a13db3bc44778778337621b85b1f /bfd/coffcode.h | |
parent | a33e4f57f076751054ec38519a3cab1999db4d2d (diff) | |
download | binutils-redhat-081e441d109180dcf2faa2b3806e1167cc7ee64d.tar.gz |
* config/tc-arm.c (arm_fix_adjustable): For COFF, convert fixups against
symbols which are not going to be placed into the symbol table.
* coffcode.h (coff_write_relocs): Produce an error message if a an
out-of-range symbol index is detected in a reloc.
Diffstat (limited to 'bfd/coffcode.h')
-rw-r--r-- | bfd/coffcode.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 6eae4a35d7..badb214470 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -2532,11 +2532,15 @@ coff_write_relocs (bfd * abfd, int first_undef) else { n.r_symndx = get_index ((*(q->sym_ptr_ptr))); - /* Take notice if the symbol reloc points to a symbol - we don't have in our symbol table. What should we - do for this?? */ + /* Check to see if the symbol reloc points to a symbol + we don't have in our symbol table. */ if (n.r_symndx > obj_conv_table_size (abfd)) - abort (); + { + bfd_set_error (bfd_error_bad_value); + _bfd_error_handler (_("%B: reloc against a non-existant symbol index: %ld"), + abfd, n.r_symndx); + return FALSE; + } } } |