[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New gnulib wrappers with glibc 2.21.
From: |
Paul Eggert |
Subject: |
Re: New gnulib wrappers with glibc 2.21. |
Date: |
Wed, 11 Feb 2015 11:22:07 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 |
[Also cc'ing bug-gnulib.]
On 02/11/2015 08:05 AM, Joseph Myers wrote:
These bit-patterns are considered to be trap representations
Yes, this is not a standards-conformance issue.
with the gnulib implementation they are still trap representations
(not consistently behaving like NaNs), you've just made a different
choice of how to handle them.
Yes, as I understand it the original motivation for this was glibc bug
4586 <https://sourceware.org/bugzilla/show_bug.cgi?id=4586>. This bug
caused GNU 'od' to crash when printing long double data, so we worked
around the problem by using isnanl to determine whther a value was a
printable number (as opposed to a trap representation that could cause
core dumps). Which meant that isnanl needed to return nonzero on
non-canonical representations.
My impression is that this old problem is no longer relevant, and that
we can remove the Gnulib requirement that isnanl must return nonzero on
non-canonical representations. This would mean Gnulib would no longer
report problems with x86-64 glibc isnanl.
If I'm wrong and the old problem is still relevant, or if there's a need
for this sort of check in the future, Gnulib should use the new
iscanonical macro instead, as it's the one designed for the purpose that
Gnulib was using isnanl for.
- Re: New gnulib wrappers with glibc 2.21.,
Paul Eggert <=