diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 9 | ||||
-rw-r--r-- | bfd/cofflink.c | 15 |
2 files changed, 24 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c151aef..30df566 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,12 @@ +2001-07-03 Mark Elbrecht <snowball3@softhome.net> + + * cofflink.c (_bfd_coff_link_input_bfd): Skip section symbols from + sections being discarded. + +2001-07-03 Nick Clifton <nickc@cambridge.redhat.com> + + * cofflink.c (_bfd_coff_link_input_bfd): + 2001-06-30 Alan Modra <amodra@bigpond.net.au> * elfcore.h (elf_core_file_p): Call bfd_section_from_phdr directly diff --git a/bfd/cofflink.c b/bfd/cofflink.c index 96b005b..47716ac 100644 --- a/bfd/cofflink.c +++ b/bfd/cofflink.c @@ -1501,6 +1501,21 @@ _bfd_coff_link_input_bfd (finfo, input_bfd) } } +#ifndef COFF_WITH_PE + /* Skip section symbols for sections which are not going to be + emitted, or which belong to linkonce sections that are going + to be discarded. */ + if (!skip + && isym.n_sclass == C_STAT + && isym.n_type == T_NULL + && isym.n_numaux > 0) + { + if ((*secpp)->output_section == bfd_abs_section_ptr + || (*secpp)->kept_section) + skip = true; + } +#endif + /* If we stripping debugging symbols, and this is a debugging symbol, then skip it. FIXME: gas sets the section to N_ABS for some types of debugging symbols; I don't know if this is |