I'm getting (notice the negative sign):

abs(big(-0.0)) = -0e+00 with 256 bits of precision

I think it would be better to have abs(big(-0.0)) return 0e+00 (for 
example, abs(-0.0) returns 0.0). Perhaps this could be fixed with an 
abs(::BigFloat) method. It seems that the problem is that abs(x::Real) is 
ifelse(x<0,-x,0), and -0 is not less than 0. 

Reply via email to