This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: libc divdi3 and libgcc
On Sat, May 03, 2003 at 12:05:59AM -0700, H. J. Lu wrote:
> 2003-05-03 H.J. Lu <hjl@gnu.org>
>
> * elflink.h (elf_merge_symbol): Don't record a hidden/internal
> symbol dynamic. Check indirection when removing the old
> definition for symbols with non-default visibility.
> (elf_add_default_symbol): Skip when told by elf_merge_symbol.
>
> --- bfd/elflink.h.vsb 2003-05-01 08:59:33.000000000 -0700
> +++ bfd/elflink.h 2003-05-02 23:48:54.000000000 -0700
> @@ -641,7 +641,10 @@ elf_merge_symbol (abfd, info, name, sym,
> /* Make sure this symbol is dynamic. */
> h->elf_link_hash_flags |= ELF_LINK_HASH_REF_DYNAMIC;
> /* FIXME: Should we check type and size for protected symbol? */
> - return _bfd_elf_link_record_dynamic_symbol (info, h);
> + if (ELF_ST_VISIBILITY (h->other) == STV_PROTECTED)
> + return _bfd_elf_link_record_dynamic_symbol (info, h);
> + else
> + return TRUE;
> }
> else if (!newdyn
> && ELF_ST_VISIBILITY (sym->st_other)
Please comment the reason why STV_PROTECTED needs to be treated
specially. OK to commit with that change.
--
Alan Modra
IBM OzLabs - Linux Technology Centre