]> andersk Git - splint.git/blob - src/Headers/llgrammar_gen2.h
Initial revision
[splint.git] / src / Headers / llgrammar_gen2.h
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@*/
44
45 /* < end of bison.head > */
46
47 typedef union 
48 {
49   ltoken ltok;  /* a leaf is also an ltoken */
50   qual typequal;
51   unsigned int count;
52   /*@only@*/ ltokenList ltokenList;
53   /*@only@*/ abstDeclaratorNode abstDecl; 
54   /*@only@*/ declaratorNode declare;
55   /*@only@*/ declaratorNodeList declarelist;
56   /*@only@*/ typeExpr typeexpr;
57   /*@only@*/ arrayQualNode array;
58   /*@only@*/ quantifierNode quantifier;
59   /*@only@*/ quantifierNodeList quantifiers;
60   /*@only@*/ varNode var;
61   /*@only@*/ varNodeList vars;
62   /*@only@*/ storeRefNode storeref;
63   /*@only@*/ storeRefNodeList storereflist;
64   /*@only@*/ termNode term;
65   /*@only@*/ termNodeList termlist;
66   /*@only@*/ programNode program; 
67   /*@only@*/ stmtNode stmt;
68   /*@only@*/ claimNode claim;
69   /*@only@*/ typeNode type;
70   /*@only@*/ iterNode iter;
71   /*@only@*/ fcnNode fcn;
72   /*@only@*/ fcnNodeList fcns;
73   /*@only@*/ letDeclNode letdecl;
74   /*@only@*/ letDeclNodeList letdecls;
75   /*@only@*/ lclPredicateNode lclpredicate;
76   /*@only@*/ modifyNode modify;
77   /*@only@*/ paramNode param;
78   /*@only@*/ paramNodeList paramlist;
79   /*@only@*/ declaratorInvNodeList declaratorinvs;      
80   /*@only@*/ declaratorInvNode declaratorinv;   
81   /*@only@*/ abstBodyNode abstbody;
82   /*@only@*/ abstractNode abstract;
83   /*@only@*/ exposedNode exposed;
84   /*    taggedUnionNode taggedunion; */
85   /*@only@*/ globalList globals;
86   /*@only@*/ constDeclarationNode constdeclaration;
87   /*@only@*/ varDeclarationNode vardeclaration;
88   /*@only@*/ varDeclarationNodeList vardeclarationlist;
89   /*@only@*/ initDeclNodeList initdecls;
90   /*@only@*/ initDeclNode initdecl;
91   /*@only@*/ stDeclNodeList structdecls;
92   /*@only@*/ stDeclNode structdecl;
93   /*@only@*/ strOrUnionNode structorunion;
94   /*@only@*/ enumSpecNode enumspec; 
95   /*@only@*/ lclTypeSpecNode lcltypespec;
96   /*@only@*/ typeNameNode typname;
97   /*@only@*/ opFormNode opform;
98   /*@only@*/ sigNode signature;
99   /*@only@*/ nameNode name;
100   /*@only@*/ typeNameNodeList namelist;
101   /*@only@*/ replaceNode replace;       
102   /*@only@*/ replaceNodeList replacelist;
103   /*@only@*/ renamingNode renaming;
104   /*@only@*/ traitRefNode traitref;
105   /*@only@*/ traitRefNodeList traitreflist;
106   /*@only@*/ importNode import;
107   /*@only@*/ importNodeList importlist;
108   /*@only@*/ interfaceNode iface;
109   /*@only@*/ interfaceNodeList interfacelist; 
110   /*@only@*/ CTypesNode ctypes;
111 } YYSTYPE;
112 #define simpleOp        258
113 #define PREFIX_OP       259
114 #define POSTFIX_OP      260
115 #define LLT_MULOP       261
116 #define LLT_SEMI        262
117 #define LLT_VERTICALBAR 263
118 #define ITERATION_OP    264
119 #define LLT_LPAR        265
120 #define LLT_LBRACKET    266
121 #define selectSym       267
122 #define LLT_IF_THEN_ELSE        268
123 #define logicalOp       269
124 #define eqSepSym        270
125 #define equationSym     271
126 #define commentSym      272
127 #define LLT_WHITESPACE  273
128 #define LLT_EOL 274
129 #define LLT_TYPEDEF_NAME        275
130 #define quantifierSym   276
131 #define openSym 277
132 #define closeSym        278
133 #define sepSym  279
134 #define simpleId        280
135 #define mapSym  281
136 #define markerSym       282
137 #define preSym  283
138 #define postSym 284
139 #define anySym  285
140 #define LLT_COLON       286
141 #define LLT_COMMA       287
142 #define LLT_EQUALS      288
143 #define LLT_LBRACE      289
144 #define LLT_RBRACE      290
145 #define LLT_RBRACKET    291
146 #define LLT_RPAR        292
147 #define LLT_QUOTE       293
148 #define eqOp    294
149 #define LLT_CCHAR       295
150 #define LLT_CFLOAT      296
151 #define LLT_CINTEGER    297
152 #define LLT_LCSTRING    298
153 #define LLT_ALL 299
154 #define LLT_ANYTHING    300
155 #define LLT_BE  301
156 #define LLT_BODY        302
157 #define LLT_CLAIMS      303
158 #define LLT_CHECKS      304
159 #define LLT_CONSTANT    305
160 #define LLT_ELSE        306
161 #define LLT_ENSURES     307
162 #define LLT_FOR 308
163 #define LLT_FRESH       309
164 #define LLT_IF  310
165 #define LLT_IMMUTABLE   311
166 #define LLT_IMPORTS     312
167 #define LLT_CONSTRAINT  313
168 #define LLT_ISSUB       314
169 #define LLT_LET 315
170 #define LLT_MODIFIES    316
171 #define LLT_MUTABLE     317
172 #define LLT_NOTHING     318
173 #define LLT_INTERNAL    319
174 #define LLT_FILESYS     320
175 #define LLT_OBJ 321
176 #define LLT_OUT 322
177 #define LLT_SEF 323
178 #define LLT_ONLY        324
179 #define LLT_PARTIAL     325
180 #define LLT_OWNED       326
181 #define LLT_DEPENDENT   327
182 #define LLT_KEEP        328
183 #define LLT_KEPT        329
184 #define LLT_TEMP        330
185 #define LLT_SHARED      331
186 #define LLT_UNIQUE      332
187 #define LLT_UNUSED      333
188 #define LLT_EXITS       334
189 #define LLT_MAYEXIT     335
190 #define LLT_NEVEREXIT   336
191 #define LLT_TRUEEXIT    337
192 #define LLT_FALSEEXIT   338
193 #define LLT_UNDEF       339
194 #define LLT_KILLED      340
195 #define LLT_CHECKMOD    341
196 #define LLT_CHECKED     342
197 #define LLT_UNCHECKED   343
198 #define LLT_CHECKEDSTRICT       344
199 #define LLT_TRUENULL    345
200 #define LLT_FALSENULL   346
201 #define LLT_LNULL       347
202 #define LLT_LNOTNULL    348
203 #define LLT_RETURNED    349
204 #define LLT_OBSERVER    350
205 #define LLT_EXPOSED     351
206 #define LLT_REFCOUNTED  352
207 #define LLT_REFS        353
208 #define LLT_RELNULL     354
209 #define LLT_RELDEF      355
210 #define LLT_KILLREF     356
211 #define LLT_TEMPREF     357
212 #define LLT_NEWREF      358
213 #define LLT_PRIVATE     359
214 #define LLT_REQUIRES    360
215 #define LLT_RESULT      361
216 #define LLT_SIZEOF      362
217 #define LLT_SPEC        363
218 #define LLT_TAGGEDUNION 364
219 #define LLT_THEN        365
220 #define LLT_TYPE        366
221 #define LLT_TYPEDEF     367
222 #define LLT_UNCHANGED   368
223 #define LLT_USES        369
224 #define LLT_CHAR        370
225 #define LLT_CONST       371
226 #define LLT_DOUBLE      372
227 #define LLT_ENUM        373
228 #define LLT_FLOAT       374
229 #define LLT_INT 375
230 #define LLT_ITER        376
231 #define LLT_YIELD       377
232 #define LLT_LONG        378
233 #define LLT_SHORT       379
234 #define LLT_SIGNED      380
235 #define LLT_UNKNOWN     381
236 #define LLT_STRUCT      382
237 #define LLT_TELIPSIS    383
238 #define LLT_UNION       384
239 #define LLT_UNSIGNED    385
240 #define LLT_VOID        386
241 #define LLT_VOLATILE    387
242 #define LLT_PRINTFLIKE  388
243 #define LLT_SCANFLIKE   389
244 #define LLT_MESSAGELIKE 390
245
246
247 extern YYSTYPE yllval;
248 /*
249 ** Resets all flags in bison.head
250 */
251
252
253 /*@=allmacros@*/
254 /*@=boolint@*/
255 /*@=charint@*/
256 /*@=macroparams@*/
257 /*@=macroundef@*/
258 /*@=unreachable@*/
259 /*@=macrospec@*/
260 /*@=varuse@*/
261 /*@=ignorequals@*/
262 /*@=macrostmt@*/
263 /*@=noeffect@*/
264 /*@=shadow@*/
265 /*@=exitarg@*/
266 /*@=macroredef@*/
267 /*@=uniondef@*/
268 /*@=compdef@*/
269 /*@=matchfields@*/
270 /*@=exportlocal@*/
271 /*@=evalorderuncon@*/
272 /*@=exportheader@*/
273 /*@=typeuse@*/
274 /*@=redecl@*/
275 /*@=redef@*/
276 /*@=noparams@*/
277 /*@=ansireserved@*/
278 /*@=fielduse@*/
279 /*@=ifblock@*/
280 /*@=elseifcomplete@*/
281 /*@=whileblock@*/
282 /*@=forblock@*/
283 /*@=branchstate@*/
284 /*@=readonlytrans@*/
285 /*@=namechecks@*/
286 /*@=usedef@*/
287 /*@=systemunrecog@*/
288 /*@=dependenttrans@*/
289 /*@=unqualifiedtrans@*/
This page took 0.058611 seconds and 5 git commands to generate.