This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
g77 tests for formatted I/O
- From: "Billinghurst, David (CRTS)" <David dot Billinghurst at riotinto dot com>
- To: <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 25 Jan 2002 21:18:21 +0800
- Subject: g77 tests for formatted I/O
Here are some simple tests for Fortran I/O. If these are OK, and work on all platforms, I have some more.
2002-01-26 David Billinghurst <David.Billinghurst@riotinto.com>
* g77.dg/f77-edit-i-in.f: New test
* g77.dg/f77-edit-i-out.f: New test
--- /dev/null Sat Jan 26 00:16:58 2002
+++ g77.dg/f77-edit-i-in.f Mon Jan 21 22:50:08 2002
@@ -0,0 +1,24 @@
+C Test Fortran 77 I edit descriptor for input
+C (ANSI X3.9-1978 Section 13.5.9.1)
+C
+C Origin: David Billinghurst <David.Billinghurst@riotinto.com>
+C
+C { dg-do run }
+ integer i,j
+
+ open(unit=10,status='SCRATCH')
+ write(10,'(A)') '1'
+ write(10,'(A)') ' '
+ write(10,'(A)') ' -1'
+
+ rewind(10)
+
+ read(10,'(I1)') i
+ if ( i.ne.1 ) call abort()
+ read(10,'(I1)') i
+ if ( i.ne.0 ) call abort()
+ read(10,'(I2,X,I2)') i,j
+ if ( i.ne.0 ) call abort()
+ if ( j.ne.-1 ) call abort()
+
+ end
--- /dev/null Sat Jan 26 00:17:45 2002
+++ g77.dg/f77-edit-i-out.f Sat Jan 26 00:14:51 2002
@@ -0,0 +1,27 @@
+C Test Fortran 77 I edit descriptor for output
+C (ANSI X3.9-1978 Section 13.5.9.1)
+C
+C Origin: David Billinghurst <David.Billinghurst@riotinto.com>
+C
+C { dg-do run }
+C { dg-output "^" }
+
+ write(*,'(I1)') 1 ! { dg-output "1\n" }
+ write(*,'(I1)') -1 ! { dg-output "\*\n" }
+ write(*,'(I2)') 2 ! { dg-output " 2\n" }
+ write(*,'(I2)') -2 ! { dg-output "-2\n" }
+ write(*,'(I3)') 3 ! { dg-output " 3\n" }
+ write(*,'(I3)') -3 ! { dg-output " -3\n" }
+
+ write(*,'(I2.0)') 0 ! { dg-output " \n" }
+ write(*,'(I1.1)') 4 ! { dg-output "4\n" }
+ write(*,'(I1.1)') -4 ! { dg-output "\*\n" }
+ write(*,'(I2.1)') 5 ! { dg-output " 5\n" }
+ write(*,'(I2.1)') -5 ! { dg-output "-5\n" }
+ write(*,'(I2.2)') 6 ! { dg-output "06\n" }
+ write(*,'(I2.2)') -6 ! { dg-output "\*\*\n" }
+ write(*,'(I3.2)') 7 ! { dg-output " 07\n" }
+ write(*,'(I3.2)') -7 ! { dg-output "-07\n" }
+
+C { dg-output "$" }
+ end