]>
Commit | Line | Data |
---|---|---|
28bf4b0b | 1 | /* |
2 | ** Inserted at beginning of c files generated by bison | |
3 | ** REMEMBER: Change bison.reset too. | |
4 | */ | |
5 | ||
6 | /*@-allmacros@*/ | |
7 | /*@+boolint@*/ | |
8 | /*@+charint@*/ | |
9 | /*@-macroparams@*/ | |
10 | /*@-macroundef@*/ | |
11 | /*@-unreachable@*/ | |
12 | /*@-macrospec@*/ | |
13 | /*@-varuse@*/ | |
14 | /*@+ignorequals@*/ | |
15 | /*@-macrostmt@*/ | |
16 | /*@-noeffect@*/ | |
17 | /*@-shadow@*/ | |
18 | /*@-exitarg@*/ | |
19 | /*@-macroredef@*/ | |
20 | /*@-uniondef@*/ | |
21 | /*@-compdef@*/ | |
22 | /*@-matchfields@*/ | |
23 | /*@-exportlocal@*/ | |
24 | /*@-evalorderuncon@*/ | |
25 | /*@-exportheader@*/ | |
26 | /*@-typeuse@*/ | |
27 | /*@-redecl@*/ | |
28 | /*@-redef@*/ | |
29 | /*@-noparams@*/ | |
30 | /*@-ansireserved@*/ | |
31 | /*@-fielduse@*/ | |
32 | /*@-ifblock@*/ | |
33 | /*@-elseifcomplete@*/ | |
34 | /*@-whileblock@*/ | |
35 | /*@-forblock@*/ | |
36 | /*@-branchstate@*/ | |
37 | /*@-readonlytrans@*/ | |
38 | /*@-namechecks@*/ | |
39 | /*@-usedef@*/ | |
40 | /*@-systemunrecog@*/ | |
41 | /*@-dependenttrans@*/ | |
42 | /*@-unqualifiedtrans@*/ | |
43 | /*@-nullassign@*/ | |
bb7c2085 | 44 | /*@-nullpass@*/ |
45 | /*@-nullptrarith*/ | |
46 | /*@-usereleased@*/ | |
60eced23 | 47 | /*@-declundef@*/ |
28bf4b0b | 48 | |
bbed3d50 | 49 | /*drl added 11/27/2001*/ |
bb7c2085 | 50 | /*@-bounds@*/ |
e015e087 | 51 | |
52 | /*drl added 12/11/2002*/ | |
53 | /*@-type@*/ | |
54 | ||
69db2541 | 55 | /*@-enummemuse@*/ |
56 | ||
28bf4b0b | 57 | /* < end of bison.head > */ |
58 | ||
69db2541 | 59 | /* A Bison parser, made by GNU Bison 2.3. */ |
60 | ||
61 | /* Skeleton interface for Bison's Yacc-like parsers in C | |
62 | ||
63 | Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 | |
64 | Free Software Foundation, Inc. | |
65 | ||
66 | This program is free software; you can redistribute it and/or modify | |
67 | it under the terms of the GNU General Public License as published by | |
68 | the Free Software Foundation; either version 2, or (at your option) | |
69 | any later version. | |
70 | ||
71 | This program is distributed in the hope that it will be useful, | |
72 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
73 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
74 | GNU General Public License for more details. | |
3e7d9038 | 75 | |
69db2541 | 76 | You should have received a copy of the GNU General Public License |
77 | along with this program; if not, write to the Free Software | |
78 | Foundation, Inc., 51 Franklin Street, Fifth Floor, | |
79 | Boston, MA 02110-1301, USA. */ | |
80 | ||
81 | /* As a special exception, you may create a larger work that contains | |
82 | part or all of the Bison parser skeleton and distribute that work | |
83 | under terms of your choice, so long as that work isn't itself a | |
84 | parser generator using the skeleton or a modified version thereof | |
85 | as a parser skeleton. Alternatively, if you modify or redistribute | |
86 | the parser skeleton itself, you may (at your option) remove this | |
87 | special exception, which will cause the skeleton and the resulting | |
88 | Bison output files to be licensed under the GNU General Public | |
89 | License without this special exception. | |
90 | ||
91 | This special exception was added by the Free Software Foundation in | |
92 | version 2.2 of Bison. */ | |
93 | ||
94 | /* Tokens. */ | |
95 | #ifndef YYTOKENTYPE | |
96 | # define YYTOKENTYPE | |
97 | /* Put the tokens into the symbol table, so that GDB and other debuggers | |
98 | know about them. */ | |
99 | enum yytokentype { | |
100 | MT_BADTOK = 258, | |
101 | MT_END = 259, | |
102 | MT_STATE = 260, | |
103 | MT_GLOBAL = 261, | |
104 | MT_CONTEXT = 262, | |
105 | MT_ONEOF = 263, | |
106 | MT_DEFAULTS = 264, | |
107 | MT_DEFAULT = 265, | |
108 | MT_REFERENCE = 266, | |
109 | MT_PARAMETER = 267, | |
110 | MT_RESULT = 268, | |
111 | MT_CLAUSE = 269, | |
112 | MT_LITERAL = 270, | |
113 | MT_NULL = 271, | |
114 | MT_ANNOTATIONS = 272, | |
115 | MT_ARROW = 273, | |
116 | MT_MERGE = 274, | |
117 | MT_TRANSFERS = 275, | |
118 | MT_PRECONDITIONS = 276, | |
119 | MT_POSTCONDITIONS = 277, | |
120 | MT_LOSEREFERENCE = 278, | |
121 | MT_AS = 279, | |
122 | MT_ERROR = 280, | |
123 | MT_PLUS = 281, | |
124 | MT_STAR = 282, | |
125 | MT_BAR = 283, | |
126 | MT_LPAREN = 284, | |
127 | MT_RPAREN = 285, | |
128 | MT_LBRACKET = 286, | |
129 | MT_RBRACKET = 287, | |
130 | MT_LBRACE = 288, | |
131 | MT_RBRACE = 289, | |
132 | MT_COMMA = 290, | |
133 | MT_CHAR = 291, | |
134 | MT_INT = 292, | |
135 | MT_FLOAT = 293, | |
136 | MT_DOUBLE = 294, | |
137 | MT_VOID = 295, | |
138 | MT_ANYTYPE = 296, | |
139 | MT_INTEGRALTYPE = 297, | |
140 | MT_UNSIGNEDINTEGRALTYPE = 298, | |
141 | MT_SIGNEDINTEGRALTYPE = 299, | |
142 | MT_CONST = 300, | |
143 | MT_VOLATILE = 301, | |
144 | MT_RESTRICT = 302, | |
145 | MT_STRINGLIT = 303, | |
146 | MT_IDENT = 304 | |
147 | }; | |
148 | #endif | |
149 | /* Tokens. */ | |
150 | #define MT_BADTOK 258 | |
151 | #define MT_END 259 | |
152 | #define MT_STATE 260 | |
153 | #define MT_GLOBAL 261 | |
154 | #define MT_CONTEXT 262 | |
155 | #define MT_ONEOF 263 | |
156 | #define MT_DEFAULTS 264 | |
157 | #define MT_DEFAULT 265 | |
158 | #define MT_REFERENCE 266 | |
159 | #define MT_PARAMETER 267 | |
160 | #define MT_RESULT 268 | |
161 | #define MT_CLAUSE 269 | |
162 | #define MT_LITERAL 270 | |
163 | #define MT_NULL 271 | |
164 | #define MT_ANNOTATIONS 272 | |
165 | #define MT_ARROW 273 | |
166 | #define MT_MERGE 274 | |
167 | #define MT_TRANSFERS 275 | |
168 | #define MT_PRECONDITIONS 276 | |
169 | #define MT_POSTCONDITIONS 277 | |
170 | #define MT_LOSEREFERENCE 278 | |
171 | #define MT_AS 279 | |
172 | #define MT_ERROR 280 | |
173 | #define MT_PLUS 281 | |
174 | #define MT_STAR 282 | |
175 | #define MT_BAR 283 | |
176 | #define MT_LPAREN 284 | |
177 | #define MT_RPAREN 285 | |
178 | #define MT_LBRACKET 286 | |
179 | #define MT_RBRACKET 287 | |
180 | #define MT_LBRACE 288 | |
181 | #define MT_RBRACE 289 | |
182 | #define MT_COMMA 290 | |
183 | #define MT_CHAR 291 | |
184 | #define MT_INT 292 | |
185 | #define MT_FLOAT 293 | |
186 | #define MT_DOUBLE 294 | |
187 | #define MT_VOID 295 | |
188 | #define MT_ANYTYPE 296 | |
189 | #define MT_INTEGRALTYPE 297 | |
190 | #define MT_UNSIGNEDINTEGRALTYPE 298 | |
191 | #define MT_SIGNEDINTEGRALTYPE 299 | |
192 | #define MT_CONST 300 | |
193 | #define MT_VOLATILE 301 | |
194 | #define MT_RESTRICT 302 | |
195 | #define MT_STRINGLIT 303 | |
196 | #define MT_IDENT 304 | |
197 | ||
198 | ||
199 | ||
200 | ||
201 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED | |
202 | typedef union YYSTYPE | |
203 | #line 62 "mtgrammar.y" | |
204 | { | |
28bf4b0b | 205 | mttok tok; |
206 | mtDeclarationNode mtdecl; | |
207 | mtDeclarationPiece mtpiece; | |
208 | mtDeclarationPieces mtpieces; | |
209 | mtContextNode mtcontext; | |
210 | mtValuesNode mtvalues; | |
211 | mtDefaultsNode mtdefaults; | |
212 | mtDefaultsDeclList mtdeflist; | |
213 | mtAnnotationsNode mtannotations; | |
214 | mtAnnotationList mtannotlist; | |
215 | mtAnnotationDecl mtannotdecl; | |
216 | mtMergeNode mtmerge; | |
217 | mtMergeItem mtmergeitem; | |
218 | mtMergeClauseList mtmergeclauselist; | |
219 | mtMergeClause mtmergeclause; | |
220 | mtTransferClauseList mttransferclauselist; | |
221 | mtTransferClause mttransferclause; | |
222 | mtTransferAction mttransferaction; | |
223 | mtLoseReferenceList mtlosereferencelist; | |
224 | mtLoseReference mtlosereference; | |
f9264521 | 225 | pointers pointers; |
28bf4b0b | 226 | /*@only@*/ cstringList cstringlist; |
227 | ctype ctyp; | |
228 | /*@only@*/ qtype qtyp; | |
f9264521 | 229 | qual qual; |
230 | qualList quals; | |
69db2541 | 231 | } |
232 | /* Line 1489 of yacc.c. */ | |
233 | #line 176 "mtgrammar.tab.h" | |
234 | YYSTYPE; | |
235 | # define yystype YYSTYPE /* obsolescent; will be withdrawn */ | |
236 | # define YYSTYPE_IS_DECLARED 1 | |
3e7d9038 | 237 | # define YYSTYPE_IS_TRIVIAL 1 |
238 | #endif | |
69db2541 | 239 | |
240 | ||
241 | ||
28bf4b0b | 242 | /* |
243 | ** Resets all flags in bison.head | |
244 | */ | |
245 | ||
246 | ||
247 | /*@=allmacros@*/ | |
248 | /*@=boolint@*/ | |
249 | /*@=charint@*/ | |
250 | /*@=macroparams@*/ | |
251 | /*@=macroundef@*/ | |
252 | /*@=unreachable@*/ | |
253 | /*@=macrospec@*/ | |
254 | /*@=varuse@*/ | |
255 | /*@=ignorequals@*/ | |
256 | /*@=macrostmt@*/ | |
257 | /*@=noeffect@*/ | |
258 | /*@=shadow@*/ | |
259 | /*@=exitarg@*/ | |
260 | /*@=macroredef@*/ | |
261 | /*@=uniondef@*/ | |
262 | /*@=compdef@*/ | |
263 | /*@=matchfields@*/ | |
264 | /*@=exportlocal@*/ | |
265 | /*@=evalorderuncon@*/ | |
266 | /*@=exportheader@*/ | |
267 | /*@=typeuse@*/ | |
268 | /*@=redecl@*/ | |
269 | /*@=redef@*/ | |
270 | /*@=noparams@*/ | |
271 | /*@=ansireserved@*/ | |
272 | /*@=fielduse@*/ | |
273 | /*@=ifblock@*/ | |
274 | /*@=elseifcomplete@*/ | |
275 | /*@=whileblock@*/ | |
276 | /*@=forblock@*/ | |
277 | /*@=branchstate@*/ | |
278 | /*@=readonlytrans@*/ | |
279 | /*@=namechecks@*/ | |
280 | /*@=usedef@*/ | |
281 | /*@=systemunrecog@*/ | |
282 | /*@=dependenttrans@*/ | |
283 | /*@=unqualifiedtrans@*/ | |
60eced23 | 284 | /*@=declundef@*/ |
bbed3d50 | 285 | |
286 | ||
287 | /*drl added 11/27/2001*/ | |
bb7c2085 | 288 | /*@=bounds@*/ |
e015e087 | 289 | |
290 | /*drl added 12/11/2002*/ | |
291 | /*@=type@*/ | |
69db2541 | 292 | |
293 | /*@=enummemuse@*/ |