This program prints "nan" inside the out(result){} import std.stdio: writeln; double sqr(double x) out(result) { writeln("result1: ", result); // prints: result1: nan //assert(result >= 0); } body { return x * x; } void main() { writeln("result2: ", sqr(100)); // prints: result2: 10000 }
*** This issue has been marked as a duplicate of issue 3667 ***