OSDN Git Service

2010-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
authorjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 26 Mar 2010 03:26:26 +0000 (03:26 +0000)
committerjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 26 Mar 2010 03:26:26 +0000 (03:26 +0000)
PR libfortran/43517
* gfortran.dg/read_eof_7.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157738 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/read_eof_7.f90 [new file with mode: 0644]

index 5b7c892..dfbf449 100644 (file)
@@ -1,3 +1,8 @@
+2010-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR libfortran/43517
+       * gfortran.dg/read_eof_7.f90: New test.
+
 2010-03-25  Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>
 
        PR objc/35165
diff --git a/gcc/testsuite/gfortran.dg/read_eof_7.f90 b/gcc/testsuite/gfortran.dg/read_eof_7.f90
new file mode 100644 (file)
index 0000000..a478f06
--- /dev/null
@@ -0,0 +1,20 @@
+! { dg-do run }
+! PR43517 Spurious EOF condition when namelist read follows formatted read
+! Test case from the problem reporter - Michael Richmond
+program main
+  namelist /name/ j
+  open (10,status='scratch',form='formatted')
+  write(10,'(a)') "999999"
+  write(10,'(a)') " $name"
+  write(10,'(a)') "  j=73,"
+  write(10,'(a)') " /"
+  rewind(10)
+  i = 54321
+  idum = 6789
+  read (10,'(2i5,4x)') i, idum ! Trailing 4x was setting EOF condition
+  if (i /= 99999 .and. idum /= 9) call abort
+  j = 12345
+  read (10,name) ! EOF condition tripped here.
+  if (j /= 73) call abort
+end program main
+