]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
authorThomas Koenig <tkoenig@gcc.gnu.org>
Sat, 4 Aug 2007 20:14:26 +0000 (20:14 +0000)
committerThomas Koenig <tkoenig@gcc.gnu.org>
Sat, 4 Aug 2007 20:14:26 +0000 (20:14 +0000)
2007-08-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/32770
* gfortran.dg/streamio_8.f90:  Adjust so test case passes
for -fdefault-integer-8 and -fdefault-real-8.
* gfortran.dg/streamio_10.f90:  Likewise.
* gfortran.dg/sizeof.f90:  Likewise.

From-SVN: r127212

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/sizeof.f90
gcc/testsuite/gfortran.dg/streamio_10.f90
gcc/testsuite/gfortran.dg/streamio_8.f90

index 37fce9675391feb4ebf0423d149d70a467918d52..d18f3b94d6916fdd2bf9aa3437b16e40c459ec42 100644 (file)
@@ -1,3 +1,11 @@
+2007-08-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/32770
+       * gfortran.dg/streamio_8.f90:  Adjust so test case passes
+       for -fdefault-integer-8 and -fdefault-real-8.
+       * gfortran.dg/streamio_10.f90:  Likewise.
+       * gfortran.dg/sizeof.f90:  Likewise.
+
 2007-08-04  Thomas Koenig  <tkoenig@gcc.gnu.org>
 
        PR fortran/32770
index 35ea527ed0dff1dff9c2186a10e261350a5623c0..5518ba22491192102de0ff940bb622f5328282c5 100644 (file)
@@ -7,15 +7,21 @@ subroutine check_int (j)
   logical :: l(6)
   integer(8) :: jb(5,4)
 
-  if (sizeof (j) /= sizeof (i)) call abort
   if (sizeof (jb) /= 2*sizeof (ib)) call abort
 
+  if (sizeof(j) == 4) then
+     if (sizeof (j) /= sizeof (i)) call abort
+  else
+     if (sizeof (j) /= 2 * sizeof (i)) call abort
+  end if
+
   ipa=>ib(2:3,1)
 
   l = (/ sizeof(i) == 4, sizeof(ia) == 20, sizeof(ib) == 80, &
        sizeof(ip) == 4, sizeof(ipa) == 8, sizeof(ib(1:5:2,3)) == 12 /)
 
   if (any(.not.l)) call abort
+
   if (sizeof(l) /= 6*sizeof(l(1))) call abort
 end subroutine check_int
 
@@ -25,8 +31,8 @@ subroutine check_real (x, y)
   target :: r
   pointer :: rp
   double precision :: d(5,5)
-  complex :: c(5)
-  
+  complex(kind=4) :: c(5)
+
   if (sizeof (y) /= 5*sizeof (x)) call abort
 
   if (sizeof (r) /= 8000*4) call abort
index e49617e2931989381758460987b7ba1ae7b89fe3..b0c573e6fbe03860496ba6f499fa4881ce7c7ebf 100644 (file)
@@ -4,7 +4,7 @@
 ! Test case derived from that given in PR by Steve Kargl.
 program stream_io_10
   implicit none
-  integer :: a(4), b(4)
+  integer(kind=4) :: a(4), b(4)
   integer(kind=8) :: thepos
   a = (/ 1, 2, 3, 4 /)
   b = a
index 1e5e16fdfc874ebc84274e4462a64a2f673fdd1e..420f5b91a56bafd5faf937af5bae51cba92b6e79 100644 (file)
@@ -8,7 +8,7 @@ PROGRAM stream_io_8
   real(kind=8) r
   mypos = 0
   mystring = "not yet"
-  r = 12.25
+  r = 12.25d0
   OPEN(UNIT=11, ACCESS="stream")
   inquire(unit=11, pos=mypos)
   if (mypos.ne.1) call abort()
@@ -18,17 +18,17 @@ PROGRAM stream_io_8
   WRITE(11) "second"
   inquire(unit=11, pos=mypos)
   if (mypos.ne.12) call abort()
-  WRITE(11) 1234567
+  WRITE(11) 1234567_4
   inquire(unit=11, pos=mypos)
   if (mypos.ne.16) call abort()
   write(11) r
   r = 0.0
   inquire (11, pos=mypos)
   read(11,pos=16)r
-  if (r.ne.12.25) call abort()
+  if (abs(r-12.25d0)>1e-10) call abort()
   inquire(unit=11, pos=mypos)
   inquire(unit=11, access=mystring)
   if (mypos.ne.24) call abort()
   if (mystring.ne."STREAM") call abort()
   CLOSE(UNIT=11, status="delete")
-END PROGRAM stream_io_8
\ No newline at end of file
+END PROGRAM stream_io_8