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



             Bug #: 55462

           Summary: [4.8 Regression] FAIL: gfortran.dg/quad_2.f90  -O*

                    execution test after revision 193770

    Classification: Unclassified

           Product: gcc

           Version: 4.8.0

            Status: UNCONFIRMED

          Severity: normal

          Priority: P3

         Component: libquadmath

        AssignedTo: unassig...@gcc.gnu.org

        ReportedBy: domi...@lps.ens.fr

                CC: bur...@gcc.gnu.org, h...@gcc.gnu.org





After revision 193770, the test gfortran.dg/quad_2.f90 fails at runtime. As

shown by the following reduced test, this is due to a difference between the

last ULP for read and write.



program test_qp

   use iso_fortran_env, only: real_kinds

   implicit none

   integer, parameter :: QP = real_kinds(ubound(real_kinds,dim=1))

   real(qp) :: fp2, fp4

   character(len=80) :: str4

   fp2 = sqrt (2.0_qp)

   write (str4,'(g0)') fp2



   read (str4, *) fp4

   print *, fp2, fp4, (fp4-fp2)/epsilon(fp2)

   if (fp2 /= fp4) call abort()



end program test_qp



The output is



   1.41421356237309504880168872420969798        

1.41421356237309504880168872420969779       

-1.00000000000000000000000000000000000

Reply via email to