2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / f / stc.h
blob37feba69b8535466a08013cdf25323236045d3e7
1 /* stc.h -- Private #include File (module.h template V1.0)
2 Copyright (C) 1995, 2003 Free Software Foundation, Inc.
3 Contributed by James Craig Burley.
5 This file is part of GNU Fortran.
7 GNU Fortran is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
12 GNU Fortran is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU Fortran; see the file COPYING. If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
20 02111-1307, USA.
22 Owning Modules:
23 stc.c
25 Modifications:
28 /* Allow multiple inclusion to work. */
30 #ifndef GCC_F_STC_H
31 #define GCC_F_STC_H
33 /* Simple definitions and enumerations. */
36 /* Typedefs. */
39 /* Include files needed by this one. */
41 #include "bad.h"
42 #include "bld.h"
43 #include "expr.h"
44 #include "lex.h"
45 #include "stp.h"
46 #include "str.h"
47 #include "stt.h"
49 /* Structure definitions. */
52 /* Global objects accessed by users of this module. */
54 extern ffeexprContext ffestc_iolist_context_;
56 /* Declare functions with prototypes. */
58 void ffestc_decl_start (ffestpType type, ffelexToken typet, ffebld kind,
59 ffelexToken kindt, ffebld len, ffelexToken lent);
60 void ffestc_decl_attrib (ffestpAttrib attrib, ffelexToken attribt,
61 ffestrOther intent_kw, ffesttDimList dims);
62 void ffestc_decl_item (ffelexToken name, ffebld kind, ffelexToken kindt,
63 ffesttDimList dims, ffebld len, ffelexToken lent,
64 ffebld init, ffelexToken initt, bool clist);
65 void ffestc_decl_itemstartvals (void);
66 void ffestc_decl_itemvalue (ffebld repeat, ffelexToken repeat_token,
67 ffebld value, ffelexToken value_token);
68 void ffestc_decl_itemendvals (ffelexToken t);
69 void ffestc_decl_finish (void);
70 void ffestc_elsewhere (ffelexToken where_token);
71 void ffestc_end (void);
72 void ffestc_eof (void);
73 bool ffestc_exec_transition (void);
74 void ffestc_ffebad_here_doiter (ffebadIndex i, ffesymbol s);
75 void ffestc_init_3 (void);
76 void ffestc_init_4 (void);
77 bool ffestc_is_decl_not_R1219 (void);
78 bool ffestc_is_entry_in_subr (void);
79 bool ffestc_is_let_not_V027 (void);
80 #define ffestc_let ffestc_R737
81 void ffestc_terminate_4 (void);
82 void ffestc_R501_start (ffestpType type, ffelexToken typet, ffebld kind,
83 ffelexToken kindt, ffebld len, ffelexToken lent);
84 void ffestc_R501_attrib (ffestpAttrib attrib, ffelexToken attribt,
85 ffestrOther intent_kw, ffesttDimList dims);
86 void ffestc_R501_item (ffelexToken name, ffebld kind, ffelexToken kindt,
87 ffesttDimList dims, ffebld len, ffelexToken lent, ffebld init,
88 ffelexToken initt, bool clist);
89 void ffestc_R501_itemstartvals (void);
90 void ffestc_R501_itemvalue (ffebld repeat, ffelexToken repeat_token,
91 ffebld value, ffelexToken value_token);
92 void ffestc_R501_itemendvals (ffelexToken t);
93 void ffestc_R501_finish (void);
94 void ffestc_R522 (void);
95 void ffestc_R522start (void);
96 void ffestc_R522item_object (ffelexToken name);
97 void ffestc_R522item_cblock (ffelexToken name);
98 void ffestc_R522finish (void);
99 void ffestc_R524_start (bool virtual);
100 void ffestc_R524_item (ffelexToken name, ffesttDimList dims);
101 void ffestc_R524_finish (void);
102 void ffestc_R528_start (void);
103 void ffestc_R528_item_object (ffebld expr, ffelexToken expr_token);
104 void ffestc_R528_item_startvals (void);
105 void ffestc_R528_item_value (ffebld repeat, ffelexToken repeat_token,
106 ffebld value, ffelexToken value_token);
107 void ffestc_R528_item_endvals (ffelexToken t);
108 void ffestc_R528_finish (void);
109 void ffestc_R537_start (void);
110 void ffestc_R537_item (ffebld dest, ffelexToken dest_token, ffebld source,
111 ffelexToken source_token);
112 void ffestc_R537_finish (void);
113 void ffestc_R539 (void);
114 void ffestc_R539start (void);
115 void ffestc_R539item (ffestpType type, ffebld kind, ffelexToken kindt,
116 ffebld len, ffelexToken lent, ffesttImpList letters);
117 void ffestc_R539finish (void);
118 void ffestc_R542_start (void);
119 void ffestc_R542_item_nlist (ffelexToken name);
120 void ffestc_R542_item_nitem (ffelexToken name);
121 void ffestc_R542_finish (void);
122 void ffestc_R544_start (void);
123 void ffestc_R544_item (ffesttExprList exprlist);
124 void ffestc_R544_finish (void);
125 void ffestc_R547_start (void);
126 void ffestc_R547_item_object (ffelexToken name, ffesttDimList dims);
127 void ffestc_R547_item_cblock (ffelexToken name);
128 void ffestc_R547_finish (void);
129 void ffestc_R737 (ffebld dest, ffebld source, ffelexToken source_token);
130 void ffestc_R803 (ffelexToken construct_name, ffebld expr,
131 ffelexToken expr_token);
132 void ffestc_R804 (ffebld expr, ffelexToken expr_token, ffelexToken name);
133 void ffestc_R805 (ffelexToken name);
134 void ffestc_R806 (ffelexToken name);
135 void ffestc_R807 (ffebld expr, ffelexToken expr_token);
136 void ffestc_R809 (ffelexToken construct_name, ffebld expr,
137 ffelexToken expr_token);
138 void ffestc_R810 (ffesttCaseList cases, ffelexToken name);
139 void ffestc_R811 (ffelexToken name);
140 void ffestc_R819A (ffelexToken construct_name, ffelexToken label, ffebld var,
141 ffelexToken var_token, ffebld start, ffelexToken start_token, ffebld end,
142 ffelexToken end_token, ffebld incr, ffelexToken incr_token);
143 void ffestc_R819B (ffelexToken construct_name, ffelexToken label, ffebld expr,
144 ffelexToken expr_token);
145 void ffestc_R820A (ffelexToken construct_name, ffebld var,
146 ffelexToken var_token, ffebld start, ffelexToken start_token, ffebld end,
147 ffelexToken end_token, ffebld incr, ffelexToken incr_token);
148 void ffestc_R820B (ffelexToken construct_name, ffebld expr,
149 ffelexToken expr_token);
150 void ffestc_R825 (ffelexToken name);
151 void ffestc_R834 (ffelexToken name);
152 void ffestc_R835 (ffelexToken name);
153 void ffestc_R836 (ffelexToken label);
154 void ffestc_R837 (ffesttTokenList label_toks, ffebld expr,
155 ffelexToken expr_token);
156 void ffestc_R838 (ffelexToken label, ffebld target, ffelexToken target_token);
157 void ffestc_R839 (ffebld target, ffelexToken target_token,
158 ffesttTokenList label_toks);
159 void ffestc_R840 (ffebld expr, ffelexToken expr_token, ffelexToken neg,
160 ffelexToken zero, ffelexToken pos);
161 void ffestc_R841 (void);
162 void ffestc_R842 (ffebld expr, ffelexToken expr_token);
163 void ffestc_R843 (ffebld expr, ffelexToken expr_token);
164 void ffestc_R904 (void);
165 void ffestc_R907 (void);
166 void ffestc_R909_start (bool only_format);
167 void ffestc_R909_item (ffebld expr, ffelexToken expr_token);
168 void ffestc_R909_finish (void);
169 void ffestc_R910_start (void);
170 void ffestc_R910_item (ffebld expr, ffelexToken expr_token);
171 void ffestc_R910_finish (void);
172 void ffestc_R911_start (void);
173 void ffestc_R911_item (ffebld expr, ffelexToken expr_token);
174 void ffestc_R911_finish (void);
175 void ffestc_R919 (void);
176 void ffestc_R920 (void);
177 void ffestc_R921 (void);
178 void ffestc_R923A (void);
179 void ffestc_R923B_start (void);
180 void ffestc_R923B_item (ffebld expr, ffelexToken expr_token);
181 void ffestc_R923B_finish (void);
182 void ffestc_R1001 (ffesttFormatList f);
183 void ffestc_R1102 (ffelexToken name);
184 void ffestc_R1103 (ffelexToken name);
185 void ffestc_R1111 (ffelexToken name);
186 void ffestc_R1112 (ffelexToken name);
187 void ffestc_R1207_start (void);
188 void ffestc_R1207_item (ffelexToken name);
189 void ffestc_R1207_finish (void);
190 void ffestc_R1208_start (void);
191 void ffestc_R1208_item (ffelexToken name);
192 void ffestc_R1208_finish (void);
193 void ffestc_R1212 (ffebld expr, ffelexToken expr_token);
194 void ffestc_R1219 (ffelexToken funcname, ffesttTokenList args,
195 ffelexToken final, ffestpType type, ffebld kind, ffelexToken kindt,
196 ffebld len, ffelexToken lent, ffelexToken recursive, ffelexToken result);
197 void ffestc_R1221 (ffelexToken name);
198 void ffestc_R1223 (ffelexToken subrname, ffesttTokenList args,
199 ffelexToken final, ffelexToken recursive);
200 void ffestc_R1225 (ffelexToken name);
201 void ffestc_R1226 (ffelexToken entryname, ffesttTokenList args,
202 ffelexToken final);
203 void ffestc_R1227 (ffebld expr, ffelexToken expr_token);
204 void ffestc_R1229_start (ffelexToken name, ffesttTokenList args,
205 ffelexToken final);
206 void ffestc_R1229_finish (ffebld expr, ffelexToken expr_token);
207 void ffestc_S3P4 (ffebld filename, ffelexToken filename_token);
208 void ffestc_V014_start (void);
209 void ffestc_V014_item_object (ffelexToken name);
210 void ffestc_V014_item_cblock (ffelexToken name);
211 void ffestc_V014_finish (void);
212 void ffestc_V020_start (void);
213 void ffestc_V020_item (ffebld expr, ffelexToken expr_token);
214 void ffestc_V020_finish (void);
215 void ffestc_V027_start (void);
216 void ffestc_V027_item (ffelexToken dest_token, ffebld source,
217 ffelexToken source_token);
218 void ffestc_V027_finish (void);
219 void ffestc_any (void);
221 /* Define macros. */
223 #define ffestc_context_iolist() ffestc_iolist_context_
224 #define ffestc_init_0()
225 #define ffestc_init_1()
226 #define ffestc_init_2()
227 #define ffestc_terminate_0()
228 #define ffestc_terminate_1()
229 #define ffestc_terminate_2()
230 #define ffestc_terminate_3()
232 /* End of #include file. */
234 #endif /* ! GCC_F_STC_H */