summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/direct_io_4.f90
blob: 93fa4bbf9f1d2f21a209af1cd83c4771b235c7cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
! { dg-do run }
! PR 23321 : Running off the end of a file was not detected with direct I/O.
program main
  implicit none
  integer(kind=1) :: a, b
  integer :: ios, i

  a = 42
  open (unit=10,status="scratch",recl=1,access="direct")
  write(10,rec=1) a

  read (10,rec=2, iostat=ios) b
  if (ios == 0) STOP 1

  read (10, rec=82641, iostat=ios) b      ! This used to cause a segfault
  if (ios == 0) STOP 2

  read(10, rec=1, iostat=ios) b
  if (ios /= 0) STOP 3
  if (a /= b) STOP 4

end program main