2000-06-05 H.J. Lu <hjl@gnu.org>

* elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
	an error when seeing an undefined symbol with hidden/internal
	attribute. It is handled in *_relocate_section ().
This commit is contained in:
H.J. Lu 2000-06-05 20:46:21 +00:00
parent 7cda33a15e
commit 9d6eee7847
2 changed files with 8 additions and 15 deletions

View File

@ -1,3 +1,9 @@
2000-06-05 H.J. Lu <hjl@gnu.org>
* elflink.c (_bfd_elf_link_record_dynamic_symbol): Don't flag
an error when seeing an undefined symbol with hidden/internal
attribute. It is handled in *_relocate_section ().
2000-06-05 H.J. Lu <hjl@gnu.org>
* elflink.h (elf_fix_symbol_flags): Follow the link for the

View File

@ -226,21 +226,8 @@ _bfd_elf_link_record_dynamic_symbol (info, h)
{
case STV_INTERNAL:
case STV_HIDDEN:
/* This symbol must be defined in the shared object or
executable. */
if (h->root.type == bfd_link_hash_undefined)
{
bfd * abfd = h->root.u.undef.abfd;
const char * name = h->root.root.string;
(*info->callbacks->undefined_symbol)
(info, name, abfd, bfd_und_section_ptr, 0, true);
/* We have flaged a fatal error. We now treat this as
a normal symbol to avoid further error messages. */
h->other ^= ELF_ST_VISIBILITY (h->other);
}
else if (h->root.type != bfd_link_hash_undefweak)
if (h->root.type != bfd_link_hash_undefined
&& h->root.type != bfd_link_hash_undefweak)
{
h->elf_link_hash_flags |= ELF_LINK_FORCED_LOCAL;
return true;