Issue #1715 has been updated by tadayoshi funaba.


>> If we want to be precise in the Unknown, maybe both versions should give 
>> NaN for 0.arg and 0.0.arg (and Complex zero) as well?

no.

> but returns:
> Complex(NaN,NaN)

i hope not.

complex try to preserve flonum status.

Complex(-0.0, 0.0).polar #=> [0.0, 3.141592653589793]
Complex(0.0, -0.0).polar #=> [0.0, -0.0]
Complex(-0.0, -0.0).polar #=> [0.0, -3.141592653589793]

Complex.polar(0.0, 3.141592653589793) #=> (-0.0+0.0i)
Complex.polar(0.0, -0.0) #=> (0.0-0.0i)
Complex.polar(0.0, -3.141592653589793) #=> (-0.0-0.0i)

anyway, complex respects flonum's rules.
----------------------------------------
http://redmine.ruby-lang.org/issues/show/1715

----------------------------------------
http://redmine.ruby-lang.org