This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]