1 /* Copyright (C
) 2005-2017 Free Software Foundation
, Inc.
3 This file is part of GCC.
5 GCC is free software
; you can redistribute it and
/or modify it under
6 the terms of the GNU General Public License as published by the Free
7 Software Foundation
; either version
3, or (at your option
) any later
10 GCC is distributed in the hope that it will be useful
, but WITHOUT ANY
11 WARRANTY
; without even the implied warranty of MERCHANTABILITY or
12 FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 You should have received a copy of the GNU General Public License
16 along with GCC
; see the file COPYING3. If not see
17 <http
://www.gnu.org
/licenses
/>.
*/
19 /* Make sure to keep in sync with libgfortran
/io
/io.
h (st_parameter_*).
*/
20 #ifndef IOPARM_common_libreturn_mask
21 #define IOPARM_common_libreturn_mask
3
22 #define IOPARM_common_libreturn_ok
0
23 #define IOPARM_common_libreturn_error
1
24 #define IOPARM_common_libreturn_end
2
25 #define IOPARM_common_libreturn_eor
3
26 #define
IOPARM_common_err (1 << 2)
27 #define
IOPARM_common_end (1 << 3)
28 #define
IOPARM_common_eor (1 << 4)
30 IOPARM (common
, flags
, 0, int4
)
31 IOPARM (common
, unit
, 0, int4
)
32 IOPARM (common
, filename
, 0, pchar
)
33 IOPARM (common
, line
, 0, int4
)
34 IOPARM (common
, iomsg
, 1 << 6, char2
)
35 IOPARM (common
, iostat
, 1 << 5, pint4
)
36 IOPARM (open
, common
, 0, common
)
37 IOPARM (open
, recl_in
, 1 << 7, int4
)
38 IOPARM (open
, file
, 1 << 8, char2
)
39 IOPARM (open
, status
, 1 << 9, char1
)
40 IOPARM (open
, access
, 1 << 10, char2
)
41 IOPARM (open
, form
, 1 << 11, char1
)
42 IOPARM (open
, blank
, 1 << 12, char2
)
43 IOPARM (open
, position
, 1 << 13, char1
)
44 IOPARM (open
, action
, 1 << 14, char2
)
45 IOPARM (open
, delim
, 1 << 15, char1
)
46 IOPARM (open
, pad
, 1 << 16, char2
)
47 IOPARM (open
, convert
, 1 << 17, char1
)
48 IOPARM (open
, decimal
, 1 << 18, char2
)
49 IOPARM (open
, encoding
, 1 << 19, char1
)
50 IOPARM (open
, round
, 1 << 20, char2
)
51 IOPARM (open
, sign
, 1 << 21, char1
)
52 IOPARM (open
, asynchronous
, 1 << 22, char2
)
53 IOPARM (open
, newunit
, 1 << 23, pint4
)
54 IOPARM (open
, readonly
, 1 << 24, int4
)
55 IOPARM (open
, cc
, 1 << 25, char2
)
56 IOPARM (open
, share
, 1 << 26, char1
)
57 IOPARM (close
, common
, 0, common
)
58 IOPARM (close
, status
, 1 << 7, char1
)
59 IOPARM (filepos
, common
, 0, common
)
60 IOPARM (inquire
, common
, 0, common
)
61 IOPARM (inquire
, exist
, 1 << 7, pint4
)
62 IOPARM (inquire
, opened
, 1 << 8, pint4
)
63 IOPARM (inquire
, number
, 1 << 9, pint4
)
64 IOPARM (inquire
, named
, 1 << 10, pint4
)
65 IOPARM (inquire
, nextrec
, 1 << 11, pint4
)
66 IOPARM (inquire
, recl_out
, 1 << 12, pint4
)
67 IOPARM (inquire
, strm_pos_out
, 1 << 13, pintio
)
68 IOPARM (inquire
, file
, 1 << 14, char1
)
69 IOPARM (inquire
, access
, 1 << 15, char2
)
70 IOPARM (inquire
, form
, 1 << 16, char1
)
71 IOPARM (inquire
, blank
, 1 << 17, char2
)
72 IOPARM (inquire
, position
, 1 << 18, char1
)
73 IOPARM (inquire
, action
, 1 << 19, char2
)
74 IOPARM (inquire
, delim
, 1 << 20, char1
)
75 IOPARM (inquire
, pad
, 1 << 21, char2
)
76 IOPARM (inquire
, name
, 1 << 22, char1
)
77 IOPARM (inquire
, sequential
, 1 << 23, char2
)
78 IOPARM (inquire
, direct
, 1 << 24, char1
)
79 IOPARM (inquire
, formatted
, 1 << 25, char2
)
80 IOPARM (inquire
, unformatted
, 1 << 26, char1
)
81 IOPARM (inquire
, read
, 1 << 27, char2
)
82 IOPARM (inquire
, write
, 1 << 28, char1
)
83 IOPARM (inquire
, readwrite
, 1 << 29, char2
)
84 IOPARM (inquire
, convert
, 1 << 30, char1
)
85 IOPARM (inquire
, flags2
, 1U << 31, int4
)
86 IOPARM (inquire
, asynchronous
, 1 << 0, char1
)
87 IOPARM (inquire
, decimal
, 1 << 1, char2
)
88 IOPARM (inquire
, encoding
, 1 << 2, char1
)
89 IOPARM (inquire
, round
, 1 << 3, char2
)
90 IOPARM (inquire
, sign
, 1 << 4, char1
)
91 IOPARM (inquire
, pending
, 1 << 5, pint4
)
92 IOPARM (inquire
, size
, 1 << 6, pintio
)
93 IOPARM (inquire
, id
, 1 << 7, pint4
)
94 IOPARM (inquire
, iqstream
, 1 << 8, char1
)
95 IOPARM (inquire
, share
, 1 << 9, char2
)
96 IOPARM (inquire
, cc
, 1 << 10, char1
)
97 IOPARM (wait
, common
, 0, common
)
98 IOPARM (wait
, id
, 1 << 7, pint4
)
99 IOPARM (dt
, common
, 0, common
)
100 #define
IOPARM_dt_list_format (1 << 7)
101 #define
IOPARM_dt_namelist_read_mode (1 << 8)
102 IOPARM (dt
, rec
, 1 << 9, intio
)
103 IOPARM (dt
, size
, 1 << 10, pintio
)
104 IOPARM (dt
, iolength
, 1 << 11, pintio
)
105 IOPARM (dt
, internal_unit_desc
, 0, parray
)
106 IOPARM (dt
, format
, 1 << 12, char1
)
107 IOPARM (dt
, advance
, 1 << 13, char2
)
108 IOPARM (dt
, internal_unit
, 1 << 14, char1
)
109 IOPARM (dt
, namelist_name
, 1 << 15, char2
)
110 IOPARM (dt
, id
, 1 << 16, pint4
)
111 IOPARM (dt
, pos
, 1 << 17, intio
)
112 IOPARM (dt
, asynchronous
, 1 << 18, char1
)
113 IOPARM (dt
, blank
, 1 << 19, char2
)
114 IOPARM (dt
, decimal
, 1 << 20, char1
)
115 IOPARM (dt
, delim
, 1 << 21, char2
)
116 IOPARM (dt
, pad
, 1 << 22, char1
)
117 IOPARM (dt
, round
, 1 << 23, char2
)
118 IOPARM (dt
, sign
, 1 << 24, char1
)
119 #define
IOPARM_dt_f2003 (1 << 25)
120 #define
IOPARM_dt_dtio (1 << 26)
121 #define
IOPARM_dt_default_exp (1 << 27)
122 IOPARM (dt
, u
, 0, pad
)