On Thu, 2004-10-07 at 16:05, Andrew Haley wrote:
> Yes.  Also, the fdlibm code we use at the moment is of high quality.
> It seems anything we write afresh will be more buggy, at least to
> start with.

Actually.. That's where the bug was! :-)
strtod (by ANSI C99) should handle Infinity and NaN.

The problem is the #ifdef on lines 268-273:
#ifdef KISSME_LINUX_USER
  val = strtod (p, &endptr);
#else
  val = _strtod_r (&reent, p, &endptr);
#endif

The former calls the standard library strtod function, the latter
calls the included fdlibm function. 

This appears to be an redundant construct. 
I don't quite see the reason here for using the fdlibm strtod.
So the fix for this would be to just replace this with:

  val = strtod (p, &endptr);

This works. Of course, this might not work on every C compiler. 
But it does work with gcc. 

/Sven



_______________________________________________
Classpath mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/classpath

Reply via email to