On Thursday, 9 August 2018 at 20:02:41 UTC, Jonathan M Davis
wrote:
On Thursday, August 9, 2018 7:15:58 AM MDT aliak via
Digitalmars-d-learn wrote:
[...]
It's failing, because you got the condition backwards. __ctfe
is true during CTFE and false during runtime. Your code has
if(__ctfe)
writeln("log it");
which means that it will attempt to run writeln at compile
time, whereas if you used
if(!__ctfe)
writeln("log it");
it would skip it at compile time. The problem isn't that
writeln is being compiled in. The problem is that it's being
encountered when CTFE is running the code. So, a static if is
unnecessary. You just need to get the condition right.
- Jonathan M Davis
Haha doh! Backwards it was. Thanks!