summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/inquire_5.f90
blob: fe107a1986347376313c20ffbae5b2350ea8c374 (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
! { dg-do run { target fd_truncate } }
! { dg-options "-std=legacy" }
!
! pr19314 inquire(..position=..) segfaults
! test by Thomas.Koenig@online.de
!         bdavis9659@comcast.net
      implicit none
      character*20 chr
      open(7,STATUS='SCRATCH')
      inquire(7,position=chr)
      if (chr.NE.'ASIS') CALL ABORT
      close(7)
      open(7,STATUS='SCRATCH',ACCESS='DIRECT',RECL=100)
      inquire(7,position=chr)
      if (chr.NE.'UNDEFINED') CALL ABORT
      close(7)
      open(7,STATUS='SCRATCH',POSITION='REWIND')
      inquire(7,position=chr)
      if (chr.NE.'REWIND') CALL ABORT
      close(7)
      open(7,STATUS='SCRATCH',POSITION='ASIS')
      inquire(7,position=chr)
      if (chr.NE.'ASIS') CALL ABORT
      close(7)
      open(7,STATUS='SCRATCH',POSITION='APPEND')
      inquire(7,position=chr)
      if (chr.NE.'APPEND') CALL ABORT
      close(7)
      open(7,STATUS='SCRATCH',POSITION='REWIND')
      write(7,*)'this is a record written to the file'
      write(7,*)'this is another record'
      backspace(7)
      inquire(7,position=chr)
      if (chr.NE.'ASIS') CALL ABORT
      rewind(7)
      inquire(7,position=chr)
      if (chr.NE.'REWIND') CALL ABORT
      close(7)
      end