2008-12-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
authorjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Dec 2008 04:17:31 +0000 (04:17 +0000)
committerjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 6 Dec 2008 04:17:31 +0000 (04:17 +0000)
PR fortran/38291
* gfortran.dg/streamio_16.f90: New test.

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

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

index b841930..5b26088 100644 (file)
@@ -1,3 +1,8 @@
+2008-12-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/38291
+       * gfortran.dg/streamio_16.f90: New test.
+
 2008-12-05  Jakub Jelinek  <jakub@redhat.com>
 
        PR c++/35336
diff --git a/gcc/testsuite/gfortran.dg/streamio_16.f90 b/gcc/testsuite/gfortran.dg/streamio_16.f90
new file mode 100644 (file)
index 0000000..a415389
--- /dev/null
@@ -0,0 +1,19 @@
+! { dg-do run }
+! PR38291 Rejects I/O with POS= if FMT=*
+character(15) :: sAccess
+character(1) :: instr
+integer :: mypos, i
+mypos = 0
+open(50, access="stream", form="formatted")
+write(50, *, pos=1) "Just something "
+do i=1,17
+  read( 50, *,pos=i)
+  inquire(50, access=sAccess, pos=mypos)
+  if (sAccess.ne."STREAM") call abort
+  if (mypos.ne.18) call abort
+end do
+read (50,*, end=10)
+call abort
+ 10 continue
+close(50,status="delete")
+end