blob: 501995c6eb53ddf129199d64618f11238e77fd0f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
! { 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
|