On Mon, 13 Jun 2016 03:20:34 -0700, zef...@fysh.org wrote:
> > my $a = 0.Num
> 0
> > my $b = -$a
> -0
> > $a
> 0
> > $b
> -0
> > $a.WHICH
> Num|0
> > $b.WHICH
> Num|-0
> > atan2($a, -1)
> 3.14159265358979
> > atan2($b, -1)
> -3.14159265358979
> > $a === $b
> True
> 
> These two values, the two floating point zeroes, are distinct values, as
> shown by their stringification, .WHICH, and atan2 branch cut behaviour.
> The === comparison is producing the wrong answer, claiming that they're
> the same value.  They are of course correctly ==, but === is making a
> different kind of comparison.  In the related case of NaN compared to
> NaN, === correctly says that NaN is the same value as itself, despite
> it not being == to itself.
> 
> -zefram


Thank you for the report. This is now fixed \o/

rakudo: https://github.com/rakudo/rakudo/commit/085145f3a5
tests:  https://github.com/perl6/roast/commit/f67de6cf58

Reply via email to