Please apply the below one-line patch to mprec.c to fix _Jv_ulp's
behavior on 64-bit systems, where it can otherwise improperly return
very large values when it should return very small ones.  (Without
this patch, converting certain strings, such as "1e-305", to doubles
would go into infinite loops on x86_64-linux-gnu, and presumably other
64-bit environments as well.  With this patch, I see no such
problems.)

Thanks!

--- classpath/native/fdlibm/mprec.c~    2006-09-05 09:47:02.000000000 -0400
+++ classpath/native/fdlibm/mprec.c     2006-09-05 13:15:28.000000000 -0400
@@ -666,7 +666,7 @@
 _DEFUN (ulp, (_x), double _x)
 {
   union double_union x, a;
-  register __Long L;
+  register int32_t L;
 
   x.d = _x;
 

-- 
Aaron M. Ucko, KB1CJC (amu at alum.mit.edu, ucko at debian.org)
Finger [EMAIL PROTECTED] (NOT a valid e-mail address) for more info.


Reply via email to