Has anyone seen this on Solaris with 5.8.0:

print sprintf ( "%.16g\n" , -0.0005000000000000000104 ) ;
print sprintf ( "%.16g\n" , -0.00049999999999999999999999999999999999999 ) ;
print sprintf ( "%.16g\n" , -0.0007999999 ) ;
print sprintf ( "%.16g\n" , -0.00089999999999999999999999999999999999999 ) ;
print sprintf ( "%.16g\n" , -0.0008999999999999999999999999999999999999 ) ;
print sprintf ( "%.16g\n" , 8.000000000000000000 ) ;
print sprintf ( "%.16g\n" , 8.0000000000000000000000000000000000000 ) ;

produces:

-0.0005
-0.0005000000000000001
-0.0007999999
-0.0008999999999999999
-0.0009
8
7.999999999999999

The same code works fine under Linux except if you compile with debugging
(-g) then you get the same result.  On Solaris it does not seem to matter
how you configure it (I have tried many permutations).

MM;

Reply via email to