Alan Modra | 26 Sep 05:24
Picon

gfortran.dg/large_real_kind_1.f90

I've been playing with enabling 128-bit long doubles for
powerpc64-linux, and noticed large_real_kind_1 failing.  A little
investigation says either the test is broken, or libgfortranio/write.c
write_float needs tweaking.  In case of the former, the following
adjusts the test to suit current output.  Of course, I might also be
completely off-base, and '(G20.10E5)' should output something other than
'           +Infinity' for huge(x).

	* gfortran.dg/large_real_kind_1.f90: Tweak for +/-Infinity output.

Index: gcc/testsuite/gfortran.dg/large_real_kind_1.f90
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/gfortran.dg/large_real_kind_1.f90,v
retrieving revision 1.1
diff -u -p -r1.1 large_real_kind_1.f90
--- gcc/testsuite/gfortran.dg/large_real_kind_1.f90	23 Jun 2005 18:50:19 -0000	1.1
+++ gcc/testsuite/gfortran.dg/large_real_kind_1.f90	26 Sep 2005 03:20:21 -0000
@@ -61,8 +61,8 @@ program test

   write (c1,'(G20.10E5)') x
   write (c2,'(G20.10E5)') -x
-  if (c2(1:1) /= '-') call abort
-  c2(1:1) = ' '
+  if (c2(12:12) /= '-') call abort
+  c2(12:12) = '+'
   if (c1 /= c2) call abort

   x = tiny(x)

--

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre


Gmane