Different NaNs used

Lars T. Kyllingstad public at kyllingen.NOSPAMnet
Wed Jun 29 01:43:02 PDT 2011


On Mon, 27 Jun 2011 16:41:14 -0400, bearophile wrote:

> This question is related to this thread:
> http://d.puremagic.com/issues/show_bug.cgi?id=3632
> 
> Can you tell me why real.nan and real.init don't contain the same bit
> patterns?
> 
> 
> import std.math: isIdentical;
> void main() {
>     assert(isIdentical(real.nan, real.init)); // this asserts
> }

real.init is a signaling NaN, real.nan is not.  I don't know if this is 
by design, but I suppose it may be:  You can "quiet" a signaling NaN by 
assigning real.nan to your variable.

  http://en.wikipedia.org/wiki/NaN#Signaling_NaN

-Lars


More information about the Digitalmars-d-learn mailing list