This is the mail archive of the newlib@sourceware.org mailing list for the newlib 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: strtod ("nan") returns negative NaN


On 2018-08-15 10:51, Joseph Myers wrote:
> On Wed, 15 Aug 2018, Paul Koning wrote:
> 
>>> * Different processors have different preferences for what a "default" 
>>> quiet NaN (e.g. one produced by an operation without NaN operands) should 
>>> look like.  Some clear all the lower mantissa bits, some set them.  If you 
>>> use the built-in functions then you generate NaNs following GCC's 
>>> knowledge of such processor conventions.
>>
>> But does that matter?  It should be sufficient to generate a legal NaN 
>> when one is requested.  Given that there are don't care bits in the 
>> representation of NaN, it might look different from one generated by the 
>> hardware as the output of some operation, but a NaN is a Nan so long as 
>> it matches what the spec says -- right?

Signalling NaNs are useful in development and for mathematicians who want to
ensure rigorous correctness: most of us and most apps would prefer NaNs remain
quiet, and interchanged data with NaNs not to create a fuss: non-zero mantissa
bits which do not constitute a signalling NaN on any known platform [NaN with
all zero mantissa bits is Inf]. Some old K-C-S draft-based or low cost
implementations may cheap out on how many or which bit(s) to check.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada


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