On Sunday, 24 November 2013 at 14:17:50 UTC, Dicebot wrote:
Not exactly. It is all about "if" condition. AFAIK, D defines that condition `if(X)` get re-written to `if(cast(bool)X)` before semantic pass. So it is kind of implicit explicit conversion :)
Not exactly. Code: bool b = f; DMD output:Error: cannot implicitly convert expression (f) of type Foo to bool
But code: bool b = !f; compiles.
