This is the mail archive of the
mailing list for the binutils project.
Re: A symbol visibility problem
- From: Nick Clifton <nickc at redhat dot com>
- To: "H. J. Lu" <hjl at lucon dot org>
- Cc: binutils at sources dot redhat dot com
- Date: Wed, 28 Jan 2004 11:32:42 +0000
- Subject: Re: A symbol visibility problem
- References: <20040126220222.GA30040@lucon.org>
Hi H. J. Lu" <email@example.com> writes:
> The problem is
> /* If the new symbol with non-default visibility comes from a
> relocatable file and the old definition comes from a dynamic
> object, we remove the old definition. */
> if ((*sym_hash)->root.type == bfd_link_hash_indirect)
> h = *sym_hash;
> h->root.type = bfd_link_hash_new;
> h->root.u.undef.abfd = NULL;
> If the new entry with non-default visibility is undefined, then
> setting the type to bfd_link_hash_new will lead to the
> assertion. Should we use
> h->root.type = bfd_link_hash_undefined;
> instead and let _bfd_generic_link_add_one_symbol take care of it?
That seems sensible, but I think only if the new symbol is undefined.
Do you have a patch to propose for this ?