1! { dg-do run }
2! PR 23321 : Running off the end of a file was not detected with direct I/O.
3program main
4  implicit none
5  integer(kind=1) :: a, b
6  integer :: ios, i
7
8  a = 42
9  open (unit=10,status="scratch",recl=1,access="direct")
10  write(10,rec=1) a
11
12  read (10,rec=2, iostat=ios) b
13  if (ios == 0) call abort
14
15  read (10, rec=82641, iostat=ios) b      ! This used to cause a segfault
16  if (ios == 0) call abort
17
18  read(10, rec=1, iostat=ios) b
19  if (ios /= 0) call abort
20  if (a /= b) call abort
21
22end program main
23