On Monday, 1 October 2012 at 21:23:31 UTC, monarch_dodra wrote:
What I was saying is that for built in types such a floats,
"is" is (should be) no different from "==".
But you catch something interesting: the fact that it provides
different results is (IMO), a bug. Looking at it, I'd say the
bug is probably that "==" is overly sensitive to extended
precision.
I've filed a BR:
http://d.puremagic.com/issues/show_bug.cgi?id=8745
Please feel free to add anything to it. We'll see if Walter
will react to it for a more definite answer.
It looks like dmd uses x87 comparison instructions which are
inexact comparing to is. So, similarity of is and == operators on
built-in and user-defined types may be subject to
float/double/real exception.