On Sunday, 6 January 2019 at 01:05:08 UTC, Adam D. Ruppe wrote:
That's because it is done at compile time, since both are compile-time constants. The compiler will evaluate it using the maximum precision available to the compiler, ignoring your request to cast it to double (which annoys some people who value predictability over precision btw). At different precisions, you get different results.
Thanks for that explanation, Adam! Very helpful. On Sunday, 6 January 2019 at 03:33:45 UTC, Jesse Phillips wrote:
Since you got your answer you may also like http://dconf.org/2016/talks/clugston.html
Thank you for pointing out that talk, Jesse. I will set aside some time to go through that!