[osol-discuss] Re: GNU ld -shared fails to link filtered symbols on Solaris
Tue Nov 28 17:21:00 GMT 2006
Alan Modra writes:
> > The question, I think, is why the ABS state of the symbol *definition* is
> > inherited by the symbol state of the *reference*. A reference is
> > typically undefined (UNDEF).
> Perhaps because the Sys V ABI says:
> The symbol has an absolute value that will not change because of
> >From that wording, I don't think it unreasonable that an ABS symbol
> in a shared lib should serve as directly defining the value of a
> reference outside that lib. (I don't think it's a particularly good
> or useful way to treat ABS symbols in shared libs, but maybe I just
> haven't thought enough.)
It says "will not change because of relocation." It doesn't say "will
not ever change for any reason."
What happens if someone recompiles that shared library with a
Effectively what GNU has (re-)created here is the concept of a static
library, but just for these particular symbols. Regardless of how
they managed to do that, or what internal problems they have in
unwinding the damage, this looks like a pretty clear-cut bug to me.
James Carlson, KISS Network <email@example.com>
Sun Microsystems / 1 Network Drive 71.232W Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677
More information about the Binutils