Thu Nov 6 09:28:00 GMT 2014
Looks like all the aout targets are broken, and sh-pe. In addition, I
cris-elf +FAIL: ld-cris/undef2
cris-elf +FAIL: ld-cris/warn3
mmix +FAIL: ld-mmix/b-loc64k
So far I've only investigated the aout failures which are all due to
* aoutx.h (slurp_symbol_table): Check that computed table size is
not bigger than the file from which is it being read.
Nick, you're comparing the size of the *internal* symbol array with
the file size. Obviously you ought to be looking at the external
symbol table size if comparing against file size, but you've already
read the external symbols by this stage so the check there doesn't
make sense. A check in aout_get_external_symbols might make some
sense, but why not just let bfd_malloc or bfd_seek/bfd_bread report
the failure? bfd_get_size, ie. stat isn't free. What is it you're
really trying to prevent?
Another thing, the places where you return FALSE after failing sanity
checks ought to be calling bfd_set_error.
Australia Development Lab, IBM
More information about the Binutils