* elflink.h (elf_link_input_bfd): Discard local symbols that are

attached to sections which are not being included in the link.
This commit is contained in:
Ian Lance Taylor 1997-02-06 22:02:51 +00:00
parent 6927c24d3c
commit 258b1f5d18
1 changed files with 12 additions and 1 deletions

View File

@ -2881,9 +2881,20 @@ elf_link_input_bfd (finfo, input_bfd)
if (finfo->info->discard == discard_all)
continue;
/* If this symbol is defined in a section which we are
discarding, we don't need to keep it. For the benefit of the
MIPS ELF linker, we check SEC_EXCLUDE as well as linker_mark. */
if (isym->st_shndx > 0
&& isym->st_shndx < SHN_LORESERVE
&& isec != NULL
&& (! isec->linker_mark
|| (! finfo->info->relocateable
&& (isec->flags & SEC_EXCLUDE) != 0)))
continue;
/* Get the name of the symbol. */
name = bfd_elf_string_from_elf_section (input_bfd, symtab_hdr->sh_link,
isym->st_name);
isym->st_name);
if (name == NULL)
return false;