45 lines
1.2 KiB
Fortran
45 lines
1.2 KiB
Fortran
! { dg-do run }
|
|
! PR 26499 Test write with rewind sequences to make sure buffering and
|
|
! end-of-file conditions are handled correctly. Derived from test case by Dale
|
|
! Ranta. Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>.
|
|
program test
|
|
dimension idata(1011)
|
|
idata = -42
|
|
open(unit=11,form='unformatted')
|
|
idata(1) = -705
|
|
idata( 1011) = -706
|
|
write(11)idata
|
|
idata(1) = -706
|
|
idata( 1011) = -707
|
|
write(11)idata
|
|
idata(1) = -707
|
|
idata( 1011) = -708
|
|
write(11)idata
|
|
read(11,end= 1000 )idata
|
|
call abort()
|
|
1000 continue
|
|
rewind 11
|
|
read(11,end= 1001 )idata
|
|
if(idata(1).ne. -705.or.idata( 1011).ne. -706)call abort()
|
|
1001 continue
|
|
close(11,status='keep')
|
|
open(unit=11,form='unformatted')
|
|
rewind 11
|
|
read(11)idata
|
|
if(idata(1).ne.-705)then
|
|
call abort()
|
|
endif
|
|
read(11)idata
|
|
if(idata(1).ne.-706)then
|
|
call abort()
|
|
endif
|
|
read(11)idata
|
|
if(idata(1).ne.-707)then
|
|
call abort()
|
|
endif
|
|
close(11,status='delete')
|
|
stop
|
|
end
|
|
|
|
|