On Tuesday, 2 October 2018 at 12:30:36 UTC, Joe wrote:
On Tuesday, 2 October 2018 at 12:25:19 UTC, Joe wrote:
On Tuesday, 2 October 2018 at 09:59:28 UTC, bauss wrote:
On Tuesday, 2 October 2018 at 04:13:01 UTC, Joe wrote:
There appears to be a problem with the example at
https://tour.dlang.org/tour/en/gems/unittesting
If compiled with -unittest, the resulting program crashes.
It happens with ldc2 on Linux but it can also be seen if you
click on "Export" and run it with dmd -unittest.
I think it's more likely a problem with your OS.
I am unable to reproduce that with either of dmd or ldc.
Well then it's also a problem with run.dlang.io, since as I
said it also happens when you run it there.
I forgot to mention: at the end, it reports "1/1 unittests
FAILED". I see three tests--two in the struct and the separate
one--but the assertion failure is in line 49 (the standalone)
so apparently the other two are not being run (or reported).
The problem is the NaN madness.
Since several values are NaN there's this strange stuff:
void main()
{
import std.stdio;
import std.math : isNaN;
double d;
writeln(d.init); // nan
writeln(d); // nan
writeln(d.nan); // nan
assert(d.isNaN);
assert(d == d.nan); // fails
assert(d == d.init); // fails
}
the last assert is just crazy.