Lots of bool operations shouldn't compile
Don Clugston
dac at nospam.com.au
Wed Mar 1 07:30:46 PST 2006
Oskar Linde wrote:
> (But note that the current D bool is (sans bugs) semantically identical
> (as far as I can tell) to C99 and C++ bool, who both allows b+=5, et.al.)
I just tried that in MSVC, and you're right. I didn't know that. It's
probably a legacy of the pre-bool days when ints or BOOL were used. In
practice, I doubt it's really much of a problem. But there doesn't seem
to be any rational reason to allow them.
BTW, MSVC accepts
bool b = true;
b /= false; // crashes at run time with a div by zero error
but gives a warning for
bool b = true/false; // Can this be constant folded? What the heck does
it set it to?
Also accepts b/=6.5;
Wonder what b/=real.nan does.
More information about the Digitalmars-d-bugs
mailing list