------- Comment #1 from jvdelisle at gcc dot gnu dot org 2008-02-22 15:45 ------- Works for me.
Can you try this test case: program fm827 double precision avd, bvd, cvd, dvd, dvcorr ct010* test 10 tanh(x) = 1 - 2/(exp(2x)+1) bvd = 5.0d0 cvd = 2.0d0 dvd = dlog10(bvd * cvd) - dsqrt(4.0d0) / 1 (dexp(2.0d0 * (bvd - cvd)) + dcos(0.0d0)) avd = dvd - dtanh(3.0d0) print *, "avd=",avd," should be: ", 0.0_8 if (abs(avd) > 0.5000000000d-09) then print *, "fails" else print *, "passes" end if end -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35285