aboutsummaryrefslogtreecommitdiff
blob: 40ac1df8710a6062cd3f6111d66d3cbbfa74809b (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
45
46
47
48
49
! RUN: %S/test_errors.sh %s %t %flang_fc1
  character(kind=1,len=100) msg1
  character(kind=2,len=200) msg2
  character, parameter :: const_msg = 'doof'
  integer(1) stat1
  integer(2) stat2
  integer(8) stat8

  open(10)

  backspace(10)
  backspace(10, iomsg=msg1, iostat=stat1, err=9)

  endfile(unit=10)
  endfile(iostat=stat2, err=9, unit=10, iomsg=msg1)

  rewind(10)
  rewind(iomsg=msg1, iostat=stat2, err=9, unit=10)

  flush(10)
  flush(iomsg=msg1, unit=10, iostat=stat8, err=9)

  wait(10)
  wait(99, id=id1, end=9, eor=9, err=9, iostat=stat1, iomsg=msg1)

  !ERROR: Duplicate UNIT specifier
  backspace(10, unit=11)

  !ERROR: Duplicate IOSTAT specifier
  endfile(iostat=stat2, err=9, unit=10, iostat=stat8, iomsg=msg1)

  !ERROR: IOMSG variable 'const_msg' must be definable
  flush(iomsg=const_msg, unit=10, iostat=stat8, err=9)

  !ERROR: REWIND statement must have a UNIT number specifier
  rewind(iostat=stat2)

  !ERROR: Duplicate ERR specifier
  !ERROR: Duplicate ERR specifier
  flush(err=9, unit=10, &
        err=9, &
        err=9)

  !ERROR: Duplicate ID specifier
  !ERROR: WAIT statement must have a UNIT number specifier
  wait(id=id2, eor=9, id=id3)

9 continue
end