32 lines
778 B
Fortran
32 lines
778 B
Fortran
! { dg-do run { target fd_truncate } }
|
|
! pr18364 endfile does not truncate file.
|
|
! write out 20 records
|
|
! rewind
|
|
! read 10 records
|
|
! endfile
|
|
! close file
|
|
! open file
|
|
! detect file has only 10 records
|
|
implicit none
|
|
integer i,j
|
|
open(unit=10,file='test.dat',access='sequential',status='replace')
|
|
do i=1, 20
|
|
write (10,'(I4)') i
|
|
end do
|
|
rewind(10)
|
|
do i=1,10
|
|
read (10,'(I4)') j
|
|
end do
|
|
endfile(10)
|
|
close(10)
|
|
open(unit=10,file='test.dat',access='sequential',status='old')
|
|
do i=1,20
|
|
read (10,'(I4)',end=99) j
|
|
end do
|
|
! should never get here
|
|
call abort
|
|
99 continue ! end of file
|
|
if (j.ne.10) call abort
|
|
close(10,status='delete')
|
|
end
|