This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libm error handling


On Wed, 1 May 2013, Andreas Schwab wrote:

> Rich Felker <dalias@aerifal.cx> writes:
> 
> > Existing binaries with the copy relocation for signgam should not be
> > broken by changing signgam to a weak alias for __signgam internally.
> 
> Yes, they are, because libm no longer updates the real signgam.

The lgamma at the old symbol version that writes to signgam (as opposed to 
the one at the new symbol version that writes to __signgam) would no 
longer update the real signgam (in the user's existing binary)?  Or the 
one at the new symbol version, writing to __signgam, would not update the 
signgam that's present in a newly linked binary as a result of a copy 
relocation, even though it's required to do so for XSI conformance?

If either of those issues applies then I suppose we do need the more 
complicated approach I originally outlined (where old lgamma = new 
__lgamma_xsi, writing to signgam, and new lgamma doesn't set any global 
variable at all) - the case of newly built binaries that approach breaks 
is anything expecting signgam to be set but not defining _XOPEN_SOURCE or 
_GNU_SOURCE.

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]