On 02/14/2012 07:48 AM, Bernard Helyer wrote:
On Tuesday, 14 February 2012 at 15:39:37 UTC, Joshua Reusch wrote:
Hello,
why does this assertion fail:
> assert(float.nan == float.nan);
there is the std.math.isNaN function which works correctly, but why
can I not just use the comparison ?
Thanks, Joshua
Use `float.nan is float.nan`; all other expressions with NaNs in them
will be false (or result in NaN).
In the general case, std.math.isNaN works:
import std.math;
void main()
{
float f;
assert(f is float.nan); // fails
assert(isNaN(f)); // passes
}
Ali