This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/29312] New: Errors in subnormal calculation


Copy of http://gcc.gnu.org/ml/fortran/2006-10/msg00009.html

With gcc version 4.2.0 20060930 (experimental), gmp 4.2.1, and mpfr 2.2.0,
on OSX 10.3.9/G5, the following code

real x
x = -0.375*tiny(x)
end

fails with:

init2.c:51:  assertion failed: p >= 2 && p <=
((mpfr_prec_t)((mpfr_prec_t)(~(mpfr_prec_t)0)>>1))
test_spacing_red.f90:0: internal compiler error: Abort trap
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

Copy of http://gcc.gnu.org/ml/fortran/2006-10/msg00013.html

The following code

real x, xd, xu
x = -3.0*epsilon(x)
xd = abs(fraction(x))*set_exponent(real(radix(x), kind=kind(x)), 1+digits(x))
print *, -3.0*epsilon(1.0)-x
print *, x, spacing(x), spacing(-3.0*epsilon(1.0))
print *, x, xd, rrspacing(x), rrspacing(-3.0*epsilon(1.0))
end

gives

   0.000000    
 -3.5762787E-07  2.8421709E-14  5.6843419E-14
 -3.5762787E-07  1.2582912E+07  1.2582912E+07   6291456.    

where the last column of the two last lines computed from
spacing(-3.0*epsilon(1.0)) and rrspacing(-3.0*epsilon(1.0))
(hence the 'compile time' in the subject) do not match the
values computed through a variable.

Copy of http://gcc.gnu.org/ml/fortran/2006-10/msg00014.html

The following code

real x
x = -3.0*(nearest(tiny(x),1.0)-tiny(x))
print *, x
end

gives

   0.000000    

instead of something like (xlf)

 -0.4203895393E-44


-- 
           Summary: Errors in subnormal calculation
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dominiq at lps dot ens dot fr
 GCC build triplet: gcc version 4.2.0 20060930
  GCC host triplet: PPC OSX 10.3.9
GCC target triplet: powerpc-apple-darwin7


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29312


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]