Executing on host: /users/bin/gcc/gcc-4.1/objdir/gcc/testsuite/../gfortran -B/us ers/bin/gcc/gcc-4.1/objdir/gcc/testsuite/../ /users/bin/gcc/gcc-4.1/gcc/gcc/test suite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 -w -O0 -L/ users/bin/gcc/gcc-4.1/objdir/hppa1.1-hp-hpux10.20/./libgfortran/.libs -L/users/b in/gcc/gcc-4.1/objdir/hppa1.1-hp-hpux10.20/./libgfortran/.libs -L/users/bin/gcc/ gcc-4.1/objdir/hppa1.1-hp-hpux10.20/./libiberty -lm -o /users/bin/gcc/gcc-4.1 /objdir/gcc/testsuite/intrinsic_set_exponent.x (timeout = 600) PASS: gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 compilation, -O0 Setting LD_LIBRARY_PATH to .:/users/bin/gcc/gcc-4.1/objdir/hppa1.1-hp-hpux10.20/ ./libgfortran/.libs:/users/bin/gcc/gcc-4.1/objdir/hppa1.1-hp-hpux10.20/./libgfor tran/.libs:/users/bin/gcc/gcc-4.1/objdir/gcc:.:/users/bin/gcc/gcc-4.1/objdir/hpp a1.1-hp-hpux10.20/./libgfortran/.libs:/users/bin/gcc/gcc-4.1/objdir/hppa1.1-hp-h pux10.20/./libgfortran/.libs:/users/bin/gcc/gcc-4.1/objdir/gcc FAIL: gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 execution, -O 0
Breakpoint 1, _gfortran_abort () at ../../../gcc/libgfortran/intrinsics/abort.c:38 38 close_units (); (gdb) bt #0 _gfortran_abort () at ../../../gcc/libgfortran/intrinsics/abort.c:38 #1 0x3e5c in test_real8_ () at /users/bin/gcc/gcc-4.1/gcc/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90:59 #2 0x39e4 in MAIN__ () at /users/bin/gcc/gcc-4.1/gcc/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90:5 #3 0x42bc in main (argc=1, argv=0x7b03b054) at ../../../gcc/libgfortran/fmain.c:18 #4 0x7af1d86c in ?? () from /usr/lib/libc.1 (gdb) break intrinsic_set_exponent.f90:59 ... Breakpoint 2, test_real8_ () at /users/bin/gcc/gcc-4.1/gcc/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90:59 59 if (y .ne. 128.0) call abort() (gdb) p y $1 = 128.00000000000003 It looks like the rounding error arises from the call to pow in scalbn. This is the return value: (gdb) info reg fr4 fr4 (single precision) 3.75 fr4 (double precision) 256.00000000000006 Not sure why, but the test doesn't fail when linked with -static. I also can't duplicate with a simple test program. -- Summary: FAIL: gfortran.fortran- torture/execute/intrinsic_set_exponent.f90 execution Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libfortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: danglin at gcc dot gnu dot org GCC build triplet: hppa1.1-hp-hpux10.20 GCC host triplet: hppa1.1-hp-hpux10.20 GCC target triplet: hppa1.1-hp-hpux10.20 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26253