1! { dg-do run }
2! PR25093 Stream IO test 10
3! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>.
4! Test case derived from that given in PR by Steve Kargl.
5program stream_io_10
6  implicit none
7  integer(kind=4) :: a(4), b(4)
8  integer(kind=8) :: thepos
9  a = (/ 1, 2, 3, 4 /)
10  b = a
11  open(10, file="teststream_streamio_10", access="stream")
12  write(10) a
13  inquire(10, pos=thepos)
14  if (thepos.ne.17) STOP 1
15
16  read(10, pos=1)
17  inquire(10, pos=thepos)
18  if (thepos.ne.1) STOP 2
19
20  write(10, pos=15)
21  inquire(10, pos=thepos)
22  if (thepos.ne.15) STOP 3
23
24  read(10, pos=3)
25  inquire(10, pos=thepos)
26  if (thepos.ne.3) STOP 4
27
28  write(10, pos=1)
29  inquire(10, pos=thepos)
30  if (thepos.ne.1) STOP 5
31
32  a = 0
33  read(10) a
34  if (any(a /= b)) STOP 6
35
36  close(10, status="delete")
37end program stream_io_10
38