diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/direct_io_7.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/direct_io_7.f90 | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/direct_io_7.f90 b/gcc/testsuite/gfortran.dg/direct_io_7.f90 new file mode 100644 index 000000000..ff116b0a1 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/direct_io_7.f90 @@ -0,0 +1,31 @@ +! { dg-do run } +! PR 34405 - direct access prohibits ENDFILE, BACKSPACE and REWIND +program test + implicit none + integer :: ios + character(len=80) :: msg + open (95, access="direct", recl=4, status="scratch") + write (95,rec=1) 'abcd' + + ios = 0 + msg = " " + backspace (95,iostat=ios,iomsg=msg) + if (ios == 0 .or. & + msg /= "Cannot BACKSPACE a file opened for DIRECT access") call abort + + ios = 0 + msg = " " + endfile (95,iostat=ios,iomsg=msg) + if (ios == 0 .or. & + msg /= "Cannot perform ENDFILE on a file opened for DIRECT access") & + call abort + + ios = 0 + msg = " " + rewind (95,iostat=ios,iomsg=msg) + if (ios == 0 .or. & + msg /= "Cannot REWIND a file opened for DIRECT access ") call abort + + close (95) +end program test + |