On Sunday, 15 May 2016 at 22:49:27 UTC, Walter Bright wrote:
On 5/15/2016 2:06 PM, Ola Fosheim Grøstad wrote:
The net result is that adding const/immutable to a type can change the semantics of the program entirely at the whim of the compiler implementor.

C++ Standard allows the same increased precision, at the whim of the compiler implementor, as quoted to you earlier.

What your particular C++ compiler does is not relevant, as its behavior is not required by the Standard.


I am watching this conversation for quite a while now and it's interesting to see how we went from the problem

float f = 1.30;
assert(f == 1.30); // NO
assert(f == cast(float)1.30); //OK

to this (endless) discussion.

My proposal removes the "whim" by requiring 128 bit precision for CTFE.

@Walter: I think this is a great idea and increased precision is always better! As you pointed out, yes the only reason to decrease precision if a trade-off for speed. Please keep doing/pushing this!

Reply via email to