58c840f1a0f25b2fbad6cf82f6396e8004393aa9
[bpt/coccinelle.git] / parsing_cocci / parser_cocci_menhir.ml
1
2 # 23 "parser_cocci_menhir.mly"
3
4
5 (* Not clear how to allow function declarations to specify a return type
6 and how to allow both to be specified as static, because they are in
7 different rules. The rules seem to have to be combined, which would allow
8 functions to be declared as local variables *)
9
10 (* Not clear how to let a function have a parameter of type void. At the
11 moment, void is allowed to be the type of a variable, which is wrong, and a
12 parameter needs both a type and an identifier *)
13 module Ast0 = Ast0_cocci
14 module Ast = Ast_cocci
15 module P = Parse_aux
16
17 # 18 "parser_cocci_menhir.ml"
18 exception Error
19
20 type token =
21 | Tvolatile of (
22 # 54 "parser_cocci_menhir.mly"
23 (Data.clt)
24 # 25 "parser_cocci_menhir.ml"
25 )
26 | Tvoid of (
27 # 50 "parser_cocci_menhir.mly"
28 (Data.clt)
29 # 30 "parser_cocci_menhir.ml"
30 )
31 | Tunsigned of (
32 # 51 "parser_cocci_menhir.mly"
33 (Data.clt)
34 # 35 "parser_cocci_menhir.ml"
35 )
36 | Tunion of (
37 # 50 "parser_cocci_menhir.mly"
38 (Data.clt)
39 # 40 "parser_cocci_menhir.ml"
40 )
41 | Ttypedef of (
42 # 53 "parser_cocci_menhir.mly"
43 (Data.clt)
44 # 45 "parser_cocci_menhir.ml"
45 )
46 | Tstruct of (
47 # 50 "parser_cocci_menhir.mly"
48 (Data.clt)
49 # 50 "parser_cocci_menhir.ml"
50 )
51 | Tstatic of (
52 # 53 "parser_cocci_menhir.mly"
53 (Data.clt)
54 # 55 "parser_cocci_menhir.ml"
55 )
56 | Tsigned of (
57 # 51 "parser_cocci_menhir.mly"
58 (Data.clt)
59 # 60 "parser_cocci_menhir.ml"
60 )
61 | Tshort of (
62 # 49 "parser_cocci_menhir.mly"
63 (Data.clt)
64 # 65 "parser_cocci_menhir.ml"
65 )
66 | Tregister of (
67 # 53 "parser_cocci_menhir.mly"
68 (Data.clt)
69 # 70 "parser_cocci_menhir.ml"
70 )
71 | Tlong of (
72 # 49 "parser_cocci_menhir.mly"
73 (Data.clt)
74 # 75 "parser_cocci_menhir.ml"
75 )
76 | Tlist
77 | Tint of (
78 # 49 "parser_cocci_menhir.mly"
79 (Data.clt)
80 # 81 "parser_cocci_menhir.ml"
81 )
82 | Tinline of (
83 # 53 "parser_cocci_menhir.mly"
84 (Data.clt)
85 # 86 "parser_cocci_menhir.ml"
86 )
87 | Tfloat of (
88 # 49 "parser_cocci_menhir.mly"
89 (Data.clt)
90 # 91 "parser_cocci_menhir.ml"
91 )
92 | Textern of (
93 # 53 "parser_cocci_menhir.mly"
94 (Data.clt)
95 # 96 "parser_cocci_menhir.ml"
96 )
97 | Tdouble of (
98 # 49 "parser_cocci_menhir.mly"
99 (Data.clt)
100 # 101 "parser_cocci_menhir.ml"
101 )
102 | Tconst of (
103 # 54 "parser_cocci_menhir.mly"
104 (Data.clt)
105 # 106 "parser_cocci_menhir.ml"
106 )
107 | Tchar of (
108 # 49 "parser_cocci_menhir.mly"
109 (Data.clt)
110 # 111 "parser_cocci_menhir.ml"
111 )
112 | Tauto of (
113 # 53 "parser_cocci_menhir.mly"
114 (Data.clt)
115 # 116 "parser_cocci_menhir.ml"
116 )
117 | Tattr of (
118 # 55 "parser_cocci_menhir.mly"
119 (string * Data.clt)
120 # 121 "parser_cocci_menhir.ml"
121 )
122 | TXor of (
123 # 91 "parser_cocci_menhir.mly"
124 (Data.clt)
125 # 126 "parser_cocci_menhir.ml"
126 )
127 | TWords
128 | TWhy0
129 | TWhy of (
130 # 75 "parser_cocci_menhir.mly"
131 (Data.clt)
132 # 133 "parser_cocci_menhir.ml"
133 )
134 | TWhile of (
135 # 57 "parser_cocci_menhir.mly"
136 (Data.clt)
137 # 138 "parser_cocci_menhir.ml"
138 )
139 | TWhen of (
140 # 73 "parser_cocci_menhir.mly"
141 (Data.clt)
142 # 143 "parser_cocci_menhir.ml"
143 )
144 | TUsing
145 | TTypedef
146 | TTypeId of (
147 # 59 "parser_cocci_menhir.mly"
148 (string * Data.clt)
149 # 150 "parser_cocci_menhir.ml"
150 )
151 | TType
152 | TTilde of (
153 # 98 "parser_cocci_menhir.mly"
154 (Data.clt)
155 # 156 "parser_cocci_menhir.ml"
156 )
157 | TSwitch of (
158 # 57 "parser_cocci_menhir.mly"
159 (Data.clt)
160 # 161 "parser_cocci_menhir.ml"
161 )
162 | TString of (
163 # 86 "parser_cocci_menhir.mly"
164 (string * Data.clt)
165 # 166 "parser_cocci_menhir.ml"
166 )
167 | TStrict of (
168 # 73 "parser_cocci_menhir.mly"
169 (Data.clt)
170 # 171 "parser_cocci_menhir.ml"
171 )
172 | TStatement
173 | TSizeof of (
174 # 58 "parser_cocci_menhir.mly"
175 (Data.clt)
176 # 177 "parser_cocci_menhir.ml"
177 )
178 | TShOp of (
179 # 95 "parser_cocci_menhir.mly"
180 (Ast_cocci.arithOp * Data.clt)
181 # 182 "parser_cocci_menhir.ml"
182 )
183 | TScriptData of (
184 # 70 "parser_cocci_menhir.mly"
185 (string)
186 # 187 "parser_cocci_menhir.ml"
187 )
188 | TRuleName of (
189 # 47 "parser_cocci_menhir.mly"
190 (string)
191 # 192 "parser_cocci_menhir.ml"
192 )
193 | TRightIso
194 | TReverse
195 | TReturn of (
196 # 57 "parser_cocci_menhir.mly"
197 (Data.clt)
198 # 199 "parser_cocci_menhir.ml"
199 )
200 | TPure
201 | TPtrOp of (
202 # 103 "parser_cocci_menhir.mly"
203 (Data.clt)
204 # 205 "parser_cocci_menhir.ml"
205 )
206 | TPtVirg of (
207 # 106 "parser_cocci_menhir.mly"
208 (Data.clt)
209 # 210 "parser_cocci_menhir.ml"
210 )
211 | TPragma of (
212 # 78 "parser_cocci_menhir.mly"
213 (string)
214 # 215 "parser_cocci_menhir.ml"
215 )
216 | TPosition
217 | TPosAny
218 | TPlusFile of (
219 # 82 "parser_cocci_menhir.mly"
220 (string * Data.clt)
221 # 222 "parser_cocci_menhir.ml"
222 )
223 | TPlus0
224 | TPlus of (
225 # 97 "parser_cocci_menhir.mly"
226 (Data.clt)
227 # 228 "parser_cocci_menhir.ml"
228 )
229 | TPathIsoFile of (
230 # 78 "parser_cocci_menhir.mly"
231 (string)
232 # 233 "parser_cocci_menhir.ml"
233 )
234 | TParameter
235 | TPOEllipsis of (
236 # 72 "parser_cocci_menhir.mly"
237 (Data.clt)
238 # 239 "parser_cocci_menhir.ml"
239 )
240 | TPCEllipsis of (
241 # 72 "parser_cocci_menhir.mly"
242 (Data.clt)
243 # 244 "parser_cocci_menhir.ml"
244 )
245 | TPArob
246 | TOrLog of (
247 # 88 "parser_cocci_menhir.mly"
248 (Data.clt)
249 # 250 "parser_cocci_menhir.ml"
250 )
251 | TOr of (
252 # 90 "parser_cocci_menhir.mly"
253 (Data.clt)
254 # 255 "parser_cocci_menhir.ml"
255 )
256 | TOn
257 | TOPar0 of (
258 # 75 "parser_cocci_menhir.mly"
259 (Data.clt)
260 # 261 "parser_cocci_menhir.ml"
261 )
262 | TOPar of (
263 # 75 "parser_cocci_menhir.mly"
264 (Data.clt)
265 # 266 "parser_cocci_menhir.ml"
266 )
267 | TOEllipsis of (
268 # 72 "parser_cocci_menhir.mly"
269 (Data.clt)
270 # 271 "parser_cocci_menhir.ml"
271 )
272 | TOCro of (
273 # 101 "parser_cocci_menhir.mly"
274 (Data.clt)
275 # 276 "parser_cocci_menhir.ml"
276 )
277 | TOBrace of (
278 # 100 "parser_cocci_menhir.mly"
279 (Data.clt)
280 # 281 "parser_cocci_menhir.ml"
281 )
282 | TNothing
283 | TNotEq of (
284 # 93 "parser_cocci_menhir.mly"
285 (Data.clt)
286 # 287 "parser_cocci_menhir.ml"
287 )
288 | TNever
289 | TName
290 | TMul of (
291 # 98 "parser_cocci_menhir.mly"
292 (Data.clt)
293 # 294 "parser_cocci_menhir.ml"
294 )
295 | TMinusFile of (
296 # 82 "parser_cocci_menhir.mly"
297 (string * Data.clt)
298 # 299 "parser_cocci_menhir.ml"
299 )
300 | TMinus of (
301 # 97 "parser_cocci_menhir.mly"
302 (Data.clt)
303 # 304 "parser_cocci_menhir.ml"
304 )
305 | TMid0 of (
306 # 76 "parser_cocci_menhir.mly"
307 (Data.clt)
308 # 309 "parser_cocci_menhir.ml"
309 )
310 | TMetaType of (
311 # 64 "parser_cocci_menhir.mly"
312 (Parse_aux.info)
313 # 314 "parser_cocci_menhir.ml"
314 )
315 | TMetaStmList of (
316 # 64 "parser_cocci_menhir.mly"
317 (Parse_aux.info)
318 # 319 "parser_cocci_menhir.ml"
319 )
320 | TMetaStm of (
321 # 64 "parser_cocci_menhir.mly"
322 (Parse_aux.info)
323 # 324 "parser_cocci_menhir.ml"
324 )
325 | TMetaPos of (
326 # 67 "parser_cocci_menhir.mly"
327 (Parse_aux.pos_info)
328 # 329 "parser_cocci_menhir.ml"
329 )
330 | TMetaParamList of (
331 # 65 "parser_cocci_menhir.mly"
332 (Parse_aux.list_info)
333 # 334 "parser_cocci_menhir.ml"
334 )
335 | TMetaParam of (
336 # 64 "parser_cocci_menhir.mly"
337 (Parse_aux.info)
338 # 339 "parser_cocci_menhir.ml"
339 )
340 | TMetaLocalIdExp of (
341 # 66 "parser_cocci_menhir.mly"
342 (Parse_aux.typed_info)
343 # 344 "parser_cocci_menhir.ml"
344 )
345 | TMetaLocalFunc of (
346 # 61 "parser_cocci_menhir.mly"
347 (Parse_aux.idinfo)
348 # 349 "parser_cocci_menhir.ml"
349 )
350 | TMetaIterator of (
351 # 62 "parser_cocci_menhir.mly"
352 (Parse_aux.idinfo)
353 # 354 "parser_cocci_menhir.ml"
354 )
355 | TMetaIdExp of (
356 # 66 "parser_cocci_menhir.mly"
357 (Parse_aux.typed_info)
358 # 359 "parser_cocci_menhir.ml"
359 )
360 | TMetaId of (
361 # 61 "parser_cocci_menhir.mly"
362 (Parse_aux.idinfo)
363 # 364 "parser_cocci_menhir.ml"
364 )
365 | TMetaFunc of (
366 # 61 "parser_cocci_menhir.mly"
367 (Parse_aux.idinfo)
368 # 369 "parser_cocci_menhir.ml"
369 )
370 | TMetaExpList of (
371 # 65 "parser_cocci_menhir.mly"
372 (Parse_aux.list_info)
373 # 374 "parser_cocci_menhir.ml"
374 )
375 | TMetaExp of (
376 # 66 "parser_cocci_menhir.mly"
377 (Parse_aux.typed_info)
378 # 379 "parser_cocci_menhir.ml"
379 )
380 | TMetaErr of (
381 # 63 "parser_cocci_menhir.mly"
382 (Parse_aux.expinfo)
383 # 384 "parser_cocci_menhir.ml"
384 )
385 | TMetaDeclarer of (
386 # 62 "parser_cocci_menhir.mly"
387 (Parse_aux.idinfo)
388 # 389 "parser_cocci_menhir.ml"
389 )
390 | TMetaConst of (
391 # 66 "parser_cocci_menhir.mly"
392 (Parse_aux.typed_info)
393 # 394 "parser_cocci_menhir.ml"
394 )
395 | TMPtVirg
396 | TLogOp of (
397 # 94 "parser_cocci_menhir.mly"
398 (Ast_cocci.logicalOp * Data.clt)
399 # 400 "parser_cocci_menhir.ml"
400 )
401 | TLocal
402 | TLineEnd of (
403 # 73 "parser_cocci_menhir.mly"
404 (Data.clt)
405 # 406 "parser_cocci_menhir.ml"
406 )
407 | TIteratorId of (
408 # 59 "parser_cocci_menhir.mly"
409 (string * Data.clt)
410 # 411 "parser_cocci_menhir.ml"
411 )
412 | TIterator
413 | TIsoType
414 | TIsoTopLevel
415 | TIsoTestExpression
416 | TIsoStatement
417 | TIsoExpression
418 | TIsoDeclaration
419 | TIsoArgExpression
420 | TIso
421 | TInvalid
422 | TInt of (
423 # 86 "parser_cocci_menhir.mly"
424 (string * Data.clt)
425 # 426 "parser_cocci_menhir.ml"
426 )
427 | TIncludeNL of (
428 # 79 "parser_cocci_menhir.mly"
429 (string * Data.clt)
430 # 431 "parser_cocci_menhir.ml"
431 )
432 | TIncludeL of (
433 # 79 "parser_cocci_menhir.mly"
434 (string * Data.clt)
435 # 436 "parser_cocci_menhir.ml"
436 )
437 | TInc of (
438 # 84 "parser_cocci_menhir.mly"
439 (Data.clt)
440 # 441 "parser_cocci_menhir.ml"
441 )
442 | TIf of (
443 # 57 "parser_cocci_menhir.mly"
444 (Data.clt)
445 # 446 "parser_cocci_menhir.ml"
446 )
447 | TIdentifier
448 | TIdent of (
449 # 59 "parser_cocci_menhir.mly"
450 (string * Data.clt)
451 # 452 "parser_cocci_menhir.ml"
452 )
453 | TIdExpression
454 | TGoto of (
455 # 58 "parser_cocci_menhir.mly"
456 (Data.clt)
457 # 458 "parser_cocci_menhir.ml"
458 )
459 | TFunction
460 | TFunDecl of (
461 # 58 "parser_cocci_menhir.mly"
462 (Data.clt)
463 # 464 "parser_cocci_menhir.ml"
464 )
465 | TFresh
466 | TForall
467 | TFor of (
468 # 57 "parser_cocci_menhir.mly"
469 (Data.clt)
470 # 471 "parser_cocci_menhir.ml"
471 )
472 | TFloat of (
473 # 86 "parser_cocci_menhir.mly"
474 (string * Data.clt)
475 # 476 "parser_cocci_menhir.ml"
476 )
477 | TExtends
478 | TExpression
479 | TExists
480 | TEver
481 | TError
482 | TEqEq of (
483 # 93 "parser_cocci_menhir.mly"
484 (Data.clt)
485 # 486 "parser_cocci_menhir.ml"
486 )
487 | TEq of (
488 # 106 "parser_cocci_menhir.mly"
489 (Data.clt)
490 # 491 "parser_cocci_menhir.ml"
491 )
492 | TElse of (
493 # 57 "parser_cocci_menhir.mly"
494 (Data.clt)
495 # 496 "parser_cocci_menhir.ml"
496 )
497 | TEllipsis of (
498 # 72 "parser_cocci_menhir.mly"
499 (Data.clt)
500 # 501 "parser_cocci_menhir.ml"
501 )
502 | TDotDot of (
503 # 75 "parser_cocci_menhir.mly"
504 (Data.clt)
505 # 506 "parser_cocci_menhir.ml"
506 )
507 | TDot of (
508 # 106 "parser_cocci_menhir.mly"
509 (Data.clt)
510 # 511 "parser_cocci_menhir.ml"
511 )
512 | TDo of (
513 # 57 "parser_cocci_menhir.mly"
514 (Data.clt)
515 # 516 "parser_cocci_menhir.ml"
516 )
517 | TDmOp of (
518 # 96 "parser_cocci_menhir.mly"
519 (Ast_cocci.arithOp * Data.clt)
520 # 521 "parser_cocci_menhir.ml"
521 )
522 | TDisable
523 | TDepends
524 | TDefineParam of (
525 # 81 "parser_cocci_menhir.mly"
526 (Data.clt * token * int)
527 # 528 "parser_cocci_menhir.ml"
528 )
529 | TDefine of (
530 # 80 "parser_cocci_menhir.mly"
531 (Data.clt * token)
532 # 533 "parser_cocci_menhir.ml"
533 )
534 | TDefault of (
535 # 57 "parser_cocci_menhir.mly"
536 (Data.clt)
537 # 538 "parser_cocci_menhir.ml"
538 )
539 | TDeclarerId of (
540 # 59 "parser_cocci_menhir.mly"
541 (string * Data.clt)
542 # 543 "parser_cocci_menhir.ml"
543 )
544 | TDeclarer
545 | TDec of (
546 # 84 "parser_cocci_menhir.mly"
547 (Data.clt)
548 # 549 "parser_cocci_menhir.ml"
549 )
550 | TContinue of (
551 # 58 "parser_cocci_menhir.mly"
552 (Data.clt)
553 # 554 "parser_cocci_menhir.ml"
554 )
555 | TContext
556 | TConstant
557 | TComma of (
558 # 106 "parser_cocci_menhir.mly"
559 (Data.clt)
560 # 561 "parser_cocci_menhir.ml"
561 )
562 | TChar of (
563 # 86 "parser_cocci_menhir.mly"
564 (string * Data.clt)
565 # 566 "parser_cocci_menhir.ml"
566 )
567 | TCase of (
568 # 57 "parser_cocci_menhir.mly"
569 (Data.clt)
570 # 571 "parser_cocci_menhir.ml"
571 )
572 | TCPar0 of (
573 # 76 "parser_cocci_menhir.mly"
574 (Data.clt)
575 # 576 "parser_cocci_menhir.ml"
576 )
577 | TCPar of (
578 # 76 "parser_cocci_menhir.mly"
579 (Data.clt)
580 # 581 "parser_cocci_menhir.ml"
581 )
582 | TCEllipsis of (
583 # 72 "parser_cocci_menhir.mly"
584 (Data.clt)
585 # 586 "parser_cocci_menhir.ml"
586 )
587 | TCCro of (
588 # 101 "parser_cocci_menhir.mly"
589 (Data.clt)
590 # 591 "parser_cocci_menhir.ml"
591 )
592 | TCBrace of (
593 # 100 "parser_cocci_menhir.mly"
594 (Data.clt)
595 # 596 "parser_cocci_menhir.ml"
596 )
597 | TBreak of (
598 # 58 "parser_cocci_menhir.mly"
599 (Data.clt)
600 # 601 "parser_cocci_menhir.ml"
601 )
602 | TBang0
603 | TBang of (
604 # 75 "parser_cocci_menhir.mly"
605 (Data.clt)
606 # 607 "parser_cocci_menhir.ml"
607 )
608 | TAssign of (
609 # 107 "parser_cocci_menhir.mly"
610 (Ast_cocci.assignOp * Data.clt)
611 # 612 "parser_cocci_menhir.ml"
612 )
613 | TArobArob
614 | TArob
615 | TAny of (
616 # 73 "parser_cocci_menhir.mly"
617 (Data.clt)
618 # 619 "parser_cocci_menhir.ml"
619 )
620 | TAndLog of (
621 # 89 "parser_cocci_menhir.mly"
622 (Data.clt)
623 # 624 "parser_cocci_menhir.ml"
624 )
625 | TAnd of (
626 # 92 "parser_cocci_menhir.mly"
627 (Data.clt)
628 # 629 "parser_cocci_menhir.ml"
629 )
630 | EOF
631
632 and _menhir_jeton = token
633
634 let _eRR =
635 Error
636
637 module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
638
639 exception Error = Error
640
641 type token = _menhir_jeton
642
643 let token2terminal : token -> int =
644 fun _tok ->
645 match _tok with
646 | EOF ->
647 162
648 | TAnd _ ->
649 161
650 | TAndLog _ ->
651 160
652 | TAny _ ->
653 159
654 | TArob ->
655 158
656 | TArobArob ->
657 157
658 | TAssign _ ->
659 156
660 | TBang _ ->
661 155
662 | TBang0 ->
663 154
664 | TBreak _ ->
665 153
666 | TCBrace _ ->
667 152
668 | TCCro _ ->
669 151
670 | TCEllipsis _ ->
671 150
672 | TCPar _ ->
673 149
674 | TCPar0 _ ->
675 148
676 | TCase _ ->
677 147
678 | TChar _ ->
679 146
680 | TComma _ ->
681 145
682 | TConstant ->
683 144
684 | TContext ->
685 143
686 | TContinue _ ->
687 142
688 | TDec _ ->
689 141
690 | TDeclarer ->
691 140
692 | TDeclarerId _ ->
693 139
694 | TDefault _ ->
695 138
696 | TDefine _ ->
697 137
698 | TDefineParam _ ->
699 136
700 | TDepends ->
701 135
702 | TDisable ->
703 134
704 | TDmOp _ ->
705 133
706 | TDo _ ->
707 132
708 | TDot _ ->
709 131
710 | TDotDot _ ->
711 130
712 | TEllipsis _ ->
713 129
714 | TElse _ ->
715 128
716 | TEq _ ->
717 127
718 | TEqEq _ ->
719 126
720 | TError ->
721 125
722 | TEver ->
723 124
724 | TExists ->
725 123
726 | TExpression ->
727 122
728 | TExtends ->
729 121
730 | TFloat _ ->
731 120
732 | TFor _ ->
733 119
734 | TForall ->
735 118
736 | TFresh ->
737 117
738 | TFunDecl _ ->
739 116
740 | TFunction ->
741 115
742 | TGoto _ ->
743 114
744 | TIdExpression ->
745 113
746 | TIdent _ ->
747 112
748 | TIdentifier ->
749 111
750 | TIf _ ->
751 110
752 | TInc _ ->
753 109
754 | TIncludeL _ ->
755 108
756 | TIncludeNL _ ->
757 107
758 | TInt _ ->
759 106
760 | TInvalid ->
761 105
762 | TIso ->
763 104
764 | TIsoArgExpression ->
765 103
766 | TIsoDeclaration ->
767 102
768 | TIsoExpression ->
769 101
770 | TIsoStatement ->
771 100
772 | TIsoTestExpression ->
773 99
774 | TIsoTopLevel ->
775 98
776 | TIsoType ->
777 97
778 | TIterator ->
779 96
780 | TIteratorId _ ->
781 95
782 | TLineEnd _ ->
783 94
784 | TLocal ->
785 93
786 | TLogOp _ ->
787 92
788 | TMPtVirg ->
789 91
790 | TMetaConst _ ->
791 90
792 | TMetaDeclarer _ ->
793 89
794 | TMetaErr _ ->
795 88
796 | TMetaExp _ ->
797 87
798 | TMetaExpList _ ->
799 86
800 | TMetaFunc _ ->
801 85
802 | TMetaId _ ->
803 84
804 | TMetaIdExp _ ->
805 83
806 | TMetaIterator _ ->
807 82
808 | TMetaLocalFunc _ ->
809 81
810 | TMetaLocalIdExp _ ->
811 80
812 | TMetaParam _ ->
813 79
814 | TMetaParamList _ ->
815 78
816 | TMetaPos _ ->
817 77
818 | TMetaStm _ ->
819 76
820 | TMetaStmList _ ->
821 75
822 | TMetaType _ ->
823 74
824 | TMid0 _ ->
825 73
826 | TMinus _ ->
827 72
828 | TMinusFile _ ->
829 71
830 | TMul _ ->
831 70
832 | TName ->
833 69
834 | TNever ->
835 68
836 | TNotEq _ ->
837 67
838 | TNothing ->
839 66
840 | TOBrace _ ->
841 65
842 | TOCro _ ->
843 64
844 | TOEllipsis _ ->
845 63
846 | TOPar _ ->
847 62
848 | TOPar0 _ ->
849 61
850 | TOn ->
851 60
852 | TOr _ ->
853 59
854 | TOrLog _ ->
855 58
856 | TPArob ->
857 57
858 | TPCEllipsis _ ->
859 56
860 | TPOEllipsis _ ->
861 55
862 | TParameter ->
863 54
864 | TPathIsoFile _ ->
865 53
866 | TPlus _ ->
867 52
868 | TPlus0 ->
869 51
870 | TPlusFile _ ->
871 50
872 | TPosAny ->
873 49
874 | TPosition ->
875 48
876 | TPragma _ ->
877 47
878 | TPtVirg _ ->
879 46
880 | TPtrOp _ ->
881 45
882 | TPure ->
883 44
884 | TReturn _ ->
885 43
886 | TReverse ->
887 42
888 | TRightIso ->
889 41
890 | TRuleName _ ->
891 40
892 | TScriptData _ ->
893 39
894 | TShOp _ ->
895 38
896 | TSizeof _ ->
897 37
898 | TStatement ->
899 36
900 | TStrict _ ->
901 35
902 | TString _ ->
903 34
904 | TSwitch _ ->
905 33
906 | TTilde _ ->
907 32
908 | TType ->
909 31
910 | TTypeId _ ->
911 30
912 | TTypedef ->
913 29
914 | TUsing ->
915 28
916 | TWhen _ ->
917 27
918 | TWhile _ ->
919 26
920 | TWhy _ ->
921 25
922 | TWhy0 ->
923 24
924 | TWords ->
925 23
926 | TXor _ ->
927 22
928 | Tattr _ ->
929 21
930 | Tauto _ ->
931 20
932 | Tchar _ ->
933 19
934 | Tconst _ ->
935 18
936 | Tdouble _ ->
937 17
938 | Textern _ ->
939 16
940 | Tfloat _ ->
941 15
942 | Tinline _ ->
943 14
944 | Tint _ ->
945 13
946 | Tlist ->
947 12
948 | Tlong _ ->
949 11
950 | Tregister _ ->
951 10
952 | Tshort _ ->
953 9
954 | Tsigned _ ->
955 8
956 | Tstatic _ ->
957 7
958 | Tstruct _ ->
959 6
960 | Ttypedef _ ->
961 5
962 | Tunion _ ->
963 4
964 | Tunsigned _ ->
965 3
966 | Tvoid _ ->
967 2
968 | Tvolatile _ ->
969 1
970
971 let error_terminal =
972 0
973
974 let token2value : token -> Obj.t =
975 fun _tok ->
976 match _tok with
977 | EOF ->
978 Obj.repr ()
979 | TAnd _v ->
980 Obj.repr _v
981 | TAndLog _v ->
982 Obj.repr _v
983 | TAny _v ->
984 Obj.repr _v
985 | TArob ->
986 Obj.repr ()
987 | TArobArob ->
988 Obj.repr ()
989 | TAssign _v ->
990 Obj.repr _v
991 | TBang _v ->
992 Obj.repr _v
993 | TBang0 ->
994 Obj.repr ()
995 | TBreak _v ->
996 Obj.repr _v
997 | TCBrace _v ->
998 Obj.repr _v
999 | TCCro _v ->
1000 Obj.repr _v
1001 | TCEllipsis _v ->
1002 Obj.repr _v
1003 | TCPar _v ->
1004 Obj.repr _v
1005 | TCPar0 _v ->
1006 Obj.repr _v
1007 | TCase _v ->
1008 Obj.repr _v
1009 | TChar _v ->
1010 Obj.repr _v
1011 | TComma _v ->
1012 Obj.repr _v
1013 | TConstant ->
1014 Obj.repr ()
1015 | TContext ->
1016 Obj.repr ()
1017 | TContinue _v ->
1018 Obj.repr _v
1019 | TDec _v ->
1020 Obj.repr _v
1021 | TDeclarer ->
1022 Obj.repr ()
1023 | TDeclarerId _v ->
1024 Obj.repr _v
1025 | TDefault _v ->
1026 Obj.repr _v
1027 | TDefine _v ->
1028 Obj.repr _v
1029 | TDefineParam _v ->
1030 Obj.repr _v
1031 | TDepends ->
1032 Obj.repr ()
1033 | TDisable ->
1034 Obj.repr ()
1035 | TDmOp _v ->
1036 Obj.repr _v
1037 | TDo _v ->
1038 Obj.repr _v
1039 | TDot _v ->
1040 Obj.repr _v
1041 | TDotDot _v ->
1042 Obj.repr _v
1043 | TEllipsis _v ->
1044 Obj.repr _v
1045 | TElse _v ->
1046 Obj.repr _v
1047 | TEq _v ->
1048 Obj.repr _v
1049 | TEqEq _v ->
1050 Obj.repr _v
1051 | TError ->
1052 Obj.repr ()
1053 | TEver ->
1054 Obj.repr ()
1055 | TExists ->
1056 Obj.repr ()
1057 | TExpression ->
1058 Obj.repr ()
1059 | TExtends ->
1060 Obj.repr ()
1061 | TFloat _v ->
1062 Obj.repr _v
1063 | TFor _v ->
1064 Obj.repr _v
1065 | TForall ->
1066 Obj.repr ()
1067 | TFresh ->
1068 Obj.repr ()
1069 | TFunDecl _v ->
1070 Obj.repr _v
1071 | TFunction ->
1072 Obj.repr ()
1073 | TGoto _v ->
1074 Obj.repr _v
1075 | TIdExpression ->
1076 Obj.repr ()
1077 | TIdent _v ->
1078 Obj.repr _v
1079 | TIdentifier ->
1080 Obj.repr ()
1081 | TIf _v ->
1082 Obj.repr _v
1083 | TInc _v ->
1084 Obj.repr _v
1085 | TIncludeL _v ->
1086 Obj.repr _v
1087 | TIncludeNL _v ->
1088 Obj.repr _v
1089 | TInt _v ->
1090 Obj.repr _v
1091 | TInvalid ->
1092 Obj.repr ()
1093 | TIso ->
1094 Obj.repr ()
1095 | TIsoArgExpression ->
1096 Obj.repr ()
1097 | TIsoDeclaration ->
1098 Obj.repr ()
1099 | TIsoExpression ->
1100 Obj.repr ()
1101 | TIsoStatement ->
1102 Obj.repr ()
1103 | TIsoTestExpression ->
1104 Obj.repr ()
1105 | TIsoTopLevel ->
1106 Obj.repr ()
1107 | TIsoType ->
1108 Obj.repr ()
1109 | TIterator ->
1110 Obj.repr ()
1111 | TIteratorId _v ->
1112 Obj.repr _v
1113 | TLineEnd _v ->
1114 Obj.repr _v
1115 | TLocal ->
1116 Obj.repr ()
1117 | TLogOp _v ->
1118 Obj.repr _v
1119 | TMPtVirg ->
1120 Obj.repr ()
1121 | TMetaConst _v ->
1122 Obj.repr _v
1123 | TMetaDeclarer _v ->
1124 Obj.repr _v
1125 | TMetaErr _v ->
1126 Obj.repr _v
1127 | TMetaExp _v ->
1128 Obj.repr _v
1129 | TMetaExpList _v ->
1130 Obj.repr _v
1131 | TMetaFunc _v ->
1132 Obj.repr _v
1133 | TMetaId _v ->
1134 Obj.repr _v
1135 | TMetaIdExp _v ->
1136 Obj.repr _v
1137 | TMetaIterator _v ->
1138 Obj.repr _v
1139 | TMetaLocalFunc _v ->
1140 Obj.repr _v
1141 | TMetaLocalIdExp _v ->
1142 Obj.repr _v
1143 | TMetaParam _v ->
1144 Obj.repr _v
1145 | TMetaParamList _v ->
1146 Obj.repr _v
1147 | TMetaPos _v ->
1148 Obj.repr _v
1149 | TMetaStm _v ->
1150 Obj.repr _v
1151 | TMetaStmList _v ->
1152 Obj.repr _v
1153 | TMetaType _v ->
1154 Obj.repr _v
1155 | TMid0 _v ->
1156 Obj.repr _v
1157 | TMinus _v ->
1158 Obj.repr _v
1159 | TMinusFile _v ->
1160 Obj.repr _v
1161 | TMul _v ->
1162 Obj.repr _v
1163 | TName ->
1164 Obj.repr ()
1165 | TNever ->
1166 Obj.repr ()
1167 | TNotEq _v ->
1168 Obj.repr _v
1169 | TNothing ->
1170 Obj.repr ()
1171 | TOBrace _v ->
1172 Obj.repr _v
1173 | TOCro _v ->
1174 Obj.repr _v
1175 | TOEllipsis _v ->
1176 Obj.repr _v
1177 | TOPar _v ->
1178 Obj.repr _v
1179 | TOPar0 _v ->
1180 Obj.repr _v
1181 | TOn ->
1182 Obj.repr ()
1183 | TOr _v ->
1184 Obj.repr _v
1185 | TOrLog _v ->
1186 Obj.repr _v
1187 | TPArob ->
1188 Obj.repr ()
1189 | TPCEllipsis _v ->
1190 Obj.repr _v
1191 | TPOEllipsis _v ->
1192 Obj.repr _v
1193 | TParameter ->
1194 Obj.repr ()
1195 | TPathIsoFile _v ->
1196 Obj.repr _v
1197 | TPlus _v ->
1198 Obj.repr _v
1199 | TPlus0 ->
1200 Obj.repr ()
1201 | TPlusFile _v ->
1202 Obj.repr _v
1203 | TPosAny ->
1204 Obj.repr ()
1205 | TPosition ->
1206 Obj.repr ()
1207 | TPragma _v ->
1208 Obj.repr _v
1209 | TPtVirg _v ->
1210 Obj.repr _v
1211 | TPtrOp _v ->
1212 Obj.repr _v
1213 | TPure ->
1214 Obj.repr ()
1215 | TReturn _v ->
1216 Obj.repr _v
1217 | TReverse ->
1218 Obj.repr ()
1219 | TRightIso ->
1220 Obj.repr ()
1221 | TRuleName _v ->
1222 Obj.repr _v
1223 | TScriptData _v ->
1224 Obj.repr _v
1225 | TShOp _v ->
1226 Obj.repr _v
1227 | TSizeof _v ->
1228 Obj.repr _v
1229 | TStatement ->
1230 Obj.repr ()
1231 | TStrict _v ->
1232 Obj.repr _v
1233 | TString _v ->
1234 Obj.repr _v
1235 | TSwitch _v ->
1236 Obj.repr _v
1237 | TTilde _v ->
1238 Obj.repr _v
1239 | TType ->
1240 Obj.repr ()
1241 | TTypeId _v ->
1242 Obj.repr _v
1243 | TTypedef ->
1244 Obj.repr ()
1245 | TUsing ->
1246 Obj.repr ()
1247 | TWhen _v ->
1248 Obj.repr _v
1249 | TWhile _v ->
1250 Obj.repr _v
1251 | TWhy _v ->
1252 Obj.repr _v
1253 | TWhy0 ->
1254 Obj.repr ()
1255 | TWords ->
1256 Obj.repr ()
1257 | TXor _v ->
1258 Obj.repr _v
1259 | Tattr _v ->
1260 Obj.repr _v
1261 | Tauto _v ->
1262 Obj.repr _v
1263 | Tchar _v ->
1264 Obj.repr _v
1265 | Tconst _v ->
1266 Obj.repr _v
1267 | Tdouble _v ->
1268 Obj.repr _v
1269 | Textern _v ->
1270 Obj.repr _v
1271 | Tfloat _v ->
1272 Obj.repr _v
1273 | Tinline _v ->
1274 Obj.repr _v
1275 | Tint _v ->
1276 Obj.repr _v
1277 | Tlist ->
1278 Obj.repr ()
1279 | Tlong _v ->
1280 Obj.repr _v
1281 | Tregister _v ->
1282 Obj.repr _v
1283 | Tshort _v ->
1284 Obj.repr _v
1285 | Tsigned _v ->
1286 Obj.repr _v
1287 | Tstatic _v ->
1288 Obj.repr _v
1289 | Tstruct _v ->
1290 Obj.repr _v
1291 | Ttypedef _v ->
1292 Obj.repr _v
1293 | Tunion _v ->
1294 Obj.repr _v
1295 | Tunsigned _v ->
1296 Obj.repr _v
1297 | Tvoid _v ->
1298 Obj.repr _v
1299 | Tvolatile _v ->
1300 Obj.repr _v
1301
1302 let default_reduction =
1303 (16, "\000\000\000\000\001 \001!\000\000\001#\001\"\000\001\000\000\001[\000\000\000\000\000\136\000\000\000\000\001\213\000\142\000\145\002\195\002\194\000\146\001\013\001\019\001\015\001\018\001\017\000\135\001\011\001\026\000\000\000\000\001\025\000\000\000\000\000\000\000\000\000\000\001O\000\232\002\185\002o\000\000\000\000\000\000\000\000\000\000\002\190\000\000\001\022\000\000\002\192\000\000\001\029\001\028\000\000\000\000\002\249\0029\000\000\002\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\252\000\000\002S\000\000\000\000\002\246\002\248\002?\001\004\002>\001\002\001\003\002=\002<\002;\0027\000\000\000\000\0028\000\205\000\000\002:\000\000\002\245\000\000\002\220\001\001\002\026\000\000\000\000\002\029\000\000\000\015\000\000\000\000\000\000\000\000\000\206\0026\002B\000[\000\021\000]\000\000\000\000\000c\000\000\000\000\000\000\000\000\000\000\000\000\000\022\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\130\001\250\000R\000\215\000^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\\\000T\000\000\000S\000\000\000\000\000\140\000\216\000\000\002 \000\217\000\014\000\000\001\014\001\020\001\016\001\012\000\016\000\000\000\000\000\143\000\000\000\141\000\000\000\000\000\220\000\000\000\000\002\027\002\030\000\000\002\028\002\031\002\221\002\219\000\000\002@\002\218\000\000\002[\000\000\000\000\001\189\000\000\001i\001\171\000\000\000\000\002Z\000\000\002\237\002Y\002X\002W\002V\002U\002Q\000\000\000\000\002R\000\000\002T\000\000\000\000\002\234\002(\000\000\000\000\002+\000\000\000\000\002.\000\000\000\000\002)\002,\000\000\002*\002-\002\\\002P\002\235\002\233\002\232\002\236\000\000\000\000\000\000\000g\000h\000\000\000\000\000W\000\000\000V\000\227\000\000\001\205\000\000\000\000\000\000\000\000\000\000\000\210\001\211\000\000\000\000\001s\000U\0001\000\203\000_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\000\000\0003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002A\000\000\000\144\000\000\000\000\001\188\000\000\001g\001\170\000\000\000\000\000d\000\000\002\252\000\000\000\000\001\206\000\000\000\000\002\223\002\222\000\000\000Q\000\147\000\000\001Q\000\000\002\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\151\000\000\000\000\000n\000o\001\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\160\001\194\000\000\000\148\000\155\000\000\001\196\000\000\000\000\000\000\000\000\000\149\000\161\000\000\001W\000\000\000\000\002\187\000\000\000\000\000\138\000\000\000\000\002\186\000\000\000\000\000\000\002\189\002\193\000\000\000\000\000\000\001\023\000\000\000\214\000\000\001\024\000\000\000\000\001:\000\000\0019\000\000\001G\000\000\001]\000\000\000\000\000\000\000\000\000\000\000\000\001\008\000\000\000\000\002\216\000\000\000\189\002\215\002\181\002\183\002\184\002\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002`\000\000\000\000\000\000\000\000\002g\000\000\000\000\002f\002e\002d\002c\002b\0016\002^\000\000\000\000\002_\000\000\002a\000\000\000\000\002\241\002/\000\000\000\000\0022\000\000\000\000\0025\000\000\000\000\0020\0023\000\000\0021\0024\002i\002]\002\242\002\240\002\239\000i\000j\000\000\000\000\000Z\000\000\000Y\000\000\002h\000\000\001\172\000X\000?\000\226\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\244\002\243\000\000\002\172\000\000\002\171\000\000\000\000\000\018\000\000\000\000\000\000\002\253\000\000\001u\000\000\000\000\000\000\000\162\002\162\001M\000\000\000\153\001L\001%\001$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\208\000\195\000\000\001Y\000\000\000\000\000\194\000\190\000\000\000\197\000\191\000\196\000\000\002\174\000\000\002\173\002\159\000\000\000\000\000\000\000\000\000\000\002\168\000\000\000\000\000\000\000\000\000\000\002\169\002\161\000\000\002\175\000\000\002\163\000\000\000\166\000\000\002\178\000\152\000\000\001'\000\000\000\000\000\000\000\000\000\000\000\000\001\t\000\000\000w\000\000\000\000\000\000\002F\000\000\000\000\000\000\002N\000\000\000\000\002M\000\000\002\230\002L\002K\002J\002I\002H\002D\000\000\000\000\002E\000\000\002G\000\000\000\000\002\227\002!\000\000\000\000\002$\000\000\000\000\002'\000\000\000\000\002\"\002%\000\000\002#\002&\002O\002C\002\228\002\226\002\225\002\229\000\000\000\000\000\000\000e\000f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\001(\000\000\000\000\000\000\001.\000\000\000\000\001/\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\0012\000\000\001,\000\000\000\000\0014\000\000\000\000\000\000\000\000\000\000\000\000\000t\000q\000r\0015\0011\000\000\000\000\0010\001*\000\000\001)\000\000\000\182\000\000\002\140\000\000\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\007\000\000\000\000\000\000\000\175\000\000\000\172\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\179\000\000\000\000\002\198\000\000\002\205\000\168\000\000\000\000\000\000\000\000\000\180\000\000\000\176\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\184\000\000\000\000\000\187\000\000\002\199\000\167\000\000\002\200\000\000\002\207\000\000\000\000\000\000\000\000\000\186\000\000\000\170\000\000\000\000\000\000\000\000\001\006\000\000\000\000\000\000\000\174\000\000\000\171\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\177\000\164\000\163\000\000\002\208\002\209\000\000\002\210\000\000\002\211\000\000\001&\002\166\000\000\000\000\001\193\000\000\001q\001\176\000\000\002\160\000\000\000\000\000\000\002\165\000\000\000\000\000\000\000\250\000\000\000\244\000\000\000\245\000\000\000\255\000\243\000\254\000\000\002\177\001\000\000\000\000\169\000\000\000\000\000\000\000\000\000\252\000\247\001\190\000\000\000\248\000\000\000\249\000\000\001k\001\173\000\000\000\000\000\000\001\201\000\000\001\199\000\000\000\000\001\203\001\197\000\000\001\204\001\198\000\000\002\179\001\207\000\000\000\165\000\000\000\000\001\191\000\000\001m\001\174\000\000\002\254\000\000\002\250\000\000\002\251\000\019\000\020\000\000\000\000\002}\000\000\002|\000\000\000\000\002\127\000\000\002~\000\000\000\000\000\000\001\234\000\000\000\000\001\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\241\000\000\000\000\001\244\000\000\000\000\001\228\000\000\000\000\001\231\000\000\000\000\000\000\001\235\000\000\000\000\001\239\000\000\000\000\001\192\000\000\000\000\001\232\000\000\000\000\001\236\002z\001\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\240\000\000\000\000\001\243\000\000\002{\000\000\000\000\000\000\000\000\001\242\000\000\001\226\000\000\001\227\000\000\000\000\001\230\000\000\000\000\000\000\001\233\000\000\000\000\001\237\000\000\001o\001\175\000\000\002\128\000\000\000\000\000\000\002\255\000\017\000u\000\000\003\000\000\000\000\000\002\136\000\000\000\000\002\180\000a\000\000\000\000\000\000\000b\000\000\002\170\000\000\001S\002\167\000\000\000\000\001@\000\000\001?\000\000\001H\000\000\001c\000\000\000\000\000\000\001>\000\000\001=\000\000\001E\000\000\001a\000\000\000\000\000\000\001B\000\000\001A\000\000\001F\000\000\001e\000\000\000\000\000\000\001C\000\000\000\000\000\000\000\000\001<\000\000\001;\000\000\001I\000\000\001_\000\000\000\000\000\000\001D\000\002\000\000\000N\000O\000M\001J\000\003\000\000\000\000\002l\000\000\001\248\000\000\002r\002t\000\000\000\000\001\140\002s\000\128\000\000\000\000\002\158\000\000\000\000\000\000\000z\000\000\000\000\002\146\000\000\001\221\001\220\001\135\002x\002p\002q\000\000\001\167\000\000\002m\000\000\000\000\000|\000\000\000\000\002\150\000\000\001\149\000\000\000\000\001\146\000\000\000\000\000\000\001\148\000\000\001\147\000\000\000\000\000\000\000\000\000\000\000\000\001\168\000\000\001\144\000\000\001\143\000\000\000v\000\000\000\000\002\138\000\000\000\000\001\139\000\000\000\000\000~\000\000\000\000\002\154\000\000\000\000\000\000\000{\000\000\000\000\002\148\000\000\001\217\001\216\001\131\002v\000\000\001\154\000\000\000\000\000\000\001\151\000\000\001\156\000\000\000\000\001\152\000\000\000\000\001\153\000\000\000\000\000\000\001\142\000\000\000\000\000\000\000\000\000\000\000\000\001\169\000\000\001\145\000}\000\000\000\000\002\152\000\000\000\000\000\000\001\031\000y\001\030\000\000\000\000\002\144\000\000\001\215\001\214\001\129\002u\000\000\000\127\000\000\000\000\002\156\000\000\000\000\000\000\000\000\001\219\001\218\001\133\002w\000\000\001\161\000\000\001\165\000\000\000\000\001\157\000\000\000\000\000\000\001\150\000\000\001\155\000\000\000\000\000\000\000\000\000\000\000\000\001\164\001\138\000\000\001\163\000\000\000\000\000\000\000\000\001\160\000\000\000\000\001\159\000\000\001\158\000\000\000\000\000\000\000\000\001\162\000\000\001\166\000\000\000\000\001K\000\004\000\000\001\141\000\005\000\000\000\000\000\230\000\006\000\000\001\180\001\181\001\179\000\000\000\000\000\000\000\000\000\000\000\000\000x\000\000\000\000\002\142\000\000\000\221\001\178\001{\002\196\001}\000\000\000\007\000\000\001\183\001\184\001\182\000\000\000\000\000\000\000\000\000\000\000\000\000\231\000\234\000\000\000\000\000\000\000\000\000\239\000\241\000\240\000\235\000\237\000\236\001\187\000\000\000\000\000\000\000\000\002\201\002\212\000\000\002\202\000\000\002\203\001\127\000\000\001\177\001\185\000\000\000\000\000\000\000\000\001\223\000\000\000\000\000l\000m\000\000\000\000\000\000\001\222\000\000\000\158\000\000\001U\000\000\000\000\000\157\000\154\000\000\000\000\000\000\000\000\001\005\000\000\000\000\002\213\000\000\002\214\000\000\000\000\001\210\001\208\000\000\001\209\000\008\000\000\000\t\000\000\002\011\002\012\002\n\000\000\000\000\002\t\000\000\000\n\000\000\002\014\002\015\002\013\000\000\000\000\000\000\000\000\002\003\000\000\000\000\002\005\000\000\001\255\000\000\002\001\000\000\002\006\000\000\002\007\002\000\001\254\002\017\001\137\000\000\002\008\000\000\002\019\000\000\002\018\000\000\002\020\000\000\002y\000\011\000\000\000\000\000\229\000\012\000\000\000\000\000\000\000\000\000\000\002\021\000\000\000\000\002\024\000\000\002\023\000\000\002\022\000\198\000\000\000\000\000\000\000\000\000\199\002\025\000\000\000\000\002\131\000\000\000\000\000\000\000\000\000\000\002\134\000k\000\000\000\000\000\204\000\000\000\000\000\224\000\223\000\222\000\000\0018\000\000\002\130\001y\001w\000\000\000\000\000\000\000\000\000\000\000\000\002\129\000\000\000\013\000\000\000\000\000\000\000\000\000\000\002\132")
1304
1305 let error =
1306 (163, "\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000\000\000\000\004\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\252\000\000\000\000\000\000\000=j\184\001\000@\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000@0\128\000 \152\019\000\128 \001\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213p\002\000\128\000\004\000 \000\000\000\000\000\000\000\000\000\000\000%Q\128 \024@\000XL\t\128@\016\017\000\128\000\t\144\197\235U\192\008\002\000\000\016\128\128\000\000\000\002\000\001\000\000\000\000\000\000\000\000\000\000\000\001\001\000\000\000\000\000\000\000\000\000\000\000\000\018(\192\000\000 \000 $\004\192 \000\008\128@\000\004\192b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\174\002@\016\000\000\132\004\000\000\000\000\016\000\000\000\000\016\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000=j\184\001\000@\000\002\016\016\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\128\000\000\008\000\000\000\000\000\000\245\170\224\004\001\000\000\008@@\000\000\000\001\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\174\000@\016\000\000\132\004\000\000\000\000\016\000\008\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000 \000\000\000\000\000\000\000@\000\017\000\000\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\008\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130z\213p\002\164\128\t\007\002\160\221\160\000$\128\128@\004 \016OZ\174\000T\144\001 \224T\027\180\000\004\144\016\008\000\132\002\008\000\000\000B\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\004\131\129@n\208\000\018@@ \002\016\008 \000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\008\000\132\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\004\131\129@n\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\0180M\156\150\000\000P\004 \000;\160\"xw\000\000\000\000\000\000\000\000\000\000\008\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\n\146\000$\028\n\131~\128\000\146\002\001\000\016\144A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000 \131\001,\000\000\160\000\000\000v@\004\208\238\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\144\000\144\130lD\176\000\002\128 \000\001\217\000\019\195\184\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\144\130lD\176\000\002\128 \000\001\153\000\019\193\184\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\000HA6\"X\000\001@\016\000\000\204\128\t\224\220\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\0032\000'\131p\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\200\000\158\013\192\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\0032\000'\131p\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\200\000\158\013\192\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\018\000\018\016M\136\150\000\000P\004\000\0003 \002x7\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000H\000HA6\"X\000\001@\016\000\000\204\128\t\224\220\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\0032\000'\131p\000\000\000\n@\000\144p(\013\218\000\002H\008\006\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\200\000\158\013\192\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\018\000\018\016M\136\150\000\000P\004\000\0003 \002x7\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000H\000HA6\"X\000\001@\016\000\000\204\128\t\224\220\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\008\006\000\000\004\019\000\000\000\004\004\000 \000\002d\001\001*\140\001\000\194\000\002\130`L\002\000\128\136\004\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\244\224\008\006\016\000\020\019\002`\016\004\004@ \000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\170\160\004\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\001\000\194\000\000\130`L\002\000\128\128\004\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\000=j\184\001R@\004\131\129Po\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\004\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\174\000T\144\001 \224T\027\180\000\004\144\016\008\000\132\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H8\020\006\237\000\001$\004\000\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\000\000\132\002\008\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\128\004\136\017e%\000\000\016\001\008\000\006\168\008\134\017\192\000\000\000\000\000\000\000\000\000\002\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213p\002\164\128\t\007\002\160\223\160\000$\128\128@\004$\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\004\131\129@n\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213p\002\164\128\t\007\002\160\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\128\004\128\017`%\000\000\016\001\000\000\006\136\000\134\017\192\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\128\000\004\000\000\000\000\004)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \001 \004X\t@\000\004\000@\000\001\"\000!\128p\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\004\128\004\128\017`%\000\000\016\001\000\000\004\136\000\134\001\192\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\018\000\018\000E\128\148\000\000@\004\000\000\018 \002\024\007\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128\000\004 \016@\000\000H\000H\001\022\002P\000\001\000\016\000\000H\128\008`\028\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\018\000\018\000E\128\148\000\000@\004\000\000\018 \002\024\007\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128\000\004 \016@\000\000H\000H\001\022\002P\000\001\000\016\000\000H\128\008`\028\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\001 \001 \004X\t@\000\004\000@\000\001\"\000!\128p\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\004\128\004\128\017`%\000\000\016\001\000\000\004\136\000\134\001\192\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\018\000\018\000E\128\148\000\000@\004\000\000\018 \002\024\007\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128`\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\000\000B\001\004\000\000\004\128\004\128\017`%\000\000\016\001\000\000\004\136\000\134\001\192\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\018\000\018\000E\128\148\000\000@\004\000\000\018 \002\024\007\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128\000\004 \016@\000\000H\000H\001\022\002P\000\001\000\016\000\000H\128\008`\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\002\000\003\214\171\128\016\004\000\000 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\000\000\132\002\008\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\000*H\000\144p*\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000@\000\000\000\000\000\000\000\128\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\020`\000\000\016\000\016\018\002`\016\000\004@ \000\002`1\001\"\140\000\000\002\000\002\000@L\002\000\000\136\004\000\000L\006 \000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\\000\128 \000\001\000\008\192\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\016\016\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\016\000=j\184\001\000@\000\002\000\017\128\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\128\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001\000@\000\002\000\017\128\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004@\000\245\170\224\004\001\000\000\008\000F\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\128\000\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\003\214\171\128\016\004\000\000 \001\024\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\213p\002\000\128\000\004 \000\000\000\000\128\000\000\000\000\128\015Z\174\000@\016\000\000\132\004\000\000\000\000\016\000\008\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000@\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\181T\000\128 \000\000\000\008\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\004\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149F\000\128a\000\001a0&\001\000@D\002\000\000&C\023\173W\000 \008\000\000B\002\000\000\000\000\008\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000@\000\000\000\000\000\000\023\173W\000 \008\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\\000\128 \000\001\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\130.I\000\128f+\143\222\016\007\234\024\000\141b\005\004\002E\024\000\000\000\000\004\004\000\152\000\000\001\016\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\003\214\171\128\016\004\000\000 \001\024\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001\000@\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000 \228\016\008\006B\136\253\161\000~\161\128\008\198 P@\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\003\255\175\193\023$\128H:\021\199\239\008\003\245\012\002G\177\134\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001\000\192P\027\180\000\012\144\016\000\000\132\002\008\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A=j\184\001R@\004\131\129Pn\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\000\001H\000\016\012\005\001\187@\000\201\001\000\000\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\002F\t\179\146\192\000\n\000\132\000\007T\004\n\014\224\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001R@\004\131\129Po\208\000\018@@ \002\018\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \016\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000$ \155\017,\000\000\160\008\000\000t@\000\160\238\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\000HA6\"X\000\001@\016\000\000\200\128\001@\220\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\003\"\000\005\003p\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\136\000\020\013\192\000\000\000)\000\002\001\128\1607h\000\025 \000\001\008\004\016\000\000\018\000\018\016M\136\150\000\000P\004\000\0002 \000P7\000\000\000\000\164\000\008\006\002\128\221\160\000d\128\128\000\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\136\000\020\013\192\000\000\000)\000\002\001\128\1607h\000\025 \000\001\008\004\016\000\000\018\000\018\016M\136\150\000\000P\004\000\0002 \000P7\000\000\000\000\164\000\008\006\002\128\221\160\000d\128\128\000\004 \016@\000\000H\000HA6\"X\000\001@\016\000\000\200\128\001@\220\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\003\"\000\005\003p\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\136\000\020\013\192\000\000\000)\000\002A\192\1607h\000\t \024\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\164\000\008\006\002\128\221\160\000d\128\128\000\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000 \024\n\003v\128\001\146\002\000\000\016\128A\000\000\001 \001!\004\216\137`\000\005\000@\000\003\"\000\005\003p\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\004\128\004\132\019b%\128\000\020\001\000\000\012\136\000\020\013\192\000\000\000)\000\002\001\128\1607h\000\025 \000\001\008\004\016\000\000\018\000\018\016M\136\150\000\000P\004\000\0002 \000P7z\213p\002\164\128\t\007\002\160\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@ \144p(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\2482\228\144\008\006b\184\253\225\000~\161\128\008\214 P@\000\000\000\002\000\000\000\002\000\000\000\000\000\000B \000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\003!\\~\240\128?P\192\004k\016('\255_\130.I\000\144t/\143\222\016\007\234\024\004\141b\133\004\255\235\240e\201 \016\012\197q\251\194\000\253C\000\017\172@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\225\151$\128@3\023\199\239\024\003\245L G\177\198\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\191\004\\\146\001\000\204W\031\188 \015\2120\001\026\196\n\t\255\215\224\139\146@$\029\011\227\247\132\001\250\134\001#X\161A?\250\252\017rH\004\131\161\\~\240\128?P\192$k\016h \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\0180M\156\150\000\000P\004 \000;\160\"Pw\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\001\007 \128@2\020G\237\008\003\245\012\000F1\002\130\000\000\000 \228\016\008\006B\136\253\161\000~\161\128\008\198 P@\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\004\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \016H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\008\000\132\130\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\016r\008\004\003!D~\208\128?P\192\004c\016( \000\000\002\014A\000\128d(\143\218\016\007\234\024\000\140b\005\004\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\128\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\004\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000 \000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\002\006\0082\146\192\000\008\000\004\000\0034\004H\008\192\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\n\146\000$\028\n\131~\128\000\146\002\001\000\016\144A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\002\014A\000\128d(\143\218\016\007\234\024\000\140b\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\131\161\\~\240\128?P\192$k\016( \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\239\248e\201 \016\012\197\241\251\198\000\253S\008\017\236q\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\008\002\000\000\016\000\128\000\000\000\002\000\000\000\000\000\000\000\145F\000\000\000\000\001\001\000&\000\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\245\170\224\004\001\000\000\008\000F\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\128\000 \000\000\000\000\000\n@\000\144t(\013\218\000\002H\008\004\000B\001\004\000\000\000\001H\000\016\013\133\001\187@\000\201\001\000\160\008A \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001R@\004\131\129Pn\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002\001\128\1607h\000\025 \000\001\008\004\016\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001\000\192P\027\180\000\012\144\016\000\000\132\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\004\003\001@n\208\0002@@\000\002\016\008 \000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\016 A\148\148\000\000@\000 \000\016\160\"\000\006\000\000\000\000\000\000\000\000\000\000\008\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\n\146\000$\028\n\131~\128\000\146\002\001\000\016\144A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\n\146\000$\028\n\131v\128\000\146\002\001\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\n@\000\128`(\013\218\000\006H\008\000\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H8\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\001\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\008\000\132\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\n@\000\128l(\013\218\000\006H\008\001\000B\001\004\000\000\000\001H\000\016\013\133\001\187@\000\201\001\000\160\008A \128\000\000\004)\000\002\001\176\1607h\000\025 \020\001\008$\016\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007B\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000)\000\002\001\176\1607h\000\025 \004\001\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\020\128\001\000\216P\027\180\000\012\144\016\002\000\132\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000 \000\131\001(\000\000\128\000\000\000 @\004\000\012\000\000\000\001H\000\016\012\005\001\187@\000\201\001\000\000\008@ \128\000\000\128\000\128\002\012\004\160\000\002\000\000\000\000\129\000\016\0000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\002\000\002\000\0080\018\128\000\008\000\000\000\002\004\000@\000\192\000\000\000\020\128\001\000\192P\027\180\000\012\144\016\000\000\132\002\008\000\000\008\000\008\000 \192J\000\000 \000\000\000\008\016\001\000\003\000\000\000\000R\000\004\003\001@n\208\0002@@\000\002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\016\012\005\001\187@\000\201\001\000\000\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\002\000\002\000\0080\018\128\000\008\000\000\000\002\004\000@\000\192\000\000\000\020\128\001\000\192P\027\180\000\012\144\016\000\000\132\002\008\000\000\008\000\008\000 \192J\000\000 \000\000\000\008\016\001\000\003\000\000\000\000R\000\004\003\001@n\208\0002@@\000\002\016\008 \000\000 \000 \000\131\001(\000\000\128\000\000\000 @\004\000\012\000\000\000\001H\000\016\012\005\001\187@\000\201\001\000\000\008@ \128\000\000\128\000\128\002\012\004\160\000\002\000\000\000\000\129\000\016\0000\000\000\000\005 \000@0\020\006\237\000\003$\004\000\000!\000\130\000\000\002\000\002\000\0080\018\128\000\008\000\000\000\002\004\000@\000\192\000\000\000\020\128\001\000\192P\027\180\000\012\144\016\000\000\132\002\008\000\000\008\000\008\000 \192J\000\000 \000\000\000\008\016\001\000\003\000\000\000\000R\000\004\003\001@n\208\0002@@\000\002\016\008 \000\000 \000 \000\131\001(\000\000\128\000\000\000 @\004\000\012\000\000\000\001H\000\016\012\005\001\187@\000\201\001\000\000\008@ \128\000\000\128\000\128\002\012\004\160\000\002\000\000\000\000\129\000\016\0000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\n@\000\128l(\013\218\000\006H\008\005\000B\t\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002\001\176\1607h\000\025 \020\001\008$\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\164\000\008\006\194\128\221\160\000d\128\128P\004 \144@\000\000\000\020\128\001\000\216P\027\180\000\012\144\016\002\000\132\018\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000R\000\004\003a@n\208\0002@@(\002\016H \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\002\144\000 \027\n\003v\128\001\146\002\000@\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001\000@\000\002\000\017\128\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H:\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0010\000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\000\001@\000\000\000\000\000\000\000\128\000 \000\000\000\000\000\000\000 \000(\000\000\000\000\000\000\000\016\000\004\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\\000\128 \000\001\000\008\192\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\004\000\001\000\000\000\000\000\000R\000\004\131\161@n\208\000\018@@ \002\016\008 \000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\213P\002\000\128\000\000\000 \000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\004\000\001\000\000\000\000\000\000R\000\004\131\161@n\208\000\018@@ \002\016\008 \000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\248\"\228\144\008\006b\184\253\227\000~\161\128\008\214 P@\000\000\000\000\000\000 \000\000\000@\000\000\000\136\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\0031\\~\241\128?P\194\004k\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\145\130l\228\176\002\002\128! \001\221\001\002\131\184\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\008\000\002\000\000\000\000\000\000\164\000\t\007B\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000=j\184\001\000@\000\002\000\017\128\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H:\020\006\237\000\001$\004\002\000!\000\130\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\004\004\000\000\000\008\000\000\000\017\000\000\000\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\240E\201 \018\014\133q\251\198\000\253C\008\145\172@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\193\023$\128@3\021\199\239\024\003\245\012 F\177\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\n\146\000$\028\n\131~\128\000\146\002\001\000\016\144A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\019\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\015Z\174\000@\016\000\000\128\004`\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\002\000\000\128\000\000\000\000\000)\000\002A\208\1607h\000\t \016\001\008\004\016\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029j\168\001\000@\000\000\000\016\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\008\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\002\000\000\128\000\000\000\000\000)\000\002A\208\1607h\000\t \016\001\008\004\016\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\240E\201 \018\014\133q\251\198\000\253C\008\145\172@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\001\001\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\215\224\139\146@$\029\n\227\247\140\001\250\134\001#X\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\004\192 \000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000@\000\000\000\000 \228\016\008\006B\136\253\161\000~\161\128\008\198 P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\002\000\000\000\000\000\000\000\000\000@\000\127\247\252\"\228\208\t\135B\248\253\227\000\254\169\132\200\246:\214`\000\000\004\028\130\001\000\200Q\031\180 \015\2120\001\024\196\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\0031|~\240\128?P\192\004{\028h \000\000\000\000\000\000\016\016\000\000\000\000\000\000\000\004\000\000\000\000\255\235\240E\201 \016\012\197\241\251\194\000\253C\000\017\236q\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\008\008\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\191\004\\\146\001 \232_\031\188 \015\2120\t\030\199\026\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\131\161|~\240\128?P\192${\028h \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\128\000\255\235\240E\201 \016\012\197\241\251\194\000\253C\000\017\172P\160\128\000\000\000\000\000\000@@\016\000\000\000\000\000\000\016\000\002\000\003\255\175\193\023$\128@3\023\199\239\008\003\245\012\000F\177B\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128\128 \000\000\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\240E\201 \018\014\133\241\251\194\000\253C\000\145\172P\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\001\0010\000\000\002\000\000\000\000 \000\000\000\000\000\000 \000\192\128\000\000\000\000@\000\000 \000\001\000\023\255_\130.I\000\128f+\143\222\016\007\234\024\000\141b\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\128`@\000\000\000\000 \000\000\016\000\000\128\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\248\"\228\208\t\135B\184\253\225\000\254\161\128H\214\"Po\254\191\004\\\146\001\000\204W\031\188 \015\2120\001\026\196\n\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255_\130.M\000\152t+\143\222\016\015\234\024\004\141b%\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\128\000\255\235\240E\201 \018\014\133\241\251\194\000\253C\000\145\172P\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \016\016\000\000\000 \000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253~\008\185$\002A\208\174?x\192\031\168`\0185\136\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\239\215\224\n\146@ \024\n\131w\128\001\146\002\000\000X\129A\000\000\000\000R\001\004\131\129@n\208\000\018@@ \002\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\223\175\192\021$\128@0\021\006\239\000\003$\004\000\000\177\002\130\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\000 \008\000\000@\002\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007B\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000z\213p\002\000\128\000\004\000#\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144t(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002`\000\000\004\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\029\n\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\170\160\004\001\000\000\000\000@\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \232P\027\180\000\004\144\016\008\000\132\002\008\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\128\000\247\235\240\005I \016\012\005A\187\192\000\201\001\000\000,@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\000\0160A\148\150\000@@\000$\000\024\160 @F\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\029\n\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\000 \008\000\000@\0020\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007B\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\\000\169 \002A\192\1687\232\000\t \016\001\t\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\0010\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\208\1607h\000\t \016\001\008\004\016\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007Z\170\000@\016\000\000\000\004\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\133\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\128\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\128\000\000\016\019\000\000\000 \000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\128\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\132\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\248\"\228\144\008\006b\184\253\225\000~\161\128\008\214 P@\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144p(\013\218\000\002H\008\004\000B\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\031\253~\008\185$\002A\208\174?x@\031\168`\018=\1404\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000_\253~\008\185$\002\001\152\174?x@\031\168`\0025\136\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\248\"\228\144\008\006b\184\253\225\000~\161\128\008\214 P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\008\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\192\1607h\000\t \000\001\008\004\016\000\000\000\000\002\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128\000\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000 \000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \228\016\008\006B\136\253\161\000~\161\128\008\198 P@\000\000\000\000\008\000\000\000\000\000\000\000\016\000\000\000\000\000\000\004\000\000\000\131\144@ \025\n#\246\132\001\250\134\000#\024\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\014A\000\128d(\143\218\016\007\234\024\000\140b\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\128\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000 \000\000\000\000\000\000\000@\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253~\000\128 \000\001\000\008\000\016\000\000 \000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\004\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\128\000\000\000\000\000\000/\254\191\000@\016\000\000\128\004\000\008\000\000\016\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\001\000@\000\002\000\016\000 \000\000@\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\128\001 \224P\027\180\000\004\144\016\000\000\132\002\008\000\000\000\000\001\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\!\194\"$\129\016\008\000\001 \000U\t\000\002`\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\000p\136\136 D\002\000\000H\000\021B@\000\152\000\000\245\170\224\014\017\000\004\008\128@\000\t\000\002\168H\000\019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\008\004\002\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\008\000\000\000 \000\004\002\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\001\000\000\000\000\000\000\004\000\000\000\000\000\000\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\128\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\000p\136\128 D\002\000\000H\000\021B@\000\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181\\\001\194 \000\129\016\008\000\001 \000U\t\000\002 \000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\008\000\000\000 \000\004\002\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000@ \000\000\000\000\000\000\000\000 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000 \000\004\002\000\000\000\000\000\000@\000\002\000\016\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\008\000\001\000\128\000\000\128\000\000\016\000\000\128\004\000\000@\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\004\000\000\128@\000\000\000\000\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\192\008\002\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\008\000\245\170\224\004\001\000\000\008\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\008\000\001\000\128\000\000\130\000\000\000\000\000\128\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001@\000\000\000\000\000\000\004\000\000\128@\000\000\000\000\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\128\000\000\002\000\000@ \000\000\000\000\000\000\000\000 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\016\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000#\000\000\004\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000@ \000\000\001\000\000\000\000\000 \001\000\000\000\000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\016\008\000\000\000\000\000\000\000\000\008\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\004\000\000\128@\000\000\000\000\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000@ \000\000\000\128\000\000\000\000 \001\000\000\000\000\000\000@\000\008\004\000\000\004\128\000\000\128\000\004\000 \000\002\000\000\000\008\000\001\000\128\000\000\000\000\000\000\000\000\128\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000 \000\004\002\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000@\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\008\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\004\000\000\000\000\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000 \000\000\000\128\000\016\008\000\000\000\000\000\000\000\000\008\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\004\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\004\002\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\001\000\000\000\008\000\000\000\000\001\000\008\000\000\000\000\000\002\000\000@ \000\000\000\000\000\000\000\000 \001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=n\184\001\128@\000\002 \016\000\000\000\000@\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\002\000\000@ \000\000\004\128\000\004\000\000 \001\000\000\016\000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\030\183\\\000\192 \000\001\016\136\000\000\000\000 \001\000\000\000\000\000\000@\000\008\004\000\000\000\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\004\002\000\000\000\000\000\000\000\000\002\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\008\004\000\000\004\000\000\000\000\000\004\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\001\000\000 \016\000\000\000\000\000\000\000\000\016\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\194\028\"\"H\017\000\128\000\018\000\005P\144\000&\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\007\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\128\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\001\136\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\n\003v\128\000\146\002\000\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\016\000\000\000\000\001H\000\018\014\005\001\187@\000I\001\000\000\008@ \128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\239\248E\201 \018\014\135q\251\194\000\253S\008\145\172@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\254\017rH\004\131\161\\~\240\128?T\194$k\016+3\191}\192 \008\000\000\000\002\000\000\000\000\000\128\000\000\000\000\000\002E\024\000\000\000\000\000\004\000\000\000\000\000\016\000\000\000\000\000\014\253\247\000\128 \000\000\000\008\000\000\000\000\002\000\000\000\000\000\001\223\190\224\016\004\000\000\000\001\000\000\000\000\000@\000\000\000\000\000\001\"\140\000\000\000\000\000\002\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145F\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\018(\192\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\002E\024\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000H\163\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\253\255\000\128 \000\001\000\008\000\000\000\000\"\000\000\000\000\000\000\t\020`\000\000\000\000\016\000\000\000\000\000\000@\000\000\000\000\000\127\245\248\"\228\144\008\006b\184\253\225\000~\161\128\008\214 P@\000\000\000\000\000\000 \000\000\000\000\000\000\000\136\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \016\016\000\000\000\000\000\000\000D\000\000\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253~\008\185$\002A\208\174?x@\031\168a\0185\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\152\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\003\214\171\128\016\004\000\000 \001\024\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\128\001\235U\192\008\002\000\000\016\000\140\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\030\181\\\000\128 \000\001\000\008\192\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000?\250\252\017rH\004\131\161\\~\240\128?P\192$k\016h \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\163\000\000\000\000\000\128\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\016\008\008\000\000\000\000\000\000\000\"\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\191\004\\\146\001 \232W\031\188 \015\2120\137\026\196\n\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000&\000\000\000@\002\000\000\000\003\016\000\000\000\000\016\016\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\144\000$\028\014\003v\128\000\146\002\001\000\016\128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\164\000\t\007\002\128\221\160\000$\128\128@\004 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\254\017rH\004\131\161\220~\240\128?T\194$k\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\254\255\132\\\146\001 \232W\031\188 \015\2130\137\026\196\n\205\255\223\240\139\146@ \025\138\227\247\132\001\250\166\016#X\129Y\128\000\000\000\000\000\000\128\128\000\000\000\000\000\000\002 \000\000\003\023\255\127\194.I\000\128f+\143\222\016\007\234\152@\141b\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\008\185$\002A\208\174?x@\031\170a\0185\136\021\155\255\191\225\023$\128@3\021\199\239\008\003\245L F\177\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\136\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\254\017rH\004\131\161\\~\240\128?T\194$k\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\239\248E\201 \018\014\133q\251\194\000\253S\008\145\172@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\225\023$\128H:\021\199\239\008\003\245L\"F\177\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\225\023$\128H:\021\199\239\008\003\245L\"F\177\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \000\000\000\000\000\000\000\136\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\254\017rH\004\131\161\\~\240\128?T\194$k\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\152\000\000\001\000\008\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000 \000\000\000\000\000\000\000\000\130p\003\000\000\002\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\002\000\000\000\000\000\000\000\000\000'\0020\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\128\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\002\008\000\000\000\000\000\000\008\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\008 \000\000\000\000\000\000 \000\000\000@\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\016\002\000\000\000\000\000@\000\001\004\000\000\000\000\000\000\004\000\000\000\008\000\000\000\000\128\002\000\002\000\000\000\000\000\000\000#\000 \000@(\000\000\000\000\001\000\000\004\016\000\000\000\000\000\000\016\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000 \000 \000\000\000\000\000\000\0020\002\000\000\002\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\016\000\000\000\000\000\000\000\000\001\024\001\128\000\001\000\000\000\000\128\002\000\000\000\000\000\000\000\000\000#\000 \000\000 \000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\140\000\128\016\000\128\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\008\192\008\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\004`\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000 \000\000\000\000\000\000\000\000\0020\003\000\000\002\000\000\000\001\000\004\000\000\000\000\000\000\000\000\000F\000@\000\000@\000\000\000\000\000\128\000\000\000\000\000\000\000\000\008\192\008\000\000\008\000\000\000\000\000\016\000\000\000\000\000\000\000\000\001\024\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
1307
1308 let action =
1309 ((16, "\000r\000r\000\000\000\000\000\211\000\000\000\000\000\000\000r\000\000\000m$\152\000\000\000<=,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\000\018\000\000$\152\"\212\024z\000\016%\018\000\000\000\000\000\000\000\000\021>\000\130\024z\000m\024z\000\000\000`\000\000\024z\000\000\000m\000\000\000\000\001\0203,\000\000\000\0004\208\000\0005~\001.3,3,\016X\016X5~\000\0007,\000\0007\1723,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005\2543,\000\000\000\0005\254\000\0005\254\000\0005\254\000\000\000\000\000\000\018\160\000m\000\000\016X\000\000*\2083,\022\2263,\000\000\000\000\000\000\000\000\000\000\000\000\025\1763,\000\000\026\1563,\026\2423,\027\2223,\000\0003,\000\0003,\02843,\029 3,\029v3,\030b3,\030\1843,\000\1783,\000\000\000\000\000\000\000\000\000\0003,\031\1643,\031\2503, \2303,\000\000\000\0003,\000\000\"\168$\222\000\000\000\000\000\182\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\000\000\025r\000<\000\000$\222\000\000\000\166\016X\000\0003,\000\222\000\000\000\000\000m\000\000\000\000\000\000\000\000\001\030\000\000\000\000\002.\000\000\000\0113,\000\000\000\011\000\000\000\000\016X\002f\000\000\002\204\000\000\000\000\000\000\000\000\000\000\000\000\000\0008,3,\000\0008,\000\0008,8,\000\000\000\000'\"\000m\000\000\016X\003\020\000\0003,\003\018\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016X\003>7,\000\000\000\000<\1523,\000\0003,\000\000\000\000\003\132\000\000\000p6\172\004B3,\004\018\000\000\000\0007,\000p\000\000\000\000\000\000\000\000\000\000'\1647,>B7,>\1427,>\2187,\000\0007,\000\0007,?&7,?r7,?\1907,@\n7,@V3,\003\2287,\000\0007,@\1627,@\2387,A:\003\208\000\000\004 \000\000\000\138$\152\000\000\000\138\000\000\000\000\00423,\000\000\004\166\000\0007,\004\246\000\000\016X\004T\000\000\000\000\004T\000\000\000\000\001\020\000\000\005(\000\000$\222A\204\005N\005L\000m\004\194\005tC\018\001\148\000\000\000\000\002\028C:\000\000\000\000\000\000\005x\005l\001$\005~C\018\002\\C\018\000\000\000\000\001\"\000\000\000\000\004\238\000\000\005\018\005\198C\018\005@\000\000\000\000\002\028\000\000\005X\006,\000\000C\218\026P\000\000\000m\006.\000\000(\250\000m\006B\000\000\000\000#\158\024z\005p\000\000\005\234\000\000\005z\000\000\001*$\152\000\000$\152\000\000\005h\000\000\001*\000\000\012\166\016\n\0064C\018\005\136\006X\000\000$\152\000\004\000\000\006\\\000\000\000\000\000\000\000\000\000\000\000\000\006@3,\005\148\016\252\006F3,\005\154\006D\002\012\005\212\006R\000\0008\1729,\016X\005\178\000\000\005\1829,\000\000\000\000\000\000\000\000\000\000\000\000\000\0009\1723,\000\0009\172\000\0009\1729\172\000\000\000\000\022\140\000m\000\000\016X\005\198\000\0003,\005\208\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000%\1843,\000\0003,\000\000\005\224\000\000\000\011\000\000\000\000\000\000\000\000\000\000+&9,,\0089,,^9,-@9,\000\0009,\000\0009,-\1509,.x9,.\2069,/\1769,0\0063,\006\0149,\000\0009,0\2329,1>9,2 \016X\005\236\000\000\000\0003,\000\000\006\188\000\000\001B\002\134\000\000\006R\006R\001B\000\000\001B\000\000\012\166\006R\006R\000\000\000\000\000\000\020\162\000\000\000\000\000\000\000\000\006\1583,\005\242\016\252\017\190\000m\006\194\000\000\006\1663\208\006\2123\208\006\2163,\006\014\016\252\016\252\003\170\002\244\001\"\000\000\000\000\000\000\002\244\000\000\003\146\001\128\000\000\000\000\006\020\000\000\000\000\000\000\006\234\000\000\006\236\000\000\000\000\007\028\006\2383,\006F\007\022\000\000\018\246\007\000\016X\006T\016\252\000\000\000\000\006|\000\000\000\011\000\000\003\202\000\000\001B\000\000\000\000\006\206\000\000&X\016\n\007\020C\018\006h\007R\000\000\000m\000\000\001\2083\208'\238\000\000:,3,\006\154\000\000\016X\006\156\000\000\006\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\1723,\000\000:\172\000\000:\172:\172\000\000\000\000C\184\000m\000\000\016X\006\162\000\0003,\006\160\000\000\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016X\006\166;,\000\000\000\0003,\000i3,\006\188\006\240'\238(\178&\134\007j3\208\0076\000\000\000\000\000m\006\248'\238\000\000\006\244'\238\000\000\000\000\015x;,\019\250;,#\012;,)H;,\000\000;,\000\000;,*\012;,5P;,6~;,8\254;,9~;,9\254;,:~;,<\214\000\000\000\000\006\202\000\000\006\218)v\000\000*:\006\222*:2~\006\224*:\000\000\000\000\000\000\000\000\000\000\007\008'\238\000\000\000\000\006\218\000\000\007\176\000\000\000m\000\000\000\186\007\178\000\000\006p\007\144\000m\006\246\007\182C\018\007\n\000p\000\0003\208\007\230\000\000\000_\005\166\007h\007\208C\018\007$\007\244\000\000\002\1403\208\007\250\000\000\007\252\000\000(\250\000m\00363\208\007\254\000\000\008\000\000\000\011b\0009\000\000\011b\000\000\000\000\019\164\004z3\208\008\002\000\000\008\004\000\000\000\000\0076\007\214\000m\007J\007\252C\018\007R\002\016\000\0003\208\008\"\000\000\003H\000\000\000\000\007\150\000\000\011b\000\000\008\006\016X\007^\0080\000\000\000\022\000\000\008\018C\018\007h\0088\000\000\004\1523\208\008>\000\000\008@\000\000(\250\000m\004\1723\208\008D\000\000\008F\000\000\000\000\000\000\007\150\000\000\000\000\000\008\000\000\006R\000\000\000\254\000\000\000\000\001\030\017\190\000\000\001\030\000\000\000\000\007|\000\000\000\011\000\003\016\252\000\000\003\202\0009\003\202\000\000\000\008\000\000\006R\000\000\006R\000\000\000\000\000\000\007~\000\000\000\000\007\140\000\000\002\146\005\014\001\012\003\202\000\000\000\000\000\000\001\210\000\000\006R\000\000\002\146\000\000\000\000\014n\005\002\012\166\000\000\012\212\000\000\008\218\012\166\000\000\000\000\008\218\000\000\000\000\007\138\000\000\000\000\007\144\000\000\003j\006R\000\000\003j\000\000\000\000\008\002\000\000\000\008\000\000\006R\000\000\000\000\000\000\015 4P\000\000\008d\000\000\015 \008f\000\000\008j\000\000&X\000m\003>\000\0003\208\008n\000\000\008X\008J\000m\007\200\008zC\018\007\220\003\248\000\0003\208\008\172\000\000\000_\004\202\000\0003\208\008\180\000\000(\250\000m\005\012\000\0003\208\008\184\000\000\004$\015 \000\000\019\164\005\176\000\0003\208\008\202\000\000\000\000\000\000\008\172\008\170\000m\008\018\008\194C\018\008\022\005\184\000\0003\208\008\240\000\000\000X\000\000\008\210\016X\008&\008\246\000\000\000\148\000\000\005\216\000\0003\208\008\254\000\000(\250\000m\005\240\000\0003\208\t\004\000\000\004$\000\000\000\000\008<\000\000\000X\015\016\008\176\000\000\000\000\000\000\008\186\000\000\001N\002\134\000\000\012\166\t\022\000\000\000\0003,\008\140\006R\000\000\008b\000\000\002\012\000\000\000\000\003V\012\166\000\000\012\166\000\000\008P\000\000\003V\000\0007,\003\1667,\000\0007,\000\000\008R\000\000\003\166\000\000\016\252\003\190\016\252\000\000\016\252\000\000\008V\000\000\003\190\000\0007,\003\166\008X\000\000<\028\000m\004\018<\028\000\000<\028\000\000\008Z\000\000\004\018\000\0007,\003\166\008^\000\000\000\000\021\230\000\000\000\000\000\000\000\000\000\000\025\020!\130\000\000\003<\000\000\004\128\000\000\000\000\008\158\000m\000\000\000\000\000\000\002\138\004\128\000\000\002\146\003\184\003\184\000\000\000\179\003\184\000\000\008v\000\000\000\000\000\000\000\000\000\000\000\000\008\242\000\000\"L\000\000$\152\004\128\000\000\003n\004\128\000\000\t\002\000\000\004\128\t\006\000\000\007\202\012\192\t\n\000\000\t\012\000\000\t\190\012\192\004\128\008\164\004\128\t\"\000\000\t$\000\000\t*\000\000$\152\000\000\003d$\152\000\000\008\180\0032\000\000\000F\004\128\000\000\004\138\004\128\000\000\002\222\001\216\000m\000\000\000\204\000m\000\000\008\194\000\000\000\000\000\000\000\000\tB\000\000\004\128\004\128\tJ\000\000\tR\000\000\004\128\tT\000\000\004\128\t\\\000\000\t6\004\128\tb\000\000\004\174\021:\004\128\t\008\004\128\t\150\000\000\t\152\000\000\000\000\004\164\004\128\000\000\003t\002n\002n\000\000\000\000\000\000\004d\002n\000\000\t \000\000\000\000\000\000\000\000\004\128\000\000\004\184\004\128\000\000\004\"\002\208\000m\t$\000\000\000\000\000\000\000\000\t\160\000\000\t\162\000\000\004\128\t\180\000\000\0076\004\128\t\182\000\000\t\186\000\000>\028\tl\t\150\008~\004\128\t\194\000\000\000\000\t\196\000\000\t\156>\028\004\128\t\202\000\000\004\128\t\204\000\000\t\206\000\000\008\244\tZ\004\128\t\212\000\000\t\214\000\000\000m\tR\000\000\000\000\021\230\000\000\000\000\0026\n,\000\000\000\000\001\017\000\000\000\000\000\0003,\001\194\nf\t\152\n\0287,\000\000\004\1627,\000\000\tx\000\000\000\000\000\000\000\000\000\000\002\134\000\000\001\013\000\000\000\000\000\000\003\202B~\001zB~B~\001z\000\000\000\000\005\242\005\242\005\242\005\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000<\152\006p\013\232\0009\000\000\000\000\003H\000\000\007\150\000\000\000\000\001\194\000\000\000\000\t\192\000R\n4Dz\000\000\004\178E\024\000\000\000\000\n>\n0\000m\000\000\000m\000\000\004\178\000\000\004\180Dz\000\000\000\000\t\160\nR\006R\t\166\000\000\0076\003H\000\000\007\150\000\000\000\254\002\132\000\000\000\000\n>\000\000\000\000\0026\000\000\004\002\000\000\000\000\000\0003,\001\194\000\000\002\134\000\000\0040\000\000\000\000\000\000\005\014\n\030\005\208\n\030\000\000\006R\n\030\000\000\005\208\000\000\006R\000\000\006R\000\000\006R\000\000\000\000\000\000\000\000\000\000\001\194\000\000\006R\000\000\005\208\000\000\006R\000\000\003\134\000\000\000\000\008\218\n\138\000\000\000\000\008\218\000m\003\020\nf\002p\000\000\002p\n\144\000\000\n\146\000\000\n\148\000\000\000\000\002\216\002p\012\164\002p\000\000\000\000\006\232\t\170\000\000\008,\t\014\n\164\tp\n\164\000\000\000\000\nP\000m\000\000\005D\t\254\000\000\000\000\000\000\001\230\000\000\t\176\000\000\000\000\000\000\008,\t\014\nP\005D\001\230\t\178\000\000\000m\000\000\n\176\n\176\t\254\000m\nR\000\000"), (16, "\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\000\182\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\n\141\020\011\020\015\020c\020g\n\141\020\019\008\002\020k\n\141\000\210\n\141\n\141\n\141\001.\008\022\n\141\011\174\001:\n\141\n\141\t*\n\141\000.\006\018\016:\016b\016\138\016\154\016\198\t*\n\141\000\023\000\027\n\141\n\141\017F\012\158\000\162\008\002\n\141\n\141\n\141\nA\n\141\000\162\011-\008\022\002\242\n\141\0055\n\141\n\141\n\141\n\141\n\141\0066\nF\000\146\n\141\n\141\n\141\n\141\n\141\n\141\000\006\n\141\n\141\n\141\n\141\015R\000\n\001.\n\141\n\141\011\174\001:\011-\011-\011F\000:\t6\011\154\n\141\n\141\n\141\n\141\n\141\n\141\n\141\000\014\n\141\005\197\n\141\000\162\n\141\000z\002\242\n\141\n\141\015n\000~\001.\000\162\n\141\0016\001:\013F\n\141\011-\011-\n\141\000\174\t6\011-\n\141\n\141\n\141\n\141\n)\n\141\n\141\004\158\005\157\nI\n\141\n\141\n\141\007\213\n\141\018\014\n\141\n\141\000\162\n\141\001.\n\141\n\141\011\174\001:\n\141\n\141\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\012\158\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\011\158\005=\003\218\000\162\005\205\008\006\008\002\005\242\005\205\005\157\005\205\005\205\005\205\0055\008\022\005\205\0055\000\194\005\205\000\222\0055\005\205\0055\005\197\003\233\001.\0055\0055\011\174\001:\005\205\005e\005e\013\"\005\149\000\250\002\026\nI\013\022\005\205\005\205\nI\nI\005\205\005\205\002\174\000\210\000\210\005\205\003i\005\205\005\205\005\205\005\205\005\205\011f\000\162\002r\005\205\005\205\005\205\005\205\005\205\005\205\0186\005\205\005\205\005\205\005\205\006\229\005\250\nI\005\205\005\205\000\162\000\162\002b\nI\n\025\002\190\t6\0055\005=\005\205\005\205\005\205\005\205\005\205\005\205\000\146\005\205\008\162\005\205\000\210\005\205\n)\t*\005\205\005\205\003\233\005=\006\229\006\229\005\205\005=\008\002\006\229\007\t\005\189\002\222\005\205\007\t\005J\008\022\005\205\005\205\005\205\005\205\018*\005\205\005\205\000\162\0055\003\233\005\205\005\205\005\205\012Z\005m\015\218\005\205\005\205\005\237\005\205\005\237\005\205\005\205\005\237\008\154\005\205\005\205\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\005\237\002U\000\162\005\237\020\030\002U\022f\005\237\019\250\005\237\005\237\005\237\008\n\tr\005\237\021w\t6\005\237\005\237\022\238\005\237\005\237\005\237\021{\005\237\005\237\n)\005\237\022j\005\237\018\214\011f\005\237\021~\022n\003\233\005\229\005\229\005\237\005\237\005\237\005\229\005\237\005\237\008\014\012^\005\237\005\237\019\250\005\237\0176\005\237\005\237\005\237\006z\004\217\013\150\005\237\005\237\005\237\005\237\005\237\005\237\015\242\005\237\005\237\005\237\005\237\005E\005.\nq\018\218\005\237\005U\006\021\0055\022\142\000\162\005\237\019\"\007\217\002\234\005\237\005\237\005\237\005\237\005\237\005\237\018&\005\237\022v\005\237\005\237\005\237\0055\014B\005\237\005\237\005\237\007\217\014F\005V\005\237\0055\014J\002y\005\237\011\206\007\217\005\237\003\014\n)\006\005\005\237\005\237\014~\005\237\017\002\005\237\005\237\t*\022~\016\026\005\237\017*\011f\000\162\0055\006\021\008\002\005\237\005\165\005\237\002b\005\237\005\237\015\198\008\022\005\237\005\237\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\012\158\000^\020r\000b\006N\000f\000j\000n\006R\020z\003\022\016B\018\210\014\022\006V\006\005\022\158\011-\000r\017\018\000\226\006f\006\130\016j\0055\006\134\008\158\022\150\000v\007\217\005]\007\242\022^\nQ\016\"\001.\005\253\0055\011\174\001:\000\238\011\238\007\217\008\002\017:\014\130\003j\003v\011-\008*\006\142\008\022\t6\008.\013R\003!\000\210\014\174\001\"\011f\001&\003\197\000\134\t2\0086\016\166\000\162\003\170\006\162\001.\008:\006\166\008>\001:\016J\006\170\006\174\008B\006\178\008=\011-\011-\017\246\008F\000\162\011-\016r\017\138\005\173\n!\005\253\017\n\005\133\006\182\006\186\008J\008N\006\190\008R\019\030\000\162\008\154\008f\003\210\003\161\008\186\014\246\008r\006\198\003\001\017\014\008=\008=\005\245\018\158\003\226\008=\t6\003\234\017\018\008\146\002\253\n)\006\013\008\150\008\210\003\197\t>\016\174\006\202\008\214\004j\005}\017\014\006\206\003\197\003\197\n)\014\178\004\142\003\197\008\222\017\018\006\210\005\141\005\245\005\245\n)\018^\001j\005\245\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\014\198\000^\020r\000b\006N\000f\000j\000n\006R\020z\000:\021\151\021\155\na\006V\006\013\021\159\004\150\000r\005\181\000\226\006f\006\130\007\029\005u\006\134\nY\004\182\000v\000\162\004\194\007\242\004\206\014\226\021\187\021\191\ni\008\002\007\029\021\195\000\238\012\"\017\030\008\002\004\218\008\022\004\230\004\250\018\234\008*\006\142\008\022\000\162\008.\013\154\n9\012\186\022\218\001\"\011f\001&\003\213\000\134\t2\0086\017\030\012\218\018\026\006\162\001.\008:\006\166\008>\001:\011f\006\170\006\174\008B\006\178\0206\018\198\014\202\005\n\008F\011f\n1\007\029\021\n\021:\005\014\019\018\005M\002m\006\182\006\186\008J\008N\006\190\008R\005\022\000\162\005\026\008f\005B\003\161\005F\005N\008r\006\198\006F\004q\t6\006J\006\029\014\230\015\006\020\146\t6\006N\015>\008\146\005r\006R\020\150\008\150\008\210\004\005\t>\004q\006\202\008\214\t*\007\029\022\226\006\206\015v\003\213\003\129\022\230\005z\008\002\008\222\005~\006\210\007\029\006\029\006\029\015\146\008\022\001j\006\029\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\005\134\000^\020r\000b\006N\000f\000j\000n\006R\020z\006F\003\129\005\154\006J\006V\005\158\005\182\020\146\000r\006N\000\226\006f\006\130\006R\020\150\006\134\005\198\005\218\000v\004q\005\226\007\242\005\234\006\007\015\n\006\030\006&\006*\015B\006>\000\238\006Z\006b\008\002\006j\006r\006v\004q\008\005\008\018\006\142\008\022\t6\008.\015z\006~\003\181\006\150\001\"\006\158\001&\003\241\000\134\0082\0086\011~\015\150\006\246\006\162\001.\008:\006\166\008>\001:\007\002\006\170\006\174\008B\006\178\007J\008\005\008\005\0115\008F\007\194\008\005\007\234\007\254\008V\008^\008n\003%\008v\006\182\006\186\008J\008N\006\190\008R\008~\000\162\008\134\008f\008\142\003\161\003%\008\202\008r\006\198\006F\008\218\008\226\006J\008\013\017\n\008\238\020\146\t6\006N\003\181\008\146\022\142\006R\020\150\008\150\008\210\003\241\t>\008\242\006\202\008\214\008\250\008\254\017\014\006\206\003\241\003\241\t\n\t\018\t\"\003\241\008\222\017\018\006\210\tF\008\013\008\013\tV\t^\001j\008\013\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\tb\000^\012>\000b\006N\000f\000j\000n\006R\019Z\t\138\004m\t\150\t\158\006V\t\242\t\254\n2\000r\003%\000\226\006f\006\130\003%\003%\006\134\017\170\004\001\000v\004m\nN\007\242\nR\nb\nj\003%\nz\n\134\011\n\011\018\000\238\011\"\011.\008\002\011J\017\014\011Z\011b\011v\008\018\006\142\008\022\000\162\008.\017\018\011\130\003\181\011\138\001\"\003%\001&\022\150\000\134\0082\0086\017\030\011\142\011\150\006\162\001.\008:\006\166\008>\001:\011\166\006\170\006\174\008B\006\178\011\186\011\194\011\198\0115\008F\011\214\011\222\011\246\011\254\012*\0122\012B\003!\004m\006\182\006\186\008J\008N\006\190\008R\012J\000\162\012N\008f\012V\012f\003!\012\138\008r\006\198\012\146\004m\012\150\012\166\0115\012\174\012\178\004a\t6\012\194\012\202\008\146\012\226\012\234\013:\008\150\008\210\000\162\t>\013\130\006\202\008\214\013\142\014\002\014\014\006\206\004a\014.\014Z\014f\017\030\014n\008\222\014\138\006\210\004a\0115\0115\014\146\014\150\001j\0115\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\014\158\000^\014\162\000b\006N\000f\000j\000n\006R\t\185\014\170\014\186\004a\017\n\006V\014\210\003\141\014\238\000r\003!\000\226\006f\006\130\003!\003!\006\134\015\018\015\"\000v\007%\003\141\007\242\017\014\t\185\015&\003!\022^\015.\0152\015:\000\238\017\018\022\182\008\002\007%\015J\015Z\015b\015f\008\018\006\142\008\022\015\130\008.\004a\015\158\005\213\015\178\001\"\003!\001&\015\194\000\134\0082\0086\019\194\015\210\004a\006\162\001.\008:\006\166\008>\001:\015\234\006\170\006\174\008B\006\178\015\250\016\006\016/\016W\008F\016\127\016\151\016\187\t\185\016\211\017\022\017R\017o\007%\006\182\006\186\008J\008N\006\190\008R\017\151\000\162\017\163\008f\017\179\017\187\n\017\003\141\008r\006\198\022F\003\141\003\141\017\206\000\162\017\194\017\215\017\223\t6\022V\017\231\008\146\018\002\003\141\003\141\008\150\008\210\017\030\t>\018B\006\202\008\214\018W\005\213\017\014\006\206\018g\005\213\005\213\007%\018o\018{\008\222\017\018\006\210\018\135\018\142\003\141\018\151\005\213\001j\007%\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\018\170\000^\020r\000b\006N\000f\000j\000n\006R\020z\005\213\018\179\018\187\018\246\006V\019*\019?\019G\000r\n\017\000\226\006f\006\130\n\017\n\017\006\134\019S\019c\000v\019k\019v\007\242\019z\019\135\019\147\n\017\019\154\019\167\019\179\019\187\000\238\019\198\019\207\019\215\019\227\019\254\022\190\020\"\020&\008*\006\142\020*\000\162\008.\021\206\005\221\020B\020\246\001\"\n\017\001&\020\254\000\134\t2\0086\017\030\021\026\021\030\006\162\001.\008:\006\166\008>\001:\021J\006\170\006\174\008B\006\178\021N\021V\021\131\022J\008F\022b\022r\022z\022\130\022\171\022\186\022\222\022\247\023\027\006\182\006\186\008J\008N\006\190\008R\023*\000\162\023.\008f\0232\003\161\023;\000\000\008r\006\198\000\000\000\000\000\000\000\000\007\241\000\000\000\000\000\000\000\000\000\000\000\000\008\146\000\000\000\000\000\000\008\150\008\210\000\000\t>\000\000\006\202\008\214\005\221\000\000\000\000\006\206\005\221\005\221\000\000\000\000\000\000\000\000\008\222\000\000\006\210\000\000\007\241\007\241\022\206\000\000\001j\007\241\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\000\000\000^\000\000\000b\006N\000f\000j\000n\006R\005\221\000\000\000\000\000\000\000\000\006V\000\000\000\000\000\000\000r\000\000\000\226\006f\006\130\000\000\000\000\006\134\000\000\000\000\000v\000\000\000\000\007\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008*\006\142\000\000\000\000\008.\012\006\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\134\t2\0086\000\000\000\000\000\000\006\162\001.\008:\006\166\008>\001:\000\000\006\170\006\174\008B\006\178\000\000\000\000\000\000\011\017\008F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\006\186\008J\008N\006\190\008R\000\000\000\162\000\000\008f\000\000\000\000\000\000\000\000\008r\006\198\000\000\000\000\000\000\000\000\011\017\000\000\000\000\000\000\000\000\000\000\000\000\008\146\000\000\000\000\000\000\008\150\008\210\000\000\t>\000\000\006\202\008\214\000\000\000\000\000\000\006\206\000\000\000\000\000\000\000\000\000\000\000\000\008\222\000\000\006\210\000\000\011\017\011\017\000\000\000\000\001j\011\017\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\000\000\000^\000\000\000b\006N\000f\000j\000n\006R\000\000\000\000\000\000\000\000\017\n\006V\003\029\000\000\000\000\000r\000\000\000\226\006f\006\130\000\000\000\000\006\134\000\000\000\000\000v\003\029\000\000\007\242\017\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\017\018\000\000\000\000\000\000\003\029\000\000\000\000\000\000\008*\006\142\000\000\007\029\008.\013\206\000\000\000\000\t*\001\"\000\000\001&\000\000\000\134\t2\0086\017\198\008\002\007\029\006\162\001.\008:\006\166\008>\001:\008\022\006\170\006\174\008B\006\178\000\000\000\000\000\000\000\000\008F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\197\006\182\006\186\008J\008N\006\190\008R\000\000\000\162\000\000\008f\000\000\000\000\003\029\000\000\008r\006\198\003\029\003\029\000\000\000\000\000\162\000\000\007\029\000\000\000\000\000\000\000\000\008\146\003\029\000\000\000\000\008\150\008\210\017\030\t>\000\000\006\202\008\214\000\000\000\000\000\000\006\206\000\000\003\029\000\000\000\000\000\000\t6\008\222\000\000\006\210\000\000\003\029\t\197\022\150\000\000\001j\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\007\029\000^\000\000\000b\006N\000f\000j\000n\006R\000\000\000\000\000\000\007\029\000\000\006V\000\000\000\000\000\000\000r\000\000\000\226\006f\006\130\000\000\000\000\006\134\000\000\000\000\000v\000\000\000\000\007\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008*\006\142\000\000\000\000\008.\020\198\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\134\t2\0086\000\000\000\000\000\000\006\162\001.\008:\006\166\008>\001:\000\000\006\170\006\174\008B\006\178\000\000\000\000\000\000\000\000\008F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\006\186\008J\008N\006\190\008R\000\000\000\162\012\158\008f\000\000\000\000\000\000\000\000\008r\006\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\146\000\000\000\000\000\000\008\150\008\210\000\000\t>\004\158\006\202\008\214\000\000\000\000\000\000\006\206\000\000\001.\000\000\000\000\011\174\001:\008\222\000\000\006\210\000\000\0002\006\022\000F\000J\001j\000N\006F\000R\000V\006J\000Z\000\000\000^\000\000\000b\006N\000f\000j\000n\006R\000\000\000\000\000\162\000\000\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\226\000\000\006\130\000\000\000\000\006\134\015n\000\000\000v\000\000\000\000\014N\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\005\149\000\000\014^\006\142\000\000\000\000\004\158\n\150\000\000\000\000\000\000\001\"\000\000\001&\001.\000\134\000\000\011\174\001:\000\000\000\000\006\162\001.\n\158\006\166\0016\001:\000\000\006\170\006\174\008B\006\178\000\000\000\000\000\000\000\000\000\000\n\166\000\000\000\000\000\000\000\000\000\000\n\230\n\238\000\162\006\182\006\186\000\000\000\000\006\190\000\000\n\198\000\162\000\000\n\174\000\000\n\190\000\000\000\000\000\000\006\198\000\000\000\000\000\000\0055\000\000\000\000\0055\000\000\000\000\000\000\0055\000\000\0055\000\000\000\000\n\206\0055\0055\t>\005\149\006\202\014b\000\000\000\000\000\000\006\206\000\000\000\000\000\000\000\000\000\000\000\000\014j\000\000\006\210\000\000\0002\0006\000F\000J\001j\000N\000\000\000R\000V\000\000\000Z\000\000\000^\n\214\000b\000\000\000f\000j\000n\000\000\n\182\000\000\0055\000\000\000\000\000\000\000\000\000\000\000\000\000r\000\146\000\226\004\169\000\230\000\000\000\000\000\234\000\000\000\000\000v\000\000\001.\000\000\000\000\0016\001:\000\000\n\246\n\222\000\000\000\000\000\238\000\000\000\000\000\242\000\000\000\000\000\000\000\000\000\000\001\006\001\002\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\162\000\134\000\000\000\000\0055\000\000\000\000\001*\001.\000\000\0012\0016\001:\001\142\001>\001B\000\000\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001J\000\000\006V\001N\000\000\000\000\000\162\000\000\000\226\006f\006\130\000\000\000\000\006\134\001V\000\000\000\000\000\000\000\000\007\242\000\000\000\000\000\000\001Z\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\000\000\000\001^\000\000\008b\006\142\000\000\001b\008.\000\000\003e\000\000\000\000\001\"\000\000\001&\001f\000\000\000\000\0086\000\000\000\000\001j\006\162\001.\008:\006\166\008>\001:\000\000\006\170\006\174\000\000\006\178\000\000\000\000\000\000\000\000\008F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\006\186\008J\008N\006\190\008R\000\000\000\162\000\000\008f\000\000\000\000\000\000\000\000\008r\006\198\000\000\000\000\006V\000\000\000\000\000\000\000\000\000\000\000\226\006f\006\130\008\146\000\000\006\134\000\000\008\150\008\210\000\000\000\000\007\242\006\202\008\214\000\000\000\000\000\000\006\206\000\000\000\000\000\238\000\000\000\000\000\000\008\222\000\000\006\210\000\000\000\000\006\138\006\142\000\000\001j\008.\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\0086\000\000\000\000\000\000\006\162\001.\008:\006\166\008>\001:\000\000\006\170\006\174\000\000\006\178\000\000\000\000\000\000\000\000\008F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\006\186\008J\008N\006\190\008R\000\000\000\162\000\000\008f\000\000\000\000\000\000\000\000\008r\006\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\146\000\000\000\000\011a\008\150\008\210\011a\000\000\000\000\006\202\008\214\000\000\000\000\000\000\006\206\000\000\000\000\000\000\000\000\011a\000\000\008\222\011a\006\210\000\000\000\000\001\130\011a\000\000\001j\000\000\000\000\000\000\011a\000\000\000\000\011a\011a\000\000\011a\011a\000\000\000\000\001\138\011a\002\182\004\001\000\000\011a\004\001\000\000\011a\000\000\011a\011a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\000\000\000\000\000\000\000\000\000\000\000\000\004\001\004\001\000\000\000\000\011a\000\000\011a\004\001\000\000\000\000\000\000\000\000\000\000\004\001\004\001\000\000\011a\004\001\000\000\004\001\000\000\002\194\004\001\000\000\000\000\004\001\000\000\004\001\004\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011a\011a\011a\000\000\011a\011a\002\198\000\000\011a\000\000\004\001\000\000\000\000\000\000\000\000\000\000\002\206\000\000\000\000\000\000\011a\000\000\000\000\011a\011a\011a\011a\004\001\000\000\000\000\004\001\011a\011a\011a\000\000\011a\011a\011a\000\000\000\000\000\000\000\000\000\000\004\001\004\001\004\001\004\001\000\000\004m\004\001\004\001\004\001\000\000\000\000\000\000\000\000\000\000\004\001\000\000\004\001\004\001\004\001\000\000\004\001\004\001\000\000\004\001\004\001\004\001\004\001\000\181\000\000\004\001\000\000\004\001\004\001\000\000\004\001\004\001\004\001\000\000\000\000\000\000\000\000\000\000\000\000\n\158\000\000\000\000\000\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\000\000\004\001\n\166\000\000\000\000\000\000\000\000\000\000\000\181\000\181\000\000\004\001\000\000\000\000\000\000\000\000\004\001\n\198\000\000\000\162\n\174\000\000\n\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\004\001\004\001\000\000\004\001\004m\004\001\000\000\004\001\000\000\n\206\000\000\000\000\000\000\000\000\000\000\004\001\000\000\000\000\000\000\000\000\000\000\000\000\004\001\004\005\004\001\000\000\004\005\000\000\000\000\000\000\004\001\004\001\004\001\000\000\004\001\004\001\004\001\000\000\000\000\004\005\000\000\000\000\004\005\n\214\000\000\000\000\004\005\004\005\000\000\000\000\n\182\000\000\000\000\004\005\000\000\000\000\004\005\004\005\000\000\004\005\004\005\000\000\000\181\004\005\004\005\004\005\000\000\000\000\004\005\000\000\000\000\004\005\000\000\004\005\004\005\000\000\000\000\000\181\n\222\000\000\003Q\003Q\003Q\003Q\000\000\003Q\000\000\003Q\003Q\017\n\003Q\000\000\003Q\004\005\003Q\004\005\003Q\003Q\003Q\000\000\000\000\000\000\000\000\000\000\000\000\004\005\000\170\000\000\017\014\003Q\004\005\000\000\000\000\000\000\000\000\000\000\000\000\017\018\000\000\003Q\000\000\000\000\000\000\000\000\000\000\000\000\004\005\004\005\004\005\000\000\004\005\004q\004\005\000\000\004\005\000\000\000\000\000\000\000\000\000\000\003Q\018\162\004\005\000\000\t\197\003Q\004\005\000\000\000\000\004\005\000\000\004\005\000\000\003Q\000\000\000\000\000\000\004\005\004\005\004\005\000\000\004\005\004\005\004\005\001=\001=\001=\001=\t\197\001=\000\000\001=\001=\000\000\001=\000\000\001=\000\000\001=\000\000\001=\001=\001=\000\000\000\000\000\000\000\000\016\222\000\000\000\162\000\000\003Q\001=\001=\001=\000\000\000\000\000\000\000\000\001=\000\000\000\000\017\030\001=\000\000\000\000\000\000\001=\000\000\000\000\000\000\001=\000\000\000\000\016\226\000\000\000\000\001=\000\000\000\000\000\000\000\000\t\197\000\000\001=\000\000\000\000\000\000\001=\000\000\000\000\003Q\000\000\000\000\000\000\000\000\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001=\000\000\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\181\000\000\000\000\011\181\000\000\000\000\001=\000\000\001=\000\000\001=\000\000\001=\000\000\000\000\000\000\011\181\001=\000\000\011\181\001=\000\000\000\000\006\230\011\181\000\000\000\000\000\000\000\000\000\000\011\181\000\000\000\000\011\181\011\181\001=\011\181\011\181\001=\001=\006\238\011\181\006\250\001\137\000\000\011\181\001\137\000\000\011\181\016\230\011\181\011\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\001\137\000\000\000\000\011\181\000\000\011\181\001\137\000\000\000\000\001\137\001\137\000\000\001\137\001\137\000\000\011\181\000\000\001\137\000\000\000\000\007\006\001\137\000\000\000\000\001\137\000\000\001\137\001\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\181\011\181\011\181\000\000\011\181\000\000\007\n\000\000\011\181\000\000\001\137\000\000\001\137\000\000\000\000\000\000\007\018\000\000\000\000\000\000\000\000\000\000\001\137\011\181\000\000\011\181\000\000\000\000\000\000\000\000\000\000\011\181\011\181\011\181\000\000\011\181\011\181\011\181\000\000\000\000\000\000\000\000\000\000\001\137\001\137\001\158\000\000\001\137\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\001\137\001\137\001\137\001\137\000\000\000\000\000\000\000\000\002J\001\137\001\137\000\000\001\137\001\137\001\137\004%\000\000\002\130\004%\002\134\004%\002\138\004%\000\000\004%\000\000\000\000\002\142\004%\004%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004%\004%\000\000\000\000\000\000\000\000\004%\000\000\000\000\0002\000\142\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\000\000\000^\004%\000b\004%\000f\000j\000n\000\000\000\000\004%\000\000\000\000\004%\004%\000\000\000\000\000\000\000r\000\000\000\000\004%\000\000\000\000\004%\004%\000\000\000\000\000v\000\000\000\000\000\000\000\000\000\000\004%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004%\000\000\000\000\000\000\000\000\000\130\000\000\000\000\004%\000\000\000\158\000\000\004%\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\004%\t\181\t\181\t\181\t\181\000\000\t\181\000\000\t\181\t\181\000\000\t\181\000\000\t\181\000\000\t\181\000\000\t\181\t\181\t\181\004%\000\000\000\000\004%\004%\000\000\000\000\004%\000\000\t\181\t\181\t\181\004%\004%\000\000\000\162\t\181\004%\000\000\000\000\t\181\000\000\000\000\000\000\016\246\000\000\000\000\000\000\016\254\002\154\000F\000J\000\166\000N\t\181\000R\000V\000\000\000Z\000\000\000^\t\181\000b\000\000\000f\t\181\000n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\181\n\249\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000v\000\000\000\000\000\000\000\000\000\000\t\181\000\000\000\000\t\181\000\000\000\000\000\000\001\190\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\181\000\000\t\181\000\000\t\181\001\202\t\181\000\000\002\001\000\000\000\134\t\181\000\000\002\001\t\181\000\000\000\000\000\000\000\000\001\210\000\000\000\000\002\001\002\001\000\000\0022\002:\000\000\000\000\t\181\002\001\000\000\017r\t\181\001\242\000\000\000\000\001\218\000\000\001\234\002\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\000\142\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\001\250\000^\002\001\000b\000\000\000f\000j\000n\000\000\000\000\000\000\000\000\002\001\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000v\000\000\000\000\000\000\000\000\002\001\002\002\000\000\000\000\002\001\002\001\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\130\000\000\000}\000\000\002\001\000\158\000\000\002\001\002\001\002\001\002\001\000\000\000\000\000\134\000\000\001\202\002\001\002\001\000}\002B\002\n\002\001\000\000\000}\000\000\000\000\000\000\000\000\000\000\001\210\000\000\000\000\000}\000}\000\000\000}\000}\000\000\000\000\000\000\000}\000\000\000e\000\000\001\242\000e\000\000\001\218\000\000\001\234\000}\000\162\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000\000\000\000\000\000\000\000\000e\000\000\000\166\001\250\000\000\000}\001\210\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000}\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\001\218\002)\001\234\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\002\002\000\000\000\000\000}\000}\000\000\000\000\001\226\000\000\000e\000\000\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000e\000}\000}\000}\000}\000\000\000\000\000\000\000\000\000\000\000}\000}\000\000\000}\002\n\000}\000\000\000\000\000\000\000\000\000\000\000e\000e\000\000\000\000\000e\000e\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000\000\000e\000\000\000\000\000e\000e\000e\000e\000\000\000\000\000\000\000\000\000]\000e\000e\000]\000e\000e\000e\000\000\000]\000\000\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000\000\000]\000\000\000a\000\000\000]\000a\000\000\001\218\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000\000\000\000\000\000\000\000\000a\000\000\000\000\000]\000\000\000]\000a\000\000\000\000\000a\000a\000\000\000a\000a\000\000\000]\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\001\218\000\000\000a\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000]\000\000\000\000\000]\000]\000\000\000\000\001\226\000\000\000a\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000\000\000a\000]\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000]\000]\000\000\000]\000]\000]\000\000\000\000\000\000\000\000\000\000\000a\000a\000\000\000\000\000a\000a\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000\000\000a\000\000\000\000\000a\000a\000a\000a\000\000\000\000\000\000\000\000\001\202\000a\000a\000q\000a\000a\000a\000\000\000q\000\000\000\000\000\000\000\000\000\000\001\210\000\000\000\000\000q\000q\000\000\000q\000q\000\000\000\000\000\000\000q\000\000\000i\000\000\000q\000i\000\000\001\218\000\000\001\234\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\202\000\000\000\000\000i\000\000\000\000\000\000\000\000\000i\000\000\000\000\001\250\000\000\000q\001\210\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000q\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\001\218\000\000\001\234\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000q\000\000\000\000\000q\000q\000\000\000\000\001\226\000\000\000i\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000i\000q\000q\000q\000q\000\000\000\000\000\000\000\000\000\000\000q\000q\000\000\000q\000q\000q\000\000\000\000\000\000\000\000\000\000\000i\000i\000\000\000\000\000i\000i\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000\000\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000\000\000\000\001\202\000i\000i\000m\000i\000i\000i\000\000\000m\000\000\000\000\000\000\000\000\000\000\001\210\000\000\000\000\000m\000m\000\000\000m\000m\000\000\000\000\000\000\000m\000\000\000u\000\000\000m\000u\000\000\001\218\000\000\001\234\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\202\000\000\000\000\000u\000\000\000\000\000\000\000\000\000u\000\000\000\000\001\250\000\000\000m\001\210\000\000\000\000\000u\000u\000\000\000u\000u\000\000\000m\000\000\000u\000\000\000\000\000\000\001\242\000\000\000\000\001\218\000\000\001\234\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000m\000\000\000\000\000m\000m\000\000\000\000\001\226\000\000\001\250\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000u\000m\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000m\000m\000\000\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000u\002\002\000\000\000\000\000u\000u\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\001\190\000\000\000\000\000\133\000\000\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000\000\000\000\001\202\000u\000u\000\133\000u\000u\000u\000\000\000\133\000\000\000\000\000\000\000\000\000\000\001\210\000\000\000\000\000\133\000\133\000\000\000\133\002:\000\000\000\000\000\000\000\133\000\000\001\190\000\000\001\242\000y\000\000\001\218\000\000\001\234\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\202\000\000\000\000\000y\000\000\000\000\000\000\000\000\000y\000\000\000\000\001\250\000\000\000\133\001\210\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\133\000\000\000y\000\000\000\000\000\000\001\242\000\000\000\000\001\218\000\000\001\234\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\002\002\000\000\000\000\000\133\000\133\000\000\000\000\001\226\000\000\001\250\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\000\000\000y\000\133\000\133\000\133\000\133\000\000\000\000\000\000\000\000\000\000\000\133\000\133\000\000\002B\002\n\000\133\000\000\000\000\000\000\000\000\000\000\000y\002\002\000\000\000\000\000y\000y\000\000\000\000\001\226\000\000\000\000\000\000\000\000\000\000\000\000\001\190\000\000\000\000\000\129\000\000\000y\000\000\000\000\000y\000y\000y\000y\000\000\000\000\000\000\000\000\001\202\000y\000y\000\129\000y\002\n\000y\000\000\000\129\000\000\000\000\000\000\000\000\000\000\001\210\000\000\000\000\000\129\000\129\000\000\000\129\002:\000\000\000\000\000\000\000\129\000\000\000\000\000\000\001\242\000\000\000\000\001\218\000\000\001\234\000\129\000\000\000\000\000\000\000\000\000\000\t\165\t\165\t\165\t\165\000\000\t\165\000\000\t\165\t\165\000\000\t\165\000\000\t\165\001\250\t\165\000\129\t\165\t\165\t\165\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\t\165\t\165\t\165\000\000\000\000\000\000\000\000\t\165\000\000\000\000\000\000\t\165\000\000\000\000\000\000\000\000\000\000\000\000\000\129\002\002\000\000\000\000\000\129\000\129\000\000\t\165\001\226\000\000\000\000\000\000\000\000\000\000\t\165\000\000\000\000\000\000\t\165\000\000\000\129\000\000\000\000\000\129\000\129\000\129\000\129\t\165\000\000\000\000\000\000\000\000\000\129\000\129\000\000\000\129\002\n\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\165\000\000\000\000\t\165\000\000\000\000\000\000\000\000\000\000\t\169\t\169\t\169\t\169\000\000\t\169\000\000\t\169\t\169\t\165\t\169\t\165\t\169\t\165\t\169\t\165\t\169\t\169\t\169\000\000\t\165\000\000\000\000\t\165\000\000\000\000\000\000\000\000\t\169\t\169\t\169\000\000\000\000\000\000\000\000\t\169\000\000\000\000\t\165\t\169\000\000\016\250\t\165\017v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\169\000\000\000\000\000\000\0055\000\000\000\000\t\169\000\000\000\000\000\000\t\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\169\004i\000\000\0055\004i\000\000\004i\000\000\004i\000\000\004i\000\000\0055\0055\004i\004i\000\000\000\000\000\000\t\169\000\000\000\000\t\169\000\000\000\000\004i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004i\004i\0055\t\169\000\000\t\169\004i\t\169\002b\t\169\000\157\0055\0055\000\000\t\169\000\000\000\000\t\169\000\000\000\000\000\000\000\000\004i\000\000\004i\000\138\000\157\000\000\000\000\000\000\004i\000\000\t\169\004i\004i\000\000\t\169\000\000\000\000\000\000\n\166\004i\0055\000\000\004i\004i\000\157\000\157\000\000\000\000\0055\000\000\000\000\000\000\004i\000\157\000\000\000\000\n\174\000\000\n\190\000\000\000\000\0055\004i\000\000\000\000\000\000\004Q\000\000\000\000\004Q\004i\004Q\000\000\004Q\004i\004Q\000\000\000\000\000\157\004Q\004Q\0055\000\000\004i\0055\0055\000\000\000\000\0055\000\000\004Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0055\004Q\004Q\000\000\000\000\004i\000\000\004Q\004i\004i\000\000\000\000\004i\000\000\000\157\000\000\000\000\004i\004i\000\000\000\000\n\182\004i\004Q\000\000\004Q\005\210\000\000\000\000\000\000\000\000\004Q\000\000\000\157\004Q\004Q\000\000\000\000\000\000\000\000\000\000\000\000\004Q\000\000\000\000\004Q\004Q\000\000\000\157\000\157\000\000\000\000\000\000\000\000\000\000\004Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004Q\000\000\000\000\000\000\004Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004Q\0002\0006\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\000\000\000^\000\000\000b\000\000\000f\000j\000n\004Q\000\000\000\000\004Q\004Q\000\000\000\000\004Q\000\000\017~\000r\017\154\004Q\004Q\000\000\000\000\017\166\004Q\000\000\000\000\000v\000\000\0055\000\000\000\000\0055\000\000\0055\000\000\0055\000\000\0055\000\000\000\000\017\190\0055\0055\000\000\000\000\000\000\000\000\000\130\000\000\000\000\000\000\017\234\0055\000\000\0055\000\000\000\000\0055\000\000\000\000\000\134\0055\0055\0055\000\000\000\000\000\000\0055\0055\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\n\000\000\000\000\018Z\0055\000\000\0055\000\000\000\000\000\000\000\000\000\000\002b\000\000\007M\0055\0055\000\000\018r\000\000\007\209\000\000\018~\0055\018\138\000\000\0055\0055\000\000\018\154\0055\000\000\019J\000\000\000\000\000\000\0055\000\000\000\146\000\000\000\000\007M\000\000\000\000\000\000\000\000\0055\019V\000\000\007M\000\000\019n\007M\007M\0055\000\000\000\000\000\000\0055\000\000\000\000\000\000\007M\000\000\000\000\000\000\000\000\0055\000\000\000\000\000\000\000\000\000\000\001\161\000\000\000\000\001\161\000\000\000\000\000\000\007M\000\000\000\000\000\000\0055\000\000\000\000\0055\000\000\001\161\0055\0055\001\161\007M\0055\000\000\000\000\001\161\000\000\0055\0055\000\000\000\000\001\161\0055\000\000\001\161\001\161\000\000\001\161\001\161\000\000\000\000\007M\001\161\000\000\007M\007M\001\161\000\000\000\000\001\161\000\000\001\161\001\161\007M\007M\000\000\000\000\000\000\007M\000\000\0002\tN\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\001\161\000^\001\161\000b\000\000\000f\000j\000n\000\000\000\000\000\000\000\000\001\161\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000v\000\000\000\000\000\000\000\000\001\161\001\161\0076\000\000\001\161\n^\000\000\000\000\001\161\000\000\003I\000\000\003I\000\000\000\000\003I\000\130\000\000\000\000\000\000\000\000\000\000\000\000\001\161\000\000\001\161\000\000\000\000\000\000\000\134\003I\007>\001\161\001\161\000\000\001\161\001\161\001\161\000\000\003I\003I\000\000\003I\003I\000\000\000\000\000\000\000\000\003I\000\000\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003I\003I\000\000\003I\003I\003I\000\000\003I\003I\000\162\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\153\000\000\000\000\011\153\000\000\003I\003I\000\000\000\000\003I\000\000\000\000\003I\000\000\000\000\000\000\011\153\000\000\000\000\011\153\003I\000\000\000\000\003Z\000\000\000\000\000\000\000\000\000\000\003I\011\153\003I\000\000\000\000\011\153\000\000\011\153\011\153\000\000\000\000\003b\003I\003n\000\000\000\000\011\153\003I\000\000\011\153\000\000\011\153\000\000\003I\000\000\000\000\003I\000\000\000\000\000\000\000\000\000\000\003I\000\000\000\000\000\000\004\018\000\000\000\000\004b\000\000\011\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\026\011\153\000\000\002\t\000\000\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\"\000\000\000\000\000\000\002\t\000\000\004r\004z\000\000\011\153\011\153\000\000\011\153\000\000\003~\004B\011\153\000\226\004*\tz\004:\000\000\t~\000\000\003\134\000\000\000\000\000\000\011\153\000\000\000\000\000\000\000\000\011\153\011\153\000\000\000\000\000\238\000\000\011\153\004J\000\000\000\000\011\153\011\153\011\153\t\130\n*\000\000\n>\nV\000\000\002\t\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\162\001.\000\000\t\166\008>\001:\000\000\t\170\t\174\004R\t\178\000\000\002\t\000\000\000\000\000\000\0042\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\t\182\000\000\002\t\t\186\000\000\000\000\000\162\002\t\002\t\000\000\000\000\000\000\000\000\000\000\t\194\000\000\000\000\004\130\004Z\002\t\000\000\000\000\000\000\nZ\000\226\nr\tz\000\000\000\000\t~\002\154\000F\000J\000\000\000N\t\198\000R\000V\000\000\000Z\t\202\000^\000\000\000b\000\238\000f\011R\000n\000\000\t\206\000\000\000\000\000\000\t\130\n*\001j\n>\nV\000r\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000v\000\000\000\000\000\000\t\162\001.\000\000\t\166\008>\001:\000\000\t\170\t\174\000\000\t\178\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\t\182\000\000\000\000\t\186\000\134\000\000\000\162\000\149\000\000\000\000\000\000\000\000\000\000\000\000\t\194\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\nZ\000\226\nr\tz\000\149\000\149\t~\000\000\000\000\000\000\000\000\000\000\t\198\000\149\000\000\000\000\n\174\t\202\000\149\000\162\000\000\000\238\000\000\n\254\000\000\000\000\t\206\000\000\000\000\000\000\t\130\n*\001j\n>\nV\000\000\000\000\000\000\000\149\001\"\000\000\001&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\162\001.\000\000\t\166\008>\001:\000\000\t\170\t\174\000\000\t\178\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000\000\000\149\000\000\006\182\t\182\000\000\000\000\t\186\n\182\000\000\000\162\000\153\000\000\000\000\000\000\000\000\000\000\000\000\t\194\000\000\000\149\000\000\000\000\000\000\000\000\000\153\000\000\nZ\000\226\nr\tz\000\153\000\153\t~\000\000\000\149\000\149\000\000\000\000\t\198\000\153\000\000\000\000\n\174\t\202\000\153\000\000\000\000\000\238\000\000\004\201\000\000\000\000\t\206\000\000\000\000\000\000\t\130\n*\001j\n>\nV\000\000\000\000\000\000\000\153\001\"\000\000\001&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\162\001.\000\000\t\166\008>\001:\000\000\t\170\t\174\000\000\t\178\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\001\137\000\000\000\000\000\153\000\000\006\182\t\182\000\000\000\000\t\186\n\182\000\000\000\162\001\137\000\000\000\000\000\000\000\000\000\000\000\000\t\194\001\137\000\153\000\000\000\000\000\000\000\000\001\137\000\000\nZ\000\000\nr\000\000\001\137\001\137\000\000\000\000\000\153\000\153\000\000\007j\t\198\001\137\007\186\000\000\001\137\t\202\001\137\001\137\000\000\000\000\000\000\001\189\000\000\000\000\t\206\007r\000\000\000\000\002\017\000\000\001j\000\000\000\000\002\017\000\000\000\000\001\137\000\000\001\137\007z\000\000\000\000\002\017\002\017\000\000\007\202\007\210\000\000\000\000\000\000\002\017\000\000\000\000\000\000\007\154\000\000\000\000\007\130\000\000\007\146\002\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\001\137\001\150\000\000\001\137\001\137\000\000\000\000\001\137\000\000\007\162\000\000\002\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\002\017\001\137\001\137\000\000\001\137\000\000\000\000\000\000\000\000\002V\001\137\001\137\000\000\001\137\001\137\001\137\000\000\000\000\000\000\000\000\000\000\002\017\007\170\000\000\000\000\002\017\000\000\000\000\000\000\007\138\000\000\001%\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\017\000\000\002\017\007r\000\000\000\000\001%\000\000\000\000\002\017\002\017\001%\007\218\007\178\002\017\000\000\000\000\007z\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\000\000\001%\000\000\001\013\000\000\007\154\001\013\000\000\007\130\000\000\007\146\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\013\000\000\000\000\001\013\000\000\000\000\000\000\000\000\001\013\000\000\000\000\007\162\000\000\001%\007z\000\000\000\000\001\013\001\013\000\000\001\013\001\013\000\000\001%\000\000\001\013\000\000\000\000\000\000\001\013\000\000\000\000\007\130\000\000\007\146\001\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\007\170\000\000\000\000\001%\000\000\000\000\000\000\007\138\000\000\001\013\000\000\001\013\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\013\001%\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\001%\001%\000\000\001%\007\178\001%\000\000\000\000\000\000\000\000\000\000\001\013\001\013\000\000\000\000\001\013\000\000\000\000\000\000\007\138\000\000\001\005\000\000\000\000\001\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\013\000\000\001\013\001\005\000\000\000\000\001\005\000\000\000\000\001\013\001\013\001\005\001\013\001\013\001\013\000\000\000\000\001\005\000\000\000\000\001\005\001\005\000\000\001\005\001\005\000\000\000\000\000\000\001\005\000\000\001\t\000\000\001\005\001\t\000\000\007\130\000\000\001\005\001\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\t\000\000\000\000\001\t\000\000\000\000\000\000\000\000\001\t\000\000\000\000\001\005\000\000\001\005\001\t\000\000\000\000\001\t\001\t\000\000\001\t\001\t\000\000\001\005\000\000\001\t\000\000\000\000\000\000\001\t\000\000\000\000\007\130\000\000\001\t\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\005\001\005\000\000\000\000\001\005\000\000\000\000\000\000\007\138\000\000\001\t\000\000\001\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\t\001\005\000\000\001\005\000\000\000\000\000\000\000\000\000\000\000\000\001\005\001\005\000\000\001\005\001\005\001\005\000\000\000\000\000\000\000\000\000\000\001\t\001\t\000\000\000\000\001\t\000\000\000\000\000\000\007\138\000\000\001\025\000\000\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\t\000\000\001\t\007r\000\000\000\000\001\025\000\000\000\000\001\t\001\t\001\025\001\t\001\t\001\t\000\000\000\000\007z\000\000\000\000\001\025\001\025\000\000\001\025\001\025\000\000\000\000\000\000\001\025\000\000\001\017\000\000\001\025\001\017\000\000\007\130\000\000\007\146\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007r\000\000\000\000\001\017\000\000\000\000\000\000\000\000\001\017\000\000\000\000\007\162\000\000\001\025\007z\000\000\000\000\001\017\001\017\000\000\001\017\001\017\000\000\001\025\000\000\001\017\000\000\000\000\000\000\001\017\000\000\000\000\007\130\000\000\007\146\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\000\000\001\025\000\000\000\000\000\000\007\138\000\000\001\017\000\000\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\025\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\000\000\001\017\000\000\000\000\000\000\007\138\000\000\001\021\000\000\000\000\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\001\017\007r\000\000\000\000\001\021\000\000\000\000\001\017\001\017\001\021\001\017\001\017\001\017\000\000\000\000\007z\000\000\000\000\001\021\001\021\000\000\001\021\001\021\000\000\000\000\000\000\001\021\000\000\001\029\000\000\001\021\001\029\000\000\007\130\000\000\007\146\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007r\000\000\000\000\001\029\000\000\000\000\000\000\000\000\001\029\000\000\000\000\007\162\000\000\001\021\007z\000\000\000\000\001\029\001\029\000\000\001\029\001\029\000\000\001\021\000\000\001\029\000\000\000\000\000\000\007\154\000\000\000\000\007\130\000\000\007\146\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\000\000\000\000\001\021\000\000\000\000\000\000\007\138\000\000\007\162\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\001\021\000\000\001\021\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\000\000\001\021\001\021\001\021\000\000\000\000\000\000\000\000\000\000\001\029\007\170\000\000\000\000\001\029\000\000\000\000\000\000\007\138\000\000\007j\000\000\000\000\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\000\000\001\029\007r\000\000\000\000\001-\000\000\000\000\001\029\001\029\001-\001\029\001\029\001\029\000\000\000\000\007z\000\000\000\000\001-\001-\000\000\001-\007\210\000\000\000\000\000\000\001-\000\000\007j\000\000\007\154\001!\000\000\007\130\000\000\007\146\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007r\000\000\000\000\001!\000\000\000\000\000\000\000\000\001!\000\000\000\000\007\162\000\000\001-\007z\000\000\000\000\001!\001!\000\000\001!\001!\000\000\001-\000\000\001!\000\000\000\000\000\000\007\154\000\000\000\000\007\130\000\000\007\146\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\007\170\000\000\000\000\001-\000\000\000\000\000\000\007\138\000\000\007\162\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\001-\000\000\001-\000\000\000\000\000\000\000\000\000\000\000\000\001-\001-\000\000\007\218\007\178\001-\000\000\000\000\000\000\000\000\000\000\001!\007\170\000\000\000\000\001!\000\000\000\000\000\000\007\138\000\000\007j\000\000\000\000\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\001!\007r\000\000\000\000\001)\000\000\000\000\001!\001!\001)\001!\007\178\001!\000\000\000\000\007z\000\000\000\000\001)\001)\000\000\001)\007\210\000\000\000\000\000\000\001)\000\000\000\000\000\000\007\154\000\000\000\000\007\130\000\000\007\146\001)\000\000\000\000\000\000\000\000\000\000\000\226\000\000\tz\000\000\000\000\t~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\162\000\000\001)\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\001)\000\000\000\000\000\000\t\130\n*\000\000\n>\nV\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\000\000\001)\007\170\t\162\001.\001)\t\166\008>\001:\007\138\t\170\t\174\000\000\t\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\001)\000\000\006\182\t\182\000\000\000\000\t\186\001)\001)\000\162\001)\007\178\001)\000\000\000\000\000\000\000\226\t\194\000\230\000\000\000\000\000\234\000\000\000\000\000\000\000\000\000\000\000\000\nr\000\000\007\246\000\000\000\000\000\000\000\000\000\000\000\238\000\000\t\198\000\242\000\000\000\000\000\000\t\202\000\000\000\254\001\002\001\n\000\000\001\201\000\000\000\000\t\206\000\000\001\"\000\000\001&\000\000\001j\000\000\000\000\000\000\000\000\000\000\001*\001.\000\000\0012\0016\001:\000\000\001>\001B\000\000\001F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001J\000\000\000\000\001N\000\000\000\000\000\162\000\000\000\226\000\000\000\230\000\000\000\000\000\234\001V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\225\001Z\007\225\000\000\000\000\000\000\000\238\000\000\000\000\000\242\000\000\000\000\000\000\001^\000\000\000\254\001\002\001\n\001b\tv\000\000\007\225\000\000\007\225\001\"\000\000\001&\001f\000\000\000\000\000\000\000\000\000\000\001j\001*\001.\000\000\0012\0016\001:\000\000\001>\001B\000\000\001F\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\230\000\000\000\000\000\234\000\000\000\000\000\000\000\000\001J\000\000\000\000\001N\014R\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\242\001V\000\000\000\000\000\000\000\000\000\254\001\002\001\n\000\000\001Z\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\001^\000\000\000\000\001*\001.\001b\0012\0016\001:\000\000\001>\001B\000\000\001F\001f\000\000\000\000\000\000\000\000\000\226\001j\000\230\000\000\000\000\000\234\000\000\000\000\000\000\000\000\001J\000\000\000\000\001N\000\000\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\242\001V\000\000\000\000\000\000\000\000\000\254\004\210\001\n\000\000\001Z\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\001^\000\000\000\000\001*\001.\001b\0012\0016\001:\000\169\001>\001B\000\000\001F\001f\000\000\000\000\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\n\158\000\000\000\000\000\000\001J\000\000\000\000\001N\000\000\000\000\000\162\000\000\000\246\000\000\n\166\000\000\000\000\007\233\001V\007\233\000\169\000\169\007\233\000\000\000\000\000\000\000\000\001Z\000\000\000\169\000\000\000\000\n\174\000\000\n\190\000\000\000\000\007\233\000\000\001^\007\233\000\000\000\000\000\000\001b\000\000\007\233\007\233\007\233\000\000\000\000\000\000\000\000\001f\n\206\007\233\000\000\007\233\000\000\001j\000\000\000\000\000\000\000\000\000\000\007\233\007\233\000\000\007\233\007\233\007\233\000\000\007\233\007\233\000\000\007\233\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\230\000\000\000\000\000\234\000\000\000\169\000\000\000\000\007\233\000\000\000\000\007\233\n\182\000\000\007\233\000\000\000\000\000\000\000\238\000\000\000\000\000\242\007\233\000\000\000\169\000\000\000\000\000\254\001R\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\169\000\169\000\000\000\000\007\233\000\000\000\000\001*\001.\007\233\0012\0016\001:\000\161\001>\001B\000\000\001F\007\233\000\000\000\000\000\000\000\000\000\000\007\233\000\000\000\000\000\000\000\000\n\158\000\000\000\000\000\000\001J\000\000\000\000\001N\000\000\000\000\000\162\000\000\003\222\000\000\n\166\000\000\000\000\003A\001V\003A\000\161\000\161\003A\000\000\000\000\000\000\000\000\001Z\000\000\000\161\000\000\000\000\n\174\000\000\n\190\000\000\000\000\003A\000\000\001^\003A\000\000\000\000\000\000\001b\000\000\003A\003A\003A\000\000\000\000\000\000\000\000\001f\000\161\003A\000\000\003A\000\000\001j\000\000\000\000\000\000\000\000\000\000\003A\003A\000\000\003A\003A\003A\000\000\003A\003A\000\000\003A\000\000\000\000\000\000\000\000\000\000\000\226\000\000\001\022\000\000\000\000\001\026\000\000\000\161\000\000\000\000\003A\000\000\000\000\003A\n\182\000\000\003A\000\000\000\000\000\000\000\238\000\000\000\000\000\242\003A\000\000\000\161\000\000\000\000\001\030\003\162\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\161\000\161\000\000\000\000\003A\000\000\000\000\003\026\001.\003A\003\030\0016\001:\000\000\003\"\003&\000\000\003*\003A\000\000\000\000\000\000\000\000\000\226\003A\001\022\000\000\000\000\001\026\000\000\000\000\000\000\000\000\003.\000\000\000\000\0032\000\000\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\242\003:\000\000\000\000\000\000\000\000\001\030\003\006\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\003>\000\000\000\000\003\026\001.\003B\003\030\0016\001:\000\000\003\"\003&\000\000\003*\003F\000\000\000\000\000\000\000\000\000\226\001j\001\022\000\000\000\000\001\026\000\000\000\000\000\000\000\000\003.\000\000\000\000\0032\000\000\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\242\003:\000\000\000\000\000\000\000\000\001\030\0036\001\n\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\003>\000\000\000\000\003\026\001.\003B\003\030\0016\001:\000\000\003\"\003&\000\000\003*\003F\000\000\000\000\000\000\000\000\000\226\001j\006\130\000\000\000\000\006\134\000\000\000\000\000\000\000\000\003.\000\000\000\000\0032\000\000\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\000\003:\000\000\000\000\000\000\000\000\006\138\007\226\000\165\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\000\000\000\000\000\000\000\003>\000\000\n\158\006\162\001.\003B\006\166\0016\001:\000\000\006\170\006\174\000\000\006\178\003F\000\000\n\166\000\000\000\000\000\226\001j\006\130\000\165\000\165\006\134\000\000\000\000\000\000\006\182\006\186\000\000\000\165\006\190\000\000\n\174\000\162\n\190\000\000\000\000\000\238\000\000\000\000\000\000\006\198\000\000\000\000\000\000\000\000\006\138\006\142\000\173\000\000\000\000\000\000\000\000\000\000\n\206\001\"\000\000\001&\000\000\000\000\000\000\000\000\006\202\000\000\n\158\006\162\001.\006\206\006\166\0016\001:\000\000\006\170\006\174\000\000\006\178\006\210\000\000\n\166\000\000\000\000\000\226\001j\006\130\000\173\000\173\006\134\000\000\000\165\000\000\006\182\006\186\000\000\n\198\006\190\n\182\n\174\000\162\n\190\000\000\000\000\000\238\000\000\000\000\000\000\006\198\000\000\000\165\000\000\000\000\006\138\006\194\n\150\000\000\000\000\000\000\000\000\000\000\n\206\001\"\000\000\001&\000\165\000\165\000\000\000\000\006\202\000\000\n\158\006\162\001.\006\206\006\166\0016\001:\000\000\006\170\006\174\000\000\006\178\006\210\000\000\n\166\000\000\000\000\000\226\001j\tz\000\189\n\238\t~\000\000\n\214\000\000\006\182\006\186\000\000\n\198\006\190\n\182\n\174\000\162\n\190\000\000\000\000\000\238\000\000\000\000\000\000\006\198\000\000\000\173\000\000\000\000\t\130\t\142\n\150\000\000\000\000\000\000\000\000\000\000\n\206\001\"\000\000\001&\000\173\000\173\000\000\000\000\006\202\000\000\n\158\t\162\001.\006\206\t\166\0016\001:\000\000\t\170\t\174\000\000\t\178\006\210\000\000\n\166\000\000\000\000\000\226\001j\tz\000\177\000\177\t~\000\000\n\214\000\000\006\182\t\182\000\000\n\198\t\186\n\182\n\174\000\162\n\190\000\000\000\000\000\238\000\000\000\000\000\000\t\194\000\000\000\189\000\000\000\000\t\130\t\190\000\000\000\000\000\000\000\000\000\000\000\000\n\206\001\"\000\000\001&\n\246\n\222\000\000\000\000\t\198\000\000\000\000\t\162\001.\t\202\t\166\0016\001:\000\000\t\170\t\174\000\000\t\178\t\206\000\000\000\000\000\000\000\000\000\226\001j\tz\000\000\000\000\t~\000\000\n\214\000\000\006\182\t\182\000\000\000\000\t\186\n\182\000\000\000\162\000\000\000\000\000\000\000\238\000\000\000\000\000\000\t\194\000\000\000\177\000\000\000\000\t\130\n*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\001&\000\177\n\222\000\000\000\000\t\198\000\000\000\000\t\162\001.\t\202\t\166\0016\001:\000\000\t\170\t\174\000\000\t\178\t\206\000\000\000\000\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\182\t\182\000\000\000\000\t\186\000\000\000\000\000\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\194\0002\006\022\000F\000J\006.\000N\006F\000R\000V\006J\000Z\000\000\000^\000\000\000b\006N\000f\000j\000n\006R\t\198\000\000\000\000\000\000\000\000\t\202\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\t\206\000\000\000\000\000\000\000\000\000v\001j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\130\000\000\0002\tN\000F\000J\000\000\000N\006F\000R\000V\006J\000Z\000\134\000^\020r\000b\006N\000f\000j\000n\006R\020z\001\153\000\000\000\000\001\153\000\000\008B\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000v\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\162\000\000\001\153\n\150\000\000\000\000\001\153\000\000\001\153\001\153\000\000\000\130\000\000\000\000\000\000\000\000\000\000\001\153\000\000\n\158\001\153\000\000\001\153\000\000\000\134\000\000\000\000\t>\000\000\000\000\000\000\000\000\000\000\n\166\000\000\000\000\007M\000\000\000\000\000\185\n\238\000\000\001\153\000\000\000\000\000\000\000\000\000\000\n\198\000\000\000\000\n\174\000\000\n\190\001\153\007M\000\000\000\000\000\000\000\000\000\000\000\000\000\162\000\000\007M\007M\003\161\000\000\000\000\000\000\007M\000\000\000\000\n\206\000\000\000\000\001\153\003\186\000\000\001\153\000\000\000\000\000\000\001\153\000\000\000\000\000\000\000\000\007M\000\000\000\000\000\000\000\000\000\000\000:\001\153\000\000\007M\007M\000\000\001\153\001\153\000\000\000\000\000\000\007M\003\194\n\214\007M\007M\001\153\001\153\001\153\000\000\n\182\000\000\000\000\000\000\007M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\007M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007M\000\000\000\000\000\000\000\000\000\185\n\222\000\000\000\000\0002\0006\000F\000J\007M\000N\000\000\000R\000V\000\000\000Z\017\n\000^\000\000\000b\000\000\000f\000j\000n\000\000\000\000\000\000\000\000\000\000\007M\000\000\000\000\007M\007M\000r\017\014\007M\000\000\000\000\000\000\000\000\007M\007M\000\000\019r\000\237\007M\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\026\000\000\000\000\000\237\000\130\000\000\000\000\000\000\017\234\000\000\000\000\000\000\000\000\000:\004\"\000\000\000\000\000\134\000\237\000\000\000\237\000\237\000\213\000\000\000\000\000\213\000\000\000\000\000\000\004B\000\000\000\000\004*\000\000\004:\000\000\000\000\000\000\000\213\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\"\000\000\004J\000\162\000\213\000\000\000\213\000\213\000\205\000\000\000\000\000\205\000\000\000\000\000\237\000\213\017\030\000\000\004*\000\000\004:\000\000\000\000\000\000\000\205\000\000\000\000\000\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004R\000\000\000\205\000\237\000\213\000\000\000\205\0042\000\205\000\205\000\209\000\000\000\000\000\209\000\000\000\000\000\213\000\205\000\000\000\237\004*\000\000\000\205\000\000\000\237\000\237\000\209\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\237\004Z\000\237\000\000\000\213\000\000\000\209\000\213\000\205\000\000\000\209\0042\000\209\000\209\000\225\000\000\000\000\000\225\000\000\000\000\000\205\000\209\000\000\000\213\004*\000\000\000\209\000\000\000\213\000\213\004\026\000\000\000\000\000\225\000\000\000\000\000\000\000\000\000\213\000\213\000\213\000\000\000\205\000\000\004\"\000\205\000\209\000\000\000\225\0042\000\225\000\225\000\217\000\000\000\000\000\217\000\000\000\000\000\209\000\225\000\000\000\205\004*\000\000\004:\000\000\000\205\000\205\004\026\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\205\000\205\000\205\000\000\000\209\000\000\004\"\000\209\004J\000\000\000\217\0042\000\217\000\217\000\221\000\000\000\000\000\221\000\000\000\000\000\225\000\217\000\000\000\209\004*\000\000\004:\000\000\000\209\000\209\004\026\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\209\000\209\000\209\000\000\000\225\000\000\004\"\000\225\000\217\000\000\000\221\0042\000\221\000\221\000\229\000\000\000\000\000\229\000\000\000\000\000\217\000\221\000\000\000\225\004*\000\000\004:\000\000\000\225\000\225\004\026\000\000\000\000\000\229\000\000\000\000\000\000\000\000\000\225\000\225\000\225\000\000\000\217\000\000\004\"\000\217\004J\000\000\000\229\0042\000\229\000\229\004\018\000\000\000\000\000\245\000\000\000\000\000\221\004B\000\000\000\217\004*\000\000\004:\000\000\000\217\000\217\004\026\000\000\000\000\000\245\000\000\000\000\000\000\000\000\000\217\000\217\000\217\000\000\000\221\000\000\004\"\000\221\004J\000\000\000\245\0042\000\245\004z\004\018\000\000\000\000\000\233\000\000\000\000\000\229\004B\000\000\000\221\004*\000\000\004:\000\000\000\221\000\221\004\026\000\000\000\000\000\233\000\000\000\000\000\000\000\000\000\221\000\221\000\221\000\000\004R\000\000\004\"\000\229\004J\000\000\000\233\0042\000\233\000\233\004\018\000\000\000\000\000\241\000\000\000\000\000\245\004B\000\000\000\229\004*\000\000\004:\000\000\000\229\000\229\004\026\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\229\000\229\000\229\000\000\004R\000\000\004\"\000\245\004J\000\000\000\241\0042\000\241\004z\000\000\000\000\000\000\000\000\000\000\000\000\000\233\004B\000\000\000\245\004*\000\000\004:\000\000\000\245\000\245\000\000\000\000\000\000\000\000\003\153\000\000\000\000\003\153\004\130\004Z\000\245\003\153\004R\003\153\000\000\000\233\004J\003\153\003\153\0042\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\233\000\000\000\000\000\000\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\002-\000\000\000\000\000\233\004Z\000\233\000\000\004R\000\000\000\000\000\241\000\000\000\000\000\000\0042\000\000\003\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\241\002-\000\000\000\000\000\000\000\241\000\241\000\000\000\000\002-\000\000\000\000\002-\002-\000\000\000\241\004Z\000\241\000\000\020v\000F\000J\002-\000N\006F\000R\000V\006J\000Z\000\000\000^\020r\000b\006N\000f\000\000\000n\006R\020z\000\000\002-\000\000\000\000\000\000\003\153\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\002-\000\000\000\000\000\000\000v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002-\000\000\000\000\002-\002-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002-\002-\000\000\000\000\000\000\002-\000\134\0002\005\030\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\000\000\000^\000\000\000b\000\000\000f\000j\000n\000\000\0002\005\030\000F\000J\000\000\000N\000\000\000R\000V\000r\000Z\000\000\000^\000\000\000b\000\000\000f\000j\000n\000v\000\000\003\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000v\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\000\000\005\"\005&\000\000\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\000\000\005\"\005&\000\000\0002\000\142\000F\000J\011}\000N\000\000\000R\000V\000\000\000Z\000\000\000^\000\000\000b\000\000\000f\000j\000n\000\000\011}\000\000\000\000\000\000\000\000\000\000\000\000\t\226\005*\000r\000\000\000\000\000\000\000\000\011}\000\000\000\000\000\000\000\000\000v\011}\011}\000\000\000\000\t\234\000\000\t\246\000\000\0052\011}\000\000\000\000\011}\000\000\011}\000\000\000\000\000\000\000\000\000\000\000\130\000\000\000\000\000\000\000\000\000\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\011}\000\000\000\000\000\000\000\000\000\000\0002\005\030\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\n\002\000^\000\000\000b\000\000\000f\000j\000n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011}\000r\000\000\000\162\000\000\n\006\000\000\011}\000\000\000\000\000\000\000v\000\000\000\000\000\000\n\014\000\000\000\000\000\000\011}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\130\000\000\011}\011}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002!\000\000\000\134\000\000\000\000\000\000\021\002\005&\0002\005\030\000F\000J\000\000\000N\000\000\000R\000V\000\000\000Z\000\000\000^\000\000\000b\000\000\000f\000j\000n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\000\000\021\002\005&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\014"))
1310
1311 let lhs =
1312 (16, "\000\012\000\011\000\n\000\t\000\008\000\007\000\006\000\005\000\004\000\003\000\002\000\001\000\000\001\004\001\004\001\004\001\003\001\003\001\003\001\003\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\001\000\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\254\000\254\000\254\000\254\000\253\000\252\000\252\000\252\000\251\000\251\000\251\000\250\000\250\000\250\000\249\000\249\000\249\000\248\000\247\000\246\000\245\000\245\000\244\000\244\000\243\000\243\000\242\000\242\000\241\000\241\000\240\000\239\000\239\000\238\000\238\000\237\000\237\000\237\000\236\000\236\000\235\000\234\000\233\000\232\000\231\000\230\000\229\000\228\000\227\000\226\000\225\000\224\000\223\000\223\000\222\000\222\000\221\000\221\000\220\000\220\000\219\000\219\000\219\000\218\000\218\000\218\000\218\000\218\000\217\000\217\000\216\000\215\000\215\000\215\000\215\000\214\000\214\000\213\000\212\000\211\000\211\000\211\000\210\000\210\000\210\000\209\000\209\000\209\000\209\000\208\000\208\000\208\000\208\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\207\000\206\000\205\000\205\000\204\000\204\000\204\000\203\000\203\000\202\000\202\000\202\000\201\000\201\000\200\000\199\000\198\000\198\000\197\000\197\000\196\000\196\000\195\000\195\000\194\000\194\000\193\000\192\000\191\000\191\000\190\000\190\000\189\000\188\000\188\000\188\000\188\000\187\000\186\000\185\000\185\000\184\000\183\000\183\000\182\000\182\000\182\000\182\000\182\000\181\000\181\000\181\000\181\000\180\000\180\000\180\000\180\000\179\000\179\000\179\000\179\000\178\000\177\000\177\000\176\000\176\000\176\000\175\000\174\000\174\000\174\000\174\000\173\000\172\000\172\000\172\000\172\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\171\000\170\000\170\000\169\000\169\000\168\000\168\000\167\000\167\000\166\000\166\000\166\000\166\000\165\000\165\000\165\000\164\000\164\000\164\000\164\000\164\000\164\000\164\000\163\000\162\000\162\000\162\000\161\000\160\000\160\000\159\000\159\000\158\000\158\000\157\000\157\000\156\000\156\000\155\000\155\000\154\000\154\000\154\000\154\000\154\000\154\000\154\000\153\000\152\000\151\000\151\000\150\000\150\000\149\000\149\000\148\000\148\000\147\000\147\000\146\000\146\000\145\000\145\000\144\000\144\000\143\000\143\000\142\000\142\000\141\000\141\000\140\000\140\000\139\000\139\000\138\000\138\000\137\000\137\000\136\000\136\000\135\000\135\000\134\000\134\000\133\000\133\000\132\000\132\000\131\000\131\000\130\000\130\000\129\000\129\000\128\000\128\000\127\000\127\000~\000~\000}\000}\000|\000|\000{\000{\000z\000z\000y\000y\000x\000x\000w\000v\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000u\000t\000s\000r\000q\000p\000o\000n\000m\000l\000k\000k\000k\000j\000j\000j\000i\000i\000i\000h\000g\000f\000e\000d\000c\000b\000b\000b\000a\000a\000a\000`\000`\000_\000_\000_\000^\000^\000]\000\\\000\\\000\\\000[\000Z\000Z\000Y\000Y\000X\000X\000W\000W\000V\000V\000U\000U\000T\000T\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000R\000R\000Q\000Q\000P\000P\000O\000O\000N\000N\000N\000N\000N\000M\000M\000L\000L\000L\000L\000K\000J\000I\000I\000I\000H\000H\000H\000G\000G\000G\000G\000G\000F\000F\000F\000F\000F\000E\000E\000E\000E\000E\000E\000E\000D\000D\000D\000D\000D\000D\000D\000C\000C\000C\000C\000C\000C\000C\000B\000B\000B\000B\000B\000B\000B\000A\000A\000A\000A\000A\000A\000A\000A\000A\000A\000A\000A\000A\000@\000@\000@\000@\000@\000@\000@\000@\000@\000@\000@\000@\000@\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000?\000>\000>\000>\000>\000>\000>\000>\000>\000>\000>\000>\000>\000>\000=\000=\000=\000=\000=\000<\000;\000;\000;\000;\000;\000:\0009\0008\0007\0006\0005\0005\0005\0005\0005\0005\0005\0004\0004\0004\0003\0002\0002\0001\0001\0000\0000\000/\000/\000.\000.\000-\000-\000,\000,\000+\000+\000*\000*\000)\000)\000(\000(\000'\000'\000&\000&\000%\000%\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000$\000#\000#\000#\000\"\000\"\000\"\000\"\000!\000!\000!\000!\000!\000 \000\031\000\031\000\031\000\030\000\030\000\029\000\028\000\028\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\025\000\025\000\025\000\024\000\024\000\024\000\023\000\023\000\023\000\022\000\022\000\021\000\021\000\021\000\021\000\021\000\021\000\021\000\020\000\020\000\020\000\020\000\020\000\020\000\020\000\019\000\019\000\019\000\019\000\019\000\019\000\019\000\018\000\018\000\018\000\018\000\018\000\018\000\018\000\017\000\017\000\017\000\017\000\017\000\016\000\016\000\015\000\014\000\013\000\013\000\013")
1313
1314 let goto =
1315 ((16, "\0009\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\0011\001\020\000\000\000\163\000U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001n\000\000\008^\000Y\000U\000\000\000\000\000\000\000\000\000\000\000\000\008\200\000s\012t\000\000\000\000\000\000\021\224\000\000\000\132\000\000\000\000\001\015\000\019\000\000\000\000\000h\000\000\0002\000\0001\\\003\162%\230$@\000h\000\000\005\\\000\000\011\026\011\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\250%\230\000\000\000\000\004\008\000\000\006r\000\000\008\014\000\000\000\000\000\000\000\000\000\170\000\000 \240\000\000\000\000\003\030\000\000\018Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\224\000\000\000\000\0132\000\000\016r\000\000\"\164\000\000#\162\000\0007,\000\0007\218\000\0007\224\000\0007\244\000\0007\250\000\000\014\192\000\000\031\198\000\000\000\000\000\000\000\000\000\0008\000\000\0008\014\000\0008\"\000\000\022h\000\000\000\000 4\000\000\000`\000U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\001\024\000\000\000\234\000\000\000\000$\248\000\0001\224\000\000\000\000\000\000\001J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000g1\230\000\000\001\168\000\000\000\000&\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\212&\020\000\000\018\180\000\000\025\180\027x\000\000\000\000\000\000\002\164\000\000!~\000\000\000\0001\254\000\000\000\000\000\000\002\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000&\144\000\000\nb\000\000\000\000\000\000$\148\000\000'R\000\000\000\000\000\000\000\000\001\198\000\000\000\0002~\000\000\000\000\000\000\021\134\002\028\000\000\000\000\000\000\000\000\000\000\000\000\004\196\000\000\017`\000\000 \214\000\000!\030\000\000*d\000\000+\206\000\0000\200\000\0001\198\000\0003\156\000\0008N\000\000\019~\000\000\027n\000\0008|\000\0008\158\000\0008\180\000\000\000\000\000\000\000\000\000\000\002\132\t~\000\000\003P\000\000\000\000\000\000\000\021\000\000\000\000\000\000\007\242\000\000\000\000'\002\000\000\000\000\000\000\000\000\000\000\000\000\000.\000\000\000\000\000\000\002\n\000\000\000\000\000\000\000\174\000\000\000\000\028\220\000Y\000\000\000\000\001\194\002\168\000\000\000\000\000\000\000\000\000\000\004N\000\000\"\168\000\000\000\017\000\000\000\000\004v\000\000\000\000\000\000\000\000\000\000\000\000%\016\000\000\000\000\000\000\001\202\000\000\000\000\000\000\000\000\005\254\029R\000\000\002\144\000\000\000\000\004\150\002\234\000\000\000\000\000\000\000\000\012\254\000\000\000\000\000\000\000\000\000\000\000\000\000\165\0128\000\000\013\230\000\000\000\000\000\000\004 \000\000\013\"\000I\000\000%\174\000\000\000\000\000\000\014\016\002\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\132\000\000\021X\000\0002\156\000\000\000\000\001X\000\000\007d\000\000\015\196\003\190'\128\000\000\000\000\000\000\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\216'\128\000\000\019`\000\000\021\016\023\176\000\000\000\000\000\000\004z\000\000!\148\000\000\000\0003\014\000\000\000\000\000\000\004\144\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005l\000\0005\134\000\000\000\000\000\000\004b\000\000\000\000\000\000\000\000\000\000\000\000\030P\000\000\031\128\000\000)Z\000\000*\202\000\0001\206\000\0008j\000\0008\198\000\0008\220\000\0008\254\000\0009$\000\000\024\142\000\000\024D\000\0009n\000\0009\156\000\0009\172\000\000'\244\000\000\000\000\000\0003\140\000\000\000\000\000\000\002x\000*\000\000\024\192\000#\003\150\000\000\005\224\000\000\013\210\000\214\007\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\008\000\000(t%\196\004\148\000\000\000\000\000\000\031B\000\000(\160\000\000)\198\000\000(\230)B\004\030\000\251\005<\000\000\000\000\000\000\000P\000\000\000\000\003\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004*\000\000\000\000\000\000\000\000\000\000\":\000\000)z\000\000\000\000\000\000\000\000\000\000\000\000\014\194\000\000\007\136\000\000\000\000\000\000\000\000\024\156\002\188\000\000,\222\000\000\000\000\000\000\002\224\000\000\000\000+\246\001\232\000\000\008,,8\000\000\000\000)\244\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013^)\244\000\000\028\140\000\000\028\204\029\140\000\000\000\000\000\000\005Z\000\000#V\000\000\000\0004z\000\000\000\000\000\000\005\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000*p\000\000\021J\000\000\000\0004\158\000\0004\194\000\000\000\000\004|\004(\000\000\000\000,\232\000\000\000\000\000\000\006\030\000\0004V\000\000\000\0005\244\000\000\000\000\000\000\006\252\000\000\007\238\000\000\"8\000\000-.\000\0004\200\000\0005J\000\0009\142\000\000:\012\000\000:\026\000\000:.\000\000::\000\000:\130\000\000:\166\000\000\000\000\000\000\000\000\000\000\000\000\nl\000\000\n\n\000\000\012\236\012\132\000\000\018H\000\000\000\000\000\000\000\000\000\000\000\0006\024\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\0000\230\000\000\000\000\000\000-R\000\000\000\000\000\202\000\000\000\000\000\0006\012\000\000\000\000\000\000\000\000-h\000\000\000\000\000\000\000\000\004\180\003$\000\000-\156\000\000\000\000\000\000\000\000\025@\005\006\000\000\025\192\000\000\000\000\006&\000\000-\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\148\000\000\000\0006\020\000\000\000\000\000\000.&\000\000\000\000\005 \000\000\000\000\015r\000\000\026\132\000\000\000\000#\132\000\000\000\000\000\000\004H\000\000\000\0006*\000\000\000\000\000\000\000\000.Z\000\000\000\000\000\000\000\000\0068\008r\000\000.\218\000\000\000\000\000\000\000\000\000\000\000\000\015\238\000\000\000\000\005\"\000\000\016\186\000\000\004H\000\000\000\000\004\194\016j\000\000\005\180\000\000\000\000\000\000\000\000\004b\000\000*\232\000\000\027\004\000\t\027\132\000\000\000\188\000\000\0176\000\000\017\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\216\028\004\000\242\028\132\000\000\000\000\000\000\005\128\000\000\018~\000\000\006\006\000\000\000\000\006\020\003:\029\132\000\000\004\134\000\000\018\250\0302\000\000\000\000\019v\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006P\008\170\000\000\006\174\000\000\000\000\000\000\000\000\005|\000\000\020B\000\000\000\000\000\000\031\1784\248\000\000\000\000\000\000\0312\000\000\000\000\000\000\000\000\0252\004\234\000\000\000\000.\240\000\000\000\000\000\000\000\000\006\016\000\000\000\0006<\000\000\000\000\000\000/$\000\000\000\000\005\170\000\000\000\000/D\000\000\000\000\006\178\006\026\000\000\000\000/p\000\000\000\000\006\240 v\000\000\007j\000\000\000\000/\174\000\000\000\000\000\000\000\000\000\000\000\000\007\148\000\000\000\0006\162\000\000\000\000\000\000/\206\000\000\000\000\000\000\000\000\000\000$\018\000\000\000\000\000\000\004\130\000\000\000\000\000\0000>\000\000\000\000\008\240\008:\000\000\000\0000\212\000\000\000\000\007\016\000\000\000\000\000\000\000\000\004b\004\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005,\000\000\020\190\000\000\000\000\000\00056\000\000\tb\000\000\000\000\000\000\005\208\000\000\000\000\004\168\021n\000\000\022Z\000\000\000\000\000\000\007P\000\000\022n\007h\023h\000\000\025n\000\000\000\000\000\000\007\186\000\000+Z\007\198+r\000\000+\238\000\000\000\000\000\000\007\242\000\000\025\170\008R\000\000\000\000\002\014\006&\008\178\008\004\000\000\028\234\000\000\000\000\000\000\008\200\000\000#\238\008\218\000\000\000\000\000\000\003D\000\000\000\000\000\000\000\000\000\000\003\174\000\000\000\000\004\020\000\000\000x\000\000\000\000\000\000\004\254\000\000\000\000\000\000\000\000\000/\000\000\006\186\004\140\000\178\000\000\000\000\003\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001J\000\136\000\000\000\000\002\150\000\000\000\000\000\000\008\008\000\000\000\000\011\006\012\224\000\000\000\000\000\000\000\000\0146\014\188\000\246\000\000\015\172\000\000\000\000\000\000\000\000\000\000\000\000\004\238\000\000\000\000\008\232\000\000\000\000\004\190\000\000\000\000\000V\000\000\000\000\000=\000\000\006\218\005\136\002\240\000\000\000\000\0026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\162\016\n\000\000\000\000\000\000\000\000\006\208\000\000\000\000\tL\000\000\000\000\000\000\017\196\000\000\000\000\000B\021P\004\176\000\000\021\210\000\000\000\000\000\000\000\000\000\000\000\000\0003\000\000\007H\003\\\001\n\000\000\000\000\000\000\000\000\002X\000\000\000\000\000\000\000\000\000\000\000\000\005\190\000\000\000\000\000%\000\000\007|\005\230\0050\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\188\000\000\000\000\012H\022\132\000\000\000\000\000\000\000\000\000\242\000\000\004\254\000\000\008h\000\000\000\000\000\000\000\000\000\000\000\000\019\148\nf\000\000\000\000\011\192\000\000\000\000\000\000\000\000\006b\000\000\012\024\000\000\000\000\000\000\000\000\003\240\000\000\000\000\000\000\000y\000\000\000\000\000\205\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\236\005P\000\000\000\000\000\000\028\194\000\000\000\000\013\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000\000\000\000\000\000\000\000\000Z\002\150\000Y\004\168\n\166\005\196\000\000\000\000\005\218\007\206\008\188\008\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\238\005\218\030\204\006\190\000\000\000\000\t\030\000\000\023<\000\000\000\000\006\166\000\000\000\000\000\000\004\208\000\000\001B\000\000\006\024\015\"\000\000\000\000\000\000\000\000\004N\000\000\004v\000\000\007d\000\000\000\000\001R\000\000\000\000\000\000\000\000\n.\000\000\000\000\005\218\t*\000\000\023\252\000\000\004H\006\216\000\000\000\000\000\000\000\000\000\000\003$\000\000\000\000\000\000\000\000\000\0001v\008\148\000\000\000c\000\000\000\000\000\000\000\000\000\000\002\030\n\170\001\164\011&\000\000\002\154\012\166\000\000\006\198\000\000\003\022\000\000\004\154\000\000\005\020\000\000\000\000\000\000\000\000\000\000\008\160\000\000\005\224\000\000\t^\000\000\006\152\000\000\004H\007*\000\000\003\166\000\000\000\000\000\000\006,\007P\006>\000\000\008\136\000\000\008\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\234\000\000\tn\000\000\000\000\000\000\000\000\000\000\006\140\007\232\007\226\000\000\007\250\000\000\000\000\000\181\t\182\000\000\006\232\000\000\000\000\000\000\000\000\0074\000\000\000\000\000\000\000\000\000\000\0074\008t\002\134\007\128\007\210\000\000\000\000\t\202\000\000\000\000\000\000\000\000\t\002\000\000\000\000"), (16, "\001\182\001\205\0046\0006\000\n\005\001\005\002\000\\\000\\\000\017\004\136\000q\000e\000-\001;\004L\004\179\002S\003T\003<\002+\004\198\000-\005m\000^\005\006\005n\004\134\000\t\004\137\004Y\003V\004J\004\177\004\180\004Y\004M\004Y\004\196\005\182\000D\004\199\004Y\003\007\005\023\001\184\000\017\005\024\000\016\001\185\000^\000^\000\191\002\219\000\017\000_\000_\004\252\004\253\000`\000`\001\129\001\182\001\205\000-\005\028\0006\000D\005.\000\\\003\243\0019\002,\0018\004\176\000-\001U\001\131\005r\005/\0051\003\006\005\021\004\133\000i\000i\000\193\001\182\001\203\004Z\001O\004\177\004\180\004Y\004Z\003\131\004Z\001\210\004I\001%\004\134\004Z\004\137\004Y\0012\003\007\000'\001\184\000&\005\191\004a\001\185\000^\001t\000'\004J\000\005\000_\001<\004M\004Y\000`\005\021\004\194\001\182\001\205\0006\004b\004Y\003V\000^\000E\001\184\004P\002B\005\021\001\185\000-\001\135\000\008\000\t\002S\003T\003<\001\198\0006\000i\0006\002[\002G\0059\000-\004Z\002H\001@\003\014\003h\001\199\003\133\003b\004\195\002\237\004Z\001@\000j\000j\003\015\003\007\000-\001\184\003P\005:\001=\001\185\003^\001P\0007\004\196\004\184\004Z\004\199\004Y\004s\004Y\000\137\002-\002L\004Z\000k\000k\003=\000-\003\\\004\185\004=\000-\002B\003\"\000\154\000-\000\160\003s\001W\0034\001\214\000\169\001\198\001X\004Q\000\160\001Y\002G\000\166\000-\000\138\002H\001@\003\014\005<\001\199\003c\001\210\002\220\001%\001\215\0006\000j\005=\005W\001\216\000\168\001\198\005X\001\217\001/\000m\0007\002,\001\218\000\139\004Z\004\224\004Z\000\140\001\199\005u\005N\004\230\002L\000o\000k\000\160\003\029\005Z\005N\000b\003\244\0007\002B\003\"\004\209\002u\000\160\005\\\002\142\0034\001\214\000\170\001\198\004\149\000\\\0007\003Y\002G\000\185\002\238\001<\002H\001@\003\014\003\246\001\199\001>\003e\004[\004\240\001\215\005\131\001\182\001\205\003\015\001\216\000\152\000-\003P\001\217\004e\002S\003j\001%\001\218\000-\004\186\001E\002A\005/\005s\003\006\002w\000\152\002L\001\204\002x\000^\003=\000\191\003\\\002\243\000_\004T\004\001\003\"\000`\004(\000\160\003s\004\143\0034\001\214\002\007\002\008\003\007\001@\001\184\002\247\000\179\000\152\001\185\000\160\004\227\001@\000\166\005\133\004\141\005F\004\188\004\228\000i\001\215\000\192\001\182\001\205\005F\001\216\000\152\000\160\001|\001\217\000\166\000\252\004\185\000-\001\218\000-\004\189\005 \001\143\005/\005x\003<\000-\001c\005Q\004d\005R\001e\005I\004\133\000\160\005J\005P\000\166\000\160\004\227\005I\000\166\000\160\005J\0006\000\166\004b\004Y\005\134\003\007\004\134\001\184\004\137\004Y\0006\001\185\000\160\001'\000\255\000\166\001\145\002\133\002\193\002\214\002\196\005\130\000^\001A\001\182\001\205\002\161\002[\000\\\004\003\002\134\004\140\000g\0006\002B\000\253\001N\000-\001*\000j\0006\005/\005x\003<\001\198\0006\001@\003\014\004\141\002G\001O\002\199\000\017\002H\001@\003\014\005\136\001\199\003\015\003\249\003u\002[\004Z\000k\005\196\005=\005W\003\007\004Z\001\184\005\138\000^\001,\001\185\0006\001d\000_\0006\000\253\001d\000`\004\186\004)\005}\002\007\002\008\002L\005d\005e\003\"\003\029\005\140\000\160\003'\000\\\0034\002B\003\"\000e\002\164\000\160\005\142\004\185\0034\001\214\000i\001\198\004S\001\182\001\205\0007\002G\000'\002\165\005!\002H\001@\003\014\005~\001\199\000\216\003\127\0006\001@\001\215\005-\005$\005=\005W\001\216\0006\005\148\002J\001\217\005\191\001P\002U\000^\001\218\005\149\001*\005i\000_\000\225\004_\000\\\000`\004;\002L\000\182\0007\000^\003=\001\184\005\128\0007\001m\001\185\002B\003\"\000\160\002u\000\160\003'\002\142\0034\001\214\001X\001\198\000\160\001Y\000i\000\166\002G\001+\004\155\004\248\002H\001@\003\014\005~\001\199\004Q\004<\0007\000j\001\215\0007\000^\005=\005W\001\216\001#\000_\002J\001\217\002\\\000`\005\021\0006\001\218\001q\002\n\002u\002A\001\210\002\142\002[\002w\000k\002L\004\191\002x\002\221\003=\004B\005\128\004\144\001\182\001\205\002\237\003\"\000i\0006\000\160\003'\003u\0034\001\214\000-\002\251\000-\002.\002\226\000l\005/\005x\003<\000-\000\211\0007\000\236\005 \0006\000-\0006\002A\002\255\001\215\002\237\002w\000j\001\198\001\216\002x\000m\0006\001\217\0006\001p\000\149\003\007\001\218\001\184\005\193\001\199\0020\001\185\004\250\000o\000\188\004\170\004Y\000-\002\250\000k\000\191\005\127\001\212\001\182\001\205\003\003\000^\001\132\004=\000\213\003\018\003x\000^\000\214\003\004\004|\000-\001*\003\028\003B\005/\005x\003<\001\131\000\138\0006\000j\003\004\003\004\002\133\002\193\002\194\002\196\002.\001\213\004G\001\214\004V\002\161\000\211\000\227\000\238\002\134\004\140\003K\000m\003\007\003\248\001\184\000\139\000k\001,\001\185\000\140\0007\004Z\001\215\001^\003)\000o\004\141\001\216\005\129\002\199\003\142\001\217\0006\0021\0022\0024\001\218\002\133\004\011\003\004\002\209\003h\002B\001Z\003M\001\187\002\161\0006\000^\0007\002\134\000\213\001\198\003)\004\013\000\214\001\196\002G\002\027\004\130\000\169\002H\001@\003\014\005~\001\199\003.\002\007\002\008\005!\004\146\001\182\001\205\005=\005W\000\169\004\195\002\164\002J\000\243\005,\005$\000\227\0032\000-\005'\000\228\002\237\005/\005x\003<\002\165\005?\004\196\002L\003\221\004\199\004Y\003=\000-\005\128\0007\001j\002B\000\152\003\"\000\160\0006\000\160\003'\005\018\0034\001\214\001\198\003\007\000\160\001\184\004\204\002G\002\164\001\185\000\160\002H\001@\003\014\005~\001\199\002[\000-\0004\005\137\003K\001\215\002\165\005=\005W\002[\001\216\0006\002J\002\237\001\217\002*\0006\000\\\0006\001\218\003\159\000\181\0006\000\160\004}\003p\000\166\001\001\002L\004Z\002z\0035\003=\004\176\005\128\000\228\001\182\001\205\003L\003\"\004\128\001\006\000\160\003'\005\019\0034\001\214\000\244\003p\000-\004\177\004\180\004Y\005/\005x\003<\003m\001*\002\t\003r\000^\000\246\000-\005\"\0053\000_\001\215\004\004\004\202\000`\0007\001\216\000\\\003\004\002\238\001\217\000q\005u\002B\003\007\001\218\001\184\003q\001\000\003\136\001\185\002u\004\133\001\198\002\142\002\131\001,\003\183\002G\000i\005\141\003\246\002H\001@\003\014\005~\001\199\005K\001\001\004\134\005+\004\137\004Y\001\002\005=\005W\004Z\001\003\001@\002J\000^\003\177\001\004\003\138\005{\000_\0007\004W\0007\000`\001B\0007\003)\002\158\000^\002L\003\136\0007\002w\003=\004\207\005\128\002x\001\182\001\205\004\147\003\"\000\169\005b\000\160\003'\005\144\0034\001\214\000i\005\172\000-\002\007\002\008\005;\002S\003T\003<\004X\000\160\001l\001s\001o\003\233\004\003\003\137\004Z\003\167\001\215\003.\002B\005\151\003\184\001\216\000j\005\170\004\148\001\217\003\008\003\233\001\198\003\007\001\218\001\184\0006\002G\0032\001\185\000\160\002H\001@\003\014\005~\001\199\005L\003\012\004\192\003\235\000k\001\182\001\205\005=\005W\000\169\004\195\0006\002J\002u\005'\000\211\002\142\000\238\000-\003\234\005\173\005\019\002S\003T\003<\004\245\004\205\004\196\002L\000\\\004\199\004Y\003=\000]\005\128\000j\002\133\000-\004\193\003\"\005\178\002S\000\160\003'\002u\0034\001\214\002\138\003\007\002\134\001\184\004a\005\177\005\187\001\185\000\160\000^\004\014\000^\000k\002w\000\213\004\206\005\189\002x\000\214\001\215\004(\004b\004Y\004\021\001\216\000^\004\013\005M\001\217\002O\000_\002B\004\158\001\218\000`\000-\000/\001z\0002\004\023\000^\001\198\000\243\004Z\002w\000\227\002G\0006\002x\004\195\002H\001@\003\014\0007\001\199\003\252\003b\005\194\000m\000i\001\182\001\205\002[\003\015\004\024\0004\004\196\002J\004\031\004\199\004Y\002\164\000r\000-\0007\0006\005\179\002S\003T\003<\004\023\004Z\005\197\002L\004!\002\167\005'\003=\000-\003\\\004\"\001x\002B\005'\003\"\005\198\005\162\000\160\003'\003\193\0034\001\214\001\198\003\007\000-\001\184\004!\002G\000-\001\185\002\133\002H\001@\003\014\005*\001\199\003`\003b\0004\005L\003\203\001\215\004\127\002\134\003\015\000\228\001\216\0056\002J\004Z\001\217\001@\003\014\005Y\005\162\001\218\003\004\0013\003\227\000j\004%\002\133\003\004\003\015\002L\005\162\005\195\005\206\003=\004\212\003\\\000\246\001\182\001\205\002\134\003\"\004\023\0007\000\160\003'\005k\0034\001\214\000k\004\133\000-\005\135\004+\005u\002S\003T\003<\000\000\001\000\003\"\000\000\001@\000\160\003'\000-\0034\004\134\001\215\004\137\004Y\0007\005\192\001\216\001B\004.\004h\001\217\002\164\001\001\002B\003\007\001\218\001\184\001\002\001i\0041\001\185\001\003\003\228\001\198\0040\002\169\001\004\0044\002G\005\139\005\162\000\000\002H\001@\003\014\0040\001\199\003\135\003b\005\181\005\019\000\160\001l\004\023\001o\003\015\005\019\005\169\001@\002J\0036\000\000\005)\000\000\004\225\002u\004\141\005\201\002\142\005(\001B\000\000\004Z\000\000\000\152\002L\005\202\003:\000\169\003=\000\000\003\\\000\000\001\182\001\205\005\192\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\005\163\000-\000\000\000\000\000\000\002S\003T\003<\000\000\000\160\001l\005\165\001o\002A\000\211\000\000\000\236\002w\001\215\002u\002B\002x\002\142\001\216\000\000\000\160\004}\001\217\000\166\000\160\001\198\003\007\001\218\001\184\000\000\002G\000\000\001\185\004\195\002H\001@\003\014\000\000\001\199\004\000\003b\000\000\000\000\000\000\000\000\001\182\001\205\003\015\000\000\000\152\004\196\002J\000^\004\199\004Y\000\213\000-\002A\000-\000\214\005 \002w\005/\000\000\003\006\002x\000\000\002L\000\000\000\000\000\000\003=\005\167\003\\\000\000\000\000\000\000\000\000\003\"\004\161\000\000\000\160\003'\000\000\0034\001\214\000\227\000\000\003\007\000\000\001\184\000\000\000\000\000\000\001\185\000\160\001)\000\000\000\166\000\000\000\000\000\211\000\000\000\232\000\000\001\215\005\132\001\182\001\205\002\133\001\216\000\000\002\200\004Z\001\217\000\000\004a\002B\002\161\001\218\000-\000\000\002\134\000\000\005/\000\000\003\006\001\198\000\000\000\000\000\000\000\000\002G\004b\004Y\000\000\002H\001@\003\014\000\000\001\199\005U\003b\002\202\000^\000\000\000\000\000\213\000\000\003\015\003\007\000\214\001\184\002J\000\000\000\000\001\185\000\000\002\133\002\198\000\000\002\196\000\000\000\000\000\000\000\000\000\228\002\161\005v\002L\000\\\002\134\000\000\003=\000e\003\\\000\000\000\000\000\227\002B\003\"\000\000\000\000\000\160\003'\002\208\0034\001\214\000\000\001\198\000\000\002\164\002\199\004Z\002G\000\000\000\000\005!\002H\001@\003\014\005w\001\199\000\000\000\000\002\165\004\195\001\215\005#\005$\005=\005W\001\216\000^\000\000\005z\001\217\000\000\000_\004\233\000\000\001\218\000`\004\196\000\000\000\000\004\199\004Y\000\000\000\000\000\000\002L\000\000\000\000\000\237\003\029\005|\000\000\000\000\000\000\002\164\002B\003\"\000\160\000\000\000\160\003'\000i\0034\001\214\004\195\001\198\000\000\000\000\002\165\000\000\002G\000-\000\228\000\000\002H\001@\003\014\005w\001\199\000\000\000\000\004\196\000\186\001\215\004\199\004Y\005=\005W\001\216\004\133\000\000\005z\001\217\000\000\000\000\000\000\002u\001\218\000\000\002\142\004Z\000-\000/\0000\0002\000\000\004\134\002L\004\137\004Y\000\000\003\029\005|\001\182\001\205\000\000\004n\000\000\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000-\000\000\000\000\000\000\005/\0004\003\006\000\000\000\000\000\000\000\211\000\000\000\231\002A\000\000\000j\000\000\002w\004Z\001\215\000\000\002x\002u\000\000\001\216\002\142\000\000\000\000\001\217\000\000\003\007\000\000\001\184\001\218\000\188\000\000\001\185\000\000\000\211\000k\000\238\004a\004Z\000\000\000-\000/\001v\0002\005y\001\182\001\205\000\000\000\000\000^\000\000\000\000\000\213\000\\\004b\004Y\000\214\000q\000-\000\000\000\138\002A\002S\005\015\003\006\002w\000\000\000\000\000\000\002x\0004\000\000\000\000\000\000\000\000\002u\004\236\000^\002\137\000\000\000\213\000m\000\152\000\227\000\214\000\139\000\000\000\000\003\007\000\140\001\184\000\000\000\000\000\000\001\185\000o\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\002\133\000\227\001@\002\203\004Z\000\000\000\000\002B\000^\002\161\004\243\004\006\002w\002\134\001B\003\130\002x\001\198\000\160\001~\000i\000\166\002G\001\182\001\205\001i\002H\001@\003\014\005w\001\199\000\000\000\000\000\000\000\000\004\218\000-\000\000\005=\005W\002S\000\000\003\006\005z\000\000\000\000\000-\000\000\000\160\001l\000-\001o\002\133\000\228\005 \002\200\000\000\000\000\000\000\002L\000\000\002\161\000\000\003\029\005|\002\134\003\007\000-\001\184\002B\003\"\001@\001\185\000\160\003'\002\206\0034\001\214\000\000\001\198\002Z\000\228\002\164\001B\002G\000\000\002\202\000\000\002H\001@\003\014\000\000\001\199\000\000\001i\000\000\002\165\001\215\004a\003\128\000j\003\015\001\216\003\130\000\000\003w\001\217\005\013\000\000\002\133\000\000\001\218\000\000\004l\000\000\004b\004Y\000\160\001l\000\000\001o\002L\002\134\000\000\000k\003\029\003y\000\000\002\207\001\000\000\000\000\000\003\"\000\000\002\164\000\160\003'\000\000\0034\001\214\000\000\000\000\000\\\001\182\001\205\000\000\000e\000\000\002\165\001\001\002Q\000\000\000\000\000\000\001\002\000\000\000-\002B\001\003\001\215\002S\003\001\003\006\001\004\001\216\004a\000\000\001\198\001\217\000\000\000m\000\000\002G\001\218\000\000\004Z\002H\001@\003\014\000\000\001\199\000\000\004b\004Y\000t\000^\003\007\000\152\001\184\003\015\000_\001@\001\185\003w\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005#\0050\000-\000\134\000\000\000\000\000\152\002L\000\000\000\000\000\000\003\029\003y\000\000\000\000\000\000\000\000\000i\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\000\000\000\000\001\182\001\205\000\160\001\128\000\000\000\166\000\160\002\235\003\031\002\249\000\000\004Z\000\000\000-\000\000\000\000\001\215\002S\003 \003<\000\000\001\216\000\000\000\160\001\141\001\217\000\166\000\000\005E\000\000\001\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\001\252\003\007\000\000\001\184\002B\000\000\000\000\001\185\000\000\001\182\001\202\004y\004a\000\000\001\198\000\000\000\000\000\000\000\000\002G\001\182\001\205\000\000\002H\001@\003\014\000j\001\199\003?\004b\004Y\000\000\000\000\000-\000\000\000\000\003\015\002S\003 \003<\003A\000\000\000^\000\000\001\184\000\137\000\000\000\000\001\185\000\000\000k\000\000\000^\000\000\001\184\000\000\002L\000\000\001\185\004a\003\029\003C\000\000\003\007\000\000\001\184\000\000\003\"\000\000\001\185\000\160\003E\001@\0034\001\214\000\138\004b\004Y\004w\000\000\000\000\000\000\001\182\001\205\005F\000\000\000\\\000\000\000\000\004Z\000q\000\000\002B\000\000\001\215\000\000\000m\000\000\000\000\001\216\000\139\003J\001\198\001\217\000\140\000\000\000\000\002G\001\218\000\000\000o\002H\001@\003\014\000\000\001\199\005I\000\000\000\160\005J\000\000\000\166\001\182\001\205\003\015\002A\000\000\001\184\002J\000^\003D\001\185\000\000\000\000\000_\000-\004Z\000\000\000`\002S\003 \003<\000\000\001\198\002L\000\000\000\000\000\000\003=\000\000\003>\000\000\000\000\001\198\002B\003\"\001\199\000\000\000\160\003'\000\000\0034\001\214\000i\001\198\003\007\001\199\001\184\000\000\002G\000\000\001\185\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\000\000\000\000\001\215\000\000\001\182\001\205\003\015\001\216\000\000\000\000\002J\001\217\000\000\000\000\000\000\000\000\001\218\000-\004u\000\000\000\000\002S\003T\003<\000\000\000\211\002L\000\236\000\000\000\000\003=\000\000\003>\000\000\000\000\000\000\002B\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\001\198\003\007\000\000\001\184\000\000\002G\000\000\001\185\000\000\002H\000\000\000\000\000\000\001\199\000\000\000\000\000\000\000j\001\215\004\153\001\182\001\205\000^\001\216\000\000\000\213\002J\001\217\000\000\000\214\002B\000\000\001\218\000-\000\000\000\000\000\000\002S\003T\003<\001\198\000k\002L\000\000\000\000\002G\000\000\000\000\000\000\002H\001@\003\014\000\000\001\199\004a\000\000\000\227\000\000\000\000\000\000\001\214\000\000\003\015\003\007\000\000\001\184\002J\000\000\000\000\001\185\000\000\004b\004Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\215\000\000\002L\000\000\000\000\001\216\003=\000m\003>\001\217\000\000\000\000\002B\003\"\001\218\002u\000\160\003'\002\142\0034\001\214\000v\001\198\000\000\000\\\000\000\000\000\002G\000g\000\000\000\000\002H\001@\003\014\000\000\001\199\000\000\003[\000\000\000\000\001\215\000\000\001\182\001\205\003\015\001\216\000\000\000\000\002J\001\217\000\000\004Z\000\000\000\000\001\218\000-\000\228\000\000\002A\002S\003T\003<\002w\000\000\002L\000\000\002x\000^\003=\000\211\003\\\000\230\000_\000\000\002B\003\"\000`\000\000\000\160\003'\000\000\0034\001\214\000\000\001\198\003\007\000\000\001\184\000\000\002G\000\000\001\185\000\000\002H\001@\003\014\000\000\001\199\000\000\003]\000\000\000i\001\215\000\000\001\182\001\205\003\015\001\216\000\000\000\000\002J\001\217\000^\000\000\000\000\000\213\001\218\000-\000\000\000\214\000\000\002S\003z\003<\001\001\000\000\002L\000\000\000\000\000\000\003=\000\000\003\\\000\000\000\000\000\000\000\000\003\"\001\008\000\000\000\160\003'\000\000\0034\001\214\000\000\000\227\003\007\000\000\001\184\000\000\000\000\000\000\001\185\000\000\001\182\001\201\000\000\000\000\002\133\004\165\000\000\002\200\000\000\001\215\000\000\001\182\001\205\002\161\001\216\000\\\000\000\002\134\001\217\000e\000\000\002B\000\000\001\218\000-\000\000\000j\003|\002S\003z\003<\001\198\000\000\000\000\000\000\000\000\002G\000\000\002\202\000-\002H\001@\003\014\000^\001\199\001\184\003o\000\000\004\195\001\185\000k\000\000\000\000\003\015\003\007\000\000\001\184\002J\000^\000\000\001\185\000\000\000\000\000_\000\000\004\196\000\000\000`\004\199\004Y\000\000\000\228\000\000\002L\000\000\000l\000\000\003=\001\026\003\\\002\205\000\000\000\000\002B\003\"\000\000\002\164\000\160\003'\003~\0034\001\214\000i\001\198\000\000\000\000\000m\000\000\002G\004\232\002\165\000n\002H\001@\003\014\000\000\001\199\000\000\000\000\000\000\000o\001\215\000\000\001\182\001\205\003\015\001\216\000\000\000\000\002J\001\217\003\144\000\000\000\000\000\000\001\218\000-\000\000\004Z\004\235\002S\003 \003<\000\000\000\000\002L\000\000\000\000\000\000\003=\000\000\003}\000\000\000\000\001\198\002B\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\001\198\003\007\001\199\001\184\000\000\002G\000\000\001\185\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\000\000\000j\001\215\000\000\001\182\001\205\003\015\001\216\000\000\000\152\002J\001\217\000\000\000\000\000\000\000\000\001\218\000-\000\000\000\000\000\137\002S\000\000\003\006\000\000\000k\002L\000\000\000\000\000\000\003=\000\000\003}\000\000\000\000\000\000\000\000\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\001\182\001\200\003\007\000\000\001\184\000\138\000\000\000\000\001\185\000\000\000\160\004\227\000\000\000\166\000\000\000\000\000\000\000\000\004\238\001\215\000\000\000\000\000\000\000\000\001\216\000\000\000m\000\000\001\217\002u\000\139\002B\002\142\001\218\000\140\003\250\001\182\001\205\000\000\003\130\000o\001\198\000\000\000^\000\000\001\184\002G\001\182\001\205\001\185\002H\001@\003\014\000\000\001\199\002:\004\005\004a\000\000\000\211\000-\000\238\000\000\003\015\002S\000\000\003\006\002J\000\000\000\000\000\000\000\000\000^\000\000\004b\004Y\002w\000\000\000\000\002A\002x\001\184\000\000\002L\000\000\001\185\000\000\003=\000\000\003>\003\007\000\000\001\184\002B\003\"\000\000\001\185\000\160\003'\000\000\0034\001\214\000^\001\198\000\000\000\213\000\000\000\000\002G\000\214\000\000\000\000\002H\001@\003\014\000\000\001\199\000-\0003\000\000\0002\001\215\004a\004\008\000\000\003\015\001\216\003\130\000\000\003w\001\217\000\000\000\000\000\000\004Z\001\218\000\227\000\000\000\000\004b\004Y\000\000\000\000\000\000\001\198\002L\000\000\0004\000\000\003\029\003y\000\000\000\000\000\000\000\000\000\000\003\"\001\199\000\000\000\160\003'\000\000\0034\001\214\000\000\001\182\001\205\000\000\000\000\000\000\002B\000\000\000\\\002\133\000\000\000\211\000g\000\238\000-\000\000\001\198\002B\002S\001\215\003\006\002G\002\134\000\000\001\216\002H\000\000\001\198\001\217\001\199\000\000\000\000\002G\001\218\000\000\004Z\002H\001@\003\014\000\000\001\199\000\000\002J\000\000\003\007\000\000\001\184\004a\000\000\003\015\001\185\000^\000\228\003w\000^\000\000\000_\000\213\002L\000\000\000`\000\214\000\000\000\000\004b\004Y\000\000\000\000\000\000\002L\000\000\000\000\000\000\003\029\003y\000\000\001\214\004\n\000\254\004\174\003\"\003\130\000\000\000\160\003'\000i\0034\001\214\000\227\000\000\000\000\002\143\000\000\000\000\001@\000\000\001\215\000\000\000\000\000\000\001\000\001\216\000\000\000\000\000\000\001\217\001B\001\215\000\000\000\000\001\218\000\000\001\216\000\000\001\182\001\205\001\217\001i\000\000\000\000\001\001\001\218\0058\000\000\004Z\001\002\000\000\000-\000\000\001\003\000\000\002S\003 \003<\001\004\002B\000\211\000\000\000\238\000\000\000\160\001l\000\000\001o\004\172\001\198\000\000\000\000\000\000\000\000\002G\000\000\000\000\000\000\002H\001@\003\014\003\007\001\199\001\184\000\000\000\000\000\000\001\185\000\000\000j\000\000\003\015\000\228\000\000\000\000\003w\001\182\001\183\000\000\000\000\000\000\000\000\000\000\000^\000\000\000\000\000\213\000\000\000\000\000\000\000\214\002L\000\000\000k\000\000\003\029\003y\000\000\004\016\000\000\000\000\000\000\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\000\000\000\000\000\000\001\182\001\205\000\000\000\227\000l\000^\001\000\001\184\005[\000\000\000\000\001\185\000\000\000-\000\000\001\215\000\000\002S\003 \003<\001\216\000\000\000\000\004\216\001\217\000m\001\001\000\000\000\000\001\218\000\148\001\002\000\000\000\000\000\000\001\003\001\182\001\203\002B\000o\001\004\000\000\000\000\003\007\000\000\001\184\000\000\000\000\001\198\001\185\000\000\000\000\000\000\002G\000\000\000\000\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\015\000\000\000\000\000\\\002J\000\000\000\000\000e\000\000\000^\000\000\001\184\000\000\000\228\000\000\001\185\000\000\000\000\000\000\000\000\002L\000\000\000\000\000-\003=\000\000\003>\003\139\001\182\001\205\000\000\003\"\000\000\000\000\000\160\003'\001\198\0034\001\214\004\018\000\000\000-\000\000\000\000\000\000\002S\000^\003<\000\000\001\199\000\000\000_\000\000\002Z\000\000\000`\000\000\000\000\001\215\000\000\000\000\001\000\000\000\001\216\002B\000\000\001\240\001\217\000\000\000\000\000\000\003\007\001\218\001\184\001\198\000\000\000\000\001\185\000\000\002G\000i\001\001\000\000\002H\001@\003\014\001\002\001\199\000\000\000\000\001\003\000\000\001\182\001\205\000\000\001\004\003\015\000\000\000-\000\000\002J\000\000\000\000\003@\000\000\000-\000\000\000\000\000\000\002S\001\198\003\006\000\000\000\000\000\000\000\211\002L\000\238\000\000\000\000\003=\000\000\003>\001\199\000\000\000\000\000\000\003\"\003\158\000\000\000\160\003'\000\000\0034\001\214\003\007\000\000\001\184\000\000\000\000\000\000\001\185\000\000\000\000\000\000\000\211\000\000\000\238\000\000\000\000\000\211\000\000\000\229\000\000\001\215\000\000\001\182\001\205\000^\001\216\000j\000\213\002B\001\217\001@\000\214\000\000\003\005\001\218\000-\001\242\000\000\001\198\002S\000\000\003\006\002\223\002G\000\000\000\137\000\000\002H\001@\003\014\000k\001\199\000\000\000\000\000^\000\000\001\215\000\213\000\227\000^\003\015\000\214\000\213\000\000\003\141\003\007\000\214\001\184\000\000\000\000\001\218\001\185\000\000\000\000\000\000\000\138\000\160\002\235\000\000\002\249\002L\000\000\000\000\000\000\003=\000\000\003\143\000\000\000\227\000\000\000\000\003\"\002B\000\227\000\160\003'\000m\0034\001\214\000\000\000\139\000\000\001\198\000\000\000\140\001@\000\000\002G\000\000\000\000\000o\002H\001@\003\014\000\000\001\199\000\000\003\164\001\215\000\000\001\182\001\205\000\000\001\216\003\015\000\000\000\000\001\217\003\027\000\000\000\000\003!\001\218\000-\000\000\000\000\000\000\002S\000\228\003\006\000\000\000\000\000\000\000\000\002L\000\000\000\000\000\000\003\029\003\030\000\000\000\160\003\176\000\000\003\182\003\"\002B\000\000\000\160\003'\000\000\0034\001\214\003\007\004\020\001\184\001\198\000\000\000\228\001\185\000\000\002G\000\000\000\228\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\001\215\000\000\001\182\001\205\001\000\001\216\003\015\000\000\000\000\001\217\003\027\000\000\004$\000\000\001\218\000-\000\000\000\000\000\000\002S\000\000\003\006\000\000\000\000\001\001\000\000\002L\000\000\000\000\001\002\003\029\003\030\000\000\001\003\001\000\000\000\000\000\003\"\001\004\000\000\000\160\003'\000\000\0034\001\214\003\007\000\000\001\184\000\000\000\000\000\000\001\185\000\000\000\000\001\001\000\211\000\000\000\236\000\000\001\002\000\211\000\000\000\212\001\003\001\215\000\000\001\182\001\205\001\004\001\216\000\000\000\000\002B\001\217\000\000\000\000\000\000\000\000\001\218\000-\000\000\000\000\001\198\002S\000\000\003\006\000\000\002G\000\000\000\000\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\000^\000\000\000\000\000\213\000\000\000^\003\015\000\214\000\213\000\000\003\027\003\007\000\214\001\184\000\000\000\000\000\000\001\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\000\000\000\000\000\000\003\029\003\030\001\182\001\205\000\227\000\000\000\000\003\"\002B\000\227\000\160\003'\000\000\0034\001\214\000-\000\000\000\000\001\198\002S\000\000\003\006\000\000\002G\000\000\000\000\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\001\215\000\000\000\000\003_\000\000\001\216\003\015\000\000\000\000\001\217\003X\003\007\000\000\001\184\001\218\000\000\000\000\001\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\000\000\000\000\000\000\003\029\003Z\001\182\001\205\000\000\000\000\002u\003\"\002B\002\136\000\160\003'\000\000\0034\001\214\000-\000\000\000\000\001\198\002S\000\228\003\006\000\000\002G\000\000\000\228\000\000\002H\001@\003\014\000\000\001\199\000\000\000\211\001\215\000\238\000\000\003W\002u\001\216\003\015\002\135\000\000\001\217\003X\003\007\000\000\001\184\001\218\000^\000\000\001\185\000\000\002w\000\000\000\000\000\000\002x\000\000\000-\002L\000\000\005\012\000\000\003\029\003Z\000-\000\000\001\028\000\000\002S\003\"\002B\000\000\000\160\003'\000^\0034\001\214\000\213\000\000\000^\001\198\000\214\000\000\002w\000\000\002G\001\001\002x\000\000\002H\001@\003\014\000\000\001\199\004(\000\000\001\215\000\000\003k\000\000\001\004\001\216\003\015\000\000\000\000\001\217\003l\000\000\000\227\000\000\001\218\001U\000\000\000\000\000\000\000\000\000-\001k\000\000\0002\000\000\000\000\002L\000\000\000\000\001O\003\029\003n\001\182\001\205\000\000\000\000\002u\003\"\002B\002v\000\160\003'\000\000\0034\001\214\000-\000\000\000\000\001\198\002S\0004\003\006\002\133\002G\000\000\000\000\000\000\002H\001@\003\014\000\000\001\199\000\000\000\000\001\215\002\134\000\000\003i\000\000\001\216\003\015\000\000\000\000\001\217\003X\003\007\000\000\001\184\001\218\000^\000\000\001\185\000\000\002w\002\133\000\000\000\000\002x\000\000\000\000\002L\000\000\000\228\000\000\003\029\003Z\000\000\002\134\000\000\000\000\000\000\003\"\001@\000\000\000\160\003'\000\000\0034\001\214\001@\003\014\000\000\003v\000\000\001P\000\000\000\000\000\000\005\013\001\182\001\205\003\015\000\000\000\000\000\000\000\000\000\000\000\000\001\215\000\000\000\000\000\000\000-\001\216\001\182\001\203\002S\001\217\003\006\000\000\001\000\001[\001\218\001f\000\000\004-\001X\000\000\000\160\001Y\005\016\000\166\003\"\000\000\000\000\000\160\003'\000\000\0034\000\000\001\001\001@\003\007\000\000\001\184\001\002\002B\000\000\001\185\001\003\000\000\000\000\000\000\001B\001\004\000\000\001\198\000^\000\000\001\184\002\133\002G\000\000\001\185\001i\002H\001@\003\014\000\000\001\199\000\000\000\000\000\000\002\134\000\000\000\000\001\182\001\205\003\015\003{\000\000\000\000\003w\000\000\000\000\000\000\0054\000\160\001l\000-\001o\000\000\000\000\002S\000\000\003\006\000\000\000\000\002L\000\000\000\000\000\000\003\029\003y\000\000\000\000\000\000\000\000\000\000\003\"\000\000\000\000\000\160\003'\000\000\0034\001\214\000\000\000\000\003\007\000\000\001\184\000\000\000\000\000\000\001\185\000\000\001\182\001\205\000\000\000\000\000\000\000\000\002B\000\000\000\\\001\215\000\000\000\000\000e\000-\001\216\000\000\001\198\003\157\001\217\000\000\000\000\002G\000\000\001\218\000\000\002H\001@\003\014\000\000\001\199\000\000\001\198\000\000\000\000\000\000\000\000\003\189\000\000\003\015\001\182\001\203\000\000\003w\003\192\001\199\001\184\000\000\000\000\000\000\001\185\000\000\000^\000\000\000\000\000\000\000\000\000_\000\000\002L\000\000\000`\000\000\003\029\003y\001\182\001\205\003\198\000\000\000\000\003\"\000\000\002\031\000\160\003'\000\\\0034\001\214\000-\000q\000\000\000\000\003\157\000^\002B\001\184\000i\000\000\000\000\001\185\000\000\000\000\000\000\000\000\001\198\003\236\000\000\001\215\001\210\002G\001%\003\240\001\216\002H\001@\003\014\001\217\001\199\003\192\000\000\001\184\001\218\001\215\000\000\001\185\000\000\003\015\000\000\000^\000\000\0055\000\000\000\000\000_\000\000\000\000\001\220\000`\000\000\000\000\000\\\003\198\000\000\000\000\000g\000\000\002L\000\000\000\000\000\000\003\029\0057\000\000\000\000\000\000\001\198\000\000\003\"\000\000\000\000\000\160\003'\000i\0034\001\214\001@\003\199\000\000\001\199\000\000\000\000\000\000\000\000\001\182\001\205\000\000\000j\003\200\000\000\000\000\000\000\003\238\000\000\000^\001\215\000\000\000-\000\000\000_\001\216\003\157\000\000\000`\001\217\001\198\000\137\000\000\000\000\001\218\000\000\000k\000\000\000\000\000\000\000\000\000\000\000\000\001\199\003\214\003\191\000\000\000\160\003\239\000\000\003\226\001\214\003\192\000i\001\184\001\198\000\000\000\211\001\185\000\236\000\000\000\138\000\000\000\000\000\000\001@\003\199\000\000\001\199\000\000\000\\\001\215\000\000\000\000\000e\003\198\001\216\003\200\000j\000\000\001\217\003\212\000m\000-\000\000\001\218\000\139\000\000\000\000\000\000\000\140\000\000\000\000\000\211\000\000\000\236\000o\000\000\000\000\000\000\000^\000\000\000k\000\213\000\000\000\000\000\000\000\214\003\214\000\000\001\215\000\160\003\219\000^\003\226\001\214\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\001\222\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000j\000\227\001\215\000^\000\000\000\000\000\213\001\216\000\\\000\000\000\214\001\217\000e\000\000\000i\000m\001\218\000\000\000\000\000\\\001\198\000-\000\000\000e\000k\000\000\000\000\000\000\000\000\000o\001@\003\199\000-\001\199\000\000\000\000\000\000\000\227\000\000\000\000\000\000\000\000\003\200\000\000\000\000\000\000\003\212\000\000\000\000\000l\000\000\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000m\000`\000\000\003\214\000\000\000\151\000\160\003\219\000\000\003\226\001\214\000\228\000\000\000\000\000o\000i\000\000\000\000\000\000\000\000\000\000\000\152\000\000\000\000\000j\000\000\000i\000\000\000\000\000\000\001\215\002u\000\\\000\000\002\142\001\216\000e\000\000\000\000\001\217\000\155\000\156\000\158\000\159\001\218\000-\000\000\000\228\000k\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\160\000\165\000\000\000\166\000\000\000\000\000\138\000^\000^\000\000\000\000\002w\001\001\000_\000\000\002x\000\000\000`\000\\\000\000\000\000\000\000\000q\000\000\000\000\000\152\001\n\000m\000j\000\000\000\000\000\139\000\000\000-\000\000\000\140\000\152\000\000\000\000\000j\000\000\000o\000i\000\171\000\155\000\218\000\158\000\159\001\001\000\000\000\000\000\000\000k\000\000\000\000\000\155\001\189\000\158\000\159\000\000\000\000\000^\001\012\000k\000\000\000\000\000_\000\000\000\000\000\000\000`\000\160\000\165\000\000\000\166\000\000\000\000\000\138\000\000\000\000\000\000\000\000\000\160\000\165\000\000\000\166\000\000\001U\000\138\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000m\000\000\000\000\001O\000\139\000\000\000\000\000\000\000\140\000\\\002\133\000m\000\000\000e\000o\000\139\000\171\000\000\000\000\000\140\000\000\000\152\000-\002\134\000j\000o\000\000\000\171\000\000\000\000\000\000\000\000\000\\\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\155\002D\000\158\000\159\000\000\000-\000\000\000\\\000k\000\000\000\000\000q\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\160\000\165\000\000\000\166\000\000\000\000\000\138\000\000\000^\001@\000j\000\000\000\000\000_\000\000\000\000\000\000\000`\000\211\000i\000\238\001P\000\000\000^\000\000\002\164\000\000\000m\000_\000\000\000\000\000\139\000`\000\000\000k\000\140\000\\\000\000\000\000\002\171\000e\000o\000i\000\171\000\000\000\000\000\000\000\000\001[\000-\001\\\000\000\000\000\001X\000\000\000\160\001Y\000i\000\166\000\\\000\000\000^\000\000\000e\000\213\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000-\000\000\000\000\000\000\000\000\000\000\000\000\000^\000m\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000x\000\227\000\152\000\000\000\000\000j\000\000\000\\\000^\000\000\000\000\000g\000\000\000_\000\000\000\000\000\000\000`\000\000\000i\000\000\000\155\002|\000\158\000\159\000\152\000\000\000\000\000j\000k\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000j\000\155\003$\000\158\000\159\000\160\000\165\000^\000\166\000k\000\000\000\138\000_\000\000\000\\\000\000\000`\000\000\000e\000\000\001#\001%\000\000\000\000\000k\000\000\000\000\000-\000\160\000\165\000\000\000\166\000m\000\000\000\138\000\000\000\139\000\000\000\228\000-\000\140\000i\000\000\000\000\000\000\000\000\000o\000\000\000\171\000\000\000\000\000\000\000\000\000\152\000\000\000m\000j\000^\000\000\000\139\000\000\000\000\000_\000\140\0043\000\000\000`\000\000\000\000\000o\000m\000\171\000\155\003\216\000\158\000\159\000\152\000\000\000\000\000j\000k\000\000\000\000\000\000\000z\000\000\001\000\000\000\000\000\000\000\000\000\000i\000\000\001U\000\000\000\000\000\000\000\000\000\188\000\160\000\165\000\000\000\166\000k\000\000\000\138\001\001\001O\000\000\000\000\000\000\001\002\000\000\000\000\000\000\001\003\001\182\001\205\000-\000\000\001\004\000j\000\160\001'\000\000\000\166\000m\000\000\000\138\000\000\000\139\000\000\000\000\000\\\000\140\003H\000\000\000e\000\000\000\000\000o\000\000\000\171\000\000\000\000\000k\000-\000\000\000\000\000m\000\000\000\000\000\000\000\139\000\000\000\000\000\\\000\140\000\000\002A\000e\001\184\000\000\000o\000\000\001\185\000\000\000\000\000\152\000-\000l\000j\001U\000\000\000\000\000\000\000^\000\000\000\000\000\000\001@\000_\000\000\000\000\000\000\000`\001O\000\173\000\000\000\000\000\159\000m\001P\000\000\000\000\000k\000\240\000\000\000\000\000^\000\000\000\000\000\000\000\000\000_\000o\000\000\000\000\000`\003N\000i\000\000\000\000\001\210\000\160\000\165\000\000\000\166\000\\\001[\000\138\001a\000e\000\000\001X\000\000\000\160\001Y\000\000\000\166\000\000\000-\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\139\000\000\000\000\000\000\000\140\002B\000\000\000\000\000\000\000\000\000o\000\000\000\171\000\000\001@\001\198\000^\000\000\000\000\000\000\002G\000_\000\000\000\000\002H\000`\001P\000\000\001\199\000\000\000\\\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\000\000\000\000\000\003P\000\152\000-\000\000\000j\000\000\000\000\000\000\000\000\000i\000\000\000\000\001[\000\000\001\137\000\000\002L\001X\000\000\000\160\001Y\000\000\000\166\000\183\000\152\000\000\000\000\000j\000k\000\\\000\000\000\000\000^\000g\001\214\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\195\000\160\001-\000\000\000\166\000k\000\\\000\138\001\215\000\000\000e\000\000\000\000\001\216\000\000\000\000\000\000\001\217\000\000\000-\000i\000\000\001\218\000\000\000\160\000\197\000^\000\166\000m\000\000\000\138\000_\000\139\000\000\000\000\000`\000\140\000\000\000\000\000\000\000\152\000\000\000o\000j\000\000\000\000\000\000\000\000\000\000\000^\000\000\000m\000\000\000\000\000_\000\139\000\000\000\000\000`\000\140\000i\000\000\000\195\000\000\000\\\000o\000\000\000k\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000-\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000\160\000\234\000\000\000\166\000\000\000\000\000\138\000\000\000\000\000\000\000\000\000\152\000\000\000\000\000j\000\000\000\000\000\000\000\000\000\000\000\000\000^\000\000\000\000\000\000\000\000\000_\000m\000\000\000\000\000`\000\139\000\000\000\183\000\000\000\140\000\000\000\000\000k\000\000\000\000\000o\001\182\001\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000j\000i\000\000\000\160\0016\000\000\000\166\002:\003Q\000\138\000\\\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\000\000\000\000\152\000\000\000\000\000j\000k\000\000\000\000\000\000\000\000\000\000\000m\002A\000\000\001\184\000\139\000\000\000\000\001\185\000\140\000\000\000\000\000\000\001\165\000\000\000o\001\182\001\205\000k\000\000\000l\000\000\000\000\000\000\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\002:\003G\000\160\001\167\000\000\000\166\000m\000\000\000\138\002!\000\000\000\242\000\000\000\000\000\152\000\000\000\000\000j\000\000\000\000\000o\000\000\000\000\000i\002A\000\000\001\184\001\182\001\205\000m\001\185\000\000\000\000\000\139\000\000\000\000\001\165\000\140\000\000\001\182\001\203\000k\000\000\000o\000\000\000\000\002:\002;\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\001\205\000\000\002B\000\000\000\160\001\250\000\000\000\166\000\000\000\000\000\138\000\000\001\198\000\000\002A\000\000\001\184\002G\002:\002F\001\185\002H\000\000\000\000\000\000\001\199\000^\000\000\001\184\000\000\000\000\000m\001\185\000\000\000\000\000\139\000\000\000\\\002J\000\140\000\000\000e\002A\000\000\001\184\000o\000\000\000j\001\185\000\000\000\000\000\000\000\000\000\000\002L\000\000\000\000\000\000\000\000\002B\000\\\000\000\000\000\000\000\000e\000\000\000\137\000\000\000\000\001\198\000\000\000k\001\214\000-\002G\000\000\000\000\000\000\002H\000\000\000^\000\000\001\199\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\001\215\000\000\000\000\002J\000\138\001\216\000\000\000\000\002#\001\217\000\000\000^\000\000\002B\001\218\000\000\000_\000\000\000\000\002L\000`\000\000\000i\001\198\000\211\000m\000\236\000\000\002G\000\139\000\\\000\000\002H\000\140\000e\001\198\001\199\001\214\000\000\000o\000\000\002B\000\000\000-\000\000\000i\000\000\000\000\001\199\002J\000\000\001\198\000\000\000\000\000\000\000\000\002G\001\215\000\000\000\000\002H\000\000\001\216\000\000\001\199\002L\001\217\000^\000\000\000\000\000\213\001\218\000\000\000^\000\214\001\182\001\203\002J\000_\000\000\000\000\000\000\000`\001\214\000\000\000\000\000\000\000\000\000\000\000\000\001\182\001\205\000\000\002L\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\227\000j\001\215\000\000\000\000\000\000\000i\001\216\002:\003S\001\214\001\217\000\000\000\000\001\215\000\000\001\218\000^\000\000\001\184\000\137\000\152\000\000\001\185\000j\000k\000\000\000\000\001\224\000\000\001\215\000\000\002A\000\000\001\184\001\216\000\000\000\000\001\185\001\217\000\000\000\000\000\000\002e\001\218\000\000\001\182\001\205\000k\000\000\000\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\182\001\205\000\000\000\000\000\000\000\000\000\000\002:\004\026\000\160\002g\000\000\000\166\000m\000\000\000\138\000\000\000\139\000\000\002:\004\028\000\140\000\228\000\000\000\000\000\152\000\000\000o\000j\000\000\000\000\002A\000\000\001\184\000\000\000\000\000m\001\185\000\000\000\000\000\139\000\000\000\000\002A\000\140\001\184\000\211\002e\000\236\001\185\000o\000\000\000k\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\198\000\000\001\182\001\205\000\000\002B\000\\\000\000\000\000\000\000\000e\000\160\002\140\001\199\000\166\001\198\000\000\000\138\000\000\000\000\002G\002:\004\030\000\000\002H\000\000\000\000\000\000\001\199\000^\001\001\000\000\000\213\000\000\000\000\000\000\000\214\000\000\000m\000\\\000\000\002J\000\139\000e\001\014\002A\000\140\001\184\000\000\000^\000\000\001\185\000o\000\000\000_\000\000\000\000\002L\000`\000\000\000\000\000\000\002B\000\227\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\198\000\000\002B\001\214\000\000\002G\000\000\000\000\001\215\002H\000^\000i\001\198\001\199\000\000\000_\000\000\002G\000\000\000`\000\000\002H\001\226\001\215\000\000\001\199\002J\000\000\001\216\000\000\000\000\000\000\001\217\000\000\000\000\000\000\000\000\001\218\002J\000\000\000\000\000\000\002L\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002L\000\\\000\000\000\000\000\000\000e\001\214\000\000\000\000\000-\002B\002b\000\000\000\000\000\000\000\000\000\000\000\228\001\214\000\000\001\198\000\000\000\000\000\000\000\000\002G\001\215\000\000\002\216\002H\000\000\001\216\000\000\001\199\000\000\001\217\002u\000j\001\215\002\142\001\218\000\000\000\000\001\216\000^\000\000\002J\001\217\000\000\000_\000\000\000\000\001\218\000`\000\\\000\000\002\156\000\000\000e\000\000\000\000\000k\002L\001U\000\000\000\\\000\000\000\000\000\000\000e\000j\000\000\000\000\000\000\000\000\000\000\000\000\001O\000i\000^\001\214\000\000\000\000\002w\000\000\001\001\000\138\002x\000\000\000\188\000\000\000\\\000\000\000\000\000k\000e\000\000\000^\000\000\001\016\001\215\000\000\000_\000\000\000\000\001\216\000`\000m\000^\001\217\000\000\000\139\000\000\000_\001\218\000\140\000\000\000`\000\\\000\138\000\000\000o\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000^\000\000\000\000\000\000\000\000\000_\000m\000\000\000i\000`\000\139\000\000\000\000\000\000\000\140\002\154\001@\000\000\000\000\000\000\000o\000\000\000\000\000\000\000j\000\000\000\\\000^\001P\000\000\000e\000\000\000_\000\000\000i\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\000\002\156\000\000\000\000\002\133\000\000\000k\000\000\000\000\000\000\000\\\000\000\000\000\001[\000e\002W\000\000\002\134\001X\000i\000\160\001Y\000\000\000\166\000\000\000\000\002\233\000^\000\000\000\000\000\000\000\138\000_\000\000\000\000\000j\000`\002\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000j\000\000\000\000\000\000\000\000\000\000\000m\000^\002\156\000\000\000\139\000\000\000_\000k\000\140\000i\000`\002\253\000\000\002\156\000o\000\000\000\000\000\000\000k\000\000\000j\000\000\000\\\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\000\000\000\000\138\000\\\002\164\000i\000\000\000e\003\n\002\156\000\000\000\000\000\000\000\138\000k\000\000\000\000\000j\002\173\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\139\000\000\000\\\000\000\000\140\000\000\000e\000m\000^\002\156\000o\000\139\000\138\000_\000k\000\140\000\000\000`\000\\\000^\000\000\000o\000e\003\025\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000j\000m\000\000\000\000\000\000\000\139\000\000\000\138\000\\\000\140\000i\000\000\000e\000^\000\000\000o\000\000\0030\000_\002\156\000\000\000i\000`\000\000\000k\000\000\000j\000\000\000m\000^\000\000\000\000\000\139\000\000\000_\000\000\000\140\000\000\000`\000\\\000\000\000\000\000o\000e\000\000\002\156\000\000\000i\000\000\000\138\000k\000^\000\000\000\000\000\000\000\\\000_\000\000\000\000\000e\000`\000\000\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\139\000\138\000\000\000\000\000\140\000\000\000\000\0038\000^\000\000\000o\000i\000\000\000_\000\000\000\000\000j\000`\003\162\000\000\000\000\000\000\000m\000\000\000^\000\000\000\139\000j\000\000\000_\000\140\000\000\000\000\000`\000\000\002\156\000o\000\\\000\000\000\000\000k\000e\000i\000\000\003\174\000\000\002\156\000\000\000\000\000\000\000\000\000k\000\000\000j\000\000\000\000\000\000\000\000\000i\000\000\003\180\000\000\000\000\000\000\000\000\000\138\000\000\000\000\000\000\000j\000\000\000\000\002\156\000\000\000\000\000\000\000\138\000k\000\000\000\000\000^\000\000\003\187\000\000\000\000\000_\000m\000\000\002\156\000`\000\139\000j\000\000\000k\000\140\000\000\000\000\000m\000\000\000\000\000o\000\139\000\138\000\000\000\000\000\140\000\211\000\000\000\236\000\000\002\156\000o\000\\\003\196\000i\000k\000e\000\000\000\138\000\000\000\000\000\000\000j\000m\000\\\000\000\000\000\000\139\000e\003\210\000\000\000\140\000\000\000\000\000-\000\000\005\007\000o\000j\000m\000\138\002\156\000\000\000\139\000\000\000\000\000k\000\140\000\000\000^\000\000\000\000\000\213\000o\000\000\000^\000\214\002\156\000\000\000\000\000_\000m\000k\000\000\000`\000\139\000\000\000^\000\000\000\140\000\000\000\138\000_\000\000\000\000\000o\000`\000\000\000\000\000\000\000\\\000\000\000\000\000\227\000e\003\224\000\000\000\138\001U\000i\000\000\000\000\000m\000\\\000j\000\000\000\139\000e\000\000\000\000\000\140\000i\001O\000\000\000\000\005j\000o\000\000\000m\000\000\000\000\000\000\000\139\002\156\000\000\000\000\000\140\000\000\000k\000\000\000\000\000\000\000o\000^\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\211\000\000\000\236\000^\001\182\001\203\000\000\000\000\000_\000\000\000\138\000\000\000`\000\\\000\000\000\000\000\\\000e\000\000\000\000\000e\000\000\000\000\000\000\000i\000\000\000\000\003\231\000\\\000\000\000\228\000m\000e\000\000\000\000\000\139\000j\000i\000\000\000\140\000\000\000\000\001@\000^\000\000\000o\000\213\000^\000j\001\184\000\214\000\000\000\000\001\185\001P\002\156\000^\000\000\000\000\000^\000k\000_\000\000\000\000\000_\000`\000\000\005\020\000`\000\000\000\000\000^\000k\000\000\000\000\000\000\000_\000\227\000\000\000\000\000`\001[\000\000\002\229\000\000\000\138\001X\000\000\000\160\001Y\000i\000\166\000\\\000i\000\000\000\\\000e\000\138\001\001\000e\000\000\000\000\000\000\000\000\000j\000i\000m\000\\\000\000\000\000\000\139\000e\001\018\000\000\000\140\000\000\000\000\000j\000m\000\000\000o\000\000\000\139\0010\000\000\000\000\000\140\000\000\000k\000\000\000\000\000\000\000o\000\000\000\000\000^\005\020\000\000\000^\000\000\000_\000k\000\000\000_\000`\000\000\000\000\000`\001\198\000\000\000^\000\000\000\000\000\138\000\000\000_\000\000\000\228\000\000\000`\000\000\001\199\000\000\000\000\000\\\000\000\000\138\000\000\000e\000i\000j\000\000\000i\000j\000m\000\000\000\000\000\000\000\139\000\000\000\000\000\000\000\140\000\000\000i\000j\000\000\000m\000o\000\175\000\000\000\139\000\190\000\000\000k\000\140\000\000\000k\000\000\000\000\000\000\000o\000\000\000\000\000\221\000\000\000\000\000^\000\000\000k\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\138\000\000\000\000\000\138\000\000\000\000\001\001\000\000\000\\\001\215\000\000\000\000\000e\000\000\000\000\000\138\000\211\000\000\000\236\000\000\001\020\000m\000i\001\228\000m\000\139\000\000\000\000\000\139\000\140\000j\000\000\000\140\000j\000\000\000o\000m\000\000\000o\000\000\000\139\000\000\000\000\000\000\000\140\000j\000\000\000\000\000\000\000\250\000o\000^\001\152\000\000\000k\000\000\000_\000k\000\000\000^\000`\000\000\000\213\000\000\001\156\000\000\000\214\000\000\000\000\000k\000\\\000\000\000\000\000\000\000e\000\000\000\000\000\000\000\000\000\138\000\000\000\000\000\138\000\000\000\000\000i\000\000\000\\\000\000\000\000\000\000\000e\000\000\000\227\000\138\000\000\000\000\000\000\000\000\000\000\000m\000\000\000j\000m\000\139\000\000\000\000\000\139\000\140\002u\000\000\000\140\002\142\000^\000o\000m\000\000\000o\000_\000\139\000\000\001\192\000`\000\140\000\000\000\000\000k\000\\\000\000\000o\000^\000e\000\000\000\000\000\000\000_\000\000\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\\\000\000\000i\000\000\000e\000\000\000\138\002A\000\000\000\000\000\000\002w\000\000\000\000\000\000\002x\000\000\000\000\000\\\000i\000j\002u\000e\000\000\002\142\000^\000\000\000m\000\228\000\000\000_\000\139\000\000\000\000\000`\000\140\000\000\000\000\000\000\001\255\000\000\000o\000\000\000^\000k\000\\\000\000\000\000\000_\000e\000\000\000\000\000`\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000^\000\000\000\000\000^\000\000\000_\000\000\002w\000\138\000`\000\000\002x\000\000\000\000\000\000\000\\\000i\000\000\000\000\000e\000\000\000j\000\000\000\000\000\000\002u\000\000\000^\002\142\000m\000\000\000\000\000_\000\139\000i\001\001\000`\000\140\000j\000\000\002\023\000\000\000\\\000o\000\000\000k\000g\002\133\000\000\001\022\002\160\000\000\000\000\000\000\000\000\000\\\002\161\002>\000^\000g\002\134\000i\000k\000_\000\000\000\000\000\000\000`\000^\000\000\000\138\000\000\002w\000\000\000\000\000\000\002x\000\000\000j\000\000\000\000\000\000\000\000\000\000\000\000\000^\000\000\000\138\000\000\000\000\000_\000m\000i\000\000\000`\000\139\000j\002\127\000^\000\140\000\000\000\000\000k\000_\002\133\000o\000\000\000`\000m\000\000\002u\000\000\000\139\002\142\000j\002\145\000\140\002\134\000\000\000i\000k\000\000\000o\000\000\000\000\000\000\000\000\000\138\002u\002\164\000\000\002\142\000i\002\147\000\000\000-\000\000\000\000\000k\000-\000\000\000j\000\000\002\165\000\000\000\138\000\000\000\000\000m\000\000\000-\000\000\000\139\002A\000\000\000\000\000\140\002w\000\000\000-\003\150\002x\000o\000\138\000\000\000k\000m\000\000\000\000\002\133\000\139\002A\000j\000\000\000\140\002w\000\000\000\000\000\000\002x\000o\000\000\002\134\000\000\000m\000\000\002\164\000\000\000\139\001U\000\138\003\254\000\140\001U\000\000\000\000\000k\000\000\000o\000j\002\175\000\000\000\000\001O\001U\000\000\000\000\001O\000\000\000\000\000-\000m\000j\001U\000\000\000\139\000\000\000\000\001O\000\140\000\000\000\138\000\000\000k\000\000\000o\000\000\001O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\139\000\000\000l\000\000\000\140\002\164\000\000\000\000\002\133\000\000\000o\002\163\000\000\000\000\000\000\000l\000\000\002\161\001U\002\177\000\\\002\134\000\000\000m\000q\000\000\002\133\000\000\001\207\002\212\001@\000\000\001O\000\000\001@\002\161\000m\000o\000\000\002\134\000\000\001\209\001P\000\000\000\000\001@\001P\000\000\000\000\000\000\000o\000\000\000\000\000\000\001@\000\000\000\000\001P\000\000\000\000\000\000\000\000\000\000\000^\000\000\000\000\001P\000\000\000_\001[\000\000\002\240\000`\001[\001X\003\021\000\160\001Y\001X\000\166\000\160\001Y\000\000\000\166\001[\000\000\003+\000\000\000\000\001X\002\164\000\160\001Y\001[\000\166\003\170\000\000\000i\001X\000\000\000\160\001Y\000\000\000\166\002\165\001@\000\000\000\\\002\164\000\000\000\\\000q\000\000\000\000\000q\000\000\000\000\001P\000\000\000\000\000\\\000\000\002\165\000\\\000q\000\000\000\\\000q\000\000\000\000\000q\000\000\000\000\000\\\000\000\000\000\000\000\000q\000\000\000\000\000\000\000\000\000\000\000\\\001[\000\000\003\206\000q\000\000\001X\000^\000\160\001Y\000^\000\166\000_\000\000\000\000\000_\000`\000\000\000\000\000`\000^\000\000\000\211\000^\000\236\000_\000^\000\000\000_\000`\000\000\000_\000`\000^\000j\000`\001\182\001\203\000_\000\000\000\000\000i\000`\000^\000i\000\211\000\000\000\236\000_\000\000\000\000\000\000\000`\000\000\000i\000\000\000\000\000i\000k\000\000\000i\000\000\000\211\000\000\000\236\000^\000\000\000i\000\213\000\000\000\000\000\000\000\214\000\211\000\000\000\236\000\000\000i\000\000\000^\000\000\001\184\001\182\001\203\000\000\001\185\000\000\000\000\000^\000\000\000\000\000\213\000\000\001\182\001\203\000\214\000\000\000\000\000\000\000\227\000\000\000\000\000\000\000\000\000m\000^\000\000\000\000\000\213\000\000\001\182\001\203\000\214\000\000\000\000\000\000\000^\000\000\000|\000\213\000\000\000j\000\227\000\214\000j\000^\000\000\001\184\000\000\001\182\001\203\001\185\000\000\000\000\000j\000\000\000^\000j\001\184\000\227\000j\000\000\001\185\000\000\000\000\000k\000\000\000j\000k\000\000\000\227\000\000\000\000\000^\000\000\001\184\000\000\000j\000k\001\185\000\000\000k\000\000\000\000\000k\000\000\001\182\001\203\000\000\000\000\000\000\000k\000^\000\000\001\184\000\000\000\000\000\000\001\185\000\228\001\198\000k\002u\000\000\000\000\002\142\000\000\000\000\000\000\001\182\001\203\000m\000\000\001\199\000m\000\000\000\000\001\182\001\203\000\000\000\000\000\000\000\228\000\000\000m\000~\000\000\000m\000\128\000^\000m\001\184\000\000\000\000\000\000\001\185\000\000\000m\000\130\000\228\000\000\000\132\000\000\000\000\000\142\000^\001\198\000m\000\000\002w\000\228\000\144\000^\002x\001\184\000\000\000\000\001\198\001\185\001\199\000^\000\146\001\184\000\000\000\000\002u\001\185\001\001\002\142\000\000\001\199\000\000\002u\000\000\001\198\002\142\000\000\000\000\000\000\000\000\001\215\001\024\002u\000\000\000\000\002\142\000\000\001\199\002u\000\000\001\001\002\142\000\000\001\198\001\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\030\000\000\001\199\001\001\000^\000\000\000\000\000\000\002w\000\000\000\000\000^\002x\000\000\001\001\002w\000\000\001 \000\000\002x\002u\000^\001\215\002\142\000\000\002w\001\198\000^\001\"\002x\000\000\002w\000\000\001\215\000\000\002x\001\232\000\000\002u\001\199\000\000\002\142\002\133\000\000\000\000\000\000\000\000\001\234\000\000\001\198\001\215\000\000\000\000\000\000\000\000\002\134\000\000\001\198\000\000\000\000\000\000\000\000\001\199\000^\001\236\000\000\000\000\002w\000\000\001\215\001\199\002x\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000^\000\000\001\238\000\000\002w\000\000\000\000\000\000\002x\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\133\001\215\000\000\000\000\000\000\000\000\000\000\002\133\000\000\000\000\000\000\000\000\000\000\002\134\000\000\001\244\000\000\002\133\000\000\002\164\002\134\000\000\000\000\002\133\001\215\000\000\000\000\000\000\000\000\000\000\002\134\000\000\001\215\002\179\000\000\000\000\002\134\000\000\001\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000\000\000\000\002\133\000\000\000\000\000\000\000\000\002\164\000\000\000\000\000\000\000\000\000\000\000\000\002\164\002\134\000\000\000\000\000\000\000\000\000\000\002\181\000\000\000\000\002\164\000\000\000\000\000\000\002\183\000\000\002\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\185\000\000\000\000\000\000\000\000\000\000\002\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\189\000\000\000\000\000\000\002\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\191"))
1316
1317 let semantic_action =
1318 [|
1319 (fun _menhir_env ->
1320 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1321 let {
1322 MenhirLib.EngineTypes.state = _menhir_s;
1323 MenhirLib.EngineTypes.semv = _1;
1324 MenhirLib.EngineTypes.startp = _startpos__1_;
1325 MenhirLib.EngineTypes.endp = _endpos__1_;
1326 MenhirLib.EngineTypes.next = _menhir_stack;
1327 } = _menhir_stack in
1328 raise (MenhirLib.TableInterpreter.Accept _1));
1329 (fun _menhir_env ->
1330 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1331 let {
1332 MenhirLib.EngineTypes.state = _menhir_s;
1333 MenhirLib.EngineTypes.semv = _1;
1334 MenhirLib.EngineTypes.startp = _startpos__1_;
1335 MenhirLib.EngineTypes.endp = _endpos__1_;
1336 MenhirLib.EngineTypes.next = _menhir_stack;
1337 } = _menhir_stack in
1338 raise (MenhirLib.TableInterpreter.Accept _1));
1339 (fun _menhir_env ->
1340 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1341 let {
1342 MenhirLib.EngineTypes.state = _menhir_s;
1343 MenhirLib.EngineTypes.semv = _1;
1344 MenhirLib.EngineTypes.startp = _startpos__1_;
1345 MenhirLib.EngineTypes.endp = _endpos__1_;
1346 MenhirLib.EngineTypes.next = _menhir_stack;
1347 } = _menhir_stack in
1348 raise (MenhirLib.TableInterpreter.Accept _1));
1349 (fun _menhir_env ->
1350 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1351 let {
1352 MenhirLib.EngineTypes.state = _menhir_s;
1353 MenhirLib.EngineTypes.semv = _1;
1354 MenhirLib.EngineTypes.startp = _startpos__1_;
1355 MenhirLib.EngineTypes.endp = _endpos__1_;
1356 MenhirLib.EngineTypes.next = _menhir_stack;
1357 } = _menhir_stack in
1358 raise (MenhirLib.TableInterpreter.Accept _1));
1359 (fun _menhir_env ->
1360 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1361 let {
1362 MenhirLib.EngineTypes.state = _menhir_s;
1363 MenhirLib.EngineTypes.semv = _1;
1364 MenhirLib.EngineTypes.startp = _startpos__1_;
1365 MenhirLib.EngineTypes.endp = _endpos__1_;
1366 MenhirLib.EngineTypes.next = _menhir_stack;
1367 } = _menhir_stack in
1368 raise (MenhirLib.TableInterpreter.Accept _1));
1369 (fun _menhir_env ->
1370 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1371 let {
1372 MenhirLib.EngineTypes.state = _menhir_s;
1373 MenhirLib.EngineTypes.semv = _1;
1374 MenhirLib.EngineTypes.startp = _startpos__1_;
1375 MenhirLib.EngineTypes.endp = _endpos__1_;
1376 MenhirLib.EngineTypes.next = _menhir_stack;
1377 } = _menhir_stack in
1378 raise (MenhirLib.TableInterpreter.Accept _1));
1379 (fun _menhir_env ->
1380 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1381 let {
1382 MenhirLib.EngineTypes.state = _menhir_s;
1383 MenhirLib.EngineTypes.semv = _1;
1384 MenhirLib.EngineTypes.startp = _startpos__1_;
1385 MenhirLib.EngineTypes.endp = _endpos__1_;
1386 MenhirLib.EngineTypes.next = _menhir_stack;
1387 } = _menhir_stack in
1388 raise (MenhirLib.TableInterpreter.Accept _1));
1389 (fun _menhir_env ->
1390 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1391 let {
1392 MenhirLib.EngineTypes.state = _menhir_s;
1393 MenhirLib.EngineTypes.semv = _1;
1394 MenhirLib.EngineTypes.startp = _startpos__1_;
1395 MenhirLib.EngineTypes.endp = _endpos__1_;
1396 MenhirLib.EngineTypes.next = _menhir_stack;
1397 } = _menhir_stack in
1398 raise (MenhirLib.TableInterpreter.Accept _1));
1399 (fun _menhir_env ->
1400 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1401 let {
1402 MenhirLib.EngineTypes.state = _menhir_s;
1403 MenhirLib.EngineTypes.semv = _1;
1404 MenhirLib.EngineTypes.startp = _startpos__1_;
1405 MenhirLib.EngineTypes.endp = _endpos__1_;
1406 MenhirLib.EngineTypes.next = _menhir_stack;
1407 } = _menhir_stack in
1408 raise (MenhirLib.TableInterpreter.Accept _1));
1409 (fun _menhir_env ->
1410 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1411 let {
1412 MenhirLib.EngineTypes.state = _menhir_s;
1413 MenhirLib.EngineTypes.semv = _1;
1414 MenhirLib.EngineTypes.startp = _startpos__1_;
1415 MenhirLib.EngineTypes.endp = _endpos__1_;
1416 MenhirLib.EngineTypes.next = _menhir_stack;
1417 } = _menhir_stack in
1418 raise (MenhirLib.TableInterpreter.Accept _1));
1419 (fun _menhir_env ->
1420 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1421 let {
1422 MenhirLib.EngineTypes.state = _menhir_s;
1423 MenhirLib.EngineTypes.semv = _1;
1424 MenhirLib.EngineTypes.startp = _startpos__1_;
1425 MenhirLib.EngineTypes.endp = _endpos__1_;
1426 MenhirLib.EngineTypes.next = _menhir_stack;
1427 } = _menhir_stack in
1428 raise (MenhirLib.TableInterpreter.Accept _1));
1429 (fun _menhir_env ->
1430 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1431 let {
1432 MenhirLib.EngineTypes.state = _menhir_s;
1433 MenhirLib.EngineTypes.semv = _1;
1434 MenhirLib.EngineTypes.startp = _startpos__1_;
1435 MenhirLib.EngineTypes.endp = _endpos__1_;
1436 MenhirLib.EngineTypes.next = _menhir_stack;
1437 } = _menhir_stack in
1438 raise (MenhirLib.TableInterpreter.Accept _1));
1439 (fun _menhir_env ->
1440 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1441 let {
1442 MenhirLib.EngineTypes.state = _menhir_s;
1443 MenhirLib.EngineTypes.semv = _1;
1444 MenhirLib.EngineTypes.startp = _startpos__1_;
1445 MenhirLib.EngineTypes.endp = _endpos__1_;
1446 MenhirLib.EngineTypes.next = _menhir_stack;
1447 } = _menhir_stack in
1448 raise (MenhirLib.TableInterpreter.Accept _1));
1449 (fun _menhir_env ->
1450 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1451 let {
1452 MenhirLib.EngineTypes.state = _menhir_s;
1453 MenhirLib.EngineTypes.semv = _1;
1454 MenhirLib.EngineTypes.startp = _startpos__1_;
1455 MenhirLib.EngineTypes.endp = _endpos__1_;
1456 MenhirLib.EngineTypes.next = _menhir_stack;
1457 } = _menhir_stack in
1458 let _1 : 'tv_eexpr = Obj.magic _1 in
1459 let _startpos = _startpos__1_ in
1460 let _endpos = _endpos__1_ in
1461 let _v : 'tv_aexpr =
1462 # 1656 "parser_cocci_menhir.mly"
1463 ( Ast0.set_arg_exp _1 )
1464 # 1465 "parser_cocci_menhir.ml"
1465 in
1466 _menhir_env.MenhirLib.EngineTypes.stack <- {
1467 MenhirLib.EngineTypes.state = _menhir_s;
1468 MenhirLib.EngineTypes.semv = Obj.repr _v;
1469 MenhirLib.EngineTypes.startp = _startpos;
1470 MenhirLib.EngineTypes.endp = _endpos;
1471 MenhirLib.EngineTypes.next = _menhir_stack;
1472 });
1473 (fun _menhir_env ->
1474 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1475 let {
1476 MenhirLib.EngineTypes.state = _menhir_s;
1477 MenhirLib.EngineTypes.semv = _1;
1478 MenhirLib.EngineTypes.startp = _startpos__1_;
1479 MenhirLib.EngineTypes.endp = _endpos__1_;
1480 MenhirLib.EngineTypes.next = _menhir_stack;
1481 } = _menhir_stack in
1482 let _1 : (
1483 # 65 "parser_cocci_menhir.mly"
1484 (Parse_aux.list_info)
1485 # 1486 "parser_cocci_menhir.ml"
1486 ) = Obj.magic _1 in
1487 let _startpos = _startpos__1_ in
1488 let _endpos = _endpos__1_ in
1489 let _v : 'tv_aexpr =
1490 # 1658 "parser_cocci_menhir.mly"
1491 ( let (nm,lenname,pure,clt) = _1 in
1492 let nm = P.clt2mcode nm clt in
1493 let lenname =
1494 match lenname with
1495 Some nm -> Some(P.clt2mcode nm clt)
1496 | None -> None in
1497 Ast0.wrap(Ast0.MetaExprList(nm,lenname,pure)) )
1498 # 1499 "parser_cocci_menhir.ml"
1499 in
1500 _menhir_env.MenhirLib.EngineTypes.stack <- {
1501 MenhirLib.EngineTypes.state = _menhir_s;
1502 MenhirLib.EngineTypes.semv = Obj.repr _v;
1503 MenhirLib.EngineTypes.startp = _startpos;
1504 MenhirLib.EngineTypes.endp = _endpos;
1505 MenhirLib.EngineTypes.next = _menhir_stack;
1506 });
1507 (fun _menhir_env ->
1508 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1509 let {
1510 MenhirLib.EngineTypes.state = _menhir_s;
1511 MenhirLib.EngineTypes.semv = _1;
1512 MenhirLib.EngineTypes.startp = _startpos__1_;
1513 MenhirLib.EngineTypes.endp = _endpos__1_;
1514 MenhirLib.EngineTypes.next = _menhir_stack;
1515 } = _menhir_stack in
1516 let _1 : 'tv_ctype = Obj.magic _1 in
1517 let _startpos = _startpos__1_ in
1518 let _endpos = _endpos__1_ in
1519 let _v : 'tv_aexpr =
1520 # 1666 "parser_cocci_menhir.mly"
1521 ( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) )
1522 # 1523 "parser_cocci_menhir.ml"
1523 in
1524 _menhir_env.MenhirLib.EngineTypes.stack <- {
1525 MenhirLib.EngineTypes.state = _menhir_s;
1526 MenhirLib.EngineTypes.semv = Obj.repr _v;
1527 MenhirLib.EngineTypes.startp = _startpos;
1528 MenhirLib.EngineTypes.endp = _endpos;
1529 MenhirLib.EngineTypes.next = _menhir_stack;
1530 });
1531 (fun _menhir_env ->
1532 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1533 let {
1534 MenhirLib.EngineTypes.state = _menhir_s;
1535 MenhirLib.EngineTypes.startp = _startpos__1_;
1536 MenhirLib.EngineTypes.endp = _endpos__1_;
1537 MenhirLib.EngineTypes.next = _menhir_stack;
1538 } = _menhir_stack in
1539 let _startpos = _startpos__1_ in
1540 let _endpos = _endpos__1_ in
1541 let _v : 'tv_any_strict =
1542 # 1712 "parser_cocci_menhir.mly"
1543 ( Ast.WhenAny )
1544 # 1545 "parser_cocci_menhir.ml"
1545 in
1546 _menhir_env.MenhirLib.EngineTypes.stack <- {
1547 MenhirLib.EngineTypes.state = _menhir_s;
1548 MenhirLib.EngineTypes.semv = Obj.repr _v;
1549 MenhirLib.EngineTypes.startp = _startpos;
1550 MenhirLib.EngineTypes.endp = _endpos;
1551 MenhirLib.EngineTypes.next = _menhir_stack;
1552 });
1553 (fun _menhir_env ->
1554 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1555 let {
1556 MenhirLib.EngineTypes.state = _menhir_s;
1557 MenhirLib.EngineTypes.startp = _startpos__1_;
1558 MenhirLib.EngineTypes.endp = _endpos__1_;
1559 MenhirLib.EngineTypes.next = _menhir_stack;
1560 } = _menhir_stack in
1561 let _startpos = _startpos__1_ in
1562 let _endpos = _endpos__1_ in
1563 let _v : 'tv_any_strict =
1564 # 1713 "parser_cocci_menhir.mly"
1565 ( Ast.WhenStrict )
1566 # 1567 "parser_cocci_menhir.ml"
1567 in
1568 _menhir_env.MenhirLib.EngineTypes.stack <- {
1569 MenhirLib.EngineTypes.state = _menhir_s;
1570 MenhirLib.EngineTypes.semv = Obj.repr _v;
1571 MenhirLib.EngineTypes.startp = _startpos;
1572 MenhirLib.EngineTypes.endp = _endpos;
1573 MenhirLib.EngineTypes.next = _menhir_stack;
1574 });
1575 (fun _menhir_env ->
1576 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1577 let {
1578 MenhirLib.EngineTypes.state = _menhir_s;
1579 MenhirLib.EngineTypes.startp = _startpos__1_;
1580 MenhirLib.EngineTypes.endp = _endpos__1_;
1581 MenhirLib.EngineTypes.next = _menhir_stack;
1582 } = _menhir_stack in
1583 let _startpos = _startpos__1_ in
1584 let _endpos = _endpos__1_ in
1585 let _v : 'tv_any_strict =
1586 # 1714 "parser_cocci_menhir.mly"
1587 ( Ast.WhenForall )
1588 # 1589 "parser_cocci_menhir.ml"
1589 in
1590 _menhir_env.MenhirLib.EngineTypes.stack <- {
1591 MenhirLib.EngineTypes.state = _menhir_s;
1592 MenhirLib.EngineTypes.semv = Obj.repr _v;
1593 MenhirLib.EngineTypes.startp = _startpos;
1594 MenhirLib.EngineTypes.endp = _endpos;
1595 MenhirLib.EngineTypes.next = _menhir_stack;
1596 });
1597 (fun _menhir_env ->
1598 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1599 let {
1600 MenhirLib.EngineTypes.state = _menhir_s;
1601 MenhirLib.EngineTypes.startp = _startpos__1_;
1602 MenhirLib.EngineTypes.endp = _endpos__1_;
1603 MenhirLib.EngineTypes.next = _menhir_stack;
1604 } = _menhir_stack in
1605 let _startpos = _startpos__1_ in
1606 let _endpos = _endpos__1_ in
1607 let _v : 'tv_any_strict =
1608 # 1715 "parser_cocci_menhir.mly"
1609 ( Ast.WhenExists )
1610 # 1611 "parser_cocci_menhir.ml"
1611 in
1612 _menhir_env.MenhirLib.EngineTypes.stack <- {
1613 MenhirLib.EngineTypes.state = _menhir_s;
1614 MenhirLib.EngineTypes.semv = Obj.repr _v;
1615 MenhirLib.EngineTypes.startp = _startpos;
1616 MenhirLib.EngineTypes.endp = _endpos;
1617 MenhirLib.EngineTypes.next = _menhir_stack;
1618 });
1619 (fun _menhir_env ->
1620 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1621 let {
1622 MenhirLib.EngineTypes.state = _menhir_s;
1623 MenhirLib.EngineTypes.semv = _1;
1624 MenhirLib.EngineTypes.startp = _startpos__1_;
1625 MenhirLib.EngineTypes.endp = _endpos__1_;
1626 MenhirLib.EngineTypes.next = _menhir_stack;
1627 } = _menhir_stack in
1628 let _1 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1629 let _startpos = _startpos__1_ in
1630 let _endpos = _endpos__1_ in
1631 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1632 # 1190 "parser_cocci_menhir.mly"
1633 ( _1 )
1634 # 1635 "parser_cocci_menhir.ml"
1635 in
1636 _menhir_env.MenhirLib.EngineTypes.stack <- {
1637 MenhirLib.EngineTypes.state = _menhir_s;
1638 MenhirLib.EngineTypes.semv = Obj.repr _v;
1639 MenhirLib.EngineTypes.startp = _startpos;
1640 MenhirLib.EngineTypes.endp = _endpos;
1641 MenhirLib.EngineTypes.next = _menhir_stack;
1642 });
1643 (fun _menhir_env ->
1644 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1645 let {
1646 MenhirLib.EngineTypes.semv = _3;
1647 MenhirLib.EngineTypes.startp = _startpos__3_;
1648 MenhirLib.EngineTypes.endp = _endpos__3_;
1649 MenhirLib.EngineTypes.next = {
1650 MenhirLib.EngineTypes.semv = _2;
1651 MenhirLib.EngineTypes.startp = _startpos__2_;
1652 MenhirLib.EngineTypes.endp = _endpos__2_;
1653 MenhirLib.EngineTypes.next = {
1654 MenhirLib.EngineTypes.state = _menhir_s;
1655 MenhirLib.EngineTypes.semv = _1;
1656 MenhirLib.EngineTypes.startp = _startpos__1_;
1657 MenhirLib.EngineTypes.endp = _endpos__1_;
1658 MenhirLib.EngineTypes.next = _menhir_stack;
1659 };
1660 };
1661 } = _menhir_stack in
1662 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1663 let _2 : (
1664 # 98 "parser_cocci_menhir.mly"
1665 (Data.clt)
1666 # 1667 "parser_cocci_menhir.ml"
1667 ) = Obj.magic _2 in
1668 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1669 let _startpos = _startpos__1_ in
1670 let _endpos = _endpos__3_ in
1671 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1672 # 1192 "parser_cocci_menhir.mly"
1673 ( P.arith_op Ast.Mul _1 _2 _3 )
1674 # 1675 "parser_cocci_menhir.ml"
1675 in
1676 _menhir_env.MenhirLib.EngineTypes.stack <- {
1677 MenhirLib.EngineTypes.state = _menhir_s;
1678 MenhirLib.EngineTypes.semv = Obj.repr _v;
1679 MenhirLib.EngineTypes.startp = _startpos;
1680 MenhirLib.EngineTypes.endp = _endpos;
1681 MenhirLib.EngineTypes.next = _menhir_stack;
1682 });
1683 (fun _menhir_env ->
1684 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1685 let {
1686 MenhirLib.EngineTypes.semv = _3;
1687 MenhirLib.EngineTypes.startp = _startpos__3_;
1688 MenhirLib.EngineTypes.endp = _endpos__3_;
1689 MenhirLib.EngineTypes.next = {
1690 MenhirLib.EngineTypes.semv = _2;
1691 MenhirLib.EngineTypes.startp = _startpos__2_;
1692 MenhirLib.EngineTypes.endp = _endpos__2_;
1693 MenhirLib.EngineTypes.next = {
1694 MenhirLib.EngineTypes.state = _menhir_s;
1695 MenhirLib.EngineTypes.semv = _1;
1696 MenhirLib.EngineTypes.startp = _startpos__1_;
1697 MenhirLib.EngineTypes.endp = _endpos__1_;
1698 MenhirLib.EngineTypes.next = _menhir_stack;
1699 };
1700 };
1701 } = _menhir_stack in
1702 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1703 let _2 : (
1704 # 96 "parser_cocci_menhir.mly"
1705 (Ast_cocci.arithOp * Data.clt)
1706 # 1707 "parser_cocci_menhir.ml"
1707 ) = Obj.magic _2 in
1708 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1709 let _startpos = _startpos__1_ in
1710 let _endpos = _endpos__3_ in
1711 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1712 # 1194 "parser_cocci_menhir.mly"
1713 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
1714 # 1715 "parser_cocci_menhir.ml"
1715 in
1716 _menhir_env.MenhirLib.EngineTypes.stack <- {
1717 MenhirLib.EngineTypes.state = _menhir_s;
1718 MenhirLib.EngineTypes.semv = Obj.repr _v;
1719 MenhirLib.EngineTypes.startp = _startpos;
1720 MenhirLib.EngineTypes.endp = _endpos;
1721 MenhirLib.EngineTypes.next = _menhir_stack;
1722 });
1723 (fun _menhir_env ->
1724 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1725 let {
1726 MenhirLib.EngineTypes.semv = _3;
1727 MenhirLib.EngineTypes.startp = _startpos__3_;
1728 MenhirLib.EngineTypes.endp = _endpos__3_;
1729 MenhirLib.EngineTypes.next = {
1730 MenhirLib.EngineTypes.semv = _2;
1731 MenhirLib.EngineTypes.startp = _startpos__2_;
1732 MenhirLib.EngineTypes.endp = _endpos__2_;
1733 MenhirLib.EngineTypes.next = {
1734 MenhirLib.EngineTypes.state = _menhir_s;
1735 MenhirLib.EngineTypes.semv = _1;
1736 MenhirLib.EngineTypes.startp = _startpos__1_;
1737 MenhirLib.EngineTypes.endp = _endpos__1_;
1738 MenhirLib.EngineTypes.next = _menhir_stack;
1739 };
1740 };
1741 } = _menhir_stack in
1742 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1743 let _2 : (
1744 # 97 "parser_cocci_menhir.mly"
1745 (Data.clt)
1746 # 1747 "parser_cocci_menhir.ml"
1747 ) = Obj.magic _2 in
1748 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1749 let _startpos = _startpos__1_ in
1750 let _endpos = _endpos__3_ in
1751 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1752 # 1196 "parser_cocci_menhir.mly"
1753 ( P.arith_op Ast.Plus _1 _2 _3 )
1754 # 1755 "parser_cocci_menhir.ml"
1755 in
1756 _menhir_env.MenhirLib.EngineTypes.stack <- {
1757 MenhirLib.EngineTypes.state = _menhir_s;
1758 MenhirLib.EngineTypes.semv = Obj.repr _v;
1759 MenhirLib.EngineTypes.startp = _startpos;
1760 MenhirLib.EngineTypes.endp = _endpos;
1761 MenhirLib.EngineTypes.next = _menhir_stack;
1762 });
1763 (fun _menhir_env ->
1764 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1765 let {
1766 MenhirLib.EngineTypes.semv = _3;
1767 MenhirLib.EngineTypes.startp = _startpos__3_;
1768 MenhirLib.EngineTypes.endp = _endpos__3_;
1769 MenhirLib.EngineTypes.next = {
1770 MenhirLib.EngineTypes.semv = _2;
1771 MenhirLib.EngineTypes.startp = _startpos__2_;
1772 MenhirLib.EngineTypes.endp = _endpos__2_;
1773 MenhirLib.EngineTypes.next = {
1774 MenhirLib.EngineTypes.state = _menhir_s;
1775 MenhirLib.EngineTypes.semv = _1;
1776 MenhirLib.EngineTypes.startp = _startpos__1_;
1777 MenhirLib.EngineTypes.endp = _endpos__1_;
1778 MenhirLib.EngineTypes.next = _menhir_stack;
1779 };
1780 };
1781 } = _menhir_stack in
1782 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1783 let _2 : (
1784 # 97 "parser_cocci_menhir.mly"
1785 (Data.clt)
1786 # 1787 "parser_cocci_menhir.ml"
1787 ) = Obj.magic _2 in
1788 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1789 let _startpos = _startpos__1_ in
1790 let _endpos = _endpos__3_ in
1791 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1792 # 1198 "parser_cocci_menhir.mly"
1793 ( P.arith_op Ast.Minus _1 _2 _3 )
1794 # 1795 "parser_cocci_menhir.ml"
1795 in
1796 _menhir_env.MenhirLib.EngineTypes.stack <- {
1797 MenhirLib.EngineTypes.state = _menhir_s;
1798 MenhirLib.EngineTypes.semv = Obj.repr _v;
1799 MenhirLib.EngineTypes.startp = _startpos;
1800 MenhirLib.EngineTypes.endp = _endpos;
1801 MenhirLib.EngineTypes.next = _menhir_stack;
1802 });
1803 (fun _menhir_env ->
1804 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1805 let {
1806 MenhirLib.EngineTypes.semv = _3;
1807 MenhirLib.EngineTypes.startp = _startpos__3_;
1808 MenhirLib.EngineTypes.endp = _endpos__3_;
1809 MenhirLib.EngineTypes.next = {
1810 MenhirLib.EngineTypes.semv = _2;
1811 MenhirLib.EngineTypes.startp = _startpos__2_;
1812 MenhirLib.EngineTypes.endp = _endpos__2_;
1813 MenhirLib.EngineTypes.next = {
1814 MenhirLib.EngineTypes.state = _menhir_s;
1815 MenhirLib.EngineTypes.semv = _1;
1816 MenhirLib.EngineTypes.startp = _startpos__1_;
1817 MenhirLib.EngineTypes.endp = _endpos__1_;
1818 MenhirLib.EngineTypes.next = _menhir_stack;
1819 };
1820 };
1821 } = _menhir_stack in
1822 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1823 let _2 : (
1824 # 95 "parser_cocci_menhir.mly"
1825 (Ast_cocci.arithOp * Data.clt)
1826 # 1827 "parser_cocci_menhir.ml"
1827 ) = Obj.magic _2 in
1828 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1829 let _startpos = _startpos__1_ in
1830 let _endpos = _endpos__3_ in
1831 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1832 # 1200 "parser_cocci_menhir.mly"
1833 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
1834 # 1835 "parser_cocci_menhir.ml"
1835 in
1836 _menhir_env.MenhirLib.EngineTypes.stack <- {
1837 MenhirLib.EngineTypes.state = _menhir_s;
1838 MenhirLib.EngineTypes.semv = Obj.repr _v;
1839 MenhirLib.EngineTypes.startp = _startpos;
1840 MenhirLib.EngineTypes.endp = _endpos;
1841 MenhirLib.EngineTypes.next = _menhir_stack;
1842 });
1843 (fun _menhir_env ->
1844 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1845 let {
1846 MenhirLib.EngineTypes.semv = _3;
1847 MenhirLib.EngineTypes.startp = _startpos__3_;
1848 MenhirLib.EngineTypes.endp = _endpos__3_;
1849 MenhirLib.EngineTypes.next = {
1850 MenhirLib.EngineTypes.semv = _2;
1851 MenhirLib.EngineTypes.startp = _startpos__2_;
1852 MenhirLib.EngineTypes.endp = _endpos__2_;
1853 MenhirLib.EngineTypes.next = {
1854 MenhirLib.EngineTypes.state = _menhir_s;
1855 MenhirLib.EngineTypes.semv = _1;
1856 MenhirLib.EngineTypes.startp = _startpos__1_;
1857 MenhirLib.EngineTypes.endp = _endpos__1_;
1858 MenhirLib.EngineTypes.next = _menhir_stack;
1859 };
1860 };
1861 } = _menhir_stack in
1862 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1863 let _2 : (
1864 # 94 "parser_cocci_menhir.mly"
1865 (Ast_cocci.logicalOp * Data.clt)
1866 # 1867 "parser_cocci_menhir.ml"
1867 ) = Obj.magic _2 in
1868 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1869 let _startpos = _startpos__1_ in
1870 let _endpos = _endpos__3_ in
1871 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1872 # 1202 "parser_cocci_menhir.mly"
1873 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
1874 # 1875 "parser_cocci_menhir.ml"
1875 in
1876 _menhir_env.MenhirLib.EngineTypes.stack <- {
1877 MenhirLib.EngineTypes.state = _menhir_s;
1878 MenhirLib.EngineTypes.semv = Obj.repr _v;
1879 MenhirLib.EngineTypes.startp = _startpos;
1880 MenhirLib.EngineTypes.endp = _endpos;
1881 MenhirLib.EngineTypes.next = _menhir_stack;
1882 });
1883 (fun _menhir_env ->
1884 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1885 let {
1886 MenhirLib.EngineTypes.semv = _3;
1887 MenhirLib.EngineTypes.startp = _startpos__3_;
1888 MenhirLib.EngineTypes.endp = _endpos__3_;
1889 MenhirLib.EngineTypes.next = {
1890 MenhirLib.EngineTypes.semv = _2;
1891 MenhirLib.EngineTypes.startp = _startpos__2_;
1892 MenhirLib.EngineTypes.endp = _endpos__2_;
1893 MenhirLib.EngineTypes.next = {
1894 MenhirLib.EngineTypes.state = _menhir_s;
1895 MenhirLib.EngineTypes.semv = _1;
1896 MenhirLib.EngineTypes.startp = _startpos__1_;
1897 MenhirLib.EngineTypes.endp = _endpos__1_;
1898 MenhirLib.EngineTypes.next = _menhir_stack;
1899 };
1900 };
1901 } = _menhir_stack in
1902 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1903 let _2 : (
1904 # 93 "parser_cocci_menhir.mly"
1905 (Data.clt)
1906 # 1907 "parser_cocci_menhir.ml"
1907 ) = Obj.magic _2 in
1908 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1909 let _startpos = _startpos__1_ in
1910 let _endpos = _endpos__3_ in
1911 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1912 # 1204 "parser_cocci_menhir.mly"
1913 ( P.logic_op Ast.Eq _1 _2 _3 )
1914 # 1915 "parser_cocci_menhir.ml"
1915 in
1916 _menhir_env.MenhirLib.EngineTypes.stack <- {
1917 MenhirLib.EngineTypes.state = _menhir_s;
1918 MenhirLib.EngineTypes.semv = Obj.repr _v;
1919 MenhirLib.EngineTypes.startp = _startpos;
1920 MenhirLib.EngineTypes.endp = _endpos;
1921 MenhirLib.EngineTypes.next = _menhir_stack;
1922 });
1923 (fun _menhir_env ->
1924 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1925 let {
1926 MenhirLib.EngineTypes.semv = _3;
1927 MenhirLib.EngineTypes.startp = _startpos__3_;
1928 MenhirLib.EngineTypes.endp = _endpos__3_;
1929 MenhirLib.EngineTypes.next = {
1930 MenhirLib.EngineTypes.semv = _2;
1931 MenhirLib.EngineTypes.startp = _startpos__2_;
1932 MenhirLib.EngineTypes.endp = _endpos__2_;
1933 MenhirLib.EngineTypes.next = {
1934 MenhirLib.EngineTypes.state = _menhir_s;
1935 MenhirLib.EngineTypes.semv = _1;
1936 MenhirLib.EngineTypes.startp = _startpos__1_;
1937 MenhirLib.EngineTypes.endp = _endpos__1_;
1938 MenhirLib.EngineTypes.next = _menhir_stack;
1939 };
1940 };
1941 } = _menhir_stack in
1942 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1943 let _2 : (
1944 # 93 "parser_cocci_menhir.mly"
1945 (Data.clt)
1946 # 1947 "parser_cocci_menhir.ml"
1947 ) = Obj.magic _2 in
1948 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1949 let _startpos = _startpos__1_ in
1950 let _endpos = _endpos__3_ in
1951 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1952 # 1206 "parser_cocci_menhir.mly"
1953 ( P.logic_op Ast.NotEq _1 _2 _3 )
1954 # 1955 "parser_cocci_menhir.ml"
1955 in
1956 _menhir_env.MenhirLib.EngineTypes.stack <- {
1957 MenhirLib.EngineTypes.state = _menhir_s;
1958 MenhirLib.EngineTypes.semv = Obj.repr _v;
1959 MenhirLib.EngineTypes.startp = _startpos;
1960 MenhirLib.EngineTypes.endp = _endpos;
1961 MenhirLib.EngineTypes.next = _menhir_stack;
1962 });
1963 (fun _menhir_env ->
1964 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1965 let {
1966 MenhirLib.EngineTypes.semv = _3;
1967 MenhirLib.EngineTypes.startp = _startpos__3_;
1968 MenhirLib.EngineTypes.endp = _endpos__3_;
1969 MenhirLib.EngineTypes.next = {
1970 MenhirLib.EngineTypes.semv = _2;
1971 MenhirLib.EngineTypes.startp = _startpos__2_;
1972 MenhirLib.EngineTypes.endp = _endpos__2_;
1973 MenhirLib.EngineTypes.next = {
1974 MenhirLib.EngineTypes.state = _menhir_s;
1975 MenhirLib.EngineTypes.semv = _1;
1976 MenhirLib.EngineTypes.startp = _startpos__1_;
1977 MenhirLib.EngineTypes.endp = _endpos__1_;
1978 MenhirLib.EngineTypes.next = _menhir_stack;
1979 };
1980 };
1981 } = _menhir_stack in
1982 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
1983 let _2 : (
1984 # 92 "parser_cocci_menhir.mly"
1985 (Data.clt)
1986 # 1987 "parser_cocci_menhir.ml"
1987 ) = Obj.magic _2 in
1988 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
1989 let _startpos = _startpos__1_ in
1990 let _endpos = _endpos__3_ in
1991 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
1992 # 1208 "parser_cocci_menhir.mly"
1993 ( P.arith_op Ast.And _1 _2 _3 )
1994 # 1995 "parser_cocci_menhir.ml"
1995 in
1996 _menhir_env.MenhirLib.EngineTypes.stack <- {
1997 MenhirLib.EngineTypes.state = _menhir_s;
1998 MenhirLib.EngineTypes.semv = Obj.repr _v;
1999 MenhirLib.EngineTypes.startp = _startpos;
2000 MenhirLib.EngineTypes.endp = _endpos;
2001 MenhirLib.EngineTypes.next = _menhir_stack;
2002 });
2003 (fun _menhir_env ->
2004 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2005 let {
2006 MenhirLib.EngineTypes.semv = _3;
2007 MenhirLib.EngineTypes.startp = _startpos__3_;
2008 MenhirLib.EngineTypes.endp = _endpos__3_;
2009 MenhirLib.EngineTypes.next = {
2010 MenhirLib.EngineTypes.semv = _2;
2011 MenhirLib.EngineTypes.startp = _startpos__2_;
2012 MenhirLib.EngineTypes.endp = _endpos__2_;
2013 MenhirLib.EngineTypes.next = {
2014 MenhirLib.EngineTypes.state = _menhir_s;
2015 MenhirLib.EngineTypes.semv = _1;
2016 MenhirLib.EngineTypes.startp = _startpos__1_;
2017 MenhirLib.EngineTypes.endp = _endpos__1_;
2018 MenhirLib.EngineTypes.next = _menhir_stack;
2019 };
2020 };
2021 } = _menhir_stack in
2022 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
2023 let _2 : (
2024 # 90 "parser_cocci_menhir.mly"
2025 (Data.clt)
2026 # 2027 "parser_cocci_menhir.ml"
2027 ) = Obj.magic _2 in
2028 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2029 let _startpos = _startpos__1_ in
2030 let _endpos = _endpos__3_ in
2031 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2032 # 1210 "parser_cocci_menhir.mly"
2033 ( P.arith_op Ast.Or _1 _2 _3 )
2034 # 2035 "parser_cocci_menhir.ml"
2035 in
2036 _menhir_env.MenhirLib.EngineTypes.stack <- {
2037 MenhirLib.EngineTypes.state = _menhir_s;
2038 MenhirLib.EngineTypes.semv = Obj.repr _v;
2039 MenhirLib.EngineTypes.startp = _startpos;
2040 MenhirLib.EngineTypes.endp = _endpos;
2041 MenhirLib.EngineTypes.next = _menhir_stack;
2042 });
2043 (fun _menhir_env ->
2044 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2045 let {
2046 MenhirLib.EngineTypes.semv = _3;
2047 MenhirLib.EngineTypes.startp = _startpos__3_;
2048 MenhirLib.EngineTypes.endp = _endpos__3_;
2049 MenhirLib.EngineTypes.next = {
2050 MenhirLib.EngineTypes.semv = _2;
2051 MenhirLib.EngineTypes.startp = _startpos__2_;
2052 MenhirLib.EngineTypes.endp = _endpos__2_;
2053 MenhirLib.EngineTypes.next = {
2054 MenhirLib.EngineTypes.state = _menhir_s;
2055 MenhirLib.EngineTypes.semv = _1;
2056 MenhirLib.EngineTypes.startp = _startpos__1_;
2057 MenhirLib.EngineTypes.endp = _endpos__1_;
2058 MenhirLib.EngineTypes.next = _menhir_stack;
2059 };
2060 };
2061 } = _menhir_stack in
2062 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
2063 let _2 : (
2064 # 91 "parser_cocci_menhir.mly"
2065 (Data.clt)
2066 # 2067 "parser_cocci_menhir.ml"
2067 ) = Obj.magic _2 in
2068 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2069 let _startpos = _startpos__1_ in
2070 let _endpos = _endpos__3_ in
2071 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2072 # 1212 "parser_cocci_menhir.mly"
2073 ( P.arith_op Ast.Xor _1 _2 _3 )
2074 # 2075 "parser_cocci_menhir.ml"
2075 in
2076 _menhir_env.MenhirLib.EngineTypes.stack <- {
2077 MenhirLib.EngineTypes.state = _menhir_s;
2078 MenhirLib.EngineTypes.semv = Obj.repr _v;
2079 MenhirLib.EngineTypes.startp = _startpos;
2080 MenhirLib.EngineTypes.endp = _endpos;
2081 MenhirLib.EngineTypes.next = _menhir_stack;
2082 });
2083 (fun _menhir_env ->
2084 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2085 let {
2086 MenhirLib.EngineTypes.semv = _3;
2087 MenhirLib.EngineTypes.startp = _startpos__3_;
2088 MenhirLib.EngineTypes.endp = _endpos__3_;
2089 MenhirLib.EngineTypes.next = {
2090 MenhirLib.EngineTypes.semv = _2;
2091 MenhirLib.EngineTypes.startp = _startpos__2_;
2092 MenhirLib.EngineTypes.endp = _endpos__2_;
2093 MenhirLib.EngineTypes.next = {
2094 MenhirLib.EngineTypes.state = _menhir_s;
2095 MenhirLib.EngineTypes.semv = _1;
2096 MenhirLib.EngineTypes.startp = _startpos__1_;
2097 MenhirLib.EngineTypes.endp = _endpos__1_;
2098 MenhirLib.EngineTypes.next = _menhir_stack;
2099 };
2100 };
2101 } = _menhir_stack in
2102 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
2103 let _2 : (
2104 # 89 "parser_cocci_menhir.mly"
2105 (Data.clt)
2106 # 2107 "parser_cocci_menhir.ml"
2107 ) = Obj.magic _2 in
2108 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2109 let _startpos = _startpos__1_ in
2110 let _endpos = _endpos__3_ in
2111 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2112 # 1214 "parser_cocci_menhir.mly"
2113 ( P.logic_op Ast.AndLog _1 _2 _3 )
2114 # 2115 "parser_cocci_menhir.ml"
2115 in
2116 _menhir_env.MenhirLib.EngineTypes.stack <- {
2117 MenhirLib.EngineTypes.state = _menhir_s;
2118 MenhirLib.EngineTypes.semv = Obj.repr _v;
2119 MenhirLib.EngineTypes.startp = _startpos;
2120 MenhirLib.EngineTypes.endp = _endpos;
2121 MenhirLib.EngineTypes.next = _menhir_stack;
2122 });
2123 (fun _menhir_env ->
2124 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2125 let {
2126 MenhirLib.EngineTypes.semv = _3;
2127 MenhirLib.EngineTypes.startp = _startpos__3_;
2128 MenhirLib.EngineTypes.endp = _endpos__3_;
2129 MenhirLib.EngineTypes.next = {
2130 MenhirLib.EngineTypes.semv = _2;
2131 MenhirLib.EngineTypes.startp = _startpos__2_;
2132 MenhirLib.EngineTypes.endp = _endpos__2_;
2133 MenhirLib.EngineTypes.next = {
2134 MenhirLib.EngineTypes.state = _menhir_s;
2135 MenhirLib.EngineTypes.semv = _1;
2136 MenhirLib.EngineTypes.startp = _startpos__1_;
2137 MenhirLib.EngineTypes.endp = _endpos__1_;
2138 MenhirLib.EngineTypes.next = _menhir_stack;
2139 };
2140 };
2141 } = _menhir_stack in
2142 let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
2143 let _2 : (
2144 # 88 "parser_cocci_menhir.mly"
2145 (Data.clt)
2146 # 2147 "parser_cocci_menhir.ml"
2147 ) = Obj.magic _2 in
2148 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2149 let _startpos = _startpos__1_ in
2150 let _endpos = _endpos__3_ in
2151 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2152 # 1216 "parser_cocci_menhir.mly"
2153 ( P.logic_op Ast.OrLog _1 _2 _3 )
2154 # 2155 "parser_cocci_menhir.ml"
2155 in
2156 _menhir_env.MenhirLib.EngineTypes.stack <- {
2157 MenhirLib.EngineTypes.state = _menhir_s;
2158 MenhirLib.EngineTypes.semv = Obj.repr _v;
2159 MenhirLib.EngineTypes.startp = _startpos;
2160 MenhirLib.EngineTypes.endp = _endpos;
2161 MenhirLib.EngineTypes.next = _menhir_stack;
2162 });
2163 (fun _menhir_env ->
2164 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2165 let {
2166 MenhirLib.EngineTypes.state = _menhir_s;
2167 MenhirLib.EngineTypes.semv = _1;
2168 MenhirLib.EngineTypes.startp = _startpos__1_;
2169 MenhirLib.EngineTypes.endp = _endpos__1_;
2170 MenhirLib.EngineTypes.next = _menhir_stack;
2171 } = _menhir_stack in
2172 let _1 : 'tv_cast_expr_eexpr_invalid_ = Obj.magic _1 in
2173 let _startpos = _startpos__1_ in
2174 let _endpos = _endpos__1_ in
2175 let _v : 'tv_arith_expr_eexpr_invalid_ =
2176 # 1190 "parser_cocci_menhir.mly"
2177 ( _1 )
2178 # 2179 "parser_cocci_menhir.ml"
2179 in
2180 _menhir_env.MenhirLib.EngineTypes.stack <- {
2181 MenhirLib.EngineTypes.state = _menhir_s;
2182 MenhirLib.EngineTypes.semv = Obj.repr _v;
2183 MenhirLib.EngineTypes.startp = _startpos;
2184 MenhirLib.EngineTypes.endp = _endpos;
2185 MenhirLib.EngineTypes.next = _menhir_stack;
2186 });
2187 (fun _menhir_env ->
2188 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2189 let {
2190 MenhirLib.EngineTypes.semv = _3;
2191 MenhirLib.EngineTypes.startp = _startpos__3_;
2192 MenhirLib.EngineTypes.endp = _endpos__3_;
2193 MenhirLib.EngineTypes.next = {
2194 MenhirLib.EngineTypes.semv = _2;
2195 MenhirLib.EngineTypes.startp = _startpos__2_;
2196 MenhirLib.EngineTypes.endp = _endpos__2_;
2197 MenhirLib.EngineTypes.next = {
2198 MenhirLib.EngineTypes.state = _menhir_s;
2199 MenhirLib.EngineTypes.semv = _1;
2200 MenhirLib.EngineTypes.startp = _startpos__1_;
2201 MenhirLib.EngineTypes.endp = _endpos__1_;
2202 MenhirLib.EngineTypes.next = _menhir_stack;
2203 };
2204 };
2205 } = _menhir_stack in
2206 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2207 let _2 : (
2208 # 98 "parser_cocci_menhir.mly"
2209 (Data.clt)
2210 # 2211 "parser_cocci_menhir.ml"
2211 ) = Obj.magic _2 in
2212 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2213 let _startpos = _startpos__1_ in
2214 let _endpos = _endpos__3_ in
2215 let _v : 'tv_arith_expr_eexpr_invalid_ =
2216 # 1192 "parser_cocci_menhir.mly"
2217 ( P.arith_op Ast.Mul _1 _2 _3 )
2218 # 2219 "parser_cocci_menhir.ml"
2219 in
2220 _menhir_env.MenhirLib.EngineTypes.stack <- {
2221 MenhirLib.EngineTypes.state = _menhir_s;
2222 MenhirLib.EngineTypes.semv = Obj.repr _v;
2223 MenhirLib.EngineTypes.startp = _startpos;
2224 MenhirLib.EngineTypes.endp = _endpos;
2225 MenhirLib.EngineTypes.next = _menhir_stack;
2226 });
2227 (fun _menhir_env ->
2228 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2229 let {
2230 MenhirLib.EngineTypes.semv = _3;
2231 MenhirLib.EngineTypes.startp = _startpos__3_;
2232 MenhirLib.EngineTypes.endp = _endpos__3_;
2233 MenhirLib.EngineTypes.next = {
2234 MenhirLib.EngineTypes.semv = _2;
2235 MenhirLib.EngineTypes.startp = _startpos__2_;
2236 MenhirLib.EngineTypes.endp = _endpos__2_;
2237 MenhirLib.EngineTypes.next = {
2238 MenhirLib.EngineTypes.state = _menhir_s;
2239 MenhirLib.EngineTypes.semv = _1;
2240 MenhirLib.EngineTypes.startp = _startpos__1_;
2241 MenhirLib.EngineTypes.endp = _endpos__1_;
2242 MenhirLib.EngineTypes.next = _menhir_stack;
2243 };
2244 };
2245 } = _menhir_stack in
2246 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2247 let _2 : (
2248 # 96 "parser_cocci_menhir.mly"
2249 (Ast_cocci.arithOp * Data.clt)
2250 # 2251 "parser_cocci_menhir.ml"
2251 ) = Obj.magic _2 in
2252 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2253 let _startpos = _startpos__1_ in
2254 let _endpos = _endpos__3_ in
2255 let _v : 'tv_arith_expr_eexpr_invalid_ =
2256 # 1194 "parser_cocci_menhir.mly"
2257 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2258 # 2259 "parser_cocci_menhir.ml"
2259 in
2260 _menhir_env.MenhirLib.EngineTypes.stack <- {
2261 MenhirLib.EngineTypes.state = _menhir_s;
2262 MenhirLib.EngineTypes.semv = Obj.repr _v;
2263 MenhirLib.EngineTypes.startp = _startpos;
2264 MenhirLib.EngineTypes.endp = _endpos;
2265 MenhirLib.EngineTypes.next = _menhir_stack;
2266 });
2267 (fun _menhir_env ->
2268 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2269 let {
2270 MenhirLib.EngineTypes.semv = _3;
2271 MenhirLib.EngineTypes.startp = _startpos__3_;
2272 MenhirLib.EngineTypes.endp = _endpos__3_;
2273 MenhirLib.EngineTypes.next = {
2274 MenhirLib.EngineTypes.semv = _2;
2275 MenhirLib.EngineTypes.startp = _startpos__2_;
2276 MenhirLib.EngineTypes.endp = _endpos__2_;
2277 MenhirLib.EngineTypes.next = {
2278 MenhirLib.EngineTypes.state = _menhir_s;
2279 MenhirLib.EngineTypes.semv = _1;
2280 MenhirLib.EngineTypes.startp = _startpos__1_;
2281 MenhirLib.EngineTypes.endp = _endpos__1_;
2282 MenhirLib.EngineTypes.next = _menhir_stack;
2283 };
2284 };
2285 } = _menhir_stack in
2286 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2287 let _2 : (
2288 # 97 "parser_cocci_menhir.mly"
2289 (Data.clt)
2290 # 2291 "parser_cocci_menhir.ml"
2291 ) = Obj.magic _2 in
2292 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2293 let _startpos = _startpos__1_ in
2294 let _endpos = _endpos__3_ in
2295 let _v : 'tv_arith_expr_eexpr_invalid_ =
2296 # 1196 "parser_cocci_menhir.mly"
2297 ( P.arith_op Ast.Plus _1 _2 _3 )
2298 # 2299 "parser_cocci_menhir.ml"
2299 in
2300 _menhir_env.MenhirLib.EngineTypes.stack <- {
2301 MenhirLib.EngineTypes.state = _menhir_s;
2302 MenhirLib.EngineTypes.semv = Obj.repr _v;
2303 MenhirLib.EngineTypes.startp = _startpos;
2304 MenhirLib.EngineTypes.endp = _endpos;
2305 MenhirLib.EngineTypes.next = _menhir_stack;
2306 });
2307 (fun _menhir_env ->
2308 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2309 let {
2310 MenhirLib.EngineTypes.semv = _3;
2311 MenhirLib.EngineTypes.startp = _startpos__3_;
2312 MenhirLib.EngineTypes.endp = _endpos__3_;
2313 MenhirLib.EngineTypes.next = {
2314 MenhirLib.EngineTypes.semv = _2;
2315 MenhirLib.EngineTypes.startp = _startpos__2_;
2316 MenhirLib.EngineTypes.endp = _endpos__2_;
2317 MenhirLib.EngineTypes.next = {
2318 MenhirLib.EngineTypes.state = _menhir_s;
2319 MenhirLib.EngineTypes.semv = _1;
2320 MenhirLib.EngineTypes.startp = _startpos__1_;
2321 MenhirLib.EngineTypes.endp = _endpos__1_;
2322 MenhirLib.EngineTypes.next = _menhir_stack;
2323 };
2324 };
2325 } = _menhir_stack in
2326 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2327 let _2 : (
2328 # 97 "parser_cocci_menhir.mly"
2329 (Data.clt)
2330 # 2331 "parser_cocci_menhir.ml"
2331 ) = Obj.magic _2 in
2332 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2333 let _startpos = _startpos__1_ in
2334 let _endpos = _endpos__3_ in
2335 let _v : 'tv_arith_expr_eexpr_invalid_ =
2336 # 1198 "parser_cocci_menhir.mly"
2337 ( P.arith_op Ast.Minus _1 _2 _3 )
2338 # 2339 "parser_cocci_menhir.ml"
2339 in
2340 _menhir_env.MenhirLib.EngineTypes.stack <- {
2341 MenhirLib.EngineTypes.state = _menhir_s;
2342 MenhirLib.EngineTypes.semv = Obj.repr _v;
2343 MenhirLib.EngineTypes.startp = _startpos;
2344 MenhirLib.EngineTypes.endp = _endpos;
2345 MenhirLib.EngineTypes.next = _menhir_stack;
2346 });
2347 (fun _menhir_env ->
2348 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2349 let {
2350 MenhirLib.EngineTypes.semv = _3;
2351 MenhirLib.EngineTypes.startp = _startpos__3_;
2352 MenhirLib.EngineTypes.endp = _endpos__3_;
2353 MenhirLib.EngineTypes.next = {
2354 MenhirLib.EngineTypes.semv = _2;
2355 MenhirLib.EngineTypes.startp = _startpos__2_;
2356 MenhirLib.EngineTypes.endp = _endpos__2_;
2357 MenhirLib.EngineTypes.next = {
2358 MenhirLib.EngineTypes.state = _menhir_s;
2359 MenhirLib.EngineTypes.semv = _1;
2360 MenhirLib.EngineTypes.startp = _startpos__1_;
2361 MenhirLib.EngineTypes.endp = _endpos__1_;
2362 MenhirLib.EngineTypes.next = _menhir_stack;
2363 };
2364 };
2365 } = _menhir_stack in
2366 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2367 let _2 : (
2368 # 95 "parser_cocci_menhir.mly"
2369 (Ast_cocci.arithOp * Data.clt)
2370 # 2371 "parser_cocci_menhir.ml"
2371 ) = Obj.magic _2 in
2372 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2373 let _startpos = _startpos__1_ in
2374 let _endpos = _endpos__3_ in
2375 let _v : 'tv_arith_expr_eexpr_invalid_ =
2376 # 1200 "parser_cocci_menhir.mly"
2377 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2378 # 2379 "parser_cocci_menhir.ml"
2379 in
2380 _menhir_env.MenhirLib.EngineTypes.stack <- {
2381 MenhirLib.EngineTypes.state = _menhir_s;
2382 MenhirLib.EngineTypes.semv = Obj.repr _v;
2383 MenhirLib.EngineTypes.startp = _startpos;
2384 MenhirLib.EngineTypes.endp = _endpos;
2385 MenhirLib.EngineTypes.next = _menhir_stack;
2386 });
2387 (fun _menhir_env ->
2388 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2389 let {
2390 MenhirLib.EngineTypes.semv = _3;
2391 MenhirLib.EngineTypes.startp = _startpos__3_;
2392 MenhirLib.EngineTypes.endp = _endpos__3_;
2393 MenhirLib.EngineTypes.next = {
2394 MenhirLib.EngineTypes.semv = _2;
2395 MenhirLib.EngineTypes.startp = _startpos__2_;
2396 MenhirLib.EngineTypes.endp = _endpos__2_;
2397 MenhirLib.EngineTypes.next = {
2398 MenhirLib.EngineTypes.state = _menhir_s;
2399 MenhirLib.EngineTypes.semv = _1;
2400 MenhirLib.EngineTypes.startp = _startpos__1_;
2401 MenhirLib.EngineTypes.endp = _endpos__1_;
2402 MenhirLib.EngineTypes.next = _menhir_stack;
2403 };
2404 };
2405 } = _menhir_stack in
2406 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2407 let _2 : (
2408 # 94 "parser_cocci_menhir.mly"
2409 (Ast_cocci.logicalOp * Data.clt)
2410 # 2411 "parser_cocci_menhir.ml"
2411 ) = Obj.magic _2 in
2412 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2413 let _startpos = _startpos__1_ in
2414 let _endpos = _endpos__3_ in
2415 let _v : 'tv_arith_expr_eexpr_invalid_ =
2416 # 1202 "parser_cocci_menhir.mly"
2417 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
2418 # 2419 "parser_cocci_menhir.ml"
2419 in
2420 _menhir_env.MenhirLib.EngineTypes.stack <- {
2421 MenhirLib.EngineTypes.state = _menhir_s;
2422 MenhirLib.EngineTypes.semv = Obj.repr _v;
2423 MenhirLib.EngineTypes.startp = _startpos;
2424 MenhirLib.EngineTypes.endp = _endpos;
2425 MenhirLib.EngineTypes.next = _menhir_stack;
2426 });
2427 (fun _menhir_env ->
2428 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2429 let {
2430 MenhirLib.EngineTypes.semv = _3;
2431 MenhirLib.EngineTypes.startp = _startpos__3_;
2432 MenhirLib.EngineTypes.endp = _endpos__3_;
2433 MenhirLib.EngineTypes.next = {
2434 MenhirLib.EngineTypes.semv = _2;
2435 MenhirLib.EngineTypes.startp = _startpos__2_;
2436 MenhirLib.EngineTypes.endp = _endpos__2_;
2437 MenhirLib.EngineTypes.next = {
2438 MenhirLib.EngineTypes.state = _menhir_s;
2439 MenhirLib.EngineTypes.semv = _1;
2440 MenhirLib.EngineTypes.startp = _startpos__1_;
2441 MenhirLib.EngineTypes.endp = _endpos__1_;
2442 MenhirLib.EngineTypes.next = _menhir_stack;
2443 };
2444 };
2445 } = _menhir_stack in
2446 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2447 let _2 : (
2448 # 93 "parser_cocci_menhir.mly"
2449 (Data.clt)
2450 # 2451 "parser_cocci_menhir.ml"
2451 ) = Obj.magic _2 in
2452 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2453 let _startpos = _startpos__1_ in
2454 let _endpos = _endpos__3_ in
2455 let _v : 'tv_arith_expr_eexpr_invalid_ =
2456 # 1204 "parser_cocci_menhir.mly"
2457 ( P.logic_op Ast.Eq _1 _2 _3 )
2458 # 2459 "parser_cocci_menhir.ml"
2459 in
2460 _menhir_env.MenhirLib.EngineTypes.stack <- {
2461 MenhirLib.EngineTypes.state = _menhir_s;
2462 MenhirLib.EngineTypes.semv = Obj.repr _v;
2463 MenhirLib.EngineTypes.startp = _startpos;
2464 MenhirLib.EngineTypes.endp = _endpos;
2465 MenhirLib.EngineTypes.next = _menhir_stack;
2466 });
2467 (fun _menhir_env ->
2468 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2469 let {
2470 MenhirLib.EngineTypes.semv = _3;
2471 MenhirLib.EngineTypes.startp = _startpos__3_;
2472 MenhirLib.EngineTypes.endp = _endpos__3_;
2473 MenhirLib.EngineTypes.next = {
2474 MenhirLib.EngineTypes.semv = _2;
2475 MenhirLib.EngineTypes.startp = _startpos__2_;
2476 MenhirLib.EngineTypes.endp = _endpos__2_;
2477 MenhirLib.EngineTypes.next = {
2478 MenhirLib.EngineTypes.state = _menhir_s;
2479 MenhirLib.EngineTypes.semv = _1;
2480 MenhirLib.EngineTypes.startp = _startpos__1_;
2481 MenhirLib.EngineTypes.endp = _endpos__1_;
2482 MenhirLib.EngineTypes.next = _menhir_stack;
2483 };
2484 };
2485 } = _menhir_stack in
2486 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2487 let _2 : (
2488 # 93 "parser_cocci_menhir.mly"
2489 (Data.clt)
2490 # 2491 "parser_cocci_menhir.ml"
2491 ) = Obj.magic _2 in
2492 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2493 let _startpos = _startpos__1_ in
2494 let _endpos = _endpos__3_ in
2495 let _v : 'tv_arith_expr_eexpr_invalid_ =
2496 # 1206 "parser_cocci_menhir.mly"
2497 ( P.logic_op Ast.NotEq _1 _2 _3 )
2498 # 2499 "parser_cocci_menhir.ml"
2499 in
2500 _menhir_env.MenhirLib.EngineTypes.stack <- {
2501 MenhirLib.EngineTypes.state = _menhir_s;
2502 MenhirLib.EngineTypes.semv = Obj.repr _v;
2503 MenhirLib.EngineTypes.startp = _startpos;
2504 MenhirLib.EngineTypes.endp = _endpos;
2505 MenhirLib.EngineTypes.next = _menhir_stack;
2506 });
2507 (fun _menhir_env ->
2508 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2509 let {
2510 MenhirLib.EngineTypes.semv = _3;
2511 MenhirLib.EngineTypes.startp = _startpos__3_;
2512 MenhirLib.EngineTypes.endp = _endpos__3_;
2513 MenhirLib.EngineTypes.next = {
2514 MenhirLib.EngineTypes.semv = _2;
2515 MenhirLib.EngineTypes.startp = _startpos__2_;
2516 MenhirLib.EngineTypes.endp = _endpos__2_;
2517 MenhirLib.EngineTypes.next = {
2518 MenhirLib.EngineTypes.state = _menhir_s;
2519 MenhirLib.EngineTypes.semv = _1;
2520 MenhirLib.EngineTypes.startp = _startpos__1_;
2521 MenhirLib.EngineTypes.endp = _endpos__1_;
2522 MenhirLib.EngineTypes.next = _menhir_stack;
2523 };
2524 };
2525 } = _menhir_stack in
2526 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2527 let _2 : (
2528 # 92 "parser_cocci_menhir.mly"
2529 (Data.clt)
2530 # 2531 "parser_cocci_menhir.ml"
2531 ) = Obj.magic _2 in
2532 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2533 let _startpos = _startpos__1_ in
2534 let _endpos = _endpos__3_ in
2535 let _v : 'tv_arith_expr_eexpr_invalid_ =
2536 # 1208 "parser_cocci_menhir.mly"
2537 ( P.arith_op Ast.And _1 _2 _3 )
2538 # 2539 "parser_cocci_menhir.ml"
2539 in
2540 _menhir_env.MenhirLib.EngineTypes.stack <- {
2541 MenhirLib.EngineTypes.state = _menhir_s;
2542 MenhirLib.EngineTypes.semv = Obj.repr _v;
2543 MenhirLib.EngineTypes.startp = _startpos;
2544 MenhirLib.EngineTypes.endp = _endpos;
2545 MenhirLib.EngineTypes.next = _menhir_stack;
2546 });
2547 (fun _menhir_env ->
2548 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2549 let {
2550 MenhirLib.EngineTypes.semv = _3;
2551 MenhirLib.EngineTypes.startp = _startpos__3_;
2552 MenhirLib.EngineTypes.endp = _endpos__3_;
2553 MenhirLib.EngineTypes.next = {
2554 MenhirLib.EngineTypes.semv = _2;
2555 MenhirLib.EngineTypes.startp = _startpos__2_;
2556 MenhirLib.EngineTypes.endp = _endpos__2_;
2557 MenhirLib.EngineTypes.next = {
2558 MenhirLib.EngineTypes.state = _menhir_s;
2559 MenhirLib.EngineTypes.semv = _1;
2560 MenhirLib.EngineTypes.startp = _startpos__1_;
2561 MenhirLib.EngineTypes.endp = _endpos__1_;
2562 MenhirLib.EngineTypes.next = _menhir_stack;
2563 };
2564 };
2565 } = _menhir_stack in
2566 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2567 let _2 : (
2568 # 90 "parser_cocci_menhir.mly"
2569 (Data.clt)
2570 # 2571 "parser_cocci_menhir.ml"
2571 ) = Obj.magic _2 in
2572 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2573 let _startpos = _startpos__1_ in
2574 let _endpos = _endpos__3_ in
2575 let _v : 'tv_arith_expr_eexpr_invalid_ =
2576 # 1210 "parser_cocci_menhir.mly"
2577 ( P.arith_op Ast.Or _1 _2 _3 )
2578 # 2579 "parser_cocci_menhir.ml"
2579 in
2580 _menhir_env.MenhirLib.EngineTypes.stack <- {
2581 MenhirLib.EngineTypes.state = _menhir_s;
2582 MenhirLib.EngineTypes.semv = Obj.repr _v;
2583 MenhirLib.EngineTypes.startp = _startpos;
2584 MenhirLib.EngineTypes.endp = _endpos;
2585 MenhirLib.EngineTypes.next = _menhir_stack;
2586 });
2587 (fun _menhir_env ->
2588 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2589 let {
2590 MenhirLib.EngineTypes.semv = _3;
2591 MenhirLib.EngineTypes.startp = _startpos__3_;
2592 MenhirLib.EngineTypes.endp = _endpos__3_;
2593 MenhirLib.EngineTypes.next = {
2594 MenhirLib.EngineTypes.semv = _2;
2595 MenhirLib.EngineTypes.startp = _startpos__2_;
2596 MenhirLib.EngineTypes.endp = _endpos__2_;
2597 MenhirLib.EngineTypes.next = {
2598 MenhirLib.EngineTypes.state = _menhir_s;
2599 MenhirLib.EngineTypes.semv = _1;
2600 MenhirLib.EngineTypes.startp = _startpos__1_;
2601 MenhirLib.EngineTypes.endp = _endpos__1_;
2602 MenhirLib.EngineTypes.next = _menhir_stack;
2603 };
2604 };
2605 } = _menhir_stack in
2606 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2607 let _2 : (
2608 # 91 "parser_cocci_menhir.mly"
2609 (Data.clt)
2610 # 2611 "parser_cocci_menhir.ml"
2611 ) = Obj.magic _2 in
2612 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2613 let _startpos = _startpos__1_ in
2614 let _endpos = _endpos__3_ in
2615 let _v : 'tv_arith_expr_eexpr_invalid_ =
2616 # 1212 "parser_cocci_menhir.mly"
2617 ( P.arith_op Ast.Xor _1 _2 _3 )
2618 # 2619 "parser_cocci_menhir.ml"
2619 in
2620 _menhir_env.MenhirLib.EngineTypes.stack <- {
2621 MenhirLib.EngineTypes.state = _menhir_s;
2622 MenhirLib.EngineTypes.semv = Obj.repr _v;
2623 MenhirLib.EngineTypes.startp = _startpos;
2624 MenhirLib.EngineTypes.endp = _endpos;
2625 MenhirLib.EngineTypes.next = _menhir_stack;
2626 });
2627 (fun _menhir_env ->
2628 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2629 let {
2630 MenhirLib.EngineTypes.semv = _3;
2631 MenhirLib.EngineTypes.startp = _startpos__3_;
2632 MenhirLib.EngineTypes.endp = _endpos__3_;
2633 MenhirLib.EngineTypes.next = {
2634 MenhirLib.EngineTypes.semv = _2;
2635 MenhirLib.EngineTypes.startp = _startpos__2_;
2636 MenhirLib.EngineTypes.endp = _endpos__2_;
2637 MenhirLib.EngineTypes.next = {
2638 MenhirLib.EngineTypes.state = _menhir_s;
2639 MenhirLib.EngineTypes.semv = _1;
2640 MenhirLib.EngineTypes.startp = _startpos__1_;
2641 MenhirLib.EngineTypes.endp = _endpos__1_;
2642 MenhirLib.EngineTypes.next = _menhir_stack;
2643 };
2644 };
2645 } = _menhir_stack in
2646 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2647 let _2 : (
2648 # 89 "parser_cocci_menhir.mly"
2649 (Data.clt)
2650 # 2651 "parser_cocci_menhir.ml"
2651 ) = Obj.magic _2 in
2652 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2653 let _startpos = _startpos__1_ in
2654 let _endpos = _endpos__3_ in
2655 let _v : 'tv_arith_expr_eexpr_invalid_ =
2656 # 1214 "parser_cocci_menhir.mly"
2657 ( P.logic_op Ast.AndLog _1 _2 _3 )
2658 # 2659 "parser_cocci_menhir.ml"
2659 in
2660 _menhir_env.MenhirLib.EngineTypes.stack <- {
2661 MenhirLib.EngineTypes.state = _menhir_s;
2662 MenhirLib.EngineTypes.semv = Obj.repr _v;
2663 MenhirLib.EngineTypes.startp = _startpos;
2664 MenhirLib.EngineTypes.endp = _endpos;
2665 MenhirLib.EngineTypes.next = _menhir_stack;
2666 });
2667 (fun _menhir_env ->
2668 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2669 let {
2670 MenhirLib.EngineTypes.semv = _3;
2671 MenhirLib.EngineTypes.startp = _startpos__3_;
2672 MenhirLib.EngineTypes.endp = _endpos__3_;
2673 MenhirLib.EngineTypes.next = {
2674 MenhirLib.EngineTypes.semv = _2;
2675 MenhirLib.EngineTypes.startp = _startpos__2_;
2676 MenhirLib.EngineTypes.endp = _endpos__2_;
2677 MenhirLib.EngineTypes.next = {
2678 MenhirLib.EngineTypes.state = _menhir_s;
2679 MenhirLib.EngineTypes.semv = _1;
2680 MenhirLib.EngineTypes.startp = _startpos__1_;
2681 MenhirLib.EngineTypes.endp = _endpos__1_;
2682 MenhirLib.EngineTypes.next = _menhir_stack;
2683 };
2684 };
2685 } = _menhir_stack in
2686 let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
2687 let _2 : (
2688 # 88 "parser_cocci_menhir.mly"
2689 (Data.clt)
2690 # 2691 "parser_cocci_menhir.ml"
2691 ) = Obj.magic _2 in
2692 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2693 let _startpos = _startpos__1_ in
2694 let _endpos = _endpos__3_ in
2695 let _v : 'tv_arith_expr_eexpr_invalid_ =
2696 # 1216 "parser_cocci_menhir.mly"
2697 ( P.logic_op Ast.OrLog _1 _2 _3 )
2698 # 2699 "parser_cocci_menhir.ml"
2699 in
2700 _menhir_env.MenhirLib.EngineTypes.stack <- {
2701 MenhirLib.EngineTypes.state = _menhir_s;
2702 MenhirLib.EngineTypes.semv = Obj.repr _v;
2703 MenhirLib.EngineTypes.startp = _startpos;
2704 MenhirLib.EngineTypes.endp = _endpos;
2705 MenhirLib.EngineTypes.next = _menhir_stack;
2706 });
2707 (fun _menhir_env ->
2708 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2709 let {
2710 MenhirLib.EngineTypes.state = _menhir_s;
2711 MenhirLib.EngineTypes.semv = _1;
2712 MenhirLib.EngineTypes.startp = _startpos__1_;
2713 MenhirLib.EngineTypes.endp = _endpos__1_;
2714 MenhirLib.EngineTypes.next = _menhir_stack;
2715 } = _menhir_stack in
2716 let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2717 let _startpos = _startpos__1_ in
2718 let _endpos = _endpos__1_ in
2719 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2720 # 1190 "parser_cocci_menhir.mly"
2721 ( _1 )
2722 # 2723 "parser_cocci_menhir.ml"
2723 in
2724 _menhir_env.MenhirLib.EngineTypes.stack <- {
2725 MenhirLib.EngineTypes.state = _menhir_s;
2726 MenhirLib.EngineTypes.semv = Obj.repr _v;
2727 MenhirLib.EngineTypes.startp = _startpos;
2728 MenhirLib.EngineTypes.endp = _endpos;
2729 MenhirLib.EngineTypes.next = _menhir_stack;
2730 });
2731 (fun _menhir_env ->
2732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2733 let {
2734 MenhirLib.EngineTypes.semv = _3;
2735 MenhirLib.EngineTypes.startp = _startpos__3_;
2736 MenhirLib.EngineTypes.endp = _endpos__3_;
2737 MenhirLib.EngineTypes.next = {
2738 MenhirLib.EngineTypes.semv = _2;
2739 MenhirLib.EngineTypes.startp = _startpos__2_;
2740 MenhirLib.EngineTypes.endp = _endpos__2_;
2741 MenhirLib.EngineTypes.next = {
2742 MenhirLib.EngineTypes.state = _menhir_s;
2743 MenhirLib.EngineTypes.semv = _1;
2744 MenhirLib.EngineTypes.startp = _startpos__1_;
2745 MenhirLib.EngineTypes.endp = _endpos__1_;
2746 MenhirLib.EngineTypes.next = _menhir_stack;
2747 };
2748 };
2749 } = _menhir_stack in
2750 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2751 let _2 : (
2752 # 98 "parser_cocci_menhir.mly"
2753 (Data.clt)
2754 # 2755 "parser_cocci_menhir.ml"
2755 ) = Obj.magic _2 in
2756 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2757 let _startpos = _startpos__1_ in
2758 let _endpos = _endpos__3_ in
2759 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2760 # 1192 "parser_cocci_menhir.mly"
2761 ( P.arith_op Ast.Mul _1 _2 _3 )
2762 # 2763 "parser_cocci_menhir.ml"
2763 in
2764 _menhir_env.MenhirLib.EngineTypes.stack <- {
2765 MenhirLib.EngineTypes.state = _menhir_s;
2766 MenhirLib.EngineTypes.semv = Obj.repr _v;
2767 MenhirLib.EngineTypes.startp = _startpos;
2768 MenhirLib.EngineTypes.endp = _endpos;
2769 MenhirLib.EngineTypes.next = _menhir_stack;
2770 });
2771 (fun _menhir_env ->
2772 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2773 let {
2774 MenhirLib.EngineTypes.semv = _3;
2775 MenhirLib.EngineTypes.startp = _startpos__3_;
2776 MenhirLib.EngineTypes.endp = _endpos__3_;
2777 MenhirLib.EngineTypes.next = {
2778 MenhirLib.EngineTypes.semv = _2;
2779 MenhirLib.EngineTypes.startp = _startpos__2_;
2780 MenhirLib.EngineTypes.endp = _endpos__2_;
2781 MenhirLib.EngineTypes.next = {
2782 MenhirLib.EngineTypes.state = _menhir_s;
2783 MenhirLib.EngineTypes.semv = _1;
2784 MenhirLib.EngineTypes.startp = _startpos__1_;
2785 MenhirLib.EngineTypes.endp = _endpos__1_;
2786 MenhirLib.EngineTypes.next = _menhir_stack;
2787 };
2788 };
2789 } = _menhir_stack in
2790 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2791 let _2 : (
2792 # 96 "parser_cocci_menhir.mly"
2793 (Ast_cocci.arithOp * Data.clt)
2794 # 2795 "parser_cocci_menhir.ml"
2795 ) = Obj.magic _2 in
2796 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2797 let _startpos = _startpos__1_ in
2798 let _endpos = _endpos__3_ in
2799 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2800 # 1194 "parser_cocci_menhir.mly"
2801 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2802 # 2803 "parser_cocci_menhir.ml"
2803 in
2804 _menhir_env.MenhirLib.EngineTypes.stack <- {
2805 MenhirLib.EngineTypes.state = _menhir_s;
2806 MenhirLib.EngineTypes.semv = Obj.repr _v;
2807 MenhirLib.EngineTypes.startp = _startpos;
2808 MenhirLib.EngineTypes.endp = _endpos;
2809 MenhirLib.EngineTypes.next = _menhir_stack;
2810 });
2811 (fun _menhir_env ->
2812 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2813 let {
2814 MenhirLib.EngineTypes.semv = _3;
2815 MenhirLib.EngineTypes.startp = _startpos__3_;
2816 MenhirLib.EngineTypes.endp = _endpos__3_;
2817 MenhirLib.EngineTypes.next = {
2818 MenhirLib.EngineTypes.semv = _2;
2819 MenhirLib.EngineTypes.startp = _startpos__2_;
2820 MenhirLib.EngineTypes.endp = _endpos__2_;
2821 MenhirLib.EngineTypes.next = {
2822 MenhirLib.EngineTypes.state = _menhir_s;
2823 MenhirLib.EngineTypes.semv = _1;
2824 MenhirLib.EngineTypes.startp = _startpos__1_;
2825 MenhirLib.EngineTypes.endp = _endpos__1_;
2826 MenhirLib.EngineTypes.next = _menhir_stack;
2827 };
2828 };
2829 } = _menhir_stack in
2830 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2831 let _2 : (
2832 # 97 "parser_cocci_menhir.mly"
2833 (Data.clt)
2834 # 2835 "parser_cocci_menhir.ml"
2835 ) = Obj.magic _2 in
2836 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2837 let _startpos = _startpos__1_ in
2838 let _endpos = _endpos__3_ in
2839 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2840 # 1196 "parser_cocci_menhir.mly"
2841 ( P.arith_op Ast.Plus _1 _2 _3 )
2842 # 2843 "parser_cocci_menhir.ml"
2843 in
2844 _menhir_env.MenhirLib.EngineTypes.stack <- {
2845 MenhirLib.EngineTypes.state = _menhir_s;
2846 MenhirLib.EngineTypes.semv = Obj.repr _v;
2847 MenhirLib.EngineTypes.startp = _startpos;
2848 MenhirLib.EngineTypes.endp = _endpos;
2849 MenhirLib.EngineTypes.next = _menhir_stack;
2850 });
2851 (fun _menhir_env ->
2852 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2853 let {
2854 MenhirLib.EngineTypes.semv = _3;
2855 MenhirLib.EngineTypes.startp = _startpos__3_;
2856 MenhirLib.EngineTypes.endp = _endpos__3_;
2857 MenhirLib.EngineTypes.next = {
2858 MenhirLib.EngineTypes.semv = _2;
2859 MenhirLib.EngineTypes.startp = _startpos__2_;
2860 MenhirLib.EngineTypes.endp = _endpos__2_;
2861 MenhirLib.EngineTypes.next = {
2862 MenhirLib.EngineTypes.state = _menhir_s;
2863 MenhirLib.EngineTypes.semv = _1;
2864 MenhirLib.EngineTypes.startp = _startpos__1_;
2865 MenhirLib.EngineTypes.endp = _endpos__1_;
2866 MenhirLib.EngineTypes.next = _menhir_stack;
2867 };
2868 };
2869 } = _menhir_stack in
2870 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2871 let _2 : (
2872 # 97 "parser_cocci_menhir.mly"
2873 (Data.clt)
2874 # 2875 "parser_cocci_menhir.ml"
2875 ) = Obj.magic _2 in
2876 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2877 let _startpos = _startpos__1_ in
2878 let _endpos = _endpos__3_ in
2879 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2880 # 1198 "parser_cocci_menhir.mly"
2881 ( P.arith_op Ast.Minus _1 _2 _3 )
2882 # 2883 "parser_cocci_menhir.ml"
2883 in
2884 _menhir_env.MenhirLib.EngineTypes.stack <- {
2885 MenhirLib.EngineTypes.state = _menhir_s;
2886 MenhirLib.EngineTypes.semv = Obj.repr _v;
2887 MenhirLib.EngineTypes.startp = _startpos;
2888 MenhirLib.EngineTypes.endp = _endpos;
2889 MenhirLib.EngineTypes.next = _menhir_stack;
2890 });
2891 (fun _menhir_env ->
2892 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2893 let {
2894 MenhirLib.EngineTypes.semv = _3;
2895 MenhirLib.EngineTypes.startp = _startpos__3_;
2896 MenhirLib.EngineTypes.endp = _endpos__3_;
2897 MenhirLib.EngineTypes.next = {
2898 MenhirLib.EngineTypes.semv = _2;
2899 MenhirLib.EngineTypes.startp = _startpos__2_;
2900 MenhirLib.EngineTypes.endp = _endpos__2_;
2901 MenhirLib.EngineTypes.next = {
2902 MenhirLib.EngineTypes.state = _menhir_s;
2903 MenhirLib.EngineTypes.semv = _1;
2904 MenhirLib.EngineTypes.startp = _startpos__1_;
2905 MenhirLib.EngineTypes.endp = _endpos__1_;
2906 MenhirLib.EngineTypes.next = _menhir_stack;
2907 };
2908 };
2909 } = _menhir_stack in
2910 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2911 let _2 : (
2912 # 95 "parser_cocci_menhir.mly"
2913 (Ast_cocci.arithOp * Data.clt)
2914 # 2915 "parser_cocci_menhir.ml"
2915 ) = Obj.magic _2 in
2916 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2917 let _startpos = _startpos__1_ in
2918 let _endpos = _endpos__3_ in
2919 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2920 # 1200 "parser_cocci_menhir.mly"
2921 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2922 # 2923 "parser_cocci_menhir.ml"
2923 in
2924 _menhir_env.MenhirLib.EngineTypes.stack <- {
2925 MenhirLib.EngineTypes.state = _menhir_s;
2926 MenhirLib.EngineTypes.semv = Obj.repr _v;
2927 MenhirLib.EngineTypes.startp = _startpos;
2928 MenhirLib.EngineTypes.endp = _endpos;
2929 MenhirLib.EngineTypes.next = _menhir_stack;
2930 });
2931 (fun _menhir_env ->
2932 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2933 let {
2934 MenhirLib.EngineTypes.semv = _3;
2935 MenhirLib.EngineTypes.startp = _startpos__3_;
2936 MenhirLib.EngineTypes.endp = _endpos__3_;
2937 MenhirLib.EngineTypes.next = {
2938 MenhirLib.EngineTypes.semv = _2;
2939 MenhirLib.EngineTypes.startp = _startpos__2_;
2940 MenhirLib.EngineTypes.endp = _endpos__2_;
2941 MenhirLib.EngineTypes.next = {
2942 MenhirLib.EngineTypes.state = _menhir_s;
2943 MenhirLib.EngineTypes.semv = _1;
2944 MenhirLib.EngineTypes.startp = _startpos__1_;
2945 MenhirLib.EngineTypes.endp = _endpos__1_;
2946 MenhirLib.EngineTypes.next = _menhir_stack;
2947 };
2948 };
2949 } = _menhir_stack in
2950 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2951 let _2 : (
2952 # 94 "parser_cocci_menhir.mly"
2953 (Ast_cocci.logicalOp * Data.clt)
2954 # 2955 "parser_cocci_menhir.ml"
2955 ) = Obj.magic _2 in
2956 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2957 let _startpos = _startpos__1_ in
2958 let _endpos = _endpos__3_ in
2959 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
2960 # 1202 "parser_cocci_menhir.mly"
2961 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
2962 # 2963 "parser_cocci_menhir.ml"
2963 in
2964 _menhir_env.MenhirLib.EngineTypes.stack <- {
2965 MenhirLib.EngineTypes.state = _menhir_s;
2966 MenhirLib.EngineTypes.semv = Obj.repr _v;
2967 MenhirLib.EngineTypes.startp = _startpos;
2968 MenhirLib.EngineTypes.endp = _endpos;
2969 MenhirLib.EngineTypes.next = _menhir_stack;
2970 });
2971 (fun _menhir_env ->
2972 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2973 let {
2974 MenhirLib.EngineTypes.semv = _3;
2975 MenhirLib.EngineTypes.startp = _startpos__3_;
2976 MenhirLib.EngineTypes.endp = _endpos__3_;
2977 MenhirLib.EngineTypes.next = {
2978 MenhirLib.EngineTypes.semv = _2;
2979 MenhirLib.EngineTypes.startp = _startpos__2_;
2980 MenhirLib.EngineTypes.endp = _endpos__2_;
2981 MenhirLib.EngineTypes.next = {
2982 MenhirLib.EngineTypes.state = _menhir_s;
2983 MenhirLib.EngineTypes.semv = _1;
2984 MenhirLib.EngineTypes.startp = _startpos__1_;
2985 MenhirLib.EngineTypes.endp = _endpos__1_;
2986 MenhirLib.EngineTypes.next = _menhir_stack;
2987 };
2988 };
2989 } = _menhir_stack in
2990 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
2991 let _2 : (
2992 # 93 "parser_cocci_menhir.mly"
2993 (Data.clt)
2994 # 2995 "parser_cocci_menhir.ml"
2995 ) = Obj.magic _2 in
2996 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
2997 let _startpos = _startpos__1_ in
2998 let _endpos = _endpos__3_ in
2999 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3000 # 1204 "parser_cocci_menhir.mly"
3001 ( P.logic_op Ast.Eq _1 _2 _3 )
3002 # 3003 "parser_cocci_menhir.ml"
3003 in
3004 _menhir_env.MenhirLib.EngineTypes.stack <- {
3005 MenhirLib.EngineTypes.state = _menhir_s;
3006 MenhirLib.EngineTypes.semv = Obj.repr _v;
3007 MenhirLib.EngineTypes.startp = _startpos;
3008 MenhirLib.EngineTypes.endp = _endpos;
3009 MenhirLib.EngineTypes.next = _menhir_stack;
3010 });
3011 (fun _menhir_env ->
3012 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3013 let {
3014 MenhirLib.EngineTypes.semv = _3;
3015 MenhirLib.EngineTypes.startp = _startpos__3_;
3016 MenhirLib.EngineTypes.endp = _endpos__3_;
3017 MenhirLib.EngineTypes.next = {
3018 MenhirLib.EngineTypes.semv = _2;
3019 MenhirLib.EngineTypes.startp = _startpos__2_;
3020 MenhirLib.EngineTypes.endp = _endpos__2_;
3021 MenhirLib.EngineTypes.next = {
3022 MenhirLib.EngineTypes.state = _menhir_s;
3023 MenhirLib.EngineTypes.semv = _1;
3024 MenhirLib.EngineTypes.startp = _startpos__1_;
3025 MenhirLib.EngineTypes.endp = _endpos__1_;
3026 MenhirLib.EngineTypes.next = _menhir_stack;
3027 };
3028 };
3029 } = _menhir_stack in
3030 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3031 let _2 : (
3032 # 93 "parser_cocci_menhir.mly"
3033 (Data.clt)
3034 # 3035 "parser_cocci_menhir.ml"
3035 ) = Obj.magic _2 in
3036 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3037 let _startpos = _startpos__1_ in
3038 let _endpos = _endpos__3_ in
3039 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3040 # 1206 "parser_cocci_menhir.mly"
3041 ( P.logic_op Ast.NotEq _1 _2 _3 )
3042 # 3043 "parser_cocci_menhir.ml"
3043 in
3044 _menhir_env.MenhirLib.EngineTypes.stack <- {
3045 MenhirLib.EngineTypes.state = _menhir_s;
3046 MenhirLib.EngineTypes.semv = Obj.repr _v;
3047 MenhirLib.EngineTypes.startp = _startpos;
3048 MenhirLib.EngineTypes.endp = _endpos;
3049 MenhirLib.EngineTypes.next = _menhir_stack;
3050 });
3051 (fun _menhir_env ->
3052 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3053 let {
3054 MenhirLib.EngineTypes.semv = _3;
3055 MenhirLib.EngineTypes.startp = _startpos__3_;
3056 MenhirLib.EngineTypes.endp = _endpos__3_;
3057 MenhirLib.EngineTypes.next = {
3058 MenhirLib.EngineTypes.semv = _2;
3059 MenhirLib.EngineTypes.startp = _startpos__2_;
3060 MenhirLib.EngineTypes.endp = _endpos__2_;
3061 MenhirLib.EngineTypes.next = {
3062 MenhirLib.EngineTypes.state = _menhir_s;
3063 MenhirLib.EngineTypes.semv = _1;
3064 MenhirLib.EngineTypes.startp = _startpos__1_;
3065 MenhirLib.EngineTypes.endp = _endpos__1_;
3066 MenhirLib.EngineTypes.next = _menhir_stack;
3067 };
3068 };
3069 } = _menhir_stack in
3070 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3071 let _2 : (
3072 # 92 "parser_cocci_menhir.mly"
3073 (Data.clt)
3074 # 3075 "parser_cocci_menhir.ml"
3075 ) = Obj.magic _2 in
3076 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3077 let _startpos = _startpos__1_ in
3078 let _endpos = _endpos__3_ in
3079 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3080 # 1208 "parser_cocci_menhir.mly"
3081 ( P.arith_op Ast.And _1 _2 _3 )
3082 # 3083 "parser_cocci_menhir.ml"
3083 in
3084 _menhir_env.MenhirLib.EngineTypes.stack <- {
3085 MenhirLib.EngineTypes.state = _menhir_s;
3086 MenhirLib.EngineTypes.semv = Obj.repr _v;
3087 MenhirLib.EngineTypes.startp = _startpos;
3088 MenhirLib.EngineTypes.endp = _endpos;
3089 MenhirLib.EngineTypes.next = _menhir_stack;
3090 });
3091 (fun _menhir_env ->
3092 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3093 let {
3094 MenhirLib.EngineTypes.semv = _3;
3095 MenhirLib.EngineTypes.startp = _startpos__3_;
3096 MenhirLib.EngineTypes.endp = _endpos__3_;
3097 MenhirLib.EngineTypes.next = {
3098 MenhirLib.EngineTypes.semv = _2;
3099 MenhirLib.EngineTypes.startp = _startpos__2_;
3100 MenhirLib.EngineTypes.endp = _endpos__2_;
3101 MenhirLib.EngineTypes.next = {
3102 MenhirLib.EngineTypes.state = _menhir_s;
3103 MenhirLib.EngineTypes.semv = _1;
3104 MenhirLib.EngineTypes.startp = _startpos__1_;
3105 MenhirLib.EngineTypes.endp = _endpos__1_;
3106 MenhirLib.EngineTypes.next = _menhir_stack;
3107 };
3108 };
3109 } = _menhir_stack in
3110 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3111 let _2 : (
3112 # 90 "parser_cocci_menhir.mly"
3113 (Data.clt)
3114 # 3115 "parser_cocci_menhir.ml"
3115 ) = Obj.magic _2 in
3116 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3117 let _startpos = _startpos__1_ in
3118 let _endpos = _endpos__3_ in
3119 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3120 # 1210 "parser_cocci_menhir.mly"
3121 ( P.arith_op Ast.Or _1 _2 _3 )
3122 # 3123 "parser_cocci_menhir.ml"
3123 in
3124 _menhir_env.MenhirLib.EngineTypes.stack <- {
3125 MenhirLib.EngineTypes.state = _menhir_s;
3126 MenhirLib.EngineTypes.semv = Obj.repr _v;
3127 MenhirLib.EngineTypes.startp = _startpos;
3128 MenhirLib.EngineTypes.endp = _endpos;
3129 MenhirLib.EngineTypes.next = _menhir_stack;
3130 });
3131 (fun _menhir_env ->
3132 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3133 let {
3134 MenhirLib.EngineTypes.semv = _3;
3135 MenhirLib.EngineTypes.startp = _startpos__3_;
3136 MenhirLib.EngineTypes.endp = _endpos__3_;
3137 MenhirLib.EngineTypes.next = {
3138 MenhirLib.EngineTypes.semv = _2;
3139 MenhirLib.EngineTypes.startp = _startpos__2_;
3140 MenhirLib.EngineTypes.endp = _endpos__2_;
3141 MenhirLib.EngineTypes.next = {
3142 MenhirLib.EngineTypes.state = _menhir_s;
3143 MenhirLib.EngineTypes.semv = _1;
3144 MenhirLib.EngineTypes.startp = _startpos__1_;
3145 MenhirLib.EngineTypes.endp = _endpos__1_;
3146 MenhirLib.EngineTypes.next = _menhir_stack;
3147 };
3148 };
3149 } = _menhir_stack in
3150 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3151 let _2 : (
3152 # 91 "parser_cocci_menhir.mly"
3153 (Data.clt)
3154 # 3155 "parser_cocci_menhir.ml"
3155 ) = Obj.magic _2 in
3156 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3157 let _startpos = _startpos__1_ in
3158 let _endpos = _endpos__3_ in
3159 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3160 # 1212 "parser_cocci_menhir.mly"
3161 ( P.arith_op Ast.Xor _1 _2 _3 )
3162 # 3163 "parser_cocci_menhir.ml"
3163 in
3164 _menhir_env.MenhirLib.EngineTypes.stack <- {
3165 MenhirLib.EngineTypes.state = _menhir_s;
3166 MenhirLib.EngineTypes.semv = Obj.repr _v;
3167 MenhirLib.EngineTypes.startp = _startpos;
3168 MenhirLib.EngineTypes.endp = _endpos;
3169 MenhirLib.EngineTypes.next = _menhir_stack;
3170 });
3171 (fun _menhir_env ->
3172 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3173 let {
3174 MenhirLib.EngineTypes.semv = _3;
3175 MenhirLib.EngineTypes.startp = _startpos__3_;
3176 MenhirLib.EngineTypes.endp = _endpos__3_;
3177 MenhirLib.EngineTypes.next = {
3178 MenhirLib.EngineTypes.semv = _2;
3179 MenhirLib.EngineTypes.startp = _startpos__2_;
3180 MenhirLib.EngineTypes.endp = _endpos__2_;
3181 MenhirLib.EngineTypes.next = {
3182 MenhirLib.EngineTypes.state = _menhir_s;
3183 MenhirLib.EngineTypes.semv = _1;
3184 MenhirLib.EngineTypes.startp = _startpos__1_;
3185 MenhirLib.EngineTypes.endp = _endpos__1_;
3186 MenhirLib.EngineTypes.next = _menhir_stack;
3187 };
3188 };
3189 } = _menhir_stack in
3190 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3191 let _2 : (
3192 # 89 "parser_cocci_menhir.mly"
3193 (Data.clt)
3194 # 3195 "parser_cocci_menhir.ml"
3195 ) = Obj.magic _2 in
3196 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3197 let _startpos = _startpos__1_ in
3198 let _endpos = _endpos__3_ in
3199 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3200 # 1214 "parser_cocci_menhir.mly"
3201 ( P.logic_op Ast.AndLog _1 _2 _3 )
3202 # 3203 "parser_cocci_menhir.ml"
3203 in
3204 _menhir_env.MenhirLib.EngineTypes.stack <- {
3205 MenhirLib.EngineTypes.state = _menhir_s;
3206 MenhirLib.EngineTypes.semv = Obj.repr _v;
3207 MenhirLib.EngineTypes.startp = _startpos;
3208 MenhirLib.EngineTypes.endp = _endpos;
3209 MenhirLib.EngineTypes.next = _menhir_stack;
3210 });
3211 (fun _menhir_env ->
3212 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3213 let {
3214 MenhirLib.EngineTypes.semv = _3;
3215 MenhirLib.EngineTypes.startp = _startpos__3_;
3216 MenhirLib.EngineTypes.endp = _endpos__3_;
3217 MenhirLib.EngineTypes.next = {
3218 MenhirLib.EngineTypes.semv = _2;
3219 MenhirLib.EngineTypes.startp = _startpos__2_;
3220 MenhirLib.EngineTypes.endp = _endpos__2_;
3221 MenhirLib.EngineTypes.next = {
3222 MenhirLib.EngineTypes.state = _menhir_s;
3223 MenhirLib.EngineTypes.semv = _1;
3224 MenhirLib.EngineTypes.startp = _startpos__1_;
3225 MenhirLib.EngineTypes.endp = _endpos__1_;
3226 MenhirLib.EngineTypes.next = _menhir_stack;
3227 };
3228 };
3229 } = _menhir_stack in
3230 let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
3231 let _2 : (
3232 # 88 "parser_cocci_menhir.mly"
3233 (Data.clt)
3234 # 3235 "parser_cocci_menhir.ml"
3235 ) = Obj.magic _2 in
3236 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3237 let _startpos = _startpos__1_ in
3238 let _endpos = _endpos__3_ in
3239 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3240 # 1216 "parser_cocci_menhir.mly"
3241 ( P.logic_op Ast.OrLog _1 _2 _3 )
3242 # 3243 "parser_cocci_menhir.ml"
3243 in
3244 _menhir_env.MenhirLib.EngineTypes.stack <- {
3245 MenhirLib.EngineTypes.state = _menhir_s;
3246 MenhirLib.EngineTypes.semv = Obj.repr _v;
3247 MenhirLib.EngineTypes.startp = _startpos;
3248 MenhirLib.EngineTypes.endp = _endpos;
3249 MenhirLib.EngineTypes.next = _menhir_stack;
3250 });
3251 (fun _menhir_env ->
3252 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3253 let {
3254 MenhirLib.EngineTypes.state = _menhir_s;
3255 MenhirLib.EngineTypes.semv = _1;
3256 MenhirLib.EngineTypes.startp = _startpos__1_;
3257 MenhirLib.EngineTypes.endp = _endpos__1_;
3258 MenhirLib.EngineTypes.next = _menhir_stack;
3259 } = _menhir_stack in
3260 let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in
3261 let _startpos = _startpos__1_ in
3262 let _endpos = _endpos__1_ in
3263 let _v : 'tv_arith_expr_expr_invalid_ =
3264 # 1190 "parser_cocci_menhir.mly"
3265 ( _1 )
3266 # 3267 "parser_cocci_menhir.ml"
3267 in
3268 _menhir_env.MenhirLib.EngineTypes.stack <- {
3269 MenhirLib.EngineTypes.state = _menhir_s;
3270 MenhirLib.EngineTypes.semv = Obj.repr _v;
3271 MenhirLib.EngineTypes.startp = _startpos;
3272 MenhirLib.EngineTypes.endp = _endpos;
3273 MenhirLib.EngineTypes.next = _menhir_stack;
3274 });
3275 (fun _menhir_env ->
3276 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3277 let {
3278 MenhirLib.EngineTypes.semv = _3;
3279 MenhirLib.EngineTypes.startp = _startpos__3_;
3280 MenhirLib.EngineTypes.endp = _endpos__3_;
3281 MenhirLib.EngineTypes.next = {
3282 MenhirLib.EngineTypes.semv = _2;
3283 MenhirLib.EngineTypes.startp = _startpos__2_;
3284 MenhirLib.EngineTypes.endp = _endpos__2_;
3285 MenhirLib.EngineTypes.next = {
3286 MenhirLib.EngineTypes.state = _menhir_s;
3287 MenhirLib.EngineTypes.semv = _1;
3288 MenhirLib.EngineTypes.startp = _startpos__1_;
3289 MenhirLib.EngineTypes.endp = _endpos__1_;
3290 MenhirLib.EngineTypes.next = _menhir_stack;
3291 };
3292 };
3293 } = _menhir_stack in
3294 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3295 let _2 : (
3296 # 98 "parser_cocci_menhir.mly"
3297 (Data.clt)
3298 # 3299 "parser_cocci_menhir.ml"
3299 ) = Obj.magic _2 in
3300 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3301 let _startpos = _startpos__1_ in
3302 let _endpos = _endpos__3_ in
3303 let _v : 'tv_arith_expr_expr_invalid_ =
3304 # 1192 "parser_cocci_menhir.mly"
3305 ( P.arith_op Ast.Mul _1 _2 _3 )
3306 # 3307 "parser_cocci_menhir.ml"
3307 in
3308 _menhir_env.MenhirLib.EngineTypes.stack <- {
3309 MenhirLib.EngineTypes.state = _menhir_s;
3310 MenhirLib.EngineTypes.semv = Obj.repr _v;
3311 MenhirLib.EngineTypes.startp = _startpos;
3312 MenhirLib.EngineTypes.endp = _endpos;
3313 MenhirLib.EngineTypes.next = _menhir_stack;
3314 });
3315 (fun _menhir_env ->
3316 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3317 let {
3318 MenhirLib.EngineTypes.semv = _3;
3319 MenhirLib.EngineTypes.startp = _startpos__3_;
3320 MenhirLib.EngineTypes.endp = _endpos__3_;
3321 MenhirLib.EngineTypes.next = {
3322 MenhirLib.EngineTypes.semv = _2;
3323 MenhirLib.EngineTypes.startp = _startpos__2_;
3324 MenhirLib.EngineTypes.endp = _endpos__2_;
3325 MenhirLib.EngineTypes.next = {
3326 MenhirLib.EngineTypes.state = _menhir_s;
3327 MenhirLib.EngineTypes.semv = _1;
3328 MenhirLib.EngineTypes.startp = _startpos__1_;
3329 MenhirLib.EngineTypes.endp = _endpos__1_;
3330 MenhirLib.EngineTypes.next = _menhir_stack;
3331 };
3332 };
3333 } = _menhir_stack in
3334 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3335 let _2 : (
3336 # 96 "parser_cocci_menhir.mly"
3337 (Ast_cocci.arithOp * Data.clt)
3338 # 3339 "parser_cocci_menhir.ml"
3339 ) = Obj.magic _2 in
3340 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3341 let _startpos = _startpos__1_ in
3342 let _endpos = _endpos__3_ in
3343 let _v : 'tv_arith_expr_expr_invalid_ =
3344 # 1194 "parser_cocci_menhir.mly"
3345 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3346 # 3347 "parser_cocci_menhir.ml"
3347 in
3348 _menhir_env.MenhirLib.EngineTypes.stack <- {
3349 MenhirLib.EngineTypes.state = _menhir_s;
3350 MenhirLib.EngineTypes.semv = Obj.repr _v;
3351 MenhirLib.EngineTypes.startp = _startpos;
3352 MenhirLib.EngineTypes.endp = _endpos;
3353 MenhirLib.EngineTypes.next = _menhir_stack;
3354 });
3355 (fun _menhir_env ->
3356 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3357 let {
3358 MenhirLib.EngineTypes.semv = _3;
3359 MenhirLib.EngineTypes.startp = _startpos__3_;
3360 MenhirLib.EngineTypes.endp = _endpos__3_;
3361 MenhirLib.EngineTypes.next = {
3362 MenhirLib.EngineTypes.semv = _2;
3363 MenhirLib.EngineTypes.startp = _startpos__2_;
3364 MenhirLib.EngineTypes.endp = _endpos__2_;
3365 MenhirLib.EngineTypes.next = {
3366 MenhirLib.EngineTypes.state = _menhir_s;
3367 MenhirLib.EngineTypes.semv = _1;
3368 MenhirLib.EngineTypes.startp = _startpos__1_;
3369 MenhirLib.EngineTypes.endp = _endpos__1_;
3370 MenhirLib.EngineTypes.next = _menhir_stack;
3371 };
3372 };
3373 } = _menhir_stack in
3374 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3375 let _2 : (
3376 # 97 "parser_cocci_menhir.mly"
3377 (Data.clt)
3378 # 3379 "parser_cocci_menhir.ml"
3379 ) = Obj.magic _2 in
3380 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3381 let _startpos = _startpos__1_ in
3382 let _endpos = _endpos__3_ in
3383 let _v : 'tv_arith_expr_expr_invalid_ =
3384 # 1196 "parser_cocci_menhir.mly"
3385 ( P.arith_op Ast.Plus _1 _2 _3 )
3386 # 3387 "parser_cocci_menhir.ml"
3387 in
3388 _menhir_env.MenhirLib.EngineTypes.stack <- {
3389 MenhirLib.EngineTypes.state = _menhir_s;
3390 MenhirLib.EngineTypes.semv = Obj.repr _v;
3391 MenhirLib.EngineTypes.startp = _startpos;
3392 MenhirLib.EngineTypes.endp = _endpos;
3393 MenhirLib.EngineTypes.next = _menhir_stack;
3394 });
3395 (fun _menhir_env ->
3396 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3397 let {
3398 MenhirLib.EngineTypes.semv = _3;
3399 MenhirLib.EngineTypes.startp = _startpos__3_;
3400 MenhirLib.EngineTypes.endp = _endpos__3_;
3401 MenhirLib.EngineTypes.next = {
3402 MenhirLib.EngineTypes.semv = _2;
3403 MenhirLib.EngineTypes.startp = _startpos__2_;
3404 MenhirLib.EngineTypes.endp = _endpos__2_;
3405 MenhirLib.EngineTypes.next = {
3406 MenhirLib.EngineTypes.state = _menhir_s;
3407 MenhirLib.EngineTypes.semv = _1;
3408 MenhirLib.EngineTypes.startp = _startpos__1_;
3409 MenhirLib.EngineTypes.endp = _endpos__1_;
3410 MenhirLib.EngineTypes.next = _menhir_stack;
3411 };
3412 };
3413 } = _menhir_stack in
3414 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3415 let _2 : (
3416 # 97 "parser_cocci_menhir.mly"
3417 (Data.clt)
3418 # 3419 "parser_cocci_menhir.ml"
3419 ) = Obj.magic _2 in
3420 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3421 let _startpos = _startpos__1_ in
3422 let _endpos = _endpos__3_ in
3423 let _v : 'tv_arith_expr_expr_invalid_ =
3424 # 1198 "parser_cocci_menhir.mly"
3425 ( P.arith_op Ast.Minus _1 _2 _3 )
3426 # 3427 "parser_cocci_menhir.ml"
3427 in
3428 _menhir_env.MenhirLib.EngineTypes.stack <- {
3429 MenhirLib.EngineTypes.state = _menhir_s;
3430 MenhirLib.EngineTypes.semv = Obj.repr _v;
3431 MenhirLib.EngineTypes.startp = _startpos;
3432 MenhirLib.EngineTypes.endp = _endpos;
3433 MenhirLib.EngineTypes.next = _menhir_stack;
3434 });
3435 (fun _menhir_env ->
3436 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3437 let {
3438 MenhirLib.EngineTypes.semv = _3;
3439 MenhirLib.EngineTypes.startp = _startpos__3_;
3440 MenhirLib.EngineTypes.endp = _endpos__3_;
3441 MenhirLib.EngineTypes.next = {
3442 MenhirLib.EngineTypes.semv = _2;
3443 MenhirLib.EngineTypes.startp = _startpos__2_;
3444 MenhirLib.EngineTypes.endp = _endpos__2_;
3445 MenhirLib.EngineTypes.next = {
3446 MenhirLib.EngineTypes.state = _menhir_s;
3447 MenhirLib.EngineTypes.semv = _1;
3448 MenhirLib.EngineTypes.startp = _startpos__1_;
3449 MenhirLib.EngineTypes.endp = _endpos__1_;
3450 MenhirLib.EngineTypes.next = _menhir_stack;
3451 };
3452 };
3453 } = _menhir_stack in
3454 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3455 let _2 : (
3456 # 95 "parser_cocci_menhir.mly"
3457 (Ast_cocci.arithOp * Data.clt)
3458 # 3459 "parser_cocci_menhir.ml"
3459 ) = Obj.magic _2 in
3460 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3461 let _startpos = _startpos__1_ in
3462 let _endpos = _endpos__3_ in
3463 let _v : 'tv_arith_expr_expr_invalid_ =
3464 # 1200 "parser_cocci_menhir.mly"
3465 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3466 # 3467 "parser_cocci_menhir.ml"
3467 in
3468 _menhir_env.MenhirLib.EngineTypes.stack <- {
3469 MenhirLib.EngineTypes.state = _menhir_s;
3470 MenhirLib.EngineTypes.semv = Obj.repr _v;
3471 MenhirLib.EngineTypes.startp = _startpos;
3472 MenhirLib.EngineTypes.endp = _endpos;
3473 MenhirLib.EngineTypes.next = _menhir_stack;
3474 });
3475 (fun _menhir_env ->
3476 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3477 let {
3478 MenhirLib.EngineTypes.semv = _3;
3479 MenhirLib.EngineTypes.startp = _startpos__3_;
3480 MenhirLib.EngineTypes.endp = _endpos__3_;
3481 MenhirLib.EngineTypes.next = {
3482 MenhirLib.EngineTypes.semv = _2;
3483 MenhirLib.EngineTypes.startp = _startpos__2_;
3484 MenhirLib.EngineTypes.endp = _endpos__2_;
3485 MenhirLib.EngineTypes.next = {
3486 MenhirLib.EngineTypes.state = _menhir_s;
3487 MenhirLib.EngineTypes.semv = _1;
3488 MenhirLib.EngineTypes.startp = _startpos__1_;
3489 MenhirLib.EngineTypes.endp = _endpos__1_;
3490 MenhirLib.EngineTypes.next = _menhir_stack;
3491 };
3492 };
3493 } = _menhir_stack in
3494 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3495 let _2 : (
3496 # 94 "parser_cocci_menhir.mly"
3497 (Ast_cocci.logicalOp * Data.clt)
3498 # 3499 "parser_cocci_menhir.ml"
3499 ) = Obj.magic _2 in
3500 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3501 let _startpos = _startpos__1_ in
3502 let _endpos = _endpos__3_ in
3503 let _v : 'tv_arith_expr_expr_invalid_ =
3504 # 1202 "parser_cocci_menhir.mly"
3505 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
3506 # 3507 "parser_cocci_menhir.ml"
3507 in
3508 _menhir_env.MenhirLib.EngineTypes.stack <- {
3509 MenhirLib.EngineTypes.state = _menhir_s;
3510 MenhirLib.EngineTypes.semv = Obj.repr _v;
3511 MenhirLib.EngineTypes.startp = _startpos;
3512 MenhirLib.EngineTypes.endp = _endpos;
3513 MenhirLib.EngineTypes.next = _menhir_stack;
3514 });
3515 (fun _menhir_env ->
3516 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3517 let {
3518 MenhirLib.EngineTypes.semv = _3;
3519 MenhirLib.EngineTypes.startp = _startpos__3_;
3520 MenhirLib.EngineTypes.endp = _endpos__3_;
3521 MenhirLib.EngineTypes.next = {
3522 MenhirLib.EngineTypes.semv = _2;
3523 MenhirLib.EngineTypes.startp = _startpos__2_;
3524 MenhirLib.EngineTypes.endp = _endpos__2_;
3525 MenhirLib.EngineTypes.next = {
3526 MenhirLib.EngineTypes.state = _menhir_s;
3527 MenhirLib.EngineTypes.semv = _1;
3528 MenhirLib.EngineTypes.startp = _startpos__1_;
3529 MenhirLib.EngineTypes.endp = _endpos__1_;
3530 MenhirLib.EngineTypes.next = _menhir_stack;
3531 };
3532 };
3533 } = _menhir_stack in
3534 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3535 let _2 : (
3536 # 93 "parser_cocci_menhir.mly"
3537 (Data.clt)
3538 # 3539 "parser_cocci_menhir.ml"
3539 ) = Obj.magic _2 in
3540 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3541 let _startpos = _startpos__1_ in
3542 let _endpos = _endpos__3_ in
3543 let _v : 'tv_arith_expr_expr_invalid_ =
3544 # 1204 "parser_cocci_menhir.mly"
3545 ( P.logic_op Ast.Eq _1 _2 _3 )
3546 # 3547 "parser_cocci_menhir.ml"
3547 in
3548 _menhir_env.MenhirLib.EngineTypes.stack <- {
3549 MenhirLib.EngineTypes.state = _menhir_s;
3550 MenhirLib.EngineTypes.semv = Obj.repr _v;
3551 MenhirLib.EngineTypes.startp = _startpos;
3552 MenhirLib.EngineTypes.endp = _endpos;
3553 MenhirLib.EngineTypes.next = _menhir_stack;
3554 });
3555 (fun _menhir_env ->
3556 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3557 let {
3558 MenhirLib.EngineTypes.semv = _3;
3559 MenhirLib.EngineTypes.startp = _startpos__3_;
3560 MenhirLib.EngineTypes.endp = _endpos__3_;
3561 MenhirLib.EngineTypes.next = {
3562 MenhirLib.EngineTypes.semv = _2;
3563 MenhirLib.EngineTypes.startp = _startpos__2_;
3564 MenhirLib.EngineTypes.endp = _endpos__2_;
3565 MenhirLib.EngineTypes.next = {
3566 MenhirLib.EngineTypes.state = _menhir_s;
3567 MenhirLib.EngineTypes.semv = _1;
3568 MenhirLib.EngineTypes.startp = _startpos__1_;
3569 MenhirLib.EngineTypes.endp = _endpos__1_;
3570 MenhirLib.EngineTypes.next = _menhir_stack;
3571 };
3572 };
3573 } = _menhir_stack in
3574 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3575 let _2 : (
3576 # 93 "parser_cocci_menhir.mly"
3577 (Data.clt)
3578 # 3579 "parser_cocci_menhir.ml"
3579 ) = Obj.magic _2 in
3580 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3581 let _startpos = _startpos__1_ in
3582 let _endpos = _endpos__3_ in
3583 let _v : 'tv_arith_expr_expr_invalid_ =
3584 # 1206 "parser_cocci_menhir.mly"
3585 ( P.logic_op Ast.NotEq _1 _2 _3 )
3586 # 3587 "parser_cocci_menhir.ml"
3587 in
3588 _menhir_env.MenhirLib.EngineTypes.stack <- {
3589 MenhirLib.EngineTypes.state = _menhir_s;
3590 MenhirLib.EngineTypes.semv = Obj.repr _v;
3591 MenhirLib.EngineTypes.startp = _startpos;
3592 MenhirLib.EngineTypes.endp = _endpos;
3593 MenhirLib.EngineTypes.next = _menhir_stack;
3594 });
3595 (fun _menhir_env ->
3596 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3597 let {
3598 MenhirLib.EngineTypes.semv = _3;
3599 MenhirLib.EngineTypes.startp = _startpos__3_;
3600 MenhirLib.EngineTypes.endp = _endpos__3_;
3601 MenhirLib.EngineTypes.next = {
3602 MenhirLib.EngineTypes.semv = _2;
3603 MenhirLib.EngineTypes.startp = _startpos__2_;
3604 MenhirLib.EngineTypes.endp = _endpos__2_;
3605 MenhirLib.EngineTypes.next = {
3606 MenhirLib.EngineTypes.state = _menhir_s;
3607 MenhirLib.EngineTypes.semv = _1;
3608 MenhirLib.EngineTypes.startp = _startpos__1_;
3609 MenhirLib.EngineTypes.endp = _endpos__1_;
3610 MenhirLib.EngineTypes.next = _menhir_stack;
3611 };
3612 };
3613 } = _menhir_stack in
3614 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3615 let _2 : (
3616 # 92 "parser_cocci_menhir.mly"
3617 (Data.clt)
3618 # 3619 "parser_cocci_menhir.ml"
3619 ) = Obj.magic _2 in
3620 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3621 let _startpos = _startpos__1_ in
3622 let _endpos = _endpos__3_ in
3623 let _v : 'tv_arith_expr_expr_invalid_ =
3624 # 1208 "parser_cocci_menhir.mly"
3625 ( P.arith_op Ast.And _1 _2 _3 )
3626 # 3627 "parser_cocci_menhir.ml"
3627 in
3628 _menhir_env.MenhirLib.EngineTypes.stack <- {
3629 MenhirLib.EngineTypes.state = _menhir_s;
3630 MenhirLib.EngineTypes.semv = Obj.repr _v;
3631 MenhirLib.EngineTypes.startp = _startpos;
3632 MenhirLib.EngineTypes.endp = _endpos;
3633 MenhirLib.EngineTypes.next = _menhir_stack;
3634 });
3635 (fun _menhir_env ->
3636 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3637 let {
3638 MenhirLib.EngineTypes.semv = _3;
3639 MenhirLib.EngineTypes.startp = _startpos__3_;
3640 MenhirLib.EngineTypes.endp = _endpos__3_;
3641 MenhirLib.EngineTypes.next = {
3642 MenhirLib.EngineTypes.semv = _2;
3643 MenhirLib.EngineTypes.startp = _startpos__2_;
3644 MenhirLib.EngineTypes.endp = _endpos__2_;
3645 MenhirLib.EngineTypes.next = {
3646 MenhirLib.EngineTypes.state = _menhir_s;
3647 MenhirLib.EngineTypes.semv = _1;
3648 MenhirLib.EngineTypes.startp = _startpos__1_;
3649 MenhirLib.EngineTypes.endp = _endpos__1_;
3650 MenhirLib.EngineTypes.next = _menhir_stack;
3651 };
3652 };
3653 } = _menhir_stack in
3654 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3655 let _2 : (
3656 # 90 "parser_cocci_menhir.mly"
3657 (Data.clt)
3658 # 3659 "parser_cocci_menhir.ml"
3659 ) = Obj.magic _2 in
3660 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3661 let _startpos = _startpos__1_ in
3662 let _endpos = _endpos__3_ in
3663 let _v : 'tv_arith_expr_expr_invalid_ =
3664 # 1210 "parser_cocci_menhir.mly"
3665 ( P.arith_op Ast.Or _1 _2 _3 )
3666 # 3667 "parser_cocci_menhir.ml"
3667 in
3668 _menhir_env.MenhirLib.EngineTypes.stack <- {
3669 MenhirLib.EngineTypes.state = _menhir_s;
3670 MenhirLib.EngineTypes.semv = Obj.repr _v;
3671 MenhirLib.EngineTypes.startp = _startpos;
3672 MenhirLib.EngineTypes.endp = _endpos;
3673 MenhirLib.EngineTypes.next = _menhir_stack;
3674 });
3675 (fun _menhir_env ->
3676 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3677 let {
3678 MenhirLib.EngineTypes.semv = _3;
3679 MenhirLib.EngineTypes.startp = _startpos__3_;
3680 MenhirLib.EngineTypes.endp = _endpos__3_;
3681 MenhirLib.EngineTypes.next = {
3682 MenhirLib.EngineTypes.semv = _2;
3683 MenhirLib.EngineTypes.startp = _startpos__2_;
3684 MenhirLib.EngineTypes.endp = _endpos__2_;
3685 MenhirLib.EngineTypes.next = {
3686 MenhirLib.EngineTypes.state = _menhir_s;
3687 MenhirLib.EngineTypes.semv = _1;
3688 MenhirLib.EngineTypes.startp = _startpos__1_;
3689 MenhirLib.EngineTypes.endp = _endpos__1_;
3690 MenhirLib.EngineTypes.next = _menhir_stack;
3691 };
3692 };
3693 } = _menhir_stack in
3694 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3695 let _2 : (
3696 # 91 "parser_cocci_menhir.mly"
3697 (Data.clt)
3698 # 3699 "parser_cocci_menhir.ml"
3699 ) = Obj.magic _2 in
3700 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3701 let _startpos = _startpos__1_ in
3702 let _endpos = _endpos__3_ in
3703 let _v : 'tv_arith_expr_expr_invalid_ =
3704 # 1212 "parser_cocci_menhir.mly"
3705 ( P.arith_op Ast.Xor _1 _2 _3 )
3706 # 3707 "parser_cocci_menhir.ml"
3707 in
3708 _menhir_env.MenhirLib.EngineTypes.stack <- {
3709 MenhirLib.EngineTypes.state = _menhir_s;
3710 MenhirLib.EngineTypes.semv = Obj.repr _v;
3711 MenhirLib.EngineTypes.startp = _startpos;
3712 MenhirLib.EngineTypes.endp = _endpos;
3713 MenhirLib.EngineTypes.next = _menhir_stack;
3714 });
3715 (fun _menhir_env ->
3716 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3717 let {
3718 MenhirLib.EngineTypes.semv = _3;
3719 MenhirLib.EngineTypes.startp = _startpos__3_;
3720 MenhirLib.EngineTypes.endp = _endpos__3_;
3721 MenhirLib.EngineTypes.next = {
3722 MenhirLib.EngineTypes.semv = _2;
3723 MenhirLib.EngineTypes.startp = _startpos__2_;
3724 MenhirLib.EngineTypes.endp = _endpos__2_;
3725 MenhirLib.EngineTypes.next = {
3726 MenhirLib.EngineTypes.state = _menhir_s;
3727 MenhirLib.EngineTypes.semv = _1;
3728 MenhirLib.EngineTypes.startp = _startpos__1_;
3729 MenhirLib.EngineTypes.endp = _endpos__1_;
3730 MenhirLib.EngineTypes.next = _menhir_stack;
3731 };
3732 };
3733 } = _menhir_stack in
3734 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3735 let _2 : (
3736 # 89 "parser_cocci_menhir.mly"
3737 (Data.clt)
3738 # 3739 "parser_cocci_menhir.ml"
3739 ) = Obj.magic _2 in
3740 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3741 let _startpos = _startpos__1_ in
3742 let _endpos = _endpos__3_ in
3743 let _v : 'tv_arith_expr_expr_invalid_ =
3744 # 1214 "parser_cocci_menhir.mly"
3745 ( P.logic_op Ast.AndLog _1 _2 _3 )
3746 # 3747 "parser_cocci_menhir.ml"
3747 in
3748 _menhir_env.MenhirLib.EngineTypes.stack <- {
3749 MenhirLib.EngineTypes.state = _menhir_s;
3750 MenhirLib.EngineTypes.semv = Obj.repr _v;
3751 MenhirLib.EngineTypes.startp = _startpos;
3752 MenhirLib.EngineTypes.endp = _endpos;
3753 MenhirLib.EngineTypes.next = _menhir_stack;
3754 });
3755 (fun _menhir_env ->
3756 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3757 let {
3758 MenhirLib.EngineTypes.semv = _3;
3759 MenhirLib.EngineTypes.startp = _startpos__3_;
3760 MenhirLib.EngineTypes.endp = _endpos__3_;
3761 MenhirLib.EngineTypes.next = {
3762 MenhirLib.EngineTypes.semv = _2;
3763 MenhirLib.EngineTypes.startp = _startpos__2_;
3764 MenhirLib.EngineTypes.endp = _endpos__2_;
3765 MenhirLib.EngineTypes.next = {
3766 MenhirLib.EngineTypes.state = _menhir_s;
3767 MenhirLib.EngineTypes.semv = _1;
3768 MenhirLib.EngineTypes.startp = _startpos__1_;
3769 MenhirLib.EngineTypes.endp = _endpos__1_;
3770 MenhirLib.EngineTypes.next = _menhir_stack;
3771 };
3772 };
3773 } = _menhir_stack in
3774 let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
3775 let _2 : (
3776 # 88 "parser_cocci_menhir.mly"
3777 (Data.clt)
3778 # 3779 "parser_cocci_menhir.ml"
3779 ) = Obj.magic _2 in
3780 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3781 let _startpos = _startpos__1_ in
3782 let _endpos = _endpos__3_ in
3783 let _v : 'tv_arith_expr_expr_invalid_ =
3784 # 1216 "parser_cocci_menhir.mly"
3785 ( P.logic_op Ast.OrLog _1 _2 _3 )
3786 # 3787 "parser_cocci_menhir.ml"
3787 in
3788 _menhir_env.MenhirLib.EngineTypes.stack <- {
3789 MenhirLib.EngineTypes.state = _menhir_s;
3790 MenhirLib.EngineTypes.semv = Obj.repr _v;
3791 MenhirLib.EngineTypes.startp = _startpos;
3792 MenhirLib.EngineTypes.endp = _endpos;
3793 MenhirLib.EngineTypes.next = _menhir_stack;
3794 });
3795 (fun _menhir_env ->
3796 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3797 let {
3798 MenhirLib.EngineTypes.state = _menhir_s;
3799 MenhirLib.EngineTypes.startp = _startpos__1_;
3800 MenhirLib.EngineTypes.endp = _endpos__1_;
3801 MenhirLib.EngineTypes.next = _menhir_stack;
3802 } = _menhir_stack in
3803 let _startpos = _startpos__1_ in
3804 let _endpos = _endpos__1_ in
3805 let _v : 'tv_arity =
3806 # 435 "parser_cocci_menhir.mly"
3807 ( Ast.UNIQUE )
3808 # 3809 "parser_cocci_menhir.ml"
3809 in
3810 _menhir_env.MenhirLib.EngineTypes.stack <- {
3811 MenhirLib.EngineTypes.state = _menhir_s;
3812 MenhirLib.EngineTypes.semv = Obj.repr _v;
3813 MenhirLib.EngineTypes.startp = _startpos;
3814 MenhirLib.EngineTypes.endp = _endpos;
3815 MenhirLib.EngineTypes.next = _menhir_stack;
3816 });
3817 (fun _menhir_env ->
3818 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3819 let {
3820 MenhirLib.EngineTypes.state = _menhir_s;
3821 MenhirLib.EngineTypes.startp = _startpos__1_;
3822 MenhirLib.EngineTypes.endp = _endpos__1_;
3823 MenhirLib.EngineTypes.next = _menhir_stack;
3824 } = _menhir_stack in
3825 let _startpos = _startpos__1_ in
3826 let _endpos = _endpos__1_ in
3827 let _v : 'tv_arity =
3828 # 436 "parser_cocci_menhir.mly"
3829 ( Ast.OPT )
3830 # 3831 "parser_cocci_menhir.ml"
3831 in
3832 _menhir_env.MenhirLib.EngineTypes.stack <- {
3833 MenhirLib.EngineTypes.state = _menhir_s;
3834 MenhirLib.EngineTypes.semv = Obj.repr _v;
3835 MenhirLib.EngineTypes.startp = _startpos;
3836 MenhirLib.EngineTypes.endp = _endpos;
3837 MenhirLib.EngineTypes.next = _menhir_stack;
3838 });
3839 (fun _menhir_env ->
3840 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3841 let {
3842 MenhirLib.EngineTypes.state = _menhir_s;
3843 MenhirLib.EngineTypes.startp = _startpos__1_;
3844 MenhirLib.EngineTypes.endp = _endpos__1_;
3845 MenhirLib.EngineTypes.next = _menhir_stack;
3846 } = _menhir_stack in
3847 let _startpos = _startpos__1_ in
3848 let _endpos = _endpos__1_ in
3849 let _v : 'tv_arity =
3850 # 437 "parser_cocci_menhir.mly"
3851 ( Ast.MULTI )
3852 # 3853 "parser_cocci_menhir.ml"
3853 in
3854 _menhir_env.MenhirLib.EngineTypes.stack <- {
3855 MenhirLib.EngineTypes.state = _menhir_s;
3856 MenhirLib.EngineTypes.semv = Obj.repr _v;
3857 MenhirLib.EngineTypes.startp = _startpos;
3858 MenhirLib.EngineTypes.endp = _endpos;
3859 MenhirLib.EngineTypes.next = _menhir_stack;
3860 });
3861 (fun _menhir_env ->
3862 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3863 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
3864 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
3865 let _endpos = _startpos in
3866 let _v : 'tv_arity =
3867 # 438 "parser_cocci_menhir.mly"
3868 ( Ast.NONE )
3869 # 3870 "parser_cocci_menhir.ml"
3870 in
3871 _menhir_env.MenhirLib.EngineTypes.stack <- {
3872 MenhirLib.EngineTypes.state = _menhir_s;
3873 MenhirLib.EngineTypes.semv = Obj.repr _v;
3874 MenhirLib.EngineTypes.startp = _startpos;
3875 MenhirLib.EngineTypes.endp = _endpos;
3876 MenhirLib.EngineTypes.next = _menhir_stack;
3877 });
3878 (fun _menhir_env ->
3879 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3880 let {
3881 MenhirLib.EngineTypes.semv = r;
3882 MenhirLib.EngineTypes.startp = _startpos_r_;
3883 MenhirLib.EngineTypes.endp = _endpos_r_;
3884 MenhirLib.EngineTypes.next = {
3885 MenhirLib.EngineTypes.semv = i;
3886 MenhirLib.EngineTypes.startp = _startpos_i_;
3887 MenhirLib.EngineTypes.endp = _endpos_i_;
3888 MenhirLib.EngineTypes.next = {
3889 MenhirLib.EngineTypes.state = _menhir_s;
3890 MenhirLib.EngineTypes.semv = l;
3891 MenhirLib.EngineTypes.startp = _startpos_l_;
3892 MenhirLib.EngineTypes.endp = _endpos_l_;
3893 MenhirLib.EngineTypes.next = _menhir_stack;
3894 };
3895 };
3896 } = _menhir_stack in
3897 let r : (
3898 # 101 "parser_cocci_menhir.mly"
3899 (Data.clt)
3900 # 3901 "parser_cocci_menhir.ml"
3901 ) = Obj.magic r in
3902 let i : 'tv_option_eexpr_ = Obj.magic i in
3903 let l : (
3904 # 101 "parser_cocci_menhir.mly"
3905 (Data.clt)
3906 # 3907 "parser_cocci_menhir.ml"
3907 ) = Obj.magic l in
3908 let _startpos = _startpos_l_ in
3909 let _endpos = _endpos_r_ in
3910 let _v : 'tv_array_dec =
3911 # 1004 "parser_cocci_menhir.mly"
3912 ( (l,i,r) )
3913 # 3914 "parser_cocci_menhir.ml"
3914 in
3915 _menhir_env.MenhirLib.EngineTypes.stack <- {
3916 MenhirLib.EngineTypes.state = _menhir_s;
3917 MenhirLib.EngineTypes.semv = Obj.repr _v;
3918 MenhirLib.EngineTypes.startp = _startpos;
3919 MenhirLib.EngineTypes.endp = _endpos;
3920 MenhirLib.EngineTypes.next = _menhir_stack;
3921 });
3922 (fun _menhir_env ->
3923 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3924 let {
3925 MenhirLib.EngineTypes.state = _menhir_s;
3926 MenhirLib.EngineTypes.semv = _1;
3927 MenhirLib.EngineTypes.startp = _startpos__1_;
3928 MenhirLib.EngineTypes.endp = _endpos__1_;
3929 MenhirLib.EngineTypes.next = _menhir_stack;
3930 } = _menhir_stack in
3931 let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
3932 let _startpos = _startpos__1_ in
3933 let _endpos = _endpos__1_ in
3934 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
3935 # 1162 "parser_cocci_menhir.mly"
3936 ( _1 )
3937 # 3938 "parser_cocci_menhir.ml"
3938 in
3939 _menhir_env.MenhirLib.EngineTypes.stack <- {
3940 MenhirLib.EngineTypes.state = _menhir_s;
3941 MenhirLib.EngineTypes.semv = Obj.repr _v;
3942 MenhirLib.EngineTypes.startp = _startpos;
3943 MenhirLib.EngineTypes.endp = _endpos;
3944 MenhirLib.EngineTypes.next = _menhir_stack;
3945 });
3946 (fun _menhir_env ->
3947 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3948 let {
3949 MenhirLib.EngineTypes.semv = _3;
3950 MenhirLib.EngineTypes.startp = _startpos__3_;
3951 MenhirLib.EngineTypes.endp = _endpos__3_;
3952 MenhirLib.EngineTypes.next = {
3953 MenhirLib.EngineTypes.semv = _2;
3954 MenhirLib.EngineTypes.startp = _startpos__2_;
3955 MenhirLib.EngineTypes.endp = _endpos__2_;
3956 MenhirLib.EngineTypes.next = {
3957 MenhirLib.EngineTypes.state = _menhir_s;
3958 MenhirLib.EngineTypes.semv = _1;
3959 MenhirLib.EngineTypes.startp = _startpos__1_;
3960 MenhirLib.EngineTypes.endp = _endpos__1_;
3961 MenhirLib.EngineTypes.next = _menhir_stack;
3962 };
3963 };
3964 } = _menhir_stack in
3965 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
3966 let _2 : (
3967 # 107 "parser_cocci_menhir.mly"
3968 (Ast_cocci.assignOp * Data.clt)
3969 # 3970 "parser_cocci_menhir.ml"
3970 ) = Obj.magic _2 in
3971 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
3972 let _startpos = _startpos__1_ in
3973 let _endpos = _endpos__3_ in
3974 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
3975 # 1164 "parser_cocci_menhir.mly"
3976 ( let (op,clt) = _2 in
3977 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
3978 Ast0.set_arg_exp _3,false)) )
3979 # 3980 "parser_cocci_menhir.ml"
3980 in
3981 _menhir_env.MenhirLib.EngineTypes.stack <- {
3982 MenhirLib.EngineTypes.state = _menhir_s;
3983 MenhirLib.EngineTypes.semv = Obj.repr _v;
3984 MenhirLib.EngineTypes.startp = _startpos;
3985 MenhirLib.EngineTypes.endp = _endpos;
3986 MenhirLib.EngineTypes.next = _menhir_stack;
3987 });
3988 (fun _menhir_env ->
3989 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3990 let {
3991 MenhirLib.EngineTypes.semv = _3;
3992 MenhirLib.EngineTypes.startp = _startpos__3_;
3993 MenhirLib.EngineTypes.endp = _endpos__3_;
3994 MenhirLib.EngineTypes.next = {
3995 MenhirLib.EngineTypes.semv = _2;
3996 MenhirLib.EngineTypes.startp = _startpos__2_;
3997 MenhirLib.EngineTypes.endp = _endpos__2_;
3998 MenhirLib.EngineTypes.next = {
3999 MenhirLib.EngineTypes.state = _menhir_s;
4000 MenhirLib.EngineTypes.semv = _1;
4001 MenhirLib.EngineTypes.startp = _startpos__1_;
4002 MenhirLib.EngineTypes.endp = _endpos__1_;
4003 MenhirLib.EngineTypes.next = _menhir_stack;
4004 };
4005 };
4006 } = _menhir_stack in
4007 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4008 let _2 : (
4009 # 106 "parser_cocci_menhir.mly"
4010 (Data.clt)
4011 # 4012 "parser_cocci_menhir.ml"
4012 ) = Obj.magic _2 in
4013 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4014 let _startpos = _startpos__1_ in
4015 let _endpos = _endpos__3_ in
4016 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
4017 # 1168 "parser_cocci_menhir.mly"
4018 ( Ast0.wrap
4019 (Ast0.Assignment
4020 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
4021 # 4022 "parser_cocci_menhir.ml"
4022 in
4023 _menhir_env.MenhirLib.EngineTypes.stack <- {
4024 MenhirLib.EngineTypes.state = _menhir_s;
4025 MenhirLib.EngineTypes.semv = Obj.repr _v;
4026 MenhirLib.EngineTypes.startp = _startpos;
4027 MenhirLib.EngineTypes.endp = _endpos;
4028 MenhirLib.EngineTypes.next = _menhir_stack;
4029 });
4030 (fun _menhir_env ->
4031 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4032 let {
4033 MenhirLib.EngineTypes.state = _menhir_s;
4034 MenhirLib.EngineTypes.semv = _1;
4035 MenhirLib.EngineTypes.startp = _startpos__1_;
4036 MenhirLib.EngineTypes.endp = _endpos__1_;
4037 MenhirLib.EngineTypes.next = _menhir_stack;
4038 } = _menhir_stack in
4039 let _1 : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic _1 in
4040 let _startpos = _startpos__1_ in
4041 let _endpos = _endpos__1_ in
4042 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
4043 # 1162 "parser_cocci_menhir.mly"
4044 ( _1 )
4045 # 4046 "parser_cocci_menhir.ml"
4046 in
4047 _menhir_env.MenhirLib.EngineTypes.stack <- {
4048 MenhirLib.EngineTypes.state = _menhir_s;
4049 MenhirLib.EngineTypes.semv = Obj.repr _v;
4050 MenhirLib.EngineTypes.startp = _startpos;
4051 MenhirLib.EngineTypes.endp = _endpos;
4052 MenhirLib.EngineTypes.next = _menhir_stack;
4053 });
4054 (fun _menhir_env ->
4055 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4056 let {
4057 MenhirLib.EngineTypes.semv = _3;
4058 MenhirLib.EngineTypes.startp = _startpos__3_;
4059 MenhirLib.EngineTypes.endp = _endpos__3_;
4060 MenhirLib.EngineTypes.next = {
4061 MenhirLib.EngineTypes.semv = _2;
4062 MenhirLib.EngineTypes.startp = _startpos__2_;
4063 MenhirLib.EngineTypes.endp = _endpos__2_;
4064 MenhirLib.EngineTypes.next = {
4065 MenhirLib.EngineTypes.state = _menhir_s;
4066 MenhirLib.EngineTypes.semv = _1;
4067 MenhirLib.EngineTypes.startp = _startpos__1_;
4068 MenhirLib.EngineTypes.endp = _endpos__1_;
4069 MenhirLib.EngineTypes.next = _menhir_stack;
4070 };
4071 };
4072 } = _menhir_stack in
4073 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4074 let _2 : (
4075 # 107 "parser_cocci_menhir.mly"
4076 (Ast_cocci.assignOp * Data.clt)
4077 # 4078 "parser_cocci_menhir.ml"
4078 ) = Obj.magic _2 in
4079 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
4080 let _startpos = _startpos__1_ in
4081 let _endpos = _endpos__3_ in
4082 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
4083 # 1164 "parser_cocci_menhir.mly"
4084 ( let (op,clt) = _2 in
4085 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
4086 Ast0.set_arg_exp _3,false)) )
4087 # 4088 "parser_cocci_menhir.ml"
4088 in
4089 _menhir_env.MenhirLib.EngineTypes.stack <- {
4090 MenhirLib.EngineTypes.state = _menhir_s;
4091 MenhirLib.EngineTypes.semv = Obj.repr _v;
4092 MenhirLib.EngineTypes.startp = _startpos;
4093 MenhirLib.EngineTypes.endp = _endpos;
4094 MenhirLib.EngineTypes.next = _menhir_stack;
4095 });
4096 (fun _menhir_env ->
4097 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4098 let {
4099 MenhirLib.EngineTypes.semv = _3;
4100 MenhirLib.EngineTypes.startp = _startpos__3_;
4101 MenhirLib.EngineTypes.endp = _endpos__3_;
4102 MenhirLib.EngineTypes.next = {
4103 MenhirLib.EngineTypes.semv = _2;
4104 MenhirLib.EngineTypes.startp = _startpos__2_;
4105 MenhirLib.EngineTypes.endp = _endpos__2_;
4106 MenhirLib.EngineTypes.next = {
4107 MenhirLib.EngineTypes.state = _menhir_s;
4108 MenhirLib.EngineTypes.semv = _1;
4109 MenhirLib.EngineTypes.startp = _startpos__1_;
4110 MenhirLib.EngineTypes.endp = _endpos__1_;
4111 MenhirLib.EngineTypes.next = _menhir_stack;
4112 };
4113 };
4114 } = _menhir_stack in
4115 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4116 let _2 : (
4117 # 106 "parser_cocci_menhir.mly"
4118 (Data.clt)
4119 # 4120 "parser_cocci_menhir.ml"
4120 ) = Obj.magic _2 in
4121 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
4122 let _startpos = _startpos__1_ in
4123 let _endpos = _endpos__3_ in
4124 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
4125 # 1168 "parser_cocci_menhir.mly"
4126 ( Ast0.wrap
4127 (Ast0.Assignment
4128 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
4129 # 4130 "parser_cocci_menhir.ml"
4130 in
4131 _menhir_env.MenhirLib.EngineTypes.stack <- {
4132 MenhirLib.EngineTypes.state = _menhir_s;
4133 MenhirLib.EngineTypes.semv = Obj.repr _v;
4134 MenhirLib.EngineTypes.startp = _startpos;
4135 MenhirLib.EngineTypes.endp = _endpos;
4136 MenhirLib.EngineTypes.next = _menhir_stack;
4137 });
4138 (fun _menhir_env ->
4139 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4140 let {
4141 MenhirLib.EngineTypes.state = _menhir_s;
4142 MenhirLib.EngineTypes.semv = _1;
4143 MenhirLib.EngineTypes.startp = _startpos__1_;
4144 MenhirLib.EngineTypes.endp = _endpos__1_;
4145 MenhirLib.EngineTypes.next = _menhir_stack;
4146 } = _menhir_stack in
4147 let _1 : 'tv_cond_expr_expr_invalid_ = Obj.magic _1 in
4148 let _startpos = _startpos__1_ in
4149 let _endpos = _endpos__1_ in
4150 let _v : 'tv_assign_expr_expr_invalid_ =
4151 # 1162 "parser_cocci_menhir.mly"
4152 ( _1 )
4153 # 4154 "parser_cocci_menhir.ml"
4154 in
4155 _menhir_env.MenhirLib.EngineTypes.stack <- {
4156 MenhirLib.EngineTypes.state = _menhir_s;
4157 MenhirLib.EngineTypes.semv = Obj.repr _v;
4158 MenhirLib.EngineTypes.startp = _startpos;
4159 MenhirLib.EngineTypes.endp = _endpos;
4160 MenhirLib.EngineTypes.next = _menhir_stack;
4161 });
4162 (fun _menhir_env ->
4163 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4164 let {
4165 MenhirLib.EngineTypes.semv = _3;
4166 MenhirLib.EngineTypes.startp = _startpos__3_;
4167 MenhirLib.EngineTypes.endp = _endpos__3_;
4168 MenhirLib.EngineTypes.next = {
4169 MenhirLib.EngineTypes.semv = _2;
4170 MenhirLib.EngineTypes.startp = _startpos__2_;
4171 MenhirLib.EngineTypes.endp = _endpos__2_;
4172 MenhirLib.EngineTypes.next = {
4173 MenhirLib.EngineTypes.state = _menhir_s;
4174 MenhirLib.EngineTypes.semv = _1;
4175 MenhirLib.EngineTypes.startp = _startpos__1_;
4176 MenhirLib.EngineTypes.endp = _endpos__1_;
4177 MenhirLib.EngineTypes.next = _menhir_stack;
4178 };
4179 };
4180 } = _menhir_stack in
4181 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4182 let _2 : (
4183 # 107 "parser_cocci_menhir.mly"
4184 (Ast_cocci.assignOp * Data.clt)
4185 # 4186 "parser_cocci_menhir.ml"
4186 ) = Obj.magic _2 in
4187 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
4188 let _startpos = _startpos__1_ in
4189 let _endpos = _endpos__3_ in
4190 let _v : 'tv_assign_expr_expr_invalid_ =
4191 # 1164 "parser_cocci_menhir.mly"
4192 ( let (op,clt) = _2 in
4193 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
4194 Ast0.set_arg_exp _3,false)) )
4195 # 4196 "parser_cocci_menhir.ml"
4196 in
4197 _menhir_env.MenhirLib.EngineTypes.stack <- {
4198 MenhirLib.EngineTypes.state = _menhir_s;
4199 MenhirLib.EngineTypes.semv = Obj.repr _v;
4200 MenhirLib.EngineTypes.startp = _startpos;
4201 MenhirLib.EngineTypes.endp = _endpos;
4202 MenhirLib.EngineTypes.next = _menhir_stack;
4203 });
4204 (fun _menhir_env ->
4205 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4206 let {
4207 MenhirLib.EngineTypes.semv = _3;
4208 MenhirLib.EngineTypes.startp = _startpos__3_;
4209 MenhirLib.EngineTypes.endp = _endpos__3_;
4210 MenhirLib.EngineTypes.next = {
4211 MenhirLib.EngineTypes.semv = _2;
4212 MenhirLib.EngineTypes.startp = _startpos__2_;
4213 MenhirLib.EngineTypes.endp = _endpos__2_;
4214 MenhirLib.EngineTypes.next = {
4215 MenhirLib.EngineTypes.state = _menhir_s;
4216 MenhirLib.EngineTypes.semv = _1;
4217 MenhirLib.EngineTypes.startp = _startpos__1_;
4218 MenhirLib.EngineTypes.endp = _endpos__1_;
4219 MenhirLib.EngineTypes.next = _menhir_stack;
4220 };
4221 };
4222 } = _menhir_stack in
4223 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4224 let _2 : (
4225 # 106 "parser_cocci_menhir.mly"
4226 (Data.clt)
4227 # 4228 "parser_cocci_menhir.ml"
4228 ) = Obj.magic _2 in
4229 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
4230 let _startpos = _startpos__1_ in
4231 let _endpos = _endpos__3_ in
4232 let _v : 'tv_assign_expr_expr_invalid_ =
4233 # 1168 "parser_cocci_menhir.mly"
4234 ( Ast0.wrap
4235 (Ast0.Assignment
4236 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
4237 # 4238 "parser_cocci_menhir.ml"
4238 in
4239 _menhir_env.MenhirLib.EngineTypes.stack <- {
4240 MenhirLib.EngineTypes.state = _menhir_s;
4241 MenhirLib.EngineTypes.semv = Obj.repr _v;
4242 MenhirLib.EngineTypes.startp = _startpos;
4243 MenhirLib.EngineTypes.endp = _endpos;
4244 MenhirLib.EngineTypes.next = _menhir_stack;
4245 });
4246 (fun _menhir_env ->
4247 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4248 let {
4249 MenhirLib.EngineTypes.state = _menhir_s;
4250 MenhirLib.EngineTypes.semv = _1;
4251 MenhirLib.EngineTypes.startp = _startpos__1_;
4252 MenhirLib.EngineTypes.endp = _endpos__1_;
4253 MenhirLib.EngineTypes.next = _menhir_stack;
4254 } = _menhir_stack in
4255 let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4256 let _startpos = _startpos__1_ in
4257 let _endpos = _endpos__1_ in
4258 let _v : 'tv_assign_expr_bis =
4259 # 1173 "parser_cocci_menhir.mly"
4260 ( _1 )
4261 # 4262 "parser_cocci_menhir.ml"
4262 in
4263 _menhir_env.MenhirLib.EngineTypes.stack <- {
4264 MenhirLib.EngineTypes.state = _menhir_s;
4265 MenhirLib.EngineTypes.semv = Obj.repr _v;
4266 MenhirLib.EngineTypes.startp = _startpos;
4267 MenhirLib.EngineTypes.endp = _endpos;
4268 MenhirLib.EngineTypes.next = _menhir_stack;
4269 });
4270 (fun _menhir_env ->
4271 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4272 let {
4273 MenhirLib.EngineTypes.semv = _3;
4274 MenhirLib.EngineTypes.startp = _startpos__3_;
4275 MenhirLib.EngineTypes.endp = _endpos__3_;
4276 MenhirLib.EngineTypes.next = {
4277 MenhirLib.EngineTypes.semv = _2;
4278 MenhirLib.EngineTypes.startp = _startpos__2_;
4279 MenhirLib.EngineTypes.endp = _endpos__2_;
4280 MenhirLib.EngineTypes.next = {
4281 MenhirLib.EngineTypes.state = _menhir_s;
4282 MenhirLib.EngineTypes.semv = _1;
4283 MenhirLib.EngineTypes.startp = _startpos__1_;
4284 MenhirLib.EngineTypes.endp = _endpos__1_;
4285 MenhirLib.EngineTypes.next = _menhir_stack;
4286 };
4287 };
4288 } = _menhir_stack in
4289 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4290 let _2 : (
4291 # 107 "parser_cocci_menhir.mly"
4292 (Ast_cocci.assignOp * Data.clt)
4293 # 4294 "parser_cocci_menhir.ml"
4294 ) = Obj.magic _2 in
4295 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4296 let _startpos = _startpos__1_ in
4297 let _endpos = _endpos__3_ in
4298 let _v : 'tv_assign_expr_bis =
4299 # 1175 "parser_cocci_menhir.mly"
4300 ( let (op,clt) = _2 in
4301 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
4302 Ast0.set_arg_exp _3,false)) )
4303 # 4304 "parser_cocci_menhir.ml"
4304 in
4305 _menhir_env.MenhirLib.EngineTypes.stack <- {
4306 MenhirLib.EngineTypes.state = _menhir_s;
4307 MenhirLib.EngineTypes.semv = Obj.repr _v;
4308 MenhirLib.EngineTypes.startp = _startpos;
4309 MenhirLib.EngineTypes.endp = _endpos;
4310 MenhirLib.EngineTypes.next = _menhir_stack;
4311 });
4312 (fun _menhir_env ->
4313 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4314 let {
4315 MenhirLib.EngineTypes.semv = _3;
4316 MenhirLib.EngineTypes.startp = _startpos__3_;
4317 MenhirLib.EngineTypes.endp = _endpos__3_;
4318 MenhirLib.EngineTypes.next = {
4319 MenhirLib.EngineTypes.semv = _2;
4320 MenhirLib.EngineTypes.startp = _startpos__2_;
4321 MenhirLib.EngineTypes.endp = _endpos__2_;
4322 MenhirLib.EngineTypes.next = {
4323 MenhirLib.EngineTypes.state = _menhir_s;
4324 MenhirLib.EngineTypes.semv = _1;
4325 MenhirLib.EngineTypes.startp = _startpos__1_;
4326 MenhirLib.EngineTypes.endp = _endpos__1_;
4327 MenhirLib.EngineTypes.next = _menhir_stack;
4328 };
4329 };
4330 } = _menhir_stack in
4331 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
4332 let _2 : (
4333 # 106 "parser_cocci_menhir.mly"
4334 (Data.clt)
4335 # 4336 "parser_cocci_menhir.ml"
4336 ) = Obj.magic _2 in
4337 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4338 let _startpos = _startpos__1_ in
4339 let _endpos = _endpos__3_ in
4340 let _v : 'tv_assign_expr_bis =
4341 # 1179 "parser_cocci_menhir.mly"
4342 ( Ast0.wrap
4343 (Ast0.Assignment
4344 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
4345 # 4346 "parser_cocci_menhir.ml"
4346 in
4347 _menhir_env.MenhirLib.EngineTypes.stack <- {
4348 MenhirLib.EngineTypes.state = _menhir_s;
4349 MenhirLib.EngineTypes.semv = Obj.repr _v;
4350 MenhirLib.EngineTypes.startp = _startpos;
4351 MenhirLib.EngineTypes.endp = _endpos;
4352 MenhirLib.EngineTypes.next = _menhir_stack;
4353 });
4354 (fun _menhir_env ->
4355 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4356 let {
4357 MenhirLib.EngineTypes.state = _menhir_s;
4358 MenhirLib.EngineTypes.semv = _1;
4359 MenhirLib.EngineTypes.startp = _startpos__1_;
4360 MenhirLib.EngineTypes.endp = _endpos__1_;
4361 MenhirLib.EngineTypes.next = _menhir_stack;
4362 } = _menhir_stack in
4363 let _1 : 'tv_assign_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4364 let _startpos = _startpos__1_ in
4365 let _endpos = _endpos__1_ in
4366 let _v : 'tv_basic_expr_eexpr_dot_expressions_ =
4367 # 1159 "parser_cocci_menhir.mly"
4368 ( _1 )
4369 # 4370 "parser_cocci_menhir.ml"
4370 in
4371 _menhir_env.MenhirLib.EngineTypes.stack <- {
4372 MenhirLib.EngineTypes.state = _menhir_s;
4373 MenhirLib.EngineTypes.semv = Obj.repr _v;
4374 MenhirLib.EngineTypes.startp = _startpos;
4375 MenhirLib.EngineTypes.endp = _endpos;
4376 MenhirLib.EngineTypes.next = _menhir_stack;
4377 });
4378 (fun _menhir_env ->
4379 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4380 let {
4381 MenhirLib.EngineTypes.state = _menhir_s;
4382 MenhirLib.EngineTypes.semv = _1;
4383 MenhirLib.EngineTypes.startp = _startpos__1_;
4384 MenhirLib.EngineTypes.endp = _endpos__1_;
4385 MenhirLib.EngineTypes.next = _menhir_stack;
4386 } = _menhir_stack in
4387 let _1 : 'tv_assign_expr_eexpr_nest_expressions_ = Obj.magic _1 in
4388 let _startpos = _startpos__1_ in
4389 let _endpos = _endpos__1_ in
4390 let _v : 'tv_basic_expr_eexpr_nest_expressions_ =
4391 # 1159 "parser_cocci_menhir.mly"
4392 ( _1 )
4393 # 4394 "parser_cocci_menhir.ml"
4394 in
4395 _menhir_env.MenhirLib.EngineTypes.stack <- {
4396 MenhirLib.EngineTypes.state = _menhir_s;
4397 MenhirLib.EngineTypes.semv = Obj.repr _v;
4398 MenhirLib.EngineTypes.startp = _startpos;
4399 MenhirLib.EngineTypes.endp = _endpos;
4400 MenhirLib.EngineTypes.next = _menhir_stack;
4401 });
4402 (fun _menhir_env ->
4403 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4404 let {
4405 MenhirLib.EngineTypes.state = _menhir_s;
4406 MenhirLib.EngineTypes.semv = _1;
4407 MenhirLib.EngineTypes.startp = _startpos__1_;
4408 MenhirLib.EngineTypes.endp = _endpos__1_;
4409 MenhirLib.EngineTypes.next = _menhir_stack;
4410 } = _menhir_stack in
4411 let _1 : 'tv_assign_expr_expr_invalid_ = Obj.magic _1 in
4412 let _startpos = _startpos__1_ in
4413 let _endpos = _endpos__1_ in
4414 let _v : 'tv_basic_expr_expr_invalid_ =
4415 # 1159 "parser_cocci_menhir.mly"
4416 ( _1 )
4417 # 4418 "parser_cocci_menhir.ml"
4418 in
4419 _menhir_env.MenhirLib.EngineTypes.stack <- {
4420 MenhirLib.EngineTypes.state = _menhir_s;
4421 MenhirLib.EngineTypes.semv = Obj.repr _v;
4422 MenhirLib.EngineTypes.startp = _startpos;
4423 MenhirLib.EngineTypes.endp = _endpos;
4424 MenhirLib.EngineTypes.next = _menhir_stack;
4425 });
4426 (fun _menhir_env ->
4427 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4428 let {
4429 MenhirLib.EngineTypes.semv = _3;
4430 MenhirLib.EngineTypes.startp = _startpos__3_;
4431 MenhirLib.EngineTypes.endp = _endpos__3_;
4432 MenhirLib.EngineTypes.next = {
4433 MenhirLib.EngineTypes.semv = _2;
4434 MenhirLib.EngineTypes.startp = _startpos__2_;
4435 MenhirLib.EngineTypes.endp = _endpos__2_;
4436 MenhirLib.EngineTypes.next = {
4437 MenhirLib.EngineTypes.state = _menhir_s;
4438 MenhirLib.EngineTypes.semv = _1;
4439 MenhirLib.EngineTypes.startp = _startpos__1_;
4440 MenhirLib.EngineTypes.endp = _endpos__1_;
4441 MenhirLib.EngineTypes.next = _menhir_stack;
4442 };
4443 };
4444 } = _menhir_stack in
4445 let _3 : 'tv_fun_start = Obj.magic _3 in
4446 let _2 : (
4447 # 75 "parser_cocci_menhir.mly"
4448 (Data.clt)
4449 # 4450 "parser_cocci_menhir.ml"
4450 ) = Obj.magic _2 in
4451 let _1 : (
4452 # 57 "parser_cocci_menhir.mly"
4453 (Data.clt)
4454 # 4455 "parser_cocci_menhir.ml"
4455 ) = Obj.magic _1 in
4456 let _startpos = _startpos__1_ in
4457 let _endpos = _endpos__3_ in
4458 let _v : 'tv_case_line =
4459 # 876 "parser_cocci_menhir.mly"
4460 ( Ast0.wrap(Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) )
4461 # 4462 "parser_cocci_menhir.ml"
4462 in
4463 _menhir_env.MenhirLib.EngineTypes.stack <- {
4464 MenhirLib.EngineTypes.state = _menhir_s;
4465 MenhirLib.EngineTypes.semv = Obj.repr _v;
4466 MenhirLib.EngineTypes.startp = _startpos;
4467 MenhirLib.EngineTypes.endp = _endpos;
4468 MenhirLib.EngineTypes.next = _menhir_stack;
4469 });
4470 (fun _menhir_env ->
4471 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4472 let {
4473 MenhirLib.EngineTypes.semv = _4;
4474 MenhirLib.EngineTypes.startp = _startpos__4_;
4475 MenhirLib.EngineTypes.endp = _endpos__4_;
4476 MenhirLib.EngineTypes.next = {
4477 MenhirLib.EngineTypes.semv = _3;
4478 MenhirLib.EngineTypes.startp = _startpos__3_;
4479 MenhirLib.EngineTypes.endp = _endpos__3_;
4480 MenhirLib.EngineTypes.next = {
4481 MenhirLib.EngineTypes.semv = _2;
4482 MenhirLib.EngineTypes.startp = _startpos__2_;
4483 MenhirLib.EngineTypes.endp = _endpos__2_;
4484 MenhirLib.EngineTypes.next = {
4485 MenhirLib.EngineTypes.state = _menhir_s;
4486 MenhirLib.EngineTypes.semv = _1;
4487 MenhirLib.EngineTypes.startp = _startpos__1_;
4488 MenhirLib.EngineTypes.endp = _endpos__1_;
4489 MenhirLib.EngineTypes.next = _menhir_stack;
4490 };
4491 };
4492 };
4493 } = _menhir_stack in
4494 let _4 : 'tv_fun_start = Obj.magic _4 in
4495 let _3 : (
4496 # 75 "parser_cocci_menhir.mly"
4497 (Data.clt)
4498 # 4499 "parser_cocci_menhir.ml"
4499 ) = Obj.magic _3 in
4500 let _2 : 'tv_eexpr = Obj.magic _2 in
4501 let _1 : (
4502 # 57 "parser_cocci_menhir.mly"
4503 (Data.clt)
4504 # 4505 "parser_cocci_menhir.ml"
4505 ) = Obj.magic _1 in
4506 let _startpos = _startpos__1_ in
4507 let _endpos = _endpos__4_ in
4508 let _v : 'tv_case_line =
4509 # 878 "parser_cocci_menhir.mly"
4510 ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) )
4511 # 4512 "parser_cocci_menhir.ml"
4512 in
4513 _menhir_env.MenhirLib.EngineTypes.stack <- {
4514 MenhirLib.EngineTypes.state = _menhir_s;
4515 MenhirLib.EngineTypes.semv = Obj.repr _v;
4516 MenhirLib.EngineTypes.startp = _startpos;
4517 MenhirLib.EngineTypes.endp = _endpos;
4518 MenhirLib.EngineTypes.next = _menhir_stack;
4519 });
4520 (fun _menhir_env ->
4521 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4522 let {
4523 MenhirLib.EngineTypes.state = _menhir_s;
4524 MenhirLib.EngineTypes.semv = _1;
4525 MenhirLib.EngineTypes.startp = _startpos__1_;
4526 MenhirLib.EngineTypes.endp = _endpos__1_;
4527 MenhirLib.EngineTypes.next = _menhir_stack;
4528 } = _menhir_stack in
4529 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4530 let _startpos = _startpos__1_ in
4531 let _endpos = _endpos__1_ in
4532 let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
4533 # 1219 "parser_cocci_menhir.mly"
4534 ( _1 )
4535 # 4536 "parser_cocci_menhir.ml"
4536 in
4537 _menhir_env.MenhirLib.EngineTypes.stack <- {
4538 MenhirLib.EngineTypes.state = _menhir_s;
4539 MenhirLib.EngineTypes.semv = Obj.repr _v;
4540 MenhirLib.EngineTypes.startp = _startpos;
4541 MenhirLib.EngineTypes.endp = _endpos;
4542 MenhirLib.EngineTypes.next = _menhir_stack;
4543 });
4544 (fun _menhir_env ->
4545 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4546 let {
4547 MenhirLib.EngineTypes.semv = e;
4548 MenhirLib.EngineTypes.startp = _startpos_e_;
4549 MenhirLib.EngineTypes.endp = _endpos_e_;
4550 MenhirLib.EngineTypes.next = {
4551 MenhirLib.EngineTypes.semv = rp;
4552 MenhirLib.EngineTypes.startp = _startpos_rp_;
4553 MenhirLib.EngineTypes.endp = _endpos_rp_;
4554 MenhirLib.EngineTypes.next = {
4555 MenhirLib.EngineTypes.semv = t;
4556 MenhirLib.EngineTypes.startp = _startpos_t_;
4557 MenhirLib.EngineTypes.endp = _endpos_t_;
4558 MenhirLib.EngineTypes.next = {
4559 MenhirLib.EngineTypes.state = _menhir_s;
4560 MenhirLib.EngineTypes.semv = lp;
4561 MenhirLib.EngineTypes.startp = _startpos_lp_;
4562 MenhirLib.EngineTypes.endp = _endpos_lp_;
4563 MenhirLib.EngineTypes.next = _menhir_stack;
4564 };
4565 };
4566 };
4567 } = _menhir_stack in
4568 let e : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic e in
4569 let rp : (
4570 # 76 "parser_cocci_menhir.mly"
4571 (Data.clt)
4572 # 4573 "parser_cocci_menhir.ml"
4573 ) = Obj.magic rp in
4574 let t : 'tv_ctype = Obj.magic t in
4575 let lp : (
4576 # 75 "parser_cocci_menhir.mly"
4577 (Data.clt)
4578 # 4579 "parser_cocci_menhir.ml"
4579 ) = Obj.magic lp in
4580 let _startpos = _startpos_lp_ in
4581 let _endpos = _endpos_e_ in
4582 let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
4583 # 1221 "parser_cocci_menhir.mly"
4584 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
4585 P.clt2mcode ")" rp, e)) )
4586 # 4587 "parser_cocci_menhir.ml"
4587 in
4588 _menhir_env.MenhirLib.EngineTypes.stack <- {
4589 MenhirLib.EngineTypes.state = _menhir_s;
4590 MenhirLib.EngineTypes.semv = Obj.repr _v;
4591 MenhirLib.EngineTypes.startp = _startpos;
4592 MenhirLib.EngineTypes.endp = _endpos;
4593 MenhirLib.EngineTypes.next = _menhir_stack;
4594 });
4595 (fun _menhir_env ->
4596 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4597 let {
4598 MenhirLib.EngineTypes.state = _menhir_s;
4599 MenhirLib.EngineTypes.semv = _1;
4600 MenhirLib.EngineTypes.startp = _startpos__1_;
4601 MenhirLib.EngineTypes.endp = _endpos__1_;
4602 MenhirLib.EngineTypes.next = _menhir_stack;
4603 } = _menhir_stack in
4604 let _1 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _1 in
4605 let _startpos = _startpos__1_ in
4606 let _endpos = _endpos__1_ in
4607 let _v : 'tv_cast_expr_eexpr_invalid_ =
4608 # 1219 "parser_cocci_menhir.mly"
4609 ( _1 )
4610 # 4611 "parser_cocci_menhir.ml"
4611 in
4612 _menhir_env.MenhirLib.EngineTypes.stack <- {
4613 MenhirLib.EngineTypes.state = _menhir_s;
4614 MenhirLib.EngineTypes.semv = Obj.repr _v;
4615 MenhirLib.EngineTypes.startp = _startpos;
4616 MenhirLib.EngineTypes.endp = _endpos;
4617 MenhirLib.EngineTypes.next = _menhir_stack;
4618 });
4619 (fun _menhir_env ->
4620 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4621 let {
4622 MenhirLib.EngineTypes.semv = e;
4623 MenhirLib.EngineTypes.startp = _startpos_e_;
4624 MenhirLib.EngineTypes.endp = _endpos_e_;
4625 MenhirLib.EngineTypes.next = {
4626 MenhirLib.EngineTypes.semv = rp;
4627 MenhirLib.EngineTypes.startp = _startpos_rp_;
4628 MenhirLib.EngineTypes.endp = _endpos_rp_;
4629 MenhirLib.EngineTypes.next = {
4630 MenhirLib.EngineTypes.semv = t;
4631 MenhirLib.EngineTypes.startp = _startpos_t_;
4632 MenhirLib.EngineTypes.endp = _endpos_t_;
4633 MenhirLib.EngineTypes.next = {
4634 MenhirLib.EngineTypes.state = _menhir_s;
4635 MenhirLib.EngineTypes.semv = lp;
4636 MenhirLib.EngineTypes.startp = _startpos_lp_;
4637 MenhirLib.EngineTypes.endp = _endpos_lp_;
4638 MenhirLib.EngineTypes.next = _menhir_stack;
4639 };
4640 };
4641 };
4642 } = _menhir_stack in
4643 let e : 'tv_cast_expr_eexpr_invalid_ = Obj.magic e in
4644 let rp : (
4645 # 76 "parser_cocci_menhir.mly"
4646 (Data.clt)
4647 # 4648 "parser_cocci_menhir.ml"
4648 ) = Obj.magic rp in
4649 let t : 'tv_ctype = Obj.magic t in
4650 let lp : (
4651 # 75 "parser_cocci_menhir.mly"
4652 (Data.clt)
4653 # 4654 "parser_cocci_menhir.ml"
4654 ) = Obj.magic lp in
4655 let _startpos = _startpos_lp_ in
4656 let _endpos = _endpos_e_ in
4657 let _v : 'tv_cast_expr_eexpr_invalid_ =
4658 # 1221 "parser_cocci_menhir.mly"
4659 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
4660 P.clt2mcode ")" rp, e)) )
4661 # 4662 "parser_cocci_menhir.ml"
4662 in
4663 _menhir_env.MenhirLib.EngineTypes.stack <- {
4664 MenhirLib.EngineTypes.state = _menhir_s;
4665 MenhirLib.EngineTypes.semv = Obj.repr _v;
4666 MenhirLib.EngineTypes.startp = _startpos;
4667 MenhirLib.EngineTypes.endp = _endpos;
4668 MenhirLib.EngineTypes.next = _menhir_stack;
4669 });
4670 (fun _menhir_env ->
4671 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4672 let {
4673 MenhirLib.EngineTypes.state = _menhir_s;
4674 MenhirLib.EngineTypes.semv = _1;
4675 MenhirLib.EngineTypes.startp = _startpos__1_;
4676 MenhirLib.EngineTypes.endp = _endpos__1_;
4677 MenhirLib.EngineTypes.next = _menhir_stack;
4678 } = _menhir_stack in
4679 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
4680 let _startpos = _startpos__1_ in
4681 let _endpos = _endpos__1_ in
4682 let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
4683 # 1219 "parser_cocci_menhir.mly"
4684 ( _1 )
4685 # 4686 "parser_cocci_menhir.ml"
4686 in
4687 _menhir_env.MenhirLib.EngineTypes.stack <- {
4688 MenhirLib.EngineTypes.state = _menhir_s;
4689 MenhirLib.EngineTypes.semv = Obj.repr _v;
4690 MenhirLib.EngineTypes.startp = _startpos;
4691 MenhirLib.EngineTypes.endp = _endpos;
4692 MenhirLib.EngineTypes.next = _menhir_stack;
4693 });
4694 (fun _menhir_env ->
4695 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4696 let {
4697 MenhirLib.EngineTypes.semv = e;
4698 MenhirLib.EngineTypes.startp = _startpos_e_;
4699 MenhirLib.EngineTypes.endp = _endpos_e_;
4700 MenhirLib.EngineTypes.next = {
4701 MenhirLib.EngineTypes.semv = rp;
4702 MenhirLib.EngineTypes.startp = _startpos_rp_;
4703 MenhirLib.EngineTypes.endp = _endpos_rp_;
4704 MenhirLib.EngineTypes.next = {
4705 MenhirLib.EngineTypes.semv = t;
4706 MenhirLib.EngineTypes.startp = _startpos_t_;
4707 MenhirLib.EngineTypes.endp = _endpos_t_;
4708 MenhirLib.EngineTypes.next = {
4709 MenhirLib.EngineTypes.state = _menhir_s;
4710 MenhirLib.EngineTypes.semv = lp;
4711 MenhirLib.EngineTypes.startp = _startpos_lp_;
4712 MenhirLib.EngineTypes.endp = _endpos_lp_;
4713 MenhirLib.EngineTypes.next = _menhir_stack;
4714 };
4715 };
4716 };
4717 } = _menhir_stack in
4718 let e : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic e in
4719 let rp : (
4720 # 76 "parser_cocci_menhir.mly"
4721 (Data.clt)
4722 # 4723 "parser_cocci_menhir.ml"
4723 ) = Obj.magic rp in
4724 let t : 'tv_ctype = Obj.magic t in
4725 let lp : (
4726 # 75 "parser_cocci_menhir.mly"
4727 (Data.clt)
4728 # 4729 "parser_cocci_menhir.ml"
4729 ) = Obj.magic lp in
4730 let _startpos = _startpos_lp_ in
4731 let _endpos = _endpos_e_ in
4732 let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
4733 # 1221 "parser_cocci_menhir.mly"
4734 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
4735 P.clt2mcode ")" rp, e)) )
4736 # 4737 "parser_cocci_menhir.ml"
4737 in
4738 _menhir_env.MenhirLib.EngineTypes.stack <- {
4739 MenhirLib.EngineTypes.state = _menhir_s;
4740 MenhirLib.EngineTypes.semv = Obj.repr _v;
4741 MenhirLib.EngineTypes.startp = _startpos;
4742 MenhirLib.EngineTypes.endp = _endpos;
4743 MenhirLib.EngineTypes.next = _menhir_stack;
4744 });
4745 (fun _menhir_env ->
4746 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4747 let {
4748 MenhirLib.EngineTypes.state = _menhir_s;
4749 MenhirLib.EngineTypes.semv = _1;
4750 MenhirLib.EngineTypes.startp = _startpos__1_;
4751 MenhirLib.EngineTypes.endp = _endpos__1_;
4752 MenhirLib.EngineTypes.next = _menhir_stack;
4753 } = _menhir_stack in
4754 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
4755 let _startpos = _startpos__1_ in
4756 let _endpos = _endpos__1_ in
4757 let _v : 'tv_cast_expr_expr_invalid_ =
4758 # 1219 "parser_cocci_menhir.mly"
4759 ( _1 )
4760 # 4761 "parser_cocci_menhir.ml"
4761 in
4762 _menhir_env.MenhirLib.EngineTypes.stack <- {
4763 MenhirLib.EngineTypes.state = _menhir_s;
4764 MenhirLib.EngineTypes.semv = Obj.repr _v;
4765 MenhirLib.EngineTypes.startp = _startpos;
4766 MenhirLib.EngineTypes.endp = _endpos;
4767 MenhirLib.EngineTypes.next = _menhir_stack;
4768 });
4769 (fun _menhir_env ->
4770 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4771 let {
4772 MenhirLib.EngineTypes.semv = e;
4773 MenhirLib.EngineTypes.startp = _startpos_e_;
4774 MenhirLib.EngineTypes.endp = _endpos_e_;
4775 MenhirLib.EngineTypes.next = {
4776 MenhirLib.EngineTypes.semv = rp;
4777 MenhirLib.EngineTypes.startp = _startpos_rp_;
4778 MenhirLib.EngineTypes.endp = _endpos_rp_;
4779 MenhirLib.EngineTypes.next = {
4780 MenhirLib.EngineTypes.semv = t;
4781 MenhirLib.EngineTypes.startp = _startpos_t_;
4782 MenhirLib.EngineTypes.endp = _endpos_t_;
4783 MenhirLib.EngineTypes.next = {
4784 MenhirLib.EngineTypes.state = _menhir_s;
4785 MenhirLib.EngineTypes.semv = lp;
4786 MenhirLib.EngineTypes.startp = _startpos_lp_;
4787 MenhirLib.EngineTypes.endp = _endpos_lp_;
4788 MenhirLib.EngineTypes.next = _menhir_stack;
4789 };
4790 };
4791 };
4792 } = _menhir_stack in
4793 let e : 'tv_cast_expr_expr_invalid_ = Obj.magic e in
4794 let rp : (
4795 # 76 "parser_cocci_menhir.mly"
4796 (Data.clt)
4797 # 4798 "parser_cocci_menhir.ml"
4798 ) = Obj.magic rp in
4799 let t : 'tv_ctype = Obj.magic t in
4800 let lp : (
4801 # 75 "parser_cocci_menhir.mly"
4802 (Data.clt)
4803 # 4804 "parser_cocci_menhir.ml"
4804 ) = Obj.magic lp in
4805 let _startpos = _startpos_lp_ in
4806 let _endpos = _endpos_e_ in
4807 let _v : 'tv_cast_expr_expr_invalid_ =
4808 # 1221 "parser_cocci_menhir.mly"
4809 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
4810 P.clt2mcode ")" rp, e)) )
4811 # 4812 "parser_cocci_menhir.ml"
4812 in
4813 _menhir_env.MenhirLib.EngineTypes.stack <- {
4814 MenhirLib.EngineTypes.state = _menhir_s;
4815 MenhirLib.EngineTypes.semv = Obj.repr _v;
4816 MenhirLib.EngineTypes.startp = _startpos;
4817 MenhirLib.EngineTypes.endp = _endpos;
4818 MenhirLib.EngineTypes.next = _menhir_stack;
4819 });
4820 (fun _menhir_env ->
4821 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4822 let {
4823 MenhirLib.EngineTypes.semv = _2;
4824 MenhirLib.EngineTypes.startp = _startpos__2_;
4825 MenhirLib.EngineTypes.endp = _endpos__2_;
4826 MenhirLib.EngineTypes.next = {
4827 MenhirLib.EngineTypes.state = _menhir_s;
4828 MenhirLib.EngineTypes.startp = _startpos__1_;
4829 MenhirLib.EngineTypes.endp = _endpos__1_;
4830 MenhirLib.EngineTypes.next = _menhir_stack;
4831 };
4832 } = _menhir_stack in
4833 let _2 : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic _2 in
4834 let _startpos = _startpos__1_ in
4835 let _endpos = _endpos__2_ in
4836 let _v : 'tv_choose_iso =
4837 # 227 "parser_cocci_menhir.mly"
4838 ( List.map P.id2name _2 )
4839 # 4840 "parser_cocci_menhir.ml"
4840 in
4841 _menhir_env.MenhirLib.EngineTypes.stack <- {
4842 MenhirLib.EngineTypes.state = _menhir_s;
4843 MenhirLib.EngineTypes.semv = Obj.repr _v;
4844 MenhirLib.EngineTypes.startp = _startpos;
4845 MenhirLib.EngineTypes.endp = _endpos;
4846 MenhirLib.EngineTypes.next = _menhir_stack;
4847 });
4848 (fun _menhir_env ->
4849 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4850 let {
4851 MenhirLib.EngineTypes.semv = _2;
4852 MenhirLib.EngineTypes.startp = _startpos__2_;
4853 MenhirLib.EngineTypes.endp = _endpos__2_;
4854 MenhirLib.EngineTypes.next = {
4855 MenhirLib.EngineTypes.state = _menhir_s;
4856 MenhirLib.EngineTypes.semv = _1;
4857 MenhirLib.EngineTypes.startp = _startpos__1_;
4858 MenhirLib.EngineTypes.endp = _endpos__1_;
4859 MenhirLib.EngineTypes.next = _menhir_stack;
4860 };
4861 } = _menhir_stack in
4862 let _2 : (
4863 # 72 "parser_cocci_menhir.mly"
4864 (Data.clt)
4865 # 4866 "parser_cocci_menhir.ml"
4866 ) = Obj.magic _2 in
4867 let _1 : (
4868 # 106 "parser_cocci_menhir.mly"
4869 (Data.clt)
4870 # 4871 "parser_cocci_menhir.ml"
4871 ) = Obj.magic _1 in
4872 let _startpos = _startpos__1_ in
4873 let _endpos = _endpos__2_ in
4874 let _v : 'tv_comma_decls_TEllipsis_decl_ =
4875 # 1470 "parser_cocci_menhir.mly"
4876 ( function dot_builder ->
4877 [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
4878 dot_builder _2] )
4879 # 4880 "parser_cocci_menhir.ml"
4880 in
4881 _menhir_env.MenhirLib.EngineTypes.stack <- {
4882 MenhirLib.EngineTypes.state = _menhir_s;
4883 MenhirLib.EngineTypes.semv = Obj.repr _v;
4884 MenhirLib.EngineTypes.startp = _startpos;
4885 MenhirLib.EngineTypes.endp = _endpos;
4886 MenhirLib.EngineTypes.next = _menhir_stack;
4887 });
4888 (fun _menhir_env ->
4889 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4890 let {
4891 MenhirLib.EngineTypes.semv = _2;
4892 MenhirLib.EngineTypes.startp = _startpos__2_;
4893 MenhirLib.EngineTypes.endp = _endpos__2_;
4894 MenhirLib.EngineTypes.next = {
4895 MenhirLib.EngineTypes.state = _menhir_s;
4896 MenhirLib.EngineTypes.semv = _1;
4897 MenhirLib.EngineTypes.startp = _startpos__1_;
4898 MenhirLib.EngineTypes.endp = _endpos__1_;
4899 MenhirLib.EngineTypes.next = _menhir_stack;
4900 };
4901 } = _menhir_stack in
4902 let _2 : 'tv_one_dec_decl_ = Obj.magic _2 in
4903 let _1 : (
4904 # 106 "parser_cocci_menhir.mly"
4905 (Data.clt)
4906 # 4907 "parser_cocci_menhir.ml"
4907 ) = Obj.magic _1 in
4908 let _startpos = _startpos__1_ in
4909 let _endpos = _endpos__2_ in
4910 let _v : 'tv_comma_decls_TEllipsis_decl_ =
4911 # 1474 "parser_cocci_menhir.mly"
4912 ( function dot_builder ->
4913 [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
4914 # 4915 "parser_cocci_menhir.ml"
4915 in
4916 _menhir_env.MenhirLib.EngineTypes.stack <- {
4917 MenhirLib.EngineTypes.state = _menhir_s;
4918 MenhirLib.EngineTypes.semv = Obj.repr _v;
4919 MenhirLib.EngineTypes.startp = _startpos;
4920 MenhirLib.EngineTypes.endp = _endpos;
4921 MenhirLib.EngineTypes.next = _menhir_stack;
4922 });
4923 (fun _menhir_env ->
4924 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4925 let {
4926 MenhirLib.EngineTypes.semv = _2;
4927 MenhirLib.EngineTypes.startp = _startpos__2_;
4928 MenhirLib.EngineTypes.endp = _endpos__2_;
4929 MenhirLib.EngineTypes.next = {
4930 MenhirLib.EngineTypes.state = _menhir_s;
4931 MenhirLib.EngineTypes.semv = _1;
4932 MenhirLib.EngineTypes.startp = _startpos__1_;
4933 MenhirLib.EngineTypes.endp = _endpos__1_;
4934 MenhirLib.EngineTypes.next = _menhir_stack;
4935 };
4936 } = _menhir_stack in
4937 let _2 : (
4938 # 72 "parser_cocci_menhir.mly"
4939 (Data.clt)
4940 # 4941 "parser_cocci_menhir.ml"
4941 ) = Obj.magic _2 in
4942 let _1 : (
4943 # 106 "parser_cocci_menhir.mly"
4944 (Data.clt)
4945 # 4946 "parser_cocci_menhir.ml"
4946 ) = Obj.magic _1 in
4947 let _startpos = _startpos__1_ in
4948 let _endpos = _endpos__2_ in
4949 let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ =
4950 # 1470 "parser_cocci_menhir.mly"
4951 ( function dot_builder ->
4952 [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
4953 dot_builder _2] )
4954 # 4955 "parser_cocci_menhir.ml"
4955 in
4956 _menhir_env.MenhirLib.EngineTypes.stack <- {
4957 MenhirLib.EngineTypes.state = _menhir_s;
4958 MenhirLib.EngineTypes.semv = Obj.repr _v;
4959 MenhirLib.EngineTypes.startp = _startpos;
4960 MenhirLib.EngineTypes.endp = _endpos;
4961 MenhirLib.EngineTypes.next = _menhir_stack;
4962 });
4963 (fun _menhir_env ->
4964 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4965 let {
4966 MenhirLib.EngineTypes.semv = _2;
4967 MenhirLib.EngineTypes.startp = _startpos__2_;
4968 MenhirLib.EngineTypes.endp = _endpos__2_;
4969 MenhirLib.EngineTypes.next = {
4970 MenhirLib.EngineTypes.state = _menhir_s;
4971 MenhirLib.EngineTypes.semv = _1;
4972 MenhirLib.EngineTypes.startp = _startpos__1_;
4973 MenhirLib.EngineTypes.endp = _endpos__1_;
4974 MenhirLib.EngineTypes.next = _menhir_stack;
4975 };
4976 } = _menhir_stack in
4977 let _2 : 'tv_one_dec_name_opt_decl_ = Obj.magic _2 in
4978 let _1 : (
4979 # 106 "parser_cocci_menhir.mly"
4980 (Data.clt)
4981 # 4982 "parser_cocci_menhir.ml"
4982 ) = Obj.magic _1 in
4983 let _startpos = _startpos__1_ in
4984 let _endpos = _endpos__2_ in
4985 let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ =
4986 # 1474 "parser_cocci_menhir.mly"
4987 ( function dot_builder ->
4988 [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
4989 # 4990 "parser_cocci_menhir.ml"
4990 in
4991 _menhir_env.MenhirLib.EngineTypes.stack <- {
4992 MenhirLib.EngineTypes.state = _menhir_s;
4993 MenhirLib.EngineTypes.semv = Obj.repr _v;
4994 MenhirLib.EngineTypes.startp = _startpos;
4995 MenhirLib.EngineTypes.endp = _endpos;
4996 MenhirLib.EngineTypes.next = _menhir_stack;
4997 });
4998 (fun _menhir_env ->
4999 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5000 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
5001 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
5002 let _endpos = _startpos in
5003 let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
5004 # 1051 "parser_cocci_menhir.mly"
5005 ( [] )
5006 # 5007 "parser_cocci_menhir.ml"
5007 in
5008 _menhir_env.MenhirLib.EngineTypes.stack <- {
5009 MenhirLib.EngineTypes.state = _menhir_s;
5010 MenhirLib.EngineTypes.semv = Obj.repr _v;
5011 MenhirLib.EngineTypes.startp = _startpos;
5012 MenhirLib.EngineTypes.endp = _endpos;
5013 MenhirLib.EngineTypes.next = _menhir_stack;
5014 });
5015 (fun _menhir_env ->
5016 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5017 let {
5018 MenhirLib.EngineTypes.semv = r;
5019 MenhirLib.EngineTypes.startp = _startpos_r_;
5020 MenhirLib.EngineTypes.endp = _endpos_r_;
5021 MenhirLib.EngineTypes.next = {
5022 MenhirLib.EngineTypes.state = _menhir_s;
5023 MenhirLib.EngineTypes.semv = d;
5024 MenhirLib.EngineTypes.startp = _startpos_d_;
5025 MenhirLib.EngineTypes.endp = _endpos_d_;
5026 MenhirLib.EngineTypes.next = _menhir_stack;
5027 };
5028 } = _menhir_stack in
5029 let r : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ = Obj.magic r in
5030 let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
5031 let _startpos = _startpos_d_ in
5032 let _endpos = _endpos_r_ in
5033 let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
5034 # 1053 "parser_cocci_menhir.mly"
5035 ( (function dot_builder -> [dot_builder d])::r )
5036 # 5037 "parser_cocci_menhir.ml"
5037 in
5038 _menhir_env.MenhirLib.EngineTypes.stack <- {
5039 MenhirLib.EngineTypes.state = _menhir_s;
5040 MenhirLib.EngineTypes.semv = Obj.repr _v;
5041 MenhirLib.EngineTypes.startp = _startpos;
5042 MenhirLib.EngineTypes.endp = _endpos;
5043 MenhirLib.EngineTypes.next = _menhir_stack;
5044 });
5045 (fun _menhir_env ->
5046 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5047 let {
5048 MenhirLib.EngineTypes.semv = r;
5049 MenhirLib.EngineTypes.startp = _startpos_r_;
5050 MenhirLib.EngineTypes.endp = _endpos_r_;
5051 MenhirLib.EngineTypes.next = {
5052 MenhirLib.EngineTypes.semv = c;
5053 MenhirLib.EngineTypes.startp = _startpos_c_;
5054 MenhirLib.EngineTypes.endp = _endpos_c_;
5055 MenhirLib.EngineTypes.next = {
5056 MenhirLib.EngineTypes.state = _menhir_s;
5057 MenhirLib.EngineTypes.semv = i;
5058 MenhirLib.EngineTypes.startp = _startpos_i_;
5059 MenhirLib.EngineTypes.endp = _endpos_i_;
5060 MenhirLib.EngineTypes.next = _menhir_stack;
5061 };
5062 };
5063 } = _menhir_stack in
5064 let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
5065 let c : (
5066 # 106 "parser_cocci_menhir.mly"
5067 (Data.clt)
5068 # 5069 "parser_cocci_menhir.ml"
5069 ) = Obj.magic c in
5070 let i : 'tv_initialize2 = Obj.magic i in
5071 let _startpos = _startpos_i_ in
5072 let _endpos = _endpos_r_ in
5073 let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
5074 # 1055 "parser_cocci_menhir.mly"
5075 ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
5076 r )
5077 # 5078 "parser_cocci_menhir.ml"
5078 in
5079 _menhir_env.MenhirLib.EngineTypes.stack <- {
5080 MenhirLib.EngineTypes.state = _menhir_s;
5081 MenhirLib.EngineTypes.semv = Obj.repr _v;
5082 MenhirLib.EngineTypes.startp = _startpos;
5083 MenhirLib.EngineTypes.endp = _endpos;
5084 MenhirLib.EngineTypes.next = _menhir_stack;
5085 });
5086 (fun _menhir_env ->
5087 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5088 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
5089 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
5090 let _endpos = _startpos in
5091 let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ =
5092 # 1059 "parser_cocci_menhir.mly"
5093 ( [] )
5094 # 5095 "parser_cocci_menhir.ml"
5095 in
5096 _menhir_env.MenhirLib.EngineTypes.stack <- {
5097 MenhirLib.EngineTypes.state = _menhir_s;
5098 MenhirLib.EngineTypes.semv = Obj.repr _v;
5099 MenhirLib.EngineTypes.startp = _startpos;
5100 MenhirLib.EngineTypes.endp = _endpos;
5101 MenhirLib.EngineTypes.next = _menhir_stack;
5102 });
5103 (fun _menhir_env ->
5104 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5105 let {
5106 MenhirLib.EngineTypes.semv = r;
5107 MenhirLib.EngineTypes.startp = _startpos_r_;
5108 MenhirLib.EngineTypes.endp = _endpos_r_;
5109 MenhirLib.EngineTypes.next = {
5110 MenhirLib.EngineTypes.semv = c;
5111 MenhirLib.EngineTypes.startp = _startpos_c_;
5112 MenhirLib.EngineTypes.endp = _endpos_c_;
5113 MenhirLib.EngineTypes.next = {
5114 MenhirLib.EngineTypes.state = _menhir_s;
5115 MenhirLib.EngineTypes.semv = i;
5116 MenhirLib.EngineTypes.startp = _startpos_i_;
5117 MenhirLib.EngineTypes.endp = _endpos_i_;
5118 MenhirLib.EngineTypes.next = _menhir_stack;
5119 };
5120 };
5121 } = _menhir_stack in
5122 let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
5123 let c : (
5124 # 106 "parser_cocci_menhir.mly"
5125 (Data.clt)
5126 # 5127 "parser_cocci_menhir.ml"
5127 ) = Obj.magic c in
5128 let i : 'tv_initialize2 = Obj.magic i in
5129 let _startpos = _startpos_i_ in
5130 let _endpos = _endpos_r_ in
5131 let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ =
5132 # 1061 "parser_cocci_menhir.mly"
5133 ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
5134 r )
5135 # 5136 "parser_cocci_menhir.ml"
5136 in
5137 _menhir_env.MenhirLib.EngineTypes.stack <- {
5138 MenhirLib.EngineTypes.state = _menhir_s;
5139 MenhirLib.EngineTypes.semv = Obj.repr _v;
5140 MenhirLib.EngineTypes.startp = _startpos;
5141 MenhirLib.EngineTypes.endp = _endpos;
5142 MenhirLib.EngineTypes.next = _menhir_stack;
5143 });
5144 (fun _menhir_env ->
5145 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5146 let {
5147 MenhirLib.EngineTypes.state = _menhir_s;
5148 MenhirLib.EngineTypes.semv = _1;
5149 MenhirLib.EngineTypes.startp = _startpos__1_;
5150 MenhirLib.EngineTypes.endp = _endpos__1_;
5151 MenhirLib.EngineTypes.next = _menhir_stack;
5152 } = _menhir_stack in
5153 let _1 : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic _1 in
5154 let _startpos = _startpos__1_ in
5155 let _endpos = _endpos__1_ in
5156 let _v : 'tv_comma_list_any_strict_ =
5157 # 1688 "parser_cocci_menhir.mly"
5158 ( _1 )
5159 # 5160 "parser_cocci_menhir.ml"
5160 in
5161 _menhir_env.MenhirLib.EngineTypes.stack <- {
5162 MenhirLib.EngineTypes.state = _menhir_s;
5163 MenhirLib.EngineTypes.semv = Obj.repr _v;
5164 MenhirLib.EngineTypes.startp = _startpos;
5165 MenhirLib.EngineTypes.endp = _endpos;
5166 MenhirLib.EngineTypes.next = _menhir_stack;
5167 });
5168 (fun _menhir_env ->
5169 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5170 let {
5171 MenhirLib.EngineTypes.state = _menhir_s;
5172 MenhirLib.EngineTypes.semv = _1;
5173 MenhirLib.EngineTypes.startp = _startpos__1_;
5174 MenhirLib.EngineTypes.endp = _endpos__1_;
5175 MenhirLib.EngineTypes.next = _menhir_stack;
5176 } = _menhir_stack in
5177 let _1 : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic _1 in
5178 let _startpos = _startpos__1_ in
5179 let _endpos = _endpos__1_ in
5180 let _v : 'tv_comma_list_ctype_ =
5181 # 1688 "parser_cocci_menhir.mly"
5182 ( _1 )
5183 # 5184 "parser_cocci_menhir.ml"
5184 in
5185 _menhir_env.MenhirLib.EngineTypes.stack <- {
5186 MenhirLib.EngineTypes.state = _menhir_s;
5187 MenhirLib.EngineTypes.semv = Obj.repr _v;
5188 MenhirLib.EngineTypes.startp = _startpos;
5189 MenhirLib.EngineTypes.endp = _endpos;
5190 MenhirLib.EngineTypes.next = _menhir_stack;
5191 });
5192 (fun _menhir_env ->
5193 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5194 let {
5195 MenhirLib.EngineTypes.state = _menhir_s;
5196 MenhirLib.EngineTypes.semv = _1;
5197 MenhirLib.EngineTypes.startp = _startpos__1_;
5198 MenhirLib.EngineTypes.endp = _endpos__1_;
5199 MenhirLib.EngineTypes.next = _menhir_stack;
5200 } = _menhir_stack in
5201 let _1 : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic _1 in
5202 let _startpos = _startpos__1_ in
5203 let _endpos = _endpos__1_ in
5204 let _v : 'tv_comma_list_d_ident_ =
5205 # 1688 "parser_cocci_menhir.mly"
5206 ( _1 )
5207 # 5208 "parser_cocci_menhir.ml"
5208 in
5209 _menhir_env.MenhirLib.EngineTypes.stack <- {
5210 MenhirLib.EngineTypes.state = _menhir_s;
5211 MenhirLib.EngineTypes.semv = Obj.repr _v;
5212 MenhirLib.EngineTypes.startp = _startpos;
5213 MenhirLib.EngineTypes.endp = _endpos;
5214 MenhirLib.EngineTypes.next = _menhir_stack;
5215 });
5216 (fun _menhir_env ->
5217 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5218 let {
5219 MenhirLib.EngineTypes.state = _menhir_s;
5220 MenhirLib.EngineTypes.semv = _1;
5221 MenhirLib.EngineTypes.startp = _startpos__1_;
5222 MenhirLib.EngineTypes.endp = _endpos__1_;
5223 MenhirLib.EngineTypes.next = _menhir_stack;
5224 } = _menhir_stack in
5225 let _1 : 'tv_separated_nonempty_list_TComma_dexpr_ = Obj.magic _1 in
5226 let _startpos = _startpos__1_ in
5227 let _endpos = _endpos__1_ in
5228 let _v : 'tv_comma_list_dexpr_ =
5229 # 1688 "parser_cocci_menhir.mly"
5230 ( _1 )
5231 # 5232 "parser_cocci_menhir.ml"
5232 in
5233 _menhir_env.MenhirLib.EngineTypes.stack <- {
5234 MenhirLib.EngineTypes.state = _menhir_s;
5235 MenhirLib.EngineTypes.semv = Obj.repr _v;
5236 MenhirLib.EngineTypes.startp = _startpos;
5237 MenhirLib.EngineTypes.endp = _endpos;
5238 MenhirLib.EngineTypes.next = _menhir_stack;
5239 });
5240 (fun _menhir_env ->
5241 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5242 let {
5243 MenhirLib.EngineTypes.state = _menhir_s;
5244 MenhirLib.EngineTypes.semv = _1;
5245 MenhirLib.EngineTypes.startp = _startpos__1_;
5246 MenhirLib.EngineTypes.endp = _endpos__1_;
5247 MenhirLib.EngineTypes.next = _menhir_stack;
5248 } = _menhir_stack in
5249 let _1 : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic _1 in
5250 let _startpos = _startpos__1_ in
5251 let _endpos = _endpos__1_ in
5252 let _v : 'tv_comma_list_ident_or_const_ =
5253 # 1688 "parser_cocci_menhir.mly"
5254 ( _1 )
5255 # 5256 "parser_cocci_menhir.ml"
5256 in
5257 _menhir_env.MenhirLib.EngineTypes.stack <- {
5258 MenhirLib.EngineTypes.state = _menhir_s;
5259 MenhirLib.EngineTypes.semv = Obj.repr _v;
5260 MenhirLib.EngineTypes.startp = _startpos;
5261 MenhirLib.EngineTypes.endp = _endpos;
5262 MenhirLib.EngineTypes.next = _menhir_stack;
5263 });
5264 (fun _menhir_env ->
5265 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5266 let {
5267 MenhirLib.EngineTypes.state = _menhir_s;
5268 MenhirLib.EngineTypes.semv = _1;
5269 MenhirLib.EngineTypes.startp = _startpos__1_;
5270 MenhirLib.EngineTypes.endp = _endpos__1_;
5271 MenhirLib.EngineTypes.next = _menhir_stack;
5272 } = _menhir_stack in
5273 let _1 : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic _1 in
5274 let _startpos = _startpos__1_ in
5275 let _endpos = _endpos__1_ in
5276 let _v : 'tv_comma_list_meta_ident_ =
5277 # 1688 "parser_cocci_menhir.mly"
5278 ( _1 )
5279 # 5280 "parser_cocci_menhir.ml"
5280 in
5281 _menhir_env.MenhirLib.EngineTypes.stack <- {
5282 MenhirLib.EngineTypes.state = _menhir_s;
5283 MenhirLib.EngineTypes.semv = Obj.repr _v;
5284 MenhirLib.EngineTypes.startp = _startpos;
5285 MenhirLib.EngineTypes.endp = _endpos;
5286 MenhirLib.EngineTypes.next = _menhir_stack;
5287 });
5288 (fun _menhir_env ->
5289 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5290 let {
5291 MenhirLib.EngineTypes.state = _menhir_s;
5292 MenhirLib.EngineTypes.semv = _1;
5293 MenhirLib.EngineTypes.startp = _startpos__1_;
5294 MenhirLib.EngineTypes.endp = _endpos__1_;
5295 MenhirLib.EngineTypes.next = _menhir_stack;
5296 } = _menhir_stack in
5297 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _1 in
5298 let _startpos = _startpos__1_ in
5299 let _endpos = _endpos__1_ in
5300 let _v : 'tv_comma_list_pure_ident_ =
5301 # 1688 "parser_cocci_menhir.mly"
5302 ( _1 )
5303 # 5304 "parser_cocci_menhir.ml"
5304 in
5305 _menhir_env.MenhirLib.EngineTypes.stack <- {
5306 MenhirLib.EngineTypes.state = _menhir_s;
5307 MenhirLib.EngineTypes.semv = Obj.repr _v;
5308 MenhirLib.EngineTypes.startp = _startpos;
5309 MenhirLib.EngineTypes.endp = _endpos;
5310 MenhirLib.EngineTypes.next = _menhir_stack;
5311 });
5312 (fun _menhir_env ->
5313 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5314 let {
5315 MenhirLib.EngineTypes.state = _menhir_s;
5316 MenhirLib.EngineTypes.semv = _1;
5317 MenhirLib.EngineTypes.startp = _startpos__1_;
5318 MenhirLib.EngineTypes.endp = _endpos__1_;
5319 MenhirLib.EngineTypes.next = _menhir_stack;
5320 } = _menhir_stack in
5321 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic _1 in
5322 let _startpos = _startpos__1_ in
5323 let _endpos = _endpos__1_ in
5324 let _v : 'tv_comma_list_pure_ident_or_meta_ident_ =
5325 # 1688 "parser_cocci_menhir.mly"
5326 ( _1 )
5327 # 5328 "parser_cocci_menhir.ml"
5328 in
5329 _menhir_env.MenhirLib.EngineTypes.stack <- {
5330 MenhirLib.EngineTypes.state = _menhir_s;
5331 MenhirLib.EngineTypes.semv = Obj.repr _v;
5332 MenhirLib.EngineTypes.startp = _startpos;
5333 MenhirLib.EngineTypes.endp = _endpos;
5334 MenhirLib.EngineTypes.next = _menhir_stack;
5335 });
5336 (fun _menhir_env ->
5337 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5338 let {
5339 MenhirLib.EngineTypes.state = _menhir_s;
5340 MenhirLib.EngineTypes.semv = _1;
5341 MenhirLib.EngineTypes.startp = _startpos__1_;
5342 MenhirLib.EngineTypes.endp = _endpos__1_;
5343 MenhirLib.EngineTypes.next = _menhir_stack;
5344 } = _menhir_stack in
5345 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic _1 in
5346 let _startpos = _startpos__1_ in
5347 let _endpos = _endpos__1_ in
5348 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
5349 # 1688 "parser_cocci_menhir.mly"
5350 ( _1 )
5351 # 5352 "parser_cocci_menhir.ml"
5352 in
5353 _menhir_env.MenhirLib.EngineTypes.stack <- {
5354 MenhirLib.EngineTypes.state = _menhir_s;
5355 MenhirLib.EngineTypes.semv = Obj.repr _v;
5356 MenhirLib.EngineTypes.startp = _startpos;
5357 MenhirLib.EngineTypes.endp = _endpos;
5358 MenhirLib.EngineTypes.next = _menhir_stack;
5359 });
5360 (fun _menhir_env ->
5361 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5362 let {
5363 MenhirLib.EngineTypes.state = _menhir_s;
5364 MenhirLib.EngineTypes.semv = _1;
5365 MenhirLib.EngineTypes.startp = _startpos__1_;
5366 MenhirLib.EngineTypes.endp = _endpos__1_;
5367 MenhirLib.EngineTypes.next = _menhir_stack;
5368 } = _menhir_stack in
5369 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic _1 in
5370 let _startpos = _startpos__1_ in
5371 let _endpos = _endpos__1_ in
5372 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
5373 # 1688 "parser_cocci_menhir.mly"
5374 ( _1 )
5375 # 5376 "parser_cocci_menhir.ml"
5376 in
5377 _menhir_env.MenhirLib.EngineTypes.stack <- {
5378 MenhirLib.EngineTypes.state = _menhir_s;
5379 MenhirLib.EngineTypes.semv = Obj.repr _v;
5380 MenhirLib.EngineTypes.startp = _startpos;
5381 MenhirLib.EngineTypes.endp = _endpos;
5382 MenhirLib.EngineTypes.next = _menhir_stack;
5383 });
5384 (fun _menhir_env ->
5385 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5386 let {
5387 MenhirLib.EngineTypes.state = _menhir_s;
5388 MenhirLib.EngineTypes.semv = _1;
5389 MenhirLib.EngineTypes.startp = _startpos__1_;
5390 MenhirLib.EngineTypes.endp = _endpos__1_;
5391 MenhirLib.EngineTypes.next = _menhir_stack;
5392 } = _menhir_stack in
5393 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic _1 in
5394 let _startpos = _startpos__1_ in
5395 let _endpos = _endpos__1_ in
5396 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
5397 # 1688 "parser_cocci_menhir.mly"
5398 ( _1 )
5399 # 5400 "parser_cocci_menhir.ml"
5400 in
5401 _menhir_env.MenhirLib.EngineTypes.stack <- {
5402 MenhirLib.EngineTypes.state = _menhir_s;
5403 MenhirLib.EngineTypes.semv = Obj.repr _v;
5404 MenhirLib.EngineTypes.startp = _startpos;
5405 MenhirLib.EngineTypes.endp = _endpos;
5406 MenhirLib.EngineTypes.next = _menhir_stack;
5407 });
5408 (fun _menhir_env ->
5409 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5410 let {
5411 MenhirLib.EngineTypes.state = _menhir_s;
5412 MenhirLib.EngineTypes.semv = _1;
5413 MenhirLib.EngineTypes.startp = _startpos__1_;
5414 MenhirLib.EngineTypes.endp = _endpos__1_;
5415 MenhirLib.EngineTypes.next = _menhir_stack;
5416 } = _menhir_stack in
5417 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic _1 in
5418 let _startpos = _startpos__1_ in
5419 let _endpos = _endpos__1_ in
5420 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
5421 # 1688 "parser_cocci_menhir.mly"
5422 ( _1 )
5423 # 5424 "parser_cocci_menhir.ml"
5424 in
5425 _menhir_env.MenhirLib.EngineTypes.stack <- {
5426 MenhirLib.EngineTypes.state = _menhir_s;
5427 MenhirLib.EngineTypes.semv = Obj.repr _v;
5428 MenhirLib.EngineTypes.startp = _startpos;
5429 MenhirLib.EngineTypes.endp = _endpos;
5430 MenhirLib.EngineTypes.next = _menhir_stack;
5431 });
5432 (fun _menhir_env ->
5433 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5434 let {
5435 MenhirLib.EngineTypes.state = _menhir_s;
5436 MenhirLib.EngineTypes.semv = _1;
5437 MenhirLib.EngineTypes.startp = _startpos__1_;
5438 MenhirLib.EngineTypes.endp = _endpos__1_;
5439 MenhirLib.EngineTypes.next = _menhir_stack;
5440 } = _menhir_stack in
5441 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5442 let _startpos = _startpos__1_ in
5443 let _endpos = _endpos__1_ in
5444 let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
5445 # 1184 "parser_cocci_menhir.mly"
5446 ( _1 )
5447 # 5448 "parser_cocci_menhir.ml"
5448 in
5449 _menhir_env.MenhirLib.EngineTypes.stack <- {
5450 MenhirLib.EngineTypes.state = _menhir_s;
5451 MenhirLib.EngineTypes.semv = Obj.repr _v;
5452 MenhirLib.EngineTypes.startp = _startpos;
5453 MenhirLib.EngineTypes.endp = _endpos;
5454 MenhirLib.EngineTypes.next = _menhir_stack;
5455 });
5456 (fun _menhir_env ->
5457 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5458 let {
5459 MenhirLib.EngineTypes.semv = r;
5460 MenhirLib.EngineTypes.startp = _startpos_r_;
5461 MenhirLib.EngineTypes.endp = _endpos_r_;
5462 MenhirLib.EngineTypes.next = {
5463 MenhirLib.EngineTypes.semv = dd;
5464 MenhirLib.EngineTypes.startp = _startpos_dd_;
5465 MenhirLib.EngineTypes.endp = _endpos_dd_;
5466 MenhirLib.EngineTypes.next = {
5467 MenhirLib.EngineTypes.semv = t;
5468 MenhirLib.EngineTypes.startp = _startpos_t_;
5469 MenhirLib.EngineTypes.endp = _endpos_t_;
5470 MenhirLib.EngineTypes.next = {
5471 MenhirLib.EngineTypes.semv = w;
5472 MenhirLib.EngineTypes.startp = _startpos_w_;
5473 MenhirLib.EngineTypes.endp = _endpos_w_;
5474 MenhirLib.EngineTypes.next = {
5475 MenhirLib.EngineTypes.state = _menhir_s;
5476 MenhirLib.EngineTypes.semv = l;
5477 MenhirLib.EngineTypes.startp = _startpos_l_;
5478 MenhirLib.EngineTypes.endp = _endpos_l_;
5479 MenhirLib.EngineTypes.next = _menhir_stack;
5480 };
5481 };
5482 };
5483 };
5484 } = _menhir_stack in
5485 let r : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic r in
5486 let dd : (
5487 # 75 "parser_cocci_menhir.mly"
5488 (Data.clt)
5489 # 5490 "parser_cocci_menhir.ml"
5490 ) = Obj.magic dd in
5491 let t : 'tv_option_eexpr_ = Obj.magic t in
5492 let w : (
5493 # 75 "parser_cocci_menhir.mly"
5494 (Data.clt)
5495 # 5496 "parser_cocci_menhir.ml"
5496 ) = Obj.magic w in
5497 let l : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic l in
5498 let _startpos = _startpos_l_ in
5499 let _endpos = _endpos_r_ in
5500 let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
5501 # 1186 "parser_cocci_menhir.mly"
5502 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
5503 P.clt2mcode ":" dd, r)) )
5504 # 5505 "parser_cocci_menhir.ml"
5505 in
5506 _menhir_env.MenhirLib.EngineTypes.stack <- {
5507 MenhirLib.EngineTypes.state = _menhir_s;
5508 MenhirLib.EngineTypes.semv = Obj.repr _v;
5509 MenhirLib.EngineTypes.startp = _startpos;
5510 MenhirLib.EngineTypes.endp = _endpos;
5511 MenhirLib.EngineTypes.next = _menhir_stack;
5512 });
5513 (fun _menhir_env ->
5514 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5515 let {
5516 MenhirLib.EngineTypes.state = _menhir_s;
5517 MenhirLib.EngineTypes.semv = _1;
5518 MenhirLib.EngineTypes.startp = _startpos__1_;
5519 MenhirLib.EngineTypes.endp = _endpos__1_;
5520 MenhirLib.EngineTypes.next = _menhir_stack;
5521 } = _menhir_stack in
5522 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5523 let _startpos = _startpos__1_ in
5524 let _endpos = _endpos__1_ in
5525 let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
5526 # 1184 "parser_cocci_menhir.mly"
5527 ( _1 )
5528 # 5529 "parser_cocci_menhir.ml"
5529 in
5530 _menhir_env.MenhirLib.EngineTypes.stack <- {
5531 MenhirLib.EngineTypes.state = _menhir_s;
5532 MenhirLib.EngineTypes.semv = Obj.repr _v;
5533 MenhirLib.EngineTypes.startp = _startpos;
5534 MenhirLib.EngineTypes.endp = _endpos;
5535 MenhirLib.EngineTypes.next = _menhir_stack;
5536 });
5537 (fun _menhir_env ->
5538 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5539 let {
5540 MenhirLib.EngineTypes.semv = r;
5541 MenhirLib.EngineTypes.startp = _startpos_r_;
5542 MenhirLib.EngineTypes.endp = _endpos_r_;
5543 MenhirLib.EngineTypes.next = {
5544 MenhirLib.EngineTypes.semv = dd;
5545 MenhirLib.EngineTypes.startp = _startpos_dd_;
5546 MenhirLib.EngineTypes.endp = _endpos_dd_;
5547 MenhirLib.EngineTypes.next = {
5548 MenhirLib.EngineTypes.semv = t;
5549 MenhirLib.EngineTypes.startp = _startpos_t_;
5550 MenhirLib.EngineTypes.endp = _endpos_t_;
5551 MenhirLib.EngineTypes.next = {
5552 MenhirLib.EngineTypes.semv = w;
5553 MenhirLib.EngineTypes.startp = _startpos_w_;
5554 MenhirLib.EngineTypes.endp = _endpos_w_;
5555 MenhirLib.EngineTypes.next = {
5556 MenhirLib.EngineTypes.state = _menhir_s;
5557 MenhirLib.EngineTypes.semv = l;
5558 MenhirLib.EngineTypes.startp = _startpos_l_;
5559 MenhirLib.EngineTypes.endp = _endpos_l_;
5560 MenhirLib.EngineTypes.next = _menhir_stack;
5561 };
5562 };
5563 };
5564 };
5565 } = _menhir_stack in
5566 let r : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic r in
5567 let dd : (
5568 # 75 "parser_cocci_menhir.mly"
5569 (Data.clt)
5570 # 5571 "parser_cocci_menhir.ml"
5571 ) = Obj.magic dd in
5572 let t : 'tv_option_eexpr_ = Obj.magic t in
5573 let w : (
5574 # 75 "parser_cocci_menhir.mly"
5575 (Data.clt)
5576 # 5577 "parser_cocci_menhir.ml"
5577 ) = Obj.magic w in
5578 let l : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic l in
5579 let _startpos = _startpos_l_ in
5580 let _endpos = _endpos_r_ in
5581 let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
5582 # 1186 "parser_cocci_menhir.mly"
5583 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
5584 P.clt2mcode ":" dd, r)) )
5585 # 5586 "parser_cocci_menhir.ml"
5586 in
5587 _menhir_env.MenhirLib.EngineTypes.stack <- {
5588 MenhirLib.EngineTypes.state = _menhir_s;
5589 MenhirLib.EngineTypes.semv = Obj.repr _v;
5590 MenhirLib.EngineTypes.startp = _startpos;
5591 MenhirLib.EngineTypes.endp = _endpos;
5592 MenhirLib.EngineTypes.next = _menhir_stack;
5593 });
5594 (fun _menhir_env ->
5595 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5596 let {
5597 MenhirLib.EngineTypes.state = _menhir_s;
5598 MenhirLib.EngineTypes.semv = _1;
5599 MenhirLib.EngineTypes.startp = _startpos__1_;
5600 MenhirLib.EngineTypes.endp = _endpos__1_;
5601 MenhirLib.EngineTypes.next = _menhir_stack;
5602 } = _menhir_stack in
5603 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
5604 let _startpos = _startpos__1_ in
5605 let _endpos = _endpos__1_ in
5606 let _v : 'tv_cond_expr_expr_invalid_ =
5607 # 1184 "parser_cocci_menhir.mly"
5608 ( _1 )
5609 # 5610 "parser_cocci_menhir.ml"
5610 in
5611 _menhir_env.MenhirLib.EngineTypes.stack <- {
5612 MenhirLib.EngineTypes.state = _menhir_s;
5613 MenhirLib.EngineTypes.semv = Obj.repr _v;
5614 MenhirLib.EngineTypes.startp = _startpos;
5615 MenhirLib.EngineTypes.endp = _endpos;
5616 MenhirLib.EngineTypes.next = _menhir_stack;
5617 });
5618 (fun _menhir_env ->
5619 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5620 let {
5621 MenhirLib.EngineTypes.semv = r;
5622 MenhirLib.EngineTypes.startp = _startpos_r_;
5623 MenhirLib.EngineTypes.endp = _endpos_r_;
5624 MenhirLib.EngineTypes.next = {
5625 MenhirLib.EngineTypes.semv = dd;
5626 MenhirLib.EngineTypes.startp = _startpos_dd_;
5627 MenhirLib.EngineTypes.endp = _endpos_dd_;
5628 MenhirLib.EngineTypes.next = {
5629 MenhirLib.EngineTypes.semv = t;
5630 MenhirLib.EngineTypes.startp = _startpos_t_;
5631 MenhirLib.EngineTypes.endp = _endpos_t_;
5632 MenhirLib.EngineTypes.next = {
5633 MenhirLib.EngineTypes.semv = w;
5634 MenhirLib.EngineTypes.startp = _startpos_w_;
5635 MenhirLib.EngineTypes.endp = _endpos_w_;
5636 MenhirLib.EngineTypes.next = {
5637 MenhirLib.EngineTypes.state = _menhir_s;
5638 MenhirLib.EngineTypes.semv = l;
5639 MenhirLib.EngineTypes.startp = _startpos_l_;
5640 MenhirLib.EngineTypes.endp = _endpos_l_;
5641 MenhirLib.EngineTypes.next = _menhir_stack;
5642 };
5643 };
5644 };
5645 };
5646 } = _menhir_stack in
5647 let r : 'tv_cond_expr_expr_invalid_ = Obj.magic r in
5648 let dd : (
5649 # 75 "parser_cocci_menhir.mly"
5650 (Data.clt)
5651 # 5652 "parser_cocci_menhir.ml"
5652 ) = Obj.magic dd in
5653 let t : 'tv_option_eexpr_ = Obj.magic t in
5654 let w : (
5655 # 75 "parser_cocci_menhir.mly"
5656 (Data.clt)
5657 # 5658 "parser_cocci_menhir.ml"
5658 ) = Obj.magic w in
5659 let l : 'tv_arith_expr_expr_invalid_ = Obj.magic l in
5660 let _startpos = _startpos_l_ in
5661 let _endpos = _endpos_r_ in
5662 let _v : 'tv_cond_expr_expr_invalid_ =
5663 # 1186 "parser_cocci_menhir.mly"
5664 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
5665 P.clt2mcode ":" dd, r)) )
5666 # 5667 "parser_cocci_menhir.ml"
5667 in
5668 _menhir_env.MenhirLib.EngineTypes.stack <- {
5669 MenhirLib.EngineTypes.state = _menhir_s;
5670 MenhirLib.EngineTypes.semv = Obj.repr _v;
5671 MenhirLib.EngineTypes.startp = _startpos;
5672 MenhirLib.EngineTypes.endp = _endpos;
5673 MenhirLib.EngineTypes.next = _menhir_stack;
5674 });
5675 (fun _menhir_env ->
5676 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5677 let {
5678 MenhirLib.EngineTypes.state = _menhir_s;
5679 MenhirLib.EngineTypes.semv = _1;
5680 MenhirLib.EngineTypes.startp = _startpos__1_;
5681 MenhirLib.EngineTypes.endp = _endpos__1_;
5682 MenhirLib.EngineTypes.next = _menhir_stack;
5683 } = _menhir_stack in
5684 let _1 : (
5685 # 54 "parser_cocci_menhir.mly"
5686 (Data.clt)
5687 # 5688 "parser_cocci_menhir.ml"
5688 ) = Obj.magic _1 in
5689 let _startpos = _startpos__1_ in
5690 let _endpos = _endpos__1_ in
5691 let _v : 'tv_const_vol =
5692 # 797 "parser_cocci_menhir.mly"
5693 ( P.clt2mcode Ast.Const _1 )
5694 # 5695 "parser_cocci_menhir.ml"
5695 in
5696 _menhir_env.MenhirLib.EngineTypes.stack <- {
5697 MenhirLib.EngineTypes.state = _menhir_s;
5698 MenhirLib.EngineTypes.semv = Obj.repr _v;
5699 MenhirLib.EngineTypes.startp = _startpos;
5700 MenhirLib.EngineTypes.endp = _endpos;
5701 MenhirLib.EngineTypes.next = _menhir_stack;
5702 });
5703 (fun _menhir_env ->
5704 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5705 let {
5706 MenhirLib.EngineTypes.state = _menhir_s;
5707 MenhirLib.EngineTypes.semv = _1;
5708 MenhirLib.EngineTypes.startp = _startpos__1_;
5709 MenhirLib.EngineTypes.endp = _endpos__1_;
5710 MenhirLib.EngineTypes.next = _menhir_stack;
5711 } = _menhir_stack in
5712 let _1 : (
5713 # 54 "parser_cocci_menhir.mly"
5714 (Data.clt)
5715 # 5716 "parser_cocci_menhir.ml"
5716 ) = Obj.magic _1 in
5717 let _startpos = _startpos__1_ in
5718 let _endpos = _endpos__1_ in
5719 let _v : 'tv_const_vol =
5720 # 798 "parser_cocci_menhir.mly"
5721 ( P.clt2mcode Ast.Volatile _1 )
5722 # 5723 "parser_cocci_menhir.ml"
5723 in
5724 _menhir_env.MenhirLib.EngineTypes.stack <- {
5725 MenhirLib.EngineTypes.state = _menhir_s;
5726 MenhirLib.EngineTypes.semv = Obj.repr _v;
5727 MenhirLib.EngineTypes.startp = _startpos;
5728 MenhirLib.EngineTypes.endp = _endpos;
5729 MenhirLib.EngineTypes.next = _menhir_stack;
5730 });
5731 (fun _menhir_env ->
5732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5733 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
5734 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
5735 let _endpos = _startpos in
5736 let _v : 'tv_continue_struct_decl_list =
5737 # 516 "parser_cocci_menhir.mly"
5738 ( [] )
5739 # 5740 "parser_cocci_menhir.ml"
5740 in
5741 _menhir_env.MenhirLib.EngineTypes.stack <- {
5742 MenhirLib.EngineTypes.state = _menhir_s;
5743 MenhirLib.EngineTypes.semv = Obj.repr _v;
5744 MenhirLib.EngineTypes.startp = _startpos;
5745 MenhirLib.EngineTypes.endp = _endpos;
5746 MenhirLib.EngineTypes.next = _menhir_stack;
5747 });
5748 (fun _menhir_env ->
5749 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5750 let {
5751 MenhirLib.EngineTypes.semv = _2;
5752 MenhirLib.EngineTypes.startp = _startpos__2_;
5753 MenhirLib.EngineTypes.endp = _endpos__2_;
5754 MenhirLib.EngineTypes.next = {
5755 MenhirLib.EngineTypes.state = _menhir_s;
5756 MenhirLib.EngineTypes.semv = _1;
5757 MenhirLib.EngineTypes.startp = _startpos__1_;
5758 MenhirLib.EngineTypes.endp = _endpos__1_;
5759 MenhirLib.EngineTypes.next = _menhir_stack;
5760 };
5761 } = _menhir_stack in
5762 let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
5763 let _1 : 'tv_struct_decl = Obj.magic _1 in
5764 let _startpos = _startpos__1_ in
5765 let _endpos = _endpos__2_ in
5766 let _v : 'tv_continue_struct_decl_list =
5767 # 517 "parser_cocci_menhir.mly"
5768 ( _1@_2 )
5769 # 5770 "parser_cocci_menhir.ml"
5770 in
5771 _menhir_env.MenhirLib.EngineTypes.stack <- {
5772 MenhirLib.EngineTypes.state = _menhir_s;
5773 MenhirLib.EngineTypes.semv = Obj.repr _v;
5774 MenhirLib.EngineTypes.startp = _startpos;
5775 MenhirLib.EngineTypes.endp = _endpos;
5776 MenhirLib.EngineTypes.next = _menhir_stack;
5777 });
5778 (fun _menhir_env ->
5779 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5780 let {
5781 MenhirLib.EngineTypes.state = _menhir_s;
5782 MenhirLib.EngineTypes.semv = _1;
5783 MenhirLib.EngineTypes.startp = _startpos__1_;
5784 MenhirLib.EngineTypes.endp = _endpos__1_;
5785 MenhirLib.EngineTypes.next = _menhir_stack;
5786 } = _menhir_stack in
5787 let _1 : 'tv_struct_decl = Obj.magic _1 in
5788 let _startpos = _startpos__1_ in
5789 let _endpos = _endpos__1_ in
5790 let _v : 'tv_continue_struct_decl_list =
5791 # 518 "parser_cocci_menhir.mly"
5792 ( _1 )
5793 # 5794 "parser_cocci_menhir.ml"
5794 in
5795 _menhir_env.MenhirLib.EngineTypes.stack <- {
5796 MenhirLib.EngineTypes.state = _menhir_s;
5797 MenhirLib.EngineTypes.semv = Obj.repr _v;
5798 MenhirLib.EngineTypes.startp = _startpos;
5799 MenhirLib.EngineTypes.endp = _endpos;
5800 MenhirLib.EngineTypes.next = _menhir_stack;
5801 });
5802 (fun _menhir_env ->
5803 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5804 let {
5805 MenhirLib.EngineTypes.semv = m;
5806 MenhirLib.EngineTypes.startp = _startpos_m_;
5807 MenhirLib.EngineTypes.endp = _endpos_m_;
5808 MenhirLib.EngineTypes.next = {
5809 MenhirLib.EngineTypes.state = _menhir_s;
5810 MenhirLib.EngineTypes.semv = ty;
5811 MenhirLib.EngineTypes.startp = _startpos_ty_;
5812 MenhirLib.EngineTypes.endp = _endpos_ty_;
5813 MenhirLib.EngineTypes.next = _menhir_stack;
5814 };
5815 } = _menhir_stack in
5816 let m : 'tv_list_TMul_ = Obj.magic m in
5817 let ty : 'tv_generic_ctype = Obj.magic ty in
5818 let _startpos = _startpos_ty_ in
5819 let _endpos = _endpos_m_ in
5820 let _v : 'tv_ctype = let cv =
5821
5822 # 39 "standard.mly"
5823 ( None )
5824 # 5825 "parser_cocci_menhir.ml"
5825
5826 in
5827
5828 # 522 "parser_cocci_menhir.mly"
5829 ( P.pointerify (P.make_cv cv ty) m )
5830 # 5831 "parser_cocci_menhir.ml"
5831 in
5832 _menhir_env.MenhirLib.EngineTypes.stack <- {
5833 MenhirLib.EngineTypes.state = _menhir_s;
5834 MenhirLib.EngineTypes.semv = Obj.repr _v;
5835 MenhirLib.EngineTypes.startp = _startpos;
5836 MenhirLib.EngineTypes.endp = _endpos;
5837 MenhirLib.EngineTypes.next = _menhir_stack;
5838 });
5839 (fun _menhir_env ->
5840 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5841 let {
5842 MenhirLib.EngineTypes.semv = m;
5843 MenhirLib.EngineTypes.startp = _startpos_m_;
5844 MenhirLib.EngineTypes.endp = _endpos_m_;
5845 MenhirLib.EngineTypes.next = {
5846 MenhirLib.EngineTypes.semv = ty;
5847 MenhirLib.EngineTypes.startp = _startpos_ty_;
5848 MenhirLib.EngineTypes.endp = _endpos_ty_;
5849 MenhirLib.EngineTypes.next = {
5850 MenhirLib.EngineTypes.state = _menhir_s;
5851 MenhirLib.EngineTypes.semv = x0;
5852 MenhirLib.EngineTypes.startp = _startpos_x0_;
5853 MenhirLib.EngineTypes.endp = _endpos_x0_;
5854 MenhirLib.EngineTypes.next = _menhir_stack;
5855 };
5856 };
5857 } = _menhir_stack in
5858 let m : 'tv_list_TMul_ = Obj.magic m in
5859 let ty : 'tv_generic_ctype = Obj.magic ty in
5860 let x0 : 'tv_const_vol = Obj.magic x0 in
5861 let _startpos = _startpos_x0_ in
5862 let _endpos = _endpos_m_ in
5863 let _v : 'tv_ctype = let cv =
5864 let x = x0 in
5865
5866 # 41 "standard.mly"
5867 ( Some x )
5868 # 5869 "parser_cocci_menhir.ml"
5869
5870 in
5871
5872 # 522 "parser_cocci_menhir.mly"
5873 ( P.pointerify (P.make_cv cv ty) m )
5874 # 5875 "parser_cocci_menhir.ml"
5875 in
5876 _menhir_env.MenhirLib.EngineTypes.stack <- {
5877 MenhirLib.EngineTypes.state = _menhir_s;
5878 MenhirLib.EngineTypes.semv = Obj.repr _v;
5879 MenhirLib.EngineTypes.startp = _startpos;
5880 MenhirLib.EngineTypes.endp = _endpos;
5881 MenhirLib.EngineTypes.next = _menhir_stack;
5882 });
5883 (fun _menhir_env ->
5884 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5885 let {
5886 MenhirLib.EngineTypes.semv = m;
5887 MenhirLib.EngineTypes.startp = _startpos_m_;
5888 MenhirLib.EngineTypes.endp = _endpos_m_;
5889 MenhirLib.EngineTypes.next = {
5890 MenhirLib.EngineTypes.state = _menhir_s;
5891 MenhirLib.EngineTypes.semv = t;
5892 MenhirLib.EngineTypes.startp = _startpos_t_;
5893 MenhirLib.EngineTypes.endp = _endpos_t_;
5894 MenhirLib.EngineTypes.next = _menhir_stack;
5895 };
5896 } = _menhir_stack in
5897 let m : 'tv_nonempty_list_TMul_ = Obj.magic m in
5898 let t : (
5899 # 50 "parser_cocci_menhir.mly"
5900 (Data.clt)
5901 # 5902 "parser_cocci_menhir.ml"
5902 ) = Obj.magic t in
5903 let _startpos = _startpos_t_ in
5904 let _endpos = _endpos_m_ in
5905 let _v : 'tv_ctype = let cv =
5906
5907 # 39 "standard.mly"
5908 ( None )
5909 # 5910 "parser_cocci_menhir.ml"
5910
5911 in
5912
5913 # 524 "parser_cocci_menhir.mly"
5914 ( let ty =
5915 Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)) in
5916 P.pointerify (P.make_cv cv ty) m )
5917 # 5918 "parser_cocci_menhir.ml"
5918 in
5919 _menhir_env.MenhirLib.EngineTypes.stack <- {
5920 MenhirLib.EngineTypes.state = _menhir_s;
5921 MenhirLib.EngineTypes.semv = Obj.repr _v;
5922 MenhirLib.EngineTypes.startp = _startpos;
5923 MenhirLib.EngineTypes.endp = _endpos;
5924 MenhirLib.EngineTypes.next = _menhir_stack;
5925 });
5926 (fun _menhir_env ->
5927 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5928 let {
5929 MenhirLib.EngineTypes.semv = m;
5930 MenhirLib.EngineTypes.startp = _startpos_m_;
5931 MenhirLib.EngineTypes.endp = _endpos_m_;
5932 MenhirLib.EngineTypes.next = {
5933 MenhirLib.EngineTypes.semv = t;
5934 MenhirLib.EngineTypes.startp = _startpos_t_;
5935 MenhirLib.EngineTypes.endp = _endpos_t_;
5936 MenhirLib.EngineTypes.next = {
5937 MenhirLib.EngineTypes.state = _menhir_s;
5938 MenhirLib.EngineTypes.semv = x0;
5939 MenhirLib.EngineTypes.startp = _startpos_x0_;
5940 MenhirLib.EngineTypes.endp = _endpos_x0_;
5941 MenhirLib.EngineTypes.next = _menhir_stack;
5942 };
5943 };
5944 } = _menhir_stack in
5945 let m : 'tv_nonempty_list_TMul_ = Obj.magic m in
5946 let t : (
5947 # 50 "parser_cocci_menhir.mly"
5948 (Data.clt)
5949 # 5950 "parser_cocci_menhir.ml"
5950 ) = Obj.magic t in
5951 let x0 : 'tv_const_vol = Obj.magic x0 in
5952 let _startpos = _startpos_x0_ in
5953 let _endpos = _endpos_m_ in
5954 let _v : 'tv_ctype = let cv =
5955 let x = x0 in
5956
5957 # 41 "standard.mly"
5958 ( Some x )
5959 # 5960 "parser_cocci_menhir.ml"
5960
5961 in
5962
5963 # 524 "parser_cocci_menhir.mly"
5964 ( let ty =
5965 Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)) in
5966 P.pointerify (P.make_cv cv ty) m )
5967 # 5968 "parser_cocci_menhir.ml"
5968 in
5969 _menhir_env.MenhirLib.EngineTypes.stack <- {
5970 MenhirLib.EngineTypes.state = _menhir_s;
5971 MenhirLib.EngineTypes.semv = Obj.repr _v;
5972 MenhirLib.EngineTypes.startp = _startpos;
5973 MenhirLib.EngineTypes.endp = _endpos;
5974 MenhirLib.EngineTypes.next = _menhir_stack;
5975 });
5976 (fun _menhir_env ->
5977 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5978 let {
5979 MenhirLib.EngineTypes.semv = rp;
5980 MenhirLib.EngineTypes.startp = _startpos_rp_;
5981 MenhirLib.EngineTypes.endp = _endpos_rp_;
5982 MenhirLib.EngineTypes.next = {
5983 MenhirLib.EngineTypes.semv = t;
5984 MenhirLib.EngineTypes.startp = _startpos_t_;
5985 MenhirLib.EngineTypes.endp = _endpos_t_;
5986 MenhirLib.EngineTypes.next = {
5987 MenhirLib.EngineTypes.state = _menhir_s;
5988 MenhirLib.EngineTypes.semv = lp;
5989 MenhirLib.EngineTypes.startp = _startpos_lp_;
5990 MenhirLib.EngineTypes.endp = _endpos_lp_;
5991 MenhirLib.EngineTypes.next = _menhir_stack;
5992 };
5993 };
5994 } = _menhir_stack in
5995 let rp : (
5996 # 76 "parser_cocci_menhir.mly"
5997 (Data.clt)
5998 # 5999 "parser_cocci_menhir.ml"
5999 ) = Obj.magic rp in
6000 let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
6001 let lp : (
6002 # 75 "parser_cocci_menhir.mly"
6003 (Data.clt)
6004 # 6005 "parser_cocci_menhir.ml"
6005 ) = Obj.magic lp in
6006 let _startpos = _startpos_lp_ in
6007 let _endpos = _endpos_rp_ in
6008 let _v : 'tv_ctype =
6009 # 529 "parser_cocci_menhir.mly"
6010 ( let (mids,code) = t in
6011 Ast0.wrap
6012 (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
6013 # 6014 "parser_cocci_menhir.ml"
6014 in
6015 _menhir_env.MenhirLib.EngineTypes.stack <- {
6016 MenhirLib.EngineTypes.state = _menhir_s;
6017 MenhirLib.EngineTypes.semv = Obj.repr _v;
6018 MenhirLib.EngineTypes.startp = _startpos;
6019 MenhirLib.EngineTypes.endp = _endpos;
6020 MenhirLib.EngineTypes.next = _menhir_stack;
6021 });
6022 (fun _menhir_env ->
6023 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6024 let {
6025 MenhirLib.EngineTypes.state = _menhir_s;
6026 MenhirLib.EngineTypes.semv = _1;
6027 MenhirLib.EngineTypes.startp = _startpos__1_;
6028 MenhirLib.EngineTypes.endp = _endpos__1_;
6029 MenhirLib.EngineTypes.next = _menhir_stack;
6030 } = _menhir_stack in
6031 let _1 : (
6032 # 51 "parser_cocci_menhir.mly"
6033 (Data.clt)
6034 # 6035 "parser_cocci_menhir.ml"
6035 ) = Obj.magic _1 in
6036 let _startpos = _startpos__1_ in
6037 let _endpos = _endpos__1_ in
6038 let _v : 'tv_ctype_qualif =
6039 # 542 "parser_cocci_menhir.mly"
6040 ( P.clt2mcode Ast.Unsigned _1 )
6041 # 6042 "parser_cocci_menhir.ml"
6042 in
6043 _menhir_env.MenhirLib.EngineTypes.stack <- {
6044 MenhirLib.EngineTypes.state = _menhir_s;
6045 MenhirLib.EngineTypes.semv = Obj.repr _v;
6046 MenhirLib.EngineTypes.startp = _startpos;
6047 MenhirLib.EngineTypes.endp = _endpos;
6048 MenhirLib.EngineTypes.next = _menhir_stack;
6049 });
6050 (fun _menhir_env ->
6051 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6052 let {
6053 MenhirLib.EngineTypes.state = _menhir_s;
6054 MenhirLib.EngineTypes.semv = _1;
6055 MenhirLib.EngineTypes.startp = _startpos__1_;
6056 MenhirLib.EngineTypes.endp = _endpos__1_;
6057 MenhirLib.EngineTypes.next = _menhir_stack;
6058 } = _menhir_stack in
6059 let _1 : (
6060 # 51 "parser_cocci_menhir.mly"
6061 (Data.clt)
6062 # 6063 "parser_cocci_menhir.ml"
6063 ) = Obj.magic _1 in
6064 let _startpos = _startpos__1_ in
6065 let _endpos = _endpos__1_ in
6066 let _v : 'tv_ctype_qualif =
6067 # 543 "parser_cocci_menhir.mly"
6068 ( P.clt2mcode Ast.Signed _1 )
6069 # 6070 "parser_cocci_menhir.ml"
6070 in
6071 _menhir_env.MenhirLib.EngineTypes.stack <- {
6072 MenhirLib.EngineTypes.state = _menhir_s;
6073 MenhirLib.EngineTypes.semv = Obj.repr _v;
6074 MenhirLib.EngineTypes.startp = _startpos;
6075 MenhirLib.EngineTypes.endp = _endpos;
6076 MenhirLib.EngineTypes.next = _menhir_stack;
6077 });
6078 (fun _menhir_env ->
6079 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6080 let {
6081 MenhirLib.EngineTypes.semv = _2;
6082 MenhirLib.EngineTypes.startp = _startpos__2_;
6083 MenhirLib.EngineTypes.endp = _endpos__2_;
6084 MenhirLib.EngineTypes.next = {
6085 MenhirLib.EngineTypes.state = _menhir_s;
6086 MenhirLib.EngineTypes.semv = _1;
6087 MenhirLib.EngineTypes.startp = _startpos__1_;
6088 MenhirLib.EngineTypes.endp = _endpos__1_;
6089 MenhirLib.EngineTypes.next = _menhir_stack;
6090 };
6091 } = _menhir_stack in
6092 let _2 : 'tv_list_array_dec_ = Obj.magic _2 in
6093 let _1 : 'tv_ident = Obj.magic _1 in
6094 let _startpos = _startpos__1_ in
6095 let _endpos = _endpos__2_ in
6096 let _v : 'tv_d_ident =
6097 # 995 "parser_cocci_menhir.mly"
6098 ( (_1,
6099 function t ->
6100 List.fold_right
6101 (function (l,i,r) ->
6102 function rest ->
6103 Ast0.wrap
6104 (Ast0.Array(rest,P.clt2mcode "[" l,i,P.clt2mcode "]" r)))
6105 _2 t) )
6106 # 6107 "parser_cocci_menhir.ml"
6107 in
6108 _menhir_env.MenhirLib.EngineTypes.stack <- {
6109 MenhirLib.EngineTypes.state = _menhir_s;
6110 MenhirLib.EngineTypes.semv = Obj.repr _v;
6111 MenhirLib.EngineTypes.startp = _startpos;
6112 MenhirLib.EngineTypes.endp = _endpos;
6113 MenhirLib.EngineTypes.next = _menhir_stack;
6114 });
6115 (fun _menhir_env ->
6116 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6117 let {
6118 MenhirLib.EngineTypes.semv = i;
6119 MenhirLib.EngineTypes.startp = _startpos_i_;
6120 MenhirLib.EngineTypes.endp = _endpos_i_;
6121 MenhirLib.EngineTypes.next = {
6122 MenhirLib.EngineTypes.state = _menhir_s;
6123 MenhirLib.EngineTypes.semv = t;
6124 MenhirLib.EngineTypes.startp = _startpos_t_;
6125 MenhirLib.EngineTypes.endp = _endpos_t_;
6126 MenhirLib.EngineTypes.next = _menhir_stack;
6127 };
6128 } = _menhir_stack in
6129 let i : 'tv_ident = Obj.magic i in
6130 let t : 'tv_ctype = Obj.magic t in
6131 let _startpos = _startpos_t_ in
6132 let _endpos = _endpos_i_ in
6133 let _v : 'tv_decl =
6134 # 768 "parser_cocci_menhir.mly"
6135 ( Ast0.wrap(Ast0.Param(t, Some i)) )
6136 # 6137 "parser_cocci_menhir.ml"
6137 in
6138 _menhir_env.MenhirLib.EngineTypes.stack <- {
6139 MenhirLib.EngineTypes.state = _menhir_s;
6140 MenhirLib.EngineTypes.semv = Obj.repr _v;
6141 MenhirLib.EngineTypes.startp = _startpos;
6142 MenhirLib.EngineTypes.endp = _endpos;
6143 MenhirLib.EngineTypes.next = _menhir_stack;
6144 });
6145 (fun _menhir_env ->
6146 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6147 let {
6148 MenhirLib.EngineTypes.semv = rp1;
6149 MenhirLib.EngineTypes.startp = _startpos_rp1_;
6150 MenhirLib.EngineTypes.endp = _endpos_rp1_;
6151 MenhirLib.EngineTypes.next = {
6152 MenhirLib.EngineTypes.semv = d;
6153 MenhirLib.EngineTypes.startp = _startpos_d_;
6154 MenhirLib.EngineTypes.endp = _endpos_d_;
6155 MenhirLib.EngineTypes.next = {
6156 MenhirLib.EngineTypes.semv = lp1;
6157 MenhirLib.EngineTypes.startp = _startpos_lp1_;
6158 MenhirLib.EngineTypes.endp = _endpos_lp1_;
6159 MenhirLib.EngineTypes.next = {
6160 MenhirLib.EngineTypes.semv = rp;
6161 MenhirLib.EngineTypes.startp = _startpos_rp_;
6162 MenhirLib.EngineTypes.endp = _endpos_rp_;
6163 MenhirLib.EngineTypes.next = {
6164 MenhirLib.EngineTypes.semv = i;
6165 MenhirLib.EngineTypes.startp = _startpos_i_;
6166 MenhirLib.EngineTypes.endp = _endpos_i_;
6167 MenhirLib.EngineTypes.next = {
6168 MenhirLib.EngineTypes.semv = s;
6169 MenhirLib.EngineTypes.startp = _startpos_s_;
6170 MenhirLib.EngineTypes.endp = _endpos_s_;
6171 MenhirLib.EngineTypes.next = {
6172 MenhirLib.EngineTypes.semv = lp;
6173 MenhirLib.EngineTypes.startp = _startpos_lp_;
6174 MenhirLib.EngineTypes.endp = _endpos_lp_;
6175 MenhirLib.EngineTypes.next = {
6176 MenhirLib.EngineTypes.state = _menhir_s;
6177 MenhirLib.EngineTypes.semv = t;
6178 MenhirLib.EngineTypes.startp = _startpos_t_;
6179 MenhirLib.EngineTypes.endp = _endpos_t_;
6180 MenhirLib.EngineTypes.next = _menhir_stack;
6181 };
6182 };
6183 };
6184 };
6185 };
6186 };
6187 };
6188 } = _menhir_stack in
6189 let rp1 : (
6190 # 76 "parser_cocci_menhir.mly"
6191 (Data.clt)
6192 # 6193 "parser_cocci_menhir.ml"
6193 ) = Obj.magic rp1 in
6194 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
6195 let lp1 : (
6196 # 75 "parser_cocci_menhir.mly"
6197 (Data.clt)
6198 # 6199 "parser_cocci_menhir.ml"
6199 ) = Obj.magic lp1 in
6200 let rp : (
6201 # 76 "parser_cocci_menhir.mly"
6202 (Data.clt)
6203 # 6204 "parser_cocci_menhir.ml"
6204 ) = Obj.magic rp in
6205 let i : 'tv_ident = Obj.magic i in
6206 let s : (
6207 # 98 "parser_cocci_menhir.mly"
6208 (Data.clt)
6209 # 6210 "parser_cocci_menhir.ml"
6210 ) = Obj.magic s in
6211 let lp : (
6212 # 75 "parser_cocci_menhir.mly"
6213 (Data.clt)
6214 # 6215 "parser_cocci_menhir.ml"
6215 ) = Obj.magic lp in
6216 let t : 'tv_fn_ctype = Obj.magic t in
6217 let _startpos = _startpos_t_ in
6218 let _endpos = _endpos_rp1_ in
6219 let _v : 'tv_decl =
6220 # 771 "parser_cocci_menhir.mly"
6221 ( let fnptr =
6222 Ast0.wrap
6223 (Ast0.FunctionPointer
6224 (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
6225 P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
6226 Ast0.wrap(Ast0.Param(fnptr, Some i)) )
6227 # 6228 "parser_cocci_menhir.ml"
6228 in
6229 _menhir_env.MenhirLib.EngineTypes.stack <- {
6230 MenhirLib.EngineTypes.state = _menhir_s;
6231 MenhirLib.EngineTypes.semv = Obj.repr _v;
6232 MenhirLib.EngineTypes.startp = _startpos;
6233 MenhirLib.EngineTypes.endp = _endpos;
6234 MenhirLib.EngineTypes.next = _menhir_stack;
6235 });
6236 (fun _menhir_env ->
6237 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6238 let {
6239 MenhirLib.EngineTypes.state = _menhir_s;
6240 MenhirLib.EngineTypes.semv = t;
6241 MenhirLib.EngineTypes.startp = _startpos_t_;
6242 MenhirLib.EngineTypes.endp = _endpos_t_;
6243 MenhirLib.EngineTypes.next = _menhir_stack;
6244 } = _menhir_stack in
6245 let t : (
6246 # 50 "parser_cocci_menhir.mly"
6247 (Data.clt)
6248 # 6249 "parser_cocci_menhir.ml"
6249 ) = Obj.magic t in
6250 let _startpos = _startpos_t_ in
6251 let _endpos = _endpos_t_ in
6252 let _v : 'tv_decl =
6253 # 778 "parser_cocci_menhir.mly"
6254 ( let ty = Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)) in
6255 Ast0.wrap(Ast0.VoidParam(ty)) )
6256 # 6257 "parser_cocci_menhir.ml"
6257 in
6258 _menhir_env.MenhirLib.EngineTypes.stack <- {
6259 MenhirLib.EngineTypes.state = _menhir_s;
6260 MenhirLib.EngineTypes.semv = Obj.repr _v;
6261 MenhirLib.EngineTypes.startp = _startpos;
6262 MenhirLib.EngineTypes.endp = _endpos;
6263 MenhirLib.EngineTypes.next = _menhir_stack;
6264 });
6265 (fun _menhir_env ->
6266 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6267 let {
6268 MenhirLib.EngineTypes.state = _menhir_s;
6269 MenhirLib.EngineTypes.semv = _1;
6270 MenhirLib.EngineTypes.startp = _startpos__1_;
6271 MenhirLib.EngineTypes.endp = _endpos__1_;
6272 MenhirLib.EngineTypes.next = _menhir_stack;
6273 } = _menhir_stack in
6274 let _1 : (
6275 # 64 "parser_cocci_menhir.mly"
6276 (Parse_aux.info)
6277 # 6278 "parser_cocci_menhir.ml"
6278 ) = Obj.magic _1 in
6279 let _startpos = _startpos__1_ in
6280 let _endpos = _endpos__1_ in
6281 let _v : 'tv_decl =
6282 # 781 "parser_cocci_menhir.mly"
6283 ( let (nm,pure,clt) = _1 in
6284 Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) )
6285 # 6286 "parser_cocci_menhir.ml"
6286 in
6287 _menhir_env.MenhirLib.EngineTypes.stack <- {
6288 MenhirLib.EngineTypes.state = _menhir_s;
6289 MenhirLib.EngineTypes.semv = Obj.repr _v;
6290 MenhirLib.EngineTypes.startp = _startpos;
6291 MenhirLib.EngineTypes.endp = _endpos;
6292 MenhirLib.EngineTypes.next = _menhir_stack;
6293 });
6294 (fun _menhir_env ->
6295 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6296 let {
6297 MenhirLib.EngineTypes.state = _menhir_s;
6298 MenhirLib.EngineTypes.semv = _1;
6299 MenhirLib.EngineTypes.startp = _startpos__1_;
6300 MenhirLib.EngineTypes.endp = _endpos__1_;
6301 MenhirLib.EngineTypes.next = _menhir_stack;
6302 } = _menhir_stack in
6303 let _1 : (
6304 # 59 "parser_cocci_menhir.mly"
6305 (string * Data.clt)
6306 # 6307 "parser_cocci_menhir.ml"
6307 ) = Obj.magic _1 in
6308 let _startpos = _startpos__1_ in
6309 let _endpos = _endpos__1_ in
6310 let _v : 'tv_decl_ident =
6311 # 1420 "parser_cocci_menhir.mly"
6312 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
6313 # 6314 "parser_cocci_menhir.ml"
6314 in
6315 _menhir_env.MenhirLib.EngineTypes.stack <- {
6316 MenhirLib.EngineTypes.state = _menhir_s;
6317 MenhirLib.EngineTypes.semv = Obj.repr _v;
6318 MenhirLib.EngineTypes.startp = _startpos;
6319 MenhirLib.EngineTypes.endp = _endpos;
6320 MenhirLib.EngineTypes.next = _menhir_stack;
6321 });
6322 (fun _menhir_env ->
6323 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6324 let {
6325 MenhirLib.EngineTypes.state = _menhir_s;
6326 MenhirLib.EngineTypes.semv = _1;
6327 MenhirLib.EngineTypes.startp = _startpos__1_;
6328 MenhirLib.EngineTypes.endp = _endpos__1_;
6329 MenhirLib.EngineTypes.next = _menhir_stack;
6330 } = _menhir_stack in
6331 let _1 : (
6332 # 62 "parser_cocci_menhir.mly"
6333 (Parse_aux.idinfo)
6334 # 6335 "parser_cocci_menhir.ml"
6335 ) = Obj.magic _1 in
6336 let _startpos = _startpos__1_ in
6337 let _endpos = _endpos__1_ in
6338 let _v : 'tv_decl_ident =
6339 # 1422 "parser_cocci_menhir.mly"
6340 ( let (nm,constraints,pure,clt) = _1 in
6341 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
6342 # 6343 "parser_cocci_menhir.ml"
6343 in
6344 _menhir_env.MenhirLib.EngineTypes.stack <- {
6345 MenhirLib.EngineTypes.state = _menhir_s;
6346 MenhirLib.EngineTypes.semv = Obj.repr _v;
6347 MenhirLib.EngineTypes.startp = _startpos;
6348 MenhirLib.EngineTypes.endp = _endpos;
6349 MenhirLib.EngineTypes.next = _menhir_stack;
6350 });
6351 (fun _menhir_env ->
6352 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6353 let {
6354 MenhirLib.EngineTypes.state = _menhir_s;
6355 MenhirLib.EngineTypes.semv = _1;
6356 MenhirLib.EngineTypes.startp = _startpos__1_;
6357 MenhirLib.EngineTypes.endp = _endpos__1_;
6358 MenhirLib.EngineTypes.next = _menhir_stack;
6359 } = _menhir_stack in
6360 let _1 : 'tv_decl_list_start_decl_ = Obj.magic _1 in
6361 let _startpos = _startpos__1_ in
6362 let _endpos = _endpos__1_ in
6363 let _v : 'tv_decl_list_decl_ =
6364 # 1443 "parser_cocci_menhir.mly"
6365 (let circle x =
6366 match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
6367 if List.exists circle _1
6368 then Ast0.wrap(Ast0.CIRCLES(_1))
6369 else Ast0.wrap(Ast0.DOTS(_1)) )
6370 # 6371 "parser_cocci_menhir.ml"
6371 in
6372 _menhir_env.MenhirLib.EngineTypes.stack <- {
6373 MenhirLib.EngineTypes.state = _menhir_s;
6374 MenhirLib.EngineTypes.semv = Obj.repr _v;
6375 MenhirLib.EngineTypes.startp = _startpos;
6376 MenhirLib.EngineTypes.endp = _endpos;
6377 MenhirLib.EngineTypes.next = _menhir_stack;
6378 });
6379 (fun _menhir_env ->
6380 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6381 let {
6382 MenhirLib.EngineTypes.state = _menhir_s;
6383 MenhirLib.EngineTypes.semv = _1;
6384 MenhirLib.EngineTypes.startp = _startpos__1_;
6385 MenhirLib.EngineTypes.endp = _endpos__1_;
6386 MenhirLib.EngineTypes.next = _menhir_stack;
6387 } = _menhir_stack in
6388 let _1 : 'tv_decl_list_start_name_opt_decl_ = Obj.magic _1 in
6389 let _startpos = _startpos__1_ in
6390 let _endpos = _endpos__1_ in
6391 let _v : 'tv_decl_list_name_opt_decl_ =
6392 # 1443 "parser_cocci_menhir.mly"
6393 (let circle x =
6394 match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
6395 if List.exists circle _1
6396 then Ast0.wrap(Ast0.CIRCLES(_1))
6397 else Ast0.wrap(Ast0.DOTS(_1)) )
6398 # 6399 "parser_cocci_menhir.ml"
6399 in
6400 _menhir_env.MenhirLib.EngineTypes.stack <- {
6401 MenhirLib.EngineTypes.state = _menhir_s;
6402 MenhirLib.EngineTypes.semv = Obj.repr _v;
6403 MenhirLib.EngineTypes.startp = _startpos;
6404 MenhirLib.EngineTypes.endp = _endpos;
6405 MenhirLib.EngineTypes.next = _menhir_stack;
6406 });
6407 (fun _menhir_env ->
6408 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6409 let {
6410 MenhirLib.EngineTypes.state = _menhir_s;
6411 MenhirLib.EngineTypes.semv = _1;
6412 MenhirLib.EngineTypes.startp = _startpos__1_;
6413 MenhirLib.EngineTypes.endp = _endpos__1_;
6414 MenhirLib.EngineTypes.next = _menhir_stack;
6415 } = _menhir_stack in
6416 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
6417 let _startpos = _startpos__1_ in
6418 let _endpos = _endpos__1_ in
6419 let _v : 'tv_decl_list_start_decl_ =
6420 # 1450 "parser_cocci_menhir.mly"
6421 ( [_1] )
6422 # 6423 "parser_cocci_menhir.ml"
6423 in
6424 _menhir_env.MenhirLib.EngineTypes.stack <- {
6425 MenhirLib.EngineTypes.state = _menhir_s;
6426 MenhirLib.EngineTypes.semv = Obj.repr _v;
6427 MenhirLib.EngineTypes.startp = _startpos;
6428 MenhirLib.EngineTypes.endp = _endpos;
6429 MenhirLib.EngineTypes.next = _menhir_stack;
6430 });
6431 (fun _menhir_env ->
6432 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6433 let {
6434 MenhirLib.EngineTypes.semv = _3;
6435 MenhirLib.EngineTypes.startp = _startpos__3_;
6436 MenhirLib.EngineTypes.endp = _endpos__3_;
6437 MenhirLib.EngineTypes.next = {
6438 MenhirLib.EngineTypes.semv = _2;
6439 MenhirLib.EngineTypes.startp = _startpos__2_;
6440 MenhirLib.EngineTypes.endp = _endpos__2_;
6441 MenhirLib.EngineTypes.next = {
6442 MenhirLib.EngineTypes.state = _menhir_s;
6443 MenhirLib.EngineTypes.semv = _1;
6444 MenhirLib.EngineTypes.startp = _startpos__1_;
6445 MenhirLib.EngineTypes.endp = _endpos__1_;
6446 MenhirLib.EngineTypes.next = _menhir_stack;
6447 };
6448 };
6449 } = _menhir_stack in
6450 let _3 : 'tv_decl_list_start_decl_ = Obj.magic _3 in
6451 let _2 : (
6452 # 106 "parser_cocci_menhir.mly"
6453 (Data.clt)
6454 # 6455 "parser_cocci_menhir.ml"
6455 ) = Obj.magic _2 in
6456 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
6457 let _startpos = _startpos__1_ in
6458 let _endpos = _endpos__3_ in
6459 let _v : 'tv_decl_list_start_decl_ =
6460 # 1452 "parser_cocci_menhir.mly"
6461 ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
6462 # 6463 "parser_cocci_menhir.ml"
6463 in
6464 _menhir_env.MenhirLib.EngineTypes.stack <- {
6465 MenhirLib.EngineTypes.state = _menhir_s;
6466 MenhirLib.EngineTypes.semv = Obj.repr _v;
6467 MenhirLib.EngineTypes.startp = _startpos;
6468 MenhirLib.EngineTypes.endp = _endpos;
6469 MenhirLib.EngineTypes.next = _menhir_stack;
6470 });
6471 (fun _menhir_env ->
6472 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6473 let {
6474 MenhirLib.EngineTypes.semv = _2;
6475 MenhirLib.EngineTypes.startp = _startpos__2_;
6476 MenhirLib.EngineTypes.endp = _endpos__2_;
6477 MenhirLib.EngineTypes.next = {
6478 MenhirLib.EngineTypes.state = _menhir_s;
6479 MenhirLib.EngineTypes.semv = _1;
6480 MenhirLib.EngineTypes.startp = _startpos__1_;
6481 MenhirLib.EngineTypes.endp = _endpos__1_;
6482 MenhirLib.EngineTypes.next = _menhir_stack;
6483 };
6484 } = _menhir_stack in
6485 let _2 : 'tv_list_comma_decls_TEllipsis_decl__ = Obj.magic _2 in
6486 let _1 : (
6487 # 72 "parser_cocci_menhir.mly"
6488 (Data.clt)
6489 # 6490 "parser_cocci_menhir.ml"
6490 ) = Obj.magic _1 in
6491 let _startpos = _startpos__1_ in
6492 let _endpos = _endpos__2_ in
6493 let _v : 'tv_decl_list_start_decl_ =
6494 # 1454 "parser_cocci_menhir.mly"
6495 ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
6496 (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
6497 # 6498 "parser_cocci_menhir.ml"
6498 in
6499 _menhir_env.MenhirLib.EngineTypes.stack <- {
6500 MenhirLib.EngineTypes.state = _menhir_s;
6501 MenhirLib.EngineTypes.semv = Obj.repr _v;
6502 MenhirLib.EngineTypes.startp = _startpos;
6503 MenhirLib.EngineTypes.endp = _endpos;
6504 MenhirLib.EngineTypes.next = _menhir_stack;
6505 });
6506 (fun _menhir_env ->
6507 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6508 let {
6509 MenhirLib.EngineTypes.state = _menhir_s;
6510 MenhirLib.EngineTypes.semv = _1;
6511 MenhirLib.EngineTypes.startp = _startpos__1_;
6512 MenhirLib.EngineTypes.endp = _endpos__1_;
6513 MenhirLib.EngineTypes.next = _menhir_stack;
6514 } = _menhir_stack in
6515 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
6516 let _startpos = _startpos__1_ in
6517 let _endpos = _endpos__1_ in
6518 let _v : 'tv_decl_list_start_name_opt_decl_ =
6519 # 1450 "parser_cocci_menhir.mly"
6520 ( [_1] )
6521 # 6522 "parser_cocci_menhir.ml"
6522 in
6523 _menhir_env.MenhirLib.EngineTypes.stack <- {
6524 MenhirLib.EngineTypes.state = _menhir_s;
6525 MenhirLib.EngineTypes.semv = Obj.repr _v;
6526 MenhirLib.EngineTypes.startp = _startpos;
6527 MenhirLib.EngineTypes.endp = _endpos;
6528 MenhirLib.EngineTypes.next = _menhir_stack;
6529 });
6530 (fun _menhir_env ->
6531 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6532 let {
6533 MenhirLib.EngineTypes.semv = _3;
6534 MenhirLib.EngineTypes.startp = _startpos__3_;
6535 MenhirLib.EngineTypes.endp = _endpos__3_;
6536 MenhirLib.EngineTypes.next = {
6537 MenhirLib.EngineTypes.semv = _2;
6538 MenhirLib.EngineTypes.startp = _startpos__2_;
6539 MenhirLib.EngineTypes.endp = _endpos__2_;
6540 MenhirLib.EngineTypes.next = {
6541 MenhirLib.EngineTypes.state = _menhir_s;
6542 MenhirLib.EngineTypes.semv = _1;
6543 MenhirLib.EngineTypes.startp = _startpos__1_;
6544 MenhirLib.EngineTypes.endp = _endpos__1_;
6545 MenhirLib.EngineTypes.next = _menhir_stack;
6546 };
6547 };
6548 } = _menhir_stack in
6549 let _3 : 'tv_decl_list_start_name_opt_decl_ = Obj.magic _3 in
6550 let _2 : (
6551 # 106 "parser_cocci_menhir.mly"
6552 (Data.clt)
6553 # 6554 "parser_cocci_menhir.ml"
6554 ) = Obj.magic _2 in
6555 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
6556 let _startpos = _startpos__1_ in
6557 let _endpos = _endpos__3_ in
6558 let _v : 'tv_decl_list_start_name_opt_decl_ =
6559 # 1452 "parser_cocci_menhir.mly"
6560 ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
6561 # 6562 "parser_cocci_menhir.ml"
6562 in
6563 _menhir_env.MenhirLib.EngineTypes.stack <- {
6564 MenhirLib.EngineTypes.state = _menhir_s;
6565 MenhirLib.EngineTypes.semv = Obj.repr _v;
6566 MenhirLib.EngineTypes.startp = _startpos;
6567 MenhirLib.EngineTypes.endp = _endpos;
6568 MenhirLib.EngineTypes.next = _menhir_stack;
6569 });
6570 (fun _menhir_env ->
6571 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6572 let {
6573 MenhirLib.EngineTypes.semv = _2;
6574 MenhirLib.EngineTypes.startp = _startpos__2_;
6575 MenhirLib.EngineTypes.endp = _endpos__2_;
6576 MenhirLib.EngineTypes.next = {
6577 MenhirLib.EngineTypes.state = _menhir_s;
6578 MenhirLib.EngineTypes.semv = _1;
6579 MenhirLib.EngineTypes.startp = _startpos__1_;
6580 MenhirLib.EngineTypes.endp = _endpos__1_;
6581 MenhirLib.EngineTypes.next = _menhir_stack;
6582 };
6583 } = _menhir_stack in
6584 let _2 : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = Obj.magic _2 in
6585 let _1 : (
6586 # 72 "parser_cocci_menhir.mly"
6587 (Data.clt)
6588 # 6589 "parser_cocci_menhir.ml"
6589 ) = Obj.magic _1 in
6590 let _startpos = _startpos__1_ in
6591 let _endpos = _endpos__2_ in
6592 let _v : 'tv_decl_list_start_name_opt_decl_ =
6593 # 1454 "parser_cocci_menhir.mly"
6594 ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
6595 (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
6596 # 6597 "parser_cocci_menhir.ml"
6597 in
6598 _menhir_env.MenhirLib.EngineTypes.stack <- {
6599 MenhirLib.EngineTypes.state = _menhir_s;
6600 MenhirLib.EngineTypes.semv = Obj.repr _v;
6601 MenhirLib.EngineTypes.startp = _startpos;
6602 MenhirLib.EngineTypes.endp = _endpos;
6603 MenhirLib.EngineTypes.next = _menhir_stack;
6604 });
6605 (fun _menhir_env ->
6606 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6607 let {
6608 MenhirLib.EngineTypes.state = _menhir_s;
6609 MenhirLib.EngineTypes.semv = _1;
6610 MenhirLib.EngineTypes.startp = _startpos__1_;
6611 MenhirLib.EngineTypes.endp = _endpos__1_;
6612 MenhirLib.EngineTypes.next = _menhir_stack;
6613 } = _menhir_stack in
6614 let _1 : (
6615 # 64 "parser_cocci_menhir.mly"
6616 (Parse_aux.info)
6617 # 6618 "parser_cocci_menhir.ml"
6618 ) = Obj.magic _1 in
6619 let _startpos = _startpos__1_ in
6620 let _endpos = _endpos__1_ in
6621 let _v : 'tv_decl_statement =
6622 # 1067 "parser_cocci_menhir.mly"
6623 ( let (nm,pure,clt) = _1 in
6624 [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
6625 # 6626 "parser_cocci_menhir.ml"
6626 in
6627 _menhir_env.MenhirLib.EngineTypes.stack <- {
6628 MenhirLib.EngineTypes.state = _menhir_s;
6629 MenhirLib.EngineTypes.semv = Obj.repr _v;
6630 MenhirLib.EngineTypes.startp = _startpos;
6631 MenhirLib.EngineTypes.endp = _endpos;
6632 MenhirLib.EngineTypes.next = _menhir_stack;
6633 });
6634 (fun _menhir_env ->
6635 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6636 let {
6637 MenhirLib.EngineTypes.state = _menhir_s;
6638 MenhirLib.EngineTypes.semv = _1;
6639 MenhirLib.EngineTypes.startp = _startpos__1_;
6640 MenhirLib.EngineTypes.endp = _endpos__1_;
6641 MenhirLib.EngineTypes.next = _menhir_stack;
6642 } = _menhir_stack in
6643 let _1 : 'tv_decl_var = Obj.magic _1 in
6644 let _startpos = _startpos__1_ in
6645 let _endpos = _endpos__1_ in
6646 let _v : 'tv_decl_statement =
6647 # 1070 "parser_cocci_menhir.mly"
6648 ( List.map
6649 (function x ->
6650 Ast0.wrap
6651 (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
6652 _1 )
6653 # 6654 "parser_cocci_menhir.ml"
6654 in
6655 _menhir_env.MenhirLib.EngineTypes.stack <- {
6656 MenhirLib.EngineTypes.state = _menhir_s;
6657 MenhirLib.EngineTypes.semv = Obj.repr _v;
6658 MenhirLib.EngineTypes.startp = _startpos;
6659 MenhirLib.EngineTypes.endp = _endpos;
6660 MenhirLib.EngineTypes.next = _menhir_stack;
6661 });
6662 (fun _menhir_env ->
6663 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6664 let {
6665 MenhirLib.EngineTypes.state = _menhir_s;
6666 MenhirLib.EngineTypes.semv = _1;
6667 MenhirLib.EngineTypes.startp = _startpos__1_;
6668 MenhirLib.EngineTypes.endp = _endpos__1_;
6669 MenhirLib.EngineTypes.next = _menhir_stack;
6670 } = _menhir_stack in
6671 let _1 : 'tv_statement = Obj.magic _1 in
6672 let _startpos = _startpos__1_ in
6673 let _endpos = _endpos__1_ in
6674 let _v : 'tv_decl_statement =
6675 # 1075 "parser_cocci_menhir.mly"
6676 ( [_1] )
6677 # 6678 "parser_cocci_menhir.ml"
6678 in
6679 _menhir_env.MenhirLib.EngineTypes.stack <- {
6680 MenhirLib.EngineTypes.state = _menhir_s;
6681 MenhirLib.EngineTypes.semv = Obj.repr _v;
6682 MenhirLib.EngineTypes.startp = _startpos;
6683 MenhirLib.EngineTypes.endp = _endpos;
6684 MenhirLib.EngineTypes.next = _menhir_stack;
6685 });
6686 (fun _menhir_env ->
6687 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6688 let {
6689 MenhirLib.EngineTypes.semv = _3;
6690 MenhirLib.EngineTypes.startp = _startpos__3_;
6691 MenhirLib.EngineTypes.endp = _endpos__3_;
6692 MenhirLib.EngineTypes.next = {
6693 MenhirLib.EngineTypes.semv = t;
6694 MenhirLib.EngineTypes.startp = _startpos_t_;
6695 MenhirLib.EngineTypes.endp = _endpos_t_;
6696 MenhirLib.EngineTypes.next = {
6697 MenhirLib.EngineTypes.state = _menhir_s;
6698 MenhirLib.EngineTypes.semv = _1;
6699 MenhirLib.EngineTypes.startp = _startpos__1_;
6700 MenhirLib.EngineTypes.endp = _endpos__1_;
6701 MenhirLib.EngineTypes.next = _menhir_stack;
6702 };
6703 };
6704 } = _menhir_stack in
6705 let _3 : (
6706 # 76 "parser_cocci_menhir.mly"
6707 (Data.clt)
6708 # 6709 "parser_cocci_menhir.ml"
6709 ) = Obj.magic _3 in
6710 let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in
6711 let _1 : (
6712 # 75 "parser_cocci_menhir.mly"
6713 (Data.clt)
6714 # 6715 "parser_cocci_menhir.ml"
6715 ) = Obj.magic _1 in
6716 let _startpos = _startpos__1_ in
6717 let _endpos = _endpos__3_ in
6718 let _v : 'tv_decl_statement =
6719 # 1084 "parser_cocci_menhir.mly"
6720 ( let (mids,code) = t in
6721 if List.for_all
6722 (function x ->
6723 match Ast0.unwrap x with Ast0.DOTS([]) -> true | _ -> false)
6724 code
6725 then []
6726 else
6727 [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, code, mids,
6728 P.clt2mcode ")" _3))] )
6729 # 6730 "parser_cocci_menhir.ml"
6730 in
6731 _menhir_env.MenhirLib.EngineTypes.stack <- {
6732 MenhirLib.EngineTypes.state = _menhir_s;
6733 MenhirLib.EngineTypes.semv = Obj.repr _v;
6734 MenhirLib.EngineTypes.startp = _startpos;
6735 MenhirLib.EngineTypes.endp = _endpos;
6736 MenhirLib.EngineTypes.next = _menhir_stack;
6737 });
6738 (fun _menhir_env ->
6739 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6740 let {
6741 MenhirLib.EngineTypes.state = _menhir_s;
6742 MenhirLib.EngineTypes.semv = _1;
6743 MenhirLib.EngineTypes.startp = _startpos__1_;
6744 MenhirLib.EngineTypes.endp = _endpos__1_;
6745 MenhirLib.EngineTypes.next = _menhir_stack;
6746 } = _menhir_stack in
6747 let _1 : (
6748 # 64 "parser_cocci_menhir.mly"
6749 (Parse_aux.info)
6750 # 6751 "parser_cocci_menhir.ml"
6751 ) = Obj.magic _1 in
6752 let _startpos = _startpos__1_ in
6753 let _endpos = _endpos__1_ in
6754 let _v : 'tv_decl_statement_expr =
6755 # 1097 "parser_cocci_menhir.mly"
6756 ( let (nm,pure,clt) = _1 in
6757 [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
6758 # 6759 "parser_cocci_menhir.ml"
6759 in
6760 _menhir_env.MenhirLib.EngineTypes.stack <- {
6761 MenhirLib.EngineTypes.state = _menhir_s;
6762 MenhirLib.EngineTypes.semv = Obj.repr _v;
6763 MenhirLib.EngineTypes.startp = _startpos;
6764 MenhirLib.EngineTypes.endp = _endpos;
6765 MenhirLib.EngineTypes.next = _menhir_stack;
6766 });
6767 (fun _menhir_env ->
6768 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6769 let {
6770 MenhirLib.EngineTypes.state = _menhir_s;
6771 MenhirLib.EngineTypes.semv = _1;
6772 MenhirLib.EngineTypes.startp = _startpos__1_;
6773 MenhirLib.EngineTypes.endp = _endpos__1_;
6774 MenhirLib.EngineTypes.next = _menhir_stack;
6775 } = _menhir_stack in
6776 let _1 : 'tv_decl_var = Obj.magic _1 in
6777 let _startpos = _startpos__1_ in
6778 let _endpos = _endpos__1_ in
6779 let _v : 'tv_decl_statement_expr =
6780 # 1100 "parser_cocci_menhir.mly"
6781 ( List.map
6782 (function x ->
6783 Ast0.wrap
6784 (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
6785 _1 )
6786 # 6787 "parser_cocci_menhir.ml"
6787 in
6788 _menhir_env.MenhirLib.EngineTypes.stack <- {
6789 MenhirLib.EngineTypes.state = _menhir_s;
6790 MenhirLib.EngineTypes.semv = Obj.repr _v;
6791 MenhirLib.EngineTypes.startp = _startpos;
6792 MenhirLib.EngineTypes.endp = _endpos;
6793 MenhirLib.EngineTypes.next = _menhir_stack;
6794 });
6795 (fun _menhir_env ->
6796 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6797 let {
6798 MenhirLib.EngineTypes.state = _menhir_s;
6799 MenhirLib.EngineTypes.semv = _1;
6800 MenhirLib.EngineTypes.startp = _startpos__1_;
6801 MenhirLib.EngineTypes.endp = _endpos__1_;
6802 MenhirLib.EngineTypes.next = _menhir_stack;
6803 } = _menhir_stack in
6804 let _1 : 'tv_statement = Obj.magic _1 in
6805 let _startpos = _startpos__1_ in
6806 let _endpos = _endpos__1_ in
6807 let _v : 'tv_decl_statement_expr =
6808 # 1105 "parser_cocci_menhir.mly"
6809 ( [_1] )
6810 # 6811 "parser_cocci_menhir.ml"
6811 in
6812 _menhir_env.MenhirLib.EngineTypes.stack <- {
6813 MenhirLib.EngineTypes.state = _menhir_s;
6814 MenhirLib.EngineTypes.semv = Obj.repr _v;
6815 MenhirLib.EngineTypes.startp = _startpos;
6816 MenhirLib.EngineTypes.endp = _endpos;
6817 MenhirLib.EngineTypes.next = _menhir_stack;
6818 });
6819 (fun _menhir_env ->
6820 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6821 let {
6822 MenhirLib.EngineTypes.semv = _3;
6823 MenhirLib.EngineTypes.startp = _startpos__3_;
6824 MenhirLib.EngineTypes.endp = _endpos__3_;
6825 MenhirLib.EngineTypes.next = {
6826 MenhirLib.EngineTypes.semv = t;
6827 MenhirLib.EngineTypes.startp = _startpos_t_;
6828 MenhirLib.EngineTypes.endp = _endpos_t_;
6829 MenhirLib.EngineTypes.next = {
6830 MenhirLib.EngineTypes.state = _menhir_s;
6831 MenhirLib.EngineTypes.semv = _1;
6832 MenhirLib.EngineTypes.startp = _startpos__1_;
6833 MenhirLib.EngineTypes.endp = _endpos__1_;
6834 MenhirLib.EngineTypes.next = _menhir_stack;
6835 };
6836 };
6837 } = _menhir_stack in
6838 let _3 : (
6839 # 76 "parser_cocci_menhir.mly"
6840 (Data.clt)
6841 # 6842 "parser_cocci_menhir.ml"
6842 ) = Obj.magic _3 in
6843 let t : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ = Obj.magic t in
6844 let _1 : (
6845 # 75 "parser_cocci_menhir.mly"
6846 (Data.clt)
6847 # 6848 "parser_cocci_menhir.ml"
6848 ) = Obj.magic _1 in
6849 let _startpos = _startpos__1_ in
6850 let _endpos = _endpos__3_ in
6851 let _v : 'tv_decl_statement_expr =
6852 # 1114 "parser_cocci_menhir.mly"
6853 ( let (mids,code) = t in
6854 if List.for_all (function [] -> true | _ -> false) code
6855 then []
6856 else
6857 let dot_code =
6858 List.map (function x -> Ast0.wrap(Ast0.DOTS x)) code in
6859 [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, dot_code, mids,
6860 P.clt2mcode ")" _3))] )
6861 # 6862 "parser_cocci_menhir.ml"
6862 in
6863 _menhir_env.MenhirLib.EngineTypes.stack <- {
6864 MenhirLib.EngineTypes.state = _menhir_s;
6865 MenhirLib.EngineTypes.semv = Obj.repr _v;
6866 MenhirLib.EngineTypes.startp = _startpos;
6867 MenhirLib.EngineTypes.endp = _endpos;
6868 MenhirLib.EngineTypes.next = _menhir_stack;
6869 });
6870 (fun _menhir_env ->
6871 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6872 let {
6873 MenhirLib.EngineTypes.semv = pv;
6874 MenhirLib.EngineTypes.startp = _startpos_pv_;
6875 MenhirLib.EngineTypes.endp = _endpos_pv_;
6876 MenhirLib.EngineTypes.next = {
6877 MenhirLib.EngineTypes.state = _menhir_s;
6878 MenhirLib.EngineTypes.semv = t;
6879 MenhirLib.EngineTypes.startp = _startpos_t_;
6880 MenhirLib.EngineTypes.endp = _endpos_t_;
6881 MenhirLib.EngineTypes.next = _menhir_stack;
6882 };
6883 } = _menhir_stack in
6884 let pv : (
6885 # 106 "parser_cocci_menhir.mly"
6886 (Data.clt)
6887 # 6888 "parser_cocci_menhir.ml"
6888 ) = Obj.magic pv in
6889 let t : 'tv_ctype = Obj.magic t in
6890 let _startpos = _startpos_t_ in
6891 let _endpos = _endpos_pv_ in
6892 let _v : 'tv_decl_var =
6893 # 886 "parser_cocci_menhir.mly"
6894 ( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] )
6895 # 6896 "parser_cocci_menhir.ml"
6896 in
6897 _menhir_env.MenhirLib.EngineTypes.stack <- {
6898 MenhirLib.EngineTypes.state = _menhir_s;
6899 MenhirLib.EngineTypes.semv = Obj.repr _v;
6900 MenhirLib.EngineTypes.startp = _startpos;
6901 MenhirLib.EngineTypes.endp = _endpos;
6902 MenhirLib.EngineTypes.next = _menhir_stack;
6903 });
6904 (fun _menhir_env ->
6905 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6906 let {
6907 MenhirLib.EngineTypes.semv = pv;
6908 MenhirLib.EngineTypes.startp = _startpos_pv_;
6909 MenhirLib.EngineTypes.endp = _endpos_pv_;
6910 MenhirLib.EngineTypes.next = {
6911 MenhirLib.EngineTypes.semv = d;
6912 MenhirLib.EngineTypes.startp = _startpos_d_;
6913 MenhirLib.EngineTypes.endp = _endpos_d_;
6914 MenhirLib.EngineTypes.next = {
6915 MenhirLib.EngineTypes.state = _menhir_s;
6916 MenhirLib.EngineTypes.semv = t;
6917 MenhirLib.EngineTypes.startp = _startpos_t_;
6918 MenhirLib.EngineTypes.endp = _endpos_t_;
6919 MenhirLib.EngineTypes.next = _menhir_stack;
6920 };
6921 };
6922 } = _menhir_stack in
6923 let pv : (
6924 # 106 "parser_cocci_menhir.mly"
6925 (Data.clt)
6926 # 6927 "parser_cocci_menhir.ml"
6927 ) = Obj.magic pv in
6928 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
6929 let t : 'tv_ctype = Obj.magic t in
6930 let _startpos = _startpos_t_ in
6931 let _endpos = _endpos_pv_ in
6932 let _v : 'tv_decl_var = let s =
6933
6934 # 39 "standard.mly"
6935 ( None )
6936 # 6937 "parser_cocci_menhir.ml"
6937
6938 in
6939
6940 # 888 "parser_cocci_menhir.mly"
6941 ( List.map
6942 (function (id,fn) ->
6943 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
6944 d )
6945 # 6946 "parser_cocci_menhir.ml"
6946 in
6947 _menhir_env.MenhirLib.EngineTypes.stack <- {
6948 MenhirLib.EngineTypes.state = _menhir_s;
6949 MenhirLib.EngineTypes.semv = Obj.repr _v;
6950 MenhirLib.EngineTypes.startp = _startpos;
6951 MenhirLib.EngineTypes.endp = _endpos;
6952 MenhirLib.EngineTypes.next = _menhir_stack;
6953 });
6954 (fun _menhir_env ->
6955 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6956 let {
6957 MenhirLib.EngineTypes.semv = pv;
6958 MenhirLib.EngineTypes.startp = _startpos_pv_;
6959 MenhirLib.EngineTypes.endp = _endpos_pv_;
6960 MenhirLib.EngineTypes.next = {
6961 MenhirLib.EngineTypes.semv = d;
6962 MenhirLib.EngineTypes.startp = _startpos_d_;
6963 MenhirLib.EngineTypes.endp = _endpos_d_;
6964 MenhirLib.EngineTypes.next = {
6965 MenhirLib.EngineTypes.semv = t;
6966 MenhirLib.EngineTypes.startp = _startpos_t_;
6967 MenhirLib.EngineTypes.endp = _endpos_t_;
6968 MenhirLib.EngineTypes.next = {
6969 MenhirLib.EngineTypes.state = _menhir_s;
6970 MenhirLib.EngineTypes.semv = x0;
6971 MenhirLib.EngineTypes.startp = _startpos_x0_;
6972 MenhirLib.EngineTypes.endp = _endpos_x0_;
6973 MenhirLib.EngineTypes.next = _menhir_stack;
6974 };
6975 };
6976 };
6977 } = _menhir_stack in
6978 let pv : (
6979 # 106 "parser_cocci_menhir.mly"
6980 (Data.clt)
6981 # 6982 "parser_cocci_menhir.ml"
6982 ) = Obj.magic pv in
6983 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
6984 let t : 'tv_ctype = Obj.magic t in
6985 let x0 : 'tv_storage = Obj.magic x0 in
6986 let _startpos = _startpos_x0_ in
6987 let _endpos = _endpos_pv_ in
6988 let _v : 'tv_decl_var = let s =
6989 let x = x0 in
6990
6991 # 41 "standard.mly"
6992 ( Some x )
6993 # 6994 "parser_cocci_menhir.ml"
6994
6995 in
6996
6997 # 888 "parser_cocci_menhir.mly"
6998 ( List.map
6999 (function (id,fn) ->
7000 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
7001 d )
7002 # 7003 "parser_cocci_menhir.ml"
7003 in
7004 _menhir_env.MenhirLib.EngineTypes.stack <- {
7005 MenhirLib.EngineTypes.state = _menhir_s;
7006 MenhirLib.EngineTypes.semv = Obj.repr _v;
7007 MenhirLib.EngineTypes.startp = _startpos;
7008 MenhirLib.EngineTypes.endp = _endpos;
7009 MenhirLib.EngineTypes.next = _menhir_stack;
7010 });
7011 (fun _menhir_env ->
7012 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7013 let {
7014 MenhirLib.EngineTypes.state = _menhir_s;
7015 MenhirLib.EngineTypes.semv = f;
7016 MenhirLib.EngineTypes.startp = _startpos_f_;
7017 MenhirLib.EngineTypes.endp = _endpos_f_;
7018 MenhirLib.EngineTypes.next = _menhir_stack;
7019 } = _menhir_stack in
7020 let f : 'tv_funproto = Obj.magic f in
7021 let _startpos = _startpos_f_ in
7022 let _endpos = _endpos_f_ in
7023 let _v : 'tv_decl_var =
7024 # 892 "parser_cocci_menhir.mly"
7025 ( [f] )
7026 # 7027 "parser_cocci_menhir.ml"
7027 in
7028 _menhir_env.MenhirLib.EngineTypes.stack <- {
7029 MenhirLib.EngineTypes.state = _menhir_s;
7030 MenhirLib.EngineTypes.semv = Obj.repr _v;
7031 MenhirLib.EngineTypes.startp = _startpos;
7032 MenhirLib.EngineTypes.endp = _endpos;
7033 MenhirLib.EngineTypes.next = _menhir_stack;
7034 });
7035 (fun _menhir_env ->
7036 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7037 let {
7038 MenhirLib.EngineTypes.semv = pv;
7039 MenhirLib.EngineTypes.startp = _startpos_pv_;
7040 MenhirLib.EngineTypes.endp = _endpos_pv_;
7041 MenhirLib.EngineTypes.next = {
7042 MenhirLib.EngineTypes.semv = e;
7043 MenhirLib.EngineTypes.startp = _startpos_e_;
7044 MenhirLib.EngineTypes.endp = _endpos_e_;
7045 MenhirLib.EngineTypes.next = {
7046 MenhirLib.EngineTypes.semv = q;
7047 MenhirLib.EngineTypes.startp = _startpos_q_;
7048 MenhirLib.EngineTypes.endp = _endpos_q_;
7049 MenhirLib.EngineTypes.next = {
7050 MenhirLib.EngineTypes.semv = d;
7051 MenhirLib.EngineTypes.startp = _startpos_d_;
7052 MenhirLib.EngineTypes.endp = _endpos_d_;
7053 MenhirLib.EngineTypes.next = {
7054 MenhirLib.EngineTypes.state = _menhir_s;
7055 MenhirLib.EngineTypes.semv = t;
7056 MenhirLib.EngineTypes.startp = _startpos_t_;
7057 MenhirLib.EngineTypes.endp = _endpos_t_;
7058 MenhirLib.EngineTypes.next = _menhir_stack;
7059 };
7060 };
7061 };
7062 };
7063 } = _menhir_stack in
7064 let pv : (
7065 # 106 "parser_cocci_menhir.mly"
7066 (Data.clt)
7067 # 7068 "parser_cocci_menhir.ml"
7068 ) = Obj.magic pv in
7069 let e : 'tv_initialize = Obj.magic e in
7070 let q : (
7071 # 106 "parser_cocci_menhir.mly"
7072 (Data.clt)
7073 # 7074 "parser_cocci_menhir.ml"
7074 ) = Obj.magic q in
7075 let d : 'tv_d_ident = Obj.magic d in
7076 let t : 'tv_ctype = Obj.magic t in
7077 let _startpos = _startpos_t_ in
7078 let _endpos = _endpos_pv_ in
7079 let _v : 'tv_decl_var = let s =
7080
7081 # 39 "standard.mly"
7082 ( None )
7083 # 7084 "parser_cocci_menhir.ml"
7084
7085 in
7086
7087 # 894 "parser_cocci_menhir.mly"
7088 (let (id,fn) = d in
7089 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
7090 # 7091 "parser_cocci_menhir.ml"
7091 in
7092 _menhir_env.MenhirLib.EngineTypes.stack <- {
7093 MenhirLib.EngineTypes.state = _menhir_s;
7094 MenhirLib.EngineTypes.semv = Obj.repr _v;
7095 MenhirLib.EngineTypes.startp = _startpos;
7096 MenhirLib.EngineTypes.endp = _endpos;
7097 MenhirLib.EngineTypes.next = _menhir_stack;
7098 });
7099 (fun _menhir_env ->
7100 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7101 let {
7102 MenhirLib.EngineTypes.semv = pv;
7103 MenhirLib.EngineTypes.startp = _startpos_pv_;
7104 MenhirLib.EngineTypes.endp = _endpos_pv_;
7105 MenhirLib.EngineTypes.next = {
7106 MenhirLib.EngineTypes.semv = e;
7107 MenhirLib.EngineTypes.startp = _startpos_e_;
7108 MenhirLib.EngineTypes.endp = _endpos_e_;
7109 MenhirLib.EngineTypes.next = {
7110 MenhirLib.EngineTypes.semv = q;
7111 MenhirLib.EngineTypes.startp = _startpos_q_;
7112 MenhirLib.EngineTypes.endp = _endpos_q_;
7113 MenhirLib.EngineTypes.next = {
7114 MenhirLib.EngineTypes.semv = d;
7115 MenhirLib.EngineTypes.startp = _startpos_d_;
7116 MenhirLib.EngineTypes.endp = _endpos_d_;
7117 MenhirLib.EngineTypes.next = {
7118 MenhirLib.EngineTypes.semv = t;
7119 MenhirLib.EngineTypes.startp = _startpos_t_;
7120 MenhirLib.EngineTypes.endp = _endpos_t_;
7121 MenhirLib.EngineTypes.next = {
7122 MenhirLib.EngineTypes.state = _menhir_s;
7123 MenhirLib.EngineTypes.semv = x0;
7124 MenhirLib.EngineTypes.startp = _startpos_x0_;
7125 MenhirLib.EngineTypes.endp = _endpos_x0_;
7126 MenhirLib.EngineTypes.next = _menhir_stack;
7127 };
7128 };
7129 };
7130 };
7131 };
7132 } = _menhir_stack in
7133 let pv : (
7134 # 106 "parser_cocci_menhir.mly"
7135 (Data.clt)
7136 # 7137 "parser_cocci_menhir.ml"
7137 ) = Obj.magic pv in
7138 let e : 'tv_initialize = Obj.magic e in
7139 let q : (
7140 # 106 "parser_cocci_menhir.mly"
7141 (Data.clt)
7142 # 7143 "parser_cocci_menhir.ml"
7143 ) = Obj.magic q in
7144 let d : 'tv_d_ident = Obj.magic d in
7145 let t : 'tv_ctype = Obj.magic t in
7146 let x0 : 'tv_storage = Obj.magic x0 in
7147 let _startpos = _startpos_x0_ in
7148 let _endpos = _endpos_pv_ in
7149 let _v : 'tv_decl_var = let s =
7150 let x = x0 in
7151
7152 # 41 "standard.mly"
7153 ( Some x )
7154 # 7155 "parser_cocci_menhir.ml"
7155
7156 in
7157
7158 # 894 "parser_cocci_menhir.mly"
7159 (let (id,fn) = d in
7160 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
7161 # 7162 "parser_cocci_menhir.ml"
7162 in
7163 _menhir_env.MenhirLib.EngineTypes.stack <- {
7164 MenhirLib.EngineTypes.state = _menhir_s;
7165 MenhirLib.EngineTypes.semv = Obj.repr _v;
7166 MenhirLib.EngineTypes.startp = _startpos;
7167 MenhirLib.EngineTypes.endp = _endpos;
7168 MenhirLib.EngineTypes.next = _menhir_stack;
7169 });
7170 (fun _menhir_env ->
7171 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7172 let {
7173 MenhirLib.EngineTypes.semv = pv;
7174 MenhirLib.EngineTypes.startp = _startpos_pv_;
7175 MenhirLib.EngineTypes.endp = _endpos_pv_;
7176 MenhirLib.EngineTypes.next = {
7177 MenhirLib.EngineTypes.semv = d;
7178 MenhirLib.EngineTypes.startp = _startpos_d_;
7179 MenhirLib.EngineTypes.endp = _endpos_d_;
7180 MenhirLib.EngineTypes.next = {
7181 MenhirLib.EngineTypes.state = _menhir_s;
7182 MenhirLib.EngineTypes.semv = i;
7183 MenhirLib.EngineTypes.startp = _startpos_i_;
7184 MenhirLib.EngineTypes.endp = _endpos_i_;
7185 MenhirLib.EngineTypes.next = _menhir_stack;
7186 };
7187 };
7188 } = _menhir_stack in
7189 let pv : (
7190 # 106 "parser_cocci_menhir.mly"
7191 (Data.clt)
7192 # 7193 "parser_cocci_menhir.ml"
7193 ) = Obj.magic pv in
7194 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
7195 let i : 'tv_pure_ident = Obj.magic i in
7196 let _startpos = _startpos_i_ in
7197 let _endpos = _endpos_pv_ in
7198 let _v : 'tv_decl_var = let cv =
7199
7200 # 39 "standard.mly"
7201 ( None )
7202 # 7203 "parser_cocci_menhir.ml"
7203
7204 in
7205 let s =
7206
7207 # 39 "standard.mly"
7208 ( None )
7209 # 7210 "parser_cocci_menhir.ml"
7210
7211 in
7212
7213 # 899 "parser_cocci_menhir.mly"
7214 ( List.map
7215 (function (id,fn) ->
7216 let idtype =
7217 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7218 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
7219 d )
7220 # 7221 "parser_cocci_menhir.ml"
7221 in
7222 _menhir_env.MenhirLib.EngineTypes.stack <- {
7223 MenhirLib.EngineTypes.state = _menhir_s;
7224 MenhirLib.EngineTypes.semv = Obj.repr _v;
7225 MenhirLib.EngineTypes.startp = _startpos;
7226 MenhirLib.EngineTypes.endp = _endpos;
7227 MenhirLib.EngineTypes.next = _menhir_stack;
7228 });
7229 (fun _menhir_env ->
7230 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7231 let {
7232 MenhirLib.EngineTypes.semv = pv;
7233 MenhirLib.EngineTypes.startp = _startpos_pv_;
7234 MenhirLib.EngineTypes.endp = _endpos_pv_;
7235 MenhirLib.EngineTypes.next = {
7236 MenhirLib.EngineTypes.semv = d;
7237 MenhirLib.EngineTypes.startp = _startpos_d_;
7238 MenhirLib.EngineTypes.endp = _endpos_d_;
7239 MenhirLib.EngineTypes.next = {
7240 MenhirLib.EngineTypes.semv = i;
7241 MenhirLib.EngineTypes.startp = _startpos_i_;
7242 MenhirLib.EngineTypes.endp = _endpos_i_;
7243 MenhirLib.EngineTypes.next = {
7244 MenhirLib.EngineTypes.state = _menhir_s;
7245 MenhirLib.EngineTypes.semv = x0;
7246 MenhirLib.EngineTypes.startp = _startpos_x0_;
7247 MenhirLib.EngineTypes.endp = _endpos_x0_;
7248 MenhirLib.EngineTypes.next = _menhir_stack;
7249 };
7250 };
7251 };
7252 } = _menhir_stack in
7253 let pv : (
7254 # 106 "parser_cocci_menhir.mly"
7255 (Data.clt)
7256 # 7257 "parser_cocci_menhir.ml"
7257 ) = Obj.magic pv in
7258 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
7259 let i : 'tv_pure_ident = Obj.magic i in
7260 let x0 : 'tv_const_vol = Obj.magic x0 in
7261 let _startpos = _startpos_x0_ in
7262 let _endpos = _endpos_pv_ in
7263 let _v : 'tv_decl_var = let cv =
7264 let x = x0 in
7265
7266 # 41 "standard.mly"
7267 ( Some x )
7268 # 7269 "parser_cocci_menhir.ml"
7269
7270 in
7271 let s =
7272
7273 # 39 "standard.mly"
7274 ( None )
7275 # 7276 "parser_cocci_menhir.ml"
7276
7277 in
7278
7279 # 899 "parser_cocci_menhir.mly"
7280 ( List.map
7281 (function (id,fn) ->
7282 let idtype =
7283 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7284 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
7285 d )
7286 # 7287 "parser_cocci_menhir.ml"
7287 in
7288 _menhir_env.MenhirLib.EngineTypes.stack <- {
7289 MenhirLib.EngineTypes.state = _menhir_s;
7290 MenhirLib.EngineTypes.semv = Obj.repr _v;
7291 MenhirLib.EngineTypes.startp = _startpos;
7292 MenhirLib.EngineTypes.endp = _endpos;
7293 MenhirLib.EngineTypes.next = _menhir_stack;
7294 });
7295 (fun _menhir_env ->
7296 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7297 let {
7298 MenhirLib.EngineTypes.semv = pv;
7299 MenhirLib.EngineTypes.startp = _startpos_pv_;
7300 MenhirLib.EngineTypes.endp = _endpos_pv_;
7301 MenhirLib.EngineTypes.next = {
7302 MenhirLib.EngineTypes.semv = d;
7303 MenhirLib.EngineTypes.startp = _startpos_d_;
7304 MenhirLib.EngineTypes.endp = _endpos_d_;
7305 MenhirLib.EngineTypes.next = {
7306 MenhirLib.EngineTypes.semv = i;
7307 MenhirLib.EngineTypes.startp = _startpos_i_;
7308 MenhirLib.EngineTypes.endp = _endpos_i_;
7309 MenhirLib.EngineTypes.next = {
7310 MenhirLib.EngineTypes.state = _menhir_s;
7311 MenhirLib.EngineTypes.semv = x0;
7312 MenhirLib.EngineTypes.startp = _startpos_x0_;
7313 MenhirLib.EngineTypes.endp = _endpos_x0_;
7314 MenhirLib.EngineTypes.next = _menhir_stack;
7315 };
7316 };
7317 };
7318 } = _menhir_stack in
7319 let pv : (
7320 # 106 "parser_cocci_menhir.mly"
7321 (Data.clt)
7322 # 7323 "parser_cocci_menhir.ml"
7323 ) = Obj.magic pv in
7324 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
7325 let i : 'tv_pure_ident = Obj.magic i in
7326 let x0 : 'tv_storage = Obj.magic x0 in
7327 let _startpos = _startpos_x0_ in
7328 let _endpos = _endpos_pv_ in
7329 let _v : 'tv_decl_var = let cv =
7330
7331 # 39 "standard.mly"
7332 ( None )
7333 # 7334 "parser_cocci_menhir.ml"
7334
7335 in
7336 let s =
7337 let x = x0 in
7338
7339 # 41 "standard.mly"
7340 ( Some x )
7341 # 7342 "parser_cocci_menhir.ml"
7342
7343 in
7344
7345 # 899 "parser_cocci_menhir.mly"
7346 ( List.map
7347 (function (id,fn) ->
7348 let idtype =
7349 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7350 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
7351 d )
7352 # 7353 "parser_cocci_menhir.ml"
7353 in
7354 _menhir_env.MenhirLib.EngineTypes.stack <- {
7355 MenhirLib.EngineTypes.state = _menhir_s;
7356 MenhirLib.EngineTypes.semv = Obj.repr _v;
7357 MenhirLib.EngineTypes.startp = _startpos;
7358 MenhirLib.EngineTypes.endp = _endpos;
7359 MenhirLib.EngineTypes.next = _menhir_stack;
7360 });
7361 (fun _menhir_env ->
7362 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7363 let {
7364 MenhirLib.EngineTypes.semv = pv;
7365 MenhirLib.EngineTypes.startp = _startpos_pv_;
7366 MenhirLib.EngineTypes.endp = _endpos_pv_;
7367 MenhirLib.EngineTypes.next = {
7368 MenhirLib.EngineTypes.semv = d;
7369 MenhirLib.EngineTypes.startp = _startpos_d_;
7370 MenhirLib.EngineTypes.endp = _endpos_d_;
7371 MenhirLib.EngineTypes.next = {
7372 MenhirLib.EngineTypes.semv = i;
7373 MenhirLib.EngineTypes.startp = _startpos_i_;
7374 MenhirLib.EngineTypes.endp = _endpos_i_;
7375 MenhirLib.EngineTypes.next = {
7376 MenhirLib.EngineTypes.semv = x1;
7377 MenhirLib.EngineTypes.startp = _startpos_x1_;
7378 MenhirLib.EngineTypes.endp = _endpos_x1_;
7379 MenhirLib.EngineTypes.next = {
7380 MenhirLib.EngineTypes.state = _menhir_s;
7381 MenhirLib.EngineTypes.semv = x0;
7382 MenhirLib.EngineTypes.startp = _startpos_x0_;
7383 MenhirLib.EngineTypes.endp = _endpos_x0_;
7384 MenhirLib.EngineTypes.next = _menhir_stack;
7385 };
7386 };
7387 };
7388 };
7389 } = _menhir_stack in
7390 let pv : (
7391 # 106 "parser_cocci_menhir.mly"
7392 (Data.clt)
7393 # 7394 "parser_cocci_menhir.ml"
7394 ) = Obj.magic pv in
7395 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
7396 let i : 'tv_pure_ident = Obj.magic i in
7397 let x1 : 'tv_const_vol = Obj.magic x1 in
7398 let x0 : 'tv_storage = Obj.magic x0 in
7399 let _startpos = _startpos_x0_ in
7400 let _endpos = _endpos_pv_ in
7401 let _v : 'tv_decl_var = let cv =
7402 let x = x1 in
7403
7404 # 41 "standard.mly"
7405 ( Some x )
7406 # 7407 "parser_cocci_menhir.ml"
7407
7408 in
7409 let s =
7410 let x = x0 in
7411
7412 # 41 "standard.mly"
7413 ( Some x )
7414 # 7415 "parser_cocci_menhir.ml"
7415
7416 in
7417
7418 # 899 "parser_cocci_menhir.mly"
7419 ( List.map
7420 (function (id,fn) ->
7421 let idtype =
7422 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7423 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
7424 d )
7425 # 7426 "parser_cocci_menhir.ml"
7426 in
7427 _menhir_env.MenhirLib.EngineTypes.stack <- {
7428 MenhirLib.EngineTypes.state = _menhir_s;
7429 MenhirLib.EngineTypes.semv = Obj.repr _v;
7430 MenhirLib.EngineTypes.startp = _startpos;
7431 MenhirLib.EngineTypes.endp = _endpos;
7432 MenhirLib.EngineTypes.next = _menhir_stack;
7433 });
7434 (fun _menhir_env ->
7435 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7436 let {
7437 MenhirLib.EngineTypes.semv = pv;
7438 MenhirLib.EngineTypes.startp = _startpos_pv_;
7439 MenhirLib.EngineTypes.endp = _endpos_pv_;
7440 MenhirLib.EngineTypes.next = {
7441 MenhirLib.EngineTypes.semv = e;
7442 MenhirLib.EngineTypes.startp = _startpos_e_;
7443 MenhirLib.EngineTypes.endp = _endpos_e_;
7444 MenhirLib.EngineTypes.next = {
7445 MenhirLib.EngineTypes.semv = q;
7446 MenhirLib.EngineTypes.startp = _startpos_q_;
7447 MenhirLib.EngineTypes.endp = _endpos_q_;
7448 MenhirLib.EngineTypes.next = {
7449 MenhirLib.EngineTypes.semv = d;
7450 MenhirLib.EngineTypes.startp = _startpos_d_;
7451 MenhirLib.EngineTypes.endp = _endpos_d_;
7452 MenhirLib.EngineTypes.next = {
7453 MenhirLib.EngineTypes.state = _menhir_s;
7454 MenhirLib.EngineTypes.semv = i;
7455 MenhirLib.EngineTypes.startp = _startpos_i_;
7456 MenhirLib.EngineTypes.endp = _endpos_i_;
7457 MenhirLib.EngineTypes.next = _menhir_stack;
7458 };
7459 };
7460 };
7461 };
7462 } = _menhir_stack in
7463 let pv : (
7464 # 106 "parser_cocci_menhir.mly"
7465 (Data.clt)
7466 # 7467 "parser_cocci_menhir.ml"
7467 ) = Obj.magic pv in
7468 let e : 'tv_initialize = Obj.magic e in
7469 let q : (
7470 # 106 "parser_cocci_menhir.mly"
7471 (Data.clt)
7472 # 7473 "parser_cocci_menhir.ml"
7473 ) = Obj.magic q in
7474 let d : 'tv_d_ident = Obj.magic d in
7475 let i : 'tv_pure_ident = Obj.magic i in
7476 let _startpos = _startpos_i_ in
7477 let _endpos = _endpos_pv_ in
7478 let _v : 'tv_decl_var = let cv =
7479
7480 # 39 "standard.mly"
7481 ( None )
7482 # 7483 "parser_cocci_menhir.ml"
7483
7484 in
7485 let s =
7486
7487 # 39 "standard.mly"
7488 ( None )
7489 # 7490 "parser_cocci_menhir.ml"
7490
7491 in
7492
7493 # 907 "parser_cocci_menhir.mly"
7494 ( let (id,fn) = d in
7495 !Data.add_type_name (P.id2name i);
7496 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7497 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
7498 P.clt2mcode ";" pv))] )
7499 # 7500 "parser_cocci_menhir.ml"
7500 in
7501 _menhir_env.MenhirLib.EngineTypes.stack <- {
7502 MenhirLib.EngineTypes.state = _menhir_s;
7503 MenhirLib.EngineTypes.semv = Obj.repr _v;
7504 MenhirLib.EngineTypes.startp = _startpos;
7505 MenhirLib.EngineTypes.endp = _endpos;
7506 MenhirLib.EngineTypes.next = _menhir_stack;
7507 });
7508 (fun _menhir_env ->
7509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7510 let {
7511 MenhirLib.EngineTypes.semv = pv;
7512 MenhirLib.EngineTypes.startp = _startpos_pv_;
7513 MenhirLib.EngineTypes.endp = _endpos_pv_;
7514 MenhirLib.EngineTypes.next = {
7515 MenhirLib.EngineTypes.semv = e;
7516 MenhirLib.EngineTypes.startp = _startpos_e_;
7517 MenhirLib.EngineTypes.endp = _endpos_e_;
7518 MenhirLib.EngineTypes.next = {
7519 MenhirLib.EngineTypes.semv = q;
7520 MenhirLib.EngineTypes.startp = _startpos_q_;
7521 MenhirLib.EngineTypes.endp = _endpos_q_;
7522 MenhirLib.EngineTypes.next = {
7523 MenhirLib.EngineTypes.semv = d;
7524 MenhirLib.EngineTypes.startp = _startpos_d_;
7525 MenhirLib.EngineTypes.endp = _endpos_d_;
7526 MenhirLib.EngineTypes.next = {
7527 MenhirLib.EngineTypes.semv = i;
7528 MenhirLib.EngineTypes.startp = _startpos_i_;
7529 MenhirLib.EngineTypes.endp = _endpos_i_;
7530 MenhirLib.EngineTypes.next = {
7531 MenhirLib.EngineTypes.state = _menhir_s;
7532 MenhirLib.EngineTypes.semv = x0;
7533 MenhirLib.EngineTypes.startp = _startpos_x0_;
7534 MenhirLib.EngineTypes.endp = _endpos_x0_;
7535 MenhirLib.EngineTypes.next = _menhir_stack;
7536 };
7537 };
7538 };
7539 };
7540 };
7541 } = _menhir_stack in
7542 let pv : (
7543 # 106 "parser_cocci_menhir.mly"
7544 (Data.clt)
7545 # 7546 "parser_cocci_menhir.ml"
7546 ) = Obj.magic pv in
7547 let e : 'tv_initialize = Obj.magic e in
7548 let q : (
7549 # 106 "parser_cocci_menhir.mly"
7550 (Data.clt)
7551 # 7552 "parser_cocci_menhir.ml"
7552 ) = Obj.magic q in
7553 let d : 'tv_d_ident = Obj.magic d in
7554 let i : 'tv_pure_ident = Obj.magic i in
7555 let x0 : 'tv_const_vol = Obj.magic x0 in
7556 let _startpos = _startpos_x0_ in
7557 let _endpos = _endpos_pv_ in
7558 let _v : 'tv_decl_var = let cv =
7559 let x = x0 in
7560
7561 # 41 "standard.mly"
7562 ( Some x )
7563 # 7564 "parser_cocci_menhir.ml"
7564
7565 in
7566 let s =
7567
7568 # 39 "standard.mly"
7569 ( None )
7570 # 7571 "parser_cocci_menhir.ml"
7571
7572 in
7573
7574 # 907 "parser_cocci_menhir.mly"
7575 ( let (id,fn) = d in
7576 !Data.add_type_name (P.id2name i);
7577 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7578 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
7579 P.clt2mcode ";" pv))] )
7580 # 7581 "parser_cocci_menhir.ml"
7581 in
7582 _menhir_env.MenhirLib.EngineTypes.stack <- {
7583 MenhirLib.EngineTypes.state = _menhir_s;
7584 MenhirLib.EngineTypes.semv = Obj.repr _v;
7585 MenhirLib.EngineTypes.startp = _startpos;
7586 MenhirLib.EngineTypes.endp = _endpos;
7587 MenhirLib.EngineTypes.next = _menhir_stack;
7588 });
7589 (fun _menhir_env ->
7590 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7591 let {
7592 MenhirLib.EngineTypes.semv = pv;
7593 MenhirLib.EngineTypes.startp = _startpos_pv_;
7594 MenhirLib.EngineTypes.endp = _endpos_pv_;
7595 MenhirLib.EngineTypes.next = {
7596 MenhirLib.EngineTypes.semv = e;
7597 MenhirLib.EngineTypes.startp = _startpos_e_;
7598 MenhirLib.EngineTypes.endp = _endpos_e_;
7599 MenhirLib.EngineTypes.next = {
7600 MenhirLib.EngineTypes.semv = q;
7601 MenhirLib.EngineTypes.startp = _startpos_q_;
7602 MenhirLib.EngineTypes.endp = _endpos_q_;
7603 MenhirLib.EngineTypes.next = {
7604 MenhirLib.EngineTypes.semv = d;
7605 MenhirLib.EngineTypes.startp = _startpos_d_;
7606 MenhirLib.EngineTypes.endp = _endpos_d_;
7607 MenhirLib.EngineTypes.next = {
7608 MenhirLib.EngineTypes.semv = i;
7609 MenhirLib.EngineTypes.startp = _startpos_i_;
7610 MenhirLib.EngineTypes.endp = _endpos_i_;
7611 MenhirLib.EngineTypes.next = {
7612 MenhirLib.EngineTypes.state = _menhir_s;
7613 MenhirLib.EngineTypes.semv = x0;
7614 MenhirLib.EngineTypes.startp = _startpos_x0_;
7615 MenhirLib.EngineTypes.endp = _endpos_x0_;
7616 MenhirLib.EngineTypes.next = _menhir_stack;
7617 };
7618 };
7619 };
7620 };
7621 };
7622 } = _menhir_stack in
7623 let pv : (
7624 # 106 "parser_cocci_menhir.mly"
7625 (Data.clt)
7626 # 7627 "parser_cocci_menhir.ml"
7627 ) = Obj.magic pv in
7628 let e : 'tv_initialize = Obj.magic e in
7629 let q : (
7630 # 106 "parser_cocci_menhir.mly"
7631 (Data.clt)
7632 # 7633 "parser_cocci_menhir.ml"
7633 ) = Obj.magic q in
7634 let d : 'tv_d_ident = Obj.magic d in
7635 let i : 'tv_pure_ident = Obj.magic i in
7636 let x0 : 'tv_storage = Obj.magic x0 in
7637 let _startpos = _startpos_x0_ in
7638 let _endpos = _endpos_pv_ in
7639 let _v : 'tv_decl_var = let cv =
7640
7641 # 39 "standard.mly"
7642 ( None )
7643 # 7644 "parser_cocci_menhir.ml"
7644
7645 in
7646 let s =
7647 let x = x0 in
7648
7649 # 41 "standard.mly"
7650 ( Some x )
7651 # 7652 "parser_cocci_menhir.ml"
7652
7653 in
7654
7655 # 907 "parser_cocci_menhir.mly"
7656 ( let (id,fn) = d in
7657 !Data.add_type_name (P.id2name i);
7658 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7659 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
7660 P.clt2mcode ";" pv))] )
7661 # 7662 "parser_cocci_menhir.ml"
7662 in
7663 _menhir_env.MenhirLib.EngineTypes.stack <- {
7664 MenhirLib.EngineTypes.state = _menhir_s;
7665 MenhirLib.EngineTypes.semv = Obj.repr _v;
7666 MenhirLib.EngineTypes.startp = _startpos;
7667 MenhirLib.EngineTypes.endp = _endpos;
7668 MenhirLib.EngineTypes.next = _menhir_stack;
7669 });
7670 (fun _menhir_env ->
7671 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7672 let {
7673 MenhirLib.EngineTypes.semv = pv;
7674 MenhirLib.EngineTypes.startp = _startpos_pv_;
7675 MenhirLib.EngineTypes.endp = _endpos_pv_;
7676 MenhirLib.EngineTypes.next = {
7677 MenhirLib.EngineTypes.semv = e;
7678 MenhirLib.EngineTypes.startp = _startpos_e_;
7679 MenhirLib.EngineTypes.endp = _endpos_e_;
7680 MenhirLib.EngineTypes.next = {
7681 MenhirLib.EngineTypes.semv = q;
7682 MenhirLib.EngineTypes.startp = _startpos_q_;
7683 MenhirLib.EngineTypes.endp = _endpos_q_;
7684 MenhirLib.EngineTypes.next = {
7685 MenhirLib.EngineTypes.semv = d;
7686 MenhirLib.EngineTypes.startp = _startpos_d_;
7687 MenhirLib.EngineTypes.endp = _endpos_d_;
7688 MenhirLib.EngineTypes.next = {
7689 MenhirLib.EngineTypes.semv = i;
7690 MenhirLib.EngineTypes.startp = _startpos_i_;
7691 MenhirLib.EngineTypes.endp = _endpos_i_;
7692 MenhirLib.EngineTypes.next = {
7693 MenhirLib.EngineTypes.semv = x1;
7694 MenhirLib.EngineTypes.startp = _startpos_x1_;
7695 MenhirLib.EngineTypes.endp = _endpos_x1_;
7696 MenhirLib.EngineTypes.next = {
7697 MenhirLib.EngineTypes.state = _menhir_s;
7698 MenhirLib.EngineTypes.semv = x0;
7699 MenhirLib.EngineTypes.startp = _startpos_x0_;
7700 MenhirLib.EngineTypes.endp = _endpos_x0_;
7701 MenhirLib.EngineTypes.next = _menhir_stack;
7702 };
7703 };
7704 };
7705 };
7706 };
7707 };
7708 } = _menhir_stack in
7709 let pv : (
7710 # 106 "parser_cocci_menhir.mly"
7711 (Data.clt)
7712 # 7713 "parser_cocci_menhir.ml"
7713 ) = Obj.magic pv in
7714 let e : 'tv_initialize = Obj.magic e in
7715 let q : (
7716 # 106 "parser_cocci_menhir.mly"
7717 (Data.clt)
7718 # 7719 "parser_cocci_menhir.ml"
7719 ) = Obj.magic q in
7720 let d : 'tv_d_ident = Obj.magic d in
7721 let i : 'tv_pure_ident = Obj.magic i in
7722 let x1 : 'tv_const_vol = Obj.magic x1 in
7723 let x0 : 'tv_storage = Obj.magic x0 in
7724 let _startpos = _startpos_x0_ in
7725 let _endpos = _endpos_pv_ in
7726 let _v : 'tv_decl_var = let cv =
7727 let x = x1 in
7728
7729 # 41 "standard.mly"
7730 ( Some x )
7731 # 7732 "parser_cocci_menhir.ml"
7732
7733 in
7734 let s =
7735 let x = x0 in
7736
7737 # 41 "standard.mly"
7738 ( Some x )
7739 # 7740 "parser_cocci_menhir.ml"
7740
7741 in
7742
7743 # 907 "parser_cocci_menhir.mly"
7744 ( let (id,fn) = d in
7745 !Data.add_type_name (P.id2name i);
7746 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
7747 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
7748 P.clt2mcode ";" pv))] )
7749 # 7750 "parser_cocci_menhir.ml"
7750 in
7751 _menhir_env.MenhirLib.EngineTypes.stack <- {
7752 MenhirLib.EngineTypes.state = _menhir_s;
7753 MenhirLib.EngineTypes.semv = Obj.repr _v;
7754 MenhirLib.EngineTypes.startp = _startpos;
7755 MenhirLib.EngineTypes.endp = _endpos;
7756 MenhirLib.EngineTypes.next = _menhir_stack;
7757 });
7758 (fun _menhir_env ->
7759 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7760 let {
7761 MenhirLib.EngineTypes.semv = pv;
7762 MenhirLib.EngineTypes.startp = _startpos_pv_;
7763 MenhirLib.EngineTypes.endp = _endpos_pv_;
7764 MenhirLib.EngineTypes.next = {
7765 MenhirLib.EngineTypes.semv = rp2;
7766 MenhirLib.EngineTypes.startp = _startpos_rp2_;
7767 MenhirLib.EngineTypes.endp = _endpos_rp2_;
7768 MenhirLib.EngineTypes.next = {
7769 MenhirLib.EngineTypes.semv = p;
7770 MenhirLib.EngineTypes.startp = _startpos_p_;
7771 MenhirLib.EngineTypes.endp = _endpos_p_;
7772 MenhirLib.EngineTypes.next = {
7773 MenhirLib.EngineTypes.semv = lp2;
7774 MenhirLib.EngineTypes.startp = _startpos_lp2_;
7775 MenhirLib.EngineTypes.endp = _endpos_lp2_;
7776 MenhirLib.EngineTypes.next = {
7777 MenhirLib.EngineTypes.semv = rp1;
7778 MenhirLib.EngineTypes.startp = _startpos_rp1_;
7779 MenhirLib.EngineTypes.endp = _endpos_rp1_;
7780 MenhirLib.EngineTypes.next = {
7781 MenhirLib.EngineTypes.semv = d;
7782 MenhirLib.EngineTypes.startp = _startpos_d_;
7783 MenhirLib.EngineTypes.endp = _endpos_d_;
7784 MenhirLib.EngineTypes.next = {
7785 MenhirLib.EngineTypes.semv = st;
7786 MenhirLib.EngineTypes.startp = _startpos_st_;
7787 MenhirLib.EngineTypes.endp = _endpos_st_;
7788 MenhirLib.EngineTypes.next = {
7789 MenhirLib.EngineTypes.semv = lp1;
7790 MenhirLib.EngineTypes.startp = _startpos_lp1_;
7791 MenhirLib.EngineTypes.endp = _endpos_lp1_;
7792 MenhirLib.EngineTypes.next = {
7793 MenhirLib.EngineTypes.state = _menhir_s;
7794 MenhirLib.EngineTypes.semv = t;
7795 MenhirLib.EngineTypes.startp = _startpos_t_;
7796 MenhirLib.EngineTypes.endp = _endpos_t_;
7797 MenhirLib.EngineTypes.next = _menhir_stack;
7798 };
7799 };
7800 };
7801 };
7802 };
7803 };
7804 };
7805 };
7806 } = _menhir_stack in
7807 let pv : (
7808 # 106 "parser_cocci_menhir.mly"
7809 (Data.clt)
7810 # 7811 "parser_cocci_menhir.ml"
7811 ) = Obj.magic pv in
7812 let rp2 : (
7813 # 76 "parser_cocci_menhir.mly"
7814 (Data.clt)
7815 # 7816 "parser_cocci_menhir.ml"
7816 ) = Obj.magic rp2 in
7817 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
7818 let lp2 : (
7819 # 75 "parser_cocci_menhir.mly"
7820 (Data.clt)
7821 # 7822 "parser_cocci_menhir.ml"
7822 ) = Obj.magic lp2 in
7823 let rp1 : (
7824 # 76 "parser_cocci_menhir.mly"
7825 (Data.clt)
7826 # 7827 "parser_cocci_menhir.ml"
7827 ) = Obj.magic rp1 in
7828 let d : 'tv_d_ident = Obj.magic d in
7829 let st : (
7830 # 98 "parser_cocci_menhir.mly"
7831 (Data.clt)
7832 # 7833 "parser_cocci_menhir.ml"
7833 ) = Obj.magic st in
7834 let lp1 : (
7835 # 75 "parser_cocci_menhir.mly"
7836 (Data.clt)
7837 # 7838 "parser_cocci_menhir.ml"
7838 ) = Obj.magic lp1 in
7839 let t : 'tv_fn_ctype = Obj.magic t in
7840 let _startpos = _startpos_t_ in
7841 let _endpos = _endpos_pv_ in
7842 let _v : 'tv_decl_var = let s =
7843
7844 # 39 "standard.mly"
7845 ( None )
7846 # 7847 "parser_cocci_menhir.ml"
7847
7848 in
7849
7850 # 917 "parser_cocci_menhir.mly"
7851 ( let (id,fn) = d in
7852 let t =
7853 Ast0.wrap
7854 (Ast0.FunctionPointer
7855 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
7856 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
7857 [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
7858 # 7859 "parser_cocci_menhir.ml"
7859 in
7860 _menhir_env.MenhirLib.EngineTypes.stack <- {
7861 MenhirLib.EngineTypes.state = _menhir_s;
7862 MenhirLib.EngineTypes.semv = Obj.repr _v;
7863 MenhirLib.EngineTypes.startp = _startpos;
7864 MenhirLib.EngineTypes.endp = _endpos;
7865 MenhirLib.EngineTypes.next = _menhir_stack;
7866 });
7867 (fun _menhir_env ->
7868 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7869 let {
7870 MenhirLib.EngineTypes.semv = pv;
7871 MenhirLib.EngineTypes.startp = _startpos_pv_;
7872 MenhirLib.EngineTypes.endp = _endpos_pv_;
7873 MenhirLib.EngineTypes.next = {
7874 MenhirLib.EngineTypes.semv = rp2;
7875 MenhirLib.EngineTypes.startp = _startpos_rp2_;
7876 MenhirLib.EngineTypes.endp = _endpos_rp2_;
7877 MenhirLib.EngineTypes.next = {
7878 MenhirLib.EngineTypes.semv = p;
7879 MenhirLib.EngineTypes.startp = _startpos_p_;
7880 MenhirLib.EngineTypes.endp = _endpos_p_;
7881 MenhirLib.EngineTypes.next = {
7882 MenhirLib.EngineTypes.semv = lp2;
7883 MenhirLib.EngineTypes.startp = _startpos_lp2_;
7884 MenhirLib.EngineTypes.endp = _endpos_lp2_;
7885 MenhirLib.EngineTypes.next = {
7886 MenhirLib.EngineTypes.semv = rp1;
7887 MenhirLib.EngineTypes.startp = _startpos_rp1_;
7888 MenhirLib.EngineTypes.endp = _endpos_rp1_;
7889 MenhirLib.EngineTypes.next = {
7890 MenhirLib.EngineTypes.semv = d;
7891 MenhirLib.EngineTypes.startp = _startpos_d_;
7892 MenhirLib.EngineTypes.endp = _endpos_d_;
7893 MenhirLib.EngineTypes.next = {
7894 MenhirLib.EngineTypes.semv = st;
7895 MenhirLib.EngineTypes.startp = _startpos_st_;
7896 MenhirLib.EngineTypes.endp = _endpos_st_;
7897 MenhirLib.EngineTypes.next = {
7898 MenhirLib.EngineTypes.semv = lp1;
7899 MenhirLib.EngineTypes.startp = _startpos_lp1_;
7900 MenhirLib.EngineTypes.endp = _endpos_lp1_;
7901 MenhirLib.EngineTypes.next = {
7902 MenhirLib.EngineTypes.semv = t;
7903 MenhirLib.EngineTypes.startp = _startpos_t_;
7904 MenhirLib.EngineTypes.endp = _endpos_t_;
7905 MenhirLib.EngineTypes.next = {
7906 MenhirLib.EngineTypes.state = _menhir_s;
7907 MenhirLib.EngineTypes.semv = x0;
7908 MenhirLib.EngineTypes.startp = _startpos_x0_;
7909 MenhirLib.EngineTypes.endp = _endpos_x0_;
7910 MenhirLib.EngineTypes.next = _menhir_stack;
7911 };
7912 };
7913 };
7914 };
7915 };
7916 };
7917 };
7918 };
7919 };
7920 } = _menhir_stack in
7921 let pv : (
7922 # 106 "parser_cocci_menhir.mly"
7923 (Data.clt)
7924 # 7925 "parser_cocci_menhir.ml"
7925 ) = Obj.magic pv in
7926 let rp2 : (
7927 # 76 "parser_cocci_menhir.mly"
7928 (Data.clt)
7929 # 7930 "parser_cocci_menhir.ml"
7930 ) = Obj.magic rp2 in
7931 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
7932 let lp2 : (
7933 # 75 "parser_cocci_menhir.mly"
7934 (Data.clt)
7935 # 7936 "parser_cocci_menhir.ml"
7936 ) = Obj.magic lp2 in
7937 let rp1 : (
7938 # 76 "parser_cocci_menhir.mly"
7939 (Data.clt)
7940 # 7941 "parser_cocci_menhir.ml"
7941 ) = Obj.magic rp1 in
7942 let d : 'tv_d_ident = Obj.magic d in
7943 let st : (
7944 # 98 "parser_cocci_menhir.mly"
7945 (Data.clt)
7946 # 7947 "parser_cocci_menhir.ml"
7947 ) = Obj.magic st in
7948 let lp1 : (
7949 # 75 "parser_cocci_menhir.mly"
7950 (Data.clt)
7951 # 7952 "parser_cocci_menhir.ml"
7952 ) = Obj.magic lp1 in
7953 let t : 'tv_fn_ctype = Obj.magic t in
7954 let x0 : 'tv_storage = Obj.magic x0 in
7955 let _startpos = _startpos_x0_ in
7956 let _endpos = _endpos_pv_ in
7957 let _v : 'tv_decl_var = let s =
7958 let x = x0 in
7959
7960 # 41 "standard.mly"
7961 ( Some x )
7962 # 7963 "parser_cocci_menhir.ml"
7963
7964 in
7965
7966 # 917 "parser_cocci_menhir.mly"
7967 ( let (id,fn) = d in
7968 let t =
7969 Ast0.wrap
7970 (Ast0.FunctionPointer
7971 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
7972 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
7973 [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
7974 # 7975 "parser_cocci_menhir.ml"
7975 in
7976 _menhir_env.MenhirLib.EngineTypes.stack <- {
7977 MenhirLib.EngineTypes.state = _menhir_s;
7978 MenhirLib.EngineTypes.semv = Obj.repr _v;
7979 MenhirLib.EngineTypes.startp = _startpos;
7980 MenhirLib.EngineTypes.endp = _endpos;
7981 MenhirLib.EngineTypes.next = _menhir_stack;
7982 });
7983 (fun _menhir_env ->
7984 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7985 let {
7986 MenhirLib.EngineTypes.semv = _5;
7987 MenhirLib.EngineTypes.startp = _startpos__5_;
7988 MenhirLib.EngineTypes.endp = _endpos__5_;
7989 MenhirLib.EngineTypes.next = {
7990 MenhirLib.EngineTypes.semv = _4;
7991 MenhirLib.EngineTypes.startp = _startpos__4_;
7992 MenhirLib.EngineTypes.endp = _endpos__4_;
7993 MenhirLib.EngineTypes.next = {
7994 MenhirLib.EngineTypes.semv = _3;
7995 MenhirLib.EngineTypes.startp = _startpos__3_;
7996 MenhirLib.EngineTypes.endp = _endpos__3_;
7997 MenhirLib.EngineTypes.next = {
7998 MenhirLib.EngineTypes.semv = _2;
7999 MenhirLib.EngineTypes.startp = _startpos__2_;
8000 MenhirLib.EngineTypes.endp = _endpos__2_;
8001 MenhirLib.EngineTypes.next = {
8002 MenhirLib.EngineTypes.state = _menhir_s;
8003 MenhirLib.EngineTypes.semv = _1;
8004 MenhirLib.EngineTypes.startp = _startpos__1_;
8005 MenhirLib.EngineTypes.endp = _endpos__1_;
8006 MenhirLib.EngineTypes.next = _menhir_stack;
8007 };
8008 };
8009 };
8010 };
8011 } = _menhir_stack in
8012 let _5 : (
8013 # 106 "parser_cocci_menhir.mly"
8014 (Data.clt)
8015 # 8016 "parser_cocci_menhir.ml"
8016 ) = Obj.magic _5 in
8017 let _4 : (
8018 # 76 "parser_cocci_menhir.mly"
8019 (Data.clt)
8020 # 8021 "parser_cocci_menhir.ml"
8021 ) = Obj.magic _4 in
8022 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
8023 let _2 : (
8024 # 75 "parser_cocci_menhir.mly"
8025 (Data.clt)
8026 # 8027 "parser_cocci_menhir.ml"
8027 ) = Obj.magic _2 in
8028 let _1 : 'tv_decl_ident = Obj.magic _1 in
8029 let _startpos = _startpos__1_ in
8030 let _endpos = _endpos__5_ in
8031 let _v : 'tv_decl_var =
8032 # 925 "parser_cocci_menhir.mly"
8033 ( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
8034 P.clt2mcode ")" _4,P.clt2mcode ";" _5))] )
8035 # 8036 "parser_cocci_menhir.ml"
8036 in
8037 _menhir_env.MenhirLib.EngineTypes.stack <- {
8038 MenhirLib.EngineTypes.state = _menhir_s;
8039 MenhirLib.EngineTypes.semv = Obj.repr _v;
8040 MenhirLib.EngineTypes.startp = _startpos;
8041 MenhirLib.EngineTypes.endp = _endpos;
8042 MenhirLib.EngineTypes.next = _menhir_stack;
8043 });
8044 (fun _menhir_env ->
8045 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8046 let {
8047 MenhirLib.EngineTypes.semv = pv;
8048 MenhirLib.EngineTypes.startp = _startpos_pv_;
8049 MenhirLib.EngineTypes.endp = _endpos_pv_;
8050 MenhirLib.EngineTypes.next = {
8051 MenhirLib.EngineTypes.semv = e;
8052 MenhirLib.EngineTypes.startp = _startpos_e_;
8053 MenhirLib.EngineTypes.endp = _endpos_e_;
8054 MenhirLib.EngineTypes.next = {
8055 MenhirLib.EngineTypes.semv = q;
8056 MenhirLib.EngineTypes.startp = _startpos_q_;
8057 MenhirLib.EngineTypes.endp = _endpos_q_;
8058 MenhirLib.EngineTypes.next = {
8059 MenhirLib.EngineTypes.semv = rp2;
8060 MenhirLib.EngineTypes.startp = _startpos_rp2_;
8061 MenhirLib.EngineTypes.endp = _endpos_rp2_;
8062 MenhirLib.EngineTypes.next = {
8063 MenhirLib.EngineTypes.semv = p;
8064 MenhirLib.EngineTypes.startp = _startpos_p_;
8065 MenhirLib.EngineTypes.endp = _endpos_p_;
8066 MenhirLib.EngineTypes.next = {
8067 MenhirLib.EngineTypes.semv = lp2;
8068 MenhirLib.EngineTypes.startp = _startpos_lp2_;
8069 MenhirLib.EngineTypes.endp = _endpos_lp2_;
8070 MenhirLib.EngineTypes.next = {
8071 MenhirLib.EngineTypes.semv = rp1;
8072 MenhirLib.EngineTypes.startp = _startpos_rp1_;
8073 MenhirLib.EngineTypes.endp = _endpos_rp1_;
8074 MenhirLib.EngineTypes.next = {
8075 MenhirLib.EngineTypes.semv = d;
8076 MenhirLib.EngineTypes.startp = _startpos_d_;
8077 MenhirLib.EngineTypes.endp = _endpos_d_;
8078 MenhirLib.EngineTypes.next = {
8079 MenhirLib.EngineTypes.semv = st;
8080 MenhirLib.EngineTypes.startp = _startpos_st_;
8081 MenhirLib.EngineTypes.endp = _endpos_st_;
8082 MenhirLib.EngineTypes.next = {
8083 MenhirLib.EngineTypes.semv = lp1;
8084 MenhirLib.EngineTypes.startp = _startpos_lp1_;
8085 MenhirLib.EngineTypes.endp = _endpos_lp1_;
8086 MenhirLib.EngineTypes.next = {
8087 MenhirLib.EngineTypes.state = _menhir_s;
8088 MenhirLib.EngineTypes.semv = t;
8089 MenhirLib.EngineTypes.startp = _startpos_t_;
8090 MenhirLib.EngineTypes.endp = _endpos_t_;
8091 MenhirLib.EngineTypes.next = _menhir_stack;
8092 };
8093 };
8094 };
8095 };
8096 };
8097 };
8098 };
8099 };
8100 };
8101 };
8102 } = _menhir_stack in
8103 let pv : (
8104 # 106 "parser_cocci_menhir.mly"
8105 (Data.clt)
8106 # 8107 "parser_cocci_menhir.ml"
8107 ) = Obj.magic pv in
8108 let e : 'tv_initialize = Obj.magic e in
8109 let q : (
8110 # 106 "parser_cocci_menhir.mly"
8111 (Data.clt)
8112 # 8113 "parser_cocci_menhir.ml"
8113 ) = Obj.magic q in
8114 let rp2 : (
8115 # 76 "parser_cocci_menhir.mly"
8116 (Data.clt)
8117 # 8118 "parser_cocci_menhir.ml"
8118 ) = Obj.magic rp2 in
8119 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
8120 let lp2 : (
8121 # 75 "parser_cocci_menhir.mly"
8122 (Data.clt)
8123 # 8124 "parser_cocci_menhir.ml"
8124 ) = Obj.magic lp2 in
8125 let rp1 : (
8126 # 76 "parser_cocci_menhir.mly"
8127 (Data.clt)
8128 # 8129 "parser_cocci_menhir.ml"
8129 ) = Obj.magic rp1 in
8130 let d : 'tv_d_ident = Obj.magic d in
8131 let st : (
8132 # 98 "parser_cocci_menhir.mly"
8133 (Data.clt)
8134 # 8135 "parser_cocci_menhir.ml"
8135 ) = Obj.magic st in
8136 let lp1 : (
8137 # 75 "parser_cocci_menhir.mly"
8138 (Data.clt)
8139 # 8140 "parser_cocci_menhir.ml"
8140 ) = Obj.magic lp1 in
8141 let t : 'tv_fn_ctype = Obj.magic t in
8142 let _startpos = _startpos_t_ in
8143 let _endpos = _endpos_pv_ in
8144 let _v : 'tv_decl_var = let s =
8145
8146 # 39 "standard.mly"
8147 ( None )
8148 # 8149 "parser_cocci_menhir.ml"
8149
8150 in
8151
8152 # 931 "parser_cocci_menhir.mly"
8153 ( let (id,fn) = d in
8154 let t =
8155 Ast0.wrap
8156 (Ast0.FunctionPointer
8157 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
8158 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
8159 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
8160 # 8161 "parser_cocci_menhir.ml"
8161 in
8162 _menhir_env.MenhirLib.EngineTypes.stack <- {
8163 MenhirLib.EngineTypes.state = _menhir_s;
8164 MenhirLib.EngineTypes.semv = Obj.repr _v;
8165 MenhirLib.EngineTypes.startp = _startpos;
8166 MenhirLib.EngineTypes.endp = _endpos;
8167 MenhirLib.EngineTypes.next = _menhir_stack;
8168 });
8169 (fun _menhir_env ->
8170 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8171 let {
8172 MenhirLib.EngineTypes.semv = pv;
8173 MenhirLib.EngineTypes.startp = _startpos_pv_;
8174 MenhirLib.EngineTypes.endp = _endpos_pv_;
8175 MenhirLib.EngineTypes.next = {
8176 MenhirLib.EngineTypes.semv = e;
8177 MenhirLib.EngineTypes.startp = _startpos_e_;
8178 MenhirLib.EngineTypes.endp = _endpos_e_;
8179 MenhirLib.EngineTypes.next = {
8180 MenhirLib.EngineTypes.semv = q;
8181 MenhirLib.EngineTypes.startp = _startpos_q_;
8182 MenhirLib.EngineTypes.endp = _endpos_q_;
8183 MenhirLib.EngineTypes.next = {
8184 MenhirLib.EngineTypes.semv = rp2;
8185 MenhirLib.EngineTypes.startp = _startpos_rp2_;
8186 MenhirLib.EngineTypes.endp = _endpos_rp2_;
8187 MenhirLib.EngineTypes.next = {
8188 MenhirLib.EngineTypes.semv = p;
8189 MenhirLib.EngineTypes.startp = _startpos_p_;
8190 MenhirLib.EngineTypes.endp = _endpos_p_;
8191 MenhirLib.EngineTypes.next = {
8192 MenhirLib.EngineTypes.semv = lp2;
8193 MenhirLib.EngineTypes.startp = _startpos_lp2_;
8194 MenhirLib.EngineTypes.endp = _endpos_lp2_;
8195 MenhirLib.EngineTypes.next = {
8196 MenhirLib.EngineTypes.semv = rp1;
8197 MenhirLib.EngineTypes.startp = _startpos_rp1_;
8198 MenhirLib.EngineTypes.endp = _endpos_rp1_;
8199 MenhirLib.EngineTypes.next = {
8200 MenhirLib.EngineTypes.semv = d;
8201 MenhirLib.EngineTypes.startp = _startpos_d_;
8202 MenhirLib.EngineTypes.endp = _endpos_d_;
8203 MenhirLib.EngineTypes.next = {
8204 MenhirLib.EngineTypes.semv = st;
8205 MenhirLib.EngineTypes.startp = _startpos_st_;
8206 MenhirLib.EngineTypes.endp = _endpos_st_;
8207 MenhirLib.EngineTypes.next = {
8208 MenhirLib.EngineTypes.semv = lp1;
8209 MenhirLib.EngineTypes.startp = _startpos_lp1_;
8210 MenhirLib.EngineTypes.endp = _endpos_lp1_;
8211 MenhirLib.EngineTypes.next = {
8212 MenhirLib.EngineTypes.semv = t;
8213 MenhirLib.EngineTypes.startp = _startpos_t_;
8214 MenhirLib.EngineTypes.endp = _endpos_t_;
8215 MenhirLib.EngineTypes.next = {
8216 MenhirLib.EngineTypes.state = _menhir_s;
8217 MenhirLib.EngineTypes.semv = x0;
8218 MenhirLib.EngineTypes.startp = _startpos_x0_;
8219 MenhirLib.EngineTypes.endp = _endpos_x0_;
8220 MenhirLib.EngineTypes.next = _menhir_stack;
8221 };
8222 };
8223 };
8224 };
8225 };
8226 };
8227 };
8228 };
8229 };
8230 };
8231 };
8232 } = _menhir_stack in
8233 let pv : (
8234 # 106 "parser_cocci_menhir.mly"
8235 (Data.clt)
8236 # 8237 "parser_cocci_menhir.ml"
8237 ) = Obj.magic pv in
8238 let e : 'tv_initialize = Obj.magic e in
8239 let q : (
8240 # 106 "parser_cocci_menhir.mly"
8241 (Data.clt)
8242 # 8243 "parser_cocci_menhir.ml"
8243 ) = Obj.magic q in
8244 let rp2 : (
8245 # 76 "parser_cocci_menhir.mly"
8246 (Data.clt)
8247 # 8248 "parser_cocci_menhir.ml"
8248 ) = Obj.magic rp2 in
8249 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
8250 let lp2 : (
8251 # 75 "parser_cocci_menhir.mly"
8252 (Data.clt)
8253 # 8254 "parser_cocci_menhir.ml"
8254 ) = Obj.magic lp2 in
8255 let rp1 : (
8256 # 76 "parser_cocci_menhir.mly"
8257 (Data.clt)
8258 # 8259 "parser_cocci_menhir.ml"
8259 ) = Obj.magic rp1 in
8260 let d : 'tv_d_ident = Obj.magic d in
8261 let st : (
8262 # 98 "parser_cocci_menhir.mly"
8263 (Data.clt)
8264 # 8265 "parser_cocci_menhir.ml"
8265 ) = Obj.magic st in
8266 let lp1 : (
8267 # 75 "parser_cocci_menhir.mly"
8268 (Data.clt)
8269 # 8270 "parser_cocci_menhir.ml"
8270 ) = Obj.magic lp1 in
8271 let t : 'tv_fn_ctype = Obj.magic t in
8272 let x0 : 'tv_storage = Obj.magic x0 in
8273 let _startpos = _startpos_x0_ in
8274 let _endpos = _endpos_pv_ in
8275 let _v : 'tv_decl_var = let s =
8276 let x = x0 in
8277
8278 # 41 "standard.mly"
8279 ( Some x )
8280 # 8281 "parser_cocci_menhir.ml"
8281
8282 in
8283
8284 # 931 "parser_cocci_menhir.mly"
8285 ( let (id,fn) = d in
8286 let t =
8287 Ast0.wrap
8288 (Ast0.FunctionPointer
8289 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
8290 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
8291 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
8292 # 8293 "parser_cocci_menhir.ml"
8293 in
8294 _menhir_env.MenhirLib.EngineTypes.stack <- {
8295 MenhirLib.EngineTypes.state = _menhir_s;
8296 MenhirLib.EngineTypes.semv = Obj.repr _v;
8297 MenhirLib.EngineTypes.startp = _startpos;
8298 MenhirLib.EngineTypes.endp = _endpos;
8299 MenhirLib.EngineTypes.next = _menhir_stack;
8300 });
8301 (fun _menhir_env ->
8302 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8303 let {
8304 MenhirLib.EngineTypes.semv = pv;
8305 MenhirLib.EngineTypes.startp = _startpos_pv_;
8306 MenhirLib.EngineTypes.endp = _endpos_pv_;
8307 MenhirLib.EngineTypes.next = {
8308 MenhirLib.EngineTypes.semv = id;
8309 MenhirLib.EngineTypes.startp = _startpos_id_;
8310 MenhirLib.EngineTypes.endp = _endpos_id_;
8311 MenhirLib.EngineTypes.next = {
8312 MenhirLib.EngineTypes.semv = t;
8313 MenhirLib.EngineTypes.startp = _startpos_t_;
8314 MenhirLib.EngineTypes.endp = _endpos_t_;
8315 MenhirLib.EngineTypes.next = {
8316 MenhirLib.EngineTypes.state = _menhir_s;
8317 MenhirLib.EngineTypes.semv = s;
8318 MenhirLib.EngineTypes.startp = _startpos_s_;
8319 MenhirLib.EngineTypes.endp = _endpos_s_;
8320 MenhirLib.EngineTypes.next = _menhir_stack;
8321 };
8322 };
8323 };
8324 } = _menhir_stack in
8325 let pv : (
8326 # 106 "parser_cocci_menhir.mly"
8327 (Data.clt)
8328 # 8329 "parser_cocci_menhir.ml"
8329 ) = Obj.magic pv in
8330 let id : 'tv_typedef_ident = Obj.magic id in
8331 let t : 'tv_ctype = Obj.magic t in
8332 let s : (
8333 # 53 "parser_cocci_menhir.mly"
8334 (Data.clt)
8335 # 8336 "parser_cocci_menhir.ml"
8336 ) = Obj.magic s in
8337 let _startpos = _startpos_s_ in
8338 let _endpos = _endpos_pv_ in
8339 let _v : 'tv_decl_var =
8340 # 939 "parser_cocci_menhir.mly"
8341 ( let s = P.clt2mcode "typedef" s in
8342 [Ast0.wrap(Ast0.Typedef(s,t,id,P.clt2mcode ";" pv))] )
8343 # 8344 "parser_cocci_menhir.ml"
8344 in
8345 _menhir_env.MenhirLib.EngineTypes.stack <- {
8346 MenhirLib.EngineTypes.state = _menhir_s;
8347 MenhirLib.EngineTypes.semv = Obj.repr _v;
8348 MenhirLib.EngineTypes.startp = _startpos;
8349 MenhirLib.EngineTypes.endp = _endpos;
8350 MenhirLib.EngineTypes.next = _menhir_stack;
8351 });
8352 (fun _menhir_env ->
8353 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8354 let {
8355 MenhirLib.EngineTypes.state = _menhir_s;
8356 MenhirLib.EngineTypes.semv = _1;
8357 MenhirLib.EngineTypes.startp = _startpos__1_;
8358 MenhirLib.EngineTypes.endp = _endpos__1_;
8359 MenhirLib.EngineTypes.next = _menhir_stack;
8360 } = _menhir_stack in
8361 let _1 : 'tv_define_param_list_start = Obj.magic _1 in
8362 let _startpos = _startpos__1_ in
8363 let _endpos = _endpos__1_ in
8364 let _v : 'tv_define_param_list =
8365 # 660 "parser_cocci_menhir.mly"
8366 (let circle x =
8367 match Ast0.unwrap x with Ast0.DPcircles(_) -> true | _ -> false in
8368 if List.exists circle _1
8369 then Ast0.wrap(Ast0.CIRCLES(_1))
8370 else Ast0.wrap(Ast0.DOTS(_1)) )
8371 # 8372 "parser_cocci_menhir.ml"
8372 in
8373 _menhir_env.MenhirLib.EngineTypes.stack <- {
8374 MenhirLib.EngineTypes.state = _menhir_s;
8375 MenhirLib.EngineTypes.semv = Obj.repr _v;
8376 MenhirLib.EngineTypes.startp = _startpos;
8377 MenhirLib.EngineTypes.endp = _endpos;
8378 MenhirLib.EngineTypes.next = _menhir_stack;
8379 });
8380 (fun _menhir_env ->
8381 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8382 let {
8383 MenhirLib.EngineTypes.state = _menhir_s;
8384 MenhirLib.EngineTypes.semv = _1;
8385 MenhirLib.EngineTypes.startp = _startpos__1_;
8386 MenhirLib.EngineTypes.endp = _endpos__1_;
8387 MenhirLib.EngineTypes.next = _menhir_stack;
8388 } = _menhir_stack in
8389 let _1 : 'tv_define_param_list = Obj.magic _1 in
8390 let _startpos = _startpos__1_ in
8391 let _endpos = _endpos__1_ in
8392 let _v : 'tv_define_param_list_option =
8393 # 684 "parser_cocci_menhir.mly"
8394 ( _1 )
8395 # 8396 "parser_cocci_menhir.ml"
8396 in
8397 _menhir_env.MenhirLib.EngineTypes.stack <- {
8398 MenhirLib.EngineTypes.state = _menhir_s;
8399 MenhirLib.EngineTypes.semv = Obj.repr _v;
8400 MenhirLib.EngineTypes.startp = _startpos;
8401 MenhirLib.EngineTypes.endp = _endpos;
8402 MenhirLib.EngineTypes.next = _menhir_stack;
8403 });
8404 (fun _menhir_env ->
8405 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8406 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
8407 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
8408 let _endpos = _startpos in
8409 let _v : 'tv_define_param_list_option =
8410 # 685 "parser_cocci_menhir.mly"
8411 ( Ast0.wrap(Ast0.DOTS([])) )
8412 # 8413 "parser_cocci_menhir.ml"
8413 in
8414 _menhir_env.MenhirLib.EngineTypes.stack <- {
8415 MenhirLib.EngineTypes.state = _menhir_s;
8416 MenhirLib.EngineTypes.semv = Obj.repr _v;
8417 MenhirLib.EngineTypes.startp = _startpos;
8418 MenhirLib.EngineTypes.endp = _endpos;
8419 MenhirLib.EngineTypes.next = _menhir_stack;
8420 });
8421 (fun _menhir_env ->
8422 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8423 let {
8424 MenhirLib.EngineTypes.state = _menhir_s;
8425 MenhirLib.EngineTypes.semv = _1;
8426 MenhirLib.EngineTypes.startp = _startpos__1_;
8427 MenhirLib.EngineTypes.endp = _endpos__1_;
8428 MenhirLib.EngineTypes.next = _menhir_stack;
8429 } = _menhir_stack in
8430 let _1 : 'tv_ident = Obj.magic _1 in
8431 let _startpos = _startpos__1_ in
8432 let _endpos = _endpos__1_ in
8433 let _v : 'tv_define_param_list_start =
8434 # 667 "parser_cocci_menhir.mly"
8435 ( [Ast0.wrap(Ast0.DParam _1)] )
8436 # 8437 "parser_cocci_menhir.ml"
8437 in
8438 _menhir_env.MenhirLib.EngineTypes.stack <- {
8439 MenhirLib.EngineTypes.state = _menhir_s;
8440 MenhirLib.EngineTypes.semv = Obj.repr _v;
8441 MenhirLib.EngineTypes.startp = _startpos;
8442 MenhirLib.EngineTypes.endp = _endpos;
8443 MenhirLib.EngineTypes.next = _menhir_stack;
8444 });
8445 (fun _menhir_env ->
8446 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8447 let {
8448 MenhirLib.EngineTypes.semv = _3;
8449 MenhirLib.EngineTypes.startp = _startpos__3_;
8450 MenhirLib.EngineTypes.endp = _endpos__3_;
8451 MenhirLib.EngineTypes.next = {
8452 MenhirLib.EngineTypes.semv = _2;
8453 MenhirLib.EngineTypes.startp = _startpos__2_;
8454 MenhirLib.EngineTypes.endp = _endpos__2_;
8455 MenhirLib.EngineTypes.next = {
8456 MenhirLib.EngineTypes.state = _menhir_s;
8457 MenhirLib.EngineTypes.semv = _1;
8458 MenhirLib.EngineTypes.startp = _startpos__1_;
8459 MenhirLib.EngineTypes.endp = _endpos__1_;
8460 MenhirLib.EngineTypes.next = _menhir_stack;
8461 };
8462 };
8463 } = _menhir_stack in
8464 let _3 : 'tv_define_param_list_start = Obj.magic _3 in
8465 let _2 : (
8466 # 106 "parser_cocci_menhir.mly"
8467 (Data.clt)
8468 # 8469 "parser_cocci_menhir.ml"
8469 ) = Obj.magic _2 in
8470 let _1 : 'tv_ident = Obj.magic _1 in
8471 let _startpos = _startpos__1_ in
8472 let _endpos = _endpos__3_ in
8473 let _v : 'tv_define_param_list_start =
8474 # 669 "parser_cocci_menhir.mly"
8475 ( Ast0.wrap(Ast0.DParam _1)::
8476 Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _2))::_3 )
8477 # 8478 "parser_cocci_menhir.ml"
8478 in
8479 _menhir_env.MenhirLib.EngineTypes.stack <- {
8480 MenhirLib.EngineTypes.state = _menhir_s;
8481 MenhirLib.EngineTypes.semv = Obj.repr _v;
8482 MenhirLib.EngineTypes.startp = _startpos;
8483 MenhirLib.EngineTypes.endp = _endpos;
8484 MenhirLib.EngineTypes.next = _menhir_stack;
8485 });
8486 (fun _menhir_env ->
8487 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8488 let {
8489 MenhirLib.EngineTypes.semv = r;
8490 MenhirLib.EngineTypes.startp = _startpos_r_;
8491 MenhirLib.EngineTypes.endp = _endpos_r_;
8492 MenhirLib.EngineTypes.next = {
8493 MenhirLib.EngineTypes.state = _menhir_s;
8494 MenhirLib.EngineTypes.semv = d;
8495 MenhirLib.EngineTypes.startp = _startpos_d_;
8496 MenhirLib.EngineTypes.endp = _endpos_d_;
8497 MenhirLib.EngineTypes.next = _menhir_stack;
8498 };
8499 } = _menhir_stack in
8500 let r : 'tv_list_dp_comma_args_TEllipsis__ = Obj.magic r in
8501 let d : (
8502 # 72 "parser_cocci_menhir.mly"
8503 (Data.clt)
8504 # 8505 "parser_cocci_menhir.ml"
8505 ) = Obj.magic d in
8506 let _startpos = _startpos_d_ in
8507 let _endpos = _endpos_r_ in
8508 let _v : 'tv_define_param_list_start =
8509 # 672 "parser_cocci_menhir.mly"
8510 ( (P.mkdpdots "..." d)::
8511 (List.concat (List.map (function x -> x (P.mkdpdots "...")) r)) )
8512 # 8513 "parser_cocci_menhir.ml"
8513 in
8514 _menhir_env.MenhirLib.EngineTypes.stack <- {
8515 MenhirLib.EngineTypes.state = _menhir_s;
8516 MenhirLib.EngineTypes.semv = Obj.repr _v;
8517 MenhirLib.EngineTypes.startp = _startpos;
8518 MenhirLib.EngineTypes.endp = _endpos;
8519 MenhirLib.EngineTypes.next = _menhir_stack;
8520 });
8521 (fun _menhir_env ->
8522 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8523 let {
8524 MenhirLib.EngineTypes.state = _menhir_s;
8525 MenhirLib.EngineTypes.semv = _1;
8526 MenhirLib.EngineTypes.startp = _startpos__1_;
8527 MenhirLib.EngineTypes.endp = _endpos__1_;
8528 MenhirLib.EngineTypes.next = _menhir_stack;
8529 } = _menhir_stack in
8530 let _1 : (
8531 # 80 "parser_cocci_menhir.mly"
8532 (Data.clt * token)
8533 # 8534 "parser_cocci_menhir.ml"
8534 ) = Obj.magic _1 in
8535 let _startpos = _startpos__1_ in
8536 let _endpos = _endpos__1_ in
8537 let _v : 'tv_defineop =
8538 # 621 "parser_cocci_menhir.mly"
8539 ( let (clt,ident) = _1 in
8540 function body ->
8541 Ast0.wrap
8542 (Ast0.Define
8543 (P.clt2mcode "#define" clt,
8544 (match ident with
8545 TMetaId((nm,constraints,pure,clt)) ->
8546 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
8547 | TIdent(nm_pure) ->
8548 Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
8549 | _ ->
8550 raise
8551 (Semantic_cocci.Semantic
8552 "unexpected name for a #define")),
8553 Ast0.wrap Ast0.NoParams,
8554 body)) )
8555 # 8556 "parser_cocci_menhir.ml"
8556 in
8557 _menhir_env.MenhirLib.EngineTypes.stack <- {
8558 MenhirLib.EngineTypes.state = _menhir_s;
8559 MenhirLib.EngineTypes.semv = Obj.repr _v;
8560 MenhirLib.EngineTypes.startp = _startpos;
8561 MenhirLib.EngineTypes.endp = _endpos;
8562 MenhirLib.EngineTypes.next = _menhir_stack;
8563 });
8564 (fun _menhir_env ->
8565 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8566 let {
8567 MenhirLib.EngineTypes.semv = _3;
8568 MenhirLib.EngineTypes.startp = _startpos__3_;
8569 MenhirLib.EngineTypes.endp = _endpos__3_;
8570 MenhirLib.EngineTypes.next = {
8571 MenhirLib.EngineTypes.semv = _2;
8572 MenhirLib.EngineTypes.startp = _startpos__2_;
8573 MenhirLib.EngineTypes.endp = _endpos__2_;
8574 MenhirLib.EngineTypes.next = {
8575 MenhirLib.EngineTypes.state = _menhir_s;
8576 MenhirLib.EngineTypes.semv = _1;
8577 MenhirLib.EngineTypes.startp = _startpos__1_;
8578 MenhirLib.EngineTypes.endp = _endpos__1_;
8579 MenhirLib.EngineTypes.next = _menhir_stack;
8580 };
8581 };
8582 } = _menhir_stack in
8583 let _3 : (
8584 # 76 "parser_cocci_menhir.mly"
8585 (Data.clt)
8586 # 8587 "parser_cocci_menhir.ml"
8587 ) = Obj.magic _3 in
8588 let _2 : 'tv_define_param_list_option = Obj.magic _2 in
8589 let _1 : (
8590 # 81 "parser_cocci_menhir.mly"
8591 (Data.clt * token * int)
8592 # 8593 "parser_cocci_menhir.ml"
8593 ) = Obj.magic _1 in
8594 let _startpos = _startpos__1_ in
8595 let _endpos = _endpos__3_ in
8596 let _v : 'tv_defineop =
8597 # 638 "parser_cocci_menhir.mly"
8598 ( let (clt,ident,parenoff) = _1 in
8599 let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
8600 let lp =
8601 P.clt2mcode "(" (arity,line,lline,parenoff,0,[],[],Ast0.NoMetaPos) in
8602 function body ->
8603 Ast0.wrap
8604 (Ast0.Define
8605 (P.clt2mcode "#define" clt,
8606 (match ident with
8607 TMetaId((nm,constraints,pure,clt)) ->
8608 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
8609 | TIdent(nm_pure) ->
8610 Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
8611 | _ ->
8612 raise
8613 (Semantic_cocci.Semantic
8614 "unexpected name for a #define")),
8615 Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" _3)),body)) )
8616 # 8617 "parser_cocci_menhir.ml"
8617 in
8618 _menhir_env.MenhirLib.EngineTypes.stack <- {
8619 MenhirLib.EngineTypes.state = _menhir_s;
8620 MenhirLib.EngineTypes.semv = Obj.repr _v;
8621 MenhirLib.EngineTypes.startp = _startpos;
8622 MenhirLib.EngineTypes.endp = _endpos;
8623 MenhirLib.EngineTypes.next = _menhir_stack;
8624 });
8625 (fun _menhir_env ->
8626 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8627 let {
8628 MenhirLib.EngineTypes.state = _menhir_s;
8629 MenhirLib.EngineTypes.semv = _1;
8630 MenhirLib.EngineTypes.startp = _startpos__1_;
8631 MenhirLib.EngineTypes.endp = _endpos__1_;
8632 MenhirLib.EngineTypes.next = _menhir_stack;
8633 } = _menhir_stack in
8634 let _1 : 'tv_pnrule = Obj.magic _1 in
8635 let _startpos = _startpos__1_ in
8636 let _endpos = _endpos__1_ in
8637 let _v : 'tv_dep =
8638 # 215 "parser_cocci_menhir.mly"
8639 ( _1 )
8640 # 8641 "parser_cocci_menhir.ml"
8641 in
8642 _menhir_env.MenhirLib.EngineTypes.stack <- {
8643 MenhirLib.EngineTypes.state = _menhir_s;
8644 MenhirLib.EngineTypes.semv = Obj.repr _v;
8645 MenhirLib.EngineTypes.startp = _startpos;
8646 MenhirLib.EngineTypes.endp = _endpos;
8647 MenhirLib.EngineTypes.next = _menhir_stack;
8648 });
8649 (fun _menhir_env ->
8650 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8651 let {
8652 MenhirLib.EngineTypes.semv = _3;
8653 MenhirLib.EngineTypes.startp = _startpos__3_;
8654 MenhirLib.EngineTypes.endp = _endpos__3_;
8655 MenhirLib.EngineTypes.next = {
8656 MenhirLib.EngineTypes.startp = _startpos__2_;
8657 MenhirLib.EngineTypes.endp = _endpos__2_;
8658 MenhirLib.EngineTypes.next = {
8659 MenhirLib.EngineTypes.state = _menhir_s;
8660 MenhirLib.EngineTypes.semv = _1;
8661 MenhirLib.EngineTypes.startp = _startpos__1_;
8662 MenhirLib.EngineTypes.endp = _endpos__1_;
8663 MenhirLib.EngineTypes.next = _menhir_stack;
8664 };
8665 };
8666 } = _menhir_stack in
8667 let _3 : 'tv_dep = Obj.magic _3 in
8668 let _1 : 'tv_dep = Obj.magic _1 in
8669 let _startpos = _startpos__1_ in
8670 let _endpos = _endpos__3_ in
8671 let _v : 'tv_dep =
8672 # 216 "parser_cocci_menhir.mly"
8673 ( Ast.AndDep(_1, _3) )
8674 # 8675 "parser_cocci_menhir.ml"
8675 in
8676 _menhir_env.MenhirLib.EngineTypes.stack <- {
8677 MenhirLib.EngineTypes.state = _menhir_s;
8678 MenhirLib.EngineTypes.semv = Obj.repr _v;
8679 MenhirLib.EngineTypes.startp = _startpos;
8680 MenhirLib.EngineTypes.endp = _endpos;
8681 MenhirLib.EngineTypes.next = _menhir_stack;
8682 });
8683 (fun _menhir_env ->
8684 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8685 let {
8686 MenhirLib.EngineTypes.semv = _3;
8687 MenhirLib.EngineTypes.startp = _startpos__3_;
8688 MenhirLib.EngineTypes.endp = _endpos__3_;
8689 MenhirLib.EngineTypes.next = {
8690 MenhirLib.EngineTypes.startp = _startpos__2_;
8691 MenhirLib.EngineTypes.endp = _endpos__2_;
8692 MenhirLib.EngineTypes.next = {
8693 MenhirLib.EngineTypes.state = _menhir_s;
8694 MenhirLib.EngineTypes.semv = _1;
8695 MenhirLib.EngineTypes.startp = _startpos__1_;
8696 MenhirLib.EngineTypes.endp = _endpos__1_;
8697 MenhirLib.EngineTypes.next = _menhir_stack;
8698 };
8699 };
8700 } = _menhir_stack in
8701 let _3 : 'tv_dep = Obj.magic _3 in
8702 let _1 : 'tv_dep = Obj.magic _1 in
8703 let _startpos = _startpos__1_ in
8704 let _endpos = _endpos__3_ in
8705 let _v : 'tv_dep =
8706 # 217 "parser_cocci_menhir.mly"
8707 ( Ast.OrDep (_1, _3) )
8708 # 8709 "parser_cocci_menhir.ml"
8709 in
8710 _menhir_env.MenhirLib.EngineTypes.stack <- {
8711 MenhirLib.EngineTypes.state = _menhir_s;
8712 MenhirLib.EngineTypes.semv = Obj.repr _v;
8713 MenhirLib.EngineTypes.startp = _startpos;
8714 MenhirLib.EngineTypes.endp = _endpos;
8715 MenhirLib.EngineTypes.next = _menhir_stack;
8716 });
8717 (fun _menhir_env ->
8718 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8719 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
8720 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
8721 let _endpos = _startpos in
8722 let _v : 'tv_depends =
8723 # 211 "parser_cocci_menhir.mly"
8724 ( Ast.NoDep )
8725 # 8726 "parser_cocci_menhir.ml"
8726 in
8727 _menhir_env.MenhirLib.EngineTypes.stack <- {
8728 MenhirLib.EngineTypes.state = _menhir_s;
8729 MenhirLib.EngineTypes.semv = Obj.repr _v;
8730 MenhirLib.EngineTypes.startp = _startpos;
8731 MenhirLib.EngineTypes.endp = _endpos;
8732 MenhirLib.EngineTypes.next = _menhir_stack;
8733 });
8734 (fun _menhir_env ->
8735 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8736 let {
8737 MenhirLib.EngineTypes.semv = parents;
8738 MenhirLib.EngineTypes.startp = _startpos_parents_;
8739 MenhirLib.EngineTypes.endp = _endpos_parents_;
8740 MenhirLib.EngineTypes.next = {
8741 MenhirLib.EngineTypes.startp = _startpos__2_;
8742 MenhirLib.EngineTypes.endp = _endpos__2_;
8743 MenhirLib.EngineTypes.next = {
8744 MenhirLib.EngineTypes.state = _menhir_s;
8745 MenhirLib.EngineTypes.startp = _startpos__1_;
8746 MenhirLib.EngineTypes.endp = _endpos__1_;
8747 MenhirLib.EngineTypes.next = _menhir_stack;
8748 };
8749 };
8750 } = _menhir_stack in
8751 let parents : 'tv_dep = Obj.magic parents in
8752 let _startpos = _startpos__1_ in
8753 let _endpos = _endpos_parents_ in
8754 let _v : 'tv_depends =
8755 # 212 "parser_cocci_menhir.mly"
8756 ( parents )
8757 # 8758 "parser_cocci_menhir.ml"
8758 in
8759 _menhir_env.MenhirLib.EngineTypes.stack <- {
8760 MenhirLib.EngineTypes.state = _menhir_s;
8761 MenhirLib.EngineTypes.semv = Obj.repr _v;
8762 MenhirLib.EngineTypes.startp = _startpos;
8763 MenhirLib.EngineTypes.endp = _endpos;
8764 MenhirLib.EngineTypes.next = _menhir_stack;
8765 });
8766 (fun _menhir_env ->
8767 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8768 let {
8769 MenhirLib.EngineTypes.state = _menhir_s;
8770 MenhirLib.EngineTypes.semv = _1;
8771 MenhirLib.EngineTypes.startp = _startpos__1_;
8772 MenhirLib.EngineTypes.endp = _endpos__1_;
8773 MenhirLib.EngineTypes.next = _menhir_stack;
8774 } = _menhir_stack in
8775 let _1 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
8776 let _startpos = _startpos__1_ in
8777 let _endpos = _endpos__1_ in
8778 let _v : 'tv_dexpr =
8779 # 1134 "parser_cocci_menhir.mly"
8780 ( _1 )
8781 # 8782 "parser_cocci_menhir.ml"
8782 in
8783 _menhir_env.MenhirLib.EngineTypes.stack <- {
8784 MenhirLib.EngineTypes.state = _menhir_s;
8785 MenhirLib.EngineTypes.semv = Obj.repr _v;
8786 MenhirLib.EngineTypes.startp = _startpos;
8787 MenhirLib.EngineTypes.endp = _endpos;
8788 MenhirLib.EngineTypes.next = _menhir_stack;
8789 });
8790 (fun _menhir_env ->
8791 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8792 let {
8793 MenhirLib.EngineTypes.semv = _2;
8794 MenhirLib.EngineTypes.startp = _startpos__2_;
8795 MenhirLib.EngineTypes.endp = _endpos__2_;
8796 MenhirLib.EngineTypes.next = {
8797 MenhirLib.EngineTypes.state = _menhir_s;
8798 MenhirLib.EngineTypes.startp = _startpos__1_;
8799 MenhirLib.EngineTypes.endp = _endpos__1_;
8800 MenhirLib.EngineTypes.next = _menhir_stack;
8801 };
8802 } = _menhir_stack in
8803 let _2 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _2 in
8804 let _startpos = _startpos__1_ in
8805 let _endpos = _endpos__2_ in
8806 let _v : 'tv_disable =
8807 # 230 "parser_cocci_menhir.mly"
8808 ( List.map P.id2name _2 )
8809 # 8810 "parser_cocci_menhir.ml"
8810 in
8811 _menhir_env.MenhirLib.EngineTypes.stack <- {
8812 MenhirLib.EngineTypes.state = _menhir_s;
8813 MenhirLib.EngineTypes.semv = Obj.repr _v;
8814 MenhirLib.EngineTypes.startp = _startpos;
8815 MenhirLib.EngineTypes.endp = _endpos;
8816 MenhirLib.EngineTypes.next = _menhir_stack;
8817 });
8818 (fun _menhir_env ->
8819 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8820 let {
8821 MenhirLib.EngineTypes.state = _menhir_s;
8822 MenhirLib.EngineTypes.semv = _1;
8823 MenhirLib.EngineTypes.startp = _startpos__1_;
8824 MenhirLib.EngineTypes.endp = _endpos__1_;
8825 MenhirLib.EngineTypes.next = _menhir_stack;
8826 } = _menhir_stack in
8827 let _1 : (
8828 # 72 "parser_cocci_menhir.mly"
8829 (Data.clt)
8830 # 8831 "parser_cocci_menhir.ml"
8831 ) = Obj.magic _1 in
8832 let _startpos = _startpos__1_ in
8833 let _endpos = _endpos__1_ in
8834 let _v : 'tv_dot_expressions =
8835 # 1143 "parser_cocci_menhir.mly"
8836 ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) )
8837 # 8838 "parser_cocci_menhir.ml"
8838 in
8839 _menhir_env.MenhirLib.EngineTypes.stack <- {
8840 MenhirLib.EngineTypes.state = _menhir_s;
8841 MenhirLib.EngineTypes.semv = Obj.repr _v;
8842 MenhirLib.EngineTypes.startp = _startpos;
8843 MenhirLib.EngineTypes.endp = _endpos;
8844 MenhirLib.EngineTypes.next = _menhir_stack;
8845 });
8846 (fun _menhir_env ->
8847 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8848 let {
8849 MenhirLib.EngineTypes.state = _menhir_s;
8850 MenhirLib.EngineTypes.semv = _1;
8851 MenhirLib.EngineTypes.startp = _startpos__1_;
8852 MenhirLib.EngineTypes.endp = _endpos__1_;
8853 MenhirLib.EngineTypes.next = _menhir_stack;
8854 } = _menhir_stack in
8855 let _1 : 'tv_nest_expressions = Obj.magic _1 in
8856 let _startpos = _startpos__1_ in
8857 let _endpos = _endpos__1_ in
8858 let _v : 'tv_dot_expressions =
8859 # 1144 "parser_cocci_menhir.mly"
8860 ( _1 )
8861 # 8862 "parser_cocci_menhir.ml"
8862 in
8863 _menhir_env.MenhirLib.EngineTypes.stack <- {
8864 MenhirLib.EngineTypes.state = _menhir_s;
8865 MenhirLib.EngineTypes.semv = Obj.repr _v;
8866 MenhirLib.EngineTypes.startp = _startpos;
8867 MenhirLib.EngineTypes.endp = _endpos;
8868 MenhirLib.EngineTypes.next = _menhir_stack;
8869 });
8870 (fun _menhir_env ->
8871 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8872 let {
8873 MenhirLib.EngineTypes.semv = d;
8874 MenhirLib.EngineTypes.startp = _startpos_d_;
8875 MenhirLib.EngineTypes.endp = _endpos_d_;
8876 MenhirLib.EngineTypes.next = {
8877 MenhirLib.EngineTypes.state = _menhir_s;
8878 MenhirLib.EngineTypes.semv = c;
8879 MenhirLib.EngineTypes.startp = _startpos_c_;
8880 MenhirLib.EngineTypes.endp = _endpos_c_;
8881 MenhirLib.EngineTypes.next = _menhir_stack;
8882 };
8883 } = _menhir_stack in
8884 let d : (
8885 # 72 "parser_cocci_menhir.mly"
8886 (Data.clt)
8887 # 8888 "parser_cocci_menhir.ml"
8888 ) = Obj.magic d in
8889 let c : (
8890 # 106 "parser_cocci_menhir.mly"
8891 (Data.clt)
8892 # 8893 "parser_cocci_menhir.ml"
8893 ) = Obj.magic c in
8894 let _startpos = _startpos_c_ in
8895 let _endpos = _endpos_d_ in
8896 let _v : 'tv_dp_comma_args_TEllipsis_ =
8897 # 677 "parser_cocci_menhir.mly"
8898 ( function dot_builder ->
8899 [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," c)); dot_builder d] )
8900 # 8901 "parser_cocci_menhir.ml"
8901 in
8902 _menhir_env.MenhirLib.EngineTypes.stack <- {
8903 MenhirLib.EngineTypes.state = _menhir_s;
8904 MenhirLib.EngineTypes.semv = Obj.repr _v;
8905 MenhirLib.EngineTypes.startp = _startpos;
8906 MenhirLib.EngineTypes.endp = _endpos;
8907 MenhirLib.EngineTypes.next = _menhir_stack;
8908 });
8909 (fun _menhir_env ->
8910 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8911 let {
8912 MenhirLib.EngineTypes.semv = _2;
8913 MenhirLib.EngineTypes.startp = _startpos__2_;
8914 MenhirLib.EngineTypes.endp = _endpos__2_;
8915 MenhirLib.EngineTypes.next = {
8916 MenhirLib.EngineTypes.state = _menhir_s;
8917 MenhirLib.EngineTypes.semv = _1;
8918 MenhirLib.EngineTypes.startp = _startpos__1_;
8919 MenhirLib.EngineTypes.endp = _endpos__1_;
8920 MenhirLib.EngineTypes.next = _menhir_stack;
8921 };
8922 } = _menhir_stack in
8923 let _2 : 'tv_ident = Obj.magic _2 in
8924 let _1 : (
8925 # 106 "parser_cocci_menhir.mly"
8926 (Data.clt)
8927 # 8928 "parser_cocci_menhir.ml"
8928 ) = Obj.magic _1 in
8929 let _startpos = _startpos__1_ in
8930 let _endpos = _endpos__2_ in
8931 let _v : 'tv_dp_comma_args_TEllipsis_ =
8932 # 680 "parser_cocci_menhir.mly"
8933 ( function dot_builder ->
8934 [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _1));
8935 Ast0.wrap(Ast0.DParam _2)] )
8936 # 8937 "parser_cocci_menhir.ml"
8937 in
8938 _menhir_env.MenhirLib.EngineTypes.stack <- {
8939 MenhirLib.EngineTypes.state = _menhir_s;
8940 MenhirLib.EngineTypes.semv = Obj.repr _v;
8941 MenhirLib.EngineTypes.startp = _startpos;
8942 MenhirLib.EngineTypes.endp = _endpos;
8943 MenhirLib.EngineTypes.next = _menhir_stack;
8944 });
8945 (fun _menhir_env ->
8946 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8947 let {
8948 MenhirLib.EngineTypes.state = _menhir_s;
8949 MenhirLib.EngineTypes.semv = d;
8950 MenhirLib.EngineTypes.startp = _startpos_d_;
8951 MenhirLib.EngineTypes.endp = _endpos_d_;
8952 MenhirLib.EngineTypes.next = _menhir_stack;
8953 } = _menhir_stack in
8954 let d : (
8955 # 72 "parser_cocci_menhir.mly"
8956 (Data.clt)
8957 # 8958 "parser_cocci_menhir.ml"
8958 ) = Obj.magic d in
8959 let _startpos = _startpos_d_ in
8960 let _endpos = _endpos_d_ in
8961 let _v : 'tv_edots_when_TEllipsis_eexpr_ =
8962 # 1698 "parser_cocci_menhir.mly"
8963 ( (d,None) )
8964 # 8965 "parser_cocci_menhir.ml"
8965 in
8966 _menhir_env.MenhirLib.EngineTypes.stack <- {
8967 MenhirLib.EngineTypes.state = _menhir_s;
8968 MenhirLib.EngineTypes.semv = Obj.repr _v;
8969 MenhirLib.EngineTypes.startp = _startpos;
8970 MenhirLib.EngineTypes.endp = _endpos;
8971 MenhirLib.EngineTypes.next = _menhir_stack;
8972 });
8973 (fun _menhir_env ->
8974 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8975 let {
8976 MenhirLib.EngineTypes.startp = _startpos__5_;
8977 MenhirLib.EngineTypes.endp = _endpos__5_;
8978 MenhirLib.EngineTypes.next = {
8979 MenhirLib.EngineTypes.semv = w;
8980 MenhirLib.EngineTypes.startp = _startpos_w_;
8981 MenhirLib.EngineTypes.endp = _endpos_w_;
8982 MenhirLib.EngineTypes.next = {
8983 MenhirLib.EngineTypes.startp = _startpos__3_;
8984 MenhirLib.EngineTypes.endp = _endpos__3_;
8985 MenhirLib.EngineTypes.next = {
8986 MenhirLib.EngineTypes.startp = _startpos__2_;
8987 MenhirLib.EngineTypes.endp = _endpos__2_;
8988 MenhirLib.EngineTypes.next = {
8989 MenhirLib.EngineTypes.state = _menhir_s;
8990 MenhirLib.EngineTypes.semv = d;
8991 MenhirLib.EngineTypes.startp = _startpos_d_;
8992 MenhirLib.EngineTypes.endp = _endpos_d_;
8993 MenhirLib.EngineTypes.next = _menhir_stack;
8994 };
8995 };
8996 };
8997 };
8998 } = _menhir_stack in
8999 let w : 'tv_eexpr = Obj.magic w in
9000 let d : (
9001 # 72 "parser_cocci_menhir.mly"
9002 (Data.clt)
9003 # 9004 "parser_cocci_menhir.ml"
9004 ) = Obj.magic d in
9005 let _startpos = _startpos_d_ in
9006 let _endpos = _endpos__5_ in
9007 let _v : 'tv_edots_when_TEllipsis_eexpr_ =
9008 # 1699 "parser_cocci_menhir.mly"
9009 ( (d,Some w) )
9010 # 9011 "parser_cocci_menhir.ml"
9011 in
9012 _menhir_env.MenhirLib.EngineTypes.stack <- {
9013 MenhirLib.EngineTypes.state = _menhir_s;
9014 MenhirLib.EngineTypes.semv = Obj.repr _v;
9015 MenhirLib.EngineTypes.startp = _startpos;
9016 MenhirLib.EngineTypes.endp = _endpos;
9017 MenhirLib.EngineTypes.next = _menhir_stack;
9018 });
9019 (fun _menhir_env ->
9020 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9021 let {
9022 MenhirLib.EngineTypes.state = _menhir_s;
9023 MenhirLib.EngineTypes.semv = d;
9024 MenhirLib.EngineTypes.startp = _startpos_d_;
9025 MenhirLib.EngineTypes.endp = _endpos_d_;
9026 MenhirLib.EngineTypes.next = _menhir_stack;
9027 } = _menhir_stack in
9028 let d : (
9029 # 72 "parser_cocci_menhir.mly"
9030 (Data.clt)
9031 # 9032 "parser_cocci_menhir.ml"
9032 ) = Obj.magic d in
9033 let _startpos = _startpos_d_ in
9034 let _endpos = _endpos_d_ in
9035 let _v : 'tv_edots_when_TEllipsis_initialize_ =
9036 # 1698 "parser_cocci_menhir.mly"
9037 ( (d,None) )
9038 # 9039 "parser_cocci_menhir.ml"
9039 in
9040 _menhir_env.MenhirLib.EngineTypes.stack <- {
9041 MenhirLib.EngineTypes.state = _menhir_s;
9042 MenhirLib.EngineTypes.semv = Obj.repr _v;
9043 MenhirLib.EngineTypes.startp = _startpos;
9044 MenhirLib.EngineTypes.endp = _endpos;
9045 MenhirLib.EngineTypes.next = _menhir_stack;
9046 });
9047 (fun _menhir_env ->
9048 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9049 let {
9050 MenhirLib.EngineTypes.startp = _startpos__5_;
9051 MenhirLib.EngineTypes.endp = _endpos__5_;
9052 MenhirLib.EngineTypes.next = {
9053 MenhirLib.EngineTypes.semv = w;
9054 MenhirLib.EngineTypes.startp = _startpos_w_;
9055 MenhirLib.EngineTypes.endp = _endpos_w_;
9056 MenhirLib.EngineTypes.next = {
9057 MenhirLib.EngineTypes.startp = _startpos__3_;
9058 MenhirLib.EngineTypes.endp = _endpos__3_;
9059 MenhirLib.EngineTypes.next = {
9060 MenhirLib.EngineTypes.startp = _startpos__2_;
9061 MenhirLib.EngineTypes.endp = _endpos__2_;
9062 MenhirLib.EngineTypes.next = {
9063 MenhirLib.EngineTypes.state = _menhir_s;
9064 MenhirLib.EngineTypes.semv = d;
9065 MenhirLib.EngineTypes.startp = _startpos_d_;
9066 MenhirLib.EngineTypes.endp = _endpos_d_;
9067 MenhirLib.EngineTypes.next = _menhir_stack;
9068 };
9069 };
9070 };
9071 };
9072 } = _menhir_stack in
9073 let w : 'tv_initialize = Obj.magic w in
9074 let d : (
9075 # 72 "parser_cocci_menhir.mly"
9076 (Data.clt)
9077 # 9078 "parser_cocci_menhir.ml"
9078 ) = Obj.magic d in
9079 let _startpos = _startpos_d_ in
9080 let _endpos = _endpos__5_ in
9081 let _v : 'tv_edots_when_TEllipsis_initialize_ =
9082 # 1699 "parser_cocci_menhir.mly"
9083 ( (d,Some w) )
9084 # 9085 "parser_cocci_menhir.ml"
9085 in
9086 _menhir_env.MenhirLib.EngineTypes.stack <- {
9087 MenhirLib.EngineTypes.state = _menhir_s;
9088 MenhirLib.EngineTypes.semv = Obj.repr _v;
9089 MenhirLib.EngineTypes.startp = _startpos;
9090 MenhirLib.EngineTypes.endp = _endpos;
9091 MenhirLib.EngineTypes.next = _menhir_stack;
9092 });
9093 (fun _menhir_env ->
9094 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9095 let {
9096 MenhirLib.EngineTypes.state = _menhir_s;
9097 MenhirLib.EngineTypes.semv = d;
9098 MenhirLib.EngineTypes.startp = _startpos_d_;
9099 MenhirLib.EngineTypes.endp = _endpos_d_;
9100 MenhirLib.EngineTypes.next = _menhir_stack;
9101 } = _menhir_stack in
9102 let d : (
9103 # 72 "parser_cocci_menhir.mly"
9104 (Data.clt)
9105 # 9106 "parser_cocci_menhir.ml"
9106 ) = Obj.magic d in
9107 let _startpos = _startpos_d_ in
9108 let _endpos = _endpos_d_ in
9109 let _v : 'tv_edots_when_TEllipsis_struct_decl_ =
9110 # 1698 "parser_cocci_menhir.mly"
9111 ( (d,None) )
9112 # 9113 "parser_cocci_menhir.ml"
9113 in
9114 _menhir_env.MenhirLib.EngineTypes.stack <- {
9115 MenhirLib.EngineTypes.state = _menhir_s;
9116 MenhirLib.EngineTypes.semv = Obj.repr _v;
9117 MenhirLib.EngineTypes.startp = _startpos;
9118 MenhirLib.EngineTypes.endp = _endpos;
9119 MenhirLib.EngineTypes.next = _menhir_stack;
9120 });
9121 (fun _menhir_env ->
9122 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9123 let {
9124 MenhirLib.EngineTypes.startp = _startpos__5_;
9125 MenhirLib.EngineTypes.endp = _endpos__5_;
9126 MenhirLib.EngineTypes.next = {
9127 MenhirLib.EngineTypes.semv = w;
9128 MenhirLib.EngineTypes.startp = _startpos_w_;
9129 MenhirLib.EngineTypes.endp = _endpos_w_;
9130 MenhirLib.EngineTypes.next = {
9131 MenhirLib.EngineTypes.startp = _startpos__3_;
9132 MenhirLib.EngineTypes.endp = _endpos__3_;
9133 MenhirLib.EngineTypes.next = {
9134 MenhirLib.EngineTypes.startp = _startpos__2_;
9135 MenhirLib.EngineTypes.endp = _endpos__2_;
9136 MenhirLib.EngineTypes.next = {
9137 MenhirLib.EngineTypes.state = _menhir_s;
9138 MenhirLib.EngineTypes.semv = d;
9139 MenhirLib.EngineTypes.startp = _startpos_d_;
9140 MenhirLib.EngineTypes.endp = _endpos_d_;
9141 MenhirLib.EngineTypes.next = _menhir_stack;
9142 };
9143 };
9144 };
9145 };
9146 } = _menhir_stack in
9147 let w : 'tv_struct_decl = Obj.magic w in
9148 let d : (
9149 # 72 "parser_cocci_menhir.mly"
9150 (Data.clt)
9151 # 9152 "parser_cocci_menhir.ml"
9152 ) = Obj.magic d in
9153 let _startpos = _startpos_d_ in
9154 let _endpos = _endpos__5_ in
9155 let _v : 'tv_edots_when_TEllipsis_struct_decl_ =
9156 # 1699 "parser_cocci_menhir.mly"
9157 ( (d,Some w) )
9158 # 9159 "parser_cocci_menhir.ml"
9159 in
9160 _menhir_env.MenhirLib.EngineTypes.stack <- {
9161 MenhirLib.EngineTypes.state = _menhir_s;
9162 MenhirLib.EngineTypes.semv = Obj.repr _v;
9163 MenhirLib.EngineTypes.startp = _startpos;
9164 MenhirLib.EngineTypes.endp = _endpos;
9165 MenhirLib.EngineTypes.next = _menhir_stack;
9166 });
9167 (fun _menhir_env ->
9168 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9169 let {
9170 MenhirLib.EngineTypes.state = _menhir_s;
9171 MenhirLib.EngineTypes.semv = _1;
9172 MenhirLib.EngineTypes.startp = _startpos__1_;
9173 MenhirLib.EngineTypes.endp = _endpos__1_;
9174 MenhirLib.EngineTypes.next = _menhir_stack;
9175 } = _menhir_stack in
9176 let _1 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
9177 let _startpos = _startpos__1_ in
9178 let _endpos = _endpos__1_ in
9179 let _v : 'tv_eexpr =
9180 # 1132 "parser_cocci_menhir.mly"
9181 ( _1 )
9182 # 9183 "parser_cocci_menhir.ml"
9183 in
9184 _menhir_env.MenhirLib.EngineTypes.stack <- {
9185 MenhirLib.EngineTypes.state = _menhir_s;
9186 MenhirLib.EngineTypes.semv = Obj.repr _v;
9187 MenhirLib.EngineTypes.startp = _startpos;
9188 MenhirLib.EngineTypes.endp = _endpos;
9189 MenhirLib.EngineTypes.next = _menhir_stack;
9190 });
9191 (fun _menhir_env ->
9192 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9193 let {
9194 MenhirLib.EngineTypes.state = _menhir_s;
9195 MenhirLib.EngineTypes.semv = _1;
9196 MenhirLib.EngineTypes.startp = _startpos__1_;
9197 MenhirLib.EngineTypes.endp = _endpos__1_;
9198 MenhirLib.EngineTypes.next = _menhir_stack;
9199 } = _menhir_stack in
9200 let _1 : 'tv_eexpr_list_start = Obj.magic _1 in
9201 let _startpos = _startpos__1_ in
9202 let _endpos = _endpos__1_ in
9203 let _v : 'tv_eexpr_list =
9204 # 1642 "parser_cocci_menhir.mly"
9205 (let circle x =
9206 match Ast0.unwrap x with Ast0.Ecircles(_) -> true | _ -> false in
9207 let star x =
9208 match Ast0.unwrap x with Ast0.Estars(_) -> true | _ -> false in
9209 if List.exists circle _1
9210 then Ast0.wrap(Ast0.CIRCLES(_1))
9211 else
9212 if List.exists star _1
9213 then Ast0.wrap(Ast0.STARS(_1))
9214 else Ast0.wrap(Ast0.DOTS(_1)) )
9215 # 9216 "parser_cocci_menhir.ml"
9216 in
9217 _menhir_env.MenhirLib.EngineTypes.stack <- {
9218 MenhirLib.EngineTypes.state = _menhir_s;
9219 MenhirLib.EngineTypes.semv = Obj.repr _v;
9220 MenhirLib.EngineTypes.startp = _startpos;
9221 MenhirLib.EngineTypes.endp = _endpos;
9222 MenhirLib.EngineTypes.next = _menhir_stack;
9223 });
9224 (fun _menhir_env ->
9225 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9226 let {
9227 MenhirLib.EngineTypes.state = _menhir_s;
9228 MenhirLib.EngineTypes.semv = _1;
9229 MenhirLib.EngineTypes.startp = _startpos__1_;
9230 MenhirLib.EngineTypes.endp = _endpos__1_;
9231 MenhirLib.EngineTypes.next = _menhir_stack;
9232 } = _menhir_stack in
9233 let _1 : 'tv_eexpr_list = Obj.magic _1 in
9234 let _startpos = _startpos__1_ in
9235 let _endpos = _endpos__1_ in
9236 let _v : 'tv_eexpr_list_option =
9237 # 1681 "parser_cocci_menhir.mly"
9238 ( _1 )
9239 # 9240 "parser_cocci_menhir.ml"
9240 in
9241 _menhir_env.MenhirLib.EngineTypes.stack <- {
9242 MenhirLib.EngineTypes.state = _menhir_s;
9243 MenhirLib.EngineTypes.semv = Obj.repr _v;
9244 MenhirLib.EngineTypes.startp = _startpos;
9245 MenhirLib.EngineTypes.endp = _endpos;
9246 MenhirLib.EngineTypes.next = _menhir_stack;
9247 });
9248 (fun _menhir_env ->
9249 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9250 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9251 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9252 let _endpos = _startpos in
9253 let _v : 'tv_eexpr_list_option =
9254 # 1682 "parser_cocci_menhir.mly"
9255 ( Ast0.wrap(Ast0.DOTS([])) )
9256 # 9257 "parser_cocci_menhir.ml"
9257 in
9258 _menhir_env.MenhirLib.EngineTypes.stack <- {
9259 MenhirLib.EngineTypes.state = _menhir_s;
9260 MenhirLib.EngineTypes.semv = Obj.repr _v;
9261 MenhirLib.EngineTypes.startp = _startpos;
9262 MenhirLib.EngineTypes.endp = _endpos;
9263 MenhirLib.EngineTypes.next = _menhir_stack;
9264 });
9265 (fun _menhir_env ->
9266 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9267 let {
9268 MenhirLib.EngineTypes.state = _menhir_s;
9269 MenhirLib.EngineTypes.semv = _1;
9270 MenhirLib.EngineTypes.startp = _startpos__1_;
9271 MenhirLib.EngineTypes.endp = _endpos__1_;
9272 MenhirLib.EngineTypes.next = _menhir_stack;
9273 } = _menhir_stack in
9274 let _1 : 'tv_aexpr = Obj.magic _1 in
9275 let _startpos = _startpos__1_ in
9276 let _endpos = _endpos__1_ in
9277 let _v : 'tv_eexpr_list_start =
9278 # 1669 "parser_cocci_menhir.mly"
9279 ( [_1] )
9280 # 9281 "parser_cocci_menhir.ml"
9281 in
9282 _menhir_env.MenhirLib.EngineTypes.stack <- {
9283 MenhirLib.EngineTypes.state = _menhir_s;
9284 MenhirLib.EngineTypes.semv = Obj.repr _v;
9285 MenhirLib.EngineTypes.startp = _startpos;
9286 MenhirLib.EngineTypes.endp = _endpos;
9287 MenhirLib.EngineTypes.next = _menhir_stack;
9288 });
9289 (fun _menhir_env ->
9290 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9291 let {
9292 MenhirLib.EngineTypes.semv = _3;
9293 MenhirLib.EngineTypes.startp = _startpos__3_;
9294 MenhirLib.EngineTypes.endp = _endpos__3_;
9295 MenhirLib.EngineTypes.next = {
9296 MenhirLib.EngineTypes.semv = _2;
9297 MenhirLib.EngineTypes.startp = _startpos__2_;
9298 MenhirLib.EngineTypes.endp = _endpos__2_;
9299 MenhirLib.EngineTypes.next = {
9300 MenhirLib.EngineTypes.state = _menhir_s;
9301 MenhirLib.EngineTypes.semv = _1;
9302 MenhirLib.EngineTypes.startp = _startpos__1_;
9303 MenhirLib.EngineTypes.endp = _endpos__1_;
9304 MenhirLib.EngineTypes.next = _menhir_stack;
9305 };
9306 };
9307 } = _menhir_stack in
9308 let _3 : 'tv_eexpr_list_start = Obj.magic _3 in
9309 let _2 : (
9310 # 106 "parser_cocci_menhir.mly"
9311 (Data.clt)
9312 # 9313 "parser_cocci_menhir.ml"
9313 ) = Obj.magic _2 in
9314 let _1 : 'tv_aexpr = Obj.magic _1 in
9315 let _startpos = _startpos__1_ in
9316 let _endpos = _endpos__3_ in
9317 let _v : 'tv_eexpr_list_start =
9318 # 1671 "parser_cocci_menhir.mly"
9319 ( _1::Ast0.wrap(Ast0.EComma(P.clt2mcode "," _2))::_3 )
9320 # 9321 "parser_cocci_menhir.ml"
9321 in
9322 _menhir_env.MenhirLib.EngineTypes.stack <- {
9323 MenhirLib.EngineTypes.state = _menhir_s;
9324 MenhirLib.EngineTypes.semv = Obj.repr _v;
9325 MenhirLib.EngineTypes.startp = _startpos;
9326 MenhirLib.EngineTypes.endp = _endpos;
9327 MenhirLib.EngineTypes.next = _menhir_stack;
9328 });
9329 (fun _menhir_env ->
9330 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9331 let {
9332 MenhirLib.EngineTypes.startp = _startpos__6_;
9333 MenhirLib.EngineTypes.endp = _endpos__6_;
9334 MenhirLib.EngineTypes.next = {
9335 MenhirLib.EngineTypes.semv = cl;
9336 MenhirLib.EngineTypes.startp = _startpos_cl_;
9337 MenhirLib.EngineTypes.endp = _endpos_cl_;
9338 MenhirLib.EngineTypes.next = {
9339 MenhirLib.EngineTypes.startp = _startpos__4_;
9340 MenhirLib.EngineTypes.endp = _endpos__4_;
9341 MenhirLib.EngineTypes.next = {
9342 MenhirLib.EngineTypes.startp = _startpos__3_;
9343 MenhirLib.EngineTypes.endp = _endpos__3_;
9344 MenhirLib.EngineTypes.next = {
9345 MenhirLib.EngineTypes.startp = _startpos__2_;
9346 MenhirLib.EngineTypes.endp = _endpos__2_;
9347 MenhirLib.EngineTypes.next = {
9348 MenhirLib.EngineTypes.state = _menhir_s;
9349 MenhirLib.EngineTypes.startp = _startpos__1_;
9350 MenhirLib.EngineTypes.endp = _endpos__1_;
9351 MenhirLib.EngineTypes.next = _menhir_stack;
9352 };
9353 };
9354 };
9355 };
9356 };
9357 } = _menhir_stack in
9358 let cl : 'tv_comma_list_dexpr_ = Obj.magic cl in
9359 let _startpos = _startpos__1_ in
9360 let _endpos = _endpos__6_ in
9361 let _v : 'tv_error_words =
9362 # 1481 "parser_cocci_menhir.mly"
9363 ( [Ast0.wrap(Ast0.ERRORWORDS(cl))] )
9364 # 9365 "parser_cocci_menhir.ml"
9365 in
9366 _menhir_env.MenhirLib.EngineTypes.stack <- {
9367 MenhirLib.EngineTypes.state = _menhir_s;
9368 MenhirLib.EngineTypes.semv = Obj.repr _v;
9369 MenhirLib.EngineTypes.startp = _startpos;
9370 MenhirLib.EngineTypes.endp = _endpos;
9371 MenhirLib.EngineTypes.next = _menhir_stack;
9372 });
9373 (fun _menhir_env ->
9374 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9375 let {
9376 MenhirLib.EngineTypes.state = _menhir_s;
9377 MenhirLib.EngineTypes.startp = _startpos__1_;
9378 MenhirLib.EngineTypes.endp = _endpos__1_;
9379 MenhirLib.EngineTypes.next = _menhir_stack;
9380 } = _menhir_stack in
9381 let _startpos = _startpos__1_ in
9382 let _endpos = _endpos__1_ in
9383 let _v : 'tv_exists =
9384 # 233 "parser_cocci_menhir.mly"
9385 ( Ast.Exists )
9386 # 9387 "parser_cocci_menhir.ml"
9387 in
9388 _menhir_env.MenhirLib.EngineTypes.stack <- {
9389 MenhirLib.EngineTypes.state = _menhir_s;
9390 MenhirLib.EngineTypes.semv = Obj.repr _v;
9391 MenhirLib.EngineTypes.startp = _startpos;
9392 MenhirLib.EngineTypes.endp = _endpos;
9393 MenhirLib.EngineTypes.next = _menhir_stack;
9394 });
9395 (fun _menhir_env ->
9396 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9397 let {
9398 MenhirLib.EngineTypes.state = _menhir_s;
9399 MenhirLib.EngineTypes.startp = _startpos__1_;
9400 MenhirLib.EngineTypes.endp = _endpos__1_;
9401 MenhirLib.EngineTypes.next = _menhir_stack;
9402 } = _menhir_stack in
9403 let _startpos = _startpos__1_ in
9404 let _endpos = _endpos__1_ in
9405 let _v : 'tv_exists =
9406 # 234 "parser_cocci_menhir.mly"
9407 ( Ast.Forall )
9408 # 9409 "parser_cocci_menhir.ml"
9409 in
9410 _menhir_env.MenhirLib.EngineTypes.stack <- {
9411 MenhirLib.EngineTypes.state = _menhir_s;
9412 MenhirLib.EngineTypes.semv = Obj.repr _v;
9413 MenhirLib.EngineTypes.startp = _startpos;
9414 MenhirLib.EngineTypes.endp = _endpos;
9415 MenhirLib.EngineTypes.next = _menhir_stack;
9416 });
9417 (fun _menhir_env ->
9418 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9419 let {
9420 MenhirLib.EngineTypes.startp = _startpos__2_;
9421 MenhirLib.EngineTypes.endp = _endpos__2_;
9422 MenhirLib.EngineTypes.next = {
9423 MenhirLib.EngineTypes.state = _menhir_s;
9424 MenhirLib.EngineTypes.startp = _startpos__1_;
9425 MenhirLib.EngineTypes.endp = _endpos__1_;
9426 MenhirLib.EngineTypes.next = _menhir_stack;
9427 };
9428 } = _menhir_stack in
9429 let _startpos = _startpos__1_ in
9430 let _endpos = _endpos__2_ in
9431 let _v : 'tv_exists =
9432 # 235 "parser_cocci_menhir.mly"
9433 ( Ast.ReverseForall )
9434 # 9435 "parser_cocci_menhir.ml"
9435 in
9436 _menhir_env.MenhirLib.EngineTypes.stack <- {
9437 MenhirLib.EngineTypes.state = _menhir_s;
9438 MenhirLib.EngineTypes.semv = Obj.repr _v;
9439 MenhirLib.EngineTypes.startp = _startpos;
9440 MenhirLib.EngineTypes.endp = _endpos;
9441 MenhirLib.EngineTypes.next = _menhir_stack;
9442 });
9443 (fun _menhir_env ->
9444 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9445 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9446 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9447 let _endpos = _startpos in
9448 let _v : 'tv_exists =
9449 # 236 "parser_cocci_menhir.mly"
9450 ( Ast.Undetermined )
9451 # 9452 "parser_cocci_menhir.ml"
9452 in
9453 _menhir_env.MenhirLib.EngineTypes.stack <- {
9454 MenhirLib.EngineTypes.state = _menhir_s;
9455 MenhirLib.EngineTypes.semv = Obj.repr _v;
9456 MenhirLib.EngineTypes.startp = _startpos;
9457 MenhirLib.EngineTypes.endp = _endpos;
9458 MenhirLib.EngineTypes.next = _menhir_stack;
9459 });
9460 (fun _menhir_env ->
9461 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9462 let {
9463 MenhirLib.EngineTypes.state = _menhir_s;
9464 MenhirLib.EngineTypes.semv = _1;
9465 MenhirLib.EngineTypes.startp = _startpos__1_;
9466 MenhirLib.EngineTypes.endp = _endpos__1_;
9467 MenhirLib.EngineTypes.next = _menhir_stack;
9468 } = _menhir_stack in
9469 let _1 : 'tv_basic_expr_expr_invalid_ = Obj.magic _1 in
9470 let _startpos = _startpos__1_ in
9471 let _endpos = _endpos__1_ in
9472 let _v : 'tv_expr =
9473 # 1130 "parser_cocci_menhir.mly"
9474 ( _1 )
9475 # 9476 "parser_cocci_menhir.ml"
9476 in
9477 _menhir_env.MenhirLib.EngineTypes.stack <- {
9478 MenhirLib.EngineTypes.state = _menhir_s;
9479 MenhirLib.EngineTypes.semv = Obj.repr _v;
9480 MenhirLib.EngineTypes.startp = _startpos;
9481 MenhirLib.EngineTypes.endp = _endpos;
9482 MenhirLib.EngineTypes.next = _menhir_stack;
9483 });
9484 (fun _menhir_env ->
9485 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9486 let {
9487 MenhirLib.EngineTypes.state = _menhir_s;
9488 MenhirLib.EngineTypes.semv = r;
9489 MenhirLib.EngineTypes.startp = _startpos_r_;
9490 MenhirLib.EngineTypes.endp = _endpos_r_;
9491 MenhirLib.EngineTypes.next = _menhir_stack;
9492 } = _menhir_stack in
9493 let r : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ = Obj.magic r in
9494 let _startpos = _startpos_r_ in
9495 let _endpos = _endpos_r_ in
9496 let _v : 'tv_expr_dots_TEllipsis_ =
9497 # 1311 "parser_cocci_menhir.mly"
9498 ( r )
9499 # 9500 "parser_cocci_menhir.ml"
9500 in
9501 _menhir_env.MenhirLib.EngineTypes.stack <- {
9502 MenhirLib.EngineTypes.state = _menhir_s;
9503 MenhirLib.EngineTypes.semv = Obj.repr _v;
9504 MenhirLib.EngineTypes.startp = _startpos;
9505 MenhirLib.EngineTypes.endp = _endpos;
9506 MenhirLib.EngineTypes.next = _menhir_stack;
9507 });
9508 (fun _menhir_env ->
9509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9510 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9511 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9512 let _endpos = _startpos in
9513 let _v : 'tv_extends =
9514 # 206 "parser_cocci_menhir.mly"
9515 ( () )
9516 # 9517 "parser_cocci_menhir.ml"
9517 in
9518 _menhir_env.MenhirLib.EngineTypes.stack <- {
9519 MenhirLib.EngineTypes.state = _menhir_s;
9520 MenhirLib.EngineTypes.semv = Obj.repr _v;
9521 MenhirLib.EngineTypes.startp = _startpos;
9522 MenhirLib.EngineTypes.endp = _endpos;
9523 MenhirLib.EngineTypes.next = _menhir_stack;
9524 });
9525 (fun _menhir_env ->
9526 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9527 let {
9528 MenhirLib.EngineTypes.semv = parent;
9529 MenhirLib.EngineTypes.startp = _startpos_parent_;
9530 MenhirLib.EngineTypes.endp = _endpos_parent_;
9531 MenhirLib.EngineTypes.next = {
9532 MenhirLib.EngineTypes.state = _menhir_s;
9533 MenhirLib.EngineTypes.startp = _startpos__1_;
9534 MenhirLib.EngineTypes.endp = _endpos__1_;
9535 MenhirLib.EngineTypes.next = _menhir_stack;
9536 };
9537 } = _menhir_stack in
9538 let parent : (
9539 # 47 "parser_cocci_menhir.mly"
9540 (string)
9541 # 9542 "parser_cocci_menhir.ml"
9542 ) = Obj.magic parent in
9543 let _startpos = _startpos__1_ in
9544 let _endpos = _endpos_parent_ in
9545 let _v : 'tv_extends =
9546 # 208 "parser_cocci_menhir.mly"
9547 ( !Data.install_bindings (parent) )
9548 # 9549 "parser_cocci_menhir.ml"
9549 in
9550 _menhir_env.MenhirLib.EngineTypes.stack <- {
9551 MenhirLib.EngineTypes.state = _menhir_s;
9552 MenhirLib.EngineTypes.semv = Obj.repr _v;
9553 MenhirLib.EngineTypes.startp = _startpos;
9554 MenhirLib.EngineTypes.endp = _endpos;
9555 MenhirLib.EngineTypes.next = _menhir_stack;
9556 });
9557 (fun _menhir_env ->
9558 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9559 let {
9560 MenhirLib.EngineTypes.semv = _2;
9561 MenhirLib.EngineTypes.startp = _startpos__2_;
9562 MenhirLib.EngineTypes.endp = _endpos__2_;
9563 MenhirLib.EngineTypes.next = {
9564 MenhirLib.EngineTypes.state = _menhir_s;
9565 MenhirLib.EngineTypes.semv = _1;
9566 MenhirLib.EngineTypes.startp = _startpos__1_;
9567 MenhirLib.EngineTypes.endp = _endpos__1_;
9568 MenhirLib.EngineTypes.next = _menhir_stack;
9569 };
9570 } = _menhir_stack in
9571 let _2 : (
9572 # 82 "parser_cocci_menhir.mly"
9573 (string * Data.clt)
9574 # 9575 "parser_cocci_menhir.ml"
9575 ) = Obj.magic _2 in
9576 let _1 : (
9577 # 82 "parser_cocci_menhir.mly"
9578 (string * Data.clt)
9579 # 9580 "parser_cocci_menhir.ml"
9580 ) = Obj.magic _1 in
9581 let _startpos = _startpos__1_ in
9582 let _endpos = _endpos__2_ in
9583 let _v : 'tv_filespec =
9584 # 580 "parser_cocci_menhir.mly"
9585 ( [Ast0.wrap
9586 (Ast0.FILEINFO(P.id2mcode _1,
9587 P.id2mcode _2))] )
9588 # 9589 "parser_cocci_menhir.ml"
9589 in
9590 _menhir_env.MenhirLib.EngineTypes.stack <- {
9591 MenhirLib.EngineTypes.state = _menhir_s;
9592 MenhirLib.EngineTypes.semv = Obj.repr _v;
9593 MenhirLib.EngineTypes.startp = _startpos;
9594 MenhirLib.EngineTypes.endp = _endpos;
9595 MenhirLib.EngineTypes.next = _menhir_stack;
9596 });
9597 (fun _menhir_env ->
9598 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9599 let {
9600 MenhirLib.EngineTypes.semv = m;
9601 MenhirLib.EngineTypes.startp = _startpos_m_;
9602 MenhirLib.EngineTypes.endp = _endpos_m_;
9603 MenhirLib.EngineTypes.next = {
9604 MenhirLib.EngineTypes.state = _menhir_s;
9605 MenhirLib.EngineTypes.semv = ty;
9606 MenhirLib.EngineTypes.startp = _startpos_ty_;
9607 MenhirLib.EngineTypes.endp = _endpos_ty_;
9608 MenhirLib.EngineTypes.next = _menhir_stack;
9609 };
9610 } = _menhir_stack in
9611 let m : 'tv_list_TMul_ = Obj.magic m in
9612 let ty : 'tv_generic_ctype = Obj.magic ty in
9613 let _startpos = _startpos_ty_ in
9614 let _endpos = _endpos_m_ in
9615 let _v : 'tv_fn_ctype =
9616 # 535 "parser_cocci_menhir.mly"
9617 ( P.pointerify ty m )
9618 # 9619 "parser_cocci_menhir.ml"
9619 in
9620 _menhir_env.MenhirLib.EngineTypes.stack <- {
9621 MenhirLib.EngineTypes.state = _menhir_s;
9622 MenhirLib.EngineTypes.semv = Obj.repr _v;
9623 MenhirLib.EngineTypes.startp = _startpos;
9624 MenhirLib.EngineTypes.endp = _endpos;
9625 MenhirLib.EngineTypes.next = _menhir_stack;
9626 });
9627 (fun _menhir_env ->
9628 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9629 let {
9630 MenhirLib.EngineTypes.semv = m;
9631 MenhirLib.EngineTypes.startp = _startpos_m_;
9632 MenhirLib.EngineTypes.endp = _endpos_m_;
9633 MenhirLib.EngineTypes.next = {
9634 MenhirLib.EngineTypes.state = _menhir_s;
9635 MenhirLib.EngineTypes.semv = t;
9636 MenhirLib.EngineTypes.startp = _startpos_t_;
9637 MenhirLib.EngineTypes.endp = _endpos_t_;
9638 MenhirLib.EngineTypes.next = _menhir_stack;
9639 };
9640 } = _menhir_stack in
9641 let m : 'tv_list_TMul_ = Obj.magic m in
9642 let t : (
9643 # 50 "parser_cocci_menhir.mly"
9644 (Data.clt)
9645 # 9646 "parser_cocci_menhir.ml"
9646 ) = Obj.magic t in
9647 let _startpos = _startpos_t_ in
9648 let _endpos = _endpos_m_ in
9649 let _v : 'tv_fn_ctype =
9650 # 537 "parser_cocci_menhir.mly"
9651 ( P.pointerify
9652 (Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)))
9653 m )
9654 # 9655 "parser_cocci_menhir.ml"
9655 in
9656 _menhir_env.MenhirLib.EngineTypes.stack <- {
9657 MenhirLib.EngineTypes.state = _menhir_s;
9658 MenhirLib.EngineTypes.semv = Obj.repr _v;
9659 MenhirLib.EngineTypes.startp = _startpos;
9660 MenhirLib.EngineTypes.endp = _endpos;
9661 MenhirLib.EngineTypes.next = _menhir_stack;
9662 });
9663 (fun _menhir_env ->
9664 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9665 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9666 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9667 let _endpos = _startpos in
9668 let _v : 'tv_fninfo =
9669 # 723 "parser_cocci_menhir.mly"
9670 ( [] )
9671 # 9672 "parser_cocci_menhir.ml"
9672 in
9673 _menhir_env.MenhirLib.EngineTypes.stack <- {
9674 MenhirLib.EngineTypes.state = _menhir_s;
9675 MenhirLib.EngineTypes.semv = Obj.repr _v;
9676 MenhirLib.EngineTypes.startp = _startpos;
9677 MenhirLib.EngineTypes.endp = _endpos;
9678 MenhirLib.EngineTypes.next = _menhir_stack;
9679 });
9680 (fun _menhir_env ->
9681 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9682 let {
9683 MenhirLib.EngineTypes.semv = _2;
9684 MenhirLib.EngineTypes.startp = _startpos__2_;
9685 MenhirLib.EngineTypes.endp = _endpos__2_;
9686 MenhirLib.EngineTypes.next = {
9687 MenhirLib.EngineTypes.state = _menhir_s;
9688 MenhirLib.EngineTypes.semv = _1;
9689 MenhirLib.EngineTypes.startp = _startpos__1_;
9690 MenhirLib.EngineTypes.endp = _endpos__1_;
9691 MenhirLib.EngineTypes.next = _menhir_stack;
9692 };
9693 } = _menhir_stack in
9694 let _2 : 'tv_fninfo = Obj.magic _2 in
9695 let _1 : 'tv_storage = Obj.magic _1 in
9696 let _startpos = _startpos__1_ in
9697 let _endpos = _endpos__2_ in
9698 let _v : 'tv_fninfo =
9699 # 725 "parser_cocci_menhir.mly"
9700 ( try
9701 let _ =
9702 List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
9703 raise (Semantic_cocci.Semantic "duplicate storage")
9704 with Not_found -> (Ast0.FStorage(_1))::_2 )
9705 # 9706 "parser_cocci_menhir.ml"
9706 in
9707 _menhir_env.MenhirLib.EngineTypes.stack <- {
9708 MenhirLib.EngineTypes.state = _menhir_s;
9709 MenhirLib.EngineTypes.semv = Obj.repr _v;
9710 MenhirLib.EngineTypes.startp = _startpos;
9711 MenhirLib.EngineTypes.endp = _endpos;
9712 MenhirLib.EngineTypes.next = _menhir_stack;
9713 });
9714 (fun _menhir_env ->
9715 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9716 let {
9717 MenhirLib.EngineTypes.semv = r;
9718 MenhirLib.EngineTypes.startp = _startpos_r_;
9719 MenhirLib.EngineTypes.endp = _endpos_r_;
9720 MenhirLib.EngineTypes.next = {
9721 MenhirLib.EngineTypes.state = _menhir_s;
9722 MenhirLib.EngineTypes.semv = t;
9723 MenhirLib.EngineTypes.startp = _startpos_t_;
9724 MenhirLib.EngineTypes.endp = _endpos_t_;
9725 MenhirLib.EngineTypes.next = _menhir_stack;
9726 };
9727 } = _menhir_stack in
9728 let r : 'tv_fninfo_nt = Obj.magic r in
9729 let t : 'tv_fn_ctype = Obj.magic t in
9730 let _startpos = _startpos_t_ in
9731 let _endpos = _endpos_r_ in
9732 let _v : 'tv_fninfo =
9733 # 730 "parser_cocci_menhir.mly"
9734 ( (Ast0.FType(t))::r )
9735 # 9736 "parser_cocci_menhir.ml"
9736 in
9737 _menhir_env.MenhirLib.EngineTypes.stack <- {
9738 MenhirLib.EngineTypes.state = _menhir_s;
9739 MenhirLib.EngineTypes.semv = Obj.repr _v;
9740 MenhirLib.EngineTypes.startp = _startpos;
9741 MenhirLib.EngineTypes.endp = _endpos;
9742 MenhirLib.EngineTypes.next = _menhir_stack;
9743 });
9744 (fun _menhir_env ->
9745 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9746 let {
9747 MenhirLib.EngineTypes.semv = _2;
9748 MenhirLib.EngineTypes.startp = _startpos__2_;
9749 MenhirLib.EngineTypes.endp = _endpos__2_;
9750 MenhirLib.EngineTypes.next = {
9751 MenhirLib.EngineTypes.state = _menhir_s;
9752 MenhirLib.EngineTypes.semv = _1;
9753 MenhirLib.EngineTypes.startp = _startpos__1_;
9754 MenhirLib.EngineTypes.endp = _endpos__1_;
9755 MenhirLib.EngineTypes.next = _menhir_stack;
9756 };
9757 } = _menhir_stack in
9758 let _2 : 'tv_fninfo = Obj.magic _2 in
9759 let _1 : (
9760 # 53 "parser_cocci_menhir.mly"
9761 (Data.clt)
9762 # 9763 "parser_cocci_menhir.ml"
9763 ) = Obj.magic _1 in
9764 let _startpos = _startpos__1_ in
9765 let _endpos = _endpos__2_ in
9766 let _v : 'tv_fninfo =
9767 # 732 "parser_cocci_menhir.mly"
9768 ( try
9769 let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
9770 raise (Semantic_cocci.Semantic "duplicate inline")
9771 with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
9772 # 9773 "parser_cocci_menhir.ml"
9773 in
9774 _menhir_env.MenhirLib.EngineTypes.stack <- {
9775 MenhirLib.EngineTypes.state = _menhir_s;
9776 MenhirLib.EngineTypes.semv = Obj.repr _v;
9777 MenhirLib.EngineTypes.startp = _startpos;
9778 MenhirLib.EngineTypes.endp = _endpos;
9779 MenhirLib.EngineTypes.next = _menhir_stack;
9780 });
9781 (fun _menhir_env ->
9782 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9783 let {
9784 MenhirLib.EngineTypes.semv = _2;
9785 MenhirLib.EngineTypes.startp = _startpos__2_;
9786 MenhirLib.EngineTypes.endp = _endpos__2_;
9787 MenhirLib.EngineTypes.next = {
9788 MenhirLib.EngineTypes.state = _menhir_s;
9789 MenhirLib.EngineTypes.semv = _1;
9790 MenhirLib.EngineTypes.startp = _startpos__1_;
9791 MenhirLib.EngineTypes.endp = _endpos__1_;
9792 MenhirLib.EngineTypes.next = _menhir_stack;
9793 };
9794 } = _menhir_stack in
9795 let _2 : 'tv_fninfo = Obj.magic _2 in
9796 let _1 : (
9797 # 55 "parser_cocci_menhir.mly"
9798 (string * Data.clt)
9799 # 9800 "parser_cocci_menhir.ml"
9800 ) = Obj.magic _1 in
9801 let _startpos = _startpos__1_ in
9802 let _endpos = _endpos__2_ in
9803 let _v : 'tv_fninfo =
9804 # 737 "parser_cocci_menhir.mly"
9805 ( try
9806 let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
9807 raise (Semantic_cocci.Semantic "multiple attributes")
9808 with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
9809 # 9810 "parser_cocci_menhir.ml"
9810 in
9811 _menhir_env.MenhirLib.EngineTypes.stack <- {
9812 MenhirLib.EngineTypes.state = _menhir_s;
9813 MenhirLib.EngineTypes.semv = Obj.repr _v;
9814 MenhirLib.EngineTypes.startp = _startpos;
9815 MenhirLib.EngineTypes.endp = _endpos;
9816 MenhirLib.EngineTypes.next = _menhir_stack;
9817 });
9818 (fun _menhir_env ->
9819 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9820 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9821 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9822 let _endpos = _startpos in
9823 let _v : 'tv_fninfo_nt =
9824 # 743 "parser_cocci_menhir.mly"
9825 ( [] )
9826 # 9827 "parser_cocci_menhir.ml"
9827 in
9828 _menhir_env.MenhirLib.EngineTypes.stack <- {
9829 MenhirLib.EngineTypes.state = _menhir_s;
9830 MenhirLib.EngineTypes.semv = Obj.repr _v;
9831 MenhirLib.EngineTypes.startp = _startpos;
9832 MenhirLib.EngineTypes.endp = _endpos;
9833 MenhirLib.EngineTypes.next = _menhir_stack;
9834 });
9835 (fun _menhir_env ->
9836 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9837 let {
9838 MenhirLib.EngineTypes.semv = _2;
9839 MenhirLib.EngineTypes.startp = _startpos__2_;
9840 MenhirLib.EngineTypes.endp = _endpos__2_;
9841 MenhirLib.EngineTypes.next = {
9842 MenhirLib.EngineTypes.state = _menhir_s;
9843 MenhirLib.EngineTypes.semv = _1;
9844 MenhirLib.EngineTypes.startp = _startpos__1_;
9845 MenhirLib.EngineTypes.endp = _endpos__1_;
9846 MenhirLib.EngineTypes.next = _menhir_stack;
9847 };
9848 } = _menhir_stack in
9849 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
9850 let _1 : 'tv_storage = Obj.magic _1 in
9851 let _startpos = _startpos__1_ in
9852 let _endpos = _endpos__2_ in
9853 let _v : 'tv_fninfo_nt =
9854 # 745 "parser_cocci_menhir.mly"
9855 ( try
9856 let _ =
9857 List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
9858 raise (Semantic_cocci.Semantic "duplicate storage")
9859 with Not_found -> (Ast0.FStorage(_1))::_2 )
9860 # 9861 "parser_cocci_menhir.ml"
9861 in
9862 _menhir_env.MenhirLib.EngineTypes.stack <- {
9863 MenhirLib.EngineTypes.state = _menhir_s;
9864 MenhirLib.EngineTypes.semv = Obj.repr _v;
9865 MenhirLib.EngineTypes.startp = _startpos;
9866 MenhirLib.EngineTypes.endp = _endpos;
9867 MenhirLib.EngineTypes.next = _menhir_stack;
9868 });
9869 (fun _menhir_env ->
9870 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9871 let {
9872 MenhirLib.EngineTypes.semv = _2;
9873 MenhirLib.EngineTypes.startp = _startpos__2_;
9874 MenhirLib.EngineTypes.endp = _endpos__2_;
9875 MenhirLib.EngineTypes.next = {
9876 MenhirLib.EngineTypes.state = _menhir_s;
9877 MenhirLib.EngineTypes.semv = _1;
9878 MenhirLib.EngineTypes.startp = _startpos__1_;
9879 MenhirLib.EngineTypes.endp = _endpos__1_;
9880 MenhirLib.EngineTypes.next = _menhir_stack;
9881 };
9882 } = _menhir_stack in
9883 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
9884 let _1 : (
9885 # 53 "parser_cocci_menhir.mly"
9886 (Data.clt)
9887 # 9888 "parser_cocci_menhir.ml"
9888 ) = Obj.magic _1 in
9889 let _startpos = _startpos__1_ in
9890 let _endpos = _endpos__2_ in
9891 let _v : 'tv_fninfo_nt =
9892 # 751 "parser_cocci_menhir.mly"
9893 ( try
9894 let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
9895 raise (Semantic_cocci.Semantic "duplicate inline")
9896 with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
9897 # 9898 "parser_cocci_menhir.ml"
9898 in
9899 _menhir_env.MenhirLib.EngineTypes.stack <- {
9900 MenhirLib.EngineTypes.state = _menhir_s;
9901 MenhirLib.EngineTypes.semv = Obj.repr _v;
9902 MenhirLib.EngineTypes.startp = _startpos;
9903 MenhirLib.EngineTypes.endp = _endpos;
9904 MenhirLib.EngineTypes.next = _menhir_stack;
9905 });
9906 (fun _menhir_env ->
9907 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9908 let {
9909 MenhirLib.EngineTypes.semv = _2;
9910 MenhirLib.EngineTypes.startp = _startpos__2_;
9911 MenhirLib.EngineTypes.endp = _endpos__2_;
9912 MenhirLib.EngineTypes.next = {
9913 MenhirLib.EngineTypes.state = _menhir_s;
9914 MenhirLib.EngineTypes.semv = _1;
9915 MenhirLib.EngineTypes.startp = _startpos__1_;
9916 MenhirLib.EngineTypes.endp = _endpos__1_;
9917 MenhirLib.EngineTypes.next = _menhir_stack;
9918 };
9919 } = _menhir_stack in
9920 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
9921 let _1 : (
9922 # 55 "parser_cocci_menhir.mly"
9923 (string * Data.clt)
9924 # 9925 "parser_cocci_menhir.ml"
9925 ) = Obj.magic _1 in
9926 let _startpos = _startpos__1_ in
9927 let _endpos = _endpos__2_ in
9928 let _v : 'tv_fninfo_nt =
9929 # 756 "parser_cocci_menhir.mly"
9930 ( try
9931 let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
9932 raise (Semantic_cocci.Semantic "duplicate init")
9933 with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
9934 # 9935 "parser_cocci_menhir.ml"
9935 in
9936 _menhir_env.MenhirLib.EngineTypes.stack <- {
9937 MenhirLib.EngineTypes.state = _menhir_s;
9938 MenhirLib.EngineTypes.semv = Obj.repr _v;
9939 MenhirLib.EngineTypes.startp = _startpos;
9940 MenhirLib.EngineTypes.endp = _endpos;
9941 MenhirLib.EngineTypes.next = _menhir_stack;
9942 });
9943 (fun _menhir_env ->
9944 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9945 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
9946 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
9947 let _endpos = _startpos in
9948 let _v : 'tv_fun_after_dots =
9949 # 1590 "parser_cocci_menhir.mly"
9950 ([])
9951 # 9952 "parser_cocci_menhir.ml"
9952 in
9953 _menhir_env.MenhirLib.EngineTypes.stack <- {
9954 MenhirLib.EngineTypes.state = _menhir_s;
9955 MenhirLib.EngineTypes.semv = Obj.repr _v;
9956 MenhirLib.EngineTypes.startp = _startpos;
9957 MenhirLib.EngineTypes.endp = _endpos;
9958 MenhirLib.EngineTypes.next = _menhir_stack;
9959 });
9960 (fun _menhir_env ->
9961 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9962 let {
9963 MenhirLib.EngineTypes.semv = _2;
9964 MenhirLib.EngineTypes.startp = _startpos__2_;
9965 MenhirLib.EngineTypes.endp = _endpos__2_;
9966 MenhirLib.EngineTypes.next = {
9967 MenhirLib.EngineTypes.state = _menhir_s;
9968 MenhirLib.EngineTypes.startp = _startpos__1_;
9969 MenhirLib.EngineTypes.endp = _endpos__1_;
9970 MenhirLib.EngineTypes.next = _menhir_stack;
9971 };
9972 } = _menhir_stack in
9973 let _2 : 'tv_fun_after_exp = Obj.magic _2 in
9974 let _startpos = _startpos__1_ in
9975 let _endpos = _endpos__2_ in
9976 let _v : 'tv_fun_after_dots =
9977 # 1591 "parser_cocci_menhir.mly"
9978 (_2)
9979 # 9980 "parser_cocci_menhir.ml"
9980 in
9981 _menhir_env.MenhirLib.EngineTypes.stack <- {
9982 MenhirLib.EngineTypes.state = _menhir_s;
9983 MenhirLib.EngineTypes.semv = Obj.repr _v;
9984 MenhirLib.EngineTypes.startp = _startpos;
9985 MenhirLib.EngineTypes.endp = _endpos;
9986 MenhirLib.EngineTypes.next = _menhir_stack;
9987 });
9988 (fun _menhir_env ->
9989 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9990 let {
9991 MenhirLib.EngineTypes.semv = _2;
9992 MenhirLib.EngineTypes.startp = _startpos__2_;
9993 MenhirLib.EngineTypes.endp = _endpos__2_;
9994 MenhirLib.EngineTypes.next = {
9995 MenhirLib.EngineTypes.state = _menhir_s;
9996 MenhirLib.EngineTypes.semv = _1;
9997 MenhirLib.EngineTypes.startp = _startpos__1_;
9998 MenhirLib.EngineTypes.endp = _endpos__1_;
9999 MenhirLib.EngineTypes.next = _menhir_stack;
10000 };
10001 } = _menhir_stack in
10002 let _2 : 'tv_fun_after_exp = Obj.magic _2 in
10003 let _1 : 'tv_expr = Obj.magic _1 in
10004 let _startpos = _startpos__1_ in
10005 let _endpos = _endpos__2_ in
10006 let _v : 'tv_fun_after_dots =
10007 # 1592 "parser_cocci_menhir.mly"
10008 (Ast0.wrap(Ast0.Exp(_1))::_2)
10009 # 10010 "parser_cocci_menhir.ml"
10010 in
10011 _menhir_env.MenhirLib.EngineTypes.stack <- {
10012 MenhirLib.EngineTypes.state = _menhir_s;
10013 MenhirLib.EngineTypes.semv = Obj.repr _v;
10014 MenhirLib.EngineTypes.startp = _startpos;
10015 MenhirLib.EngineTypes.endp = _endpos;
10016 MenhirLib.EngineTypes.next = _menhir_stack;
10017 });
10018 (fun _menhir_env ->
10019 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10020 let {
10021 MenhirLib.EngineTypes.semv = _2;
10022 MenhirLib.EngineTypes.startp = _startpos__2_;
10023 MenhirLib.EngineTypes.endp = _endpos__2_;
10024 MenhirLib.EngineTypes.next = {
10025 MenhirLib.EngineTypes.state = _menhir_s;
10026 MenhirLib.EngineTypes.semv = _1;
10027 MenhirLib.EngineTypes.startp = _startpos__1_;
10028 MenhirLib.EngineTypes.endp = _endpos__1_;
10029 MenhirLib.EngineTypes.next = _menhir_stack;
10030 };
10031 } = _menhir_stack in
10032 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
10033 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
10034 let _startpos = _startpos__1_ in
10035 let _endpos = _endpos__2_ in
10036 let _v : 'tv_fun_after_dots =
10037 # 1593 "parser_cocci_menhir.mly"
10038 (_1@_2)
10039 # 10040 "parser_cocci_menhir.ml"
10040 in
10041 _menhir_env.MenhirLib.EngineTypes.stack <- {
10042 MenhirLib.EngineTypes.state = _menhir_s;
10043 MenhirLib.EngineTypes.semv = Obj.repr _v;
10044 MenhirLib.EngineTypes.startp = _startpos;
10045 MenhirLib.EngineTypes.endp = _endpos;
10046 MenhirLib.EngineTypes.next = _menhir_stack;
10047 });
10048 (fun _menhir_env ->
10049 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10050 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
10051 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
10052 let _endpos = _startpos in
10053 let _v : 'tv_fun_after_dots_or =
10054 # 1600 "parser_cocci_menhir.mly"
10055 ([])
10056 # 10057 "parser_cocci_menhir.ml"
10057 in
10058 _menhir_env.MenhirLib.EngineTypes.stack <- {
10059 MenhirLib.EngineTypes.state = _menhir_s;
10060 MenhirLib.EngineTypes.semv = Obj.repr _v;
10061 MenhirLib.EngineTypes.startp = _startpos;
10062 MenhirLib.EngineTypes.endp = _endpos;
10063 MenhirLib.EngineTypes.next = _menhir_stack;
10064 });
10065 (fun _menhir_env ->
10066 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10067 let {
10068 MenhirLib.EngineTypes.semv = _2;
10069 MenhirLib.EngineTypes.startp = _startpos__2_;
10070 MenhirLib.EngineTypes.endp = _endpos__2_;
10071 MenhirLib.EngineTypes.next = {
10072 MenhirLib.EngineTypes.state = _menhir_s;
10073 MenhirLib.EngineTypes.startp = _startpos__1_;
10074 MenhirLib.EngineTypes.endp = _endpos__1_;
10075 MenhirLib.EngineTypes.next = _menhir_stack;
10076 };
10077 } = _menhir_stack in
10078 let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
10079 let _startpos = _startpos__1_ in
10080 let _endpos = _endpos__2_ in
10081 let _v : 'tv_fun_after_dots_or =
10082 # 1601 "parser_cocci_menhir.mly"
10083 (_2)
10084 # 10085 "parser_cocci_menhir.ml"
10085 in
10086 _menhir_env.MenhirLib.EngineTypes.stack <- {
10087 MenhirLib.EngineTypes.state = _menhir_s;
10088 MenhirLib.EngineTypes.semv = Obj.repr _v;
10089 MenhirLib.EngineTypes.startp = _startpos;
10090 MenhirLib.EngineTypes.endp = _endpos;
10091 MenhirLib.EngineTypes.next = _menhir_stack;
10092 });
10093 (fun _menhir_env ->
10094 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10095 let {
10096 MenhirLib.EngineTypes.semv = _2;
10097 MenhirLib.EngineTypes.startp = _startpos__2_;
10098 MenhirLib.EngineTypes.endp = _endpos__2_;
10099 MenhirLib.EngineTypes.next = {
10100 MenhirLib.EngineTypes.state = _menhir_s;
10101 MenhirLib.EngineTypes.semv = _1;
10102 MenhirLib.EngineTypes.startp = _startpos__1_;
10103 MenhirLib.EngineTypes.endp = _endpos__1_;
10104 MenhirLib.EngineTypes.next = _menhir_stack;
10105 };
10106 } = _menhir_stack in
10107 let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
10108 let _1 : 'tv_expr = Obj.magic _1 in
10109 let _startpos = _startpos__1_ in
10110 let _endpos = _endpos__2_ in
10111 let _v : 'tv_fun_after_dots_or =
10112 # 1602 "parser_cocci_menhir.mly"
10113 (Ast0.wrap(Ast0.Exp(_1))::_2)
10114 # 10115 "parser_cocci_menhir.ml"
10115 in
10116 _menhir_env.MenhirLib.EngineTypes.stack <- {
10117 MenhirLib.EngineTypes.state = _menhir_s;
10118 MenhirLib.EngineTypes.semv = Obj.repr _v;
10119 MenhirLib.EngineTypes.startp = _startpos;
10120 MenhirLib.EngineTypes.endp = _endpos;
10121 MenhirLib.EngineTypes.next = _menhir_stack;
10122 });
10123 (fun _menhir_env ->
10124 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10125 let {
10126 MenhirLib.EngineTypes.semv = _2;
10127 MenhirLib.EngineTypes.startp = _startpos__2_;
10128 MenhirLib.EngineTypes.endp = _endpos__2_;
10129 MenhirLib.EngineTypes.next = {
10130 MenhirLib.EngineTypes.state = _menhir_s;
10131 MenhirLib.EngineTypes.semv = _1;
10132 MenhirLib.EngineTypes.startp = _startpos__1_;
10133 MenhirLib.EngineTypes.endp = _endpos__1_;
10134 MenhirLib.EngineTypes.next = _menhir_stack;
10135 };
10136 } = _menhir_stack in
10137 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
10138 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
10139 let _startpos = _startpos__1_ in
10140 let _endpos = _endpos__2_ in
10141 let _v : 'tv_fun_after_dots_or =
10142 # 1603 "parser_cocci_menhir.mly"
10143 (_1@_2)
10144 # 10145 "parser_cocci_menhir.ml"
10145 in
10146 _menhir_env.MenhirLib.EngineTypes.stack <- {
10147 MenhirLib.EngineTypes.state = _menhir_s;
10148 MenhirLib.EngineTypes.semv = Obj.repr _v;
10149 MenhirLib.EngineTypes.startp = _startpos;
10150 MenhirLib.EngineTypes.endp = _endpos;
10151 MenhirLib.EngineTypes.next = _menhir_stack;
10152 });
10153 (fun _menhir_env ->
10154 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10155 let {
10156 MenhirLib.EngineTypes.semv = _2;
10157 MenhirLib.EngineTypes.startp = _startpos__2_;
10158 MenhirLib.EngineTypes.endp = _endpos__2_;
10159 MenhirLib.EngineTypes.next = {
10160 MenhirLib.EngineTypes.state = _menhir_s;
10161 MenhirLib.EngineTypes.semv = _1;
10162 MenhirLib.EngineTypes.startp = _startpos__1_;
10163 MenhirLib.EngineTypes.endp = _endpos__1_;
10164 MenhirLib.EngineTypes.next = _menhir_stack;
10165 };
10166 } = _menhir_stack in
10167 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
10168 let _1 : 'tv_stm_dots = Obj.magic _1 in
10169 let _startpos = _startpos__1_ in
10170 let _endpos = _endpos__2_ in
10171 let _v : 'tv_fun_after_exp =
10172 # 1596 "parser_cocci_menhir.mly"
10173 (_1::_2)
10174 # 10175 "parser_cocci_menhir.ml"
10175 in
10176 _menhir_env.MenhirLib.EngineTypes.stack <- {
10177 MenhirLib.EngineTypes.state = _menhir_s;
10178 MenhirLib.EngineTypes.semv = Obj.repr _v;
10179 MenhirLib.EngineTypes.startp = _startpos;
10180 MenhirLib.EngineTypes.endp = _endpos;
10181 MenhirLib.EngineTypes.next = _menhir_stack;
10182 });
10183 (fun _menhir_env ->
10184 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10185 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
10186 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
10187 let _endpos = _startpos in
10188 let _v : 'tv_fun_after_exp_or =
10189 # 1606 "parser_cocci_menhir.mly"
10190 ([])
10191 # 10192 "parser_cocci_menhir.ml"
10192 in
10193 _menhir_env.MenhirLib.EngineTypes.stack <- {
10194 MenhirLib.EngineTypes.state = _menhir_s;
10195 MenhirLib.EngineTypes.semv = Obj.repr _v;
10196 MenhirLib.EngineTypes.startp = _startpos;
10197 MenhirLib.EngineTypes.endp = _endpos;
10198 MenhirLib.EngineTypes.next = _menhir_stack;
10199 });
10200 (fun _menhir_env ->
10201 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10202 let {
10203 MenhirLib.EngineTypes.semv = _2;
10204 MenhirLib.EngineTypes.startp = _startpos__2_;
10205 MenhirLib.EngineTypes.endp = _endpos__2_;
10206 MenhirLib.EngineTypes.next = {
10207 MenhirLib.EngineTypes.state = _menhir_s;
10208 MenhirLib.EngineTypes.semv = _1;
10209 MenhirLib.EngineTypes.startp = _startpos__1_;
10210 MenhirLib.EngineTypes.endp = _endpos__1_;
10211 MenhirLib.EngineTypes.next = _menhir_stack;
10212 };
10213 } = _menhir_stack in
10214 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
10215 let _1 : 'tv_stm_dots = Obj.magic _1 in
10216 let _startpos = _startpos__1_ in
10217 let _endpos = _endpos__2_ in
10218 let _v : 'tv_fun_after_exp_or =
10219 # 1607 "parser_cocci_menhir.mly"
10220 (_1::_2)
10221 # 10222 "parser_cocci_menhir.ml"
10222 in
10223 _menhir_env.MenhirLib.EngineTypes.stack <- {
10224 MenhirLib.EngineTypes.state = _menhir_s;
10225 MenhirLib.EngineTypes.semv = Obj.repr _v;
10226 MenhirLib.EngineTypes.startp = _startpos;
10227 MenhirLib.EngineTypes.endp = _endpos;
10228 MenhirLib.EngineTypes.next = _menhir_stack;
10229 });
10230 (fun _menhir_env ->
10231 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10232 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
10233 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
10234 let _endpos = _startpos in
10235 let _v : 'tv_fun_after_stm =
10236 # 1585 "parser_cocci_menhir.mly"
10237 ([])
10238 # 10239 "parser_cocci_menhir.ml"
10239 in
10240 _menhir_env.MenhirLib.EngineTypes.stack <- {
10241 MenhirLib.EngineTypes.state = _menhir_s;
10242 MenhirLib.EngineTypes.semv = Obj.repr _v;
10243 MenhirLib.EngineTypes.startp = _startpos;
10244 MenhirLib.EngineTypes.endp = _endpos;
10245 MenhirLib.EngineTypes.next = _menhir_stack;
10246 });
10247 (fun _menhir_env ->
10248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10249 let {
10250 MenhirLib.EngineTypes.semv = _2;
10251 MenhirLib.EngineTypes.startp = _startpos__2_;
10252 MenhirLib.EngineTypes.endp = _endpos__2_;
10253 MenhirLib.EngineTypes.next = {
10254 MenhirLib.EngineTypes.state = _menhir_s;
10255 MenhirLib.EngineTypes.semv = _1;
10256 MenhirLib.EngineTypes.startp = _startpos__1_;
10257 MenhirLib.EngineTypes.endp = _endpos__1_;
10258 MenhirLib.EngineTypes.next = _menhir_stack;
10259 };
10260 } = _menhir_stack in
10261 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
10262 let _1 : 'tv_stm_dots = Obj.magic _1 in
10263 let _startpos = _startpos__1_ in
10264 let _endpos = _endpos__2_ in
10265 let _v : 'tv_fun_after_stm =
10266 # 1586 "parser_cocci_menhir.mly"
10267 (_1::_2)
10268 # 10269 "parser_cocci_menhir.ml"
10269 in
10270 _menhir_env.MenhirLib.EngineTypes.stack <- {
10271 MenhirLib.EngineTypes.state = _menhir_s;
10272 MenhirLib.EngineTypes.semv = Obj.repr _v;
10273 MenhirLib.EngineTypes.startp = _startpos;
10274 MenhirLib.EngineTypes.endp = _endpos;
10275 MenhirLib.EngineTypes.next = _menhir_stack;
10276 });
10277 (fun _menhir_env ->
10278 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10279 let {
10280 MenhirLib.EngineTypes.semv = _2;
10281 MenhirLib.EngineTypes.startp = _startpos__2_;
10282 MenhirLib.EngineTypes.endp = _endpos__2_;
10283 MenhirLib.EngineTypes.next = {
10284 MenhirLib.EngineTypes.state = _menhir_s;
10285 MenhirLib.EngineTypes.semv = _1;
10286 MenhirLib.EngineTypes.startp = _startpos__1_;
10287 MenhirLib.EngineTypes.endp = _endpos__1_;
10288 MenhirLib.EngineTypes.next = _menhir_stack;
10289 };
10290 } = _menhir_stack in
10291 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
10292 let _1 : 'tv_decl_statement = Obj.magic _1 in
10293 let _startpos = _startpos__1_ in
10294 let _endpos = _endpos__2_ in
10295 let _v : 'tv_fun_after_stm =
10296 # 1587 "parser_cocci_menhir.mly"
10297 (_1@_2)
10298 # 10299 "parser_cocci_menhir.ml"
10299 in
10300 _menhir_env.MenhirLib.EngineTypes.stack <- {
10301 MenhirLib.EngineTypes.state = _menhir_s;
10302 MenhirLib.EngineTypes.semv = Obj.repr _v;
10303 MenhirLib.EngineTypes.startp = _startpos;
10304 MenhirLib.EngineTypes.endp = _endpos;
10305 MenhirLib.EngineTypes.next = _menhir_stack;
10306 });
10307 (fun _menhir_env ->
10308 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10309 let {
10310 MenhirLib.EngineTypes.state = _menhir_s;
10311 MenhirLib.EngineTypes.semv = _1;
10312 MenhirLib.EngineTypes.startp = _startpos__1_;
10313 MenhirLib.EngineTypes.endp = _endpos__1_;
10314 MenhirLib.EngineTypes.next = _menhir_stack;
10315 } = _menhir_stack in
10316 let _1 : 'tv_fun_after_stm = Obj.magic _1 in
10317 let _startpos = _startpos__1_ in
10318 let _endpos = _endpos__1_ in
10319 let _v : 'tv_fun_start =
10320 # 1582 "parser_cocci_menhir.mly"
10321 ( Ast0.wrap(Ast0.DOTS(_1)) )
10322 # 10323 "parser_cocci_menhir.ml"
10323 in
10324 _menhir_env.MenhirLib.EngineTypes.stack <- {
10325 MenhirLib.EngineTypes.state = _menhir_s;
10326 MenhirLib.EngineTypes.semv = Obj.repr _v;
10327 MenhirLib.EngineTypes.startp = _startpos;
10328 MenhirLib.EngineTypes.endp = _endpos;
10329 MenhirLib.EngineTypes.next = _menhir_stack;
10330 });
10331 (fun _menhir_env ->
10332 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10333 let {
10334 MenhirLib.EngineTypes.state = _menhir_s;
10335 MenhirLib.EngineTypes.semv = _1;
10336 MenhirLib.EngineTypes.startp = _startpos__1_;
10337 MenhirLib.EngineTypes.endp = _endpos__1_;
10338 MenhirLib.EngineTypes.next = _menhir_stack;
10339 } = _menhir_stack in
10340 let _1 : 'tv_pure_ident = Obj.magic _1 in
10341 let _startpos = _startpos__1_ in
10342 let _endpos = _endpos__1_ in
10343 let _v : 'tv_func_ident =
10344 # 1400 "parser_cocci_menhir.mly"
10345 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
10346 # 10347 "parser_cocci_menhir.ml"
10347 in
10348 _menhir_env.MenhirLib.EngineTypes.stack <- {
10349 MenhirLib.EngineTypes.state = _menhir_s;
10350 MenhirLib.EngineTypes.semv = Obj.repr _v;
10351 MenhirLib.EngineTypes.startp = _startpos;
10352 MenhirLib.EngineTypes.endp = _endpos;
10353 MenhirLib.EngineTypes.next = _menhir_stack;
10354 });
10355 (fun _menhir_env ->
10356 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10357 let {
10358 MenhirLib.EngineTypes.state = _menhir_s;
10359 MenhirLib.EngineTypes.semv = _1;
10360 MenhirLib.EngineTypes.startp = _startpos__1_;
10361 MenhirLib.EngineTypes.endp = _endpos__1_;
10362 MenhirLib.EngineTypes.next = _menhir_stack;
10363 } = _menhir_stack in
10364 let _1 : (
10365 # 61 "parser_cocci_menhir.mly"
10366 (Parse_aux.idinfo)
10367 # 10368 "parser_cocci_menhir.ml"
10368 ) = Obj.magic _1 in
10369 let _startpos = _startpos__1_ in
10370 let _endpos = _endpos__1_ in
10371 let _v : 'tv_func_ident =
10372 # 1402 "parser_cocci_menhir.mly"
10373 ( let (nm,constraints,pure,clt) = _1 in
10374 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
10375 # 10376 "parser_cocci_menhir.ml"
10376 in
10377 _menhir_env.MenhirLib.EngineTypes.stack <- {
10378 MenhirLib.EngineTypes.state = _menhir_s;
10379 MenhirLib.EngineTypes.semv = Obj.repr _v;
10380 MenhirLib.EngineTypes.startp = _startpos;
10381 MenhirLib.EngineTypes.endp = _endpos;
10382 MenhirLib.EngineTypes.next = _menhir_stack;
10383 });
10384 (fun _menhir_env ->
10385 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10386 let {
10387 MenhirLib.EngineTypes.state = _menhir_s;
10388 MenhirLib.EngineTypes.semv = _1;
10389 MenhirLib.EngineTypes.startp = _startpos__1_;
10390 MenhirLib.EngineTypes.endp = _endpos__1_;
10391 MenhirLib.EngineTypes.next = _menhir_stack;
10392 } = _menhir_stack in
10393 let _1 : (
10394 # 61 "parser_cocci_menhir.mly"
10395 (Parse_aux.idinfo)
10396 # 10397 "parser_cocci_menhir.ml"
10397 ) = Obj.magic _1 in
10398 let _startpos = _startpos__1_ in
10399 let _endpos = _endpos__1_ in
10400 let _v : 'tv_func_ident =
10401 # 1405 "parser_cocci_menhir.mly"
10402 ( let (nm,constraints,pure,clt) = _1 in
10403 Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
10404 # 10405 "parser_cocci_menhir.ml"
10405 in
10406 _menhir_env.MenhirLib.EngineTypes.stack <- {
10407 MenhirLib.EngineTypes.state = _menhir_s;
10408 MenhirLib.EngineTypes.semv = Obj.repr _v;
10409 MenhirLib.EngineTypes.startp = _startpos;
10410 MenhirLib.EngineTypes.endp = _endpos;
10411 MenhirLib.EngineTypes.next = _menhir_stack;
10412 });
10413 (fun _menhir_env ->
10414 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10415 let {
10416 MenhirLib.EngineTypes.state = _menhir_s;
10417 MenhirLib.EngineTypes.semv = _1;
10418 MenhirLib.EngineTypes.startp = _startpos__1_;
10419 MenhirLib.EngineTypes.endp = _endpos__1_;
10420 MenhirLib.EngineTypes.next = _menhir_stack;
10421 } = _menhir_stack in
10422 let _1 : (
10423 # 61 "parser_cocci_menhir.mly"
10424 (Parse_aux.idinfo)
10425 # 10426 "parser_cocci_menhir.ml"
10426 ) = Obj.magic _1 in
10427 let _startpos = _startpos__1_ in
10428 let _endpos = _endpos__1_ in
10429 let _v : 'tv_func_ident =
10430 # 1408 "parser_cocci_menhir.mly"
10431 ( let (nm,constraints,pure,clt) = _1 in
10432 Ast0.wrap
10433 (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
10434 # 10435 "parser_cocci_menhir.ml"
10435 in
10436 _menhir_env.MenhirLib.EngineTypes.stack <- {
10437 MenhirLib.EngineTypes.state = _menhir_s;
10438 MenhirLib.EngineTypes.semv = Obj.repr _v;
10439 MenhirLib.EngineTypes.startp = _startpos;
10440 MenhirLib.EngineTypes.endp = _endpos;
10441 MenhirLib.EngineTypes.next = _menhir_stack;
10442 });
10443 (fun _menhir_env ->
10444 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10445 let {
10446 MenhirLib.EngineTypes.semv = rb;
10447 MenhirLib.EngineTypes.startp = _startpos_rb_;
10448 MenhirLib.EngineTypes.endp = _endpos_rb_;
10449 MenhirLib.EngineTypes.next = {
10450 MenhirLib.EngineTypes.semv = b;
10451 MenhirLib.EngineTypes.startp = _startpos_b_;
10452 MenhirLib.EngineTypes.endp = _endpos_b_;
10453 MenhirLib.EngineTypes.next = {
10454 MenhirLib.EngineTypes.semv = lb;
10455 MenhirLib.EngineTypes.startp = _startpos_lb_;
10456 MenhirLib.EngineTypes.endp = _endpos_lb_;
10457 MenhirLib.EngineTypes.next = {
10458 MenhirLib.EngineTypes.semv = rp;
10459 MenhirLib.EngineTypes.startp = _startpos_rp_;
10460 MenhirLib.EngineTypes.endp = _endpos_rp_;
10461 MenhirLib.EngineTypes.next = {
10462 MenhirLib.EngineTypes.semv = d;
10463 MenhirLib.EngineTypes.startp = _startpos_d_;
10464 MenhirLib.EngineTypes.endp = _endpos_d_;
10465 MenhirLib.EngineTypes.next = {
10466 MenhirLib.EngineTypes.semv = lp;
10467 MenhirLib.EngineTypes.startp = _startpos_lp_;
10468 MenhirLib.EngineTypes.endp = _endpos_lp_;
10469 MenhirLib.EngineTypes.next = {
10470 MenhirLib.EngineTypes.semv = i;
10471 MenhirLib.EngineTypes.startp = _startpos_i_;
10472 MenhirLib.EngineTypes.endp = _endpos_i_;
10473 MenhirLib.EngineTypes.next = {
10474 MenhirLib.EngineTypes.startp = _startpos__2_;
10475 MenhirLib.EngineTypes.endp = _endpos__2_;
10476 MenhirLib.EngineTypes.next = {
10477 MenhirLib.EngineTypes.state = _menhir_s;
10478 MenhirLib.EngineTypes.semv = f;
10479 MenhirLib.EngineTypes.startp = _startpos_f_;
10480 MenhirLib.EngineTypes.endp = _endpos_f_;
10481 MenhirLib.EngineTypes.next = _menhir_stack;
10482 };
10483 };
10484 };
10485 };
10486 };
10487 };
10488 };
10489 };
10490 } = _menhir_stack in
10491 let rb : (
10492 # 100 "parser_cocci_menhir.mly"
10493 (Data.clt)
10494 # 10495 "parser_cocci_menhir.ml"
10495 ) = Obj.magic rb in
10496 let b : 'tv_fun_start = Obj.magic b in
10497 let lb : (
10498 # 100 "parser_cocci_menhir.mly"
10499 (Data.clt)
10500 # 10501 "parser_cocci_menhir.ml"
10501 ) = Obj.magic lb in
10502 let rp : (
10503 # 76 "parser_cocci_menhir.mly"
10504 (Data.clt)
10505 # 10506 "parser_cocci_menhir.ml"
10506 ) = Obj.magic rp in
10507 let d : 'tv_decl_list_decl_ = Obj.magic d in
10508 let lp : (
10509 # 75 "parser_cocci_menhir.mly"
10510 (Data.clt)
10511 # 10512 "parser_cocci_menhir.ml"
10512 ) = Obj.magic lp in
10513 let i : 'tv_func_ident = Obj.magic i in
10514 let f : 'tv_fninfo = Obj.magic f in
10515 let _startpos = _startpos_f_ in
10516 let _endpos = _endpos_rb_ in
10517 let _v : 'tv_fundecl =
10518 # 715 "parser_cocci_menhir.mly"
10519 ( Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()),
10520 f, i,
10521 P.clt2mcode "(" lp, d,
10522 P.clt2mcode ")" rp,
10523 P.clt2mcode "{" lb, b,
10524 P.clt2mcode "}" rb)) )
10525 # 10526 "parser_cocci_menhir.ml"
10526 in
10527 _menhir_env.MenhirLib.EngineTypes.stack <- {
10528 MenhirLib.EngineTypes.state = _menhir_s;
10529 MenhirLib.EngineTypes.semv = Obj.repr _v;
10530 MenhirLib.EngineTypes.startp = _startpos;
10531 MenhirLib.EngineTypes.endp = _endpos;
10532 MenhirLib.EngineTypes.next = _menhir_stack;
10533 });
10534 (fun _menhir_env ->
10535 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10536 let {
10537 MenhirLib.EngineTypes.semv = pt;
10538 MenhirLib.EngineTypes.startp = _startpos_pt_;
10539 MenhirLib.EngineTypes.endp = _endpos_pt_;
10540 MenhirLib.EngineTypes.next = {
10541 MenhirLib.EngineTypes.semv = rp;
10542 MenhirLib.EngineTypes.startp = _startpos_rp_;
10543 MenhirLib.EngineTypes.endp = _endpos_rp_;
10544 MenhirLib.EngineTypes.next = {
10545 MenhirLib.EngineTypes.semv = d;
10546 MenhirLib.EngineTypes.startp = _startpos_d_;
10547 MenhirLib.EngineTypes.endp = _endpos_d_;
10548 MenhirLib.EngineTypes.next = {
10549 MenhirLib.EngineTypes.semv = lp;
10550 MenhirLib.EngineTypes.startp = _startpos_lp_;
10551 MenhirLib.EngineTypes.endp = _endpos_lp_;
10552 MenhirLib.EngineTypes.next = {
10553 MenhirLib.EngineTypes.semv = id;
10554 MenhirLib.EngineTypes.startp = _startpos_id_;
10555 MenhirLib.EngineTypes.endp = _endpos_id_;
10556 MenhirLib.EngineTypes.next = {
10557 MenhirLib.EngineTypes.state = _menhir_s;
10558 MenhirLib.EngineTypes.semv = t;
10559 MenhirLib.EngineTypes.startp = _startpos_t_;
10560 MenhirLib.EngineTypes.endp = _endpos_t_;
10561 MenhirLib.EngineTypes.next = _menhir_stack;
10562 };
10563 };
10564 };
10565 };
10566 };
10567 } = _menhir_stack in
10568 let pt : (
10569 # 106 "parser_cocci_menhir.mly"
10570 (Data.clt)
10571 # 10572 "parser_cocci_menhir.ml"
10572 ) = Obj.magic pt in
10573 let rp : (
10574 # 76 "parser_cocci_menhir.mly"
10575 (Data.clt)
10576 # 10577 "parser_cocci_menhir.ml"
10577 ) = Obj.magic rp in
10578 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
10579 let lp : (
10580 # 75 "parser_cocci_menhir.mly"
10581 (Data.clt)
10582 # 10583 "parser_cocci_menhir.ml"
10583 ) = Obj.magic lp in
10584 let id : 'tv_func_ident = Obj.magic id in
10585 let t : 'tv_ctype = Obj.magic t in
10586 let _startpos = _startpos_t_ in
10587 let _endpos = _endpos_pt_ in
10588 let _v : 'tv_funproto = let s =
10589
10590 # 39 "standard.mly"
10591 ( None )
10592 # 10593 "parser_cocci_menhir.ml"
10593
10594 in
10595
10596 # 692 "parser_cocci_menhir.mly"
10597 ( Ast0.wrap
10598 (Ast0.UnInit
10599 (s,
10600 Ast0.wrap
10601 (Ast0.FunctionType(Some t,
10602 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
10603 id, P.clt2mcode ";" pt)) )
10604 # 10605 "parser_cocci_menhir.ml"
10605 in
10606 _menhir_env.MenhirLib.EngineTypes.stack <- {
10607 MenhirLib.EngineTypes.state = _menhir_s;
10608 MenhirLib.EngineTypes.semv = Obj.repr _v;
10609 MenhirLib.EngineTypes.startp = _startpos;
10610 MenhirLib.EngineTypes.endp = _endpos;
10611 MenhirLib.EngineTypes.next = _menhir_stack;
10612 });
10613 (fun _menhir_env ->
10614 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10615 let {
10616 MenhirLib.EngineTypes.semv = pt;
10617 MenhirLib.EngineTypes.startp = _startpos_pt_;
10618 MenhirLib.EngineTypes.endp = _endpos_pt_;
10619 MenhirLib.EngineTypes.next = {
10620 MenhirLib.EngineTypes.semv = rp;
10621 MenhirLib.EngineTypes.startp = _startpos_rp_;
10622 MenhirLib.EngineTypes.endp = _endpos_rp_;
10623 MenhirLib.EngineTypes.next = {
10624 MenhirLib.EngineTypes.semv = d;
10625 MenhirLib.EngineTypes.startp = _startpos_d_;
10626 MenhirLib.EngineTypes.endp = _endpos_d_;
10627 MenhirLib.EngineTypes.next = {
10628 MenhirLib.EngineTypes.semv = lp;
10629 MenhirLib.EngineTypes.startp = _startpos_lp_;
10630 MenhirLib.EngineTypes.endp = _endpos_lp_;
10631 MenhirLib.EngineTypes.next = {
10632 MenhirLib.EngineTypes.semv = id;
10633 MenhirLib.EngineTypes.startp = _startpos_id_;
10634 MenhirLib.EngineTypes.endp = _endpos_id_;
10635 MenhirLib.EngineTypes.next = {
10636 MenhirLib.EngineTypes.semv = t;
10637 MenhirLib.EngineTypes.startp = _startpos_t_;
10638 MenhirLib.EngineTypes.endp = _endpos_t_;
10639 MenhirLib.EngineTypes.next = {
10640 MenhirLib.EngineTypes.state = _menhir_s;
10641 MenhirLib.EngineTypes.semv = x0;
10642 MenhirLib.EngineTypes.startp = _startpos_x0_;
10643 MenhirLib.EngineTypes.endp = _endpos_x0_;
10644 MenhirLib.EngineTypes.next = _menhir_stack;
10645 };
10646 };
10647 };
10648 };
10649 };
10650 };
10651 } = _menhir_stack in
10652 let pt : (
10653 # 106 "parser_cocci_menhir.mly"
10654 (Data.clt)
10655 # 10656 "parser_cocci_menhir.ml"
10656 ) = Obj.magic pt in
10657 let rp : (
10658 # 76 "parser_cocci_menhir.mly"
10659 (Data.clt)
10660 # 10661 "parser_cocci_menhir.ml"
10661 ) = Obj.magic rp in
10662 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
10663 let lp : (
10664 # 75 "parser_cocci_menhir.mly"
10665 (Data.clt)
10666 # 10667 "parser_cocci_menhir.ml"
10667 ) = Obj.magic lp in
10668 let id : 'tv_func_ident = Obj.magic id in
10669 let t : 'tv_ctype = Obj.magic t in
10670 let x0 : 'tv_storage = Obj.magic x0 in
10671 let _startpos = _startpos_x0_ in
10672 let _endpos = _endpos_pt_ in
10673 let _v : 'tv_funproto = let s =
10674 let x = x0 in
10675
10676 # 41 "standard.mly"
10677 ( Some x )
10678 # 10679 "parser_cocci_menhir.ml"
10679
10680 in
10681
10682 # 692 "parser_cocci_menhir.mly"
10683 ( Ast0.wrap
10684 (Ast0.UnInit
10685 (s,
10686 Ast0.wrap
10687 (Ast0.FunctionType(Some t,
10688 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
10689 id, P.clt2mcode ";" pt)) )
10690 # 10691 "parser_cocci_menhir.ml"
10691 in
10692 _menhir_env.MenhirLib.EngineTypes.stack <- {
10693 MenhirLib.EngineTypes.state = _menhir_s;
10694 MenhirLib.EngineTypes.semv = Obj.repr _v;
10695 MenhirLib.EngineTypes.startp = _startpos;
10696 MenhirLib.EngineTypes.endp = _endpos;
10697 MenhirLib.EngineTypes.next = _menhir_stack;
10698 });
10699 (fun _menhir_env ->
10700 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10701 let {
10702 MenhirLib.EngineTypes.semv = pt;
10703 MenhirLib.EngineTypes.startp = _startpos_pt_;
10704 MenhirLib.EngineTypes.endp = _endpos_pt_;
10705 MenhirLib.EngineTypes.next = {
10706 MenhirLib.EngineTypes.semv = rp;
10707 MenhirLib.EngineTypes.startp = _startpos_rp_;
10708 MenhirLib.EngineTypes.endp = _endpos_rp_;
10709 MenhirLib.EngineTypes.next = {
10710 MenhirLib.EngineTypes.semv = d;
10711 MenhirLib.EngineTypes.startp = _startpos_d_;
10712 MenhirLib.EngineTypes.endp = _endpos_d_;
10713 MenhirLib.EngineTypes.next = {
10714 MenhirLib.EngineTypes.semv = lp;
10715 MenhirLib.EngineTypes.startp = _startpos_lp_;
10716 MenhirLib.EngineTypes.endp = _endpos_lp_;
10717 MenhirLib.EngineTypes.next = {
10718 MenhirLib.EngineTypes.semv = id;
10719 MenhirLib.EngineTypes.startp = _startpos_id_;
10720 MenhirLib.EngineTypes.endp = _endpos_id_;
10721 MenhirLib.EngineTypes.next = {
10722 MenhirLib.EngineTypes.state = _menhir_s;
10723 MenhirLib.EngineTypes.semv = t;
10724 MenhirLib.EngineTypes.startp = _startpos_t_;
10725 MenhirLib.EngineTypes.endp = _endpos_t_;
10726 MenhirLib.EngineTypes.next = _menhir_stack;
10727 };
10728 };
10729 };
10730 };
10731 };
10732 } = _menhir_stack in
10733 let pt : (
10734 # 106 "parser_cocci_menhir.mly"
10735 (Data.clt)
10736 # 10737 "parser_cocci_menhir.ml"
10737 ) = Obj.magic pt in
10738 let rp : (
10739 # 76 "parser_cocci_menhir.mly"
10740 (Data.clt)
10741 # 10742 "parser_cocci_menhir.ml"
10742 ) = Obj.magic rp in
10743 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
10744 let lp : (
10745 # 75 "parser_cocci_menhir.mly"
10746 (Data.clt)
10747 # 10748 "parser_cocci_menhir.ml"
10748 ) = Obj.magic lp in
10749 let id : 'tv_func_ident = Obj.magic id in
10750 let t : (
10751 # 50 "parser_cocci_menhir.mly"
10752 (Data.clt)
10753 # 10754 "parser_cocci_menhir.ml"
10754 ) = Obj.magic t in
10755 let _startpos = _startpos_t_ in
10756 let _endpos = _endpos_pt_ in
10757 let _v : 'tv_funproto = let s =
10758
10759 # 39 "standard.mly"
10760 ( None )
10761 # 10762 "parser_cocci_menhir.ml"
10762
10763 in
10764
10765 # 701 "parser_cocci_menhir.mly"
10766 ( let t = Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)) in
10767 Ast0.wrap
10768 (Ast0.UnInit
10769 (s,
10770 Ast0.wrap
10771 (Ast0.FunctionType(Some t,
10772 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
10773 id, P.clt2mcode ";" pt)) )
10774 # 10775 "parser_cocci_menhir.ml"
10775 in
10776 _menhir_env.MenhirLib.EngineTypes.stack <- {
10777 MenhirLib.EngineTypes.state = _menhir_s;
10778 MenhirLib.EngineTypes.semv = Obj.repr _v;
10779 MenhirLib.EngineTypes.startp = _startpos;
10780 MenhirLib.EngineTypes.endp = _endpos;
10781 MenhirLib.EngineTypes.next = _menhir_stack;
10782 });
10783 (fun _menhir_env ->
10784 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10785 let {
10786 MenhirLib.EngineTypes.semv = pt;
10787 MenhirLib.EngineTypes.startp = _startpos_pt_;
10788 MenhirLib.EngineTypes.endp = _endpos_pt_;
10789 MenhirLib.EngineTypes.next = {
10790 MenhirLib.EngineTypes.semv = rp;
10791 MenhirLib.EngineTypes.startp = _startpos_rp_;
10792 MenhirLib.EngineTypes.endp = _endpos_rp_;
10793 MenhirLib.EngineTypes.next = {
10794 MenhirLib.EngineTypes.semv = d;
10795 MenhirLib.EngineTypes.startp = _startpos_d_;
10796 MenhirLib.EngineTypes.endp = _endpos_d_;
10797 MenhirLib.EngineTypes.next = {
10798 MenhirLib.EngineTypes.semv = lp;
10799 MenhirLib.EngineTypes.startp = _startpos_lp_;
10800 MenhirLib.EngineTypes.endp = _endpos_lp_;
10801 MenhirLib.EngineTypes.next = {
10802 MenhirLib.EngineTypes.semv = id;
10803 MenhirLib.EngineTypes.startp = _startpos_id_;
10804 MenhirLib.EngineTypes.endp = _endpos_id_;
10805 MenhirLib.EngineTypes.next = {
10806 MenhirLib.EngineTypes.semv = t;
10807 MenhirLib.EngineTypes.startp = _startpos_t_;
10808 MenhirLib.EngineTypes.endp = _endpos_t_;
10809 MenhirLib.EngineTypes.next = {
10810 MenhirLib.EngineTypes.state = _menhir_s;
10811 MenhirLib.EngineTypes.semv = x0;
10812 MenhirLib.EngineTypes.startp = _startpos_x0_;
10813 MenhirLib.EngineTypes.endp = _endpos_x0_;
10814 MenhirLib.EngineTypes.next = _menhir_stack;
10815 };
10816 };
10817 };
10818 };
10819 };
10820 };
10821 } = _menhir_stack in
10822 let pt : (
10823 # 106 "parser_cocci_menhir.mly"
10824 (Data.clt)
10825 # 10826 "parser_cocci_menhir.ml"
10826 ) = Obj.magic pt in
10827 let rp : (
10828 # 76 "parser_cocci_menhir.mly"
10829 (Data.clt)
10830 # 10831 "parser_cocci_menhir.ml"
10831 ) = Obj.magic rp in
10832 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
10833 let lp : (
10834 # 75 "parser_cocci_menhir.mly"
10835 (Data.clt)
10836 # 10837 "parser_cocci_menhir.ml"
10837 ) = Obj.magic lp in
10838 let id : 'tv_func_ident = Obj.magic id in
10839 let t : (
10840 # 50 "parser_cocci_menhir.mly"
10841 (Data.clt)
10842 # 10843 "parser_cocci_menhir.ml"
10843 ) = Obj.magic t in
10844 let x0 : 'tv_storage = Obj.magic x0 in
10845 let _startpos = _startpos_x0_ in
10846 let _endpos = _endpos_pt_ in
10847 let _v : 'tv_funproto = let s =
10848 let x = x0 in
10849
10850 # 41 "standard.mly"
10851 ( Some x )
10852 # 10853 "parser_cocci_menhir.ml"
10853
10854 in
10855
10856 # 701 "parser_cocci_menhir.mly"
10857 ( let t = Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.VoidType t, None)) in
10858 Ast0.wrap
10859 (Ast0.UnInit
10860 (s,
10861 Ast0.wrap
10862 (Ast0.FunctionType(Some t,
10863 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
10864 id, P.clt2mcode ";" pt)) )
10865 # 10866 "parser_cocci_menhir.ml"
10866 in
10867 _menhir_env.MenhirLib.EngineTypes.stack <- {
10868 MenhirLib.EngineTypes.state = _menhir_s;
10869 MenhirLib.EngineTypes.semv = Obj.repr _v;
10870 MenhirLib.EngineTypes.startp = _startpos;
10871 MenhirLib.EngineTypes.endp = _endpos;
10872 MenhirLib.EngineTypes.next = _menhir_stack;
10873 });
10874 (fun _menhir_env ->
10875 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10876 let {
10877 MenhirLib.EngineTypes.state = _menhir_s;
10878 MenhirLib.EngineTypes.semv = q;
10879 MenhirLib.EngineTypes.startp = _startpos_q_;
10880 MenhirLib.EngineTypes.endp = _endpos_q_;
10881 MenhirLib.EngineTypes.next = _menhir_stack;
10882 } = _menhir_stack in
10883 let q : 'tv_ctype_qualif = Obj.magic q in
10884 let _startpos = _startpos_q_ in
10885 let _endpos = _endpos_q_ in
10886 let _v : 'tv_generic_ctype =
10887 # 442 "parser_cocci_menhir.mly"
10888 ( Ast0.wrap(Ast0.ImplicitInt(q)) )
10889 # 10890 "parser_cocci_menhir.ml"
10890 in
10891 _menhir_env.MenhirLib.EngineTypes.stack <- {
10892 MenhirLib.EngineTypes.state = _menhir_s;
10893 MenhirLib.EngineTypes.semv = Obj.repr _v;
10894 MenhirLib.EngineTypes.startp = _startpos;
10895 MenhirLib.EngineTypes.endp = _endpos;
10896 MenhirLib.EngineTypes.next = _menhir_stack;
10897 });
10898 (fun _menhir_env ->
10899 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10900 let {
10901 MenhirLib.EngineTypes.state = _menhir_s;
10902 MenhirLib.EngineTypes.semv = ty;
10903 MenhirLib.EngineTypes.startp = _startpos_ty_;
10904 MenhirLib.EngineTypes.endp = _endpos_ty_;
10905 MenhirLib.EngineTypes.next = _menhir_stack;
10906 } = _menhir_stack in
10907 let ty : (
10908 # 49 "parser_cocci_menhir.mly"
10909 (Data.clt)
10910 # 10911 "parser_cocci_menhir.ml"
10911 ) = Obj.magic ty in
10912 let _startpos = _startpos_ty_ in
10913 let _endpos = _endpos_ty_ in
10914 let _v : 'tv_generic_ctype = let q =
10915
10916 # 39 "standard.mly"
10917 ( None )
10918 # 10919 "parser_cocci_menhir.ml"
10919
10920 in
10921
10922 # 444 "parser_cocci_menhir.mly"
10923 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.CharType ty, q)) )
10924 # 10925 "parser_cocci_menhir.ml"
10925 in
10926 _menhir_env.MenhirLib.EngineTypes.stack <- {
10927 MenhirLib.EngineTypes.state = _menhir_s;
10928 MenhirLib.EngineTypes.semv = Obj.repr _v;
10929 MenhirLib.EngineTypes.startp = _startpos;
10930 MenhirLib.EngineTypes.endp = _endpos;
10931 MenhirLib.EngineTypes.next = _menhir_stack;
10932 });
10933 (fun _menhir_env ->
10934 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10935 let {
10936 MenhirLib.EngineTypes.semv = ty;
10937 MenhirLib.EngineTypes.startp = _startpos_ty_;
10938 MenhirLib.EngineTypes.endp = _endpos_ty_;
10939 MenhirLib.EngineTypes.next = {
10940 MenhirLib.EngineTypes.state = _menhir_s;
10941 MenhirLib.EngineTypes.semv = x0;
10942 MenhirLib.EngineTypes.startp = _startpos_x0_;
10943 MenhirLib.EngineTypes.endp = _endpos_x0_;
10944 MenhirLib.EngineTypes.next = _menhir_stack;
10945 };
10946 } = _menhir_stack in
10947 let ty : (
10948 # 49 "parser_cocci_menhir.mly"
10949 (Data.clt)
10950 # 10951 "parser_cocci_menhir.ml"
10951 ) = Obj.magic ty in
10952 let x0 : 'tv_ctype_qualif = Obj.magic x0 in
10953 let _startpos = _startpos_x0_ in
10954 let _endpos = _endpos_ty_ in
10955 let _v : 'tv_generic_ctype = let q =
10956 let x = x0 in
10957
10958 # 41 "standard.mly"
10959 ( Some x )
10960 # 10961 "parser_cocci_menhir.ml"
10961
10962 in
10963
10964 # 444 "parser_cocci_menhir.mly"
10965 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.CharType ty, q)) )
10966 # 10967 "parser_cocci_menhir.ml"
10967 in
10968 _menhir_env.MenhirLib.EngineTypes.stack <- {
10969 MenhirLib.EngineTypes.state = _menhir_s;
10970 MenhirLib.EngineTypes.semv = Obj.repr _v;
10971 MenhirLib.EngineTypes.startp = _startpos;
10972 MenhirLib.EngineTypes.endp = _endpos;
10973 MenhirLib.EngineTypes.next = _menhir_stack;
10974 });
10975 (fun _menhir_env ->
10976 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10977 let {
10978 MenhirLib.EngineTypes.state = _menhir_s;
10979 MenhirLib.EngineTypes.semv = ty;
10980 MenhirLib.EngineTypes.startp = _startpos_ty_;
10981 MenhirLib.EngineTypes.endp = _endpos_ty_;
10982 MenhirLib.EngineTypes.next = _menhir_stack;
10983 } = _menhir_stack in
10984 let ty : (
10985 # 49 "parser_cocci_menhir.mly"
10986 (Data.clt)
10987 # 10988 "parser_cocci_menhir.ml"
10988 ) = Obj.magic ty in
10989 let _startpos = _startpos_ty_ in
10990 let _endpos = _endpos_ty_ in
10991 let _v : 'tv_generic_ctype = let q =
10992
10993 # 39 "standard.mly"
10994 ( None )
10995 # 10996 "parser_cocci_menhir.ml"
10996
10997 in
10998
10999 # 446 "parser_cocci_menhir.mly"
11000 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.ShortType ty, q)) )
11001 # 11002 "parser_cocci_menhir.ml"
11002 in
11003 _menhir_env.MenhirLib.EngineTypes.stack <- {
11004 MenhirLib.EngineTypes.state = _menhir_s;
11005 MenhirLib.EngineTypes.semv = Obj.repr _v;
11006 MenhirLib.EngineTypes.startp = _startpos;
11007 MenhirLib.EngineTypes.endp = _endpos;
11008 MenhirLib.EngineTypes.next = _menhir_stack;
11009 });
11010 (fun _menhir_env ->
11011 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11012 let {
11013 MenhirLib.EngineTypes.semv = ty;
11014 MenhirLib.EngineTypes.startp = _startpos_ty_;
11015 MenhirLib.EngineTypes.endp = _endpos_ty_;
11016 MenhirLib.EngineTypes.next = {
11017 MenhirLib.EngineTypes.state = _menhir_s;
11018 MenhirLib.EngineTypes.semv = x0;
11019 MenhirLib.EngineTypes.startp = _startpos_x0_;
11020 MenhirLib.EngineTypes.endp = _endpos_x0_;
11021 MenhirLib.EngineTypes.next = _menhir_stack;
11022 };
11023 } = _menhir_stack in
11024 let ty : (
11025 # 49 "parser_cocci_menhir.mly"
11026 (Data.clt)
11027 # 11028 "parser_cocci_menhir.ml"
11028 ) = Obj.magic ty in
11029 let x0 : 'tv_ctype_qualif = Obj.magic x0 in
11030 let _startpos = _startpos_x0_ in
11031 let _endpos = _endpos_ty_ in
11032 let _v : 'tv_generic_ctype = let q =
11033 let x = x0 in
11034
11035 # 41 "standard.mly"
11036 ( Some x )
11037 # 11038 "parser_cocci_menhir.ml"
11038
11039 in
11040
11041 # 446 "parser_cocci_menhir.mly"
11042 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.ShortType ty, q)) )
11043 # 11044 "parser_cocci_menhir.ml"
11044 in
11045 _menhir_env.MenhirLib.EngineTypes.stack <- {
11046 MenhirLib.EngineTypes.state = _menhir_s;
11047 MenhirLib.EngineTypes.semv = Obj.repr _v;
11048 MenhirLib.EngineTypes.startp = _startpos;
11049 MenhirLib.EngineTypes.endp = _endpos;
11050 MenhirLib.EngineTypes.next = _menhir_stack;
11051 });
11052 (fun _menhir_env ->
11053 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11054 let {
11055 MenhirLib.EngineTypes.state = _menhir_s;
11056 MenhirLib.EngineTypes.semv = ty;
11057 MenhirLib.EngineTypes.startp = _startpos_ty_;
11058 MenhirLib.EngineTypes.endp = _endpos_ty_;
11059 MenhirLib.EngineTypes.next = _menhir_stack;
11060 } = _menhir_stack in
11061 let ty : (
11062 # 49 "parser_cocci_menhir.mly"
11063 (Data.clt)
11064 # 11065 "parser_cocci_menhir.ml"
11065 ) = Obj.magic ty in
11066 let _startpos = _startpos_ty_ in
11067 let _endpos = _endpos_ty_ in
11068 let _v : 'tv_generic_ctype = let q =
11069
11070 # 39 "standard.mly"
11071 ( None )
11072 # 11073 "parser_cocci_menhir.ml"
11073
11074 in
11075
11076 # 448 "parser_cocci_menhir.mly"
11077 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.IntType ty, q)) )
11078 # 11079 "parser_cocci_menhir.ml"
11079 in
11080 _menhir_env.MenhirLib.EngineTypes.stack <- {
11081 MenhirLib.EngineTypes.state = _menhir_s;
11082 MenhirLib.EngineTypes.semv = Obj.repr _v;
11083 MenhirLib.EngineTypes.startp = _startpos;
11084 MenhirLib.EngineTypes.endp = _endpos;
11085 MenhirLib.EngineTypes.next = _menhir_stack;
11086 });
11087 (fun _menhir_env ->
11088 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11089 let {
11090 MenhirLib.EngineTypes.semv = ty;
11091 MenhirLib.EngineTypes.startp = _startpos_ty_;
11092 MenhirLib.EngineTypes.endp = _endpos_ty_;
11093 MenhirLib.EngineTypes.next = {
11094 MenhirLib.EngineTypes.state = _menhir_s;
11095 MenhirLib.EngineTypes.semv = x0;
11096 MenhirLib.EngineTypes.startp = _startpos_x0_;
11097 MenhirLib.EngineTypes.endp = _endpos_x0_;
11098 MenhirLib.EngineTypes.next = _menhir_stack;
11099 };
11100 } = _menhir_stack in
11101 let ty : (
11102 # 49 "parser_cocci_menhir.mly"
11103 (Data.clt)
11104 # 11105 "parser_cocci_menhir.ml"
11105 ) = Obj.magic ty in
11106 let x0 : 'tv_ctype_qualif = Obj.magic x0 in
11107 let _startpos = _startpos_x0_ in
11108 let _endpos = _endpos_ty_ in
11109 let _v : 'tv_generic_ctype = let q =
11110 let x = x0 in
11111
11112 # 41 "standard.mly"
11113 ( Some x )
11114 # 11115 "parser_cocci_menhir.ml"
11115
11116 in
11117
11118 # 448 "parser_cocci_menhir.mly"
11119 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.IntType ty, q)) )
11120 # 11121 "parser_cocci_menhir.ml"
11121 in
11122 _menhir_env.MenhirLib.EngineTypes.stack <- {
11123 MenhirLib.EngineTypes.state = _menhir_s;
11124 MenhirLib.EngineTypes.semv = Obj.repr _v;
11125 MenhirLib.EngineTypes.startp = _startpos;
11126 MenhirLib.EngineTypes.endp = _endpos;
11127 MenhirLib.EngineTypes.next = _menhir_stack;
11128 });
11129 (fun _menhir_env ->
11130 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11131 let {
11132 MenhirLib.EngineTypes.state = _menhir_s;
11133 MenhirLib.EngineTypes.semv = t;
11134 MenhirLib.EngineTypes.startp = _startpos_t_;
11135 MenhirLib.EngineTypes.endp = _endpos_t_;
11136 MenhirLib.EngineTypes.next = _menhir_stack;
11137 } = _menhir_stack in
11138 let t : (
11139 # 49 "parser_cocci_menhir.mly"
11140 (Data.clt)
11141 # 11142 "parser_cocci_menhir.ml"
11142 ) = Obj.magic t in
11143 let _startpos = _startpos_t_ in
11144 let _endpos = _endpos_t_ in
11145 let _v : 'tv_generic_ctype =
11146 # 450 "parser_cocci_menhir.mly"
11147 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.DoubleType t, None)) )
11148 # 11149 "parser_cocci_menhir.ml"
11149 in
11150 _menhir_env.MenhirLib.EngineTypes.stack <- {
11151 MenhirLib.EngineTypes.state = _menhir_s;
11152 MenhirLib.EngineTypes.semv = Obj.repr _v;
11153 MenhirLib.EngineTypes.startp = _startpos;
11154 MenhirLib.EngineTypes.endp = _endpos;
11155 MenhirLib.EngineTypes.next = _menhir_stack;
11156 });
11157 (fun _menhir_env ->
11158 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11159 let {
11160 MenhirLib.EngineTypes.state = _menhir_s;
11161 MenhirLib.EngineTypes.semv = t;
11162 MenhirLib.EngineTypes.startp = _startpos_t_;
11163 MenhirLib.EngineTypes.endp = _endpos_t_;
11164 MenhirLib.EngineTypes.next = _menhir_stack;
11165 } = _menhir_stack in
11166 let t : (
11167 # 49 "parser_cocci_menhir.mly"
11168 (Data.clt)
11169 # 11170 "parser_cocci_menhir.ml"
11170 ) = Obj.magic t in
11171 let _startpos = _startpos_t_ in
11172 let _endpos = _endpos_t_ in
11173 let _v : 'tv_generic_ctype =
11174 # 452 "parser_cocci_menhir.mly"
11175 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.FloatType t, None)) )
11176 # 11177 "parser_cocci_menhir.ml"
11177 in
11178 _menhir_env.MenhirLib.EngineTypes.stack <- {
11179 MenhirLib.EngineTypes.state = _menhir_s;
11180 MenhirLib.EngineTypes.semv = Obj.repr _v;
11181 MenhirLib.EngineTypes.startp = _startpos;
11182 MenhirLib.EngineTypes.endp = _endpos;
11183 MenhirLib.EngineTypes.next = _menhir_stack;
11184 });
11185 (fun _menhir_env ->
11186 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11187 let {
11188 MenhirLib.EngineTypes.state = _menhir_s;
11189 MenhirLib.EngineTypes.semv = ty;
11190 MenhirLib.EngineTypes.startp = _startpos_ty_;
11191 MenhirLib.EngineTypes.endp = _endpos_ty_;
11192 MenhirLib.EngineTypes.next = _menhir_stack;
11193 } = _menhir_stack in
11194 let ty : (
11195 # 49 "parser_cocci_menhir.mly"
11196 (Data.clt)
11197 # 11198 "parser_cocci_menhir.ml"
11198 ) = Obj.magic ty in
11199 let _startpos = _startpos_ty_ in
11200 let _endpos = _endpos_ty_ in
11201 let _v : 'tv_generic_ctype = let q =
11202
11203 # 39 "standard.mly"
11204 ( None )
11205 # 11206 "parser_cocci_menhir.ml"
11206
11207 in
11208
11209 # 454 "parser_cocci_menhir.mly"
11210 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.LongType ty, q)) )
11211 # 11212 "parser_cocci_menhir.ml"
11212 in
11213 _menhir_env.MenhirLib.EngineTypes.stack <- {
11214 MenhirLib.EngineTypes.state = _menhir_s;
11215 MenhirLib.EngineTypes.semv = Obj.repr _v;
11216 MenhirLib.EngineTypes.startp = _startpos;
11217 MenhirLib.EngineTypes.endp = _endpos;
11218 MenhirLib.EngineTypes.next = _menhir_stack;
11219 });
11220 (fun _menhir_env ->
11221 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11222 let {
11223 MenhirLib.EngineTypes.semv = ty;
11224 MenhirLib.EngineTypes.startp = _startpos_ty_;
11225 MenhirLib.EngineTypes.endp = _endpos_ty_;
11226 MenhirLib.EngineTypes.next = {
11227 MenhirLib.EngineTypes.state = _menhir_s;
11228 MenhirLib.EngineTypes.semv = x0;
11229 MenhirLib.EngineTypes.startp = _startpos_x0_;
11230 MenhirLib.EngineTypes.endp = _endpos_x0_;
11231 MenhirLib.EngineTypes.next = _menhir_stack;
11232 };
11233 } = _menhir_stack in
11234 let ty : (
11235 # 49 "parser_cocci_menhir.mly"
11236 (Data.clt)
11237 # 11238 "parser_cocci_menhir.ml"
11238 ) = Obj.magic ty in
11239 let x0 : 'tv_ctype_qualif = Obj.magic x0 in
11240 let _startpos = _startpos_x0_ in
11241 let _endpos = _endpos_ty_ in
11242 let _v : 'tv_generic_ctype = let q =
11243 let x = x0 in
11244
11245 # 41 "standard.mly"
11246 ( Some x )
11247 # 11248 "parser_cocci_menhir.ml"
11248
11249 in
11250
11251 # 454 "parser_cocci_menhir.mly"
11252 ( Ast0.wrap(Ast0.BaseType(P.clt2mcode Ast.LongType ty, q)) )
11253 # 11254 "parser_cocci_menhir.ml"
11254 in
11255 _menhir_env.MenhirLib.EngineTypes.stack <- {
11256 MenhirLib.EngineTypes.state = _menhir_s;
11257 MenhirLib.EngineTypes.semv = Obj.repr _v;
11258 MenhirLib.EngineTypes.startp = _startpos;
11259 MenhirLib.EngineTypes.endp = _endpos;
11260 MenhirLib.EngineTypes.next = _menhir_stack;
11261 });
11262 (fun _menhir_env ->
11263 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11264 let {
11265 MenhirLib.EngineTypes.semv = i;
11266 MenhirLib.EngineTypes.startp = _startpos_i_;
11267 MenhirLib.EngineTypes.endp = _endpos_i_;
11268 MenhirLib.EngineTypes.next = {
11269 MenhirLib.EngineTypes.state = _menhir_s;
11270 MenhirLib.EngineTypes.semv = s;
11271 MenhirLib.EngineTypes.startp = _startpos_s_;
11272 MenhirLib.EngineTypes.endp = _endpos_s_;
11273 MenhirLib.EngineTypes.next = _menhir_stack;
11274 };
11275 } = _menhir_stack in
11276 let i : 'tv_ident = Obj.magic i in
11277 let s : 'tv_struct_or_union = Obj.magic s in
11278 let _startpos = _startpos_s_ in
11279 let _endpos = _endpos_i_ in
11280 let _v : 'tv_generic_ctype =
11281 # 456 "parser_cocci_menhir.mly"
11282 ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
11283 # 11284 "parser_cocci_menhir.ml"
11284 in
11285 _menhir_env.MenhirLib.EngineTypes.stack <- {
11286 MenhirLib.EngineTypes.state = _menhir_s;
11287 MenhirLib.EngineTypes.semv = Obj.repr _v;
11288 MenhirLib.EngineTypes.startp = _startpos;
11289 MenhirLib.EngineTypes.endp = _endpos;
11290 MenhirLib.EngineTypes.next = _menhir_stack;
11291 });
11292 (fun _menhir_env ->
11293 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11294 let {
11295 MenhirLib.EngineTypes.semv = r;
11296 MenhirLib.EngineTypes.startp = _startpos_r_;
11297 MenhirLib.EngineTypes.endp = _endpos_r_;
11298 MenhirLib.EngineTypes.next = {
11299 MenhirLib.EngineTypes.semv = d;
11300 MenhirLib.EngineTypes.startp = _startpos_d_;
11301 MenhirLib.EngineTypes.endp = _endpos_d_;
11302 MenhirLib.EngineTypes.next = {
11303 MenhirLib.EngineTypes.semv = l;
11304 MenhirLib.EngineTypes.startp = _startpos_l_;
11305 MenhirLib.EngineTypes.endp = _endpos_l_;
11306 MenhirLib.EngineTypes.next = {
11307 MenhirLib.EngineTypes.state = _menhir_s;
11308 MenhirLib.EngineTypes.semv = s;
11309 MenhirLib.EngineTypes.startp = _startpos_s_;
11310 MenhirLib.EngineTypes.endp = _endpos_s_;
11311 MenhirLib.EngineTypes.next = _menhir_stack;
11312 };
11313 };
11314 };
11315 } = _menhir_stack in
11316 let r : (
11317 # 100 "parser_cocci_menhir.mly"
11318 (Data.clt)
11319 # 11320 "parser_cocci_menhir.ml"
11320 ) = Obj.magic r in
11321 let d : 'tv_struct_decl_list = Obj.magic d in
11322 let l : (
11323 # 100 "parser_cocci_menhir.mly"
11324 (Data.clt)
11325 # 11326 "parser_cocci_menhir.ml"
11326 ) = Obj.magic l in
11327 let s : 'tv_struct_or_union = Obj.magic s in
11328 let _startpos = _startpos_s_ in
11329 let _endpos = _endpos_r_ in
11330 let _v : 'tv_generic_ctype = let i =
11331
11332 # 39 "standard.mly"
11333 ( None )
11334 # 11335 "parser_cocci_menhir.ml"
11335
11336 in
11337
11338 # 459 "parser_cocci_menhir.mly"
11339 ( (if i = None && !Data.in_iso
11340 then failwith "structures must be named in the iso file");
11341 Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
11342 P.clt2mcode "{" l,
11343 d, P.clt2mcode "}" r)) )
11344 # 11345 "parser_cocci_menhir.ml"
11345 in
11346 _menhir_env.MenhirLib.EngineTypes.stack <- {
11347 MenhirLib.EngineTypes.state = _menhir_s;
11348 MenhirLib.EngineTypes.semv = Obj.repr _v;
11349 MenhirLib.EngineTypes.startp = _startpos;
11350 MenhirLib.EngineTypes.endp = _endpos;
11351 MenhirLib.EngineTypes.next = _menhir_stack;
11352 });
11353 (fun _menhir_env ->
11354 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11355 let {
11356 MenhirLib.EngineTypes.semv = r;
11357 MenhirLib.EngineTypes.startp = _startpos_r_;
11358 MenhirLib.EngineTypes.endp = _endpos_r_;
11359 MenhirLib.EngineTypes.next = {
11360 MenhirLib.EngineTypes.semv = d;
11361 MenhirLib.EngineTypes.startp = _startpos_d_;
11362 MenhirLib.EngineTypes.endp = _endpos_d_;
11363 MenhirLib.EngineTypes.next = {
11364 MenhirLib.EngineTypes.semv = l;
11365 MenhirLib.EngineTypes.startp = _startpos_l_;
11366 MenhirLib.EngineTypes.endp = _endpos_l_;
11367 MenhirLib.EngineTypes.next = {
11368 MenhirLib.EngineTypes.semv = x0;
11369 MenhirLib.EngineTypes.startp = _startpos_x0_;
11370 MenhirLib.EngineTypes.endp = _endpos_x0_;
11371 MenhirLib.EngineTypes.next = {
11372 MenhirLib.EngineTypes.state = _menhir_s;
11373 MenhirLib.EngineTypes.semv = s;
11374 MenhirLib.EngineTypes.startp = _startpos_s_;
11375 MenhirLib.EngineTypes.endp = _endpos_s_;
11376 MenhirLib.EngineTypes.next = _menhir_stack;
11377 };
11378 };
11379 };
11380 };
11381 } = _menhir_stack in
11382 let r : (
11383 # 100 "parser_cocci_menhir.mly"
11384 (Data.clt)
11385 # 11386 "parser_cocci_menhir.ml"
11386 ) = Obj.magic r in
11387 let d : 'tv_struct_decl_list = Obj.magic d in
11388 let l : (
11389 # 100 "parser_cocci_menhir.mly"
11390 (Data.clt)
11391 # 11392 "parser_cocci_menhir.ml"
11392 ) = Obj.magic l in
11393 let x0 : 'tv_ident = Obj.magic x0 in
11394 let s : 'tv_struct_or_union = Obj.magic s in
11395 let _startpos = _startpos_s_ in
11396 let _endpos = _endpos_r_ in
11397 let _v : 'tv_generic_ctype = let i =
11398 let x = x0 in
11399
11400 # 41 "standard.mly"
11401 ( Some x )
11402 # 11403 "parser_cocci_menhir.ml"
11403
11404 in
11405
11406 # 459 "parser_cocci_menhir.mly"
11407 ( (if i = None && !Data.in_iso
11408 then failwith "structures must be named in the iso file");
11409 Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
11410 P.clt2mcode "{" l,
11411 d, P.clt2mcode "}" r)) )
11412 # 11413 "parser_cocci_menhir.ml"
11413 in
11414 _menhir_env.MenhirLib.EngineTypes.stack <- {
11415 MenhirLib.EngineTypes.state = _menhir_s;
11416 MenhirLib.EngineTypes.semv = Obj.repr _v;
11417 MenhirLib.EngineTypes.startp = _startpos;
11418 MenhirLib.EngineTypes.endp = _endpos;
11419 MenhirLib.EngineTypes.next = _menhir_stack;
11420 });
11421 (fun _menhir_env ->
11422 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11423 let {
11424 MenhirLib.EngineTypes.semv = r;
11425 MenhirLib.EngineTypes.startp = _startpos_r_;
11426 MenhirLib.EngineTypes.endp = _endpos_r_;
11427 MenhirLib.EngineTypes.next = {
11428 MenhirLib.EngineTypes.semv = d;
11429 MenhirLib.EngineTypes.startp = _startpos_d_;
11430 MenhirLib.EngineTypes.endp = _endpos_d_;
11431 MenhirLib.EngineTypes.next = {
11432 MenhirLib.EngineTypes.semv = l;
11433 MenhirLib.EngineTypes.startp = _startpos_l_;
11434 MenhirLib.EngineTypes.endp = _endpos_l_;
11435 MenhirLib.EngineTypes.next = {
11436 MenhirLib.EngineTypes.state = _menhir_s;
11437 MenhirLib.EngineTypes.semv = s;
11438 MenhirLib.EngineTypes.startp = _startpos_s_;
11439 MenhirLib.EngineTypes.endp = _endpos_s_;
11440 MenhirLib.EngineTypes.next = _menhir_stack;
11441 };
11442 };
11443 };
11444 } = _menhir_stack in
11445 let r : (
11446 # 100 "parser_cocci_menhir.mly"
11447 (Data.clt)
11448 # 11449 "parser_cocci_menhir.ml"
11449 ) = Obj.magic r in
11450 let d : 'tv_struct_decl_list = Obj.magic d in
11451 let l : (
11452 # 100 "parser_cocci_menhir.mly"
11453 (Data.clt)
11454 # 11455 "parser_cocci_menhir.ml"
11455 ) = Obj.magic l in
11456 let s : (
11457 # 64 "parser_cocci_menhir.mly"
11458 (Parse_aux.info)
11459 # 11460 "parser_cocci_menhir.ml"
11460 ) = Obj.magic s in
11461 let _startpos = _startpos_s_ in
11462 let _endpos = _endpos_r_ in
11463 let _v : 'tv_generic_ctype =
11464 # 465 "parser_cocci_menhir.mly"
11465 ( let (nm,pure,clt) = s in
11466 let ty =
11467 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
11468 Ast0.wrap
11469 (Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
11470 # 11471 "parser_cocci_menhir.ml"
11471 in
11472 _menhir_env.MenhirLib.EngineTypes.stack <- {
11473 MenhirLib.EngineTypes.state = _menhir_s;
11474 MenhirLib.EngineTypes.semv = Obj.repr _v;
11475 MenhirLib.EngineTypes.startp = _startpos;
11476 MenhirLib.EngineTypes.endp = _endpos;
11477 MenhirLib.EngineTypes.next = _menhir_stack;
11478 });
11479 (fun _menhir_env ->
11480 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11481 let {
11482 MenhirLib.EngineTypes.semv = p;
11483 MenhirLib.EngineTypes.startp = _startpos_p_;
11484 MenhirLib.EngineTypes.endp = _endpos_p_;
11485 MenhirLib.EngineTypes.next = {
11486 MenhirLib.EngineTypes.startp = _startpos__2_;
11487 MenhirLib.EngineTypes.endp = _endpos__2_;
11488 MenhirLib.EngineTypes.next = {
11489 MenhirLib.EngineTypes.state = _menhir_s;
11490 MenhirLib.EngineTypes.semv = r;
11491 MenhirLib.EngineTypes.startp = _startpos_r_;
11492 MenhirLib.EngineTypes.endp = _endpos_r_;
11493 MenhirLib.EngineTypes.next = _menhir_stack;
11494 };
11495 };
11496 } = _menhir_stack in
11497 let p : (
11498 # 59 "parser_cocci_menhir.mly"
11499 (string * Data.clt)
11500 # 11501 "parser_cocci_menhir.ml"
11501 ) = Obj.magic p in
11502 let r : (
11503 # 47 "parser_cocci_menhir.mly"
11504 (string)
11505 # 11506 "parser_cocci_menhir.ml"
11506 ) = Obj.magic r in
11507 let _startpos = _startpos_r_ in
11508 let _endpos = _endpos_p_ in
11509 let _v : 'tv_generic_ctype =
11510 # 471 "parser_cocci_menhir.mly"
11511 ( let nm = (r,P.id2name p) in
11512 (* this is only possible when we are in a metavar decl. Otherwise,
11513 it will be represented already as a MetaType *)
11514 let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
11515 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
11516 Ast0.Impure (*will be ignored*))) )
11517 # 11518 "parser_cocci_menhir.ml"
11518 in
11519 _menhir_env.MenhirLib.EngineTypes.stack <- {
11520 MenhirLib.EngineTypes.state = _menhir_s;
11521 MenhirLib.EngineTypes.semv = Obj.repr _v;
11522 MenhirLib.EngineTypes.startp = _startpos;
11523 MenhirLib.EngineTypes.endp = _endpos;
11524 MenhirLib.EngineTypes.next = _menhir_stack;
11525 });
11526 (fun _menhir_env ->
11527 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11528 let {
11529 MenhirLib.EngineTypes.state = _menhir_s;
11530 MenhirLib.EngineTypes.semv = p;
11531 MenhirLib.EngineTypes.startp = _startpos_p_;
11532 MenhirLib.EngineTypes.endp = _endpos_p_;
11533 MenhirLib.EngineTypes.next = _menhir_stack;
11534 } = _menhir_stack in
11535 let p : (
11536 # 59 "parser_cocci_menhir.mly"
11537 (string * Data.clt)
11538 # 11539 "parser_cocci_menhir.ml"
11539 ) = Obj.magic p in
11540 let _startpos = _startpos_p_ in
11541 let _endpos = _endpos_p_ in
11542 let _v : 'tv_generic_ctype =
11543 # 478 "parser_cocci_menhir.mly"
11544 ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
11545 # 11546 "parser_cocci_menhir.ml"
11546 in
11547 _menhir_env.MenhirLib.EngineTypes.stack <- {
11548 MenhirLib.EngineTypes.state = _menhir_s;
11549 MenhirLib.EngineTypes.semv = Obj.repr _v;
11550 MenhirLib.EngineTypes.startp = _startpos;
11551 MenhirLib.EngineTypes.endp = _endpos;
11552 MenhirLib.EngineTypes.next = _menhir_stack;
11553 });
11554 (fun _menhir_env ->
11555 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11556 let {
11557 MenhirLib.EngineTypes.state = _menhir_s;
11558 MenhirLib.EngineTypes.semv = p;
11559 MenhirLib.EngineTypes.startp = _startpos_p_;
11560 MenhirLib.EngineTypes.endp = _endpos_p_;
11561 MenhirLib.EngineTypes.next = _menhir_stack;
11562 } = _menhir_stack in
11563 let p : (
11564 # 64 "parser_cocci_menhir.mly"
11565 (Parse_aux.info)
11566 # 11567 "parser_cocci_menhir.ml"
11567 ) = Obj.magic p in
11568 let _startpos = _startpos_p_ in
11569 let _endpos = _endpos_p_ in
11570 let _v : 'tv_generic_ctype =
11571 # 480 "parser_cocci_menhir.mly"
11572 ( let (nm,pure,clt) = p in
11573 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
11574 # 11575 "parser_cocci_menhir.ml"
11575 in
11576 _menhir_env.MenhirLib.EngineTypes.stack <- {
11577 MenhirLib.EngineTypes.state = _menhir_s;
11578 MenhirLib.EngineTypes.semv = Obj.repr _v;
11579 MenhirLib.EngineTypes.startp = _startpos;
11580 MenhirLib.EngineTypes.endp = _endpos;
11581 MenhirLib.EngineTypes.next = _menhir_stack;
11582 });
11583 (fun _menhir_env ->
11584 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11585 let {
11586 MenhirLib.EngineTypes.state = _menhir_s;
11587 MenhirLib.EngineTypes.semv = _1;
11588 MenhirLib.EngineTypes.startp = _startpos__1_;
11589 MenhirLib.EngineTypes.endp = _endpos__1_;
11590 MenhirLib.EngineTypes.next = _menhir_stack;
11591 } = _menhir_stack in
11592 let _1 : 'tv_pure_ident = Obj.magic _1 in
11593 let _startpos = _startpos__1_ in
11594 let _endpos = _endpos__1_ in
11595 let _v : 'tv_ident =
11596 # 1413 "parser_cocci_menhir.mly"
11597 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
11598 # 11599 "parser_cocci_menhir.ml"
11599 in
11600 _menhir_env.MenhirLib.EngineTypes.stack <- {
11601 MenhirLib.EngineTypes.state = _menhir_s;
11602 MenhirLib.EngineTypes.semv = Obj.repr _v;
11603 MenhirLib.EngineTypes.startp = _startpos;
11604 MenhirLib.EngineTypes.endp = _endpos;
11605 MenhirLib.EngineTypes.next = _menhir_stack;
11606 });
11607 (fun _menhir_env ->
11608 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11609 let {
11610 MenhirLib.EngineTypes.state = _menhir_s;
11611 MenhirLib.EngineTypes.semv = _1;
11612 MenhirLib.EngineTypes.startp = _startpos__1_;
11613 MenhirLib.EngineTypes.endp = _endpos__1_;
11614 MenhirLib.EngineTypes.next = _menhir_stack;
11615 } = _menhir_stack in
11616 let _1 : (
11617 # 61 "parser_cocci_menhir.mly"
11618 (Parse_aux.idinfo)
11619 # 11620 "parser_cocci_menhir.ml"
11620 ) = Obj.magic _1 in
11621 let _startpos = _startpos__1_ in
11622 let _endpos = _endpos__1_ in
11623 let _v : 'tv_ident =
11624 # 1415 "parser_cocci_menhir.mly"
11625 ( let (nm,constraints,pure,clt) = _1 in
11626 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
11627 # 11628 "parser_cocci_menhir.ml"
11628 in
11629 _menhir_env.MenhirLib.EngineTypes.stack <- {
11630 MenhirLib.EngineTypes.state = _menhir_s;
11631 MenhirLib.EngineTypes.semv = Obj.repr _v;
11632 MenhirLib.EngineTypes.startp = _startpos;
11633 MenhirLib.EngineTypes.endp = _endpos;
11634 MenhirLib.EngineTypes.next = _menhir_stack;
11635 });
11636 (fun _menhir_env ->
11637 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11638 let {
11639 MenhirLib.EngineTypes.state = _menhir_s;
11640 MenhirLib.EngineTypes.semv = i;
11641 MenhirLib.EngineTypes.startp = _startpos_i_;
11642 MenhirLib.EngineTypes.endp = _endpos_i_;
11643 MenhirLib.EngineTypes.next = _menhir_stack;
11644 } = _menhir_stack in
11645 let i : 'tv_pure_ident = Obj.magic i in
11646 let _startpos = _startpos_i_ in
11647 let _endpos = _endpos_i_ in
11648 let _v : 'tv_ident_or_const =
11649 # 1371 "parser_cocci_menhir.mly"
11650 ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) )
11651 # 11652 "parser_cocci_menhir.ml"
11652 in
11653 _menhir_env.MenhirLib.EngineTypes.stack <- {
11654 MenhirLib.EngineTypes.state = _menhir_s;
11655 MenhirLib.EngineTypes.semv = Obj.repr _v;
11656 MenhirLib.EngineTypes.startp = _startpos;
11657 MenhirLib.EngineTypes.endp = _endpos;
11658 MenhirLib.EngineTypes.next = _menhir_stack;
11659 });
11660 (fun _menhir_env ->
11661 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11662 let {
11663 MenhirLib.EngineTypes.state = _menhir_s;
11664 MenhirLib.EngineTypes.semv = _1;
11665 MenhirLib.EngineTypes.startp = _startpos__1_;
11666 MenhirLib.EngineTypes.endp = _endpos__1_;
11667 MenhirLib.EngineTypes.next = _menhir_stack;
11668 } = _menhir_stack in
11669 let _1 : (
11670 # 86 "parser_cocci_menhir.mly"
11671 (string * Data.clt)
11672 # 11673 "parser_cocci_menhir.ml"
11673 ) = Obj.magic _1 in
11674 let _startpos = _startpos__1_ in
11675 let _endpos = _endpos__1_ in
11676 let _v : 'tv_ident_or_const =
11677 # 1373 "parser_cocci_menhir.mly"
11678 ( let (x,clt) = _1 in
11679 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
11680 # 11681 "parser_cocci_menhir.ml"
11681 in
11682 _menhir_env.MenhirLib.EngineTypes.stack <- {
11683 MenhirLib.EngineTypes.state = _menhir_s;
11684 MenhirLib.EngineTypes.semv = Obj.repr _v;
11685 MenhirLib.EngineTypes.startp = _startpos;
11686 MenhirLib.EngineTypes.endp = _endpos;
11687 MenhirLib.EngineTypes.next = _menhir_stack;
11688 });
11689 (fun _menhir_env ->
11690 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11691 let {
11692 MenhirLib.EngineTypes.semv = _2;
11693 MenhirLib.EngineTypes.startp = _startpos__2_;
11694 MenhirLib.EngineTypes.endp = _endpos__2_;
11695 MenhirLib.EngineTypes.next = {
11696 MenhirLib.EngineTypes.state = _menhir_s;
11697 MenhirLib.EngineTypes.startp = _startpos__1_;
11698 MenhirLib.EngineTypes.endp = _endpos__1_;
11699 MenhirLib.EngineTypes.next = _menhir_stack;
11700 };
11701 } = _menhir_stack in
11702 let _2 : (
11703 # 86 "parser_cocci_menhir.mly"
11704 (string * Data.clt)
11705 # 11706 "parser_cocci_menhir.ml"
11706 ) = Obj.magic _2 in
11707 let _startpos = _startpos__1_ in
11708 let _endpos = _endpos__2_ in
11709 let _v : 'tv_incl =
11710 # 247 "parser_cocci_menhir.mly"
11711 ( Common.Left(P.id2name _2) )
11712 # 11713 "parser_cocci_menhir.ml"
11713 in
11714 _menhir_env.MenhirLib.EngineTypes.stack <- {
11715 MenhirLib.EngineTypes.state = _menhir_s;
11716 MenhirLib.EngineTypes.semv = Obj.repr _v;
11717 MenhirLib.EngineTypes.startp = _startpos;
11718 MenhirLib.EngineTypes.endp = _endpos;
11719 MenhirLib.EngineTypes.next = _menhir_stack;
11720 });
11721 (fun _menhir_env ->
11722 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11723 let {
11724 MenhirLib.EngineTypes.semv = _2;
11725 MenhirLib.EngineTypes.startp = _startpos__2_;
11726 MenhirLib.EngineTypes.endp = _endpos__2_;
11727 MenhirLib.EngineTypes.next = {
11728 MenhirLib.EngineTypes.state = _menhir_s;
11729 MenhirLib.EngineTypes.startp = _startpos__1_;
11730 MenhirLib.EngineTypes.endp = _endpos__1_;
11731 MenhirLib.EngineTypes.next = _menhir_stack;
11732 };
11733 } = _menhir_stack in
11734 let _2 : (
11735 # 78 "parser_cocci_menhir.mly"
11736 (string)
11737 # 11738 "parser_cocci_menhir.ml"
11738 ) = Obj.magic _2 in
11739 let _startpos = _startpos__1_ in
11740 let _endpos = _endpos__2_ in
11741 let _v : 'tv_incl =
11742 # 248 "parser_cocci_menhir.mly"
11743 ( Common.Right _2 )
11744 # 11745 "parser_cocci_menhir.ml"
11745 in
11746 _menhir_env.MenhirLib.EngineTypes.stack <- {
11747 MenhirLib.EngineTypes.state = _menhir_s;
11748 MenhirLib.EngineTypes.semv = Obj.repr _v;
11749 MenhirLib.EngineTypes.startp = _startpos;
11750 MenhirLib.EngineTypes.endp = _endpos;
11751 MenhirLib.EngineTypes.next = _menhir_stack;
11752 });
11753 (fun _menhir_env ->
11754 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11755 let {
11756 MenhirLib.EngineTypes.startp = _startpos__2_;
11757 MenhirLib.EngineTypes.endp = _endpos__2_;
11758 MenhirLib.EngineTypes.next = {
11759 MenhirLib.EngineTypes.state = _menhir_s;
11760 MenhirLib.EngineTypes.semv = _1;
11761 MenhirLib.EngineTypes.startp = _startpos__1_;
11762 MenhirLib.EngineTypes.endp = _endpos__1_;
11763 MenhirLib.EngineTypes.next = _menhir_stack;
11764 };
11765 } = _menhir_stack in
11766 let _1 : 'tv_list_incl_ = Obj.magic _1 in
11767 let _startpos = _startpos__1_ in
11768 let _endpos = _endpos__2_ in
11769 let _v : (
11770 # 145 "parser_cocci_menhir.mly"
11771 ((string,string) Common.either list)
11772 # 11773 "parser_cocci_menhir.ml"
11773 ) =
11774 # 243 "parser_cocci_menhir.mly"
11775 ( _1 )
11776 # 11777 "parser_cocci_menhir.ml"
11777 in
11778 _menhir_env.MenhirLib.EngineTypes.stack <- {
11779 MenhirLib.EngineTypes.state = _menhir_s;
11780 MenhirLib.EngineTypes.semv = Obj.repr _v;
11781 MenhirLib.EngineTypes.startp = _startpos;
11782 MenhirLib.EngineTypes.endp = _endpos;
11783 MenhirLib.EngineTypes.next = _menhir_stack;
11784 });
11785 (fun _menhir_env ->
11786 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11787 let {
11788 MenhirLib.EngineTypes.startp = _startpos__2_;
11789 MenhirLib.EngineTypes.endp = _endpos__2_;
11790 MenhirLib.EngineTypes.next = {
11791 MenhirLib.EngineTypes.state = _menhir_s;
11792 MenhirLib.EngineTypes.semv = _1;
11793 MenhirLib.EngineTypes.startp = _startpos__1_;
11794 MenhirLib.EngineTypes.endp = _endpos__1_;
11795 MenhirLib.EngineTypes.next = _menhir_stack;
11796 };
11797 } = _menhir_stack in
11798 let _1 : 'tv_list_incl_ = Obj.magic _1 in
11799 let _startpos = _startpos__1_ in
11800 let _endpos = _endpos__2_ in
11801 let _v : (
11802 # 145 "parser_cocci_menhir.mly"
11803 ((string,string) Common.either list)
11804 # 11805 "parser_cocci_menhir.ml"
11805 ) =
11806 # 244 "parser_cocci_menhir.mly"
11807 ( _1 )
11808 # 11809 "parser_cocci_menhir.ml"
11809 in
11810 _menhir_env.MenhirLib.EngineTypes.stack <- {
11811 MenhirLib.EngineTypes.state = _menhir_s;
11812 MenhirLib.EngineTypes.semv = Obj.repr _v;
11813 MenhirLib.EngineTypes.startp = _startpos;
11814 MenhirLib.EngineTypes.endp = _endpos;
11815 MenhirLib.EngineTypes.next = _menhir_stack;
11816 });
11817 (fun _menhir_env ->
11818 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11819 let {
11820 MenhirLib.EngineTypes.state = _menhir_s;
11821 MenhirLib.EngineTypes.semv = _1;
11822 MenhirLib.EngineTypes.startp = _startpos__1_;
11823 MenhirLib.EngineTypes.endp = _endpos__1_;
11824 MenhirLib.EngineTypes.next = _menhir_stack;
11825 } = _menhir_stack in
11826 let _1 : (
11827 # 79 "parser_cocci_menhir.mly"
11828 (string * Data.clt)
11829 # 11830 "parser_cocci_menhir.ml"
11830 ) = Obj.magic _1 in
11831 let _startpos = _startpos__1_ in
11832 let _endpos = _endpos__1_ in
11833 let _v : 'tv_includes =
11834 # 586 "parser_cocci_menhir.mly"
11835 ( Ast0.wrap
11836 (Ast0.Include(P.clt2mcode "#include" (P.drop_aft (P.id2clt _1)),
11837 let (arity,ln,lln,offset,col,strbef,straft,pos) =
11838 P.id2clt _1 in
11839 let clt =
11840 (arity,ln,lln,offset,0,strbef,straft,pos) in
11841 P.clt2mcode
11842 (Ast.Local (Parse_aux.str2inc (P.id2name _1)))
11843 (P.drop_bef clt))) )
11844 # 11845 "parser_cocci_menhir.ml"
11845 in
11846 _menhir_env.MenhirLib.EngineTypes.stack <- {
11847 MenhirLib.EngineTypes.state = _menhir_s;
11848 MenhirLib.EngineTypes.semv = Obj.repr _v;
11849 MenhirLib.EngineTypes.startp = _startpos;
11850 MenhirLib.EngineTypes.endp = _endpos;
11851 MenhirLib.EngineTypes.next = _menhir_stack;
11852 });
11853 (fun _menhir_env ->
11854 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11855 let {
11856 MenhirLib.EngineTypes.state = _menhir_s;
11857 MenhirLib.EngineTypes.semv = _1;
11858 MenhirLib.EngineTypes.startp = _startpos__1_;
11859 MenhirLib.EngineTypes.endp = _endpos__1_;
11860 MenhirLib.EngineTypes.next = _menhir_stack;
11861 } = _menhir_stack in
11862 let _1 : (
11863 # 79 "parser_cocci_menhir.mly"
11864 (string * Data.clt)
11865 # 11866 "parser_cocci_menhir.ml"
11866 ) = Obj.magic _1 in
11867 let _startpos = _startpos__1_ in
11868 let _endpos = _endpos__1_ in
11869 let _v : 'tv_includes =
11870 # 596 "parser_cocci_menhir.mly"
11871 ( Ast0.wrap
11872 (Ast0.Include(P.clt2mcode "#include" (P.drop_aft (P.id2clt _1)),
11873 let (arity,ln,lln,offset,col,strbef,straft,pos) =
11874 P.id2clt _1 in
11875 let clt =
11876 (arity,ln,lln,offset,0,strbef,straft,pos) in
11877 P.clt2mcode
11878 (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1)))
11879 (P.drop_bef clt))) )
11880 # 11881 "parser_cocci_menhir.ml"
11881 in
11882 _menhir_env.MenhirLib.EngineTypes.stack <- {
11883 MenhirLib.EngineTypes.state = _menhir_s;
11884 MenhirLib.EngineTypes.semv = Obj.repr _v;
11885 MenhirLib.EngineTypes.startp = _startpos;
11886 MenhirLib.EngineTypes.endp = _endpos;
11887 MenhirLib.EngineTypes.next = _menhir_stack;
11888 });
11889 (fun _menhir_env ->
11890 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11891 let {
11892 MenhirLib.EngineTypes.startp = _startpos__3_;
11893 MenhirLib.EngineTypes.endp = _endpos__3_;
11894 MenhirLib.EngineTypes.next = {
11895 MenhirLib.EngineTypes.semv = t;
11896 MenhirLib.EngineTypes.startp = _startpos_t_;
11897 MenhirLib.EngineTypes.endp = _endpos_t_;
11898 MenhirLib.EngineTypes.next = {
11899 MenhirLib.EngineTypes.state = _menhir_s;
11900 MenhirLib.EngineTypes.semv = d;
11901 MenhirLib.EngineTypes.startp = _startpos_d_;
11902 MenhirLib.EngineTypes.endp = _endpos_d_;
11903 MenhirLib.EngineTypes.next = _menhir_stack;
11904 };
11905 };
11906 } = _menhir_stack in
11907 let t : 'tv_ctype = Obj.magic t in
11908 let d : 'tv_defineop = Obj.magic d in
11909 let _startpos = _startpos_d_ in
11910 let _endpos = _endpos__3_ in
11911 let _v : 'tv_includes =
11912 # 606 "parser_cocci_menhir.mly"
11913 ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in
11914 d (Ast0.wrap(Ast0.DOTS([ty]))) )
11915 # 11916 "parser_cocci_menhir.ml"
11916 in
11917 _menhir_env.MenhirLib.EngineTypes.stack <- {
11918 MenhirLib.EngineTypes.state = _menhir_s;
11919 MenhirLib.EngineTypes.semv = Obj.repr _v;
11920 MenhirLib.EngineTypes.startp = _startpos;
11921 MenhirLib.EngineTypes.endp = _endpos;
11922 MenhirLib.EngineTypes.next = _menhir_stack;
11923 });
11924 (fun _menhir_env ->
11925 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11926 let {
11927 MenhirLib.EngineTypes.startp = _startpos__3_;
11928 MenhirLib.EngineTypes.endp = _endpos__3_;
11929 MenhirLib.EngineTypes.next = {
11930 MenhirLib.EngineTypes.semv = b;
11931 MenhirLib.EngineTypes.startp = _startpos_b_;
11932 MenhirLib.EngineTypes.endp = _endpos_b_;
11933 MenhirLib.EngineTypes.next = {
11934 MenhirLib.EngineTypes.state = _menhir_s;
11935 MenhirLib.EngineTypes.semv = _1;
11936 MenhirLib.EngineTypes.startp = _startpos__1_;
11937 MenhirLib.EngineTypes.endp = _endpos__1_;
11938 MenhirLib.EngineTypes.next = _menhir_stack;
11939 };
11940 };
11941 } = _menhir_stack in
11942 let b : 'tv_toplevel_seq_start_toplevel_after_dots_ = Obj.magic b in
11943 let _1 : 'tv_defineop = Obj.magic _1 in
11944 let _startpos = _startpos__1_ in
11945 let _endpos = _endpos__3_ in
11946 let _v : 'tv_includes =
11947 # 609 "parser_cocci_menhir.mly"
11948 ( let body =
11949 match b with
11950 [e] ->
11951 (match Ast0.unwrap e with
11952 Ast0.Exp(e1) ->
11953 [Ast0.rewrap e (Ast0.TopExp(Ast0.set_arg_exp (e1)))]
11954 | _ -> b)
11955 | _ -> b in
11956 _1 (Ast0.wrap(Ast0.DOTS(body))) )
11957 # 11958 "parser_cocci_menhir.ml"
11958 in
11959 _menhir_env.MenhirLib.EngineTypes.stack <- {
11960 MenhirLib.EngineTypes.state = _menhir_s;
11961 MenhirLib.EngineTypes.semv = Obj.repr _v;
11962 MenhirLib.EngineTypes.startp = _startpos;
11963 MenhirLib.EngineTypes.endp = _endpos;
11964 MenhirLib.EngineTypes.next = _menhir_stack;
11965 });
11966 (fun _menhir_env ->
11967 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11968 let {
11969 MenhirLib.EngineTypes.state = _menhir_s;
11970 MenhirLib.EngineTypes.semv = _1;
11971 MenhirLib.EngineTypes.startp = _startpos__1_;
11972 MenhirLib.EngineTypes.endp = _endpos__1_;
11973 MenhirLib.EngineTypes.next = _menhir_stack;
11974 } = _menhir_stack in
11975 let _1 : 'tv_eexpr = Obj.magic _1 in
11976 let _startpos = _startpos__1_ in
11977 let _endpos = _endpos__1_ in
11978 let _v : 'tv_initialize =
11979 # 1008 "parser_cocci_menhir.mly"
11980 ( Ast0.wrap(Ast0.InitExpr(_1)) )
11981 # 11982 "parser_cocci_menhir.ml"
11982 in
11983 _menhir_env.MenhirLib.EngineTypes.stack <- {
11984 MenhirLib.EngineTypes.state = _menhir_s;
11985 MenhirLib.EngineTypes.semv = Obj.repr _v;
11986 MenhirLib.EngineTypes.startp = _startpos;
11987 MenhirLib.EngineTypes.endp = _endpos;
11988 MenhirLib.EngineTypes.next = _menhir_stack;
11989 });
11990 (fun _menhir_env ->
11991 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11992 let {
11993 MenhirLib.EngineTypes.semv = _3;
11994 MenhirLib.EngineTypes.startp = _startpos__3_;
11995 MenhirLib.EngineTypes.endp = _endpos__3_;
11996 MenhirLib.EngineTypes.next = {
11997 MenhirLib.EngineTypes.semv = _2;
11998 MenhirLib.EngineTypes.startp = _startpos__2_;
11999 MenhirLib.EngineTypes.endp = _endpos__2_;
12000 MenhirLib.EngineTypes.next = {
12001 MenhirLib.EngineTypes.state = _menhir_s;
12002 MenhirLib.EngineTypes.semv = _1;
12003 MenhirLib.EngineTypes.startp = _startpos__1_;
12004 MenhirLib.EngineTypes.endp = _endpos__1_;
12005 MenhirLib.EngineTypes.next = _menhir_stack;
12006 };
12007 };
12008 } = _menhir_stack in
12009 let _3 : (
12010 # 100 "parser_cocci_menhir.mly"
12011 (Data.clt)
12012 # 12013 "parser_cocci_menhir.ml"
12013 ) = Obj.magic _3 in
12014 let _2 : 'tv_initialize_list = Obj.magic _2 in
12015 let _1 : (
12016 # 100 "parser_cocci_menhir.mly"
12017 (Data.clt)
12018 # 12019 "parser_cocci_menhir.ml"
12019 ) = Obj.magic _1 in
12020 let _startpos = _startpos__1_ in
12021 let _endpos = _endpos__3_ in
12022 let _v : 'tv_initialize =
12023 # 1010 "parser_cocci_menhir.mly"
12024 ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
12025 # 12026 "parser_cocci_menhir.ml"
12026 in
12027 _menhir_env.MenhirLib.EngineTypes.stack <- {
12028 MenhirLib.EngineTypes.state = _menhir_s;
12029 MenhirLib.EngineTypes.semv = Obj.repr _v;
12030 MenhirLib.EngineTypes.startp = _startpos;
12031 MenhirLib.EngineTypes.endp = _endpos;
12032 MenhirLib.EngineTypes.next = _menhir_stack;
12033 });
12034 (fun _menhir_env ->
12035 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12036 let {
12037 MenhirLib.EngineTypes.semv = _2;
12038 MenhirLib.EngineTypes.startp = _startpos__2_;
12039 MenhirLib.EngineTypes.endp = _endpos__2_;
12040 MenhirLib.EngineTypes.next = {
12041 MenhirLib.EngineTypes.state = _menhir_s;
12042 MenhirLib.EngineTypes.semv = _1;
12043 MenhirLib.EngineTypes.startp = _startpos__1_;
12044 MenhirLib.EngineTypes.endp = _endpos__1_;
12045 MenhirLib.EngineTypes.next = _menhir_stack;
12046 };
12047 } = _menhir_stack in
12048 let _2 : (
12049 # 100 "parser_cocci_menhir.mly"
12050 (Data.clt)
12051 # 12052 "parser_cocci_menhir.ml"
12052 ) = Obj.magic _2 in
12053 let _1 : (
12054 # 100 "parser_cocci_menhir.mly"
12055 (Data.clt)
12056 # 12057 "parser_cocci_menhir.ml"
12057 ) = Obj.magic _1 in
12058 let _startpos = _startpos__1_ in
12059 let _endpos = _endpos__2_ in
12060 let _v : 'tv_initialize =
12061 # 1012 "parser_cocci_menhir.mly"
12062 ( Ast0.wrap
12063 (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
12064 P.clt2mcode "}" _2)) )
12065 # 12066 "parser_cocci_menhir.ml"
12066 in
12067 _menhir_env.MenhirLib.EngineTypes.stack <- {
12068 MenhirLib.EngineTypes.state = _menhir_s;
12069 MenhirLib.EngineTypes.semv = Obj.repr _v;
12070 MenhirLib.EngineTypes.startp = _startpos;
12071 MenhirLib.EngineTypes.endp = _endpos;
12072 MenhirLib.EngineTypes.next = _menhir_stack;
12073 });
12074 (fun _menhir_env ->
12075 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12076 let {
12077 MenhirLib.EngineTypes.state = _menhir_s;
12078 MenhirLib.EngineTypes.semv = _1;
12079 MenhirLib.EngineTypes.startp = _startpos__1_;
12080 MenhirLib.EngineTypes.endp = _endpos__1_;
12081 MenhirLib.EngineTypes.next = _menhir_stack;
12082 } = _menhir_stack in
12083 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
12084 let _startpos = _startpos__1_ in
12085 let _endpos = _endpos__1_ in
12086 let _v : 'tv_initialize2 =
12087 # 1019 "parser_cocci_menhir.mly"
12088 ( Ast0.wrap(Ast0.InitExpr(_1)) )
12089 # 12090 "parser_cocci_menhir.ml"
12090 in
12091 _menhir_env.MenhirLib.EngineTypes.stack <- {
12092 MenhirLib.EngineTypes.state = _menhir_s;
12093 MenhirLib.EngineTypes.semv = Obj.repr _v;
12094 MenhirLib.EngineTypes.startp = _startpos;
12095 MenhirLib.EngineTypes.endp = _endpos;
12096 MenhirLib.EngineTypes.next = _menhir_stack;
12097 });
12098 (fun _menhir_env ->
12099 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12100 let {
12101 MenhirLib.EngineTypes.semv = _3;
12102 MenhirLib.EngineTypes.startp = _startpos__3_;
12103 MenhirLib.EngineTypes.endp = _endpos__3_;
12104 MenhirLib.EngineTypes.next = {
12105 MenhirLib.EngineTypes.semv = _2;
12106 MenhirLib.EngineTypes.startp = _startpos__2_;
12107 MenhirLib.EngineTypes.endp = _endpos__2_;
12108 MenhirLib.EngineTypes.next = {
12109 MenhirLib.EngineTypes.state = _menhir_s;
12110 MenhirLib.EngineTypes.semv = _1;
12111 MenhirLib.EngineTypes.startp = _startpos__1_;
12112 MenhirLib.EngineTypes.endp = _endpos__1_;
12113 MenhirLib.EngineTypes.next = _menhir_stack;
12114 };
12115 };
12116 } = _menhir_stack in
12117 let _3 : (
12118 # 100 "parser_cocci_menhir.mly"
12119 (Data.clt)
12120 # 12121 "parser_cocci_menhir.ml"
12121 ) = Obj.magic _3 in
12122 let _2 : 'tv_initialize_list = Obj.magic _2 in
12123 let _1 : (
12124 # 100 "parser_cocci_menhir.mly"
12125 (Data.clt)
12126 # 12127 "parser_cocci_menhir.ml"
12127 ) = Obj.magic _1 in
12128 let _startpos = _startpos__1_ in
12129 let _endpos = _endpos__3_ in
12130 let _v : 'tv_initialize2 =
12131 # 1021 "parser_cocci_menhir.mly"
12132 ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
12133 # 12134 "parser_cocci_menhir.ml"
12134 in
12135 _menhir_env.MenhirLib.EngineTypes.stack <- {
12136 MenhirLib.EngineTypes.state = _menhir_s;
12137 MenhirLib.EngineTypes.semv = Obj.repr _v;
12138 MenhirLib.EngineTypes.startp = _startpos;
12139 MenhirLib.EngineTypes.endp = _endpos;
12140 MenhirLib.EngineTypes.next = _menhir_stack;
12141 });
12142 (fun _menhir_env ->
12143 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12144 let {
12145 MenhirLib.EngineTypes.semv = _2;
12146 MenhirLib.EngineTypes.startp = _startpos__2_;
12147 MenhirLib.EngineTypes.endp = _endpos__2_;
12148 MenhirLib.EngineTypes.next = {
12149 MenhirLib.EngineTypes.state = _menhir_s;
12150 MenhirLib.EngineTypes.semv = _1;
12151 MenhirLib.EngineTypes.startp = _startpos__1_;
12152 MenhirLib.EngineTypes.endp = _endpos__1_;
12153 MenhirLib.EngineTypes.next = _menhir_stack;
12154 };
12155 } = _menhir_stack in
12156 let _2 : (
12157 # 100 "parser_cocci_menhir.mly"
12158 (Data.clt)
12159 # 12160 "parser_cocci_menhir.ml"
12160 ) = Obj.magic _2 in
12161 let _1 : (
12162 # 100 "parser_cocci_menhir.mly"
12163 (Data.clt)
12164 # 12165 "parser_cocci_menhir.ml"
12165 ) = Obj.magic _1 in
12166 let _startpos = _startpos__1_ in
12167 let _endpos = _endpos__2_ in
12168 let _v : 'tv_initialize2 =
12169 # 1023 "parser_cocci_menhir.mly"
12170 ( Ast0.wrap
12171 (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
12172 P.clt2mcode "}" _2)) )
12173 # 12174 "parser_cocci_menhir.ml"
12174 in
12175 _menhir_env.MenhirLib.EngineTypes.stack <- {
12176 MenhirLib.EngineTypes.state = _menhir_s;
12177 MenhirLib.EngineTypes.semv = Obj.repr _v;
12178 MenhirLib.EngineTypes.startp = _startpos;
12179 MenhirLib.EngineTypes.endp = _endpos;
12180 MenhirLib.EngineTypes.next = _menhir_stack;
12181 });
12182 (fun _menhir_env ->
12183 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12184 let {
12185 MenhirLib.EngineTypes.semv = _4;
12186 MenhirLib.EngineTypes.startp = _startpos__4_;
12187 MenhirLib.EngineTypes.endp = _endpos__4_;
12188 MenhirLib.EngineTypes.next = {
12189 MenhirLib.EngineTypes.semv = _3;
12190 MenhirLib.EngineTypes.startp = _startpos__3_;
12191 MenhirLib.EngineTypes.endp = _endpos__3_;
12192 MenhirLib.EngineTypes.next = {
12193 MenhirLib.EngineTypes.semv = _2;
12194 MenhirLib.EngineTypes.startp = _startpos__2_;
12195 MenhirLib.EngineTypes.endp = _endpos__2_;
12196 MenhirLib.EngineTypes.next = {
12197 MenhirLib.EngineTypes.state = _menhir_s;
12198 MenhirLib.EngineTypes.semv = _1;
12199 MenhirLib.EngineTypes.startp = _startpos__1_;
12200 MenhirLib.EngineTypes.endp = _endpos__1_;
12201 MenhirLib.EngineTypes.next = _menhir_stack;
12202 };
12203 };
12204 };
12205 } = _menhir_stack in
12206 let _4 : 'tv_initialize2 = Obj.magic _4 in
12207 let _3 : (
12208 # 106 "parser_cocci_menhir.mly"
12209 (Data.clt)
12210 # 12211 "parser_cocci_menhir.ml"
12211 ) = Obj.magic _3 in
12212 let _2 : 'tv_ident = Obj.magic _2 in
12213 let _1 : (
12214 # 106 "parser_cocci_menhir.mly"
12215 (Data.clt)
12216 # 12217 "parser_cocci_menhir.ml"
12217 ) = Obj.magic _1 in
12218 let _startpos = _startpos__1_ in
12219 let _endpos = _endpos__4_ in
12220 let _v : 'tv_initialize2 =
12221 # 1028 "parser_cocci_menhir.mly"
12222 ( Ast0.wrap(Ast0.InitGccDotName(P.clt2mcode "." _1,_2,P.clt2mcode "=" _3,_4)) )
12223 # 12224 "parser_cocci_menhir.ml"
12224 in
12225 _menhir_env.MenhirLib.EngineTypes.stack <- {
12226 MenhirLib.EngineTypes.state = _menhir_s;
12227 MenhirLib.EngineTypes.semv = Obj.repr _v;
12228 MenhirLib.EngineTypes.startp = _startpos;
12229 MenhirLib.EngineTypes.endp = _endpos;
12230 MenhirLib.EngineTypes.next = _menhir_stack;
12231 });
12232 (fun _menhir_env ->
12233 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12234 let {
12235 MenhirLib.EngineTypes.semv = _3;
12236 MenhirLib.EngineTypes.startp = _startpos__3_;
12237 MenhirLib.EngineTypes.endp = _endpos__3_;
12238 MenhirLib.EngineTypes.next = {
12239 MenhirLib.EngineTypes.semv = _2;
12240 MenhirLib.EngineTypes.startp = _startpos__2_;
12241 MenhirLib.EngineTypes.endp = _endpos__2_;
12242 MenhirLib.EngineTypes.next = {
12243 MenhirLib.EngineTypes.state = _menhir_s;
12244 MenhirLib.EngineTypes.semv = _1;
12245 MenhirLib.EngineTypes.startp = _startpos__1_;
12246 MenhirLib.EngineTypes.endp = _endpos__1_;
12247 MenhirLib.EngineTypes.next = _menhir_stack;
12248 };
12249 };
12250 } = _menhir_stack in
12251 let _3 : 'tv_initialize2 = Obj.magic _3 in
12252 let _2 : (
12253 # 75 "parser_cocci_menhir.mly"
12254 (Data.clt)
12255 # 12256 "parser_cocci_menhir.ml"
12256 ) = Obj.magic _2 in
12257 let _1 : 'tv_ident = Obj.magic _1 in
12258 let _startpos = _startpos__1_ in
12259 let _endpos = _endpos__3_ in
12260 let _v : 'tv_initialize2 =
12261 # 1030 "parser_cocci_menhir.mly"
12262 ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) )
12263 # 12264 "parser_cocci_menhir.ml"
12264 in
12265 _menhir_env.MenhirLib.EngineTypes.stack <- {
12266 MenhirLib.EngineTypes.state = _menhir_s;
12267 MenhirLib.EngineTypes.semv = Obj.repr _v;
12268 MenhirLib.EngineTypes.startp = _startpos;
12269 MenhirLib.EngineTypes.endp = _endpos;
12270 MenhirLib.EngineTypes.next = _menhir_stack;
12271 });
12272 (fun _menhir_env ->
12273 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12274 let {
12275 MenhirLib.EngineTypes.semv = _5;
12276 MenhirLib.EngineTypes.startp = _startpos__5_;
12277 MenhirLib.EngineTypes.endp = _endpos__5_;
12278 MenhirLib.EngineTypes.next = {
12279 MenhirLib.EngineTypes.semv = _4;
12280 MenhirLib.EngineTypes.startp = _startpos__4_;
12281 MenhirLib.EngineTypes.endp = _endpos__4_;
12282 MenhirLib.EngineTypes.next = {
12283 MenhirLib.EngineTypes.semv = _3;
12284 MenhirLib.EngineTypes.startp = _startpos__3_;
12285 MenhirLib.EngineTypes.endp = _endpos__3_;
12286 MenhirLib.EngineTypes.next = {
12287 MenhirLib.EngineTypes.semv = _2;
12288 MenhirLib.EngineTypes.startp = _startpos__2_;
12289 MenhirLib.EngineTypes.endp = _endpos__2_;
12290 MenhirLib.EngineTypes.next = {
12291 MenhirLib.EngineTypes.state = _menhir_s;
12292 MenhirLib.EngineTypes.semv = _1;
12293 MenhirLib.EngineTypes.startp = _startpos__1_;
12294 MenhirLib.EngineTypes.endp = _endpos__1_;
12295 MenhirLib.EngineTypes.next = _menhir_stack;
12296 };
12297 };
12298 };
12299 };
12300 } = _menhir_stack in
12301 let _5 : 'tv_initialize2 = Obj.magic _5 in
12302 let _4 : (
12303 # 106 "parser_cocci_menhir.mly"
12304 (Data.clt)
12305 # 12306 "parser_cocci_menhir.ml"
12306 ) = Obj.magic _4 in
12307 let _3 : (
12308 # 101 "parser_cocci_menhir.mly"
12309 (Data.clt)
12310 # 12311 "parser_cocci_menhir.ml"
12311 ) = Obj.magic _3 in
12312 let _2 : 'tv_eexpr = Obj.magic _2 in
12313 let _1 : (
12314 # 101 "parser_cocci_menhir.mly"
12315 (Data.clt)
12316 # 12317 "parser_cocci_menhir.ml"
12317 ) = Obj.magic _1 in
12318 let _startpos = _startpos__1_ in
12319 let _endpos = _endpos__5_ in
12320 let _v : 'tv_initialize2 =
12321 # 1032 "parser_cocci_menhir.mly"
12322 ( Ast0.wrap(Ast0.InitGccIndex(P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3,
12323 P.clt2mcode "=" _4,_5)) )
12324 # 12325 "parser_cocci_menhir.ml"
12325 in
12326 _menhir_env.MenhirLib.EngineTypes.stack <- {
12327 MenhirLib.EngineTypes.state = _menhir_s;
12328 MenhirLib.EngineTypes.semv = Obj.repr _v;
12329 MenhirLib.EngineTypes.startp = _startpos;
12330 MenhirLib.EngineTypes.endp = _endpos;
12331 MenhirLib.EngineTypes.next = _menhir_stack;
12332 });
12333 (fun _menhir_env ->
12334 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12335 let {
12336 MenhirLib.EngineTypes.semv = _7;
12337 MenhirLib.EngineTypes.startp = _startpos__7_;
12338 MenhirLib.EngineTypes.endp = _endpos__7_;
12339 MenhirLib.EngineTypes.next = {
12340 MenhirLib.EngineTypes.semv = _6;
12341 MenhirLib.EngineTypes.startp = _startpos__6_;
12342 MenhirLib.EngineTypes.endp = _endpos__6_;
12343 MenhirLib.EngineTypes.next = {
12344 MenhirLib.EngineTypes.semv = _5;
12345 MenhirLib.EngineTypes.startp = _startpos__5_;
12346 MenhirLib.EngineTypes.endp = _endpos__5_;
12347 MenhirLib.EngineTypes.next = {
12348 MenhirLib.EngineTypes.semv = _4;
12349 MenhirLib.EngineTypes.startp = _startpos__4_;
12350 MenhirLib.EngineTypes.endp = _endpos__4_;
12351 MenhirLib.EngineTypes.next = {
12352 MenhirLib.EngineTypes.semv = _3;
12353 MenhirLib.EngineTypes.startp = _startpos__3_;
12354 MenhirLib.EngineTypes.endp = _endpos__3_;
12355 MenhirLib.EngineTypes.next = {
12356 MenhirLib.EngineTypes.semv = _2;
12357 MenhirLib.EngineTypes.startp = _startpos__2_;
12358 MenhirLib.EngineTypes.endp = _endpos__2_;
12359 MenhirLib.EngineTypes.next = {
12360 MenhirLib.EngineTypes.state = _menhir_s;
12361 MenhirLib.EngineTypes.semv = _1;
12362 MenhirLib.EngineTypes.startp = _startpos__1_;
12363 MenhirLib.EngineTypes.endp = _endpos__1_;
12364 MenhirLib.EngineTypes.next = _menhir_stack;
12365 };
12366 };
12367 };
12368 };
12369 };
12370 };
12371 } = _menhir_stack in
12372 let _7 : 'tv_initialize2 = Obj.magic _7 in
12373 let _6 : (
12374 # 106 "parser_cocci_menhir.mly"
12375 (Data.clt)
12376 # 12377 "parser_cocci_menhir.ml"
12377 ) = Obj.magic _6 in
12378 let _5 : (
12379 # 101 "parser_cocci_menhir.mly"
12380 (Data.clt)
12381 # 12382 "parser_cocci_menhir.ml"
12382 ) = Obj.magic _5 in
12383 let _4 : 'tv_eexpr = Obj.magic _4 in
12384 let _3 : (
12385 # 72 "parser_cocci_menhir.mly"
12386 (Data.clt)
12387 # 12388 "parser_cocci_menhir.ml"
12388 ) = Obj.magic _3 in
12389 let _2 : 'tv_eexpr = Obj.magic _2 in
12390 let _1 : (
12391 # 101 "parser_cocci_menhir.mly"
12392 (Data.clt)
12393 # 12394 "parser_cocci_menhir.ml"
12394 ) = Obj.magic _1 in
12395 let _startpos = _startpos__1_ in
12396 let _endpos = _endpos__7_ in
12397 let _v : 'tv_initialize2 =
12398 # 1035 "parser_cocci_menhir.mly"
12399 ( Ast0.wrap(Ast0.InitGccRange(P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3,
12400 _4,P.clt2mcode "]" _5,P.clt2mcode "=" _6,_7)) )
12401 # 12402 "parser_cocci_menhir.ml"
12402 in
12403 _menhir_env.MenhirLib.EngineTypes.stack <- {
12404 MenhirLib.EngineTypes.state = _menhir_s;
12405 MenhirLib.EngineTypes.semv = Obj.repr _v;
12406 MenhirLib.EngineTypes.startp = _startpos;
12407 MenhirLib.EngineTypes.endp = _endpos;
12408 MenhirLib.EngineTypes.next = _menhir_stack;
12409 });
12410 (fun _menhir_env ->
12411 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12412 let {
12413 MenhirLib.EngineTypes.state = _menhir_s;
12414 MenhirLib.EngineTypes.semv = _1;
12415 MenhirLib.EngineTypes.startp = _startpos__1_;
12416 MenhirLib.EngineTypes.endp = _endpos__1_;
12417 MenhirLib.EngineTypes.next = _menhir_stack;
12418 } = _menhir_stack in
12419 let _1 : 'tv_initialize_list_start = Obj.magic _1 in
12420 let _startpos = _startpos__1_ in
12421 let _endpos = _endpos__1_ in
12422 let _v : 'tv_initialize_list =
12423 # 1039 "parser_cocci_menhir.mly"
12424 ( Ast0.wrap(Ast0.DOTS(_1)) )
12425 # 12426 "parser_cocci_menhir.ml"
12426 in
12427 _menhir_env.MenhirLib.EngineTypes.stack <- {
12428 MenhirLib.EngineTypes.state = _menhir_s;
12429 MenhirLib.EngineTypes.semv = Obj.repr _v;
12430 MenhirLib.EngineTypes.startp = _startpos;
12431 MenhirLib.EngineTypes.endp = _endpos;
12432 MenhirLib.EngineTypes.next = _menhir_stack;
12433 });
12434 (fun _menhir_env ->
12435 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12436 let {
12437 MenhirLib.EngineTypes.semv = _2;
12438 MenhirLib.EngineTypes.startp = _startpos__2_;
12439 MenhirLib.EngineTypes.endp = _endpos__2_;
12440 MenhirLib.EngineTypes.next = {
12441 MenhirLib.EngineTypes.state = _menhir_s;
12442 MenhirLib.EngineTypes.semv = _1;
12443 MenhirLib.EngineTypes.startp = _startpos__1_;
12444 MenhirLib.EngineTypes.endp = _endpos__1_;
12445 MenhirLib.EngineTypes.next = _menhir_stack;
12446 };
12447 } = _menhir_stack in
12448 let _2 : (
12449 # 106 "parser_cocci_menhir.mly"
12450 (Data.clt)
12451 # 12452 "parser_cocci_menhir.ml"
12452 ) = Obj.magic _2 in
12453 let _1 : 'tv_initialize2 = Obj.magic _1 in
12454 let _startpos = _startpos__1_ in
12455 let _endpos = _endpos__2_ in
12456 let _v : 'tv_initialize_list_start =
12457 # 1042 "parser_cocci_menhir.mly"
12458 ( [_1;Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))] )
12459 # 12460 "parser_cocci_menhir.ml"
12460 in
12461 _menhir_env.MenhirLib.EngineTypes.stack <- {
12462 MenhirLib.EngineTypes.state = _menhir_s;
12463 MenhirLib.EngineTypes.semv = Obj.repr _v;
12464 MenhirLib.EngineTypes.startp = _startpos;
12465 MenhirLib.EngineTypes.endp = _endpos;
12466 MenhirLib.EngineTypes.next = _menhir_stack;
12467 });
12468 (fun _menhir_env ->
12469 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12470 let {
12471 MenhirLib.EngineTypes.semv = _3;
12472 MenhirLib.EngineTypes.startp = _startpos__3_;
12473 MenhirLib.EngineTypes.endp = _endpos__3_;
12474 MenhirLib.EngineTypes.next = {
12475 MenhirLib.EngineTypes.semv = _2;
12476 MenhirLib.EngineTypes.startp = _startpos__2_;
12477 MenhirLib.EngineTypes.endp = _endpos__2_;
12478 MenhirLib.EngineTypes.next = {
12479 MenhirLib.EngineTypes.state = _menhir_s;
12480 MenhirLib.EngineTypes.semv = _1;
12481 MenhirLib.EngineTypes.startp = _startpos__1_;
12482 MenhirLib.EngineTypes.endp = _endpos__1_;
12483 MenhirLib.EngineTypes.next = _menhir_stack;
12484 };
12485 };
12486 } = _menhir_stack in
12487 let _3 : 'tv_initialize_list_start = Obj.magic _3 in
12488 let _2 : (
12489 # 106 "parser_cocci_menhir.mly"
12490 (Data.clt)
12491 # 12492 "parser_cocci_menhir.ml"
12492 ) = Obj.magic _2 in
12493 let _1 : 'tv_initialize2 = Obj.magic _1 in
12494 let _startpos = _startpos__1_ in
12495 let _endpos = _endpos__3_ in
12496 let _v : 'tv_initialize_list_start =
12497 # 1044 "parser_cocci_menhir.mly"
12498 ( _1::Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))::_3 )
12499 # 12500 "parser_cocci_menhir.ml"
12500 in
12501 _menhir_env.MenhirLib.EngineTypes.stack <- {
12502 MenhirLib.EngineTypes.state = _menhir_s;
12503 MenhirLib.EngineTypes.semv = Obj.repr _v;
12504 MenhirLib.EngineTypes.startp = _startpos;
12505 MenhirLib.EngineTypes.endp = _endpos;
12506 MenhirLib.EngineTypes.next = _menhir_stack;
12507 });
12508 (fun _menhir_env ->
12509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12510 let {
12511 MenhirLib.EngineTypes.semv = r;
12512 MenhirLib.EngineTypes.startp = _startpos_r_;
12513 MenhirLib.EngineTypes.endp = _endpos_r_;
12514 MenhirLib.EngineTypes.next = {
12515 MenhirLib.EngineTypes.state = _menhir_s;
12516 MenhirLib.EngineTypes.semv = d;
12517 MenhirLib.EngineTypes.startp = _startpos_d_;
12518 MenhirLib.EngineTypes.endp = _endpos_d_;
12519 MenhirLib.EngineTypes.next = _menhir_stack;
12520 };
12521 } = _menhir_stack in
12522 let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
12523 let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
12524 let _startpos = _startpos_d_ in
12525 let _endpos = _endpos_r_ in
12526 let _v : 'tv_initialize_list_start =
12527 # 1047 "parser_cocci_menhir.mly"
12528 ( (P.mkidots "..." d)::
12529 (List.concat(List.map (function x -> x (P.mkidots "...")) r)) )
12530 # 12531 "parser_cocci_menhir.ml"
12531 in
12532 _menhir_env.MenhirLib.EngineTypes.stack <- {
12533 MenhirLib.EngineTypes.state = _menhir_s;
12534 MenhirLib.EngineTypes.semv = Obj.repr _v;
12535 MenhirLib.EngineTypes.startp = _startpos;
12536 MenhirLib.EngineTypes.endp = _endpos;
12537 MenhirLib.EngineTypes.next = _menhir_stack;
12538 });
12539 (fun _menhir_env ->
12540 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12541 let {
12542 MenhirLib.EngineTypes.state = _menhir_s;
12543 MenhirLib.EngineTypes.startp = _startpos__1_;
12544 MenhirLib.EngineTypes.endp = _endpos__1_;
12545 MenhirLib.EngineTypes.next = _menhir_stack;
12546 } = _menhir_stack in
12547 let _startpos = _startpos__1_ in
12548 let _endpos = _endpos__1_ in
12549 let _v : 'tv_invalid =
12550 # 1140 "parser_cocci_menhir.mly"
12551 ( raise (Semantic_cocci.Semantic "not matchable") )
12552 # 12553 "parser_cocci_menhir.ml"
12553 in
12554 _menhir_env.MenhirLib.EngineTypes.stack <- {
12555 MenhirLib.EngineTypes.state = _menhir_s;
12556 MenhirLib.EngineTypes.semv = Obj.repr _v;
12557 MenhirLib.EngineTypes.startp = _startpos;
12558 MenhirLib.EngineTypes.endp = _endpos;
12559 MenhirLib.EngineTypes.next = _menhir_stack;
12560 });
12561 (fun _menhir_env ->
12562 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12563 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12564 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12565 let _endpos = _startpos in
12566 let _v : 'tv_is_expression =
12567 # 239 "parser_cocci_menhir.mly"
12568 ( false )
12569 # 12570 "parser_cocci_menhir.ml"
12570 in
12571 _menhir_env.MenhirLib.EngineTypes.stack <- {
12572 MenhirLib.EngineTypes.state = _menhir_s;
12573 MenhirLib.EngineTypes.semv = Obj.repr _v;
12574 MenhirLib.EngineTypes.startp = _startpos;
12575 MenhirLib.EngineTypes.endp = _endpos;
12576 MenhirLib.EngineTypes.next = _menhir_stack;
12577 });
12578 (fun _menhir_env ->
12579 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12580 let {
12581 MenhirLib.EngineTypes.state = _menhir_s;
12582 MenhirLib.EngineTypes.startp = _startpos__1_;
12583 MenhirLib.EngineTypes.endp = _endpos__1_;
12584 MenhirLib.EngineTypes.next = _menhir_stack;
12585 } = _menhir_stack in
12586 let _startpos = _startpos__1_ in
12587 let _endpos = _endpos__1_ in
12588 let _v : 'tv_is_expression =
12589 # 240 "parser_cocci_menhir.mly"
12590 ( true )
12591 # 12592 "parser_cocci_menhir.ml"
12592 in
12593 _menhir_env.MenhirLib.EngineTypes.stack <- {
12594 MenhirLib.EngineTypes.state = _menhir_s;
12595 MenhirLib.EngineTypes.semv = Obj.repr _v;
12596 MenhirLib.EngineTypes.startp = _startpos;
12597 MenhirLib.EngineTypes.endp = _endpos;
12598 MenhirLib.EngineTypes.next = _menhir_stack;
12599 });
12600 (fun _menhir_env ->
12601 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12602 let {
12603 MenhirLib.EngineTypes.semv = t;
12604 MenhirLib.EngineTypes.startp = _startpos_t_;
12605 MenhirLib.EngineTypes.endp = _endpos_t_;
12606 MenhirLib.EngineTypes.next = {
12607 MenhirLib.EngineTypes.state = _menhir_s;
12608 MenhirLib.EngineTypes.startp = _startpos__1_;
12609 MenhirLib.EngineTypes.endp = _endpos__1_;
12610 MenhirLib.EngineTypes.next = _menhir_stack;
12611 };
12612 } = _menhir_stack in
12613 let t : 'tv_ctype = Obj.magic t in
12614 let _startpos = _startpos__1_ in
12615 let _endpos = _endpos_t_ in
12616 let _v : 'tv_iso_ctype_ =
12617 # 1752 "parser_cocci_menhir.mly"
12618 ( Common.Left t )
12619 # 12620 "parser_cocci_menhir.ml"
12620 in
12621 _menhir_env.MenhirLib.EngineTypes.stack <- {
12622 MenhirLib.EngineTypes.state = _menhir_s;
12623 MenhirLib.EngineTypes.semv = Obj.repr _v;
12624 MenhirLib.EngineTypes.startp = _startpos;
12625 MenhirLib.EngineTypes.endp = _endpos;
12626 MenhirLib.EngineTypes.next = _menhir_stack;
12627 });
12628 (fun _menhir_env ->
12629 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12630 let {
12631 MenhirLib.EngineTypes.semv = t;
12632 MenhirLib.EngineTypes.startp = _startpos_t_;
12633 MenhirLib.EngineTypes.endp = _endpos_t_;
12634 MenhirLib.EngineTypes.next = {
12635 MenhirLib.EngineTypes.state = _menhir_s;
12636 MenhirLib.EngineTypes.startp = _startpos__1_;
12637 MenhirLib.EngineTypes.endp = _endpos__1_;
12638 MenhirLib.EngineTypes.next = _menhir_stack;
12639 };
12640 } = _menhir_stack in
12641 let t : 'tv_ctype = Obj.magic t in
12642 let _startpos = _startpos__1_ in
12643 let _endpos = _endpos_t_ in
12644 let _v : 'tv_iso_ctype_ =
12645 # 1753 "parser_cocci_menhir.mly"
12646 ( Common.Right t )
12647 # 12648 "parser_cocci_menhir.ml"
12648 in
12649 _menhir_env.MenhirLib.EngineTypes.stack <- {
12650 MenhirLib.EngineTypes.state = _menhir_s;
12651 MenhirLib.EngineTypes.semv = Obj.repr _v;
12652 MenhirLib.EngineTypes.startp = _startpos;
12653 MenhirLib.EngineTypes.endp = _endpos;
12654 MenhirLib.EngineTypes.next = _menhir_stack;
12655 });
12656 (fun _menhir_env ->
12657 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12658 let {
12659 MenhirLib.EngineTypes.semv = t;
12660 MenhirLib.EngineTypes.startp = _startpos_t_;
12661 MenhirLib.EngineTypes.endp = _endpos_t_;
12662 MenhirLib.EngineTypes.next = {
12663 MenhirLib.EngineTypes.state = _menhir_s;
12664 MenhirLib.EngineTypes.startp = _startpos__1_;
12665 MenhirLib.EngineTypes.endp = _endpos__1_;
12666 MenhirLib.EngineTypes.next = _menhir_stack;
12667 };
12668 } = _menhir_stack in
12669 let t : 'tv_decl_var = Obj.magic t in
12670 let _startpos = _startpos__1_ in
12671 let _endpos = _endpos_t_ in
12672 let _v : 'tv_iso_decl_var_ =
12673 # 1752 "parser_cocci_menhir.mly"
12674 ( Common.Left t )
12675 # 12676 "parser_cocci_menhir.ml"
12676 in
12677 _menhir_env.MenhirLib.EngineTypes.stack <- {
12678 MenhirLib.EngineTypes.state = _menhir_s;
12679 MenhirLib.EngineTypes.semv = Obj.repr _v;
12680 MenhirLib.EngineTypes.startp = _startpos;
12681 MenhirLib.EngineTypes.endp = _endpos;
12682 MenhirLib.EngineTypes.next = _menhir_stack;
12683 });
12684 (fun _menhir_env ->
12685 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12686 let {
12687 MenhirLib.EngineTypes.semv = t;
12688 MenhirLib.EngineTypes.startp = _startpos_t_;
12689 MenhirLib.EngineTypes.endp = _endpos_t_;
12690 MenhirLib.EngineTypes.next = {
12691 MenhirLib.EngineTypes.state = _menhir_s;
12692 MenhirLib.EngineTypes.startp = _startpos__1_;
12693 MenhirLib.EngineTypes.endp = _endpos__1_;
12694 MenhirLib.EngineTypes.next = _menhir_stack;
12695 };
12696 } = _menhir_stack in
12697 let t : 'tv_decl_var = Obj.magic t in
12698 let _startpos = _startpos__1_ in
12699 let _endpos = _endpos_t_ in
12700 let _v : 'tv_iso_decl_var_ =
12701 # 1753 "parser_cocci_menhir.mly"
12702 ( Common.Right t )
12703 # 12704 "parser_cocci_menhir.ml"
12704 in
12705 _menhir_env.MenhirLib.EngineTypes.stack <- {
12706 MenhirLib.EngineTypes.state = _menhir_s;
12707 MenhirLib.EngineTypes.semv = Obj.repr _v;
12708 MenhirLib.EngineTypes.startp = _startpos;
12709 MenhirLib.EngineTypes.endp = _endpos;
12710 MenhirLib.EngineTypes.next = _menhir_stack;
12711 });
12712 (fun _menhir_env ->
12713 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12714 let {
12715 MenhirLib.EngineTypes.semv = t;
12716 MenhirLib.EngineTypes.startp = _startpos_t_;
12717 MenhirLib.EngineTypes.endp = _endpos_t_;
12718 MenhirLib.EngineTypes.next = {
12719 MenhirLib.EngineTypes.state = _menhir_s;
12720 MenhirLib.EngineTypes.startp = _startpos__1_;
12721 MenhirLib.EngineTypes.endp = _endpos__1_;
12722 MenhirLib.EngineTypes.next = _menhir_stack;
12723 };
12724 } = _menhir_stack in
12725 let t : 'tv_dexpr = Obj.magic t in
12726 let _startpos = _startpos__1_ in
12727 let _endpos = _endpos_t_ in
12728 let _v : 'tv_iso_dexpr_ =
12729 # 1752 "parser_cocci_menhir.mly"
12730 ( Common.Left t )
12731 # 12732 "parser_cocci_menhir.ml"
12732 in
12733 _menhir_env.MenhirLib.EngineTypes.stack <- {
12734 MenhirLib.EngineTypes.state = _menhir_s;
12735 MenhirLib.EngineTypes.semv = Obj.repr _v;
12736 MenhirLib.EngineTypes.startp = _startpos;
12737 MenhirLib.EngineTypes.endp = _endpos;
12738 MenhirLib.EngineTypes.next = _menhir_stack;
12739 });
12740 (fun _menhir_env ->
12741 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12742 let {
12743 MenhirLib.EngineTypes.semv = t;
12744 MenhirLib.EngineTypes.startp = _startpos_t_;
12745 MenhirLib.EngineTypes.endp = _endpos_t_;
12746 MenhirLib.EngineTypes.next = {
12747 MenhirLib.EngineTypes.state = _menhir_s;
12748 MenhirLib.EngineTypes.startp = _startpos__1_;
12749 MenhirLib.EngineTypes.endp = _endpos__1_;
12750 MenhirLib.EngineTypes.next = _menhir_stack;
12751 };
12752 } = _menhir_stack in
12753 let t : 'tv_dexpr = Obj.magic t in
12754 let _startpos = _startpos__1_ in
12755 let _endpos = _endpos_t_ in
12756 let _v : 'tv_iso_dexpr_ =
12757 # 1753 "parser_cocci_menhir.mly"
12758 ( Common.Right t )
12759 # 12760 "parser_cocci_menhir.ml"
12760 in
12761 _menhir_env.MenhirLib.EngineTypes.stack <- {
12762 MenhirLib.EngineTypes.state = _menhir_s;
12763 MenhirLib.EngineTypes.semv = Obj.repr _v;
12764 MenhirLib.EngineTypes.startp = _startpos;
12765 MenhirLib.EngineTypes.endp = _endpos;
12766 MenhirLib.EngineTypes.next = _menhir_stack;
12767 });
12768 (fun _menhir_env ->
12769 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12770 let {
12771 MenhirLib.EngineTypes.semv = t;
12772 MenhirLib.EngineTypes.startp = _startpos_t_;
12773 MenhirLib.EngineTypes.endp = _endpos_t_;
12774 MenhirLib.EngineTypes.next = {
12775 MenhirLib.EngineTypes.state = _menhir_s;
12776 MenhirLib.EngineTypes.startp = _startpos__1_;
12777 MenhirLib.EngineTypes.endp = _endpos__1_;
12778 MenhirLib.EngineTypes.next = _menhir_stack;
12779 };
12780 } = _menhir_stack in
12781 let t : 'tv_nest_start = Obj.magic t in
12782 let _startpos = _startpos__1_ in
12783 let _endpos = _endpos_t_ in
12784 let _v : 'tv_iso_nest_start_ =
12785 # 1752 "parser_cocci_menhir.mly"
12786 ( Common.Left t )
12787 # 12788 "parser_cocci_menhir.ml"
12788 in
12789 _menhir_env.MenhirLib.EngineTypes.stack <- {
12790 MenhirLib.EngineTypes.state = _menhir_s;
12791 MenhirLib.EngineTypes.semv = Obj.repr _v;
12792 MenhirLib.EngineTypes.startp = _startpos;
12793 MenhirLib.EngineTypes.endp = _endpos;
12794 MenhirLib.EngineTypes.next = _menhir_stack;
12795 });
12796 (fun _menhir_env ->
12797 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12798 let {
12799 MenhirLib.EngineTypes.semv = t;
12800 MenhirLib.EngineTypes.startp = _startpos_t_;
12801 MenhirLib.EngineTypes.endp = _endpos_t_;
12802 MenhirLib.EngineTypes.next = {
12803 MenhirLib.EngineTypes.state = _menhir_s;
12804 MenhirLib.EngineTypes.startp = _startpos__1_;
12805 MenhirLib.EngineTypes.endp = _endpos__1_;
12806 MenhirLib.EngineTypes.next = _menhir_stack;
12807 };
12808 } = _menhir_stack in
12809 let t : 'tv_nest_start = Obj.magic t in
12810 let _startpos = _startpos__1_ in
12811 let _endpos = _endpos_t_ in
12812 let _v : 'tv_iso_nest_start_ =
12813 # 1753 "parser_cocci_menhir.mly"
12814 ( Common.Right t )
12815 # 12816 "parser_cocci_menhir.ml"
12816 in
12817 _menhir_env.MenhirLib.EngineTypes.stack <- {
12818 MenhirLib.EngineTypes.state = _menhir_s;
12819 MenhirLib.EngineTypes.semv = Obj.repr _v;
12820 MenhirLib.EngineTypes.startp = _startpos;
12821 MenhirLib.EngineTypes.endp = _endpos;
12822 MenhirLib.EngineTypes.next = _menhir_stack;
12823 });
12824 (fun _menhir_env ->
12825 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12826 let {
12827 MenhirLib.EngineTypes.semv = t;
12828 MenhirLib.EngineTypes.startp = _startpos_t_;
12829 MenhirLib.EngineTypes.endp = _endpos_t_;
12830 MenhirLib.EngineTypes.next = {
12831 MenhirLib.EngineTypes.state = _menhir_s;
12832 MenhirLib.EngineTypes.startp = _startpos__1_;
12833 MenhirLib.EngineTypes.endp = _endpos__1_;
12834 MenhirLib.EngineTypes.next = _menhir_stack;
12835 };
12836 } = _menhir_stack in
12837 let t : 'tv_single_statement = Obj.magic t in
12838 let _startpos = _startpos__1_ in
12839 let _endpos = _endpos_t_ in
12840 let _v : 'tv_iso_single_statement_ =
12841 # 1752 "parser_cocci_menhir.mly"
12842 ( Common.Left t )
12843 # 12844 "parser_cocci_menhir.ml"
12844 in
12845 _menhir_env.MenhirLib.EngineTypes.stack <- {
12846 MenhirLib.EngineTypes.state = _menhir_s;
12847 MenhirLib.EngineTypes.semv = Obj.repr _v;
12848 MenhirLib.EngineTypes.startp = _startpos;
12849 MenhirLib.EngineTypes.endp = _endpos;
12850 MenhirLib.EngineTypes.next = _menhir_stack;
12851 });
12852 (fun _menhir_env ->
12853 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12854 let {
12855 MenhirLib.EngineTypes.semv = t;
12856 MenhirLib.EngineTypes.startp = _startpos_t_;
12857 MenhirLib.EngineTypes.endp = _endpos_t_;
12858 MenhirLib.EngineTypes.next = {
12859 MenhirLib.EngineTypes.state = _menhir_s;
12860 MenhirLib.EngineTypes.startp = _startpos__1_;
12861 MenhirLib.EngineTypes.endp = _endpos__1_;
12862 MenhirLib.EngineTypes.next = _menhir_stack;
12863 };
12864 } = _menhir_stack in
12865 let t : 'tv_single_statement = Obj.magic t in
12866 let _startpos = _startpos__1_ in
12867 let _endpos = _endpos_t_ in
12868 let _v : 'tv_iso_single_statement_ =
12869 # 1753 "parser_cocci_menhir.mly"
12870 ( Common.Right t )
12871 # 12872 "parser_cocci_menhir.ml"
12872 in
12873 _menhir_env.MenhirLib.EngineTypes.stack <- {
12874 MenhirLib.EngineTypes.state = _menhir_s;
12875 MenhirLib.EngineTypes.semv = Obj.repr _v;
12876 MenhirLib.EngineTypes.startp = _startpos;
12877 MenhirLib.EngineTypes.endp = _endpos;
12878 MenhirLib.EngineTypes.next = _menhir_stack;
12879 });
12880 (fun _menhir_env ->
12881 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12882 let {
12883 MenhirLib.EngineTypes.startp = _startpos__4_;
12884 MenhirLib.EngineTypes.endp = _endpos__4_;
12885 MenhirLib.EngineTypes.next = {
12886 MenhirLib.EngineTypes.semv = el;
12887 MenhirLib.EngineTypes.startp = _startpos_el_;
12888 MenhirLib.EngineTypes.endp = _endpos_el_;
12889 MenhirLib.EngineTypes.next = {
12890 MenhirLib.EngineTypes.semv = e1;
12891 MenhirLib.EngineTypes.startp = _startpos_e1_;
12892 MenhirLib.EngineTypes.endp = _endpos_e1_;
12893 MenhirLib.EngineTypes.next = {
12894 MenhirLib.EngineTypes.state = _menhir_s;
12895 MenhirLib.EngineTypes.startp = _startpos__1_;
12896 MenhirLib.EngineTypes.endp = _endpos__1_;
12897 MenhirLib.EngineTypes.next = _menhir_stack;
12898 };
12899 };
12900 };
12901 } = _menhir_stack in
12902 let el : 'tv_list_iso_dexpr__ = Obj.magic el in
12903 let e1 : 'tv_dexpr = Obj.magic e1 in
12904 let _startpos = _startpos__1_ in
12905 let _endpos = _endpos__4_ in
12906 let _v : (
12907 # 161 "parser_cocci_menhir.mly"
12908 (Ast0_cocci.anything list list)
12909 # 12910 "parser_cocci_menhir.ml"
12910 ) =
12911 # 1724 "parser_cocci_menhir.mly"
12912 ( P.iso_adjust (function x -> Ast0.ExprTag x) e1 el )
12913 # 12914 "parser_cocci_menhir.ml"
12914 in
12915 _menhir_env.MenhirLib.EngineTypes.stack <- {
12916 MenhirLib.EngineTypes.state = _menhir_s;
12917 MenhirLib.EngineTypes.semv = Obj.repr _v;
12918 MenhirLib.EngineTypes.startp = _startpos;
12919 MenhirLib.EngineTypes.endp = _endpos;
12920 MenhirLib.EngineTypes.next = _menhir_stack;
12921 });
12922 (fun _menhir_env ->
12923 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12924 let {
12925 MenhirLib.EngineTypes.startp = _startpos__4_;
12926 MenhirLib.EngineTypes.endp = _endpos__4_;
12927 MenhirLib.EngineTypes.next = {
12928 MenhirLib.EngineTypes.semv = el;
12929 MenhirLib.EngineTypes.startp = _startpos_el_;
12930 MenhirLib.EngineTypes.endp = _endpos_el_;
12931 MenhirLib.EngineTypes.next = {
12932 MenhirLib.EngineTypes.semv = e1;
12933 MenhirLib.EngineTypes.startp = _startpos_e1_;
12934 MenhirLib.EngineTypes.endp = _endpos_e1_;
12935 MenhirLib.EngineTypes.next = {
12936 MenhirLib.EngineTypes.state = _menhir_s;
12937 MenhirLib.EngineTypes.startp = _startpos__1_;
12938 MenhirLib.EngineTypes.endp = _endpos__1_;
12939 MenhirLib.EngineTypes.next = _menhir_stack;
12940 };
12941 };
12942 };
12943 } = _menhir_stack in
12944 let el : 'tv_list_iso_dexpr__ = Obj.magic el in
12945 let e1 : 'tv_dexpr = Obj.magic e1 in
12946 let _startpos = _startpos__1_ in
12947 let _endpos = _endpos__4_ in
12948 let _v : (
12949 # 161 "parser_cocci_menhir.mly"
12950 (Ast0_cocci.anything list list)
12951 # 12952 "parser_cocci_menhir.ml"
12952 ) =
12953 # 1726 "parser_cocci_menhir.mly"
12954 ( P.iso_adjust (function x -> Ast0.ArgExprTag x) e1 el )
12955 # 12956 "parser_cocci_menhir.ml"
12956 in
12957 _menhir_env.MenhirLib.EngineTypes.stack <- {
12958 MenhirLib.EngineTypes.state = _menhir_s;
12959 MenhirLib.EngineTypes.semv = Obj.repr _v;
12960 MenhirLib.EngineTypes.startp = _startpos;
12961 MenhirLib.EngineTypes.endp = _endpos;
12962 MenhirLib.EngineTypes.next = _menhir_stack;
12963 });
12964 (fun _menhir_env ->
12965 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12966 let {
12967 MenhirLib.EngineTypes.startp = _startpos__4_;
12968 MenhirLib.EngineTypes.endp = _endpos__4_;
12969 MenhirLib.EngineTypes.next = {
12970 MenhirLib.EngineTypes.semv = el;
12971 MenhirLib.EngineTypes.startp = _startpos_el_;
12972 MenhirLib.EngineTypes.endp = _endpos_el_;
12973 MenhirLib.EngineTypes.next = {
12974 MenhirLib.EngineTypes.semv = e1;
12975 MenhirLib.EngineTypes.startp = _startpos_e1_;
12976 MenhirLib.EngineTypes.endp = _endpos_e1_;
12977 MenhirLib.EngineTypes.next = {
12978 MenhirLib.EngineTypes.state = _menhir_s;
12979 MenhirLib.EngineTypes.startp = _startpos__1_;
12980 MenhirLib.EngineTypes.endp = _endpos__1_;
12981 MenhirLib.EngineTypes.next = _menhir_stack;
12982 };
12983 };
12984 };
12985 } = _menhir_stack in
12986 let el : 'tv_list_iso_dexpr__ = Obj.magic el in
12987 let e1 : 'tv_dexpr = Obj.magic e1 in
12988 let _startpos = _startpos__1_ in
12989 let _endpos = _endpos__4_ in
12990 let _v : (
12991 # 161 "parser_cocci_menhir.mly"
12992 (Ast0_cocci.anything list list)
12993 # 12994 "parser_cocci_menhir.ml"
12994 ) =
12995 # 1728 "parser_cocci_menhir.mly"
12996 ( P.iso_adjust (function x -> Ast0.TestExprTag x) e1 el )
12997 # 12998 "parser_cocci_menhir.ml"
12998 in
12999 _menhir_env.MenhirLib.EngineTypes.stack <- {
13000 MenhirLib.EngineTypes.state = _menhir_s;
13001 MenhirLib.EngineTypes.semv = Obj.repr _v;
13002 MenhirLib.EngineTypes.startp = _startpos;
13003 MenhirLib.EngineTypes.endp = _endpos;
13004 MenhirLib.EngineTypes.next = _menhir_stack;
13005 });
13006 (fun _menhir_env ->
13007 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13008 let {
13009 MenhirLib.EngineTypes.startp = _startpos__4_;
13010 MenhirLib.EngineTypes.endp = _endpos__4_;
13011 MenhirLib.EngineTypes.next = {
13012 MenhirLib.EngineTypes.semv = sl;
13013 MenhirLib.EngineTypes.startp = _startpos_sl_;
13014 MenhirLib.EngineTypes.endp = _endpos_sl_;
13015 MenhirLib.EngineTypes.next = {
13016 MenhirLib.EngineTypes.semv = s1;
13017 MenhirLib.EngineTypes.startp = _startpos_s1_;
13018 MenhirLib.EngineTypes.endp = _endpos_s1_;
13019 MenhirLib.EngineTypes.next = {
13020 MenhirLib.EngineTypes.state = _menhir_s;
13021 MenhirLib.EngineTypes.startp = _startpos__1_;
13022 MenhirLib.EngineTypes.endp = _endpos__1_;
13023 MenhirLib.EngineTypes.next = _menhir_stack;
13024 };
13025 };
13026 };
13027 } = _menhir_stack in
13028 let sl : 'tv_list_iso_single_statement__ = Obj.magic sl in
13029 let s1 : 'tv_single_statement = Obj.magic s1 in
13030 let _startpos = _startpos__1_ in
13031 let _endpos = _endpos__4_ in
13032 let _v : (
13033 # 161 "parser_cocci_menhir.mly"
13034 (Ast0_cocci.anything list list)
13035 # 13036 "parser_cocci_menhir.ml"
13036 ) =
13037 # 1730 "parser_cocci_menhir.mly"
13038 ( P.iso_adjust (function x -> Ast0.StmtTag x) s1 sl )
13039 # 13040 "parser_cocci_menhir.ml"
13040 in
13041 _menhir_env.MenhirLib.EngineTypes.stack <- {
13042 MenhirLib.EngineTypes.state = _menhir_s;
13043 MenhirLib.EngineTypes.semv = Obj.repr _v;
13044 MenhirLib.EngineTypes.startp = _startpos;
13045 MenhirLib.EngineTypes.endp = _endpos;
13046 MenhirLib.EngineTypes.next = _menhir_stack;
13047 });
13048 (fun _menhir_env ->
13049 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13050 let {
13051 MenhirLib.EngineTypes.startp = _startpos__4_;
13052 MenhirLib.EngineTypes.endp = _endpos__4_;
13053 MenhirLib.EngineTypes.next = {
13054 MenhirLib.EngineTypes.semv = tl;
13055 MenhirLib.EngineTypes.startp = _startpos_tl_;
13056 MenhirLib.EngineTypes.endp = _endpos_tl_;
13057 MenhirLib.EngineTypes.next = {
13058 MenhirLib.EngineTypes.semv = t1;
13059 MenhirLib.EngineTypes.startp = _startpos_t1_;
13060 MenhirLib.EngineTypes.endp = _endpos_t1_;
13061 MenhirLib.EngineTypes.next = {
13062 MenhirLib.EngineTypes.state = _menhir_s;
13063 MenhirLib.EngineTypes.startp = _startpos__1_;
13064 MenhirLib.EngineTypes.endp = _endpos__1_;
13065 MenhirLib.EngineTypes.next = _menhir_stack;
13066 };
13067 };
13068 };
13069 } = _menhir_stack in
13070 let tl : 'tv_list_iso_ctype__ = Obj.magic tl in
13071 let t1 : 'tv_ctype = Obj.magic t1 in
13072 let _startpos = _startpos__1_ in
13073 let _endpos = _endpos__4_ in
13074 let _v : (
13075 # 161 "parser_cocci_menhir.mly"
13076 (Ast0_cocci.anything list list)
13077 # 13078 "parser_cocci_menhir.ml"
13078 ) =
13079 # 1732 "parser_cocci_menhir.mly"
13080 ( P.iso_adjust (function x -> Ast0.TypeCTag x) t1 tl )
13081 # 13082 "parser_cocci_menhir.ml"
13082 in
13083 _menhir_env.MenhirLib.EngineTypes.stack <- {
13084 MenhirLib.EngineTypes.state = _menhir_s;
13085 MenhirLib.EngineTypes.semv = Obj.repr _v;
13086 MenhirLib.EngineTypes.startp = _startpos;
13087 MenhirLib.EngineTypes.endp = _endpos;
13088 MenhirLib.EngineTypes.next = _menhir_stack;
13089 });
13090 (fun _menhir_env ->
13091 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13092 let {
13093 MenhirLib.EngineTypes.startp = _startpos__4_;
13094 MenhirLib.EngineTypes.endp = _endpos__4_;
13095 MenhirLib.EngineTypes.next = {
13096 MenhirLib.EngineTypes.semv = el;
13097 MenhirLib.EngineTypes.startp = _startpos_el_;
13098 MenhirLib.EngineTypes.endp = _endpos_el_;
13099 MenhirLib.EngineTypes.next = {
13100 MenhirLib.EngineTypes.semv = e1;
13101 MenhirLib.EngineTypes.startp = _startpos_e1_;
13102 MenhirLib.EngineTypes.endp = _endpos_e1_;
13103 MenhirLib.EngineTypes.next = {
13104 MenhirLib.EngineTypes.state = _menhir_s;
13105 MenhirLib.EngineTypes.startp = _startpos__1_;
13106 MenhirLib.EngineTypes.endp = _endpos__1_;
13107 MenhirLib.EngineTypes.next = _menhir_stack;
13108 };
13109 };
13110 };
13111 } = _menhir_stack in
13112 let el : 'tv_list_iso_nest_start__ = Obj.magic el in
13113 let e1 : 'tv_nest_start = Obj.magic e1 in
13114 let _startpos = _startpos__1_ in
13115 let _endpos = _endpos__4_ in
13116 let _v : (
13117 # 161 "parser_cocci_menhir.mly"
13118 (Ast0_cocci.anything list list)
13119 # 13120 "parser_cocci_menhir.ml"
13120 ) =
13121 # 1734 "parser_cocci_menhir.mly"
13122 ( P.iso_adjust (function x -> Ast0.DotsStmtTag x) e1 el )
13123 # 13124 "parser_cocci_menhir.ml"
13124 in
13125 _menhir_env.MenhirLib.EngineTypes.stack <- {
13126 MenhirLib.EngineTypes.state = _menhir_s;
13127 MenhirLib.EngineTypes.semv = Obj.repr _v;
13128 MenhirLib.EngineTypes.startp = _startpos;
13129 MenhirLib.EngineTypes.endp = _endpos;
13130 MenhirLib.EngineTypes.next = _menhir_stack;
13131 });
13132 (fun _menhir_env ->
13133 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13134 let {
13135 MenhirLib.EngineTypes.startp = _startpos__4_;
13136 MenhirLib.EngineTypes.endp = _endpos__4_;
13137 MenhirLib.EngineTypes.next = {
13138 MenhirLib.EngineTypes.semv = dl;
13139 MenhirLib.EngineTypes.startp = _startpos_dl_;
13140 MenhirLib.EngineTypes.endp = _endpos_dl_;
13141 MenhirLib.EngineTypes.next = {
13142 MenhirLib.EngineTypes.semv = d1;
13143 MenhirLib.EngineTypes.startp = _startpos_d1_;
13144 MenhirLib.EngineTypes.endp = _endpos_d1_;
13145 MenhirLib.EngineTypes.next = {
13146 MenhirLib.EngineTypes.state = _menhir_s;
13147 MenhirLib.EngineTypes.startp = _startpos__1_;
13148 MenhirLib.EngineTypes.endp = _endpos__1_;
13149 MenhirLib.EngineTypes.next = _menhir_stack;
13150 };
13151 };
13152 };
13153 } = _menhir_stack in
13154 let dl : 'tv_list_iso_decl_var__ = Obj.magic dl in
13155 let d1 : 'tv_decl_var = Obj.magic d1 in
13156 let _startpos = _startpos__1_ in
13157 let _endpos = _endpos__4_ in
13158 let _v : (
13159 # 161 "parser_cocci_menhir.mly"
13160 (Ast0_cocci.anything list list)
13161 # 13162 "parser_cocci_menhir.ml"
13162 ) =
13163 # 1736 "parser_cocci_menhir.mly"
13164 ( let check_one = function
13165 [x] -> x
13166 | _ ->
13167 raise
13168 (Semantic_cocci.Semantic
13169 "only one variable per declaration in an isomorphism rule") in
13170 let d1 = check_one d1 in
13171 let dl =
13172 List.map
13173 (function
13174 Common.Left x -> Common.Left(check_one x)
13175 | Common.Right x -> Common.Right(check_one x))
13176 dl in
13177 P.iso_adjust (function x -> Ast0.DeclTag x) d1 dl )
13178 # 13179 "parser_cocci_menhir.ml"
13179 in
13180 _menhir_env.MenhirLib.EngineTypes.stack <- {
13181 MenhirLib.EngineTypes.state = _menhir_s;
13182 MenhirLib.EngineTypes.semv = Obj.repr _v;
13183 MenhirLib.EngineTypes.startp = _startpos;
13184 MenhirLib.EngineTypes.endp = _endpos;
13185 MenhirLib.EngineTypes.next = _menhir_stack;
13186 });
13187 (fun _menhir_env ->
13188 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13189 let {
13190 MenhirLib.EngineTypes.state = _menhir_s;
13191 MenhirLib.EngineTypes.semv = m;
13192 MenhirLib.EngineTypes.startp = _startpos_m_;
13193 MenhirLib.EngineTypes.endp = _endpos_m_;
13194 MenhirLib.EngineTypes.next = _menhir_stack;
13195 } = _menhir_stack in
13196 let m : 'tv_metadec = Obj.magic m in
13197 let _startpos = _startpos_m_ in
13198 let _endpos = _endpos_m_ in
13199 let _v : (
13200 # 164 "parser_cocci_menhir.mly"
13201 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
13202 # 13203 "parser_cocci_menhir.ml"
13203 ) =
13204 # 181 "parser_cocci_menhir.mly"
13205 ( m "" )
13206 # 13207 "parser_cocci_menhir.ml"
13207 in
13208 _menhir_env.MenhirLib.EngineTypes.stack <- {
13209 MenhirLib.EngineTypes.state = _menhir_s;
13210 MenhirLib.EngineTypes.semv = Obj.repr _v;
13211 MenhirLib.EngineTypes.startp = _startpos;
13212 MenhirLib.EngineTypes.endp = _endpos;
13213 MenhirLib.EngineTypes.next = _menhir_stack;
13214 });
13215 (fun _menhir_env ->
13216 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13217 let {
13218 MenhirLib.EngineTypes.startp = _startpos__2_;
13219 MenhirLib.EngineTypes.endp = _endpos__2_;
13220 MenhirLib.EngineTypes.next = {
13221 MenhirLib.EngineTypes.state = _menhir_s;
13222 MenhirLib.EngineTypes.semv = nm;
13223 MenhirLib.EngineTypes.startp = _startpos_nm_;
13224 MenhirLib.EngineTypes.endp = _endpos_nm_;
13225 MenhirLib.EngineTypes.next = _menhir_stack;
13226 };
13227 } = _menhir_stack in
13228 let nm : 'tv_pure_ident = Obj.magic nm in
13229 let _startpos = _startpos_nm_ in
13230 let _endpos = _endpos__2_ in
13231 let _v : (
13232 # 148 "parser_cocci_menhir.mly"
13233 (Ast_cocci.rulename)
13234 # 13235 "parser_cocci_menhir.ml"
13235 ) =
13236 # 196 "parser_cocci_menhir.mly"
13237 ( P.make_iso_rule_name_result (P.id2name nm) )
13238 # 13239 "parser_cocci_menhir.ml"
13239 in
13240 _menhir_env.MenhirLib.EngineTypes.stack <- {
13241 MenhirLib.EngineTypes.state = _menhir_s;
13242 MenhirLib.EngineTypes.semv = Obj.repr _v;
13243 MenhirLib.EngineTypes.startp = _startpos;
13244 MenhirLib.EngineTypes.endp = _endpos;
13245 MenhirLib.EngineTypes.next = _menhir_stack;
13246 });
13247 (fun _menhir_env ->
13248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13249 let {
13250 MenhirLib.EngineTypes.state = _menhir_s;
13251 MenhirLib.EngineTypes.semv = _1;
13252 MenhirLib.EngineTypes.startp = _startpos__1_;
13253 MenhirLib.EngineTypes.endp = _endpos__1_;
13254 MenhirLib.EngineTypes.next = _menhir_stack;
13255 } = _menhir_stack in
13256 let _1 : (
13257 # 59 "parser_cocci_menhir.mly"
13258 (string * Data.clt)
13259 # 13260 "parser_cocci_menhir.ml"
13260 ) = Obj.magic _1 in
13261 let _startpos = _startpos__1_ in
13262 let _endpos = _endpos__1_ in
13263 let _v : 'tv_iter_ident =
13264 # 1427 "parser_cocci_menhir.mly"
13265 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
13266 # 13267 "parser_cocci_menhir.ml"
13267 in
13268 _menhir_env.MenhirLib.EngineTypes.stack <- {
13269 MenhirLib.EngineTypes.state = _menhir_s;
13270 MenhirLib.EngineTypes.semv = Obj.repr _v;
13271 MenhirLib.EngineTypes.startp = _startpos;
13272 MenhirLib.EngineTypes.endp = _endpos;
13273 MenhirLib.EngineTypes.next = _menhir_stack;
13274 });
13275 (fun _menhir_env ->
13276 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13277 let {
13278 MenhirLib.EngineTypes.state = _menhir_s;
13279 MenhirLib.EngineTypes.semv = _1;
13280 MenhirLib.EngineTypes.startp = _startpos__1_;
13281 MenhirLib.EngineTypes.endp = _endpos__1_;
13282 MenhirLib.EngineTypes.next = _menhir_stack;
13283 } = _menhir_stack in
13284 let _1 : (
13285 # 62 "parser_cocci_menhir.mly"
13286 (Parse_aux.idinfo)
13287 # 13288 "parser_cocci_menhir.ml"
13288 ) = Obj.magic _1 in
13289 let _startpos = _startpos__1_ in
13290 let _endpos = _endpos__1_ in
13291 let _v : 'tv_iter_ident =
13292 # 1429 "parser_cocci_menhir.mly"
13293 ( let (nm,constraints,pure,clt) = _1 in
13294 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
13295 # 13296 "parser_cocci_menhir.ml"
13296 in
13297 _menhir_env.MenhirLib.EngineTypes.stack <- {
13298 MenhirLib.EngineTypes.state = _menhir_s;
13299 MenhirLib.EngineTypes.semv = Obj.repr _v;
13300 MenhirLib.EngineTypes.startp = _startpos;
13301 MenhirLib.EngineTypes.endp = _endpos;
13302 MenhirLib.EngineTypes.next = _menhir_stack;
13303 });
13304 (fun _menhir_env ->
13305 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13306 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13307 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13308 let _endpos = _startpos in
13309 let _v : 'tv_list_TMul_ =
13310 # 114 "standard.mly"
13311 ( [] )
13312 # 13313 "parser_cocci_menhir.ml"
13313 in
13314 _menhir_env.MenhirLib.EngineTypes.stack <- {
13315 MenhirLib.EngineTypes.state = _menhir_s;
13316 MenhirLib.EngineTypes.semv = Obj.repr _v;
13317 MenhirLib.EngineTypes.startp = _startpos;
13318 MenhirLib.EngineTypes.endp = _endpos;
13319 MenhirLib.EngineTypes.next = _menhir_stack;
13320 });
13321 (fun _menhir_env ->
13322 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13323 let {
13324 MenhirLib.EngineTypes.semv = xs;
13325 MenhirLib.EngineTypes.startp = _startpos_xs_;
13326 MenhirLib.EngineTypes.endp = _endpos_xs_;
13327 MenhirLib.EngineTypes.next = {
13328 MenhirLib.EngineTypes.state = _menhir_s;
13329 MenhirLib.EngineTypes.semv = x;
13330 MenhirLib.EngineTypes.startp = _startpos_x_;
13331 MenhirLib.EngineTypes.endp = _endpos_x_;
13332 MenhirLib.EngineTypes.next = _menhir_stack;
13333 };
13334 } = _menhir_stack in
13335 let xs : 'tv_list_TMul_ = Obj.magic xs in
13336 let x : (
13337 # 98 "parser_cocci_menhir.mly"
13338 (Data.clt)
13339 # 13340 "parser_cocci_menhir.ml"
13340 ) = Obj.magic x in
13341 let _startpos = _startpos_x_ in
13342 let _endpos = _endpos_xs_ in
13343 let _v : 'tv_list_TMul_ =
13344 # 116 "standard.mly"
13345 ( x :: xs )
13346 # 13347 "parser_cocci_menhir.ml"
13347 in
13348 _menhir_env.MenhirLib.EngineTypes.stack <- {
13349 MenhirLib.EngineTypes.state = _menhir_s;
13350 MenhirLib.EngineTypes.semv = Obj.repr _v;
13351 MenhirLib.EngineTypes.startp = _startpos;
13352 MenhirLib.EngineTypes.endp = _endpos;
13353 MenhirLib.EngineTypes.next = _menhir_stack;
13354 });
13355 (fun _menhir_env ->
13356 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13357 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13358 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13359 let _endpos = _startpos in
13360 let _v : 'tv_list_array_dec_ =
13361 # 114 "standard.mly"
13362 ( [] )
13363 # 13364 "parser_cocci_menhir.ml"
13364 in
13365 _menhir_env.MenhirLib.EngineTypes.stack <- {
13366 MenhirLib.EngineTypes.state = _menhir_s;
13367 MenhirLib.EngineTypes.semv = Obj.repr _v;
13368 MenhirLib.EngineTypes.startp = _startpos;
13369 MenhirLib.EngineTypes.endp = _endpos;
13370 MenhirLib.EngineTypes.next = _menhir_stack;
13371 });
13372 (fun _menhir_env ->
13373 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13374 let {
13375 MenhirLib.EngineTypes.semv = xs;
13376 MenhirLib.EngineTypes.startp = _startpos_xs_;
13377 MenhirLib.EngineTypes.endp = _endpos_xs_;
13378 MenhirLib.EngineTypes.next = {
13379 MenhirLib.EngineTypes.state = _menhir_s;
13380 MenhirLib.EngineTypes.semv = x;
13381 MenhirLib.EngineTypes.startp = _startpos_x_;
13382 MenhirLib.EngineTypes.endp = _endpos_x_;
13383 MenhirLib.EngineTypes.next = _menhir_stack;
13384 };
13385 } = _menhir_stack in
13386 let xs : 'tv_list_array_dec_ = Obj.magic xs in
13387 let x : 'tv_array_dec = Obj.magic x in
13388 let _startpos = _startpos_x_ in
13389 let _endpos = _endpos_xs_ in
13390 let _v : 'tv_list_array_dec_ =
13391 # 116 "standard.mly"
13392 ( x :: xs )
13393 # 13394 "parser_cocci_menhir.ml"
13394 in
13395 _menhir_env.MenhirLib.EngineTypes.stack <- {
13396 MenhirLib.EngineTypes.state = _menhir_s;
13397 MenhirLib.EngineTypes.semv = Obj.repr _v;
13398 MenhirLib.EngineTypes.startp = _startpos;
13399 MenhirLib.EngineTypes.endp = _endpos;
13400 MenhirLib.EngineTypes.next = _menhir_stack;
13401 });
13402 (fun _menhir_env ->
13403 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13404 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13405 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13406 let _endpos = _startpos in
13407 let _v : 'tv_list_case_line_ =
13408 # 114 "standard.mly"
13409 ( [] )
13410 # 13411 "parser_cocci_menhir.ml"
13411 in
13412 _menhir_env.MenhirLib.EngineTypes.stack <- {
13413 MenhirLib.EngineTypes.state = _menhir_s;
13414 MenhirLib.EngineTypes.semv = Obj.repr _v;
13415 MenhirLib.EngineTypes.startp = _startpos;
13416 MenhirLib.EngineTypes.endp = _endpos;
13417 MenhirLib.EngineTypes.next = _menhir_stack;
13418 });
13419 (fun _menhir_env ->
13420 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13421 let {
13422 MenhirLib.EngineTypes.semv = xs;
13423 MenhirLib.EngineTypes.startp = _startpos_xs_;
13424 MenhirLib.EngineTypes.endp = _endpos_xs_;
13425 MenhirLib.EngineTypes.next = {
13426 MenhirLib.EngineTypes.state = _menhir_s;
13427 MenhirLib.EngineTypes.semv = x;
13428 MenhirLib.EngineTypes.startp = _startpos_x_;
13429 MenhirLib.EngineTypes.endp = _endpos_x_;
13430 MenhirLib.EngineTypes.next = _menhir_stack;
13431 };
13432 } = _menhir_stack in
13433 let xs : 'tv_list_case_line_ = Obj.magic xs in
13434 let x : 'tv_case_line = Obj.magic x in
13435 let _startpos = _startpos_x_ in
13436 let _endpos = _endpos_xs_ in
13437 let _v : 'tv_list_case_line_ =
13438 # 116 "standard.mly"
13439 ( x :: xs )
13440 # 13441 "parser_cocci_menhir.ml"
13441 in
13442 _menhir_env.MenhirLib.EngineTypes.stack <- {
13443 MenhirLib.EngineTypes.state = _menhir_s;
13444 MenhirLib.EngineTypes.semv = Obj.repr _v;
13445 MenhirLib.EngineTypes.startp = _startpos;
13446 MenhirLib.EngineTypes.endp = _endpos;
13447 MenhirLib.EngineTypes.next = _menhir_stack;
13448 });
13449 (fun _menhir_env ->
13450 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13451 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13452 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13453 let _endpos = _startpos in
13454 let _v : 'tv_list_comma_decls_TEllipsis_decl__ =
13455 # 114 "standard.mly"
13456 ( [] )
13457 # 13458 "parser_cocci_menhir.ml"
13458 in
13459 _menhir_env.MenhirLib.EngineTypes.stack <- {
13460 MenhirLib.EngineTypes.state = _menhir_s;
13461 MenhirLib.EngineTypes.semv = Obj.repr _v;
13462 MenhirLib.EngineTypes.startp = _startpos;
13463 MenhirLib.EngineTypes.endp = _endpos;
13464 MenhirLib.EngineTypes.next = _menhir_stack;
13465 });
13466 (fun _menhir_env ->
13467 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13468 let {
13469 MenhirLib.EngineTypes.semv = xs;
13470 MenhirLib.EngineTypes.startp = _startpos_xs_;
13471 MenhirLib.EngineTypes.endp = _endpos_xs_;
13472 MenhirLib.EngineTypes.next = {
13473 MenhirLib.EngineTypes.state = _menhir_s;
13474 MenhirLib.EngineTypes.semv = x;
13475 MenhirLib.EngineTypes.startp = _startpos_x_;
13476 MenhirLib.EngineTypes.endp = _endpos_x_;
13477 MenhirLib.EngineTypes.next = _menhir_stack;
13478 };
13479 } = _menhir_stack in
13480 let xs : 'tv_list_comma_decls_TEllipsis_decl__ = Obj.magic xs in
13481 let x : 'tv_comma_decls_TEllipsis_decl_ = Obj.magic x in
13482 let _startpos = _startpos_x_ in
13483 let _endpos = _endpos_xs_ in
13484 let _v : 'tv_list_comma_decls_TEllipsis_decl__ =
13485 # 116 "standard.mly"
13486 ( x :: xs )
13487 # 13488 "parser_cocci_menhir.ml"
13488 in
13489 _menhir_env.MenhirLib.EngineTypes.stack <- {
13490 MenhirLib.EngineTypes.state = _menhir_s;
13491 MenhirLib.EngineTypes.semv = Obj.repr _v;
13492 MenhirLib.EngineTypes.startp = _startpos;
13493 MenhirLib.EngineTypes.endp = _endpos;
13494 MenhirLib.EngineTypes.next = _menhir_stack;
13495 });
13496 (fun _menhir_env ->
13497 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13498 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13499 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13500 let _endpos = _startpos in
13501 let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ =
13502 # 114 "standard.mly"
13503 ( [] )
13504 # 13505 "parser_cocci_menhir.ml"
13505 in
13506 _menhir_env.MenhirLib.EngineTypes.stack <- {
13507 MenhirLib.EngineTypes.state = _menhir_s;
13508 MenhirLib.EngineTypes.semv = Obj.repr _v;
13509 MenhirLib.EngineTypes.startp = _startpos;
13510 MenhirLib.EngineTypes.endp = _endpos;
13511 MenhirLib.EngineTypes.next = _menhir_stack;
13512 });
13513 (fun _menhir_env ->
13514 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13515 let {
13516 MenhirLib.EngineTypes.semv = xs;
13517 MenhirLib.EngineTypes.startp = _startpos_xs_;
13518 MenhirLib.EngineTypes.endp = _endpos_xs_;
13519 MenhirLib.EngineTypes.next = {
13520 MenhirLib.EngineTypes.state = _menhir_s;
13521 MenhirLib.EngineTypes.semv = x;
13522 MenhirLib.EngineTypes.startp = _startpos_x_;
13523 MenhirLib.EngineTypes.endp = _endpos_x_;
13524 MenhirLib.EngineTypes.next = _menhir_stack;
13525 };
13526 } = _menhir_stack in
13527 let xs : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = Obj.magic xs in
13528 let x : 'tv_comma_decls_TEllipsis_name_opt_decl_ = Obj.magic x in
13529 let _startpos = _startpos_x_ in
13530 let _endpos = _endpos_xs_ in
13531 let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ =
13532 # 116 "standard.mly"
13533 ( x :: xs )
13534 # 13535 "parser_cocci_menhir.ml"
13535 in
13536 _menhir_env.MenhirLib.EngineTypes.stack <- {
13537 MenhirLib.EngineTypes.state = _menhir_s;
13538 MenhirLib.EngineTypes.semv = Obj.repr _v;
13539 MenhirLib.EngineTypes.startp = _startpos;
13540 MenhirLib.EngineTypes.endp = _endpos;
13541 MenhirLib.EngineTypes.next = _menhir_stack;
13542 });
13543 (fun _menhir_env ->
13544 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13545 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13546 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13547 let _endpos = _startpos in
13548 let _v : 'tv_list_dp_comma_args_TEllipsis__ =
13549 # 114 "standard.mly"
13550 ( [] )
13551 # 13552 "parser_cocci_menhir.ml"
13552 in
13553 _menhir_env.MenhirLib.EngineTypes.stack <- {
13554 MenhirLib.EngineTypes.state = _menhir_s;
13555 MenhirLib.EngineTypes.semv = Obj.repr _v;
13556 MenhirLib.EngineTypes.startp = _startpos;
13557 MenhirLib.EngineTypes.endp = _endpos;
13558 MenhirLib.EngineTypes.next = _menhir_stack;
13559 });
13560 (fun _menhir_env ->
13561 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13562 let {
13563 MenhirLib.EngineTypes.semv = xs;
13564 MenhirLib.EngineTypes.startp = _startpos_xs_;
13565 MenhirLib.EngineTypes.endp = _endpos_xs_;
13566 MenhirLib.EngineTypes.next = {
13567 MenhirLib.EngineTypes.state = _menhir_s;
13568 MenhirLib.EngineTypes.semv = x;
13569 MenhirLib.EngineTypes.startp = _startpos_x_;
13570 MenhirLib.EngineTypes.endp = _endpos_x_;
13571 MenhirLib.EngineTypes.next = _menhir_stack;
13572 };
13573 } = _menhir_stack in
13574 let xs : 'tv_list_dp_comma_args_TEllipsis__ = Obj.magic xs in
13575 let x : 'tv_dp_comma_args_TEllipsis_ = Obj.magic x in
13576 let _startpos = _startpos_x_ in
13577 let _endpos = _endpos_xs_ in
13578 let _v : 'tv_list_dp_comma_args_TEllipsis__ =
13579 # 116 "standard.mly"
13580 ( x :: xs )
13581 # 13582 "parser_cocci_menhir.ml"
13582 in
13583 _menhir_env.MenhirLib.EngineTypes.stack <- {
13584 MenhirLib.EngineTypes.state = _menhir_s;
13585 MenhirLib.EngineTypes.semv = Obj.repr _v;
13586 MenhirLib.EngineTypes.startp = _startpos;
13587 MenhirLib.EngineTypes.endp = _endpos;
13588 MenhirLib.EngineTypes.next = _menhir_stack;
13589 });
13590 (fun _menhir_env ->
13591 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13592 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13593 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13594 let _endpos = _startpos in
13595 let _v : 'tv_list_incl_ =
13596 # 114 "standard.mly"
13597 ( [] )
13598 # 13599 "parser_cocci_menhir.ml"
13599 in
13600 _menhir_env.MenhirLib.EngineTypes.stack <- {
13601 MenhirLib.EngineTypes.state = _menhir_s;
13602 MenhirLib.EngineTypes.semv = Obj.repr _v;
13603 MenhirLib.EngineTypes.startp = _startpos;
13604 MenhirLib.EngineTypes.endp = _endpos;
13605 MenhirLib.EngineTypes.next = _menhir_stack;
13606 });
13607 (fun _menhir_env ->
13608 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13609 let {
13610 MenhirLib.EngineTypes.semv = xs;
13611 MenhirLib.EngineTypes.startp = _startpos_xs_;
13612 MenhirLib.EngineTypes.endp = _endpos_xs_;
13613 MenhirLib.EngineTypes.next = {
13614 MenhirLib.EngineTypes.state = _menhir_s;
13615 MenhirLib.EngineTypes.semv = x;
13616 MenhirLib.EngineTypes.startp = _startpos_x_;
13617 MenhirLib.EngineTypes.endp = _endpos_x_;
13618 MenhirLib.EngineTypes.next = _menhir_stack;
13619 };
13620 } = _menhir_stack in
13621 let xs : 'tv_list_incl_ = Obj.magic xs in
13622 let x : 'tv_incl = Obj.magic x in
13623 let _startpos = _startpos_x_ in
13624 let _endpos = _endpos_xs_ in
13625 let _v : 'tv_list_incl_ =
13626 # 116 "standard.mly"
13627 ( x :: xs )
13628 # 13629 "parser_cocci_menhir.ml"
13629 in
13630 _menhir_env.MenhirLib.EngineTypes.stack <- {
13631 MenhirLib.EngineTypes.state = _menhir_s;
13632 MenhirLib.EngineTypes.semv = Obj.repr _v;
13633 MenhirLib.EngineTypes.startp = _startpos;
13634 MenhirLib.EngineTypes.endp = _endpos;
13635 MenhirLib.EngineTypes.next = _menhir_stack;
13636 });
13637 (fun _menhir_env ->
13638 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13639 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13640 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13641 let _endpos = _startpos in
13642 let _v : 'tv_list_iso_ctype__ =
13643 # 114 "standard.mly"
13644 ( [] )
13645 # 13646 "parser_cocci_menhir.ml"
13646 in
13647 _menhir_env.MenhirLib.EngineTypes.stack <- {
13648 MenhirLib.EngineTypes.state = _menhir_s;
13649 MenhirLib.EngineTypes.semv = Obj.repr _v;
13650 MenhirLib.EngineTypes.startp = _startpos;
13651 MenhirLib.EngineTypes.endp = _endpos;
13652 MenhirLib.EngineTypes.next = _menhir_stack;
13653 });
13654 (fun _menhir_env ->
13655 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13656 let {
13657 MenhirLib.EngineTypes.semv = xs;
13658 MenhirLib.EngineTypes.startp = _startpos_xs_;
13659 MenhirLib.EngineTypes.endp = _endpos_xs_;
13660 MenhirLib.EngineTypes.next = {
13661 MenhirLib.EngineTypes.state = _menhir_s;
13662 MenhirLib.EngineTypes.semv = x;
13663 MenhirLib.EngineTypes.startp = _startpos_x_;
13664 MenhirLib.EngineTypes.endp = _endpos_x_;
13665 MenhirLib.EngineTypes.next = _menhir_stack;
13666 };
13667 } = _menhir_stack in
13668 let xs : 'tv_list_iso_ctype__ = Obj.magic xs in
13669 let x : 'tv_iso_ctype_ = Obj.magic x in
13670 let _startpos = _startpos_x_ in
13671 let _endpos = _endpos_xs_ in
13672 let _v : 'tv_list_iso_ctype__ =
13673 # 116 "standard.mly"
13674 ( x :: xs )
13675 # 13676 "parser_cocci_menhir.ml"
13676 in
13677 _menhir_env.MenhirLib.EngineTypes.stack <- {
13678 MenhirLib.EngineTypes.state = _menhir_s;
13679 MenhirLib.EngineTypes.semv = Obj.repr _v;
13680 MenhirLib.EngineTypes.startp = _startpos;
13681 MenhirLib.EngineTypes.endp = _endpos;
13682 MenhirLib.EngineTypes.next = _menhir_stack;
13683 });
13684 (fun _menhir_env ->
13685 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13686 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13687 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13688 let _endpos = _startpos in
13689 let _v : 'tv_list_iso_decl_var__ =
13690 # 114 "standard.mly"
13691 ( [] )
13692 # 13693 "parser_cocci_menhir.ml"
13693 in
13694 _menhir_env.MenhirLib.EngineTypes.stack <- {
13695 MenhirLib.EngineTypes.state = _menhir_s;
13696 MenhirLib.EngineTypes.semv = Obj.repr _v;
13697 MenhirLib.EngineTypes.startp = _startpos;
13698 MenhirLib.EngineTypes.endp = _endpos;
13699 MenhirLib.EngineTypes.next = _menhir_stack;
13700 });
13701 (fun _menhir_env ->
13702 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13703 let {
13704 MenhirLib.EngineTypes.semv = xs;
13705 MenhirLib.EngineTypes.startp = _startpos_xs_;
13706 MenhirLib.EngineTypes.endp = _endpos_xs_;
13707 MenhirLib.EngineTypes.next = {
13708 MenhirLib.EngineTypes.state = _menhir_s;
13709 MenhirLib.EngineTypes.semv = x;
13710 MenhirLib.EngineTypes.startp = _startpos_x_;
13711 MenhirLib.EngineTypes.endp = _endpos_x_;
13712 MenhirLib.EngineTypes.next = _menhir_stack;
13713 };
13714 } = _menhir_stack in
13715 let xs : 'tv_list_iso_decl_var__ = Obj.magic xs in
13716 let x : 'tv_iso_decl_var_ = Obj.magic x in
13717 let _startpos = _startpos_x_ in
13718 let _endpos = _endpos_xs_ in
13719 let _v : 'tv_list_iso_decl_var__ =
13720 # 116 "standard.mly"
13721 ( x :: xs )
13722 # 13723 "parser_cocci_menhir.ml"
13723 in
13724 _menhir_env.MenhirLib.EngineTypes.stack <- {
13725 MenhirLib.EngineTypes.state = _menhir_s;
13726 MenhirLib.EngineTypes.semv = Obj.repr _v;
13727 MenhirLib.EngineTypes.startp = _startpos;
13728 MenhirLib.EngineTypes.endp = _endpos;
13729 MenhirLib.EngineTypes.next = _menhir_stack;
13730 });
13731 (fun _menhir_env ->
13732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13733 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13734 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13735 let _endpos = _startpos in
13736 let _v : 'tv_list_iso_dexpr__ =
13737 # 114 "standard.mly"
13738 ( [] )
13739 # 13740 "parser_cocci_menhir.ml"
13740 in
13741 _menhir_env.MenhirLib.EngineTypes.stack <- {
13742 MenhirLib.EngineTypes.state = _menhir_s;
13743 MenhirLib.EngineTypes.semv = Obj.repr _v;
13744 MenhirLib.EngineTypes.startp = _startpos;
13745 MenhirLib.EngineTypes.endp = _endpos;
13746 MenhirLib.EngineTypes.next = _menhir_stack;
13747 });
13748 (fun _menhir_env ->
13749 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13750 let {
13751 MenhirLib.EngineTypes.semv = xs;
13752 MenhirLib.EngineTypes.startp = _startpos_xs_;
13753 MenhirLib.EngineTypes.endp = _endpos_xs_;
13754 MenhirLib.EngineTypes.next = {
13755 MenhirLib.EngineTypes.state = _menhir_s;
13756 MenhirLib.EngineTypes.semv = x;
13757 MenhirLib.EngineTypes.startp = _startpos_x_;
13758 MenhirLib.EngineTypes.endp = _endpos_x_;
13759 MenhirLib.EngineTypes.next = _menhir_stack;
13760 };
13761 } = _menhir_stack in
13762 let xs : 'tv_list_iso_dexpr__ = Obj.magic xs in
13763 let x : 'tv_iso_dexpr_ = Obj.magic x in
13764 let _startpos = _startpos_x_ in
13765 let _endpos = _endpos_xs_ in
13766 let _v : 'tv_list_iso_dexpr__ =
13767 # 116 "standard.mly"
13768 ( x :: xs )
13769 # 13770 "parser_cocci_menhir.ml"
13770 in
13771 _menhir_env.MenhirLib.EngineTypes.stack <- {
13772 MenhirLib.EngineTypes.state = _menhir_s;
13773 MenhirLib.EngineTypes.semv = Obj.repr _v;
13774 MenhirLib.EngineTypes.startp = _startpos;
13775 MenhirLib.EngineTypes.endp = _endpos;
13776 MenhirLib.EngineTypes.next = _menhir_stack;
13777 });
13778 (fun _menhir_env ->
13779 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13780 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13781 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13782 let _endpos = _startpos in
13783 let _v : 'tv_list_iso_nest_start__ =
13784 # 114 "standard.mly"
13785 ( [] )
13786 # 13787 "parser_cocci_menhir.ml"
13787 in
13788 _menhir_env.MenhirLib.EngineTypes.stack <- {
13789 MenhirLib.EngineTypes.state = _menhir_s;
13790 MenhirLib.EngineTypes.semv = Obj.repr _v;
13791 MenhirLib.EngineTypes.startp = _startpos;
13792 MenhirLib.EngineTypes.endp = _endpos;
13793 MenhirLib.EngineTypes.next = _menhir_stack;
13794 });
13795 (fun _menhir_env ->
13796 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13797 let {
13798 MenhirLib.EngineTypes.semv = xs;
13799 MenhirLib.EngineTypes.startp = _startpos_xs_;
13800 MenhirLib.EngineTypes.endp = _endpos_xs_;
13801 MenhirLib.EngineTypes.next = {
13802 MenhirLib.EngineTypes.state = _menhir_s;
13803 MenhirLib.EngineTypes.semv = x;
13804 MenhirLib.EngineTypes.startp = _startpos_x_;
13805 MenhirLib.EngineTypes.endp = _endpos_x_;
13806 MenhirLib.EngineTypes.next = _menhir_stack;
13807 };
13808 } = _menhir_stack in
13809 let xs : 'tv_list_iso_nest_start__ = Obj.magic xs in
13810 let x : 'tv_iso_nest_start_ = Obj.magic x in
13811 let _startpos = _startpos_x_ in
13812 let _endpos = _endpos_xs_ in
13813 let _v : 'tv_list_iso_nest_start__ =
13814 # 116 "standard.mly"
13815 ( x :: xs )
13816 # 13817 "parser_cocci_menhir.ml"
13817 in
13818 _menhir_env.MenhirLib.EngineTypes.stack <- {
13819 MenhirLib.EngineTypes.state = _menhir_s;
13820 MenhirLib.EngineTypes.semv = Obj.repr _v;
13821 MenhirLib.EngineTypes.startp = _startpos;
13822 MenhirLib.EngineTypes.endp = _endpos;
13823 MenhirLib.EngineTypes.next = _menhir_stack;
13824 });
13825 (fun _menhir_env ->
13826 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13827 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13828 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13829 let _endpos = _startpos in
13830 let _v : 'tv_list_iso_single_statement__ =
13831 # 114 "standard.mly"
13832 ( [] )
13833 # 13834 "parser_cocci_menhir.ml"
13834 in
13835 _menhir_env.MenhirLib.EngineTypes.stack <- {
13836 MenhirLib.EngineTypes.state = _menhir_s;
13837 MenhirLib.EngineTypes.semv = Obj.repr _v;
13838 MenhirLib.EngineTypes.startp = _startpos;
13839 MenhirLib.EngineTypes.endp = _endpos;
13840 MenhirLib.EngineTypes.next = _menhir_stack;
13841 });
13842 (fun _menhir_env ->
13843 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13844 let {
13845 MenhirLib.EngineTypes.semv = xs;
13846 MenhirLib.EngineTypes.startp = _startpos_xs_;
13847 MenhirLib.EngineTypes.endp = _endpos_xs_;
13848 MenhirLib.EngineTypes.next = {
13849 MenhirLib.EngineTypes.state = _menhir_s;
13850 MenhirLib.EngineTypes.semv = x;
13851 MenhirLib.EngineTypes.startp = _startpos_x_;
13852 MenhirLib.EngineTypes.endp = _endpos_x_;
13853 MenhirLib.EngineTypes.next = _menhir_stack;
13854 };
13855 } = _menhir_stack in
13856 let xs : 'tv_list_iso_single_statement__ = Obj.magic xs in
13857 let x : 'tv_iso_single_statement_ = Obj.magic x in
13858 let _startpos = _startpos_x_ in
13859 let _endpos = _endpos_xs_ in
13860 let _v : 'tv_list_iso_single_statement__ =
13861 # 116 "standard.mly"
13862 ( x :: xs )
13863 # 13864 "parser_cocci_menhir.ml"
13864 in
13865 _menhir_env.MenhirLib.EngineTypes.stack <- {
13866 MenhirLib.EngineTypes.state = _menhir_s;
13867 MenhirLib.EngineTypes.semv = Obj.repr _v;
13868 MenhirLib.EngineTypes.startp = _startpos;
13869 MenhirLib.EngineTypes.endp = _endpos;
13870 MenhirLib.EngineTypes.next = _menhir_stack;
13871 });
13872 (fun _menhir_env ->
13873 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13874 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13875 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13876 let _endpos = _startpos in
13877 let _v : 'tv_list_mzl_ctype__ =
13878 # 114 "standard.mly"
13879 ( [] )
13880 # 13881 "parser_cocci_menhir.ml"
13881 in
13882 _menhir_env.MenhirLib.EngineTypes.stack <- {
13883 MenhirLib.EngineTypes.state = _menhir_s;
13884 MenhirLib.EngineTypes.semv = Obj.repr _v;
13885 MenhirLib.EngineTypes.startp = _startpos;
13886 MenhirLib.EngineTypes.endp = _endpos;
13887 MenhirLib.EngineTypes.next = _menhir_stack;
13888 });
13889 (fun _menhir_env ->
13890 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13891 let {
13892 MenhirLib.EngineTypes.semv = xs;
13893 MenhirLib.EngineTypes.startp = _startpos_xs_;
13894 MenhirLib.EngineTypes.endp = _endpos_xs_;
13895 MenhirLib.EngineTypes.next = {
13896 MenhirLib.EngineTypes.state = _menhir_s;
13897 MenhirLib.EngineTypes.semv = x;
13898 MenhirLib.EngineTypes.startp = _startpos_x_;
13899 MenhirLib.EngineTypes.endp = _endpos_x_;
13900 MenhirLib.EngineTypes.next = _menhir_stack;
13901 };
13902 } = _menhir_stack in
13903 let xs : 'tv_list_mzl_ctype__ = Obj.magic xs in
13904 let x : 'tv_mzl_ctype_ = Obj.magic x in
13905 let _startpos = _startpos_x_ in
13906 let _endpos = _endpos_xs_ in
13907 let _v : 'tv_list_mzl_ctype__ =
13908 # 116 "standard.mly"
13909 ( x :: xs )
13910 # 13911 "parser_cocci_menhir.ml"
13911 in
13912 _menhir_env.MenhirLib.EngineTypes.stack <- {
13913 MenhirLib.EngineTypes.state = _menhir_s;
13914 MenhirLib.EngineTypes.semv = Obj.repr _v;
13915 MenhirLib.EngineTypes.startp = _startpos;
13916 MenhirLib.EngineTypes.endp = _endpos;
13917 MenhirLib.EngineTypes.next = _menhir_stack;
13918 });
13919 (fun _menhir_env ->
13920 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13921 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13922 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13923 let _endpos = _startpos in
13924 let _v : 'tv_list_mzl_eexpr__ =
13925 # 114 "standard.mly"
13926 ( [] )
13927 # 13928 "parser_cocci_menhir.ml"
13928 in
13929 _menhir_env.MenhirLib.EngineTypes.stack <- {
13930 MenhirLib.EngineTypes.state = _menhir_s;
13931 MenhirLib.EngineTypes.semv = Obj.repr _v;
13932 MenhirLib.EngineTypes.startp = _startpos;
13933 MenhirLib.EngineTypes.endp = _endpos;
13934 MenhirLib.EngineTypes.next = _menhir_stack;
13935 });
13936 (fun _menhir_env ->
13937 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13938 let {
13939 MenhirLib.EngineTypes.semv = xs;
13940 MenhirLib.EngineTypes.startp = _startpos_xs_;
13941 MenhirLib.EngineTypes.endp = _endpos_xs_;
13942 MenhirLib.EngineTypes.next = {
13943 MenhirLib.EngineTypes.state = _menhir_s;
13944 MenhirLib.EngineTypes.semv = x;
13945 MenhirLib.EngineTypes.startp = _startpos_x_;
13946 MenhirLib.EngineTypes.endp = _endpos_x_;
13947 MenhirLib.EngineTypes.next = _menhir_stack;
13948 };
13949 } = _menhir_stack in
13950 let xs : 'tv_list_mzl_eexpr__ = Obj.magic xs in
13951 let x : 'tv_mzl_eexpr_ = Obj.magic x in
13952 let _startpos = _startpos_x_ in
13953 let _endpos = _endpos_xs_ in
13954 let _v : 'tv_list_mzl_eexpr__ =
13955 # 116 "standard.mly"
13956 ( x :: xs )
13957 # 13958 "parser_cocci_menhir.ml"
13958 in
13959 _menhir_env.MenhirLib.EngineTypes.stack <- {
13960 MenhirLib.EngineTypes.state = _menhir_s;
13961 MenhirLib.EngineTypes.semv = Obj.repr _v;
13962 MenhirLib.EngineTypes.startp = _startpos;
13963 MenhirLib.EngineTypes.endp = _endpos;
13964 MenhirLib.EngineTypes.next = _menhir_stack;
13965 });
13966 (fun _menhir_env ->
13967 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13968 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13969 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13970 let _endpos = _startpos in
13971 let _v : 'tv_list_mzl_fun_after_dots_or__ =
13972 # 114 "standard.mly"
13973 ( [] )
13974 # 13975 "parser_cocci_menhir.ml"
13975 in
13976 _menhir_env.MenhirLib.EngineTypes.stack <- {
13977 MenhirLib.EngineTypes.state = _menhir_s;
13978 MenhirLib.EngineTypes.semv = Obj.repr _v;
13979 MenhirLib.EngineTypes.startp = _startpos;
13980 MenhirLib.EngineTypes.endp = _endpos;
13981 MenhirLib.EngineTypes.next = _menhir_stack;
13982 });
13983 (fun _menhir_env ->
13984 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13985 let {
13986 MenhirLib.EngineTypes.semv = xs;
13987 MenhirLib.EngineTypes.startp = _startpos_xs_;
13988 MenhirLib.EngineTypes.endp = _endpos_xs_;
13989 MenhirLib.EngineTypes.next = {
13990 MenhirLib.EngineTypes.state = _menhir_s;
13991 MenhirLib.EngineTypes.semv = x;
13992 MenhirLib.EngineTypes.startp = _startpos_x_;
13993 MenhirLib.EngineTypes.endp = _endpos_x_;
13994 MenhirLib.EngineTypes.next = _menhir_stack;
13995 };
13996 } = _menhir_stack in
13997 let xs : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic xs in
13998 let x : 'tv_mzl_fun_after_dots_or_ = Obj.magic x in
13999 let _startpos = _startpos_x_ in
14000 let _endpos = _endpos_xs_ in
14001 let _v : 'tv_list_mzl_fun_after_dots_or__ =
14002 # 116 "standard.mly"
14003 ( x :: xs )
14004 # 14005 "parser_cocci_menhir.ml"
14005 in
14006 _menhir_env.MenhirLib.EngineTypes.stack <- {
14007 MenhirLib.EngineTypes.state = _menhir_s;
14008 MenhirLib.EngineTypes.semv = Obj.repr _v;
14009 MenhirLib.EngineTypes.startp = _startpos;
14010 MenhirLib.EngineTypes.endp = _endpos;
14011 MenhirLib.EngineTypes.next = _menhir_stack;
14012 });
14013 (fun _menhir_env ->
14014 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14015 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14016 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14017 let _endpos = _startpos in
14018 let _v : 'tv_list_mzl_fun_start__ =
14019 # 114 "standard.mly"
14020 ( [] )
14021 # 14022 "parser_cocci_menhir.ml"
14022 in
14023 _menhir_env.MenhirLib.EngineTypes.stack <- {
14024 MenhirLib.EngineTypes.state = _menhir_s;
14025 MenhirLib.EngineTypes.semv = Obj.repr _v;
14026 MenhirLib.EngineTypes.startp = _startpos;
14027 MenhirLib.EngineTypes.endp = _endpos;
14028 MenhirLib.EngineTypes.next = _menhir_stack;
14029 });
14030 (fun _menhir_env ->
14031 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14032 let {
14033 MenhirLib.EngineTypes.semv = xs;
14034 MenhirLib.EngineTypes.startp = _startpos_xs_;
14035 MenhirLib.EngineTypes.endp = _endpos_xs_;
14036 MenhirLib.EngineTypes.next = {
14037 MenhirLib.EngineTypes.state = _menhir_s;
14038 MenhirLib.EngineTypes.semv = x;
14039 MenhirLib.EngineTypes.startp = _startpos_x_;
14040 MenhirLib.EngineTypes.endp = _endpos_x_;
14041 MenhirLib.EngineTypes.next = _menhir_stack;
14042 };
14043 } = _menhir_stack in
14044 let xs : 'tv_list_mzl_fun_start__ = Obj.magic xs in
14045 let x : 'tv_mzl_fun_start_ = Obj.magic x in
14046 let _startpos = _startpos_x_ in
14047 let _endpos = _endpos_xs_ in
14048 let _v : 'tv_list_mzl_fun_start__ =
14049 # 116 "standard.mly"
14050 ( x :: xs )
14051 # 14052 "parser_cocci_menhir.ml"
14052 in
14053 _menhir_env.MenhirLib.EngineTypes.stack <- {
14054 MenhirLib.EngineTypes.state = _menhir_s;
14055 MenhirLib.EngineTypes.semv = Obj.repr _v;
14056 MenhirLib.EngineTypes.startp = _startpos;
14057 MenhirLib.EngineTypes.endp = _endpos;
14058 MenhirLib.EngineTypes.next = _menhir_stack;
14059 });
14060 (fun _menhir_env ->
14061 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14062 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14063 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14064 let _endpos = _startpos in
14065 let _v : 'tv_list_mzl_rule_elem_statement__ =
14066 # 114 "standard.mly"
14067 ( [] )
14068 # 14069 "parser_cocci_menhir.ml"
14069 in
14070 _menhir_env.MenhirLib.EngineTypes.stack <- {
14071 MenhirLib.EngineTypes.state = _menhir_s;
14072 MenhirLib.EngineTypes.semv = Obj.repr _v;
14073 MenhirLib.EngineTypes.startp = _startpos;
14074 MenhirLib.EngineTypes.endp = _endpos;
14075 MenhirLib.EngineTypes.next = _menhir_stack;
14076 });
14077 (fun _menhir_env ->
14078 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14079 let {
14080 MenhirLib.EngineTypes.semv = xs;
14081 MenhirLib.EngineTypes.startp = _startpos_xs_;
14082 MenhirLib.EngineTypes.endp = _endpos_xs_;
14083 MenhirLib.EngineTypes.next = {
14084 MenhirLib.EngineTypes.state = _menhir_s;
14085 MenhirLib.EngineTypes.semv = x;
14086 MenhirLib.EngineTypes.startp = _startpos_x_;
14087 MenhirLib.EngineTypes.endp = _endpos_x_;
14088 MenhirLib.EngineTypes.next = _menhir_stack;
14089 };
14090 } = _menhir_stack in
14091 let xs : 'tv_list_mzl_rule_elem_statement__ = Obj.magic xs in
14092 let x : 'tv_mzl_rule_elem_statement_ = Obj.magic x in
14093 let _startpos = _startpos_x_ in
14094 let _endpos = _endpos_xs_ in
14095 let _v : 'tv_list_mzl_rule_elem_statement__ =
14096 # 116 "standard.mly"
14097 ( x :: xs )
14098 # 14099 "parser_cocci_menhir.ml"
14099 in
14100 _menhir_env.MenhirLib.EngineTypes.stack <- {
14101 MenhirLib.EngineTypes.state = _menhir_s;
14102 MenhirLib.EngineTypes.semv = Obj.repr _v;
14103 MenhirLib.EngineTypes.startp = _startpos;
14104 MenhirLib.EngineTypes.endp = _endpos;
14105 MenhirLib.EngineTypes.next = _menhir_stack;
14106 });
14107 (fun _menhir_env ->
14108 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14109 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14110 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14111 let _endpos = _startpos in
14112 let _v : 'tv_list_mzl_statement__ =
14113 # 114 "standard.mly"
14114 ( [] )
14115 # 14116 "parser_cocci_menhir.ml"
14116 in
14117 _menhir_env.MenhirLib.EngineTypes.stack <- {
14118 MenhirLib.EngineTypes.state = _menhir_s;
14119 MenhirLib.EngineTypes.semv = Obj.repr _v;
14120 MenhirLib.EngineTypes.startp = _startpos;
14121 MenhirLib.EngineTypes.endp = _endpos;
14122 MenhirLib.EngineTypes.next = _menhir_stack;
14123 });
14124 (fun _menhir_env ->
14125 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14126 let {
14127 MenhirLib.EngineTypes.semv = xs;
14128 MenhirLib.EngineTypes.startp = _startpos_xs_;
14129 MenhirLib.EngineTypes.endp = _endpos_xs_;
14130 MenhirLib.EngineTypes.next = {
14131 MenhirLib.EngineTypes.state = _menhir_s;
14132 MenhirLib.EngineTypes.semv = x;
14133 MenhirLib.EngineTypes.startp = _startpos_x_;
14134 MenhirLib.EngineTypes.endp = _endpos_x_;
14135 MenhirLib.EngineTypes.next = _menhir_stack;
14136 };
14137 } = _menhir_stack in
14138 let xs : 'tv_list_mzl_statement__ = Obj.magic xs in
14139 let x : 'tv_mzl_statement_ = Obj.magic x in
14140 let _startpos = _startpos_x_ in
14141 let _endpos = _endpos_xs_ in
14142 let _v : 'tv_list_mzl_statement__ =
14143 # 116 "standard.mly"
14144 ( x :: xs )
14145 # 14146 "parser_cocci_menhir.ml"
14146 in
14147 _menhir_env.MenhirLib.EngineTypes.stack <- {
14148 MenhirLib.EngineTypes.state = _menhir_s;
14149 MenhirLib.EngineTypes.semv = Obj.repr _v;
14150 MenhirLib.EngineTypes.startp = _startpos;
14151 MenhirLib.EngineTypes.endp = _endpos;
14152 MenhirLib.EngineTypes.next = _menhir_stack;
14153 });
14154 (fun _menhir_env ->
14155 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14156 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14157 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14158 let _endpos = _startpos in
14159 let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ =
14160 # 114 "standard.mly"
14161 ( [] )
14162 # 14163 "parser_cocci_menhir.ml"
14163 in
14164 _menhir_env.MenhirLib.EngineTypes.stack <- {
14165 MenhirLib.EngineTypes.state = _menhir_s;
14166 MenhirLib.EngineTypes.semv = Obj.repr _v;
14167 MenhirLib.EngineTypes.startp = _startpos;
14168 MenhirLib.EngineTypes.endp = _endpos;
14169 MenhirLib.EngineTypes.next = _menhir_stack;
14170 });
14171 (fun _menhir_env ->
14172 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14173 let {
14174 MenhirLib.EngineTypes.semv = xs;
14175 MenhirLib.EngineTypes.startp = _startpos_xs_;
14176 MenhirLib.EngineTypes.endp = _endpos_xs_;
14177 MenhirLib.EngineTypes.next = {
14178 MenhirLib.EngineTypes.semv = y0;
14179 MenhirLib.EngineTypes.startp = _startpos_y0_;
14180 MenhirLib.EngineTypes.endp = _endpos_y0_;
14181 MenhirLib.EngineTypes.next = {
14182 MenhirLib.EngineTypes.state = _menhir_s;
14183 MenhirLib.EngineTypes.semv = x0;
14184 MenhirLib.EngineTypes.startp = _startpos_x0_;
14185 MenhirLib.EngineTypes.endp = _endpos_x0_;
14186 MenhirLib.EngineTypes.next = _menhir_stack;
14187 };
14188 };
14189 } = _menhir_stack in
14190 let xs : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic xs in
14191 let y0 : 'tv_dexpr = Obj.magic y0 in
14192 let x0 : 'tv_edots_when_TEllipsis_eexpr_ = Obj.magic x0 in
14193 let _startpos = _startpos_x0_ in
14194 let _endpos = _endpos_xs_ in
14195 let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = let x =
14196 let y = y0 in
14197 let x = x0 in
14198
14199 # 70 "standard.mly"
14200 ( (x, y) )
14201 # 14202 "parser_cocci_menhir.ml"
14202
14203 in
14204
14205 # 116 "standard.mly"
14206 ( x :: xs )
14207 # 14208 "parser_cocci_menhir.ml"
14208 in
14209 _menhir_env.MenhirLib.EngineTypes.stack <- {
14210 MenhirLib.EngineTypes.state = _menhir_s;
14211 MenhirLib.EngineTypes.semv = Obj.repr _v;
14212 MenhirLib.EngineTypes.startp = _startpos;
14213 MenhirLib.EngineTypes.endp = _endpos;
14214 MenhirLib.EngineTypes.next = _menhir_stack;
14215 });
14216 (fun _menhir_env ->
14217 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14218 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14219 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14220 let _endpos = _startpos in
14221 let _v : 'tv_list_whenppdecs_ =
14222 # 114 "standard.mly"
14223 ( [] )
14224 # 14225 "parser_cocci_menhir.ml"
14225 in
14226 _menhir_env.MenhirLib.EngineTypes.stack <- {
14227 MenhirLib.EngineTypes.state = _menhir_s;
14228 MenhirLib.EngineTypes.semv = Obj.repr _v;
14229 MenhirLib.EngineTypes.startp = _startpos;
14230 MenhirLib.EngineTypes.endp = _endpos;
14231 MenhirLib.EngineTypes.next = _menhir_stack;
14232 });
14233 (fun _menhir_env ->
14234 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14235 let {
14236 MenhirLib.EngineTypes.semv = xs;
14237 MenhirLib.EngineTypes.startp = _startpos_xs_;
14238 MenhirLib.EngineTypes.endp = _endpos_xs_;
14239 MenhirLib.EngineTypes.next = {
14240 MenhirLib.EngineTypes.state = _menhir_s;
14241 MenhirLib.EngineTypes.semv = x;
14242 MenhirLib.EngineTypes.startp = _startpos_x_;
14243 MenhirLib.EngineTypes.endp = _endpos_x_;
14244 MenhirLib.EngineTypes.next = _menhir_stack;
14245 };
14246 } = _menhir_stack in
14247 let xs : 'tv_list_whenppdecs_ = Obj.magic xs in
14248 let x : 'tv_whenppdecs = Obj.magic x in
14249 let _startpos = _startpos_x_ in
14250 let _endpos = _endpos_xs_ in
14251 let _v : 'tv_list_whenppdecs_ =
14252 # 116 "standard.mly"
14253 ( x :: xs )
14254 # 14255 "parser_cocci_menhir.ml"
14255 in
14256 _menhir_env.MenhirLib.EngineTypes.stack <- {
14257 MenhirLib.EngineTypes.state = _menhir_s;
14258 MenhirLib.EngineTypes.semv = Obj.repr _v;
14259 MenhirLib.EngineTypes.startp = _startpos;
14260 MenhirLib.EngineTypes.endp = _endpos;
14261 MenhirLib.EngineTypes.next = _menhir_stack;
14262 });
14263 (fun _menhir_env ->
14264 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14265 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14266 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14267 let _endpos = _startpos in
14268 let _v : 'tv_loption_choose_iso_ =
14269 # 57 "standard.mly"
14270 ( [] )
14271 # 14272 "parser_cocci_menhir.ml"
14272 in
14273 _menhir_env.MenhirLib.EngineTypes.stack <- {
14274 MenhirLib.EngineTypes.state = _menhir_s;
14275 MenhirLib.EngineTypes.semv = Obj.repr _v;
14276 MenhirLib.EngineTypes.startp = _startpos;
14277 MenhirLib.EngineTypes.endp = _endpos;
14278 MenhirLib.EngineTypes.next = _menhir_stack;
14279 });
14280 (fun _menhir_env ->
14281 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14282 let {
14283 MenhirLib.EngineTypes.state = _menhir_s;
14284 MenhirLib.EngineTypes.semv = x;
14285 MenhirLib.EngineTypes.startp = _startpos_x_;
14286 MenhirLib.EngineTypes.endp = _endpos_x_;
14287 MenhirLib.EngineTypes.next = _menhir_stack;
14288 } = _menhir_stack in
14289 let x : 'tv_choose_iso = Obj.magic x in
14290 let _startpos = _startpos_x_ in
14291 let _endpos = _endpos_x_ in
14292 let _v : 'tv_loption_choose_iso_ =
14293 # 59 "standard.mly"
14294 ( x )
14295 # 14296 "parser_cocci_menhir.ml"
14296 in
14297 _menhir_env.MenhirLib.EngineTypes.stack <- {
14298 MenhirLib.EngineTypes.state = _menhir_s;
14299 MenhirLib.EngineTypes.semv = Obj.repr _v;
14300 MenhirLib.EngineTypes.startp = _startpos;
14301 MenhirLib.EngineTypes.endp = _endpos;
14302 MenhirLib.EngineTypes.next = _menhir_stack;
14303 });
14304 (fun _menhir_env ->
14305 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14306 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14307 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14308 let _endpos = _startpos in
14309 let _v : 'tv_loption_disable_ =
14310 # 57 "standard.mly"
14311 ( [] )
14312 # 14313 "parser_cocci_menhir.ml"
14313 in
14314 _menhir_env.MenhirLib.EngineTypes.stack <- {
14315 MenhirLib.EngineTypes.state = _menhir_s;
14316 MenhirLib.EngineTypes.semv = Obj.repr _v;
14317 MenhirLib.EngineTypes.startp = _startpos;
14318 MenhirLib.EngineTypes.endp = _endpos;
14319 MenhirLib.EngineTypes.next = _menhir_stack;
14320 });
14321 (fun _menhir_env ->
14322 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14323 let {
14324 MenhirLib.EngineTypes.state = _menhir_s;
14325 MenhirLib.EngineTypes.semv = x;
14326 MenhirLib.EngineTypes.startp = _startpos_x_;
14327 MenhirLib.EngineTypes.endp = _endpos_x_;
14328 MenhirLib.EngineTypes.next = _menhir_stack;
14329 } = _menhir_stack in
14330 let x : 'tv_disable = Obj.magic x in
14331 let _startpos = _startpos_x_ in
14332 let _endpos = _endpos_x_ in
14333 let _v : 'tv_loption_disable_ =
14334 # 59 "standard.mly"
14335 ( x )
14336 # 14337 "parser_cocci_menhir.ml"
14337 in
14338 _menhir_env.MenhirLib.EngineTypes.stack <- {
14339 MenhirLib.EngineTypes.state = _menhir_s;
14340 MenhirLib.EngineTypes.semv = Obj.repr _v;
14341 MenhirLib.EngineTypes.startp = _startpos;
14342 MenhirLib.EngineTypes.endp = _endpos;
14343 MenhirLib.EngineTypes.next = _menhir_stack;
14344 });
14345 (fun _menhir_env ->
14346 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14347 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14348 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14349 let _endpos = _startpos in
14350 let _v : 'tv_loption_error_words_ =
14351 # 57 "standard.mly"
14352 ( [] )
14353 # 14354 "parser_cocci_menhir.ml"
14354 in
14355 _menhir_env.MenhirLib.EngineTypes.stack <- {
14356 MenhirLib.EngineTypes.state = _menhir_s;
14357 MenhirLib.EngineTypes.semv = Obj.repr _v;
14358 MenhirLib.EngineTypes.startp = _startpos;
14359 MenhirLib.EngineTypes.endp = _endpos;
14360 MenhirLib.EngineTypes.next = _menhir_stack;
14361 });
14362 (fun _menhir_env ->
14363 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14364 let {
14365 MenhirLib.EngineTypes.state = _menhir_s;
14366 MenhirLib.EngineTypes.semv = x;
14367 MenhirLib.EngineTypes.startp = _startpos_x_;
14368 MenhirLib.EngineTypes.endp = _endpos_x_;
14369 MenhirLib.EngineTypes.next = _menhir_stack;
14370 } = _menhir_stack in
14371 let x : 'tv_error_words = Obj.magic x in
14372 let _startpos = _startpos_x_ in
14373 let _endpos = _endpos_x_ in
14374 let _v : 'tv_loption_error_words_ =
14375 # 59 "standard.mly"
14376 ( x )
14377 # 14378 "parser_cocci_menhir.ml"
14378 in
14379 _menhir_env.MenhirLib.EngineTypes.stack <- {
14380 MenhirLib.EngineTypes.state = _menhir_s;
14381 MenhirLib.EngineTypes.semv = Obj.repr _v;
14382 MenhirLib.EngineTypes.startp = _startpos;
14383 MenhirLib.EngineTypes.endp = _endpos;
14384 MenhirLib.EngineTypes.next = _menhir_stack;
14385 });
14386 (fun _menhir_env ->
14387 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14388 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14389 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14390 let _endpos = _startpos in
14391 let _v : 'tv_loption_filespec_ =
14392 # 57 "standard.mly"
14393 ( [] )
14394 # 14395 "parser_cocci_menhir.ml"
14395 in
14396 _menhir_env.MenhirLib.EngineTypes.stack <- {
14397 MenhirLib.EngineTypes.state = _menhir_s;
14398 MenhirLib.EngineTypes.semv = Obj.repr _v;
14399 MenhirLib.EngineTypes.startp = _startpos;
14400 MenhirLib.EngineTypes.endp = _endpos;
14401 MenhirLib.EngineTypes.next = _menhir_stack;
14402 });
14403 (fun _menhir_env ->
14404 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14405 let {
14406 MenhirLib.EngineTypes.state = _menhir_s;
14407 MenhirLib.EngineTypes.semv = x;
14408 MenhirLib.EngineTypes.startp = _startpos_x_;
14409 MenhirLib.EngineTypes.endp = _endpos_x_;
14410 MenhirLib.EngineTypes.next = _menhir_stack;
14411 } = _menhir_stack in
14412 let x : 'tv_filespec = Obj.magic x in
14413 let _startpos = _startpos_x_ in
14414 let _endpos = _endpos_x_ in
14415 let _v : 'tv_loption_filespec_ =
14416 # 59 "standard.mly"
14417 ( x )
14418 # 14419 "parser_cocci_menhir.ml"
14419 in
14420 _menhir_env.MenhirLib.EngineTypes.stack <- {
14421 MenhirLib.EngineTypes.state = _menhir_s;
14422 MenhirLib.EngineTypes.semv = Obj.repr _v;
14423 MenhirLib.EngineTypes.startp = _startpos;
14424 MenhirLib.EngineTypes.endp = _endpos;
14425 MenhirLib.EngineTypes.next = _menhir_stack;
14426 });
14427 (fun _menhir_env ->
14428 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14429 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14430 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14431 let _endpos = _startpos in
14432 let _v : 'tv_loption_minus_start_ =
14433 # 57 "standard.mly"
14434 ( [] )
14435 # 14436 "parser_cocci_menhir.ml"
14436 in
14437 _menhir_env.MenhirLib.EngineTypes.stack <- {
14438 MenhirLib.EngineTypes.state = _menhir_s;
14439 MenhirLib.EngineTypes.semv = Obj.repr _v;
14440 MenhirLib.EngineTypes.startp = _startpos;
14441 MenhirLib.EngineTypes.endp = _endpos;
14442 MenhirLib.EngineTypes.next = _menhir_stack;
14443 });
14444 (fun _menhir_env ->
14445 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14446 let {
14447 MenhirLib.EngineTypes.state = _menhir_s;
14448 MenhirLib.EngineTypes.semv = x;
14449 MenhirLib.EngineTypes.startp = _startpos_x_;
14450 MenhirLib.EngineTypes.endp = _endpos_x_;
14451 MenhirLib.EngineTypes.next = _menhir_stack;
14452 } = _menhir_stack in
14453 let x : 'tv_minus_start = Obj.magic x in
14454 let _startpos = _startpos_x_ in
14455 let _endpos = _endpos_x_ in
14456 let _v : 'tv_loption_minus_start_ =
14457 # 59 "standard.mly"
14458 ( x )
14459 # 14460 "parser_cocci_menhir.ml"
14460 in
14461 _menhir_env.MenhirLib.EngineTypes.stack <- {
14462 MenhirLib.EngineTypes.state = _menhir_s;
14463 MenhirLib.EngineTypes.semv = Obj.repr _v;
14464 MenhirLib.EngineTypes.startp = _startpos;
14465 MenhirLib.EngineTypes.endp = _endpos;
14466 MenhirLib.EngineTypes.next = _menhir_stack;
14467 });
14468 (fun _menhir_env ->
14469 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14470 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14471 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14472 let _endpos = _startpos in
14473 let _v : 'tv_loption_not_ceq_ =
14474 # 57 "standard.mly"
14475 ( [] )
14476 # 14477 "parser_cocci_menhir.ml"
14477 in
14478 _menhir_env.MenhirLib.EngineTypes.stack <- {
14479 MenhirLib.EngineTypes.state = _menhir_s;
14480 MenhirLib.EngineTypes.semv = Obj.repr _v;
14481 MenhirLib.EngineTypes.startp = _startpos;
14482 MenhirLib.EngineTypes.endp = _endpos;
14483 MenhirLib.EngineTypes.next = _menhir_stack;
14484 });
14485 (fun _menhir_env ->
14486 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14487 let {
14488 MenhirLib.EngineTypes.state = _menhir_s;
14489 MenhirLib.EngineTypes.semv = x;
14490 MenhirLib.EngineTypes.startp = _startpos_x_;
14491 MenhirLib.EngineTypes.endp = _endpos_x_;
14492 MenhirLib.EngineTypes.next = _menhir_stack;
14493 } = _menhir_stack in
14494 let x : 'tv_not_ceq = Obj.magic x in
14495 let _startpos = _startpos_x_ in
14496 let _endpos = _endpos_x_ in
14497 let _v : 'tv_loption_not_ceq_ =
14498 # 59 "standard.mly"
14499 ( x )
14500 # 14501 "parser_cocci_menhir.ml"
14501 in
14502 _menhir_env.MenhirLib.EngineTypes.stack <- {
14503 MenhirLib.EngineTypes.state = _menhir_s;
14504 MenhirLib.EngineTypes.semv = Obj.repr _v;
14505 MenhirLib.EngineTypes.startp = _startpos;
14506 MenhirLib.EngineTypes.endp = _endpos;
14507 MenhirLib.EngineTypes.next = _menhir_stack;
14508 });
14509 (fun _menhir_env ->
14510 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14511 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14512 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14513 let _endpos = _startpos in
14514 let _v : 'tv_loption_not_eq_ =
14515 # 57 "standard.mly"
14516 ( [] )
14517 # 14518 "parser_cocci_menhir.ml"
14518 in
14519 _menhir_env.MenhirLib.EngineTypes.stack <- {
14520 MenhirLib.EngineTypes.state = _menhir_s;
14521 MenhirLib.EngineTypes.semv = Obj.repr _v;
14522 MenhirLib.EngineTypes.startp = _startpos;
14523 MenhirLib.EngineTypes.endp = _endpos;
14524 MenhirLib.EngineTypes.next = _menhir_stack;
14525 });
14526 (fun _menhir_env ->
14527 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14528 let {
14529 MenhirLib.EngineTypes.state = _menhir_s;
14530 MenhirLib.EngineTypes.semv = x;
14531 MenhirLib.EngineTypes.startp = _startpos_x_;
14532 MenhirLib.EngineTypes.endp = _endpos_x_;
14533 MenhirLib.EngineTypes.next = _menhir_stack;
14534 } = _menhir_stack in
14535 let x : 'tv_not_eq = Obj.magic x in
14536 let _startpos = _startpos_x_ in
14537 let _endpos = _endpos_x_ in
14538 let _v : 'tv_loption_not_eq_ =
14539 # 59 "standard.mly"
14540 ( x )
14541 # 14542 "parser_cocci_menhir.ml"
14542 in
14543 _menhir_env.MenhirLib.EngineTypes.stack <- {
14544 MenhirLib.EngineTypes.state = _menhir_s;
14545 MenhirLib.EngineTypes.semv = Obj.repr _v;
14546 MenhirLib.EngineTypes.startp = _startpos;
14547 MenhirLib.EngineTypes.endp = _endpos;
14548 MenhirLib.EngineTypes.next = _menhir_stack;
14549 });
14550 (fun _menhir_env ->
14551 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14552 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14553 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14554 let _endpos = _startpos in
14555 let _v : 'tv_loption_not_eqe_ =
14556 # 57 "standard.mly"
14557 ( [] )
14558 # 14559 "parser_cocci_menhir.ml"
14559 in
14560 _menhir_env.MenhirLib.EngineTypes.stack <- {
14561 MenhirLib.EngineTypes.state = _menhir_s;
14562 MenhirLib.EngineTypes.semv = Obj.repr _v;
14563 MenhirLib.EngineTypes.startp = _startpos;
14564 MenhirLib.EngineTypes.endp = _endpos;
14565 MenhirLib.EngineTypes.next = _menhir_stack;
14566 });
14567 (fun _menhir_env ->
14568 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14569 let {
14570 MenhirLib.EngineTypes.state = _menhir_s;
14571 MenhirLib.EngineTypes.semv = x;
14572 MenhirLib.EngineTypes.startp = _startpos_x_;
14573 MenhirLib.EngineTypes.endp = _endpos_x_;
14574 MenhirLib.EngineTypes.next = _menhir_stack;
14575 } = _menhir_stack in
14576 let x : 'tv_not_eqe = Obj.magic x in
14577 let _startpos = _startpos_x_ in
14578 let _endpos = _endpos_x_ in
14579 let _v : 'tv_loption_not_eqe_ =
14580 # 59 "standard.mly"
14581 ( x )
14582 # 14583 "parser_cocci_menhir.ml"
14583 in
14584 _menhir_env.MenhirLib.EngineTypes.stack <- {
14585 MenhirLib.EngineTypes.state = _menhir_s;
14586 MenhirLib.EngineTypes.semv = Obj.repr _v;
14587 MenhirLib.EngineTypes.startp = _startpos;
14588 MenhirLib.EngineTypes.endp = _endpos;
14589 MenhirLib.EngineTypes.next = _menhir_stack;
14590 });
14591 (fun _menhir_env ->
14592 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14593 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14594 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14595 let _endpos = _startpos in
14596 let _v : 'tv_loption_not_pos_ =
14597 # 57 "standard.mly"
14598 ( [] )
14599 # 14600 "parser_cocci_menhir.ml"
14600 in
14601 _menhir_env.MenhirLib.EngineTypes.stack <- {
14602 MenhirLib.EngineTypes.state = _menhir_s;
14603 MenhirLib.EngineTypes.semv = Obj.repr _v;
14604 MenhirLib.EngineTypes.startp = _startpos;
14605 MenhirLib.EngineTypes.endp = _endpos;
14606 MenhirLib.EngineTypes.next = _menhir_stack;
14607 });
14608 (fun _menhir_env ->
14609 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14610 let {
14611 MenhirLib.EngineTypes.state = _menhir_s;
14612 MenhirLib.EngineTypes.semv = x;
14613 MenhirLib.EngineTypes.startp = _startpos_x_;
14614 MenhirLib.EngineTypes.endp = _endpos_x_;
14615 MenhirLib.EngineTypes.next = _menhir_stack;
14616 } = _menhir_stack in
14617 let x : 'tv_not_pos = Obj.magic x in
14618 let _startpos = _startpos_x_ in
14619 let _endpos = _endpos_x_ in
14620 let _v : 'tv_loption_not_pos_ =
14621 # 59 "standard.mly"
14622 ( x )
14623 # 14624 "parser_cocci_menhir.ml"
14624 in
14625 _menhir_env.MenhirLib.EngineTypes.stack <- {
14626 MenhirLib.EngineTypes.state = _menhir_s;
14627 MenhirLib.EngineTypes.semv = Obj.repr _v;
14628 MenhirLib.EngineTypes.startp = _startpos;
14629 MenhirLib.EngineTypes.endp = _endpos;
14630 MenhirLib.EngineTypes.next = _menhir_stack;
14631 });
14632 (fun _menhir_env ->
14633 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14634 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14635 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14636 let _endpos = _startpos in
14637 let _v : 'tv_loption_plus_start_ =
14638 # 57 "standard.mly"
14639 ( [] )
14640 # 14641 "parser_cocci_menhir.ml"
14641 in
14642 _menhir_env.MenhirLib.EngineTypes.stack <- {
14643 MenhirLib.EngineTypes.state = _menhir_s;
14644 MenhirLib.EngineTypes.semv = Obj.repr _v;
14645 MenhirLib.EngineTypes.startp = _startpos;
14646 MenhirLib.EngineTypes.endp = _endpos;
14647 MenhirLib.EngineTypes.next = _menhir_stack;
14648 });
14649 (fun _menhir_env ->
14650 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14651 let {
14652 MenhirLib.EngineTypes.state = _menhir_s;
14653 MenhirLib.EngineTypes.semv = x;
14654 MenhirLib.EngineTypes.startp = _startpos_x_;
14655 MenhirLib.EngineTypes.endp = _endpos_x_;
14656 MenhirLib.EngineTypes.next = _menhir_stack;
14657 } = _menhir_stack in
14658 let x : 'tv_plus_start = Obj.magic x in
14659 let _startpos = _startpos_x_ in
14660 let _endpos = _endpos_x_ in
14661 let _v : 'tv_loption_plus_start_ =
14662 # 59 "standard.mly"
14663 ( x )
14664 # 14665 "parser_cocci_menhir.ml"
14665 in
14666 _menhir_env.MenhirLib.EngineTypes.stack <- {
14667 MenhirLib.EngineTypes.state = _menhir_s;
14668 MenhirLib.EngineTypes.semv = Obj.repr _v;
14669 MenhirLib.EngineTypes.startp = _startpos;
14670 MenhirLib.EngineTypes.endp = _endpos;
14671 MenhirLib.EngineTypes.next = _menhir_stack;
14672 });
14673 (fun _menhir_env ->
14674 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14675 let {
14676 MenhirLib.EngineTypes.state = _menhir_s;
14677 MenhirLib.EngineTypes.semv = t;
14678 MenhirLib.EngineTypes.startp = _startpos_t_;
14679 MenhirLib.EngineTypes.endp = _endpos_t_;
14680 MenhirLib.EngineTypes.next = _menhir_stack;
14681 } = _menhir_stack in
14682 let t : 'tv_ctype = Obj.magic t in
14683 let _startpos = _startpos_t_ in
14684 let _endpos = _endpos_t_ in
14685 let _v : 'tv_meta_exp_type =
14686 # 429 "parser_cocci_menhir.mly"
14687 ( [Ast0_cocci.ast0_type_to_type t] )
14688 # 14689 "parser_cocci_menhir.ml"
14689 in
14690 _menhir_env.MenhirLib.EngineTypes.stack <- {
14691 MenhirLib.EngineTypes.state = _menhir_s;
14692 MenhirLib.EngineTypes.semv = Obj.repr _v;
14693 MenhirLib.EngineTypes.startp = _startpos;
14694 MenhirLib.EngineTypes.endp = _endpos;
14695 MenhirLib.EngineTypes.next = _menhir_stack;
14696 });
14697 (fun _menhir_env ->
14698 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14699 let {
14700 MenhirLib.EngineTypes.semv = m;
14701 MenhirLib.EngineTypes.startp = _startpos_m_;
14702 MenhirLib.EngineTypes.endp = _endpos_m_;
14703 MenhirLib.EngineTypes.next = {
14704 MenhirLib.EngineTypes.startp = _startpos__3_;
14705 MenhirLib.EngineTypes.endp = _endpos__3_;
14706 MenhirLib.EngineTypes.next = {
14707 MenhirLib.EngineTypes.semv = t;
14708 MenhirLib.EngineTypes.startp = _startpos_t_;
14709 MenhirLib.EngineTypes.endp = _endpos_t_;
14710 MenhirLib.EngineTypes.next = {
14711 MenhirLib.EngineTypes.state = _menhir_s;
14712 MenhirLib.EngineTypes.startp = _startpos__1_;
14713 MenhirLib.EngineTypes.endp = _endpos__1_;
14714 MenhirLib.EngineTypes.next = _menhir_stack;
14715 };
14716 };
14717 };
14718 } = _menhir_stack in
14719 let m : 'tv_list_TMul_ = Obj.magic m in
14720 let t : 'tv_comma_list_ctype_ = Obj.magic t in
14721 let _startpos = _startpos__1_ in
14722 let _endpos = _endpos_m_ in
14723 let _v : 'tv_meta_exp_type =
14724 # 431 "parser_cocci_menhir.mly"
14725 ( List.map
14726 (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m)
14727 t )
14728 # 14729 "parser_cocci_menhir.ml"
14729 in
14730 _menhir_env.MenhirLib.EngineTypes.stack <- {
14731 MenhirLib.EngineTypes.state = _menhir_s;
14732 MenhirLib.EngineTypes.semv = Obj.repr _v;
14733 MenhirLib.EngineTypes.startp = _startpos;
14734 MenhirLib.EngineTypes.endp = _endpos;
14735 MenhirLib.EngineTypes.next = _menhir_stack;
14736 });
14737 (fun _menhir_env ->
14738 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14739 let {
14740 MenhirLib.EngineTypes.semv = _3;
14741 MenhirLib.EngineTypes.startp = _startpos__3_;
14742 MenhirLib.EngineTypes.endp = _endpos__3_;
14743 MenhirLib.EngineTypes.next = {
14744 MenhirLib.EngineTypes.startp = _startpos__2_;
14745 MenhirLib.EngineTypes.endp = _endpos__2_;
14746 MenhirLib.EngineTypes.next = {
14747 MenhirLib.EngineTypes.state = _menhir_s;
14748 MenhirLib.EngineTypes.semv = _1;
14749 MenhirLib.EngineTypes.startp = _startpos__1_;
14750 MenhirLib.EngineTypes.endp = _endpos__1_;
14751 MenhirLib.EngineTypes.next = _menhir_stack;
14752 };
14753 };
14754 } = _menhir_stack in
14755 let _3 : 'tv_pure_ident = Obj.magic _3 in
14756 let _1 : (
14757 # 47 "parser_cocci_menhir.mly"
14758 (string)
14759 # 14760 "parser_cocci_menhir.ml"
14760 ) = Obj.magic _1 in
14761 let _startpos = _startpos__1_ in
14762 let _endpos = _endpos__3_ in
14763 let _v : 'tv_meta_ident =
14764 # 1325 "parser_cocci_menhir.mly"
14765 ( (Some _1,P.id2name _3) )
14766 # 14767 "parser_cocci_menhir.ml"
14767 in
14768 _menhir_env.MenhirLib.EngineTypes.stack <- {
14769 MenhirLib.EngineTypes.state = _menhir_s;
14770 MenhirLib.EngineTypes.semv = Obj.repr _v;
14771 MenhirLib.EngineTypes.startp = _startpos;
14772 MenhirLib.EngineTypes.endp = _endpos;
14773 MenhirLib.EngineTypes.next = _menhir_stack;
14774 });
14775 (fun _menhir_env ->
14776 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14777 let {
14778 MenhirLib.EngineTypes.state = _menhir_s;
14779 MenhirLib.EngineTypes.semv = m;
14780 MenhirLib.EngineTypes.startp = _startpos_m_;
14781 MenhirLib.EngineTypes.endp = _endpos_m_;
14782 MenhirLib.EngineTypes.next = _menhir_stack;
14783 } = _menhir_stack in
14784 let m : 'tv_metadec = Obj.magic m in
14785 let _startpos = _startpos_m_ in
14786 let _endpos = _endpos_m_ in
14787 let _v : (
14788 # 156 "parser_cocci_menhir.mly"
14789 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
14790 # 14791 "parser_cocci_menhir.ml"
14791 ) =
14792 # 180 "parser_cocci_menhir.mly"
14793 ( m (!Ast0.rule_name) )
14794 # 14795 "parser_cocci_menhir.ml"
14795 in
14796 _menhir_env.MenhirLib.EngineTypes.stack <- {
14797 MenhirLib.EngineTypes.state = _menhir_s;
14798 MenhirLib.EngineTypes.semv = Obj.repr _v;
14799 MenhirLib.EngineTypes.startp = _startpos;
14800 MenhirLib.EngineTypes.endp = _endpos;
14801 MenhirLib.EngineTypes.next = _menhir_stack;
14802 });
14803 (fun _menhir_env ->
14804 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14805 let {
14806 MenhirLib.EngineTypes.startp = _startpos__6_;
14807 MenhirLib.EngineTypes.endp = _endpos__6_;
14808 MenhirLib.EngineTypes.next = {
14809 MenhirLib.EngineTypes.semv = ids;
14810 MenhirLib.EngineTypes.startp = _startpos_ids_;
14811 MenhirLib.EngineTypes.endp = _endpos_ids_;
14812 MenhirLib.EngineTypes.next = {
14813 MenhirLib.EngineTypes.startp = _startpos__4_;
14814 MenhirLib.EngineTypes.endp = _endpos__4_;
14815 MenhirLib.EngineTypes.next = {
14816 MenhirLib.EngineTypes.startp = _startpos__3_;
14817 MenhirLib.EngineTypes.endp = _endpos__3_;
14818 MenhirLib.EngineTypes.next = {
14819 MenhirLib.EngineTypes.semv = ispure;
14820 MenhirLib.EngineTypes.startp = _startpos_ispure_;
14821 MenhirLib.EngineTypes.endp = _endpos_ispure_;
14822 MenhirLib.EngineTypes.next = {
14823 MenhirLib.EngineTypes.state = _menhir_s;
14824 MenhirLib.EngineTypes.semv = ar;
14825 MenhirLib.EngineTypes.startp = _startpos_ar_;
14826 MenhirLib.EngineTypes.endp = _endpos_ar_;
14827 MenhirLib.EngineTypes.next = _menhir_stack;
14828 };
14829 };
14830 };
14831 };
14832 };
14833 } = _menhir_stack in
14834 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
14835 let ispure : 'tv_pure = Obj.magic ispure in
14836 let ar : 'tv_arity = Obj.magic ar in
14837 let _startpos = _startpos_ar_ in
14838 let _endpos = _endpos__6_ in
14839 let _v : 'tv_metadec = let kindfn =
14840
14841 # 294 "parser_cocci_menhir.mly"
14842 ( (fun arity name pure check_meta ->
14843 let tok = check_meta(Ast.MetaFreshIdDecl(arity,name)) in
14844 !Data.add_id_meta name [] pure; tok) )
14845 # 14846 "parser_cocci_menhir.ml"
14846
14847 in
14848
14849 # 253 "parser_cocci_menhir.mly"
14850 ( P.create_metadec ar ispure kindfn ids )
14851 # 14852 "parser_cocci_menhir.ml"
14852 in
14853 _menhir_env.MenhirLib.EngineTypes.stack <- {
14854 MenhirLib.EngineTypes.state = _menhir_s;
14855 MenhirLib.EngineTypes.semv = Obj.repr _v;
14856 MenhirLib.EngineTypes.startp = _startpos;
14857 MenhirLib.EngineTypes.endp = _endpos;
14858 MenhirLib.EngineTypes.next = _menhir_stack;
14859 });
14860 (fun _menhir_env ->
14861 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14862 let {
14863 MenhirLib.EngineTypes.startp = _startpos__5_;
14864 MenhirLib.EngineTypes.endp = _endpos__5_;
14865 MenhirLib.EngineTypes.next = {
14866 MenhirLib.EngineTypes.semv = ids;
14867 MenhirLib.EngineTypes.startp = _startpos_ids_;
14868 MenhirLib.EngineTypes.endp = _endpos_ids_;
14869 MenhirLib.EngineTypes.next = {
14870 MenhirLib.EngineTypes.startp = _startpos__3_;
14871 MenhirLib.EngineTypes.endp = _endpos__3_;
14872 MenhirLib.EngineTypes.next = {
14873 MenhirLib.EngineTypes.semv = ispure;
14874 MenhirLib.EngineTypes.startp = _startpos_ispure_;
14875 MenhirLib.EngineTypes.endp = _endpos_ispure_;
14876 MenhirLib.EngineTypes.next = {
14877 MenhirLib.EngineTypes.state = _menhir_s;
14878 MenhirLib.EngineTypes.semv = ar;
14879 MenhirLib.EngineTypes.startp = _startpos_ar_;
14880 MenhirLib.EngineTypes.endp = _endpos_ar_;
14881 MenhirLib.EngineTypes.next = _menhir_stack;
14882 };
14883 };
14884 };
14885 };
14886 } = _menhir_stack in
14887 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
14888 let ispure : 'tv_pure = Obj.magic ispure in
14889 let ar : 'tv_arity = Obj.magic ar in
14890 let _startpos = _startpos_ar_ in
14891 let _endpos = _endpos__5_ in
14892 let _v : 'tv_metadec = let kindfn =
14893
14894 # 298 "parser_cocci_menhir.mly"
14895 ( (fun arity name pure check_meta ->
14896 let tok = check_meta(Ast.MetaParamDecl(arity,name)) in
14897 !Data.add_param_meta name pure; tok) )
14898 # 14899 "parser_cocci_menhir.ml"
14899
14900 in
14901
14902 # 253 "parser_cocci_menhir.mly"
14903 ( P.create_metadec ar ispure kindfn ids )
14904 # 14905 "parser_cocci_menhir.ml"
14905 in
14906 _menhir_env.MenhirLib.EngineTypes.stack <- {
14907 MenhirLib.EngineTypes.state = _menhir_s;
14908 MenhirLib.EngineTypes.semv = Obj.repr _v;
14909 MenhirLib.EngineTypes.startp = _startpos;
14910 MenhirLib.EngineTypes.endp = _endpos;
14911 MenhirLib.EngineTypes.next = _menhir_stack;
14912 });
14913 (fun _menhir_env ->
14914 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14915 let {
14916 MenhirLib.EngineTypes.startp = _startpos__6_;
14917 MenhirLib.EngineTypes.endp = _endpos__6_;
14918 MenhirLib.EngineTypes.next = {
14919 MenhirLib.EngineTypes.semv = ids;
14920 MenhirLib.EngineTypes.startp = _startpos_ids_;
14921 MenhirLib.EngineTypes.endp = _endpos_ids_;
14922 MenhirLib.EngineTypes.next = {
14923 MenhirLib.EngineTypes.startp = _startpos__4_;
14924 MenhirLib.EngineTypes.endp = _endpos__4_;
14925 MenhirLib.EngineTypes.next = {
14926 MenhirLib.EngineTypes.startp = _startpos__3_;
14927 MenhirLib.EngineTypes.endp = _endpos__3_;
14928 MenhirLib.EngineTypes.next = {
14929 MenhirLib.EngineTypes.semv = ispure;
14930 MenhirLib.EngineTypes.startp = _startpos_ispure_;
14931 MenhirLib.EngineTypes.endp = _endpos_ispure_;
14932 MenhirLib.EngineTypes.next = {
14933 MenhirLib.EngineTypes.state = _menhir_s;
14934 MenhirLib.EngineTypes.semv = ar;
14935 MenhirLib.EngineTypes.startp = _startpos_ar_;
14936 MenhirLib.EngineTypes.endp = _endpos_ar_;
14937 MenhirLib.EngineTypes.next = _menhir_stack;
14938 };
14939 };
14940 };
14941 };
14942 };
14943 } = _menhir_stack in
14944 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
14945 let ispure : 'tv_pure = Obj.magic ispure in
14946 let ar : 'tv_arity = Obj.magic ar in
14947 let _startpos = _startpos_ar_ in
14948 let _endpos = _endpos__6_ in
14949 let _v : 'tv_metadec = let kindfn =
14950
14951 # 302 "parser_cocci_menhir.mly"
14952 ( (fun arity name pure check_meta ->
14953 let tok = check_meta(Ast.MetaParamListDecl(arity,name,None)) in
14954 !Data.add_paramlist_meta name None pure; tok) )
14955 # 14956 "parser_cocci_menhir.ml"
14956
14957 in
14958
14959 # 253 "parser_cocci_menhir.mly"
14960 ( P.create_metadec ar ispure kindfn ids )
14961 # 14962 "parser_cocci_menhir.ml"
14962 in
14963 _menhir_env.MenhirLib.EngineTypes.stack <- {
14964 MenhirLib.EngineTypes.state = _menhir_s;
14965 MenhirLib.EngineTypes.semv = Obj.repr _v;
14966 MenhirLib.EngineTypes.startp = _startpos;
14967 MenhirLib.EngineTypes.endp = _endpos;
14968 MenhirLib.EngineTypes.next = _menhir_stack;
14969 });
14970 (fun _menhir_env ->
14971 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14972 let {
14973 MenhirLib.EngineTypes.startp = _startpos__6_;
14974 MenhirLib.EngineTypes.endp = _endpos__6_;
14975 MenhirLib.EngineTypes.next = {
14976 MenhirLib.EngineTypes.semv = ids;
14977 MenhirLib.EngineTypes.startp = _startpos_ids_;
14978 MenhirLib.EngineTypes.endp = _endpos_ids_;
14979 MenhirLib.EngineTypes.next = {
14980 MenhirLib.EngineTypes.startp = _startpos__4_;
14981 MenhirLib.EngineTypes.endp = _endpos__4_;
14982 MenhirLib.EngineTypes.next = {
14983 MenhirLib.EngineTypes.startp = _startpos__3_;
14984 MenhirLib.EngineTypes.endp = _endpos__3_;
14985 MenhirLib.EngineTypes.next = {
14986 MenhirLib.EngineTypes.semv = ispure;
14987 MenhirLib.EngineTypes.startp = _startpos_ispure_;
14988 MenhirLib.EngineTypes.endp = _endpos_ispure_;
14989 MenhirLib.EngineTypes.next = {
14990 MenhirLib.EngineTypes.state = _menhir_s;
14991 MenhirLib.EngineTypes.semv = ar;
14992 MenhirLib.EngineTypes.startp = _startpos_ar_;
14993 MenhirLib.EngineTypes.endp = _endpos_ar_;
14994 MenhirLib.EngineTypes.next = _menhir_stack;
14995 };
14996 };
14997 };
14998 };
14999 };
15000 } = _menhir_stack in
15001 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15002 let ispure : 'tv_pure = Obj.magic ispure in
15003 let ar : 'tv_arity = Obj.magic ar in
15004 let _startpos = _startpos_ar_ in
15005 let _endpos = _endpos__6_ in
15006 let _v : 'tv_metadec = let kindfn =
15007
15008 # 306 "parser_cocci_menhir.mly"
15009 ( (fun arity name pure check_meta ->
15010 let tok = check_meta(Ast.MetaExpListDecl(arity,name,None)) in
15011 !Data.add_explist_meta name None pure; tok) )
15012 # 15013 "parser_cocci_menhir.ml"
15013
15014 in
15015
15016 # 253 "parser_cocci_menhir.mly"
15017 ( P.create_metadec ar ispure kindfn ids )
15018 # 15019 "parser_cocci_menhir.ml"
15019 in
15020 _menhir_env.MenhirLib.EngineTypes.stack <- {
15021 MenhirLib.EngineTypes.state = _menhir_s;
15022 MenhirLib.EngineTypes.semv = Obj.repr _v;
15023 MenhirLib.EngineTypes.startp = _startpos;
15024 MenhirLib.EngineTypes.endp = _endpos;
15025 MenhirLib.EngineTypes.next = _menhir_stack;
15026 });
15027 (fun _menhir_env ->
15028 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15029 let {
15030 MenhirLib.EngineTypes.startp = _startpos__5_;
15031 MenhirLib.EngineTypes.endp = _endpos__5_;
15032 MenhirLib.EngineTypes.next = {
15033 MenhirLib.EngineTypes.semv = ids;
15034 MenhirLib.EngineTypes.startp = _startpos_ids_;
15035 MenhirLib.EngineTypes.endp = _endpos_ids_;
15036 MenhirLib.EngineTypes.next = {
15037 MenhirLib.EngineTypes.startp = _startpos__3_;
15038 MenhirLib.EngineTypes.endp = _endpos__3_;
15039 MenhirLib.EngineTypes.next = {
15040 MenhirLib.EngineTypes.semv = ispure;
15041 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15042 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15043 MenhirLib.EngineTypes.next = {
15044 MenhirLib.EngineTypes.state = _menhir_s;
15045 MenhirLib.EngineTypes.semv = ar;
15046 MenhirLib.EngineTypes.startp = _startpos_ar_;
15047 MenhirLib.EngineTypes.endp = _endpos_ar_;
15048 MenhirLib.EngineTypes.next = _menhir_stack;
15049 };
15050 };
15051 };
15052 };
15053 } = _menhir_stack in
15054 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15055 let ispure : 'tv_pure = Obj.magic ispure in
15056 let ar : 'tv_arity = Obj.magic ar in
15057 let _startpos = _startpos_ar_ in
15058 let _endpos = _endpos__5_ in
15059 let _v : 'tv_metadec = let kindfn =
15060
15061 # 310 "parser_cocci_menhir.mly"
15062 ( (fun arity name pure check_meta ->
15063 let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in
15064 !Data.add_type_meta name pure; tok) )
15065 # 15066 "parser_cocci_menhir.ml"
15066
15067 in
15068
15069 # 253 "parser_cocci_menhir.mly"
15070 ( P.create_metadec ar ispure kindfn ids )
15071 # 15072 "parser_cocci_menhir.ml"
15072 in
15073 _menhir_env.MenhirLib.EngineTypes.stack <- {
15074 MenhirLib.EngineTypes.state = _menhir_s;
15075 MenhirLib.EngineTypes.semv = Obj.repr _v;
15076 MenhirLib.EngineTypes.startp = _startpos;
15077 MenhirLib.EngineTypes.endp = _endpos;
15078 MenhirLib.EngineTypes.next = _menhir_stack;
15079 });
15080 (fun _menhir_env ->
15081 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15082 let {
15083 MenhirLib.EngineTypes.startp = _startpos__5_;
15084 MenhirLib.EngineTypes.endp = _endpos__5_;
15085 MenhirLib.EngineTypes.next = {
15086 MenhirLib.EngineTypes.semv = ids;
15087 MenhirLib.EngineTypes.startp = _startpos_ids_;
15088 MenhirLib.EngineTypes.endp = _endpos_ids_;
15089 MenhirLib.EngineTypes.next = {
15090 MenhirLib.EngineTypes.startp = _startpos__3_;
15091 MenhirLib.EngineTypes.endp = _endpos__3_;
15092 MenhirLib.EngineTypes.next = {
15093 MenhirLib.EngineTypes.semv = ispure;
15094 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15095 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15096 MenhirLib.EngineTypes.next = {
15097 MenhirLib.EngineTypes.state = _menhir_s;
15098 MenhirLib.EngineTypes.semv = ar;
15099 MenhirLib.EngineTypes.startp = _startpos_ar_;
15100 MenhirLib.EngineTypes.endp = _endpos_ar_;
15101 MenhirLib.EngineTypes.next = _menhir_stack;
15102 };
15103 };
15104 };
15105 };
15106 } = _menhir_stack in
15107 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15108 let ispure : 'tv_pure = Obj.magic ispure in
15109 let ar : 'tv_arity = Obj.magic ar in
15110 let _startpos = _startpos_ar_ in
15111 let _endpos = _endpos__5_ in
15112 let _v : 'tv_metadec = let kindfn =
15113
15114 # 314 "parser_cocci_menhir.mly"
15115 ( (fun arity name pure check_meta ->
15116 let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
15117 !Data.add_stm_meta name pure; tok) )
15118 # 15119 "parser_cocci_menhir.ml"
15119
15120 in
15121
15122 # 253 "parser_cocci_menhir.mly"
15123 ( P.create_metadec ar ispure kindfn ids )
15124 # 15125 "parser_cocci_menhir.ml"
15125 in
15126 _menhir_env.MenhirLib.EngineTypes.stack <- {
15127 MenhirLib.EngineTypes.state = _menhir_s;
15128 MenhirLib.EngineTypes.semv = Obj.repr _v;
15129 MenhirLib.EngineTypes.startp = _startpos;
15130 MenhirLib.EngineTypes.endp = _endpos;
15131 MenhirLib.EngineTypes.next = _menhir_stack;
15132 });
15133 (fun _menhir_env ->
15134 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15135 let {
15136 MenhirLib.EngineTypes.startp = _startpos__6_;
15137 MenhirLib.EngineTypes.endp = _endpos__6_;
15138 MenhirLib.EngineTypes.next = {
15139 MenhirLib.EngineTypes.semv = ids;
15140 MenhirLib.EngineTypes.startp = _startpos_ids_;
15141 MenhirLib.EngineTypes.endp = _endpos_ids_;
15142 MenhirLib.EngineTypes.next = {
15143 MenhirLib.EngineTypes.startp = _startpos__4_;
15144 MenhirLib.EngineTypes.endp = _endpos__4_;
15145 MenhirLib.EngineTypes.next = {
15146 MenhirLib.EngineTypes.startp = _startpos__3_;
15147 MenhirLib.EngineTypes.endp = _endpos__3_;
15148 MenhirLib.EngineTypes.next = {
15149 MenhirLib.EngineTypes.semv = ispure;
15150 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15151 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15152 MenhirLib.EngineTypes.next = {
15153 MenhirLib.EngineTypes.state = _menhir_s;
15154 MenhirLib.EngineTypes.semv = ar;
15155 MenhirLib.EngineTypes.startp = _startpos_ar_;
15156 MenhirLib.EngineTypes.endp = _endpos_ar_;
15157 MenhirLib.EngineTypes.next = _menhir_stack;
15158 };
15159 };
15160 };
15161 };
15162 };
15163 } = _menhir_stack in
15164 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15165 let ispure : 'tv_pure = Obj.magic ispure in
15166 let ar : 'tv_arity = Obj.magic ar in
15167 let _startpos = _startpos_ar_ in
15168 let _endpos = _endpos__6_ in
15169 let _v : 'tv_metadec = let kindfn =
15170
15171 # 318 "parser_cocci_menhir.mly"
15172 ( (fun arity name pure check_meta ->
15173 let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
15174 !Data.add_stmlist_meta name pure; tok) )
15175 # 15176 "parser_cocci_menhir.ml"
15176
15177 in
15178
15179 # 253 "parser_cocci_menhir.mly"
15180 ( P.create_metadec ar ispure kindfn ids )
15181 # 15182 "parser_cocci_menhir.ml"
15182 in
15183 _menhir_env.MenhirLib.EngineTypes.stack <- {
15184 MenhirLib.EngineTypes.state = _menhir_s;
15185 MenhirLib.EngineTypes.semv = Obj.repr _v;
15186 MenhirLib.EngineTypes.startp = _startpos;
15187 MenhirLib.EngineTypes.endp = _endpos;
15188 MenhirLib.EngineTypes.next = _menhir_stack;
15189 });
15190 (fun _menhir_env ->
15191 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15192 let {
15193 MenhirLib.EngineTypes.startp = _startpos__5_;
15194 MenhirLib.EngineTypes.endp = _endpos__5_;
15195 MenhirLib.EngineTypes.next = {
15196 MenhirLib.EngineTypes.semv = ids;
15197 MenhirLib.EngineTypes.startp = _startpos_ids_;
15198 MenhirLib.EngineTypes.endp = _endpos_ids_;
15199 MenhirLib.EngineTypes.next = {
15200 MenhirLib.EngineTypes.startp = _startpos__3_;
15201 MenhirLib.EngineTypes.endp = _endpos__3_;
15202 MenhirLib.EngineTypes.next = {
15203 MenhirLib.EngineTypes.semv = ispure;
15204 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15205 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15206 MenhirLib.EngineTypes.next = {
15207 MenhirLib.EngineTypes.state = _menhir_s;
15208 MenhirLib.EngineTypes.semv = ar;
15209 MenhirLib.EngineTypes.startp = _startpos_ar_;
15210 MenhirLib.EngineTypes.endp = _endpos_ar_;
15211 MenhirLib.EngineTypes.next = _menhir_stack;
15212 };
15213 };
15214 };
15215 };
15216 } = _menhir_stack in
15217 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15218 let ispure : 'tv_pure = Obj.magic ispure in
15219 let ar : 'tv_arity = Obj.magic ar in
15220 let _startpos = _startpos_ar_ in
15221 let _endpos = _endpos__5_ in
15222 let _v : 'tv_metadec = let kindfn =
15223
15224 # 322 "parser_cocci_menhir.mly"
15225 ( (fun arity (_,name) pure check_meta ->
15226 if arity = Ast.NONE && pure = Ast0.Impure
15227 then (!Data.add_type_name name; [])
15228 else raise (Semantic_cocci.Semantic "bad typedef")) )
15229 # 15230 "parser_cocci_menhir.ml"
15230
15231 in
15232
15233 # 253 "parser_cocci_menhir.mly"
15234 ( P.create_metadec ar ispure kindfn ids )
15235 # 15236 "parser_cocci_menhir.ml"
15236 in
15237 _menhir_env.MenhirLib.EngineTypes.stack <- {
15238 MenhirLib.EngineTypes.state = _menhir_s;
15239 MenhirLib.EngineTypes.semv = Obj.repr _v;
15240 MenhirLib.EngineTypes.startp = _startpos;
15241 MenhirLib.EngineTypes.endp = _endpos;
15242 MenhirLib.EngineTypes.next = _menhir_stack;
15243 });
15244 (fun _menhir_env ->
15245 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15246 let {
15247 MenhirLib.EngineTypes.startp = _startpos__6_;
15248 MenhirLib.EngineTypes.endp = _endpos__6_;
15249 MenhirLib.EngineTypes.next = {
15250 MenhirLib.EngineTypes.semv = ids;
15251 MenhirLib.EngineTypes.startp = _startpos_ids_;
15252 MenhirLib.EngineTypes.endp = _endpos_ids_;
15253 MenhirLib.EngineTypes.next = {
15254 MenhirLib.EngineTypes.startp = _startpos__4_;
15255 MenhirLib.EngineTypes.endp = _endpos__4_;
15256 MenhirLib.EngineTypes.next = {
15257 MenhirLib.EngineTypes.startp = _startpos__3_;
15258 MenhirLib.EngineTypes.endp = _endpos__3_;
15259 MenhirLib.EngineTypes.next = {
15260 MenhirLib.EngineTypes.semv = ispure;
15261 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15262 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15263 MenhirLib.EngineTypes.next = {
15264 MenhirLib.EngineTypes.state = _menhir_s;
15265 MenhirLib.EngineTypes.semv = ar;
15266 MenhirLib.EngineTypes.startp = _startpos_ar_;
15267 MenhirLib.EngineTypes.endp = _endpos_ar_;
15268 MenhirLib.EngineTypes.next = _menhir_stack;
15269 };
15270 };
15271 };
15272 };
15273 };
15274 } = _menhir_stack in
15275 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15276 let ispure : 'tv_pure = Obj.magic ispure in
15277 let ar : 'tv_arity = Obj.magic ar in
15278 let _startpos = _startpos_ar_ in
15279 let _endpos = _endpos__6_ in
15280 let _v : 'tv_metadec = let kindfn =
15281
15282 # 327 "parser_cocci_menhir.mly"
15283 ( (fun arity (_,name) pure check_meta ->
15284 if arity = Ast.NONE && pure = Ast0.Impure
15285 then (!Data.add_declarer_name name; [])
15286 else raise (Semantic_cocci.Semantic "bad declarer")) )
15287 # 15288 "parser_cocci_menhir.ml"
15288
15289 in
15290
15291 # 253 "parser_cocci_menhir.mly"
15292 ( P.create_metadec ar ispure kindfn ids )
15293 # 15294 "parser_cocci_menhir.ml"
15294 in
15295 _menhir_env.MenhirLib.EngineTypes.stack <- {
15296 MenhirLib.EngineTypes.state = _menhir_s;
15297 MenhirLib.EngineTypes.semv = Obj.repr _v;
15298 MenhirLib.EngineTypes.startp = _startpos;
15299 MenhirLib.EngineTypes.endp = _endpos;
15300 MenhirLib.EngineTypes.next = _menhir_stack;
15301 });
15302 (fun _menhir_env ->
15303 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15304 let {
15305 MenhirLib.EngineTypes.startp = _startpos__6_;
15306 MenhirLib.EngineTypes.endp = _endpos__6_;
15307 MenhirLib.EngineTypes.next = {
15308 MenhirLib.EngineTypes.semv = ids;
15309 MenhirLib.EngineTypes.startp = _startpos_ids_;
15310 MenhirLib.EngineTypes.endp = _endpos_ids_;
15311 MenhirLib.EngineTypes.next = {
15312 MenhirLib.EngineTypes.startp = _startpos__4_;
15313 MenhirLib.EngineTypes.endp = _endpos__4_;
15314 MenhirLib.EngineTypes.next = {
15315 MenhirLib.EngineTypes.startp = _startpos__3_;
15316 MenhirLib.EngineTypes.endp = _endpos__3_;
15317 MenhirLib.EngineTypes.next = {
15318 MenhirLib.EngineTypes.semv = ispure;
15319 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15320 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15321 MenhirLib.EngineTypes.next = {
15322 MenhirLib.EngineTypes.state = _menhir_s;
15323 MenhirLib.EngineTypes.semv = ar;
15324 MenhirLib.EngineTypes.startp = _startpos_ar_;
15325 MenhirLib.EngineTypes.endp = _endpos_ar_;
15326 MenhirLib.EngineTypes.next = _menhir_stack;
15327 };
15328 };
15329 };
15330 };
15331 };
15332 } = _menhir_stack in
15333 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
15334 let ispure : 'tv_pure = Obj.magic ispure in
15335 let ar : 'tv_arity = Obj.magic ar in
15336 let _startpos = _startpos_ar_ in
15337 let _endpos = _endpos__6_ in
15338 let _v : 'tv_metadec = let kindfn =
15339
15340 # 332 "parser_cocci_menhir.mly"
15341 ( (fun arity (_,name) pure check_meta ->
15342 if arity = Ast.NONE && pure = Ast0.Impure
15343 then (!Data.add_iterator_name name; [])
15344 else raise (Semantic_cocci.Semantic "bad iterator")) )
15345 # 15346 "parser_cocci_menhir.ml"
15346
15347 in
15348
15349 # 253 "parser_cocci_menhir.mly"
15350 ( P.create_metadec ar ispure kindfn ids )
15351 # 15352 "parser_cocci_menhir.ml"
15352 in
15353 _menhir_env.MenhirLib.EngineTypes.stack <- {
15354 MenhirLib.EngineTypes.state = _menhir_s;
15355 MenhirLib.EngineTypes.semv = Obj.repr _v;
15356 MenhirLib.EngineTypes.startp = _startpos;
15357 MenhirLib.EngineTypes.endp = _endpos;
15358 MenhirLib.EngineTypes.next = _menhir_stack;
15359 });
15360 (fun _menhir_env ->
15361 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15362 let {
15363 MenhirLib.EngineTypes.startp = _startpos__5_;
15364 MenhirLib.EngineTypes.endp = _endpos__5_;
15365 MenhirLib.EngineTypes.next = {
15366 MenhirLib.EngineTypes.semv = ids;
15367 MenhirLib.EngineTypes.startp = _startpos_ids_;
15368 MenhirLib.EngineTypes.endp = _endpos_ids_;
15369 MenhirLib.EngineTypes.next = {
15370 MenhirLib.EngineTypes.startp = _startpos__3_;
15371 MenhirLib.EngineTypes.endp = _endpos__3_;
15372 MenhirLib.EngineTypes.next = {
15373 MenhirLib.EngineTypes.semv = ispure;
15374 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15375 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15376 MenhirLib.EngineTypes.next = {
15377 MenhirLib.EngineTypes.state = _menhir_s;
15378 MenhirLib.EngineTypes.semv = ar;
15379 MenhirLib.EngineTypes.startp = _startpos_ar_;
15380 MenhirLib.EngineTypes.endp = _endpos_ar_;
15381 MenhirLib.EngineTypes.next = _menhir_stack;
15382 };
15383 };
15384 };
15385 };
15386 } = _menhir_stack in
15387 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
15388 let ispure : 'tv_pure = Obj.magic ispure in
15389 let ar : 'tv_arity = Obj.magic ar in
15390 let _startpos = _startpos_ar_ in
15391 let _endpos = _endpos__5_ in
15392 let _v : 'tv_metadec = let kindfn =
15393
15394 # 340 "parser_cocci_menhir.mly"
15395 ( (fun arity name pure check_meta constraints ->
15396 let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
15397 !Data.add_id_meta name constraints pure; tok) )
15398 # 15399 "parser_cocci_menhir.ml"
15399
15400 in
15401
15402 # 257 "parser_cocci_menhir.mly"
15403 ( P.create_metadec_ne ar ispure kindfn ids )
15404 # 15405 "parser_cocci_menhir.ml"
15405 in
15406 _menhir_env.MenhirLib.EngineTypes.stack <- {
15407 MenhirLib.EngineTypes.state = _menhir_s;
15408 MenhirLib.EngineTypes.semv = Obj.repr _v;
15409 MenhirLib.EngineTypes.startp = _startpos;
15410 MenhirLib.EngineTypes.endp = _endpos;
15411 MenhirLib.EngineTypes.next = _menhir_stack;
15412 });
15413 (fun _menhir_env ->
15414 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15415 let {
15416 MenhirLib.EngineTypes.startp = _startpos__5_;
15417 MenhirLib.EngineTypes.endp = _endpos__5_;
15418 MenhirLib.EngineTypes.next = {
15419 MenhirLib.EngineTypes.semv = ids;
15420 MenhirLib.EngineTypes.startp = _startpos_ids_;
15421 MenhirLib.EngineTypes.endp = _endpos_ids_;
15422 MenhirLib.EngineTypes.next = {
15423 MenhirLib.EngineTypes.startp = _startpos__3_;
15424 MenhirLib.EngineTypes.endp = _endpos__3_;
15425 MenhirLib.EngineTypes.next = {
15426 MenhirLib.EngineTypes.semv = ispure;
15427 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15428 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15429 MenhirLib.EngineTypes.next = {
15430 MenhirLib.EngineTypes.state = _menhir_s;
15431 MenhirLib.EngineTypes.semv = ar;
15432 MenhirLib.EngineTypes.startp = _startpos_ar_;
15433 MenhirLib.EngineTypes.endp = _endpos_ar_;
15434 MenhirLib.EngineTypes.next = _menhir_stack;
15435 };
15436 };
15437 };
15438 };
15439 } = _menhir_stack in
15440 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
15441 let ispure : 'tv_pure = Obj.magic ispure in
15442 let ar : 'tv_arity = Obj.magic ar in
15443 let _startpos = _startpos_ar_ in
15444 let _endpos = _endpos__5_ in
15445 let _v : 'tv_metadec = let kindfn =
15446
15447 # 344 "parser_cocci_menhir.mly"
15448 ( (fun arity name pure check_meta constraints ->
15449 let tok = check_meta(Ast.MetaFuncDecl(arity,name)) in
15450 !Data.add_func_meta name constraints pure; tok) )
15451 # 15452 "parser_cocci_menhir.ml"
15452
15453 in
15454
15455 # 257 "parser_cocci_menhir.mly"
15456 ( P.create_metadec_ne ar ispure kindfn ids )
15457 # 15458 "parser_cocci_menhir.ml"
15458 in
15459 _menhir_env.MenhirLib.EngineTypes.stack <- {
15460 MenhirLib.EngineTypes.state = _menhir_s;
15461 MenhirLib.EngineTypes.semv = Obj.repr _v;
15462 MenhirLib.EngineTypes.startp = _startpos;
15463 MenhirLib.EngineTypes.endp = _endpos;
15464 MenhirLib.EngineTypes.next = _menhir_stack;
15465 });
15466 (fun _menhir_env ->
15467 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15468 let {
15469 MenhirLib.EngineTypes.startp = _startpos__6_;
15470 MenhirLib.EngineTypes.endp = _endpos__6_;
15471 MenhirLib.EngineTypes.next = {
15472 MenhirLib.EngineTypes.semv = ids;
15473 MenhirLib.EngineTypes.startp = _startpos_ids_;
15474 MenhirLib.EngineTypes.endp = _endpos_ids_;
15475 MenhirLib.EngineTypes.next = {
15476 MenhirLib.EngineTypes.startp = _startpos__4_;
15477 MenhirLib.EngineTypes.endp = _endpos__4_;
15478 MenhirLib.EngineTypes.next = {
15479 MenhirLib.EngineTypes.startp = _startpos__3_;
15480 MenhirLib.EngineTypes.endp = _endpos__3_;
15481 MenhirLib.EngineTypes.next = {
15482 MenhirLib.EngineTypes.semv = ispure;
15483 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15484 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15485 MenhirLib.EngineTypes.next = {
15486 MenhirLib.EngineTypes.state = _menhir_s;
15487 MenhirLib.EngineTypes.semv = ar;
15488 MenhirLib.EngineTypes.startp = _startpos_ar_;
15489 MenhirLib.EngineTypes.endp = _endpos_ar_;
15490 MenhirLib.EngineTypes.next = _menhir_stack;
15491 };
15492 };
15493 };
15494 };
15495 };
15496 } = _menhir_stack in
15497 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
15498 let ispure : 'tv_pure = Obj.magic ispure in
15499 let ar : 'tv_arity = Obj.magic ar in
15500 let _startpos = _startpos_ar_ in
15501 let _endpos = _endpos__6_ in
15502 let _v : 'tv_metadec = let kindfn =
15503
15504 # 348 "parser_cocci_menhir.mly"
15505 ( (fun arity name pure check_meta constraints ->
15506 let tok = check_meta(Ast.MetaLocalFuncDecl(arity,name)) in
15507 !Data.add_local_func_meta name constraints pure;
15508 tok) )
15509 # 15510 "parser_cocci_menhir.ml"
15510
15511 in
15512
15513 # 257 "parser_cocci_menhir.mly"
15514 ( P.create_metadec_ne ar ispure kindfn ids )
15515 # 15516 "parser_cocci_menhir.ml"
15516 in
15517 _menhir_env.MenhirLib.EngineTypes.stack <- {
15518 MenhirLib.EngineTypes.state = _menhir_s;
15519 MenhirLib.EngineTypes.semv = Obj.repr _v;
15520 MenhirLib.EngineTypes.startp = _startpos;
15521 MenhirLib.EngineTypes.endp = _endpos;
15522 MenhirLib.EngineTypes.next = _menhir_stack;
15523 });
15524 (fun _menhir_env ->
15525 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15526 let {
15527 MenhirLib.EngineTypes.startp = _startpos__5_;
15528 MenhirLib.EngineTypes.endp = _endpos__5_;
15529 MenhirLib.EngineTypes.next = {
15530 MenhirLib.EngineTypes.semv = ids;
15531 MenhirLib.EngineTypes.startp = _startpos_ids_;
15532 MenhirLib.EngineTypes.endp = _endpos_ids_;
15533 MenhirLib.EngineTypes.next = {
15534 MenhirLib.EngineTypes.startp = _startpos__3_;
15535 MenhirLib.EngineTypes.endp = _endpos__3_;
15536 MenhirLib.EngineTypes.next = {
15537 MenhirLib.EngineTypes.semv = ispure;
15538 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15539 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15540 MenhirLib.EngineTypes.next = {
15541 MenhirLib.EngineTypes.state = _menhir_s;
15542 MenhirLib.EngineTypes.semv = ar;
15543 MenhirLib.EngineTypes.startp = _startpos_ar_;
15544 MenhirLib.EngineTypes.endp = _endpos_ar_;
15545 MenhirLib.EngineTypes.next = _menhir_stack;
15546 };
15547 };
15548 };
15549 };
15550 } = _menhir_stack in
15551 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
15552 let ispure : 'tv_pure = Obj.magic ispure in
15553 let ar : 'tv_arity = Obj.magic ar in
15554 let _startpos = _startpos_ar_ in
15555 let _endpos = _endpos__5_ in
15556 let _v : 'tv_metadec = let kindfn =
15557
15558 # 353 "parser_cocci_menhir.mly"
15559 ( (fun arity name pure check_meta constraints ->
15560 let tok = check_meta(Ast.MetaDeclarerDecl(arity,name)) in
15561 !Data.add_declarer_meta name constraints pure; tok) )
15562 # 15563 "parser_cocci_menhir.ml"
15563
15564 in
15565
15566 # 257 "parser_cocci_menhir.mly"
15567 ( P.create_metadec_ne ar ispure kindfn ids )
15568 # 15569 "parser_cocci_menhir.ml"
15569 in
15570 _menhir_env.MenhirLib.EngineTypes.stack <- {
15571 MenhirLib.EngineTypes.state = _menhir_s;
15572 MenhirLib.EngineTypes.semv = Obj.repr _v;
15573 MenhirLib.EngineTypes.startp = _startpos;
15574 MenhirLib.EngineTypes.endp = _endpos;
15575 MenhirLib.EngineTypes.next = _menhir_stack;
15576 });
15577 (fun _menhir_env ->
15578 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15579 let {
15580 MenhirLib.EngineTypes.startp = _startpos__5_;
15581 MenhirLib.EngineTypes.endp = _endpos__5_;
15582 MenhirLib.EngineTypes.next = {
15583 MenhirLib.EngineTypes.semv = ids;
15584 MenhirLib.EngineTypes.startp = _startpos_ids_;
15585 MenhirLib.EngineTypes.endp = _endpos_ids_;
15586 MenhirLib.EngineTypes.next = {
15587 MenhirLib.EngineTypes.startp = _startpos__3_;
15588 MenhirLib.EngineTypes.endp = _endpos__3_;
15589 MenhirLib.EngineTypes.next = {
15590 MenhirLib.EngineTypes.semv = ispure;
15591 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15592 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15593 MenhirLib.EngineTypes.next = {
15594 MenhirLib.EngineTypes.state = _menhir_s;
15595 MenhirLib.EngineTypes.semv = ar;
15596 MenhirLib.EngineTypes.startp = _startpos_ar_;
15597 MenhirLib.EngineTypes.endp = _endpos_ar_;
15598 MenhirLib.EngineTypes.next = _menhir_stack;
15599 };
15600 };
15601 };
15602 };
15603 } = _menhir_stack in
15604 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
15605 let ispure : 'tv_pure = Obj.magic ispure in
15606 let ar : 'tv_arity = Obj.magic ar in
15607 let _startpos = _startpos_ar_ in
15608 let _endpos = _endpos__5_ in
15609 let _v : 'tv_metadec = let kindfn =
15610
15611 # 357 "parser_cocci_menhir.mly"
15612 ( (fun arity name pure check_meta constraints ->
15613 let tok = check_meta(Ast.MetaIteratorDecl(arity,name)) in
15614 !Data.add_iterator_meta name constraints pure; tok) )
15615 # 15616 "parser_cocci_menhir.ml"
15616
15617 in
15618
15619 # 257 "parser_cocci_menhir.mly"
15620 ( P.create_metadec_ne ar ispure kindfn ids )
15621 # 15622 "parser_cocci_menhir.ml"
15622 in
15623 _menhir_env.MenhirLib.EngineTypes.stack <- {
15624 MenhirLib.EngineTypes.state = _menhir_s;
15625 MenhirLib.EngineTypes.semv = Obj.repr _v;
15626 MenhirLib.EngineTypes.startp = _startpos;
15627 MenhirLib.EngineTypes.endp = _endpos;
15628 MenhirLib.EngineTypes.next = _menhir_stack;
15629 });
15630 (fun _menhir_env ->
15631 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15632 let {
15633 MenhirLib.EngineTypes.startp = _startpos__5_;
15634 MenhirLib.EngineTypes.endp = _endpos__5_;
15635 MenhirLib.EngineTypes.next = {
15636 MenhirLib.EngineTypes.semv = ids;
15637 MenhirLib.EngineTypes.startp = _startpos_ids_;
15638 MenhirLib.EngineTypes.endp = _endpos_ids_;
15639 MenhirLib.EngineTypes.next = {
15640 MenhirLib.EngineTypes.startp = _startpos__3_;
15641 MenhirLib.EngineTypes.endp = _endpos__3_;
15642 MenhirLib.EngineTypes.next = {
15643 MenhirLib.EngineTypes.semv = ispure;
15644 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15645 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15646 MenhirLib.EngineTypes.next = {
15647 MenhirLib.EngineTypes.state = _menhir_s;
15648 MenhirLib.EngineTypes.semv = ar;
15649 MenhirLib.EngineTypes.startp = _startpos_ar_;
15650 MenhirLib.EngineTypes.endp = _endpos_ar_;
15651 MenhirLib.EngineTypes.next = _menhir_stack;
15652 };
15653 };
15654 };
15655 };
15656 } = _menhir_stack in
15657 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
15658 let ispure : 'tv_pure = Obj.magic ispure in
15659 let ar : 'tv_arity = Obj.magic ar in
15660 let _startpos = _startpos_ar_ in
15661 let _endpos = _endpos__5_ in
15662 let _v : 'tv_metadec = let kindfn =
15663
15664 # 363 "parser_cocci_menhir.mly"
15665 ( (fun arity name pure check_meta constraints ->
15666 let tok = check_meta(Ast.MetaErrDecl(arity,name)) in
15667 !Data.add_err_meta name constraints pure; tok) )
15668 # 15669 "parser_cocci_menhir.ml"
15669
15670 in
15671
15672 # 261 "parser_cocci_menhir.mly"
15673 ( P.create_metadec_ne ar ispure kindfn ids )
15674 # 15675 "parser_cocci_menhir.ml"
15675 in
15676 _menhir_env.MenhirLib.EngineTypes.stack <- {
15677 MenhirLib.EngineTypes.state = _menhir_s;
15678 MenhirLib.EngineTypes.semv = Obj.repr _v;
15679 MenhirLib.EngineTypes.startp = _startpos;
15680 MenhirLib.EngineTypes.endp = _endpos;
15681 MenhirLib.EngineTypes.next = _menhir_stack;
15682 });
15683 (fun _menhir_env ->
15684 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15685 let {
15686 MenhirLib.EngineTypes.startp = _startpos__6_;
15687 MenhirLib.EngineTypes.endp = _endpos__6_;
15688 MenhirLib.EngineTypes.next = {
15689 MenhirLib.EngineTypes.semv = ids;
15690 MenhirLib.EngineTypes.startp = _startpos_ids_;
15691 MenhirLib.EngineTypes.endp = _endpos_ids_;
15692 MenhirLib.EngineTypes.next = {
15693 MenhirLib.EngineTypes.startp = _startpos__4_;
15694 MenhirLib.EngineTypes.endp = _endpos__4_;
15695 MenhirLib.EngineTypes.next = {
15696 MenhirLib.EngineTypes.semv = l0;
15697 MenhirLib.EngineTypes.startp = _startpos_l0_;
15698 MenhirLib.EngineTypes.endp = _endpos_l0_;
15699 MenhirLib.EngineTypes.next = {
15700 MenhirLib.EngineTypes.semv = ispure;
15701 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15702 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15703 MenhirLib.EngineTypes.next = {
15704 MenhirLib.EngineTypes.state = _menhir_s;
15705 MenhirLib.EngineTypes.semv = ar;
15706 MenhirLib.EngineTypes.startp = _startpos_ar_;
15707 MenhirLib.EngineTypes.endp = _endpos_ar_;
15708 MenhirLib.EngineTypes.next = _menhir_stack;
15709 };
15710 };
15711 };
15712 };
15713 };
15714 } = _menhir_stack in
15715 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
15716 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
15717 let ispure : 'tv_pure = Obj.magic ispure in
15718 let ar : 'tv_arity = Obj.magic ar in
15719 let _startpos = _startpos_ar_ in
15720 let _endpos = _endpos__6_ in
15721 let _v : 'tv_metadec = let kindfn =
15722 let l = l0 in
15723 let ty =
15724
15725 # 39 "standard.mly"
15726 ( None )
15727 # 15728 "parser_cocci_menhir.ml"
15728
15729 in
15730
15731 # 367 "parser_cocci_menhir.mly"
15732 ( (fun arity name pure check_meta constraints ->
15733 match l with
15734 None ->
15735 !Data.add_idexp_meta ty name constraints pure;
15736 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
15737 | Some _ ->
15738 !Data.add_local_idexp_meta ty name constraints pure;
15739 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
15740 # 15741 "parser_cocci_menhir.ml"
15741
15742 in
15743
15744 # 261 "parser_cocci_menhir.mly"
15745 ( P.create_metadec_ne ar ispure kindfn ids )
15746 # 15747 "parser_cocci_menhir.ml"
15747 in
15748 _menhir_env.MenhirLib.EngineTypes.stack <- {
15749 MenhirLib.EngineTypes.state = _menhir_s;
15750 MenhirLib.EngineTypes.semv = Obj.repr _v;
15751 MenhirLib.EngineTypes.startp = _startpos;
15752 MenhirLib.EngineTypes.endp = _endpos;
15753 MenhirLib.EngineTypes.next = _menhir_stack;
15754 });
15755 (fun _menhir_env ->
15756 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15757 let {
15758 MenhirLib.EngineTypes.startp = _startpos__7_;
15759 MenhirLib.EngineTypes.endp = _endpos__7_;
15760 MenhirLib.EngineTypes.next = {
15761 MenhirLib.EngineTypes.semv = ids;
15762 MenhirLib.EngineTypes.startp = _startpos_ids_;
15763 MenhirLib.EngineTypes.endp = _endpos_ids_;
15764 MenhirLib.EngineTypes.next = {
15765 MenhirLib.EngineTypes.semv = x00;
15766 MenhirLib.EngineTypes.startp = _startpos_x00_;
15767 MenhirLib.EngineTypes.endp = _endpos_x00_;
15768 MenhirLib.EngineTypes.next = {
15769 MenhirLib.EngineTypes.startp = _startpos__4_;
15770 MenhirLib.EngineTypes.endp = _endpos__4_;
15771 MenhirLib.EngineTypes.next = {
15772 MenhirLib.EngineTypes.semv = l0;
15773 MenhirLib.EngineTypes.startp = _startpos_l0_;
15774 MenhirLib.EngineTypes.endp = _endpos_l0_;
15775 MenhirLib.EngineTypes.next = {
15776 MenhirLib.EngineTypes.semv = ispure;
15777 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15778 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15779 MenhirLib.EngineTypes.next = {
15780 MenhirLib.EngineTypes.state = _menhir_s;
15781 MenhirLib.EngineTypes.semv = ar;
15782 MenhirLib.EngineTypes.startp = _startpos_ar_;
15783 MenhirLib.EngineTypes.endp = _endpos_ar_;
15784 MenhirLib.EngineTypes.next = _menhir_stack;
15785 };
15786 };
15787 };
15788 };
15789 };
15790 };
15791 } = _menhir_stack in
15792 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
15793 let x00 : 'tv_meta_exp_type = Obj.magic x00 in
15794 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
15795 let ispure : 'tv_pure = Obj.magic ispure in
15796 let ar : 'tv_arity = Obj.magic ar in
15797 let _startpos = _startpos_ar_ in
15798 let _endpos = _endpos__7_ in
15799 let _v : 'tv_metadec = let kindfn =
15800 let x0 = x00 in
15801 let l = l0 in
15802 let ty =
15803 let x = x0 in
15804
15805 # 41 "standard.mly"
15806 ( Some x )
15807 # 15808 "parser_cocci_menhir.ml"
15808
15809 in
15810
15811 # 367 "parser_cocci_menhir.mly"
15812 ( (fun arity name pure check_meta constraints ->
15813 match l with
15814 None ->
15815 !Data.add_idexp_meta ty name constraints pure;
15816 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
15817 | Some _ ->
15818 !Data.add_local_idexp_meta ty name constraints pure;
15819 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
15820 # 15821 "parser_cocci_menhir.ml"
15821
15822 in
15823
15824 # 261 "parser_cocci_menhir.mly"
15825 ( P.create_metadec_ne ar ispure kindfn ids )
15826 # 15827 "parser_cocci_menhir.ml"
15827 in
15828 _menhir_env.MenhirLib.EngineTypes.stack <- {
15829 MenhirLib.EngineTypes.state = _menhir_s;
15830 MenhirLib.EngineTypes.semv = Obj.repr _v;
15831 MenhirLib.EngineTypes.startp = _startpos;
15832 MenhirLib.EngineTypes.endp = _endpos;
15833 MenhirLib.EngineTypes.next = _menhir_stack;
15834 });
15835 (fun _menhir_env ->
15836 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15837 let {
15838 MenhirLib.EngineTypes.startp = _startpos__7_;
15839 MenhirLib.EngineTypes.endp = _endpos__7_;
15840 MenhirLib.EngineTypes.next = {
15841 MenhirLib.EngineTypes.semv = ids;
15842 MenhirLib.EngineTypes.startp = _startpos_ids_;
15843 MenhirLib.EngineTypes.endp = _endpos_ids_;
15844 MenhirLib.EngineTypes.next = {
15845 MenhirLib.EngineTypes.semv = m0;
15846 MenhirLib.EngineTypes.startp = _startpos_m0_;
15847 MenhirLib.EngineTypes.endp = _endpos_m0_;
15848 MenhirLib.EngineTypes.next = {
15849 MenhirLib.EngineTypes.startp = _startpos__4_;
15850 MenhirLib.EngineTypes.endp = _endpos__4_;
15851 MenhirLib.EngineTypes.next = {
15852 MenhirLib.EngineTypes.semv = l0;
15853 MenhirLib.EngineTypes.startp = _startpos_l0_;
15854 MenhirLib.EngineTypes.endp = _endpos_l0_;
15855 MenhirLib.EngineTypes.next = {
15856 MenhirLib.EngineTypes.semv = ispure;
15857 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15858 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15859 MenhirLib.EngineTypes.next = {
15860 MenhirLib.EngineTypes.state = _menhir_s;
15861 MenhirLib.EngineTypes.semv = ar;
15862 MenhirLib.EngineTypes.startp = _startpos_ar_;
15863 MenhirLib.EngineTypes.endp = _endpos_ar_;
15864 MenhirLib.EngineTypes.next = _menhir_stack;
15865 };
15866 };
15867 };
15868 };
15869 };
15870 };
15871 } = _menhir_stack in
15872 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
15873 let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
15874 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
15875 let ispure : 'tv_pure = Obj.magic ispure in
15876 let ar : 'tv_arity = Obj.magic ar in
15877 let _startpos = _startpos_ar_ in
15878 let _endpos = _endpos__7_ in
15879 let _v : 'tv_metadec = let kindfn =
15880 let m = m0 in
15881 let l = l0 in
15882
15883 # 376 "parser_cocci_menhir.mly"
15884 ( (fun arity name pure check_meta constraints ->
15885 let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
15886 match l with
15887 None ->
15888 !Data.add_idexp_meta ty name constraints pure;
15889 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
15890 | Some _ ->
15891 !Data.add_local_idexp_meta ty name constraints pure;
15892 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
15893 # 15894 "parser_cocci_menhir.ml"
15894
15895 in
15896
15897 # 261 "parser_cocci_menhir.mly"
15898 ( P.create_metadec_ne ar ispure kindfn ids )
15899 # 15900 "parser_cocci_menhir.ml"
15900 in
15901 _menhir_env.MenhirLib.EngineTypes.stack <- {
15902 MenhirLib.EngineTypes.state = _menhir_s;
15903 MenhirLib.EngineTypes.semv = Obj.repr _v;
15904 MenhirLib.EngineTypes.startp = _startpos;
15905 MenhirLib.EngineTypes.endp = _endpos;
15906 MenhirLib.EngineTypes.next = _menhir_stack;
15907 });
15908 (fun _menhir_env ->
15909 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15910 let {
15911 MenhirLib.EngineTypes.startp = _startpos__6_;
15912 MenhirLib.EngineTypes.endp = _endpos__6_;
15913 MenhirLib.EngineTypes.next = {
15914 MenhirLib.EngineTypes.semv = ids;
15915 MenhirLib.EngineTypes.startp = _startpos_ids_;
15916 MenhirLib.EngineTypes.endp = _endpos_ids_;
15917 MenhirLib.EngineTypes.next = {
15918 MenhirLib.EngineTypes.semv = m0;
15919 MenhirLib.EngineTypes.startp = _startpos_m0_;
15920 MenhirLib.EngineTypes.endp = _endpos_m0_;
15921 MenhirLib.EngineTypes.next = {
15922 MenhirLib.EngineTypes.startp = _startpos__3_;
15923 MenhirLib.EngineTypes.endp = _endpos__3_;
15924 MenhirLib.EngineTypes.next = {
15925 MenhirLib.EngineTypes.semv = ispure;
15926 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15927 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15928 MenhirLib.EngineTypes.next = {
15929 MenhirLib.EngineTypes.state = _menhir_s;
15930 MenhirLib.EngineTypes.semv = ar;
15931 MenhirLib.EngineTypes.startp = _startpos_ar_;
15932 MenhirLib.EngineTypes.endp = _endpos_ar_;
15933 MenhirLib.EngineTypes.next = _menhir_stack;
15934 };
15935 };
15936 };
15937 };
15938 };
15939 } = _menhir_stack in
15940 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
15941 let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
15942 let ispure : 'tv_pure = Obj.magic ispure in
15943 let ar : 'tv_arity = Obj.magic ar in
15944 let _startpos = _startpos_ar_ in
15945 let _endpos = _endpos__6_ in
15946 let _v : 'tv_metadec = let kindfn =
15947 let m = m0 in
15948
15949 # 386 "parser_cocci_menhir.mly"
15950 ( (fun arity name pure check_meta constraints ->
15951 let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
15952 let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
15953 !Data.add_exp_meta ty name constraints pure; tok) )
15954 # 15955 "parser_cocci_menhir.ml"
15955
15956 in
15957
15958 # 261 "parser_cocci_menhir.mly"
15959 ( P.create_metadec_ne ar ispure kindfn ids )
15960 # 15961 "parser_cocci_menhir.ml"
15961 in
15962 _menhir_env.MenhirLib.EngineTypes.stack <- {
15963 MenhirLib.EngineTypes.state = _menhir_s;
15964 MenhirLib.EngineTypes.semv = Obj.repr _v;
15965 MenhirLib.EngineTypes.startp = _startpos;
15966 MenhirLib.EngineTypes.endp = _endpos;
15967 MenhirLib.EngineTypes.next = _menhir_stack;
15968 });
15969 (fun _menhir_env ->
15970 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15971 let {
15972 MenhirLib.EngineTypes.startp = _startpos__7_;
15973 MenhirLib.EngineTypes.endp = _endpos__7_;
15974 MenhirLib.EngineTypes.next = {
15975 MenhirLib.EngineTypes.semv = ids;
15976 MenhirLib.EngineTypes.startp = _startpos_ids_;
15977 MenhirLib.EngineTypes.endp = _endpos_ids_;
15978 MenhirLib.EngineTypes.next = {
15979 MenhirLib.EngineTypes.startp = _startpos__5_;
15980 MenhirLib.EngineTypes.endp = _endpos__5_;
15981 MenhirLib.EngineTypes.next = {
15982 MenhirLib.EngineTypes.startp = _startpos__4_;
15983 MenhirLib.EngineTypes.endp = _endpos__4_;
15984 MenhirLib.EngineTypes.next = {
15985 MenhirLib.EngineTypes.semv = vl0;
15986 MenhirLib.EngineTypes.startp = _startpos_vl0_;
15987 MenhirLib.EngineTypes.endp = _endpos_vl0_;
15988 MenhirLib.EngineTypes.next = {
15989 MenhirLib.EngineTypes.semv = ispure;
15990 MenhirLib.EngineTypes.startp = _startpos_ispure_;
15991 MenhirLib.EngineTypes.endp = _endpos_ispure_;
15992 MenhirLib.EngineTypes.next = {
15993 MenhirLib.EngineTypes.state = _menhir_s;
15994 MenhirLib.EngineTypes.semv = ar;
15995 MenhirLib.EngineTypes.startp = _startpos_ar_;
15996 MenhirLib.EngineTypes.endp = _endpos_ar_;
15997 MenhirLib.EngineTypes.next = _menhir_stack;
15998 };
15999 };
16000 };
16001 };
16002 };
16003 };
16004 } = _menhir_stack in
16005 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
16006 let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
16007 let ispure : 'tv_pure = Obj.magic ispure in
16008 let ar : 'tv_arity = Obj.magic ar in
16009 let _startpos = _startpos_ar_ in
16010 let _endpos = _endpos__7_ in
16011 let _v : 'tv_metadec = let kindfn =
16012 let vl = vl0 in
16013
16014 # 391 "parser_cocci_menhir.mly"
16015 ( (fun arity name pure check_meta constraints ->
16016 let ty = Some (List.map (function x -> Type_cocci.Array x) vl) in
16017 let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
16018 !Data.add_exp_meta ty name constraints pure; tok) )
16019 # 16020 "parser_cocci_menhir.ml"
16020
16021 in
16022
16023 # 261 "parser_cocci_menhir.mly"
16024 ( P.create_metadec_ne ar ispure kindfn ids )
16025 # 16026 "parser_cocci_menhir.ml"
16026 in
16027 _menhir_env.MenhirLib.EngineTypes.stack <- {
16028 MenhirLib.EngineTypes.state = _menhir_s;
16029 MenhirLib.EngineTypes.semv = Obj.repr _v;
16030 MenhirLib.EngineTypes.startp = _startpos;
16031 MenhirLib.EngineTypes.endp = _endpos;
16032 MenhirLib.EngineTypes.next = _menhir_stack;
16033 });
16034 (fun _menhir_env ->
16035 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16036 let {
16037 MenhirLib.EngineTypes.startp = _startpos__5_;
16038 MenhirLib.EngineTypes.endp = _endpos__5_;
16039 MenhirLib.EngineTypes.next = {
16040 MenhirLib.EngineTypes.semv = ids;
16041 MenhirLib.EngineTypes.startp = _startpos_ids_;
16042 MenhirLib.EngineTypes.endp = _endpos_ids_;
16043 MenhirLib.EngineTypes.next = {
16044 MenhirLib.EngineTypes.startp = _startpos__3_;
16045 MenhirLib.EngineTypes.endp = _endpos__3_;
16046 MenhirLib.EngineTypes.next = {
16047 MenhirLib.EngineTypes.semv = ispure;
16048 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16049 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16050 MenhirLib.EngineTypes.next = {
16051 MenhirLib.EngineTypes.state = _menhir_s;
16052 MenhirLib.EngineTypes.semv = ar;
16053 MenhirLib.EngineTypes.startp = _startpos_ar_;
16054 MenhirLib.EngineTypes.endp = _endpos_ar_;
16055 MenhirLib.EngineTypes.next = _menhir_stack;
16056 };
16057 };
16058 };
16059 };
16060 } = _menhir_stack in
16061 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
16062 let ispure : 'tv_pure = Obj.magic ispure in
16063 let ar : 'tv_arity = Obj.magic ar in
16064 let _startpos = _startpos_ar_ in
16065 let _endpos = _endpos__5_ in
16066 let _v : 'tv_metadec = let kindfn =
16067 let ty =
16068
16069 # 39 "standard.mly"
16070 ( None )
16071 # 16072 "parser_cocci_menhir.ml"
16072
16073 in
16074
16075 # 396 "parser_cocci_menhir.mly"
16076 ( (fun arity name pure check_meta constraints ->
16077 let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
16078 !Data.add_const_meta ty name constraints pure; tok) )
16079 # 16080 "parser_cocci_menhir.ml"
16080
16081 in
16082
16083 # 261 "parser_cocci_menhir.mly"
16084 ( P.create_metadec_ne ar ispure kindfn ids )
16085 # 16086 "parser_cocci_menhir.ml"
16086 in
16087 _menhir_env.MenhirLib.EngineTypes.stack <- {
16088 MenhirLib.EngineTypes.state = _menhir_s;
16089 MenhirLib.EngineTypes.semv = Obj.repr _v;
16090 MenhirLib.EngineTypes.startp = _startpos;
16091 MenhirLib.EngineTypes.endp = _endpos;
16092 MenhirLib.EngineTypes.next = _menhir_stack;
16093 });
16094 (fun _menhir_env ->
16095 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16096 let {
16097 MenhirLib.EngineTypes.startp = _startpos__6_;
16098 MenhirLib.EngineTypes.endp = _endpos__6_;
16099 MenhirLib.EngineTypes.next = {
16100 MenhirLib.EngineTypes.semv = ids;
16101 MenhirLib.EngineTypes.startp = _startpos_ids_;
16102 MenhirLib.EngineTypes.endp = _endpos_ids_;
16103 MenhirLib.EngineTypes.next = {
16104 MenhirLib.EngineTypes.semv = x00;
16105 MenhirLib.EngineTypes.startp = _startpos_x00_;
16106 MenhirLib.EngineTypes.endp = _endpos_x00_;
16107 MenhirLib.EngineTypes.next = {
16108 MenhirLib.EngineTypes.startp = _startpos__3_;
16109 MenhirLib.EngineTypes.endp = _endpos__3_;
16110 MenhirLib.EngineTypes.next = {
16111 MenhirLib.EngineTypes.semv = ispure;
16112 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16113 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16114 MenhirLib.EngineTypes.next = {
16115 MenhirLib.EngineTypes.state = _menhir_s;
16116 MenhirLib.EngineTypes.semv = ar;
16117 MenhirLib.EngineTypes.startp = _startpos_ar_;
16118 MenhirLib.EngineTypes.endp = _endpos_ar_;
16119 MenhirLib.EngineTypes.next = _menhir_stack;
16120 };
16121 };
16122 };
16123 };
16124 };
16125 } = _menhir_stack in
16126 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
16127 let x00 : 'tv_meta_exp_type = Obj.magic x00 in
16128 let ispure : 'tv_pure = Obj.magic ispure in
16129 let ar : 'tv_arity = Obj.magic ar in
16130 let _startpos = _startpos_ar_ in
16131 let _endpos = _endpos__6_ in
16132 let _v : 'tv_metadec = let kindfn =
16133 let x0 = x00 in
16134 let ty =
16135 let x = x0 in
16136
16137 # 41 "standard.mly"
16138 ( Some x )
16139 # 16140 "parser_cocci_menhir.ml"
16140
16141 in
16142
16143 # 396 "parser_cocci_menhir.mly"
16144 ( (fun arity name pure check_meta constraints ->
16145 let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
16146 !Data.add_const_meta ty name constraints pure; tok) )
16147 # 16148 "parser_cocci_menhir.ml"
16148
16149 in
16150
16151 # 261 "parser_cocci_menhir.mly"
16152 ( P.create_metadec_ne ar ispure kindfn ids )
16153 # 16154 "parser_cocci_menhir.ml"
16154 in
16155 _menhir_env.MenhirLib.EngineTypes.stack <- {
16156 MenhirLib.EngineTypes.state = _menhir_s;
16157 MenhirLib.EngineTypes.semv = Obj.repr _v;
16158 MenhirLib.EngineTypes.startp = _startpos;
16159 MenhirLib.EngineTypes.endp = _endpos;
16160 MenhirLib.EngineTypes.next = _menhir_stack;
16161 });
16162 (fun _menhir_env ->
16163 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16164 let {
16165 MenhirLib.EngineTypes.startp = _startpos__5_;
16166 MenhirLib.EngineTypes.endp = _endpos__5_;
16167 MenhirLib.EngineTypes.next = {
16168 MenhirLib.EngineTypes.semv = ids;
16169 MenhirLib.EngineTypes.startp = _startpos_ids_;
16170 MenhirLib.EngineTypes.endp = _endpos_ids_;
16171 MenhirLib.EngineTypes.next = {
16172 MenhirLib.EngineTypes.startp = _startpos__3_;
16173 MenhirLib.EngineTypes.endp = _endpos__3_;
16174 MenhirLib.EngineTypes.next = {
16175 MenhirLib.EngineTypes.semv = ispure;
16176 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16177 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16178 MenhirLib.EngineTypes.next = {
16179 MenhirLib.EngineTypes.state = _menhir_s;
16180 MenhirLib.EngineTypes.semv = ar;
16181 MenhirLib.EngineTypes.startp = _startpos_ar_;
16182 MenhirLib.EngineTypes.endp = _endpos_ar_;
16183 MenhirLib.EngineTypes.next = _menhir_stack;
16184 };
16185 };
16186 };
16187 };
16188 } = _menhir_stack in
16189 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic ids in
16190 let ispure : 'tv_pure = Obj.magic ispure in
16191 let ar : 'tv_arity = Obj.magic ar in
16192 let _startpos = _startpos_ar_ in
16193 let _endpos = _endpos__5_ in
16194 let _v : 'tv_metadec = let kindfn =
16195
16196 # 402 "parser_cocci_menhir.mly"
16197 ( (fun arity name pure check_meta constraints ->
16198 let tok = check_meta(Ast.MetaExpDecl(arity,name,None)) in
16199 !Data.add_exp_meta None name constraints pure; tok) )
16200 # 16201 "parser_cocci_menhir.ml"
16201
16202 in
16203
16204 # 265 "parser_cocci_menhir.mly"
16205 ( P.create_metadec_ne ar ispure kindfn ids )
16206 # 16207 "parser_cocci_menhir.ml"
16207 in
16208 _menhir_env.MenhirLib.EngineTypes.stack <- {
16209 MenhirLib.EngineTypes.state = _menhir_s;
16210 MenhirLib.EngineTypes.semv = Obj.repr _v;
16211 MenhirLib.EngineTypes.startp = _startpos;
16212 MenhirLib.EngineTypes.endp = _endpos;
16213 MenhirLib.EngineTypes.next = _menhir_stack;
16214 });
16215 (fun _menhir_env ->
16216 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16217 let {
16218 MenhirLib.EngineTypes.startp = _startpos__5_;
16219 MenhirLib.EngineTypes.endp = _endpos__5_;
16220 MenhirLib.EngineTypes.next = {
16221 MenhirLib.EngineTypes.semv = ids;
16222 MenhirLib.EngineTypes.startp = _startpos_ids_;
16223 MenhirLib.EngineTypes.endp = _endpos_ids_;
16224 MenhirLib.EngineTypes.next = {
16225 MenhirLib.EngineTypes.semv = vl0;
16226 MenhirLib.EngineTypes.startp = _startpos_vl0_;
16227 MenhirLib.EngineTypes.endp = _endpos_vl0_;
16228 MenhirLib.EngineTypes.next = {
16229 MenhirLib.EngineTypes.semv = ispure;
16230 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16231 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16232 MenhirLib.EngineTypes.next = {
16233 MenhirLib.EngineTypes.state = _menhir_s;
16234 MenhirLib.EngineTypes.semv = ar;
16235 MenhirLib.EngineTypes.startp = _startpos_ar_;
16236 MenhirLib.EngineTypes.endp = _endpos_ar_;
16237 MenhirLib.EngineTypes.next = _menhir_stack;
16238 };
16239 };
16240 };
16241 };
16242 } = _menhir_stack in
16243 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic ids in
16244 let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
16245 let ispure : 'tv_pure = Obj.magic ispure in
16246 let ar : 'tv_arity = Obj.magic ar in
16247 let _startpos = _startpos_ar_ in
16248 let _endpos = _endpos__5_ in
16249 let _v : 'tv_metadec = let kindfn =
16250 let vl = vl0 in
16251
16252 # 406 "parser_cocci_menhir.mly"
16253 ( (fun arity name pure check_meta constraints ->
16254 let ty = Some vl in
16255 List.iter
16256 (function c ->
16257 match Ast0.unwrap c with
16258 Ast0.Constant(_) ->
16259 if not
16260 (List.exists
16261 (function
16262 Type_cocci.BaseType(Type_cocci.IntType,_) -> true
16263 | Type_cocci.BaseType(Type_cocci.ShortType,_) -> true
16264 | Type_cocci.BaseType(Type_cocci.LongType,_) -> true
16265 | _ -> false)
16266 vl)
16267 then failwith "metavariable with int constraint must be an int"
16268 | _ -> ())
16269 constraints;
16270 let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
16271 !Data.add_exp_meta ty name constraints pure; tok) )
16272 # 16273 "parser_cocci_menhir.ml"
16273
16274 in
16275
16276 # 265 "parser_cocci_menhir.mly"
16277 ( P.create_metadec_ne ar ispure kindfn ids )
16278 # 16279 "parser_cocci_menhir.ml"
16279 in
16280 _menhir_env.MenhirLib.EngineTypes.stack <- {
16281 MenhirLib.EngineTypes.state = _menhir_s;
16282 MenhirLib.EngineTypes.semv = Obj.repr _v;
16283 MenhirLib.EngineTypes.startp = _startpos;
16284 MenhirLib.EngineTypes.endp = _endpos;
16285 MenhirLib.EngineTypes.next = _menhir_stack;
16286 });
16287 (fun _menhir_env ->
16288 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16289 let {
16290 MenhirLib.EngineTypes.startp = _startpos__5_;
16291 MenhirLib.EngineTypes.endp = _endpos__5_;
16292 MenhirLib.EngineTypes.next = {
16293 MenhirLib.EngineTypes.semv = ids;
16294 MenhirLib.EngineTypes.startp = _startpos_ids_;
16295 MenhirLib.EngineTypes.endp = _endpos_ids_;
16296 MenhirLib.EngineTypes.next = {
16297 MenhirLib.EngineTypes.semv = a;
16298 MenhirLib.EngineTypes.startp = _startpos_a_;
16299 MenhirLib.EngineTypes.endp = _endpos_a_;
16300 MenhirLib.EngineTypes.next = {
16301 MenhirLib.EngineTypes.startp = _startpos__2_;
16302 MenhirLib.EngineTypes.endp = _endpos__2_;
16303 MenhirLib.EngineTypes.next = {
16304 MenhirLib.EngineTypes.state = _menhir_s;
16305 MenhirLib.EngineTypes.semv = ar;
16306 MenhirLib.EngineTypes.startp = _startpos_ar_;
16307 MenhirLib.EngineTypes.endp = _endpos_ar_;
16308 MenhirLib.EngineTypes.next = _menhir_stack;
16309 };
16310 };
16311 };
16312 };
16313 } = _menhir_stack in
16314 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic ids in
16315 let a : 'tv_option_TPosAny_ = Obj.magic a in
16316 let ar : 'tv_arity = Obj.magic ar in
16317 let _startpos = _startpos_ar_ in
16318 let _endpos = _endpos__5_ in
16319 let _v : 'tv_metadec =
16320 # 268 "parser_cocci_menhir.mly"
16321 ( let kindfn arity name pure check_meta constraints =
16322 let tok = check_meta(Ast.MetaPosDecl(arity,name)) in
16323 let any = match a with None -> Ast.PER | Some _ -> Ast.ALL in
16324 !Data.add_pos_meta name constraints any; tok in
16325 P.create_metadec_ne ar false kindfn ids )
16326 # 16327 "parser_cocci_menhir.ml"
16327 in
16328 _menhir_env.MenhirLib.EngineTypes.stack <- {
16329 MenhirLib.EngineTypes.state = _menhir_s;
16330 MenhirLib.EngineTypes.semv = Obj.repr _v;
16331 MenhirLib.EngineTypes.startp = _startpos;
16332 MenhirLib.EngineTypes.endp = _endpos;
16333 MenhirLib.EngineTypes.next = _menhir_stack;
16334 });
16335 (fun _menhir_env ->
16336 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16337 let {
16338 MenhirLib.EngineTypes.startp = _startpos__9_;
16339 MenhirLib.EngineTypes.endp = _endpos__9_;
16340 MenhirLib.EngineTypes.next = {
16341 MenhirLib.EngineTypes.semv = ids;
16342 MenhirLib.EngineTypes.startp = _startpos_ids_;
16343 MenhirLib.EngineTypes.endp = _endpos_ids_;
16344 MenhirLib.EngineTypes.next = {
16345 MenhirLib.EngineTypes.startp = _startpos__7_;
16346 MenhirLib.EngineTypes.endp = _endpos__7_;
16347 MenhirLib.EngineTypes.next = {
16348 MenhirLib.EngineTypes.semv = id;
16349 MenhirLib.EngineTypes.startp = _startpos_id_;
16350 MenhirLib.EngineTypes.endp = _endpos_id_;
16351 MenhirLib.EngineTypes.next = {
16352 MenhirLib.EngineTypes.startp = _startpos__5_;
16353 MenhirLib.EngineTypes.endp = _endpos__5_;
16354 MenhirLib.EngineTypes.next = {
16355 MenhirLib.EngineTypes.startp = _startpos__4_;
16356 MenhirLib.EngineTypes.endp = _endpos__4_;
16357 MenhirLib.EngineTypes.next = {
16358 MenhirLib.EngineTypes.startp = _startpos__3_;
16359 MenhirLib.EngineTypes.endp = _endpos__3_;
16360 MenhirLib.EngineTypes.next = {
16361 MenhirLib.EngineTypes.semv = ispure;
16362 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16363 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16364 MenhirLib.EngineTypes.next = {
16365 MenhirLib.EngineTypes.state = _menhir_s;
16366 MenhirLib.EngineTypes.semv = ar;
16367 MenhirLib.EngineTypes.startp = _startpos_ar_;
16368 MenhirLib.EngineTypes.endp = _endpos_ar_;
16369 MenhirLib.EngineTypes.next = _menhir_stack;
16370 };
16371 };
16372 };
16373 };
16374 };
16375 };
16376 };
16377 };
16378 } = _menhir_stack in
16379 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16380 let id : 'tv_pure_ident_or_meta_ident = Obj.magic id in
16381 let ispure : 'tv_pure = Obj.magic ispure in
16382 let ar : 'tv_arity = Obj.magic ar in
16383 let _startpos = _startpos_ar_ in
16384 let _endpos = _endpos__9_ in
16385 let _v : 'tv_metadec =
16386 # 276 "parser_cocci_menhir.mly"
16387 ( P.create_len_metadec ar ispure
16388 (fun lenname arity name pure check_meta ->
16389 let tok =
16390 check_meta(Ast.MetaParamListDecl(arity,name,Some lenname)) in
16391 !Data.add_paramlist_meta name (Some lenname) pure; tok)
16392 id ids )
16393 # 16394 "parser_cocci_menhir.ml"
16394 in
16395 _menhir_env.MenhirLib.EngineTypes.stack <- {
16396 MenhirLib.EngineTypes.state = _menhir_s;
16397 MenhirLib.EngineTypes.semv = Obj.repr _v;
16398 MenhirLib.EngineTypes.startp = _startpos;
16399 MenhirLib.EngineTypes.endp = _endpos;
16400 MenhirLib.EngineTypes.next = _menhir_stack;
16401 });
16402 (fun _menhir_env ->
16403 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16404 let {
16405 MenhirLib.EngineTypes.startp = _startpos__9_;
16406 MenhirLib.EngineTypes.endp = _endpos__9_;
16407 MenhirLib.EngineTypes.next = {
16408 MenhirLib.EngineTypes.semv = ids;
16409 MenhirLib.EngineTypes.startp = _startpos_ids_;
16410 MenhirLib.EngineTypes.endp = _endpos_ids_;
16411 MenhirLib.EngineTypes.next = {
16412 MenhirLib.EngineTypes.startp = _startpos__7_;
16413 MenhirLib.EngineTypes.endp = _endpos__7_;
16414 MenhirLib.EngineTypes.next = {
16415 MenhirLib.EngineTypes.semv = id;
16416 MenhirLib.EngineTypes.startp = _startpos_id_;
16417 MenhirLib.EngineTypes.endp = _endpos_id_;
16418 MenhirLib.EngineTypes.next = {
16419 MenhirLib.EngineTypes.startp = _startpos__5_;
16420 MenhirLib.EngineTypes.endp = _endpos__5_;
16421 MenhirLib.EngineTypes.next = {
16422 MenhirLib.EngineTypes.startp = _startpos__4_;
16423 MenhirLib.EngineTypes.endp = _endpos__4_;
16424 MenhirLib.EngineTypes.next = {
16425 MenhirLib.EngineTypes.startp = _startpos__3_;
16426 MenhirLib.EngineTypes.endp = _endpos__3_;
16427 MenhirLib.EngineTypes.next = {
16428 MenhirLib.EngineTypes.semv = ispure;
16429 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16430 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16431 MenhirLib.EngineTypes.next = {
16432 MenhirLib.EngineTypes.state = _menhir_s;
16433 MenhirLib.EngineTypes.semv = ar;
16434 MenhirLib.EngineTypes.startp = _startpos_ar_;
16435 MenhirLib.EngineTypes.endp = _endpos_ar_;
16436 MenhirLib.EngineTypes.next = _menhir_stack;
16437 };
16438 };
16439 };
16440 };
16441 };
16442 };
16443 };
16444 };
16445 } = _menhir_stack in
16446 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16447 let id : 'tv_pure_ident_or_meta_ident = Obj.magic id in
16448 let ispure : 'tv_pure = Obj.magic ispure in
16449 let ar : 'tv_arity = Obj.magic ar in
16450 let _startpos = _startpos_ar_ in
16451 let _endpos = _endpos__9_ in
16452 let _v : 'tv_metadec =
16453 # 285 "parser_cocci_menhir.mly"
16454 ( P.create_len_metadec ar ispure
16455 (fun lenname arity name pure check_meta ->
16456 let tok =
16457 check_meta(Ast.MetaExpListDecl(arity,name,Some lenname)) in
16458 !Data.add_explist_meta name (Some lenname) pure; tok)
16459 id ids )
16460 # 16461 "parser_cocci_menhir.ml"
16461 in
16462 _menhir_env.MenhirLib.EngineTypes.stack <- {
16463 MenhirLib.EngineTypes.state = _menhir_s;
16464 MenhirLib.EngineTypes.semv = Obj.repr _v;
16465 MenhirLib.EngineTypes.startp = _startpos;
16466 MenhirLib.EngineTypes.endp = _endpos;
16467 MenhirLib.EngineTypes.next = _menhir_stack;
16468 });
16469 (fun _menhir_env ->
16470 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16471 let {
16472 MenhirLib.EngineTypes.semv = b;
16473 MenhirLib.EngineTypes.startp = _startpos_b_;
16474 MenhirLib.EngineTypes.endp = _endpos_b_;
16475 MenhirLib.EngineTypes.next = {
16476 MenhirLib.EngineTypes.state = _menhir_s;
16477 MenhirLib.EngineTypes.semv = a;
16478 MenhirLib.EngineTypes.startp = _startpos_a_;
16479 MenhirLib.EngineTypes.endp = _endpos_a_;
16480 MenhirLib.EngineTypes.next = _menhir_stack;
16481 };
16482 } = _menhir_stack in
16483 let b : 'tv_list_mzl_ctype__ = Obj.magic b in
16484 let a : 'tv_ctype = Obj.magic a in
16485 let _startpos = _startpos_a_ in
16486 let _endpos = _endpos_b_ in
16487 let _v : 'tv_midzero_list_ctype_ctype_ =
16488 # 1692 "parser_cocci_menhir.mly"
16489 ( let (mids,code) = List.split b in (mids,(a::code)) )
16490 # 16491 "parser_cocci_menhir.ml"
16491 in
16492 _menhir_env.MenhirLib.EngineTypes.stack <- {
16493 MenhirLib.EngineTypes.state = _menhir_s;
16494 MenhirLib.EngineTypes.semv = Obj.repr _v;
16495 MenhirLib.EngineTypes.startp = _startpos;
16496 MenhirLib.EngineTypes.endp = _endpos;
16497 MenhirLib.EngineTypes.next = _menhir_stack;
16498 });
16499 (fun _menhir_env ->
16500 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16501 let {
16502 MenhirLib.EngineTypes.semv = b;
16503 MenhirLib.EngineTypes.startp = _startpos_b_;
16504 MenhirLib.EngineTypes.endp = _endpos_b_;
16505 MenhirLib.EngineTypes.next = {
16506 MenhirLib.EngineTypes.state = _menhir_s;
16507 MenhirLib.EngineTypes.semv = a;
16508 MenhirLib.EngineTypes.startp = _startpos_a_;
16509 MenhirLib.EngineTypes.endp = _endpos_a_;
16510 MenhirLib.EngineTypes.next = _menhir_stack;
16511 };
16512 } = _menhir_stack in
16513 let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
16514 let a : 'tv_eexpr = Obj.magic a in
16515 let _startpos = _startpos_a_ in
16516 let _endpos = _endpos_b_ in
16517 let _v : 'tv_midzero_list_eexpr_eexpr_ =
16518 # 1692 "parser_cocci_menhir.mly"
16519 ( let (mids,code) = List.split b in (mids,(a::code)) )
16520 # 16521 "parser_cocci_menhir.ml"
16521 in
16522 _menhir_env.MenhirLib.EngineTypes.stack <- {
16523 MenhirLib.EngineTypes.state = _menhir_s;
16524 MenhirLib.EngineTypes.semv = Obj.repr _v;
16525 MenhirLib.EngineTypes.startp = _startpos;
16526 MenhirLib.EngineTypes.endp = _endpos;
16527 MenhirLib.EngineTypes.next = _menhir_stack;
16528 });
16529 (fun _menhir_env ->
16530 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16531 let {
16532 MenhirLib.EngineTypes.semv = b;
16533 MenhirLib.EngineTypes.startp = _startpos_b_;
16534 MenhirLib.EngineTypes.endp = _endpos_b_;
16535 MenhirLib.EngineTypes.next = {
16536 MenhirLib.EngineTypes.state = _menhir_s;
16537 MenhirLib.EngineTypes.semv = a;
16538 MenhirLib.EngineTypes.startp = _startpos_a_;
16539 MenhirLib.EngineTypes.endp = _endpos_a_;
16540 MenhirLib.EngineTypes.next = _menhir_stack;
16541 };
16542 } = _menhir_stack in
16543 let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
16544 let a : 'tv_expr = Obj.magic a in
16545 let _startpos = _startpos_a_ in
16546 let _endpos = _endpos_b_ in
16547 let _v : 'tv_midzero_list_expr_eexpr_ =
16548 # 1692 "parser_cocci_menhir.mly"
16549 ( let (mids,code) = List.split b in (mids,(a::code)) )
16550 # 16551 "parser_cocci_menhir.ml"
16551 in
16552 _menhir_env.MenhirLib.EngineTypes.stack <- {
16553 MenhirLib.EngineTypes.state = _menhir_s;
16554 MenhirLib.EngineTypes.semv = Obj.repr _v;
16555 MenhirLib.EngineTypes.startp = _startpos;
16556 MenhirLib.EngineTypes.endp = _endpos;
16557 MenhirLib.EngineTypes.next = _menhir_stack;
16558 });
16559 (fun _menhir_env ->
16560 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16561 let {
16562 MenhirLib.EngineTypes.semv = b;
16563 MenhirLib.EngineTypes.startp = _startpos_b_;
16564 MenhirLib.EngineTypes.endp = _endpos_b_;
16565 MenhirLib.EngineTypes.next = {
16566 MenhirLib.EngineTypes.state = _menhir_s;
16567 MenhirLib.EngineTypes.semv = a;
16568 MenhirLib.EngineTypes.startp = _startpos_a_;
16569 MenhirLib.EngineTypes.endp = _endpos_a_;
16570 MenhirLib.EngineTypes.next = _menhir_stack;
16571 };
16572 } = _menhir_stack in
16573 let b : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic b in
16574 let a : 'tv_fun_after_stm = Obj.magic a in
16575 let _startpos = _startpos_a_ in
16576 let _endpos = _endpos_b_ in
16577 let _v : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ =
16578 # 1692 "parser_cocci_menhir.mly"
16579 ( let (mids,code) = List.split b in (mids,(a::code)) )
16580 # 16581 "parser_cocci_menhir.ml"
16581 in
16582 _menhir_env.MenhirLib.EngineTypes.stack <- {
16583 MenhirLib.EngineTypes.state = _menhir_s;
16584 MenhirLib.EngineTypes.semv = Obj.repr _v;
16585 MenhirLib.EngineTypes.startp = _startpos;
16586 MenhirLib.EngineTypes.endp = _endpos;
16587 MenhirLib.EngineTypes.next = _menhir_stack;
16588 });
16589 (fun _menhir_env ->
16590 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16591 let {
16592 MenhirLib.EngineTypes.semv = b;
16593 MenhirLib.EngineTypes.startp = _startpos_b_;
16594 MenhirLib.EngineTypes.endp = _endpos_b_;
16595 MenhirLib.EngineTypes.next = {
16596 MenhirLib.EngineTypes.state = _menhir_s;
16597 MenhirLib.EngineTypes.semv = a;
16598 MenhirLib.EngineTypes.startp = _startpos_a_;
16599 MenhirLib.EngineTypes.endp = _endpos_a_;
16600 MenhirLib.EngineTypes.next = _menhir_stack;
16601 };
16602 } = _menhir_stack in
16603 let b : 'tv_list_mzl_fun_start__ = Obj.magic b in
16604 let a : 'tv_fun_start = Obj.magic a in
16605 let _startpos = _startpos_a_ in
16606 let _endpos = _endpos_b_ in
16607 let _v : 'tv_midzero_list_fun_start_fun_start_ =
16608 # 1692 "parser_cocci_menhir.mly"
16609 ( let (mids,code) = List.split b in (mids,(a::code)) )
16610 # 16611 "parser_cocci_menhir.ml"
16611 in
16612 _menhir_env.MenhirLib.EngineTypes.stack <- {
16613 MenhirLib.EngineTypes.state = _menhir_s;
16614 MenhirLib.EngineTypes.semv = Obj.repr _v;
16615 MenhirLib.EngineTypes.startp = _startpos;
16616 MenhirLib.EngineTypes.endp = _endpos;
16617 MenhirLib.EngineTypes.next = _menhir_stack;
16618 });
16619 (fun _menhir_env ->
16620 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16621 let {
16622 MenhirLib.EngineTypes.semv = b;
16623 MenhirLib.EngineTypes.startp = _startpos_b_;
16624 MenhirLib.EngineTypes.endp = _endpos_b_;
16625 MenhirLib.EngineTypes.next = {
16626 MenhirLib.EngineTypes.state = _menhir_s;
16627 MenhirLib.EngineTypes.semv = a;
16628 MenhirLib.EngineTypes.startp = _startpos_a_;
16629 MenhirLib.EngineTypes.endp = _endpos_a_;
16630 MenhirLib.EngineTypes.next = _menhir_stack;
16631 };
16632 } = _menhir_stack in
16633 let b : 'tv_list_mzl_rule_elem_statement__ = Obj.magic b in
16634 let a : 'tv_rule_elem_statement = Obj.magic a in
16635 let _startpos = _startpos_a_ in
16636 let _endpos = _endpos_b_ in
16637 let _v : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ =
16638 # 1692 "parser_cocci_menhir.mly"
16639 ( let (mids,code) = List.split b in (mids,(a::code)) )
16640 # 16641 "parser_cocci_menhir.ml"
16641 in
16642 _menhir_env.MenhirLib.EngineTypes.stack <- {
16643 MenhirLib.EngineTypes.state = _menhir_s;
16644 MenhirLib.EngineTypes.semv = Obj.repr _v;
16645 MenhirLib.EngineTypes.startp = _startpos;
16646 MenhirLib.EngineTypes.endp = _endpos;
16647 MenhirLib.EngineTypes.next = _menhir_stack;
16648 });
16649 (fun _menhir_env ->
16650 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16651 let {
16652 MenhirLib.EngineTypes.semv = b;
16653 MenhirLib.EngineTypes.startp = _startpos_b_;
16654 MenhirLib.EngineTypes.endp = _endpos_b_;
16655 MenhirLib.EngineTypes.next = {
16656 MenhirLib.EngineTypes.state = _menhir_s;
16657 MenhirLib.EngineTypes.semv = a;
16658 MenhirLib.EngineTypes.startp = _startpos_a_;
16659 MenhirLib.EngineTypes.endp = _endpos_a_;
16660 MenhirLib.EngineTypes.next = _menhir_stack;
16661 };
16662 } = _menhir_stack in
16663 let b : 'tv_list_mzl_statement__ = Obj.magic b in
16664 let a : 'tv_statement = Obj.magic a in
16665 let _startpos = _startpos_a_ in
16666 let _endpos = _endpos_b_ in
16667 let _v : 'tv_midzero_list_statement_statement_ =
16668 # 1692 "parser_cocci_menhir.mly"
16669 ( let (mids,code) = List.split b in (mids,(a::code)) )
16670 # 16671 "parser_cocci_menhir.ml"
16671 in
16672 _menhir_env.MenhirLib.EngineTypes.stack <- {
16673 MenhirLib.EngineTypes.state = _menhir_s;
16674 MenhirLib.EngineTypes.semv = Obj.repr _v;
16675 MenhirLib.EngineTypes.startp = _startpos;
16676 MenhirLib.EngineTypes.endp = _endpos;
16677 MenhirLib.EngineTypes.next = _menhir_stack;
16678 });
16679 (fun _menhir_env ->
16680 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16681 let {
16682 MenhirLib.EngineTypes.semv = ew;
16683 MenhirLib.EngineTypes.startp = _startpos_ew_;
16684 MenhirLib.EngineTypes.endp = _endpos_ew_;
16685 MenhirLib.EngineTypes.next = {
16686 MenhirLib.EngineTypes.semv = b;
16687 MenhirLib.EngineTypes.startp = _startpos_b_;
16688 MenhirLib.EngineTypes.endp = _endpos_b_;
16689 MenhirLib.EngineTypes.next = {
16690 MenhirLib.EngineTypes.state = _menhir_s;
16691 MenhirLib.EngineTypes.semv = f;
16692 MenhirLib.EngineTypes.startp = _startpos_f_;
16693 MenhirLib.EngineTypes.endp = _endpos_f_;
16694 MenhirLib.EngineTypes.next = _menhir_stack;
16695 };
16696 };
16697 } = _menhir_stack in
16698 let ew : 'tv_loption_error_words_ = Obj.magic ew in
16699 let b : 'tv_loption_minus_start_ = Obj.magic b in
16700 let f : 'tv_loption_filespec_ = Obj.magic f in
16701 let _startpos = _startpos_f_ in
16702 let _endpos = _endpos_ew_ in
16703 let _v : 'tv_minus_body =
16704 # 554 "parser_cocci_menhir.mly"
16705 ( match f@b@ew with
16706 [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
16707 | code -> Top_level.top_level code )
16708 # 16709 "parser_cocci_menhir.ml"
16709 in
16710 _menhir_env.MenhirLib.EngineTypes.stack <- {
16711 MenhirLib.EngineTypes.state = _menhir_s;
16712 MenhirLib.EngineTypes.semv = Obj.repr _v;
16713 MenhirLib.EngineTypes.startp = _startpos;
16714 MenhirLib.EngineTypes.endp = _endpos;
16715 MenhirLib.EngineTypes.next = _menhir_stack;
16716 });
16717 (fun _menhir_env ->
16718 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16719 let {
16720 MenhirLib.EngineTypes.semv = ew;
16721 MenhirLib.EngineTypes.startp = _startpos_ew_;
16722 MenhirLib.EngineTypes.endp = _endpos_ew_;
16723 MenhirLib.EngineTypes.next = {
16724 MenhirLib.EngineTypes.semv = b;
16725 MenhirLib.EngineTypes.startp = _startpos_b_;
16726 MenhirLib.EngineTypes.endp = _endpos_b_;
16727 MenhirLib.EngineTypes.next = {
16728 MenhirLib.EngineTypes.state = _menhir_s;
16729 MenhirLib.EngineTypes.semv = f;
16730 MenhirLib.EngineTypes.startp = _startpos_f_;
16731 MenhirLib.EngineTypes.endp = _endpos_f_;
16732 MenhirLib.EngineTypes.next = _menhir_stack;
16733 };
16734 };
16735 } = _menhir_stack in
16736 let ew : 'tv_loption_error_words_ = Obj.magic ew in
16737 let b : 'tv_top_eexpr = Obj.magic b in
16738 let f : 'tv_loption_filespec_ = Obj.magic f in
16739 let _startpos = _startpos_f_ in
16740 let _endpos = _endpos_ew_ in
16741 let _v : 'tv_minus_exp_body =
16742 # 568 "parser_cocci_menhir.mly"
16743 ( match f@[b]@ew with
16744 [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
16745 | code -> Top_level.top_level code )
16746 # 16747 "parser_cocci_menhir.ml"
16747 in
16748 _menhir_env.MenhirLib.EngineTypes.stack <- {
16749 MenhirLib.EngineTypes.state = _menhir_s;
16750 MenhirLib.EngineTypes.semv = Obj.repr _v;
16751 MenhirLib.EngineTypes.startp = _startpos;
16752 MenhirLib.EngineTypes.endp = _endpos;
16753 MenhirLib.EngineTypes.next = _menhir_stack;
16754 });
16755 (fun _menhir_env ->
16756 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16757 let {
16758 MenhirLib.EngineTypes.startp = _startpos__2_;
16759 MenhirLib.EngineTypes.endp = _endpos__2_;
16760 MenhirLib.EngineTypes.next = {
16761 MenhirLib.EngineTypes.state = _menhir_s;
16762 MenhirLib.EngineTypes.semv = _1;
16763 MenhirLib.EngineTypes.startp = _startpos__1_;
16764 MenhirLib.EngineTypes.endp = _endpos__1_;
16765 MenhirLib.EngineTypes.next = _menhir_stack;
16766 };
16767 } = _menhir_stack in
16768 let _1 : 'tv_minus_exp_body = Obj.magic _1 in
16769 let _startpos = _startpos__1_ in
16770 let _endpos = _endpos__2_ in
16771 let _v : (
16772 # 136 "parser_cocci_menhir.mly"
16773 (Ast0_cocci.rule)
16774 # 16775 "parser_cocci_menhir.ml"
16775 ) =
16776 # 176 "parser_cocci_menhir.mly"
16777 ( _1 )
16778 # 16779 "parser_cocci_menhir.ml"
16779 in
16780 _menhir_env.MenhirLib.EngineTypes.stack <- {
16781 MenhirLib.EngineTypes.state = _menhir_s;
16782 MenhirLib.EngineTypes.semv = Obj.repr _v;
16783 MenhirLib.EngineTypes.startp = _startpos;
16784 MenhirLib.EngineTypes.endp = _endpos;
16785 MenhirLib.EngineTypes.next = _menhir_stack;
16786 });
16787 (fun _menhir_env ->
16788 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16789 let {
16790 MenhirLib.EngineTypes.startp = _startpos__2_;
16791 MenhirLib.EngineTypes.endp = _endpos__2_;
16792 MenhirLib.EngineTypes.next = {
16793 MenhirLib.EngineTypes.state = _menhir_s;
16794 MenhirLib.EngineTypes.semv = m;
16795 MenhirLib.EngineTypes.startp = _startpos_m_;
16796 MenhirLib.EngineTypes.endp = _endpos_m_;
16797 MenhirLib.EngineTypes.next = _menhir_stack;
16798 };
16799 } = _menhir_stack in
16800 let m : 'tv_minus_exp_body = Obj.magic m in
16801 let _startpos = _startpos_m_ in
16802 let _endpos = _endpos__2_ in
16803 let _v : (
16804 # 136 "parser_cocci_menhir.mly"
16805 (Ast0_cocci.rule)
16806 # 16807 "parser_cocci_menhir.ml"
16807 ) =
16808 # 176 "parser_cocci_menhir.mly"
16809 ( m )
16810 # 16811 "parser_cocci_menhir.ml"
16811 in
16812 _menhir_env.MenhirLib.EngineTypes.stack <- {
16813 MenhirLib.EngineTypes.state = _menhir_s;
16814 MenhirLib.EngineTypes.semv = Obj.repr _v;
16815 MenhirLib.EngineTypes.startp = _startpos;
16816 MenhirLib.EngineTypes.endp = _endpos;
16817 MenhirLib.EngineTypes.next = _menhir_stack;
16818 });
16819 (fun _menhir_env ->
16820 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16821 let {
16822 MenhirLib.EngineTypes.startp = _startpos__2_;
16823 MenhirLib.EngineTypes.endp = _endpos__2_;
16824 MenhirLib.EngineTypes.next = {
16825 MenhirLib.EngineTypes.state = _menhir_s;
16826 MenhirLib.EngineTypes.semv = m;
16827 MenhirLib.EngineTypes.startp = _startpos_m_;
16828 MenhirLib.EngineTypes.endp = _endpos_m_;
16829 MenhirLib.EngineTypes.next = _menhir_stack;
16830 };
16831 } = _menhir_stack in
16832 let m : 'tv_minus_exp_body = Obj.magic m in
16833 let _startpos = _startpos_m_ in
16834 let _endpos = _endpos__2_ in
16835 let _v : (
16836 # 136 "parser_cocci_menhir.mly"
16837 (Ast0_cocci.rule)
16838 # 16839 "parser_cocci_menhir.ml"
16839 ) =
16840 # 177 "parser_cocci_menhir.mly"
16841 ( m )
16842 # 16843 "parser_cocci_menhir.ml"
16843 in
16844 _menhir_env.MenhirLib.EngineTypes.stack <- {
16845 MenhirLib.EngineTypes.state = _menhir_s;
16846 MenhirLib.EngineTypes.semv = Obj.repr _v;
16847 MenhirLib.EngineTypes.startp = _startpos;
16848 MenhirLib.EngineTypes.endp = _endpos;
16849 MenhirLib.EngineTypes.next = _menhir_stack;
16850 });
16851 (fun _menhir_env ->
16852 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16853 let {
16854 MenhirLib.EngineTypes.startp = _startpos__2_;
16855 MenhirLib.EngineTypes.endp = _endpos__2_;
16856 MenhirLib.EngineTypes.next = {
16857 MenhirLib.EngineTypes.state = _menhir_s;
16858 MenhirLib.EngineTypes.semv = _1;
16859 MenhirLib.EngineTypes.startp = _startpos__1_;
16860 MenhirLib.EngineTypes.endp = _endpos__1_;
16861 MenhirLib.EngineTypes.next = _menhir_stack;
16862 };
16863 } = _menhir_stack in
16864 let _1 : 'tv_minus_body = Obj.magic _1 in
16865 let _startpos = _startpos__1_ in
16866 let _endpos = _endpos__2_ in
16867 let _v : (
16868 # 133 "parser_cocci_menhir.mly"
16869 (Ast0_cocci.rule)
16870 # 16871 "parser_cocci_menhir.ml"
16871 ) =
16872 # 172 "parser_cocci_menhir.mly"
16873 ( _1 )
16874 # 16875 "parser_cocci_menhir.ml"
16875 in
16876 _menhir_env.MenhirLib.EngineTypes.stack <- {
16877 MenhirLib.EngineTypes.state = _menhir_s;
16878 MenhirLib.EngineTypes.semv = Obj.repr _v;
16879 MenhirLib.EngineTypes.startp = _startpos;
16880 MenhirLib.EngineTypes.endp = _endpos;
16881 MenhirLib.EngineTypes.next = _menhir_stack;
16882 });
16883 (fun _menhir_env ->
16884 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16885 let {
16886 MenhirLib.EngineTypes.startp = _startpos__2_;
16887 MenhirLib.EngineTypes.endp = _endpos__2_;
16888 MenhirLib.EngineTypes.next = {
16889 MenhirLib.EngineTypes.state = _menhir_s;
16890 MenhirLib.EngineTypes.semv = m;
16891 MenhirLib.EngineTypes.startp = _startpos_m_;
16892 MenhirLib.EngineTypes.endp = _endpos_m_;
16893 MenhirLib.EngineTypes.next = _menhir_stack;
16894 };
16895 } = _menhir_stack in
16896 let m : 'tv_minus_body = Obj.magic m in
16897 let _startpos = _startpos_m_ in
16898 let _endpos = _endpos__2_ in
16899 let _v : (
16900 # 133 "parser_cocci_menhir.mly"
16901 (Ast0_cocci.rule)
16902 # 16903 "parser_cocci_menhir.ml"
16903 ) =
16904 # 172 "parser_cocci_menhir.mly"
16905 ( m )
16906 # 16907 "parser_cocci_menhir.ml"
16907 in
16908 _menhir_env.MenhirLib.EngineTypes.stack <- {
16909 MenhirLib.EngineTypes.state = _menhir_s;
16910 MenhirLib.EngineTypes.semv = Obj.repr _v;
16911 MenhirLib.EngineTypes.startp = _startpos;
16912 MenhirLib.EngineTypes.endp = _endpos;
16913 MenhirLib.EngineTypes.next = _menhir_stack;
16914 });
16915 (fun _menhir_env ->
16916 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16917 let {
16918 MenhirLib.EngineTypes.startp = _startpos__2_;
16919 MenhirLib.EngineTypes.endp = _endpos__2_;
16920 MenhirLib.EngineTypes.next = {
16921 MenhirLib.EngineTypes.state = _menhir_s;
16922 MenhirLib.EngineTypes.semv = m;
16923 MenhirLib.EngineTypes.startp = _startpos_m_;
16924 MenhirLib.EngineTypes.endp = _endpos_m_;
16925 MenhirLib.EngineTypes.next = _menhir_stack;
16926 };
16927 } = _menhir_stack in
16928 let m : 'tv_minus_body = Obj.magic m in
16929 let _startpos = _startpos_m_ in
16930 let _endpos = _endpos__2_ in
16931 let _v : (
16932 # 133 "parser_cocci_menhir.mly"
16933 (Ast0_cocci.rule)
16934 # 16935 "parser_cocci_menhir.ml"
16935 ) =
16936 # 173 "parser_cocci_menhir.mly"
16937 ( m )
16938 # 16939 "parser_cocci_menhir.ml"
16939 in
16940 _menhir_env.MenhirLib.EngineTypes.stack <- {
16941 MenhirLib.EngineTypes.state = _menhir_s;
16942 MenhirLib.EngineTypes.semv = Obj.repr _v;
16943 MenhirLib.EngineTypes.startp = _startpos;
16944 MenhirLib.EngineTypes.endp = _endpos;
16945 MenhirLib.EngineTypes.next = _menhir_stack;
16946 });
16947 (fun _menhir_env ->
16948 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16949 let {
16950 MenhirLib.EngineTypes.state = _menhir_s;
16951 MenhirLib.EngineTypes.semv = _1;
16952 MenhirLib.EngineTypes.startp = _startpos__1_;
16953 MenhirLib.EngineTypes.endp = _endpos__1_;
16954 MenhirLib.EngineTypes.next = _menhir_stack;
16955 } = _menhir_stack in
16956 let _1 : 'tv_fundecl = Obj.magic _1 in
16957 let _startpos = _startpos__1_ in
16958 let _endpos = _endpos__1_ in
16959 let _v : 'tv_minus_start =
16960 # 1514 "parser_cocci_menhir.mly"
16961 ( [Ast0.wrap(Ast0.DECL(_1))] )
16962 # 16963 "parser_cocci_menhir.ml"
16963 in
16964 _menhir_env.MenhirLib.EngineTypes.stack <- {
16965 MenhirLib.EngineTypes.state = _menhir_s;
16966 MenhirLib.EngineTypes.semv = Obj.repr _v;
16967 MenhirLib.EngineTypes.startp = _startpos;
16968 MenhirLib.EngineTypes.endp = _endpos;
16969 MenhirLib.EngineTypes.next = _menhir_stack;
16970 });
16971 (fun _menhir_env ->
16972 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16973 let {
16974 MenhirLib.EngineTypes.state = _menhir_s;
16975 MenhirLib.EngineTypes.semv = _1;
16976 MenhirLib.EngineTypes.startp = _startpos__1_;
16977 MenhirLib.EngineTypes.endp = _endpos__1_;
16978 MenhirLib.EngineTypes.next = _menhir_stack;
16979 } = _menhir_stack in
16980 let _1 : 'tv_ctype = Obj.magic _1 in
16981 let _startpos = _startpos__1_ in
16982 let _endpos = _endpos__1_ in
16983 let _v : 'tv_minus_start =
16984 # 1515 "parser_cocci_menhir.mly"
16985 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
16986 # 16987 "parser_cocci_menhir.ml"
16987 in
16988 _menhir_env.MenhirLib.EngineTypes.stack <- {
16989 MenhirLib.EngineTypes.state = _menhir_s;
16990 MenhirLib.EngineTypes.semv = Obj.repr _v;
16991 MenhirLib.EngineTypes.startp = _startpos;
16992 MenhirLib.EngineTypes.endp = _endpos;
16993 MenhirLib.EngineTypes.next = _menhir_stack;
16994 });
16995 (fun _menhir_env ->
16996 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16997 let {
16998 MenhirLib.EngineTypes.state = _menhir_s;
16999 MenhirLib.EngineTypes.semv = _1;
17000 MenhirLib.EngineTypes.startp = _startpos__1_;
17001 MenhirLib.EngineTypes.endp = _endpos__1_;
17002 MenhirLib.EngineTypes.next = _menhir_stack;
17003 } = _menhir_stack in
17004 let _1 : 'tv_toplevel_seq_start_toplevel_after_dots_init_ = Obj.magic _1 in
17005 let _startpos = _startpos__1_ in
17006 let _endpos = _endpos__1_ in
17007 let _v : 'tv_minus_start =
17008 # 1517 "parser_cocci_menhir.mly"
17009 ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 )
17010 # 17011 "parser_cocci_menhir.ml"
17011 in
17012 _menhir_env.MenhirLib.EngineTypes.stack <- {
17013 MenhirLib.EngineTypes.state = _menhir_s;
17014 MenhirLib.EngineTypes.semv = Obj.repr _v;
17015 MenhirLib.EngineTypes.startp = _startpos;
17016 MenhirLib.EngineTypes.endp = _endpos;
17017 MenhirLib.EngineTypes.next = _menhir_stack;
17018 });
17019 (fun _menhir_env ->
17020 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17021 let {
17022 MenhirLib.EngineTypes.semv = b;
17023 MenhirLib.EngineTypes.startp = _startpos_b_;
17024 MenhirLib.EngineTypes.endp = _endpos_b_;
17025 MenhirLib.EngineTypes.next = {
17026 MenhirLib.EngineTypes.state = _menhir_s;
17027 MenhirLib.EngineTypes.semv = a;
17028 MenhirLib.EngineTypes.startp = _startpos_a_;
17029 MenhirLib.EngineTypes.endp = _endpos_a_;
17030 MenhirLib.EngineTypes.next = _menhir_stack;
17031 };
17032 } = _menhir_stack in
17033 let b : 'tv_ctype = Obj.magic b in
17034 let a : (
17035 # 76 "parser_cocci_menhir.mly"
17036 (Data.clt)
17037 # 17038 "parser_cocci_menhir.ml"
17038 ) = Obj.magic a in
17039 let _startpos = _startpos_a_ in
17040 let _endpos = _endpos_b_ in
17041 let _v : 'tv_mzl_ctype_ =
17042 # 1695 "parser_cocci_menhir.mly"
17043 ( (P.clt2mcode "|" a, b) )
17044 # 17045 "parser_cocci_menhir.ml"
17045 in
17046 _menhir_env.MenhirLib.EngineTypes.stack <- {
17047 MenhirLib.EngineTypes.state = _menhir_s;
17048 MenhirLib.EngineTypes.semv = Obj.repr _v;
17049 MenhirLib.EngineTypes.startp = _startpos;
17050 MenhirLib.EngineTypes.endp = _endpos;
17051 MenhirLib.EngineTypes.next = _menhir_stack;
17052 });
17053 (fun _menhir_env ->
17054 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17055 let {
17056 MenhirLib.EngineTypes.semv = b;
17057 MenhirLib.EngineTypes.startp = _startpos_b_;
17058 MenhirLib.EngineTypes.endp = _endpos_b_;
17059 MenhirLib.EngineTypes.next = {
17060 MenhirLib.EngineTypes.state = _menhir_s;
17061 MenhirLib.EngineTypes.semv = a;
17062 MenhirLib.EngineTypes.startp = _startpos_a_;
17063 MenhirLib.EngineTypes.endp = _endpos_a_;
17064 MenhirLib.EngineTypes.next = _menhir_stack;
17065 };
17066 } = _menhir_stack in
17067 let b : 'tv_eexpr = Obj.magic b in
17068 let a : (
17069 # 76 "parser_cocci_menhir.mly"
17070 (Data.clt)
17071 # 17072 "parser_cocci_menhir.ml"
17072 ) = Obj.magic a in
17073 let _startpos = _startpos_a_ in
17074 let _endpos = _endpos_b_ in
17075 let _v : 'tv_mzl_eexpr_ =
17076 # 1695 "parser_cocci_menhir.mly"
17077 ( (P.clt2mcode "|" a, b) )
17078 # 17079 "parser_cocci_menhir.ml"
17079 in
17080 _menhir_env.MenhirLib.EngineTypes.stack <- {
17081 MenhirLib.EngineTypes.state = _menhir_s;
17082 MenhirLib.EngineTypes.semv = Obj.repr _v;
17083 MenhirLib.EngineTypes.startp = _startpos;
17084 MenhirLib.EngineTypes.endp = _endpos;
17085 MenhirLib.EngineTypes.next = _menhir_stack;
17086 });
17087 (fun _menhir_env ->
17088 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17089 let {
17090 MenhirLib.EngineTypes.semv = b;
17091 MenhirLib.EngineTypes.startp = _startpos_b_;
17092 MenhirLib.EngineTypes.endp = _endpos_b_;
17093 MenhirLib.EngineTypes.next = {
17094 MenhirLib.EngineTypes.state = _menhir_s;
17095 MenhirLib.EngineTypes.semv = a;
17096 MenhirLib.EngineTypes.startp = _startpos_a_;
17097 MenhirLib.EngineTypes.endp = _endpos_a_;
17098 MenhirLib.EngineTypes.next = _menhir_stack;
17099 };
17100 } = _menhir_stack in
17101 let b : 'tv_fun_after_dots_or = Obj.magic b in
17102 let a : (
17103 # 76 "parser_cocci_menhir.mly"
17104 (Data.clt)
17105 # 17106 "parser_cocci_menhir.ml"
17106 ) = Obj.magic a in
17107 let _startpos = _startpos_a_ in
17108 let _endpos = _endpos_b_ in
17109 let _v : 'tv_mzl_fun_after_dots_or_ =
17110 # 1695 "parser_cocci_menhir.mly"
17111 ( (P.clt2mcode "|" a, b) )
17112 # 17113 "parser_cocci_menhir.ml"
17113 in
17114 _menhir_env.MenhirLib.EngineTypes.stack <- {
17115 MenhirLib.EngineTypes.state = _menhir_s;
17116 MenhirLib.EngineTypes.semv = Obj.repr _v;
17117 MenhirLib.EngineTypes.startp = _startpos;
17118 MenhirLib.EngineTypes.endp = _endpos;
17119 MenhirLib.EngineTypes.next = _menhir_stack;
17120 });
17121 (fun _menhir_env ->
17122 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17123 let {
17124 MenhirLib.EngineTypes.semv = b;
17125 MenhirLib.EngineTypes.startp = _startpos_b_;
17126 MenhirLib.EngineTypes.endp = _endpos_b_;
17127 MenhirLib.EngineTypes.next = {
17128 MenhirLib.EngineTypes.state = _menhir_s;
17129 MenhirLib.EngineTypes.semv = a;
17130 MenhirLib.EngineTypes.startp = _startpos_a_;
17131 MenhirLib.EngineTypes.endp = _endpos_a_;
17132 MenhirLib.EngineTypes.next = _menhir_stack;
17133 };
17134 } = _menhir_stack in
17135 let b : 'tv_fun_start = Obj.magic b in
17136 let a : (
17137 # 76 "parser_cocci_menhir.mly"
17138 (Data.clt)
17139 # 17140 "parser_cocci_menhir.ml"
17140 ) = Obj.magic a in
17141 let _startpos = _startpos_a_ in
17142 let _endpos = _endpos_b_ in
17143 let _v : 'tv_mzl_fun_start_ =
17144 # 1695 "parser_cocci_menhir.mly"
17145 ( (P.clt2mcode "|" a, b) )
17146 # 17147 "parser_cocci_menhir.ml"
17147 in
17148 _menhir_env.MenhirLib.EngineTypes.stack <- {
17149 MenhirLib.EngineTypes.state = _menhir_s;
17150 MenhirLib.EngineTypes.semv = Obj.repr _v;
17151 MenhirLib.EngineTypes.startp = _startpos;
17152 MenhirLib.EngineTypes.endp = _endpos;
17153 MenhirLib.EngineTypes.next = _menhir_stack;
17154 });
17155 (fun _menhir_env ->
17156 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17157 let {
17158 MenhirLib.EngineTypes.semv = b;
17159 MenhirLib.EngineTypes.startp = _startpos_b_;
17160 MenhirLib.EngineTypes.endp = _endpos_b_;
17161 MenhirLib.EngineTypes.next = {
17162 MenhirLib.EngineTypes.state = _menhir_s;
17163 MenhirLib.EngineTypes.semv = a;
17164 MenhirLib.EngineTypes.startp = _startpos_a_;
17165 MenhirLib.EngineTypes.endp = _endpos_a_;
17166 MenhirLib.EngineTypes.next = _menhir_stack;
17167 };
17168 } = _menhir_stack in
17169 let b : 'tv_rule_elem_statement = Obj.magic b in
17170 let a : (
17171 # 76 "parser_cocci_menhir.mly"
17172 (Data.clt)
17173 # 17174 "parser_cocci_menhir.ml"
17174 ) = Obj.magic a in
17175 let _startpos = _startpos_a_ in
17176 let _endpos = _endpos_b_ in
17177 let _v : 'tv_mzl_rule_elem_statement_ =
17178 # 1695 "parser_cocci_menhir.mly"
17179 ( (P.clt2mcode "|" a, b) )
17180 # 17181 "parser_cocci_menhir.ml"
17181 in
17182 _menhir_env.MenhirLib.EngineTypes.stack <- {
17183 MenhirLib.EngineTypes.state = _menhir_s;
17184 MenhirLib.EngineTypes.semv = Obj.repr _v;
17185 MenhirLib.EngineTypes.startp = _startpos;
17186 MenhirLib.EngineTypes.endp = _endpos;
17187 MenhirLib.EngineTypes.next = _menhir_stack;
17188 });
17189 (fun _menhir_env ->
17190 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17191 let {
17192 MenhirLib.EngineTypes.semv = b;
17193 MenhirLib.EngineTypes.startp = _startpos_b_;
17194 MenhirLib.EngineTypes.endp = _endpos_b_;
17195 MenhirLib.EngineTypes.next = {
17196 MenhirLib.EngineTypes.state = _menhir_s;
17197 MenhirLib.EngineTypes.semv = a;
17198 MenhirLib.EngineTypes.startp = _startpos_a_;
17199 MenhirLib.EngineTypes.endp = _endpos_a_;
17200 MenhirLib.EngineTypes.next = _menhir_stack;
17201 };
17202 } = _menhir_stack in
17203 let b : 'tv_statement = Obj.magic b in
17204 let a : (
17205 # 76 "parser_cocci_menhir.mly"
17206 (Data.clt)
17207 # 17208 "parser_cocci_menhir.ml"
17208 ) = Obj.magic a in
17209 let _startpos = _startpos_a_ in
17210 let _endpos = _endpos_b_ in
17211 let _v : 'tv_mzl_statement_ =
17212 # 1695 "parser_cocci_menhir.mly"
17213 ( (P.clt2mcode "|" a, b) )
17214 # 17215 "parser_cocci_menhir.ml"
17215 in
17216 _menhir_env.MenhirLib.EngineTypes.stack <- {
17217 MenhirLib.EngineTypes.state = _menhir_s;
17218 MenhirLib.EngineTypes.semv = Obj.repr _v;
17219 MenhirLib.EngineTypes.startp = _startpos;
17220 MenhirLib.EngineTypes.endp = _endpos;
17221 MenhirLib.EngineTypes.next = _menhir_stack;
17222 });
17223 (fun _menhir_env ->
17224 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17225 let {
17226 MenhirLib.EngineTypes.state = _menhir_s;
17227 MenhirLib.EngineTypes.semv = _1;
17228 MenhirLib.EngineTypes.startp = _startpos__1_;
17229 MenhirLib.EngineTypes.endp = _endpos__1_;
17230 MenhirLib.EngineTypes.next = _menhir_stack;
17231 } = _menhir_stack in
17232 let _1 : 'tv_decl = Obj.magic _1 in
17233 let _startpos = _startpos__1_ in
17234 let _endpos = _endpos__1_ in
17235 let _v : 'tv_name_opt_decl =
17236 # 785 "parser_cocci_menhir.mly"
17237 ( _1 )
17238 # 17239 "parser_cocci_menhir.ml"
17239 in
17240 _menhir_env.MenhirLib.EngineTypes.stack <- {
17241 MenhirLib.EngineTypes.state = _menhir_s;
17242 MenhirLib.EngineTypes.semv = Obj.repr _v;
17243 MenhirLib.EngineTypes.startp = _startpos;
17244 MenhirLib.EngineTypes.endp = _endpos;
17245 MenhirLib.EngineTypes.next = _menhir_stack;
17246 });
17247 (fun _menhir_env ->
17248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17249 let {
17250 MenhirLib.EngineTypes.state = _menhir_s;
17251 MenhirLib.EngineTypes.semv = t;
17252 MenhirLib.EngineTypes.startp = _startpos_t_;
17253 MenhirLib.EngineTypes.endp = _endpos_t_;
17254 MenhirLib.EngineTypes.next = _menhir_stack;
17255 } = _menhir_stack in
17256 let t : 'tv_ctype = Obj.magic t in
17257 let _startpos = _startpos_t_ in
17258 let _endpos = _endpos_t_ in
17259 let _v : 'tv_name_opt_decl =
17260 # 786 "parser_cocci_menhir.mly"
17261 ( Ast0.wrap(Ast0.Param(t, None)) )
17262 # 17263 "parser_cocci_menhir.ml"
17263 in
17264 _menhir_env.MenhirLib.EngineTypes.stack <- {
17265 MenhirLib.EngineTypes.state = _menhir_s;
17266 MenhirLib.EngineTypes.semv = Obj.repr _v;
17267 MenhirLib.EngineTypes.startp = _startpos;
17268 MenhirLib.EngineTypes.endp = _endpos;
17269 MenhirLib.EngineTypes.next = _menhir_stack;
17270 });
17271 (fun _menhir_env ->
17272 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17273 let {
17274 MenhirLib.EngineTypes.semv = rp1;
17275 MenhirLib.EngineTypes.startp = _startpos_rp1_;
17276 MenhirLib.EngineTypes.endp = _endpos_rp1_;
17277 MenhirLib.EngineTypes.next = {
17278 MenhirLib.EngineTypes.semv = d;
17279 MenhirLib.EngineTypes.startp = _startpos_d_;
17280 MenhirLib.EngineTypes.endp = _endpos_d_;
17281 MenhirLib.EngineTypes.next = {
17282 MenhirLib.EngineTypes.semv = lp1;
17283 MenhirLib.EngineTypes.startp = _startpos_lp1_;
17284 MenhirLib.EngineTypes.endp = _endpos_lp1_;
17285 MenhirLib.EngineTypes.next = {
17286 MenhirLib.EngineTypes.semv = rp;
17287 MenhirLib.EngineTypes.startp = _startpos_rp_;
17288 MenhirLib.EngineTypes.endp = _endpos_rp_;
17289 MenhirLib.EngineTypes.next = {
17290 MenhirLib.EngineTypes.semv = s;
17291 MenhirLib.EngineTypes.startp = _startpos_s_;
17292 MenhirLib.EngineTypes.endp = _endpos_s_;
17293 MenhirLib.EngineTypes.next = {
17294 MenhirLib.EngineTypes.semv = lp;
17295 MenhirLib.EngineTypes.startp = _startpos_lp_;
17296 MenhirLib.EngineTypes.endp = _endpos_lp_;
17297 MenhirLib.EngineTypes.next = {
17298 MenhirLib.EngineTypes.state = _menhir_s;
17299 MenhirLib.EngineTypes.semv = t;
17300 MenhirLib.EngineTypes.startp = _startpos_t_;
17301 MenhirLib.EngineTypes.endp = _endpos_t_;
17302 MenhirLib.EngineTypes.next = _menhir_stack;
17303 };
17304 };
17305 };
17306 };
17307 };
17308 };
17309 } = _menhir_stack in
17310 let rp1 : (
17311 # 76 "parser_cocci_menhir.mly"
17312 (Data.clt)
17313 # 17314 "parser_cocci_menhir.ml"
17314 ) = Obj.magic rp1 in
17315 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
17316 let lp1 : (
17317 # 75 "parser_cocci_menhir.mly"
17318 (Data.clt)
17319 # 17320 "parser_cocci_menhir.ml"
17320 ) = Obj.magic lp1 in
17321 let rp : (
17322 # 76 "parser_cocci_menhir.mly"
17323 (Data.clt)
17324 # 17325 "parser_cocci_menhir.ml"
17325 ) = Obj.magic rp in
17326 let s : (
17327 # 98 "parser_cocci_menhir.mly"
17328 (Data.clt)
17329 # 17330 "parser_cocci_menhir.ml"
17330 ) = Obj.magic s in
17331 let lp : (
17332 # 75 "parser_cocci_menhir.mly"
17333 (Data.clt)
17334 # 17335 "parser_cocci_menhir.ml"
17335 ) = Obj.magic lp in
17336 let t : 'tv_fn_ctype = Obj.magic t in
17337 let _startpos = _startpos_t_ in
17338 let _endpos = _endpos_rp1_ in
17339 let _v : 'tv_name_opt_decl =
17340 # 789 "parser_cocci_menhir.mly"
17341 ( let fnptr =
17342 Ast0.wrap
17343 (Ast0.FunctionPointer
17344 (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
17345 P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
17346 Ast0.wrap(Ast0.Param(fnptr, None)) )
17347 # 17348 "parser_cocci_menhir.ml"
17348 in
17349 _menhir_env.MenhirLib.EngineTypes.stack <- {
17350 MenhirLib.EngineTypes.state = _menhir_s;
17351 MenhirLib.EngineTypes.semv = Obj.repr _v;
17352 MenhirLib.EngineTypes.startp = _startpos;
17353 MenhirLib.EngineTypes.endp = _endpos;
17354 MenhirLib.EngineTypes.next = _menhir_stack;
17355 });
17356 (fun _menhir_env ->
17357 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17358 let {
17359 MenhirLib.EngineTypes.semv = _2;
17360 MenhirLib.EngineTypes.startp = _startpos__2_;
17361 MenhirLib.EngineTypes.endp = _endpos__2_;
17362 MenhirLib.EngineTypes.next = {
17363 MenhirLib.EngineTypes.state = _menhir_s;
17364 MenhirLib.EngineTypes.semv = _1;
17365 MenhirLib.EngineTypes.startp = _startpos__1_;
17366 MenhirLib.EngineTypes.endp = _endpos__1_;
17367 MenhirLib.EngineTypes.next = _menhir_stack;
17368 };
17369 } = _menhir_stack in
17370 let _2 : 'tv_nest_after_stm = Obj.magic _2 in
17371 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
17372 let _startpos = _startpos__1_ in
17373 let _endpos = _endpos__2_ in
17374 let _v : 'tv_nest_after_dots =
17375 # 1616 "parser_cocci_menhir.mly"
17376 (_1@_2)
17377 # 17378 "parser_cocci_menhir.ml"
17378 in
17379 _menhir_env.MenhirLib.EngineTypes.stack <- {
17380 MenhirLib.EngineTypes.state = _menhir_s;
17381 MenhirLib.EngineTypes.semv = Obj.repr _v;
17382 MenhirLib.EngineTypes.startp = _startpos;
17383 MenhirLib.EngineTypes.endp = _endpos;
17384 MenhirLib.EngineTypes.next = _menhir_stack;
17385 });
17386 (fun _menhir_env ->
17387 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17388 let {
17389 MenhirLib.EngineTypes.semv = _2;
17390 MenhirLib.EngineTypes.startp = _startpos__2_;
17391 MenhirLib.EngineTypes.endp = _endpos__2_;
17392 MenhirLib.EngineTypes.next = {
17393 MenhirLib.EngineTypes.state = _menhir_s;
17394 MenhirLib.EngineTypes.startp = _startpos__1_;
17395 MenhirLib.EngineTypes.endp = _endpos__1_;
17396 MenhirLib.EngineTypes.next = _menhir_stack;
17397 };
17398 } = _menhir_stack in
17399 let _2 : 'tv_nest_after_exp = Obj.magic _2 in
17400 let _startpos = _startpos__1_ in
17401 let _endpos = _endpos__2_ in
17402 let _v : 'tv_nest_after_dots =
17403 # 1617 "parser_cocci_menhir.mly"
17404 (_2)
17405 # 17406 "parser_cocci_menhir.ml"
17406 in
17407 _menhir_env.MenhirLib.EngineTypes.stack <- {
17408 MenhirLib.EngineTypes.state = _menhir_s;
17409 MenhirLib.EngineTypes.semv = Obj.repr _v;
17410 MenhirLib.EngineTypes.startp = _startpos;
17411 MenhirLib.EngineTypes.endp = _endpos;
17412 MenhirLib.EngineTypes.next = _menhir_stack;
17413 });
17414 (fun _menhir_env ->
17415 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17416 let {
17417 MenhirLib.EngineTypes.semv = _2;
17418 MenhirLib.EngineTypes.startp = _startpos__2_;
17419 MenhirLib.EngineTypes.endp = _endpos__2_;
17420 MenhirLib.EngineTypes.next = {
17421 MenhirLib.EngineTypes.state = _menhir_s;
17422 MenhirLib.EngineTypes.semv = _1;
17423 MenhirLib.EngineTypes.startp = _startpos__1_;
17424 MenhirLib.EngineTypes.endp = _endpos__1_;
17425 MenhirLib.EngineTypes.next = _menhir_stack;
17426 };
17427 } = _menhir_stack in
17428 let _2 : 'tv_nest_after_exp = Obj.magic _2 in
17429 let _1 : 'tv_expr = Obj.magic _1 in
17430 let _startpos = _startpos__1_ in
17431 let _endpos = _endpos__2_ in
17432 let _v : 'tv_nest_after_dots =
17433 # 1618 "parser_cocci_menhir.mly"
17434 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
17435 # 17436 "parser_cocci_menhir.ml"
17436 in
17437 _menhir_env.MenhirLib.EngineTypes.stack <- {
17438 MenhirLib.EngineTypes.state = _menhir_s;
17439 MenhirLib.EngineTypes.semv = Obj.repr _v;
17440 MenhirLib.EngineTypes.startp = _startpos;
17441 MenhirLib.EngineTypes.endp = _endpos;
17442 MenhirLib.EngineTypes.next = _menhir_stack;
17443 });
17444 (fun _menhir_env ->
17445 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17446 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
17447 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
17448 let _endpos = _startpos in
17449 let _v : 'tv_nest_after_exp =
17450 # 1626 "parser_cocci_menhir.mly"
17451 ([])
17452 # 17453 "parser_cocci_menhir.ml"
17453 in
17454 _menhir_env.MenhirLib.EngineTypes.stack <- {
17455 MenhirLib.EngineTypes.state = _menhir_s;
17456 MenhirLib.EngineTypes.semv = Obj.repr _v;
17457 MenhirLib.EngineTypes.startp = _startpos;
17458 MenhirLib.EngineTypes.endp = _endpos;
17459 MenhirLib.EngineTypes.next = _menhir_stack;
17460 });
17461 (fun _menhir_env ->
17462 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17463 let {
17464 MenhirLib.EngineTypes.semv = _2;
17465 MenhirLib.EngineTypes.startp = _startpos__2_;
17466 MenhirLib.EngineTypes.endp = _endpos__2_;
17467 MenhirLib.EngineTypes.next = {
17468 MenhirLib.EngineTypes.state = _menhir_s;
17469 MenhirLib.EngineTypes.semv = _1;
17470 MenhirLib.EngineTypes.startp = _startpos__1_;
17471 MenhirLib.EngineTypes.endp = _endpos__1_;
17472 MenhirLib.EngineTypes.next = _menhir_stack;
17473 };
17474 } = _menhir_stack in
17475 let _2 : 'tv_nest_after_dots = Obj.magic _2 in
17476 let _1 : 'tv_stm_dots = Obj.magic _1 in
17477 let _startpos = _startpos__1_ in
17478 let _endpos = _endpos__2_ in
17479 let _v : 'tv_nest_after_exp =
17480 # 1627 "parser_cocci_menhir.mly"
17481 (_1::_2)
17482 # 17483 "parser_cocci_menhir.ml"
17483 in
17484 _menhir_env.MenhirLib.EngineTypes.stack <- {
17485 MenhirLib.EngineTypes.state = _menhir_s;
17486 MenhirLib.EngineTypes.semv = Obj.repr _v;
17487 MenhirLib.EngineTypes.startp = _startpos;
17488 MenhirLib.EngineTypes.endp = _endpos;
17489 MenhirLib.EngineTypes.next = _menhir_stack;
17490 });
17491 (fun _menhir_env ->
17492 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17493 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
17494 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
17495 let _endpos = _startpos in
17496 let _v : 'tv_nest_after_stm =
17497 # 1621 "parser_cocci_menhir.mly"
17498 ([])
17499 # 17500 "parser_cocci_menhir.ml"
17500 in
17501 _menhir_env.MenhirLib.EngineTypes.stack <- {
17502 MenhirLib.EngineTypes.state = _menhir_s;
17503 MenhirLib.EngineTypes.semv = Obj.repr _v;
17504 MenhirLib.EngineTypes.startp = _startpos;
17505 MenhirLib.EngineTypes.endp = _endpos;
17506 MenhirLib.EngineTypes.next = _menhir_stack;
17507 });
17508 (fun _menhir_env ->
17509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17510 let {
17511 MenhirLib.EngineTypes.semv = _2;
17512 MenhirLib.EngineTypes.startp = _startpos__2_;
17513 MenhirLib.EngineTypes.endp = _endpos__2_;
17514 MenhirLib.EngineTypes.next = {
17515 MenhirLib.EngineTypes.state = _menhir_s;
17516 MenhirLib.EngineTypes.semv = _1;
17517 MenhirLib.EngineTypes.startp = _startpos__1_;
17518 MenhirLib.EngineTypes.endp = _endpos__1_;
17519 MenhirLib.EngineTypes.next = _menhir_stack;
17520 };
17521 } = _menhir_stack in
17522 let _2 : 'tv_nest_after_dots = Obj.magic _2 in
17523 let _1 : 'tv_stm_dots = Obj.magic _1 in
17524 let _startpos = _startpos__1_ in
17525 let _endpos = _endpos__2_ in
17526 let _v : 'tv_nest_after_stm =
17527 # 1622 "parser_cocci_menhir.mly"
17528 (_1::_2)
17529 # 17530 "parser_cocci_menhir.ml"
17530 in
17531 _menhir_env.MenhirLib.EngineTypes.stack <- {
17532 MenhirLib.EngineTypes.state = _menhir_s;
17533 MenhirLib.EngineTypes.semv = Obj.repr _v;
17534 MenhirLib.EngineTypes.startp = _startpos;
17535 MenhirLib.EngineTypes.endp = _endpos;
17536 MenhirLib.EngineTypes.next = _menhir_stack;
17537 });
17538 (fun _menhir_env ->
17539 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17540 let {
17541 MenhirLib.EngineTypes.semv = _2;
17542 MenhirLib.EngineTypes.startp = _startpos__2_;
17543 MenhirLib.EngineTypes.endp = _endpos__2_;
17544 MenhirLib.EngineTypes.next = {
17545 MenhirLib.EngineTypes.state = _menhir_s;
17546 MenhirLib.EngineTypes.semv = _1;
17547 MenhirLib.EngineTypes.startp = _startpos__1_;
17548 MenhirLib.EngineTypes.endp = _endpos__1_;
17549 MenhirLib.EngineTypes.next = _menhir_stack;
17550 };
17551 } = _menhir_stack in
17552 let _2 : 'tv_nest_after_stm = Obj.magic _2 in
17553 let _1 : 'tv_decl_statement = Obj.magic _1 in
17554 let _startpos = _startpos__1_ in
17555 let _endpos = _endpos__2_ in
17556 let _v : 'tv_nest_after_stm =
17557 # 1623 "parser_cocci_menhir.mly"
17558 (_1@_2)
17559 # 17560 "parser_cocci_menhir.ml"
17560 in
17561 _menhir_env.MenhirLib.EngineTypes.stack <- {
17562 MenhirLib.EngineTypes.state = _menhir_s;
17563 MenhirLib.EngineTypes.semv = Obj.repr _v;
17564 MenhirLib.EngineTypes.startp = _startpos;
17565 MenhirLib.EngineTypes.endp = _endpos;
17566 MenhirLib.EngineTypes.next = _menhir_stack;
17567 });
17568 (fun _menhir_env ->
17569 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17570 let {
17571 MenhirLib.EngineTypes.semv = c;
17572 MenhirLib.EngineTypes.startp = _startpos_c_;
17573 MenhirLib.EngineTypes.endp = _endpos_c_;
17574 MenhirLib.EngineTypes.next = {
17575 MenhirLib.EngineTypes.semv = e;
17576 MenhirLib.EngineTypes.startp = _startpos_e_;
17577 MenhirLib.EngineTypes.endp = _endpos_e_;
17578 MenhirLib.EngineTypes.next = {
17579 MenhirLib.EngineTypes.semv = w;
17580 MenhirLib.EngineTypes.startp = _startpos_w_;
17581 MenhirLib.EngineTypes.endp = _endpos_w_;
17582 MenhirLib.EngineTypes.next = {
17583 MenhirLib.EngineTypes.state = _menhir_s;
17584 MenhirLib.EngineTypes.semv = _1;
17585 MenhirLib.EngineTypes.startp = _startpos__1_;
17586 MenhirLib.EngineTypes.endp = _endpos__1_;
17587 MenhirLib.EngineTypes.next = _menhir_stack;
17588 };
17589 };
17590 };
17591 } = _menhir_stack in
17592 let c : (
17593 # 72 "parser_cocci_menhir.mly"
17594 (Data.clt)
17595 # 17596 "parser_cocci_menhir.ml"
17596 ) = Obj.magic c in
17597 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
17598 let w : 'tv_option_whenexp_ = Obj.magic w in
17599 let _1 : (
17600 # 72 "parser_cocci_menhir.mly"
17601 (Data.clt)
17602 # 17603 "parser_cocci_menhir.ml"
17603 ) = Obj.magic _1 in
17604 let _startpos = _startpos__1_ in
17605 let _endpos = _endpos_c_ in
17606 let _v : 'tv_nest_expressions =
17607 # 1148 "parser_cocci_menhir.mly"
17608 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
17609 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
17610 P.clt2mcode "...>" c, w, false)) )
17611 # 17612 "parser_cocci_menhir.ml"
17612 in
17613 _menhir_env.MenhirLib.EngineTypes.stack <- {
17614 MenhirLib.EngineTypes.state = _menhir_s;
17615 MenhirLib.EngineTypes.semv = Obj.repr _v;
17616 MenhirLib.EngineTypes.startp = _startpos;
17617 MenhirLib.EngineTypes.endp = _endpos;
17618 MenhirLib.EngineTypes.next = _menhir_stack;
17619 });
17620 (fun _menhir_env ->
17621 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17622 let {
17623 MenhirLib.EngineTypes.semv = c;
17624 MenhirLib.EngineTypes.startp = _startpos_c_;
17625 MenhirLib.EngineTypes.endp = _endpos_c_;
17626 MenhirLib.EngineTypes.next = {
17627 MenhirLib.EngineTypes.semv = e;
17628 MenhirLib.EngineTypes.startp = _startpos_e_;
17629 MenhirLib.EngineTypes.endp = _endpos_e_;
17630 MenhirLib.EngineTypes.next = {
17631 MenhirLib.EngineTypes.semv = w;
17632 MenhirLib.EngineTypes.startp = _startpos_w_;
17633 MenhirLib.EngineTypes.endp = _endpos_w_;
17634 MenhirLib.EngineTypes.next = {
17635 MenhirLib.EngineTypes.state = _menhir_s;
17636 MenhirLib.EngineTypes.semv = _1;
17637 MenhirLib.EngineTypes.startp = _startpos__1_;
17638 MenhirLib.EngineTypes.endp = _endpos__1_;
17639 MenhirLib.EngineTypes.next = _menhir_stack;
17640 };
17641 };
17642 };
17643 } = _menhir_stack in
17644 let c : (
17645 # 72 "parser_cocci_menhir.mly"
17646 (Data.clt)
17647 # 17648 "parser_cocci_menhir.ml"
17648 ) = Obj.magic c in
17649 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
17650 let w : 'tv_option_whenexp_ = Obj.magic w in
17651 let _1 : (
17652 # 72 "parser_cocci_menhir.mly"
17653 (Data.clt)
17654 # 17655 "parser_cocci_menhir.ml"
17655 ) = Obj.magic _1 in
17656 let _startpos = _startpos__1_ in
17657 let _endpos = _endpos_c_ in
17658 let _v : 'tv_nest_expressions =
17659 # 1152 "parser_cocci_menhir.mly"
17660 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
17661 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
17662 P.clt2mcode "...+>" c, w, true)) )
17663 # 17664 "parser_cocci_menhir.ml"
17664 in
17665 _menhir_env.MenhirLib.EngineTypes.stack <- {
17666 MenhirLib.EngineTypes.state = _menhir_s;
17667 MenhirLib.EngineTypes.semv = Obj.repr _v;
17668 MenhirLib.EngineTypes.startp = _startpos;
17669 MenhirLib.EngineTypes.endp = _endpos;
17670 MenhirLib.EngineTypes.next = _menhir_stack;
17671 });
17672 (fun _menhir_env ->
17673 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17674 let {
17675 MenhirLib.EngineTypes.state = _menhir_s;
17676 MenhirLib.EngineTypes.semv = _1;
17677 MenhirLib.EngineTypes.startp = _startpos__1_;
17678 MenhirLib.EngineTypes.endp = _endpos__1_;
17679 MenhirLib.EngineTypes.next = _menhir_stack;
17680 } = _menhir_stack in
17681 let _1 : 'tv_nest_after_dots = Obj.magic _1 in
17682 let _startpos = _startpos__1_ in
17683 let _endpos = _endpos__1_ in
17684 let _v : 'tv_nest_start =
17685 # 1613 "parser_cocci_menhir.mly"
17686 ( Ast0.wrap(Ast0.DOTS(_1)) )
17687 # 17688 "parser_cocci_menhir.ml"
17688 in
17689 _menhir_env.MenhirLib.EngineTypes.stack <- {
17690 MenhirLib.EngineTypes.state = _menhir_s;
17691 MenhirLib.EngineTypes.semv = Obj.repr _v;
17692 MenhirLib.EngineTypes.startp = _startpos;
17693 MenhirLib.EngineTypes.endp = _endpos;
17694 MenhirLib.EngineTypes.next = _menhir_stack;
17695 });
17696 (fun _menhir_env ->
17697 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17698 let {
17699 MenhirLib.EngineTypes.state = _menhir_s;
17700 MenhirLib.EngineTypes.startp = _startpos__1_;
17701 MenhirLib.EngineTypes.endp = _endpos__1_;
17702 MenhirLib.EngineTypes.next = _menhir_stack;
17703 } = _menhir_stack in
17704 let _startpos = _startpos__1_ in
17705 let _endpos = _endpos__1_ in
17706 let _v : (
17707 # 167 "parser_cocci_menhir.mly"
17708 (unit)
17709 # 17710 "parser_cocci_menhir.ml"
17710 ) =
17711 # 1760 "parser_cocci_menhir.mly"
17712 ( () )
17713 # 17714 "parser_cocci_menhir.ml"
17714 in
17715 _menhir_env.MenhirLib.EngineTypes.stack <- {
17716 MenhirLib.EngineTypes.state = _menhir_s;
17717 MenhirLib.EngineTypes.semv = Obj.repr _v;
17718 MenhirLib.EngineTypes.startp = _startpos;
17719 MenhirLib.EngineTypes.endp = _endpos;
17720 MenhirLib.EngineTypes.next = _menhir_stack;
17721 });
17722 (fun _menhir_env ->
17723 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17724 let {
17725 MenhirLib.EngineTypes.startp = _startpos__2_;
17726 MenhirLib.EngineTypes.endp = _endpos__2_;
17727 MenhirLib.EngineTypes.next = {
17728 MenhirLib.EngineTypes.state = _menhir_s;
17729 MenhirLib.EngineTypes.startp = _startpos__1_;
17730 MenhirLib.EngineTypes.endp = _endpos__1_;
17731 MenhirLib.EngineTypes.next = _menhir_stack;
17732 };
17733 } = _menhir_stack in
17734 let _startpos = _startpos__1_ in
17735 let _endpos = _endpos__2_ in
17736 let _v : (
17737 # 167 "parser_cocci_menhir.mly"
17738 (unit)
17739 # 17740 "parser_cocci_menhir.ml"
17740 ) =
17741 # 1761 "parser_cocci_menhir.mly"
17742 ( () )
17743 # 17744 "parser_cocci_menhir.ml"
17744 in
17745 _menhir_env.MenhirLib.EngineTypes.stack <- {
17746 MenhirLib.EngineTypes.state = _menhir_s;
17747 MenhirLib.EngineTypes.semv = Obj.repr _v;
17748 MenhirLib.EngineTypes.startp = _startpos;
17749 MenhirLib.EngineTypes.endp = _endpos;
17750 MenhirLib.EngineTypes.next = _menhir_stack;
17751 });
17752 (fun _menhir_env ->
17753 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17754 let {
17755 MenhirLib.EngineTypes.state = _menhir_s;
17756 MenhirLib.EngineTypes.startp = _startpos__1_;
17757 MenhirLib.EngineTypes.endp = _endpos__1_;
17758 MenhirLib.EngineTypes.next = _menhir_stack;
17759 } = _menhir_stack in
17760 let _startpos = _startpos__1_ in
17761 let _endpos = _endpos__1_ in
17762 let _v : (
17763 # 167 "parser_cocci_menhir.mly"
17764 (unit)
17765 # 17766 "parser_cocci_menhir.ml"
17766 ) =
17767 # 1762 "parser_cocci_menhir.mly"
17768 ( () )
17769 # 17770 "parser_cocci_menhir.ml"
17770 in
17771 _menhir_env.MenhirLib.EngineTypes.stack <- {
17772 MenhirLib.EngineTypes.state = _menhir_s;
17773 MenhirLib.EngineTypes.semv = Obj.repr _v;
17774 MenhirLib.EngineTypes.startp = _startpos;
17775 MenhirLib.EngineTypes.endp = _endpos;
17776 MenhirLib.EngineTypes.next = _menhir_stack;
17777 });
17778 (fun _menhir_env ->
17779 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17780 let {
17781 MenhirLib.EngineTypes.semv = dg;
17782 MenhirLib.EngineTypes.startp = _startpos_dg_;
17783 MenhirLib.EngineTypes.endp = _endpos_dg_;
17784 MenhirLib.EngineTypes.next = {
17785 MenhirLib.EngineTypes.state = _menhir_s;
17786 MenhirLib.EngineTypes.semv = g;
17787 MenhirLib.EngineTypes.startp = _startpos_g_;
17788 MenhirLib.EngineTypes.endp = _endpos_g_;
17789 MenhirLib.EngineTypes.next = _menhir_stack;
17790 };
17791 } = _menhir_stack in
17792 let dg : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic dg in
17793 let g : 'tv_dexpr = Obj.magic g in
17794 let _startpos = _startpos_g_ in
17795 let _endpos = _endpos_dg_ in
17796 let _v : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ =
17797 # 1316 "parser_cocci_menhir.mly"
17798 ( function dot_builder ->
17799 g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) )
17800 # 17801 "parser_cocci_menhir.ml"
17801 in
17802 _menhir_env.MenhirLib.EngineTypes.stack <- {
17803 MenhirLib.EngineTypes.state = _menhir_s;
17804 MenhirLib.EngineTypes.semv = Obj.repr _v;
17805 MenhirLib.EngineTypes.startp = _startpos;
17806 MenhirLib.EngineTypes.endp = _endpos;
17807 MenhirLib.EngineTypes.next = _menhir_stack;
17808 });
17809 (fun _menhir_env ->
17810 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17811 let {
17812 MenhirLib.EngineTypes.state = _menhir_s;
17813 MenhirLib.EngineTypes.semv = x;
17814 MenhirLib.EngineTypes.startp = _startpos_x_;
17815 MenhirLib.EngineTypes.endp = _endpos_x_;
17816 MenhirLib.EngineTypes.next = _menhir_stack;
17817 } = _menhir_stack in
17818 let x : (
17819 # 98 "parser_cocci_menhir.mly"
17820 (Data.clt)
17821 # 17822 "parser_cocci_menhir.ml"
17822 ) = Obj.magic x in
17823 let _startpos = _startpos_x_ in
17824 let _endpos = _endpos_x_ in
17825 let _v : 'tv_nonempty_list_TMul_ =
17826 # 124 "standard.mly"
17827 ( [ x ] )
17828 # 17829 "parser_cocci_menhir.ml"
17829 in
17830 _menhir_env.MenhirLib.EngineTypes.stack <- {
17831 MenhirLib.EngineTypes.state = _menhir_s;
17832 MenhirLib.EngineTypes.semv = Obj.repr _v;
17833 MenhirLib.EngineTypes.startp = _startpos;
17834 MenhirLib.EngineTypes.endp = _endpos;
17835 MenhirLib.EngineTypes.next = _menhir_stack;
17836 });
17837 (fun _menhir_env ->
17838 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17839 let {
17840 MenhirLib.EngineTypes.semv = xs;
17841 MenhirLib.EngineTypes.startp = _startpos_xs_;
17842 MenhirLib.EngineTypes.endp = _endpos_xs_;
17843 MenhirLib.EngineTypes.next = {
17844 MenhirLib.EngineTypes.state = _menhir_s;
17845 MenhirLib.EngineTypes.semv = x;
17846 MenhirLib.EngineTypes.startp = _startpos_x_;
17847 MenhirLib.EngineTypes.endp = _endpos_x_;
17848 MenhirLib.EngineTypes.next = _menhir_stack;
17849 };
17850 } = _menhir_stack in
17851 let xs : 'tv_nonempty_list_TMul_ = Obj.magic xs in
17852 let x : (
17853 # 98 "parser_cocci_menhir.mly"
17854 (Data.clt)
17855 # 17856 "parser_cocci_menhir.ml"
17856 ) = Obj.magic x in
17857 let _startpos = _startpos_x_ in
17858 let _endpos = _endpos_xs_ in
17859 let _v : 'tv_nonempty_list_TMul_ =
17860 # 126 "standard.mly"
17861 ( x :: xs )
17862 # 17863 "parser_cocci_menhir.ml"
17863 in
17864 _menhir_env.MenhirLib.EngineTypes.stack <- {
17865 MenhirLib.EngineTypes.state = _menhir_s;
17866 MenhirLib.EngineTypes.semv = Obj.repr _v;
17867 MenhirLib.EngineTypes.startp = _startpos;
17868 MenhirLib.EngineTypes.endp = _endpos;
17869 MenhirLib.EngineTypes.next = _menhir_stack;
17870 });
17871 (fun _menhir_env ->
17872 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17873 let {
17874 MenhirLib.EngineTypes.semv = i;
17875 MenhirLib.EngineTypes.startp = _startpos_i_;
17876 MenhirLib.EngineTypes.endp = _endpos_i_;
17877 MenhirLib.EngineTypes.next = {
17878 MenhirLib.EngineTypes.state = _menhir_s;
17879 MenhirLib.EngineTypes.startp = _startpos__1_;
17880 MenhirLib.EngineTypes.endp = _endpos__1_;
17881 MenhirLib.EngineTypes.next = _menhir_stack;
17882 };
17883 } = _menhir_stack in
17884 let i : 'tv_ident_or_const = Obj.magic i in
17885 let _startpos = _startpos__1_ in
17886 let _endpos = _endpos_i_ in
17887 let _v : 'tv_not_ceq =
17888 # 1362 "parser_cocci_menhir.mly"
17889 ( (if !Data.in_iso
17890 then failwith "constraints not allowed in iso file");
17891 [i] )
17892 # 17893 "parser_cocci_menhir.ml"
17893 in
17894 _menhir_env.MenhirLib.EngineTypes.stack <- {
17895 MenhirLib.EngineTypes.state = _menhir_s;
17896 MenhirLib.EngineTypes.semv = Obj.repr _v;
17897 MenhirLib.EngineTypes.startp = _startpos;
17898 MenhirLib.EngineTypes.endp = _endpos;
17899 MenhirLib.EngineTypes.next = _menhir_stack;
17900 });
17901 (fun _menhir_env ->
17902 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17903 let {
17904 MenhirLib.EngineTypes.startp = _startpos__4_;
17905 MenhirLib.EngineTypes.endp = _endpos__4_;
17906 MenhirLib.EngineTypes.next = {
17907 MenhirLib.EngineTypes.semv = l;
17908 MenhirLib.EngineTypes.startp = _startpos_l_;
17909 MenhirLib.EngineTypes.endp = _endpos_l_;
17910 MenhirLib.EngineTypes.next = {
17911 MenhirLib.EngineTypes.startp = _startpos__2_;
17912 MenhirLib.EngineTypes.endp = _endpos__2_;
17913 MenhirLib.EngineTypes.next = {
17914 MenhirLib.EngineTypes.state = _menhir_s;
17915 MenhirLib.EngineTypes.startp = _startpos__1_;
17916 MenhirLib.EngineTypes.endp = _endpos__1_;
17917 MenhirLib.EngineTypes.next = _menhir_stack;
17918 };
17919 };
17920 };
17921 } = _menhir_stack in
17922 let l : 'tv_comma_list_ident_or_const_ = Obj.magic l in
17923 let _startpos = _startpos__1_ in
17924 let _endpos = _endpos__4_ in
17925 let _v : 'tv_not_ceq =
17926 # 1366 "parser_cocci_menhir.mly"
17927 ( (if !Data.in_iso
17928 then failwith "constraints not allowed in iso file");
17929 l )
17930 # 17931 "parser_cocci_menhir.ml"
17931 in
17932 _menhir_env.MenhirLib.EngineTypes.stack <- {
17933 MenhirLib.EngineTypes.state = _menhir_s;
17934 MenhirLib.EngineTypes.semv = Obj.repr _v;
17935 MenhirLib.EngineTypes.startp = _startpos;
17936 MenhirLib.EngineTypes.endp = _endpos;
17937 MenhirLib.EngineTypes.next = _menhir_stack;
17938 });
17939 (fun _menhir_env ->
17940 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17941 let {
17942 MenhirLib.EngineTypes.semv = i;
17943 MenhirLib.EngineTypes.startp = _startpos_i_;
17944 MenhirLib.EngineTypes.endp = _endpos_i_;
17945 MenhirLib.EngineTypes.next = {
17946 MenhirLib.EngineTypes.state = _menhir_s;
17947 MenhirLib.EngineTypes.startp = _startpos__1_;
17948 MenhirLib.EngineTypes.endp = _endpos__1_;
17949 MenhirLib.EngineTypes.next = _menhir_stack;
17950 };
17951 } = _menhir_stack in
17952 let i : 'tv_pure_ident = Obj.magic i in
17953 let _startpos = _startpos__1_ in
17954 let _endpos = _endpos_i_ in
17955 let _v : 'tv_not_eq =
17956 # 1339 "parser_cocci_menhir.mly"
17957 ( (if !Data.in_iso
17958 then failwith "constraints not allowed in iso file");
17959 [Ast0.wrap(Ast0.Id(P.id2mcode i))] )
17960 # 17961 "parser_cocci_menhir.ml"
17961 in
17962 _menhir_env.MenhirLib.EngineTypes.stack <- {
17963 MenhirLib.EngineTypes.state = _menhir_s;
17964 MenhirLib.EngineTypes.semv = Obj.repr _v;
17965 MenhirLib.EngineTypes.startp = _startpos;
17966 MenhirLib.EngineTypes.endp = _endpos;
17967 MenhirLib.EngineTypes.next = _menhir_stack;
17968 });
17969 (fun _menhir_env ->
17970 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17971 let {
17972 MenhirLib.EngineTypes.startp = _startpos__4_;
17973 MenhirLib.EngineTypes.endp = _endpos__4_;
17974 MenhirLib.EngineTypes.next = {
17975 MenhirLib.EngineTypes.semv = l;
17976 MenhirLib.EngineTypes.startp = _startpos_l_;
17977 MenhirLib.EngineTypes.endp = _endpos_l_;
17978 MenhirLib.EngineTypes.next = {
17979 MenhirLib.EngineTypes.startp = _startpos__2_;
17980 MenhirLib.EngineTypes.endp = _endpos__2_;
17981 MenhirLib.EngineTypes.next = {
17982 MenhirLib.EngineTypes.state = _menhir_s;
17983 MenhirLib.EngineTypes.startp = _startpos__1_;
17984 MenhirLib.EngineTypes.endp = _endpos__1_;
17985 MenhirLib.EngineTypes.next = _menhir_stack;
17986 };
17987 };
17988 };
17989 } = _menhir_stack in
17990 let l : 'tv_comma_list_pure_ident_ = Obj.magic l in
17991 let _startpos = _startpos__1_ in
17992 let _endpos = _endpos__4_ in
17993 let _v : 'tv_not_eq =
17994 # 1343 "parser_cocci_menhir.mly"
17995 ( (if !Data.in_iso
17996 then failwith "constraints not allowed in iso file");
17997 List.map (function i -> Ast0.wrap(Ast0.Id(P.id2mcode i))) l )
17998 # 17999 "parser_cocci_menhir.ml"
17999 in
18000 _menhir_env.MenhirLib.EngineTypes.stack <- {
18001 MenhirLib.EngineTypes.state = _menhir_s;
18002 MenhirLib.EngineTypes.semv = Obj.repr _v;
18003 MenhirLib.EngineTypes.startp = _startpos;
18004 MenhirLib.EngineTypes.endp = _endpos;
18005 MenhirLib.EngineTypes.next = _menhir_stack;
18006 });
18007 (fun _menhir_env ->
18008 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18009 let {
18010 MenhirLib.EngineTypes.semv = i;
18011 MenhirLib.EngineTypes.startp = _startpos_i_;
18012 MenhirLib.EngineTypes.endp = _endpos_i_;
18013 MenhirLib.EngineTypes.next = {
18014 MenhirLib.EngineTypes.state = _menhir_s;
18015 MenhirLib.EngineTypes.startp = _startpos__1_;
18016 MenhirLib.EngineTypes.endp = _endpos__1_;
18017 MenhirLib.EngineTypes.next = _menhir_stack;
18018 };
18019 } = _menhir_stack in
18020 let i : 'tv_pure_ident = Obj.magic i in
18021 let _startpos = _startpos__1_ in
18022 let _endpos = _endpos_i_ in
18023 let _v : 'tv_not_eqe =
18024 # 1349 "parser_cocci_menhir.mly"
18025 ( (if !Data.in_iso
18026 then failwith "constraints not allowed in iso file");
18027 [Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))] )
18028 # 18029 "parser_cocci_menhir.ml"
18029 in
18030 _menhir_env.MenhirLib.EngineTypes.stack <- {
18031 MenhirLib.EngineTypes.state = _menhir_s;
18032 MenhirLib.EngineTypes.semv = Obj.repr _v;
18033 MenhirLib.EngineTypes.startp = _startpos;
18034 MenhirLib.EngineTypes.endp = _endpos;
18035 MenhirLib.EngineTypes.next = _menhir_stack;
18036 });
18037 (fun _menhir_env ->
18038 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18039 let {
18040 MenhirLib.EngineTypes.startp = _startpos__4_;
18041 MenhirLib.EngineTypes.endp = _endpos__4_;
18042 MenhirLib.EngineTypes.next = {
18043 MenhirLib.EngineTypes.semv = l;
18044 MenhirLib.EngineTypes.startp = _startpos_l_;
18045 MenhirLib.EngineTypes.endp = _endpos_l_;
18046 MenhirLib.EngineTypes.next = {
18047 MenhirLib.EngineTypes.startp = _startpos__2_;
18048 MenhirLib.EngineTypes.endp = _endpos__2_;
18049 MenhirLib.EngineTypes.next = {
18050 MenhirLib.EngineTypes.state = _menhir_s;
18051 MenhirLib.EngineTypes.startp = _startpos__1_;
18052 MenhirLib.EngineTypes.endp = _endpos__1_;
18053 MenhirLib.EngineTypes.next = _menhir_stack;
18054 };
18055 };
18056 };
18057 } = _menhir_stack in
18058 let l : 'tv_comma_list_pure_ident_ = Obj.magic l in
18059 let _startpos = _startpos__1_ in
18060 let _endpos = _endpos__4_ in
18061 let _v : 'tv_not_eqe =
18062 # 1353 "parser_cocci_menhir.mly"
18063 ( (if !Data.in_iso
18064 then failwith "constraints not allowed in iso file");
18065 List.map
18066 (function i ->
18067 Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))))
18068 l )
18069 # 18070 "parser_cocci_menhir.ml"
18070 in
18071 _menhir_env.MenhirLib.EngineTypes.stack <- {
18072 MenhirLib.EngineTypes.state = _menhir_s;
18073 MenhirLib.EngineTypes.semv = Obj.repr _v;
18074 MenhirLib.EngineTypes.startp = _startpos;
18075 MenhirLib.EngineTypes.endp = _endpos;
18076 MenhirLib.EngineTypes.next = _menhir_stack;
18077 });
18078 (fun _menhir_env ->
18079 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18080 let {
18081 MenhirLib.EngineTypes.semv = i;
18082 MenhirLib.EngineTypes.startp = _startpos_i_;
18083 MenhirLib.EngineTypes.endp = _endpos_i_;
18084 MenhirLib.EngineTypes.next = {
18085 MenhirLib.EngineTypes.state = _menhir_s;
18086 MenhirLib.EngineTypes.startp = _startpos__1_;
18087 MenhirLib.EngineTypes.endp = _endpos__1_;
18088 MenhirLib.EngineTypes.next = _menhir_stack;
18089 };
18090 } = _menhir_stack in
18091 let i : 'tv_meta_ident = Obj.magic i in
18092 let _startpos = _startpos__1_ in
18093 let _endpos = _endpos_i_ in
18094 let _v : 'tv_not_pos =
18095 # 1378 "parser_cocci_menhir.mly"
18096 ( (if !Data.in_iso
18097 then failwith "constraints not allowed in iso file");
18098 match i with
18099 (None,_) -> failwith "constraint must be an inherited variable"
18100 | (Some rule,name) ->
18101 let i = (rule,name) in
18102 P.check_meta(Ast.MetaPosDecl(Ast.NONE,i));
18103 [i] )
18104 # 18105 "parser_cocci_menhir.ml"
18105 in
18106 _menhir_env.MenhirLib.EngineTypes.stack <- {
18107 MenhirLib.EngineTypes.state = _menhir_s;
18108 MenhirLib.EngineTypes.semv = Obj.repr _v;
18109 MenhirLib.EngineTypes.startp = _startpos;
18110 MenhirLib.EngineTypes.endp = _endpos;
18111 MenhirLib.EngineTypes.next = _menhir_stack;
18112 });
18113 (fun _menhir_env ->
18114 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18115 let {
18116 MenhirLib.EngineTypes.startp = _startpos__4_;
18117 MenhirLib.EngineTypes.endp = _endpos__4_;
18118 MenhirLib.EngineTypes.next = {
18119 MenhirLib.EngineTypes.semv = l;
18120 MenhirLib.EngineTypes.startp = _startpos_l_;
18121 MenhirLib.EngineTypes.endp = _endpos_l_;
18122 MenhirLib.EngineTypes.next = {
18123 MenhirLib.EngineTypes.startp = _startpos__2_;
18124 MenhirLib.EngineTypes.endp = _endpos__2_;
18125 MenhirLib.EngineTypes.next = {
18126 MenhirLib.EngineTypes.state = _menhir_s;
18127 MenhirLib.EngineTypes.startp = _startpos__1_;
18128 MenhirLib.EngineTypes.endp = _endpos__1_;
18129 MenhirLib.EngineTypes.next = _menhir_stack;
18130 };
18131 };
18132 };
18133 } = _menhir_stack in
18134 let l : 'tv_comma_list_meta_ident_ = Obj.magic l in
18135 let _startpos = _startpos__1_ in
18136 let _endpos = _endpos__4_ in
18137 let _v : 'tv_not_pos =
18138 # 1387 "parser_cocci_menhir.mly"
18139 ( (if !Data.in_iso
18140 then failwith "constraints not allowed in iso file");
18141 List.map
18142 (function
18143 (None,_) ->
18144 failwith "constraint must be an inherited variable"
18145 | (Some rule,name) ->
18146 let i = (rule,name) in
18147 P.check_meta(Ast.MetaPosDecl(Ast.NONE,i));
18148 i)
18149 l )
18150 # 18151 "parser_cocci_menhir.ml"
18151 in
18152 _menhir_env.MenhirLib.EngineTypes.stack <- {
18153 MenhirLib.EngineTypes.state = _menhir_s;
18154 MenhirLib.EngineTypes.semv = Obj.repr _v;
18155 MenhirLib.EngineTypes.startp = _startpos;
18156 MenhirLib.EngineTypes.endp = _endpos;
18157 MenhirLib.EngineTypes.next = _menhir_stack;
18158 });
18159 (fun _menhir_env ->
18160 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18161 let {
18162 MenhirLib.EngineTypes.state = _menhir_s;
18163 MenhirLib.EngineTypes.semv = _1;
18164 MenhirLib.EngineTypes.startp = _startpos__1_;
18165 MenhirLib.EngineTypes.endp = _endpos__1_;
18166 MenhirLib.EngineTypes.next = _menhir_stack;
18167 } = _menhir_stack in
18168 let _1 : 'tv_decl = Obj.magic _1 in
18169 let _startpos = _startpos__1_ in
18170 let _endpos = _endpos__1_ in
18171 let _v : 'tv_one_dec_decl_ =
18172 # 1458 "parser_cocci_menhir.mly"
18173 ( _1 )
18174 # 18175 "parser_cocci_menhir.ml"
18175 in
18176 _menhir_env.MenhirLib.EngineTypes.stack <- {
18177 MenhirLib.EngineTypes.state = _menhir_s;
18178 MenhirLib.EngineTypes.semv = Obj.repr _v;
18179 MenhirLib.EngineTypes.startp = _startpos;
18180 MenhirLib.EngineTypes.endp = _endpos;
18181 MenhirLib.EngineTypes.next = _menhir_stack;
18182 });
18183 (fun _menhir_env ->
18184 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18185 let {
18186 MenhirLib.EngineTypes.state = _menhir_s;
18187 MenhirLib.EngineTypes.semv = _1;
18188 MenhirLib.EngineTypes.startp = _startpos__1_;
18189 MenhirLib.EngineTypes.endp = _endpos__1_;
18190 MenhirLib.EngineTypes.next = _menhir_stack;
18191 } = _menhir_stack in
18192 let _1 : (
18193 # 65 "parser_cocci_menhir.mly"
18194 (Parse_aux.list_info)
18195 # 18196 "parser_cocci_menhir.ml"
18196 ) = Obj.magic _1 in
18197 let _startpos = _startpos__1_ in
18198 let _endpos = _endpos__1_ in
18199 let _v : 'tv_one_dec_decl_ =
18200 # 1460 "parser_cocci_menhir.mly"
18201 ( let (nm,lenname,pure,clt) = _1 in
18202 let nm = P.clt2mcode nm clt in
18203 let lenname =
18204 match lenname with
18205 Some nm -> Some(P.clt2mcode nm clt)
18206 | None -> None in
18207 Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
18208 # 18209 "parser_cocci_menhir.ml"
18209 in
18210 _menhir_env.MenhirLib.EngineTypes.stack <- {
18211 MenhirLib.EngineTypes.state = _menhir_s;
18212 MenhirLib.EngineTypes.semv = Obj.repr _v;
18213 MenhirLib.EngineTypes.startp = _startpos;
18214 MenhirLib.EngineTypes.endp = _endpos;
18215 MenhirLib.EngineTypes.next = _menhir_stack;
18216 });
18217 (fun _menhir_env ->
18218 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18219 let {
18220 MenhirLib.EngineTypes.state = _menhir_s;
18221 MenhirLib.EngineTypes.semv = _1;
18222 MenhirLib.EngineTypes.startp = _startpos__1_;
18223 MenhirLib.EngineTypes.endp = _endpos__1_;
18224 MenhirLib.EngineTypes.next = _menhir_stack;
18225 } = _menhir_stack in
18226 let _1 : 'tv_name_opt_decl = Obj.magic _1 in
18227 let _startpos = _startpos__1_ in
18228 let _endpos = _endpos__1_ in
18229 let _v : 'tv_one_dec_name_opt_decl_ =
18230 # 1458 "parser_cocci_menhir.mly"
18231 ( _1 )
18232 # 18233 "parser_cocci_menhir.ml"
18233 in
18234 _menhir_env.MenhirLib.EngineTypes.stack <- {
18235 MenhirLib.EngineTypes.state = _menhir_s;
18236 MenhirLib.EngineTypes.semv = Obj.repr _v;
18237 MenhirLib.EngineTypes.startp = _startpos;
18238 MenhirLib.EngineTypes.endp = _endpos;
18239 MenhirLib.EngineTypes.next = _menhir_stack;
18240 });
18241 (fun _menhir_env ->
18242 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18243 let {
18244 MenhirLib.EngineTypes.state = _menhir_s;
18245 MenhirLib.EngineTypes.semv = _1;
18246 MenhirLib.EngineTypes.startp = _startpos__1_;
18247 MenhirLib.EngineTypes.endp = _endpos__1_;
18248 MenhirLib.EngineTypes.next = _menhir_stack;
18249 } = _menhir_stack in
18250 let _1 : (
18251 # 65 "parser_cocci_menhir.mly"
18252 (Parse_aux.list_info)
18253 # 18254 "parser_cocci_menhir.ml"
18254 ) = Obj.magic _1 in
18255 let _startpos = _startpos__1_ in
18256 let _endpos = _endpos__1_ in
18257 let _v : 'tv_one_dec_name_opt_decl_ =
18258 # 1460 "parser_cocci_menhir.mly"
18259 ( let (nm,lenname,pure,clt) = _1 in
18260 let nm = P.clt2mcode nm clt in
18261 let lenname =
18262 match lenname with
18263 Some nm -> Some(P.clt2mcode nm clt)
18264 | None -> None in
18265 Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
18266 # 18267 "parser_cocci_menhir.ml"
18267 in
18268 _menhir_env.MenhirLib.EngineTypes.stack <- {
18269 MenhirLib.EngineTypes.state = _menhir_s;
18270 MenhirLib.EngineTypes.semv = Obj.repr _v;
18271 MenhirLib.EngineTypes.startp = _startpos;
18272 MenhirLib.EngineTypes.endp = _endpos;
18273 MenhirLib.EngineTypes.next = _menhir_stack;
18274 });
18275 (fun _menhir_env ->
18276 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18277 let {
18278 MenhirLib.EngineTypes.semv = pv;
18279 MenhirLib.EngineTypes.startp = _startpos_pv_;
18280 MenhirLib.EngineTypes.endp = _endpos_pv_;
18281 MenhirLib.EngineTypes.next = {
18282 MenhirLib.EngineTypes.state = _menhir_s;
18283 MenhirLib.EngineTypes.semv = t;
18284 MenhirLib.EngineTypes.startp = _startpos_t_;
18285 MenhirLib.EngineTypes.endp = _endpos_t_;
18286 MenhirLib.EngineTypes.next = _menhir_stack;
18287 };
18288 } = _menhir_stack in
18289 let pv : (
18290 # 106 "parser_cocci_menhir.mly"
18291 (Data.clt)
18292 # 18293 "parser_cocci_menhir.ml"
18293 ) = Obj.magic pv in
18294 let t : 'tv_ctype = Obj.magic t in
18295 let _startpos = _startpos_t_ in
18296 let _endpos = _endpos_pv_ in
18297 let _v : 'tv_one_decl_var =
18298 # 944 "parser_cocci_menhir.mly"
18299 ( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) )
18300 # 18301 "parser_cocci_menhir.ml"
18301 in
18302 _menhir_env.MenhirLib.EngineTypes.stack <- {
18303 MenhirLib.EngineTypes.state = _menhir_s;
18304 MenhirLib.EngineTypes.semv = Obj.repr _v;
18305 MenhirLib.EngineTypes.startp = _startpos;
18306 MenhirLib.EngineTypes.endp = _endpos;
18307 MenhirLib.EngineTypes.next = _menhir_stack;
18308 });
18309 (fun _menhir_env ->
18310 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18311 let {
18312 MenhirLib.EngineTypes.semv = pv;
18313 MenhirLib.EngineTypes.startp = _startpos_pv_;
18314 MenhirLib.EngineTypes.endp = _endpos_pv_;
18315 MenhirLib.EngineTypes.next = {
18316 MenhirLib.EngineTypes.semv = d;
18317 MenhirLib.EngineTypes.startp = _startpos_d_;
18318 MenhirLib.EngineTypes.endp = _endpos_d_;
18319 MenhirLib.EngineTypes.next = {
18320 MenhirLib.EngineTypes.state = _menhir_s;
18321 MenhirLib.EngineTypes.semv = t;
18322 MenhirLib.EngineTypes.startp = _startpos_t_;
18323 MenhirLib.EngineTypes.endp = _endpos_t_;
18324 MenhirLib.EngineTypes.next = _menhir_stack;
18325 };
18326 };
18327 } = _menhir_stack in
18328 let pv : (
18329 # 106 "parser_cocci_menhir.mly"
18330 (Data.clt)
18331 # 18332 "parser_cocci_menhir.ml"
18332 ) = Obj.magic pv in
18333 let d : 'tv_d_ident = Obj.magic d in
18334 let t : 'tv_ctype = Obj.magic t in
18335 let _startpos = _startpos_t_ in
18336 let _endpos = _endpos_pv_ in
18337 let _v : 'tv_one_decl_var = let s =
18338
18339 # 39 "standard.mly"
18340 ( None )
18341 # 18342 "parser_cocci_menhir.ml"
18342
18343 in
18344
18345 # 946 "parser_cocci_menhir.mly"
18346 ( let (id,fn) = d in
18347 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
18348 # 18349 "parser_cocci_menhir.ml"
18349 in
18350 _menhir_env.MenhirLib.EngineTypes.stack <- {
18351 MenhirLib.EngineTypes.state = _menhir_s;
18352 MenhirLib.EngineTypes.semv = Obj.repr _v;
18353 MenhirLib.EngineTypes.startp = _startpos;
18354 MenhirLib.EngineTypes.endp = _endpos;
18355 MenhirLib.EngineTypes.next = _menhir_stack;
18356 });
18357 (fun _menhir_env ->
18358 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18359 let {
18360 MenhirLib.EngineTypes.semv = pv;
18361 MenhirLib.EngineTypes.startp = _startpos_pv_;
18362 MenhirLib.EngineTypes.endp = _endpos_pv_;
18363 MenhirLib.EngineTypes.next = {
18364 MenhirLib.EngineTypes.semv = d;
18365 MenhirLib.EngineTypes.startp = _startpos_d_;
18366 MenhirLib.EngineTypes.endp = _endpos_d_;
18367 MenhirLib.EngineTypes.next = {
18368 MenhirLib.EngineTypes.semv = t;
18369 MenhirLib.EngineTypes.startp = _startpos_t_;
18370 MenhirLib.EngineTypes.endp = _endpos_t_;
18371 MenhirLib.EngineTypes.next = {
18372 MenhirLib.EngineTypes.state = _menhir_s;
18373 MenhirLib.EngineTypes.semv = x0;
18374 MenhirLib.EngineTypes.startp = _startpos_x0_;
18375 MenhirLib.EngineTypes.endp = _endpos_x0_;
18376 MenhirLib.EngineTypes.next = _menhir_stack;
18377 };
18378 };
18379 };
18380 } = _menhir_stack in
18381 let pv : (
18382 # 106 "parser_cocci_menhir.mly"
18383 (Data.clt)
18384 # 18385 "parser_cocci_menhir.ml"
18385 ) = Obj.magic pv in
18386 let d : 'tv_d_ident = Obj.magic d in
18387 let t : 'tv_ctype = Obj.magic t in
18388 let x0 : 'tv_storage = Obj.magic x0 in
18389 let _startpos = _startpos_x0_ in
18390 let _endpos = _endpos_pv_ in
18391 let _v : 'tv_one_decl_var = let s =
18392 let x = x0 in
18393
18394 # 41 "standard.mly"
18395 ( Some x )
18396 # 18397 "parser_cocci_menhir.ml"
18397
18398 in
18399
18400 # 946 "parser_cocci_menhir.mly"
18401 ( let (id,fn) = d in
18402 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
18403 # 18404 "parser_cocci_menhir.ml"
18404 in
18405 _menhir_env.MenhirLib.EngineTypes.stack <- {
18406 MenhirLib.EngineTypes.state = _menhir_s;
18407 MenhirLib.EngineTypes.semv = Obj.repr _v;
18408 MenhirLib.EngineTypes.startp = _startpos;
18409 MenhirLib.EngineTypes.endp = _endpos;
18410 MenhirLib.EngineTypes.next = _menhir_stack;
18411 });
18412 (fun _menhir_env ->
18413 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18414 let {
18415 MenhirLib.EngineTypes.state = _menhir_s;
18416 MenhirLib.EngineTypes.semv = f;
18417 MenhirLib.EngineTypes.startp = _startpos_f_;
18418 MenhirLib.EngineTypes.endp = _endpos_f_;
18419 MenhirLib.EngineTypes.next = _menhir_stack;
18420 } = _menhir_stack in
18421 let f : 'tv_funproto = Obj.magic f in
18422 let _startpos = _startpos_f_ in
18423 let _endpos = _endpos_f_ in
18424 let _v : 'tv_one_decl_var =
18425 # 948 "parser_cocci_menhir.mly"
18426 ( f )
18427 # 18428 "parser_cocci_menhir.ml"
18428 in
18429 _menhir_env.MenhirLib.EngineTypes.stack <- {
18430 MenhirLib.EngineTypes.state = _menhir_s;
18431 MenhirLib.EngineTypes.semv = Obj.repr _v;
18432 MenhirLib.EngineTypes.startp = _startpos;
18433 MenhirLib.EngineTypes.endp = _endpos;
18434 MenhirLib.EngineTypes.next = _menhir_stack;
18435 });
18436 (fun _menhir_env ->
18437 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18438 let {
18439 MenhirLib.EngineTypes.semv = pv;
18440 MenhirLib.EngineTypes.startp = _startpos_pv_;
18441 MenhirLib.EngineTypes.endp = _endpos_pv_;
18442 MenhirLib.EngineTypes.next = {
18443 MenhirLib.EngineTypes.semv = e;
18444 MenhirLib.EngineTypes.startp = _startpos_e_;
18445 MenhirLib.EngineTypes.endp = _endpos_e_;
18446 MenhirLib.EngineTypes.next = {
18447 MenhirLib.EngineTypes.semv = q;
18448 MenhirLib.EngineTypes.startp = _startpos_q_;
18449 MenhirLib.EngineTypes.endp = _endpos_q_;
18450 MenhirLib.EngineTypes.next = {
18451 MenhirLib.EngineTypes.semv = d;
18452 MenhirLib.EngineTypes.startp = _startpos_d_;
18453 MenhirLib.EngineTypes.endp = _endpos_d_;
18454 MenhirLib.EngineTypes.next = {
18455 MenhirLib.EngineTypes.state = _menhir_s;
18456 MenhirLib.EngineTypes.semv = t;
18457 MenhirLib.EngineTypes.startp = _startpos_t_;
18458 MenhirLib.EngineTypes.endp = _endpos_t_;
18459 MenhirLib.EngineTypes.next = _menhir_stack;
18460 };
18461 };
18462 };
18463 };
18464 } = _menhir_stack in
18465 let pv : (
18466 # 106 "parser_cocci_menhir.mly"
18467 (Data.clt)
18468 # 18469 "parser_cocci_menhir.ml"
18469 ) = Obj.magic pv in
18470 let e : 'tv_initialize = Obj.magic e in
18471 let q : (
18472 # 106 "parser_cocci_menhir.mly"
18473 (Data.clt)
18474 # 18475 "parser_cocci_menhir.ml"
18475 ) = Obj.magic q in
18476 let d : 'tv_d_ident = Obj.magic d in
18477 let t : 'tv_ctype = Obj.magic t in
18478 let _startpos = _startpos_t_ in
18479 let _endpos = _endpos_pv_ in
18480 let _v : 'tv_one_decl_var = let s =
18481
18482 # 39 "standard.mly"
18483 ( None )
18484 # 18485 "parser_cocci_menhir.ml"
18485
18486 in
18487
18488 # 950 "parser_cocci_menhir.mly"
18489 ( let (id,fn) = d in
18490 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
18491 # 18492 "parser_cocci_menhir.ml"
18492 in
18493 _menhir_env.MenhirLib.EngineTypes.stack <- {
18494 MenhirLib.EngineTypes.state = _menhir_s;
18495 MenhirLib.EngineTypes.semv = Obj.repr _v;
18496 MenhirLib.EngineTypes.startp = _startpos;
18497 MenhirLib.EngineTypes.endp = _endpos;
18498 MenhirLib.EngineTypes.next = _menhir_stack;
18499 });
18500 (fun _menhir_env ->
18501 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18502 let {
18503 MenhirLib.EngineTypes.semv = pv;
18504 MenhirLib.EngineTypes.startp = _startpos_pv_;
18505 MenhirLib.EngineTypes.endp = _endpos_pv_;
18506 MenhirLib.EngineTypes.next = {
18507 MenhirLib.EngineTypes.semv = e;
18508 MenhirLib.EngineTypes.startp = _startpos_e_;
18509 MenhirLib.EngineTypes.endp = _endpos_e_;
18510 MenhirLib.EngineTypes.next = {
18511 MenhirLib.EngineTypes.semv = q;
18512 MenhirLib.EngineTypes.startp = _startpos_q_;
18513 MenhirLib.EngineTypes.endp = _endpos_q_;
18514 MenhirLib.EngineTypes.next = {
18515 MenhirLib.EngineTypes.semv = d;
18516 MenhirLib.EngineTypes.startp = _startpos_d_;
18517 MenhirLib.EngineTypes.endp = _endpos_d_;
18518 MenhirLib.EngineTypes.next = {
18519 MenhirLib.EngineTypes.semv = t;
18520 MenhirLib.EngineTypes.startp = _startpos_t_;
18521 MenhirLib.EngineTypes.endp = _endpos_t_;
18522 MenhirLib.EngineTypes.next = {
18523 MenhirLib.EngineTypes.state = _menhir_s;
18524 MenhirLib.EngineTypes.semv = x0;
18525 MenhirLib.EngineTypes.startp = _startpos_x0_;
18526 MenhirLib.EngineTypes.endp = _endpos_x0_;
18527 MenhirLib.EngineTypes.next = _menhir_stack;
18528 };
18529 };
18530 };
18531 };
18532 };
18533 } = _menhir_stack in
18534 let pv : (
18535 # 106 "parser_cocci_menhir.mly"
18536 (Data.clt)
18537 # 18538 "parser_cocci_menhir.ml"
18538 ) = Obj.magic pv in
18539 let e : 'tv_initialize = Obj.magic e in
18540 let q : (
18541 # 106 "parser_cocci_menhir.mly"
18542 (Data.clt)
18543 # 18544 "parser_cocci_menhir.ml"
18544 ) = Obj.magic q in
18545 let d : 'tv_d_ident = Obj.magic d in
18546 let t : 'tv_ctype = Obj.magic t in
18547 let x0 : 'tv_storage = Obj.magic x0 in
18548 let _startpos = _startpos_x0_ in
18549 let _endpos = _endpos_pv_ in
18550 let _v : 'tv_one_decl_var = let s =
18551 let x = x0 in
18552
18553 # 41 "standard.mly"
18554 ( Some x )
18555 # 18556 "parser_cocci_menhir.ml"
18556
18557 in
18558
18559 # 950 "parser_cocci_menhir.mly"
18560 ( let (id,fn) = d in
18561 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
18562 # 18563 "parser_cocci_menhir.ml"
18563 in
18564 _menhir_env.MenhirLib.EngineTypes.stack <- {
18565 MenhirLib.EngineTypes.state = _menhir_s;
18566 MenhirLib.EngineTypes.semv = Obj.repr _v;
18567 MenhirLib.EngineTypes.startp = _startpos;
18568 MenhirLib.EngineTypes.endp = _endpos;
18569 MenhirLib.EngineTypes.next = _menhir_stack;
18570 });
18571 (fun _menhir_env ->
18572 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18573 let {
18574 MenhirLib.EngineTypes.semv = pv;
18575 MenhirLib.EngineTypes.startp = _startpos_pv_;
18576 MenhirLib.EngineTypes.endp = _endpos_pv_;
18577 MenhirLib.EngineTypes.next = {
18578 MenhirLib.EngineTypes.semv = d;
18579 MenhirLib.EngineTypes.startp = _startpos_d_;
18580 MenhirLib.EngineTypes.endp = _endpos_d_;
18581 MenhirLib.EngineTypes.next = {
18582 MenhirLib.EngineTypes.state = _menhir_s;
18583 MenhirLib.EngineTypes.semv = i;
18584 MenhirLib.EngineTypes.startp = _startpos_i_;
18585 MenhirLib.EngineTypes.endp = _endpos_i_;
18586 MenhirLib.EngineTypes.next = _menhir_stack;
18587 };
18588 };
18589 } = _menhir_stack in
18590 let pv : (
18591 # 106 "parser_cocci_menhir.mly"
18592 (Data.clt)
18593 # 18594 "parser_cocci_menhir.ml"
18594 ) = Obj.magic pv in
18595 let d : 'tv_d_ident = Obj.magic d in
18596 let i : 'tv_pure_ident = Obj.magic i in
18597 let _startpos = _startpos_i_ in
18598 let _endpos = _endpos_pv_ in
18599 let _v : 'tv_one_decl_var = let cv =
18600
18601 # 39 "standard.mly"
18602 ( None )
18603 # 18604 "parser_cocci_menhir.ml"
18604
18605 in
18606 let s =
18607
18608 # 39 "standard.mly"
18609 ( None )
18610 # 18611 "parser_cocci_menhir.ml"
18611
18612 in
18613
18614 # 955 "parser_cocci_menhir.mly"
18615 ( let (id,fn) = d in
18616 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18617 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
18618 # 18619 "parser_cocci_menhir.ml"
18619 in
18620 _menhir_env.MenhirLib.EngineTypes.stack <- {
18621 MenhirLib.EngineTypes.state = _menhir_s;
18622 MenhirLib.EngineTypes.semv = Obj.repr _v;
18623 MenhirLib.EngineTypes.startp = _startpos;
18624 MenhirLib.EngineTypes.endp = _endpos;
18625 MenhirLib.EngineTypes.next = _menhir_stack;
18626 });
18627 (fun _menhir_env ->
18628 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18629 let {
18630 MenhirLib.EngineTypes.semv = pv;
18631 MenhirLib.EngineTypes.startp = _startpos_pv_;
18632 MenhirLib.EngineTypes.endp = _endpos_pv_;
18633 MenhirLib.EngineTypes.next = {
18634 MenhirLib.EngineTypes.semv = d;
18635 MenhirLib.EngineTypes.startp = _startpos_d_;
18636 MenhirLib.EngineTypes.endp = _endpos_d_;
18637 MenhirLib.EngineTypes.next = {
18638 MenhirLib.EngineTypes.semv = i;
18639 MenhirLib.EngineTypes.startp = _startpos_i_;
18640 MenhirLib.EngineTypes.endp = _endpos_i_;
18641 MenhirLib.EngineTypes.next = {
18642 MenhirLib.EngineTypes.state = _menhir_s;
18643 MenhirLib.EngineTypes.semv = x0;
18644 MenhirLib.EngineTypes.startp = _startpos_x0_;
18645 MenhirLib.EngineTypes.endp = _endpos_x0_;
18646 MenhirLib.EngineTypes.next = _menhir_stack;
18647 };
18648 };
18649 };
18650 } = _menhir_stack in
18651 let pv : (
18652 # 106 "parser_cocci_menhir.mly"
18653 (Data.clt)
18654 # 18655 "parser_cocci_menhir.ml"
18655 ) = Obj.magic pv in
18656 let d : 'tv_d_ident = Obj.magic d in
18657 let i : 'tv_pure_ident = Obj.magic i in
18658 let x0 : 'tv_const_vol = Obj.magic x0 in
18659 let _startpos = _startpos_x0_ in
18660 let _endpos = _endpos_pv_ in
18661 let _v : 'tv_one_decl_var = let cv =
18662 let x = x0 in
18663
18664 # 41 "standard.mly"
18665 ( Some x )
18666 # 18667 "parser_cocci_menhir.ml"
18667
18668 in
18669 let s =
18670
18671 # 39 "standard.mly"
18672 ( None )
18673 # 18674 "parser_cocci_menhir.ml"
18674
18675 in
18676
18677 # 955 "parser_cocci_menhir.mly"
18678 ( let (id,fn) = d in
18679 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18680 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
18681 # 18682 "parser_cocci_menhir.ml"
18682 in
18683 _menhir_env.MenhirLib.EngineTypes.stack <- {
18684 MenhirLib.EngineTypes.state = _menhir_s;
18685 MenhirLib.EngineTypes.semv = Obj.repr _v;
18686 MenhirLib.EngineTypes.startp = _startpos;
18687 MenhirLib.EngineTypes.endp = _endpos;
18688 MenhirLib.EngineTypes.next = _menhir_stack;
18689 });
18690 (fun _menhir_env ->
18691 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18692 let {
18693 MenhirLib.EngineTypes.semv = pv;
18694 MenhirLib.EngineTypes.startp = _startpos_pv_;
18695 MenhirLib.EngineTypes.endp = _endpos_pv_;
18696 MenhirLib.EngineTypes.next = {
18697 MenhirLib.EngineTypes.semv = d;
18698 MenhirLib.EngineTypes.startp = _startpos_d_;
18699 MenhirLib.EngineTypes.endp = _endpos_d_;
18700 MenhirLib.EngineTypes.next = {
18701 MenhirLib.EngineTypes.semv = i;
18702 MenhirLib.EngineTypes.startp = _startpos_i_;
18703 MenhirLib.EngineTypes.endp = _endpos_i_;
18704 MenhirLib.EngineTypes.next = {
18705 MenhirLib.EngineTypes.state = _menhir_s;
18706 MenhirLib.EngineTypes.semv = x0;
18707 MenhirLib.EngineTypes.startp = _startpos_x0_;
18708 MenhirLib.EngineTypes.endp = _endpos_x0_;
18709 MenhirLib.EngineTypes.next = _menhir_stack;
18710 };
18711 };
18712 };
18713 } = _menhir_stack in
18714 let pv : (
18715 # 106 "parser_cocci_menhir.mly"
18716 (Data.clt)
18717 # 18718 "parser_cocci_menhir.ml"
18718 ) = Obj.magic pv in
18719 let d : 'tv_d_ident = Obj.magic d in
18720 let i : 'tv_pure_ident = Obj.magic i in
18721 let x0 : 'tv_storage = Obj.magic x0 in
18722 let _startpos = _startpos_x0_ in
18723 let _endpos = _endpos_pv_ in
18724 let _v : 'tv_one_decl_var = let cv =
18725
18726 # 39 "standard.mly"
18727 ( None )
18728 # 18729 "parser_cocci_menhir.ml"
18729
18730 in
18731 let s =
18732 let x = x0 in
18733
18734 # 41 "standard.mly"
18735 ( Some x )
18736 # 18737 "parser_cocci_menhir.ml"
18737
18738 in
18739
18740 # 955 "parser_cocci_menhir.mly"
18741 ( let (id,fn) = d in
18742 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18743 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
18744 # 18745 "parser_cocci_menhir.ml"
18745 in
18746 _menhir_env.MenhirLib.EngineTypes.stack <- {
18747 MenhirLib.EngineTypes.state = _menhir_s;
18748 MenhirLib.EngineTypes.semv = Obj.repr _v;
18749 MenhirLib.EngineTypes.startp = _startpos;
18750 MenhirLib.EngineTypes.endp = _endpos;
18751 MenhirLib.EngineTypes.next = _menhir_stack;
18752 });
18753 (fun _menhir_env ->
18754 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18755 let {
18756 MenhirLib.EngineTypes.semv = pv;
18757 MenhirLib.EngineTypes.startp = _startpos_pv_;
18758 MenhirLib.EngineTypes.endp = _endpos_pv_;
18759 MenhirLib.EngineTypes.next = {
18760 MenhirLib.EngineTypes.semv = d;
18761 MenhirLib.EngineTypes.startp = _startpos_d_;
18762 MenhirLib.EngineTypes.endp = _endpos_d_;
18763 MenhirLib.EngineTypes.next = {
18764 MenhirLib.EngineTypes.semv = i;
18765 MenhirLib.EngineTypes.startp = _startpos_i_;
18766 MenhirLib.EngineTypes.endp = _endpos_i_;
18767 MenhirLib.EngineTypes.next = {
18768 MenhirLib.EngineTypes.semv = x1;
18769 MenhirLib.EngineTypes.startp = _startpos_x1_;
18770 MenhirLib.EngineTypes.endp = _endpos_x1_;
18771 MenhirLib.EngineTypes.next = {
18772 MenhirLib.EngineTypes.state = _menhir_s;
18773 MenhirLib.EngineTypes.semv = x0;
18774 MenhirLib.EngineTypes.startp = _startpos_x0_;
18775 MenhirLib.EngineTypes.endp = _endpos_x0_;
18776 MenhirLib.EngineTypes.next = _menhir_stack;
18777 };
18778 };
18779 };
18780 };
18781 } = _menhir_stack in
18782 let pv : (
18783 # 106 "parser_cocci_menhir.mly"
18784 (Data.clt)
18785 # 18786 "parser_cocci_menhir.ml"
18786 ) = Obj.magic pv in
18787 let d : 'tv_d_ident = Obj.magic d in
18788 let i : 'tv_pure_ident = Obj.magic i in
18789 let x1 : 'tv_const_vol = Obj.magic x1 in
18790 let x0 : 'tv_storage = Obj.magic x0 in
18791 let _startpos = _startpos_x0_ in
18792 let _endpos = _endpos_pv_ in
18793 let _v : 'tv_one_decl_var = let cv =
18794 let x = x1 in
18795
18796 # 41 "standard.mly"
18797 ( Some x )
18798 # 18799 "parser_cocci_menhir.ml"
18799
18800 in
18801 let s =
18802 let x = x0 in
18803
18804 # 41 "standard.mly"
18805 ( Some x )
18806 # 18807 "parser_cocci_menhir.ml"
18807
18808 in
18809
18810 # 955 "parser_cocci_menhir.mly"
18811 ( let (id,fn) = d in
18812 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18813 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
18814 # 18815 "parser_cocci_menhir.ml"
18815 in
18816 _menhir_env.MenhirLib.EngineTypes.stack <- {
18817 MenhirLib.EngineTypes.state = _menhir_s;
18818 MenhirLib.EngineTypes.semv = Obj.repr _v;
18819 MenhirLib.EngineTypes.startp = _startpos;
18820 MenhirLib.EngineTypes.endp = _endpos;
18821 MenhirLib.EngineTypes.next = _menhir_stack;
18822 });
18823 (fun _menhir_env ->
18824 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18825 let {
18826 MenhirLib.EngineTypes.semv = pv;
18827 MenhirLib.EngineTypes.startp = _startpos_pv_;
18828 MenhirLib.EngineTypes.endp = _endpos_pv_;
18829 MenhirLib.EngineTypes.next = {
18830 MenhirLib.EngineTypes.semv = e;
18831 MenhirLib.EngineTypes.startp = _startpos_e_;
18832 MenhirLib.EngineTypes.endp = _endpos_e_;
18833 MenhirLib.EngineTypes.next = {
18834 MenhirLib.EngineTypes.semv = q;
18835 MenhirLib.EngineTypes.startp = _startpos_q_;
18836 MenhirLib.EngineTypes.endp = _endpos_q_;
18837 MenhirLib.EngineTypes.next = {
18838 MenhirLib.EngineTypes.semv = d;
18839 MenhirLib.EngineTypes.startp = _startpos_d_;
18840 MenhirLib.EngineTypes.endp = _endpos_d_;
18841 MenhirLib.EngineTypes.next = {
18842 MenhirLib.EngineTypes.state = _menhir_s;
18843 MenhirLib.EngineTypes.semv = i;
18844 MenhirLib.EngineTypes.startp = _startpos_i_;
18845 MenhirLib.EngineTypes.endp = _endpos_i_;
18846 MenhirLib.EngineTypes.next = _menhir_stack;
18847 };
18848 };
18849 };
18850 };
18851 } = _menhir_stack in
18852 let pv : (
18853 # 106 "parser_cocci_menhir.mly"
18854 (Data.clt)
18855 # 18856 "parser_cocci_menhir.ml"
18856 ) = Obj.magic pv in
18857 let e : 'tv_initialize = Obj.magic e in
18858 let q : (
18859 # 106 "parser_cocci_menhir.mly"
18860 (Data.clt)
18861 # 18862 "parser_cocci_menhir.ml"
18862 ) = Obj.magic q in
18863 let d : 'tv_d_ident = Obj.magic d in
18864 let i : 'tv_pure_ident = Obj.magic i in
18865 let _startpos = _startpos_i_ in
18866 let _endpos = _endpos_pv_ in
18867 let _v : 'tv_one_decl_var = let cv =
18868
18869 # 39 "standard.mly"
18870 ( None )
18871 # 18872 "parser_cocci_menhir.ml"
18872
18873 in
18874 let s =
18875
18876 # 39 "standard.mly"
18877 ( None )
18878 # 18879 "parser_cocci_menhir.ml"
18879
18880 in
18881
18882 # 960 "parser_cocci_menhir.mly"
18883 ( let (id,fn) = d in
18884 !Data.add_type_name (P.id2name i);
18885 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18886 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
18887 P.clt2mcode ";" pv)) )
18888 # 18889 "parser_cocci_menhir.ml"
18889 in
18890 _menhir_env.MenhirLib.EngineTypes.stack <- {
18891 MenhirLib.EngineTypes.state = _menhir_s;
18892 MenhirLib.EngineTypes.semv = Obj.repr _v;
18893 MenhirLib.EngineTypes.startp = _startpos;
18894 MenhirLib.EngineTypes.endp = _endpos;
18895 MenhirLib.EngineTypes.next = _menhir_stack;
18896 });
18897 (fun _menhir_env ->
18898 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18899 let {
18900 MenhirLib.EngineTypes.semv = pv;
18901 MenhirLib.EngineTypes.startp = _startpos_pv_;
18902 MenhirLib.EngineTypes.endp = _endpos_pv_;
18903 MenhirLib.EngineTypes.next = {
18904 MenhirLib.EngineTypes.semv = e;
18905 MenhirLib.EngineTypes.startp = _startpos_e_;
18906 MenhirLib.EngineTypes.endp = _endpos_e_;
18907 MenhirLib.EngineTypes.next = {
18908 MenhirLib.EngineTypes.semv = q;
18909 MenhirLib.EngineTypes.startp = _startpos_q_;
18910 MenhirLib.EngineTypes.endp = _endpos_q_;
18911 MenhirLib.EngineTypes.next = {
18912 MenhirLib.EngineTypes.semv = d;
18913 MenhirLib.EngineTypes.startp = _startpos_d_;
18914 MenhirLib.EngineTypes.endp = _endpos_d_;
18915 MenhirLib.EngineTypes.next = {
18916 MenhirLib.EngineTypes.semv = i;
18917 MenhirLib.EngineTypes.startp = _startpos_i_;
18918 MenhirLib.EngineTypes.endp = _endpos_i_;
18919 MenhirLib.EngineTypes.next = {
18920 MenhirLib.EngineTypes.state = _menhir_s;
18921 MenhirLib.EngineTypes.semv = x0;
18922 MenhirLib.EngineTypes.startp = _startpos_x0_;
18923 MenhirLib.EngineTypes.endp = _endpos_x0_;
18924 MenhirLib.EngineTypes.next = _menhir_stack;
18925 };
18926 };
18927 };
18928 };
18929 };
18930 } = _menhir_stack in
18931 let pv : (
18932 # 106 "parser_cocci_menhir.mly"
18933 (Data.clt)
18934 # 18935 "parser_cocci_menhir.ml"
18935 ) = Obj.magic pv in
18936 let e : 'tv_initialize = Obj.magic e in
18937 let q : (
18938 # 106 "parser_cocci_menhir.mly"
18939 (Data.clt)
18940 # 18941 "parser_cocci_menhir.ml"
18941 ) = Obj.magic q in
18942 let d : 'tv_d_ident = Obj.magic d in
18943 let i : 'tv_pure_ident = Obj.magic i in
18944 let x0 : 'tv_const_vol = Obj.magic x0 in
18945 let _startpos = _startpos_x0_ in
18946 let _endpos = _endpos_pv_ in
18947 let _v : 'tv_one_decl_var = let cv =
18948 let x = x0 in
18949
18950 # 41 "standard.mly"
18951 ( Some x )
18952 # 18953 "parser_cocci_menhir.ml"
18953
18954 in
18955 let s =
18956
18957 # 39 "standard.mly"
18958 ( None )
18959 # 18960 "parser_cocci_menhir.ml"
18960
18961 in
18962
18963 # 960 "parser_cocci_menhir.mly"
18964 ( let (id,fn) = d in
18965 !Data.add_type_name (P.id2name i);
18966 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
18967 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
18968 P.clt2mcode ";" pv)) )
18969 # 18970 "parser_cocci_menhir.ml"
18970 in
18971 _menhir_env.MenhirLib.EngineTypes.stack <- {
18972 MenhirLib.EngineTypes.state = _menhir_s;
18973 MenhirLib.EngineTypes.semv = Obj.repr _v;
18974 MenhirLib.EngineTypes.startp = _startpos;
18975 MenhirLib.EngineTypes.endp = _endpos;
18976 MenhirLib.EngineTypes.next = _menhir_stack;
18977 });
18978 (fun _menhir_env ->
18979 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18980 let {
18981 MenhirLib.EngineTypes.semv = pv;
18982 MenhirLib.EngineTypes.startp = _startpos_pv_;
18983 MenhirLib.EngineTypes.endp = _endpos_pv_;
18984 MenhirLib.EngineTypes.next = {
18985 MenhirLib.EngineTypes.semv = e;
18986 MenhirLib.EngineTypes.startp = _startpos_e_;
18987 MenhirLib.EngineTypes.endp = _endpos_e_;
18988 MenhirLib.EngineTypes.next = {
18989 MenhirLib.EngineTypes.semv = q;
18990 MenhirLib.EngineTypes.startp = _startpos_q_;
18991 MenhirLib.EngineTypes.endp = _endpos_q_;
18992 MenhirLib.EngineTypes.next = {
18993 MenhirLib.EngineTypes.semv = d;
18994 MenhirLib.EngineTypes.startp = _startpos_d_;
18995 MenhirLib.EngineTypes.endp = _endpos_d_;
18996 MenhirLib.EngineTypes.next = {
18997 MenhirLib.EngineTypes.semv = i;
18998 MenhirLib.EngineTypes.startp = _startpos_i_;
18999 MenhirLib.EngineTypes.endp = _endpos_i_;
19000 MenhirLib.EngineTypes.next = {
19001 MenhirLib.EngineTypes.state = _menhir_s;
19002 MenhirLib.EngineTypes.semv = x0;
19003 MenhirLib.EngineTypes.startp = _startpos_x0_;
19004 MenhirLib.EngineTypes.endp = _endpos_x0_;
19005 MenhirLib.EngineTypes.next = _menhir_stack;
19006 };
19007 };
19008 };
19009 };
19010 };
19011 } = _menhir_stack in
19012 let pv : (
19013 # 106 "parser_cocci_menhir.mly"
19014 (Data.clt)
19015 # 19016 "parser_cocci_menhir.ml"
19016 ) = Obj.magic pv in
19017 let e : 'tv_initialize = Obj.magic e in
19018 let q : (
19019 # 106 "parser_cocci_menhir.mly"
19020 (Data.clt)
19021 # 19022 "parser_cocci_menhir.ml"
19022 ) = Obj.magic q in
19023 let d : 'tv_d_ident = Obj.magic d in
19024 let i : 'tv_pure_ident = Obj.magic i in
19025 let x0 : 'tv_storage = Obj.magic x0 in
19026 let _startpos = _startpos_x0_ in
19027 let _endpos = _endpos_pv_ in
19028 let _v : 'tv_one_decl_var = let cv =
19029
19030 # 39 "standard.mly"
19031 ( None )
19032 # 19033 "parser_cocci_menhir.ml"
19033
19034 in
19035 let s =
19036 let x = x0 in
19037
19038 # 41 "standard.mly"
19039 ( Some x )
19040 # 19041 "parser_cocci_menhir.ml"
19041
19042 in
19043
19044 # 960 "parser_cocci_menhir.mly"
19045 ( let (id,fn) = d in
19046 !Data.add_type_name (P.id2name i);
19047 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
19048 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
19049 P.clt2mcode ";" pv)) )
19050 # 19051 "parser_cocci_menhir.ml"
19051 in
19052 _menhir_env.MenhirLib.EngineTypes.stack <- {
19053 MenhirLib.EngineTypes.state = _menhir_s;
19054 MenhirLib.EngineTypes.semv = Obj.repr _v;
19055 MenhirLib.EngineTypes.startp = _startpos;
19056 MenhirLib.EngineTypes.endp = _endpos;
19057 MenhirLib.EngineTypes.next = _menhir_stack;
19058 });
19059 (fun _menhir_env ->
19060 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19061 let {
19062 MenhirLib.EngineTypes.semv = pv;
19063 MenhirLib.EngineTypes.startp = _startpos_pv_;
19064 MenhirLib.EngineTypes.endp = _endpos_pv_;
19065 MenhirLib.EngineTypes.next = {
19066 MenhirLib.EngineTypes.semv = e;
19067 MenhirLib.EngineTypes.startp = _startpos_e_;
19068 MenhirLib.EngineTypes.endp = _endpos_e_;
19069 MenhirLib.EngineTypes.next = {
19070 MenhirLib.EngineTypes.semv = q;
19071 MenhirLib.EngineTypes.startp = _startpos_q_;
19072 MenhirLib.EngineTypes.endp = _endpos_q_;
19073 MenhirLib.EngineTypes.next = {
19074 MenhirLib.EngineTypes.semv = d;
19075 MenhirLib.EngineTypes.startp = _startpos_d_;
19076 MenhirLib.EngineTypes.endp = _endpos_d_;
19077 MenhirLib.EngineTypes.next = {
19078 MenhirLib.EngineTypes.semv = i;
19079 MenhirLib.EngineTypes.startp = _startpos_i_;
19080 MenhirLib.EngineTypes.endp = _endpos_i_;
19081 MenhirLib.EngineTypes.next = {
19082 MenhirLib.EngineTypes.semv = x1;
19083 MenhirLib.EngineTypes.startp = _startpos_x1_;
19084 MenhirLib.EngineTypes.endp = _endpos_x1_;
19085 MenhirLib.EngineTypes.next = {
19086 MenhirLib.EngineTypes.state = _menhir_s;
19087 MenhirLib.EngineTypes.semv = x0;
19088 MenhirLib.EngineTypes.startp = _startpos_x0_;
19089 MenhirLib.EngineTypes.endp = _endpos_x0_;
19090 MenhirLib.EngineTypes.next = _menhir_stack;
19091 };
19092 };
19093 };
19094 };
19095 };
19096 };
19097 } = _menhir_stack in
19098 let pv : (
19099 # 106 "parser_cocci_menhir.mly"
19100 (Data.clt)
19101 # 19102 "parser_cocci_menhir.ml"
19102 ) = Obj.magic pv in
19103 let e : 'tv_initialize = Obj.magic e in
19104 let q : (
19105 # 106 "parser_cocci_menhir.mly"
19106 (Data.clt)
19107 # 19108 "parser_cocci_menhir.ml"
19108 ) = Obj.magic q in
19109 let d : 'tv_d_ident = Obj.magic d in
19110 let i : 'tv_pure_ident = Obj.magic i in
19111 let x1 : 'tv_const_vol = Obj.magic x1 in
19112 let x0 : 'tv_storage = Obj.magic x0 in
19113 let _startpos = _startpos_x0_ in
19114 let _endpos = _endpos_pv_ in
19115 let _v : 'tv_one_decl_var = let cv =
19116 let x = x1 in
19117
19118 # 41 "standard.mly"
19119 ( Some x )
19120 # 19121 "parser_cocci_menhir.ml"
19121
19122 in
19123 let s =
19124 let x = x0 in
19125
19126 # 41 "standard.mly"
19127 ( Some x )
19128 # 19129 "parser_cocci_menhir.ml"
19129
19130 in
19131
19132 # 960 "parser_cocci_menhir.mly"
19133 ( let (id,fn) = d in
19134 !Data.add_type_name (P.id2name i);
19135 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
19136 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
19137 P.clt2mcode ";" pv)) )
19138 # 19139 "parser_cocci_menhir.ml"
19139 in
19140 _menhir_env.MenhirLib.EngineTypes.stack <- {
19141 MenhirLib.EngineTypes.state = _menhir_s;
19142 MenhirLib.EngineTypes.semv = Obj.repr _v;
19143 MenhirLib.EngineTypes.startp = _startpos;
19144 MenhirLib.EngineTypes.endp = _endpos;
19145 MenhirLib.EngineTypes.next = _menhir_stack;
19146 });
19147 (fun _menhir_env ->
19148 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19149 let {
19150 MenhirLib.EngineTypes.semv = pv;
19151 MenhirLib.EngineTypes.startp = _startpos_pv_;
19152 MenhirLib.EngineTypes.endp = _endpos_pv_;
19153 MenhirLib.EngineTypes.next = {
19154 MenhirLib.EngineTypes.semv = rp2;
19155 MenhirLib.EngineTypes.startp = _startpos_rp2_;
19156 MenhirLib.EngineTypes.endp = _endpos_rp2_;
19157 MenhirLib.EngineTypes.next = {
19158 MenhirLib.EngineTypes.semv = p;
19159 MenhirLib.EngineTypes.startp = _startpos_p_;
19160 MenhirLib.EngineTypes.endp = _endpos_p_;
19161 MenhirLib.EngineTypes.next = {
19162 MenhirLib.EngineTypes.semv = lp2;
19163 MenhirLib.EngineTypes.startp = _startpos_lp2_;
19164 MenhirLib.EngineTypes.endp = _endpos_lp2_;
19165 MenhirLib.EngineTypes.next = {
19166 MenhirLib.EngineTypes.semv = rp1;
19167 MenhirLib.EngineTypes.startp = _startpos_rp1_;
19168 MenhirLib.EngineTypes.endp = _endpos_rp1_;
19169 MenhirLib.EngineTypes.next = {
19170 MenhirLib.EngineTypes.semv = d;
19171 MenhirLib.EngineTypes.startp = _startpos_d_;
19172 MenhirLib.EngineTypes.endp = _endpos_d_;
19173 MenhirLib.EngineTypes.next = {
19174 MenhirLib.EngineTypes.semv = st;
19175 MenhirLib.EngineTypes.startp = _startpos_st_;
19176 MenhirLib.EngineTypes.endp = _endpos_st_;
19177 MenhirLib.EngineTypes.next = {
19178 MenhirLib.EngineTypes.semv = lp1;
19179 MenhirLib.EngineTypes.startp = _startpos_lp1_;
19180 MenhirLib.EngineTypes.endp = _endpos_lp1_;
19181 MenhirLib.EngineTypes.next = {
19182 MenhirLib.EngineTypes.state = _menhir_s;
19183 MenhirLib.EngineTypes.semv = t;
19184 MenhirLib.EngineTypes.startp = _startpos_t_;
19185 MenhirLib.EngineTypes.endp = _endpos_t_;
19186 MenhirLib.EngineTypes.next = _menhir_stack;
19187 };
19188 };
19189 };
19190 };
19191 };
19192 };
19193 };
19194 };
19195 } = _menhir_stack in
19196 let pv : (
19197 # 106 "parser_cocci_menhir.mly"
19198 (Data.clt)
19199 # 19200 "parser_cocci_menhir.ml"
19200 ) = Obj.magic pv in
19201 let rp2 : (
19202 # 76 "parser_cocci_menhir.mly"
19203 (Data.clt)
19204 # 19205 "parser_cocci_menhir.ml"
19205 ) = Obj.magic rp2 in
19206 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
19207 let lp2 : (
19208 # 75 "parser_cocci_menhir.mly"
19209 (Data.clt)
19210 # 19211 "parser_cocci_menhir.ml"
19211 ) = Obj.magic lp2 in
19212 let rp1 : (
19213 # 76 "parser_cocci_menhir.mly"
19214 (Data.clt)
19215 # 19216 "parser_cocci_menhir.ml"
19216 ) = Obj.magic rp1 in
19217 let d : 'tv_d_ident = Obj.magic d in
19218 let st : (
19219 # 98 "parser_cocci_menhir.mly"
19220 (Data.clt)
19221 # 19222 "parser_cocci_menhir.ml"
19222 ) = Obj.magic st in
19223 let lp1 : (
19224 # 75 "parser_cocci_menhir.mly"
19225 (Data.clt)
19226 # 19227 "parser_cocci_menhir.ml"
19227 ) = Obj.magic lp1 in
19228 let t : 'tv_fn_ctype = Obj.magic t in
19229 let _startpos = _startpos_t_ in
19230 let _endpos = _endpos_pv_ in
19231 let _v : 'tv_one_decl_var = let s =
19232
19233 # 39 "standard.mly"
19234 ( None )
19235 # 19236 "parser_cocci_menhir.ml"
19236
19237 in
19238
19239 # 970 "parser_cocci_menhir.mly"
19240 ( let (id,fn) = d in
19241 let t =
19242 Ast0.wrap
19243 (Ast0.FunctionPointer
19244 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
19245 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
19246 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
19247 # 19248 "parser_cocci_menhir.ml"
19248 in
19249 _menhir_env.MenhirLib.EngineTypes.stack <- {
19250 MenhirLib.EngineTypes.state = _menhir_s;
19251 MenhirLib.EngineTypes.semv = Obj.repr _v;
19252 MenhirLib.EngineTypes.startp = _startpos;
19253 MenhirLib.EngineTypes.endp = _endpos;
19254 MenhirLib.EngineTypes.next = _menhir_stack;
19255 });
19256 (fun _menhir_env ->
19257 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19258 let {
19259 MenhirLib.EngineTypes.semv = pv;
19260 MenhirLib.EngineTypes.startp = _startpos_pv_;
19261 MenhirLib.EngineTypes.endp = _endpos_pv_;
19262 MenhirLib.EngineTypes.next = {
19263 MenhirLib.EngineTypes.semv = rp2;
19264 MenhirLib.EngineTypes.startp = _startpos_rp2_;
19265 MenhirLib.EngineTypes.endp = _endpos_rp2_;
19266 MenhirLib.EngineTypes.next = {
19267 MenhirLib.EngineTypes.semv = p;
19268 MenhirLib.EngineTypes.startp = _startpos_p_;
19269 MenhirLib.EngineTypes.endp = _endpos_p_;
19270 MenhirLib.EngineTypes.next = {
19271 MenhirLib.EngineTypes.semv = lp2;
19272 MenhirLib.EngineTypes.startp = _startpos_lp2_;
19273 MenhirLib.EngineTypes.endp = _endpos_lp2_;
19274 MenhirLib.EngineTypes.next = {
19275 MenhirLib.EngineTypes.semv = rp1;
19276 MenhirLib.EngineTypes.startp = _startpos_rp1_;
19277 MenhirLib.EngineTypes.endp = _endpos_rp1_;
19278 MenhirLib.EngineTypes.next = {
19279 MenhirLib.EngineTypes.semv = d;
19280 MenhirLib.EngineTypes.startp = _startpos_d_;
19281 MenhirLib.EngineTypes.endp = _endpos_d_;
19282 MenhirLib.EngineTypes.next = {
19283 MenhirLib.EngineTypes.semv = st;
19284 MenhirLib.EngineTypes.startp = _startpos_st_;
19285 MenhirLib.EngineTypes.endp = _endpos_st_;
19286 MenhirLib.EngineTypes.next = {
19287 MenhirLib.EngineTypes.semv = lp1;
19288 MenhirLib.EngineTypes.startp = _startpos_lp1_;
19289 MenhirLib.EngineTypes.endp = _endpos_lp1_;
19290 MenhirLib.EngineTypes.next = {
19291 MenhirLib.EngineTypes.semv = t;
19292 MenhirLib.EngineTypes.startp = _startpos_t_;
19293 MenhirLib.EngineTypes.endp = _endpos_t_;
19294 MenhirLib.EngineTypes.next = {
19295 MenhirLib.EngineTypes.state = _menhir_s;
19296 MenhirLib.EngineTypes.semv = x0;
19297 MenhirLib.EngineTypes.startp = _startpos_x0_;
19298 MenhirLib.EngineTypes.endp = _endpos_x0_;
19299 MenhirLib.EngineTypes.next = _menhir_stack;
19300 };
19301 };
19302 };
19303 };
19304 };
19305 };
19306 };
19307 };
19308 };
19309 } = _menhir_stack in
19310 let pv : (
19311 # 106 "parser_cocci_menhir.mly"
19312 (Data.clt)
19313 # 19314 "parser_cocci_menhir.ml"
19314 ) = Obj.magic pv in
19315 let rp2 : (
19316 # 76 "parser_cocci_menhir.mly"
19317 (Data.clt)
19318 # 19319 "parser_cocci_menhir.ml"
19319 ) = Obj.magic rp2 in
19320 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
19321 let lp2 : (
19322 # 75 "parser_cocci_menhir.mly"
19323 (Data.clt)
19324 # 19325 "parser_cocci_menhir.ml"
19325 ) = Obj.magic lp2 in
19326 let rp1 : (
19327 # 76 "parser_cocci_menhir.mly"
19328 (Data.clt)
19329 # 19330 "parser_cocci_menhir.ml"
19330 ) = Obj.magic rp1 in
19331 let d : 'tv_d_ident = Obj.magic d in
19332 let st : (
19333 # 98 "parser_cocci_menhir.mly"
19334 (Data.clt)
19335 # 19336 "parser_cocci_menhir.ml"
19336 ) = Obj.magic st in
19337 let lp1 : (
19338 # 75 "parser_cocci_menhir.mly"
19339 (Data.clt)
19340 # 19341 "parser_cocci_menhir.ml"
19341 ) = Obj.magic lp1 in
19342 let t : 'tv_fn_ctype = Obj.magic t in
19343 let x0 : 'tv_storage = Obj.magic x0 in
19344 let _startpos = _startpos_x0_ in
19345 let _endpos = _endpos_pv_ in
19346 let _v : 'tv_one_decl_var = let s =
19347 let x = x0 in
19348
19349 # 41 "standard.mly"
19350 ( Some x )
19351 # 19352 "parser_cocci_menhir.ml"
19352
19353 in
19354
19355 # 970 "parser_cocci_menhir.mly"
19356 ( let (id,fn) = d in
19357 let t =
19358 Ast0.wrap
19359 (Ast0.FunctionPointer
19360 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
19361 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
19362 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
19363 # 19364 "parser_cocci_menhir.ml"
19364 in
19365 _menhir_env.MenhirLib.EngineTypes.stack <- {
19366 MenhirLib.EngineTypes.state = _menhir_s;
19367 MenhirLib.EngineTypes.semv = Obj.repr _v;
19368 MenhirLib.EngineTypes.startp = _startpos;
19369 MenhirLib.EngineTypes.endp = _endpos;
19370 MenhirLib.EngineTypes.next = _menhir_stack;
19371 });
19372 (fun _menhir_env ->
19373 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19374 let {
19375 MenhirLib.EngineTypes.semv = _5;
19376 MenhirLib.EngineTypes.startp = _startpos__5_;
19377 MenhirLib.EngineTypes.endp = _endpos__5_;
19378 MenhirLib.EngineTypes.next = {
19379 MenhirLib.EngineTypes.semv = _4;
19380 MenhirLib.EngineTypes.startp = _startpos__4_;
19381 MenhirLib.EngineTypes.endp = _endpos__4_;
19382 MenhirLib.EngineTypes.next = {
19383 MenhirLib.EngineTypes.semv = _3;
19384 MenhirLib.EngineTypes.startp = _startpos__3_;
19385 MenhirLib.EngineTypes.endp = _endpos__3_;
19386 MenhirLib.EngineTypes.next = {
19387 MenhirLib.EngineTypes.semv = _2;
19388 MenhirLib.EngineTypes.startp = _startpos__2_;
19389 MenhirLib.EngineTypes.endp = _endpos__2_;
19390 MenhirLib.EngineTypes.next = {
19391 MenhirLib.EngineTypes.state = _menhir_s;
19392 MenhirLib.EngineTypes.semv = _1;
19393 MenhirLib.EngineTypes.startp = _startpos__1_;
19394 MenhirLib.EngineTypes.endp = _endpos__1_;
19395 MenhirLib.EngineTypes.next = _menhir_stack;
19396 };
19397 };
19398 };
19399 };
19400 } = _menhir_stack in
19401 let _5 : (
19402 # 106 "parser_cocci_menhir.mly"
19403 (Data.clt)
19404 # 19405 "parser_cocci_menhir.ml"
19405 ) = Obj.magic _5 in
19406 let _4 : (
19407 # 76 "parser_cocci_menhir.mly"
19408 (Data.clt)
19409 # 19410 "parser_cocci_menhir.ml"
19410 ) = Obj.magic _4 in
19411 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
19412 let _2 : (
19413 # 75 "parser_cocci_menhir.mly"
19414 (Data.clt)
19415 # 19416 "parser_cocci_menhir.ml"
19416 ) = Obj.magic _2 in
19417 let _1 : 'tv_decl_ident = Obj.magic _1 in
19418 let _startpos = _startpos__1_ in
19419 let _endpos = _endpos__5_ in
19420 let _v : 'tv_one_decl_var =
19421 # 978 "parser_cocci_menhir.mly"
19422 ( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
19423 P.clt2mcode ")" _4,P.clt2mcode ";" _5)) )
19424 # 19425 "parser_cocci_menhir.ml"
19425 in
19426 _menhir_env.MenhirLib.EngineTypes.stack <- {
19427 MenhirLib.EngineTypes.state = _menhir_s;
19428 MenhirLib.EngineTypes.semv = Obj.repr _v;
19429 MenhirLib.EngineTypes.startp = _startpos;
19430 MenhirLib.EngineTypes.endp = _endpos;
19431 MenhirLib.EngineTypes.next = _menhir_stack;
19432 });
19433 (fun _menhir_env ->
19434 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19435 let {
19436 MenhirLib.EngineTypes.semv = pv;
19437 MenhirLib.EngineTypes.startp = _startpos_pv_;
19438 MenhirLib.EngineTypes.endp = _endpos_pv_;
19439 MenhirLib.EngineTypes.next = {
19440 MenhirLib.EngineTypes.semv = e;
19441 MenhirLib.EngineTypes.startp = _startpos_e_;
19442 MenhirLib.EngineTypes.endp = _endpos_e_;
19443 MenhirLib.EngineTypes.next = {
19444 MenhirLib.EngineTypes.semv = q;
19445 MenhirLib.EngineTypes.startp = _startpos_q_;
19446 MenhirLib.EngineTypes.endp = _endpos_q_;
19447 MenhirLib.EngineTypes.next = {
19448 MenhirLib.EngineTypes.semv = rp2;
19449 MenhirLib.EngineTypes.startp = _startpos_rp2_;
19450 MenhirLib.EngineTypes.endp = _endpos_rp2_;
19451 MenhirLib.EngineTypes.next = {
19452 MenhirLib.EngineTypes.semv = p;
19453 MenhirLib.EngineTypes.startp = _startpos_p_;
19454 MenhirLib.EngineTypes.endp = _endpos_p_;
19455 MenhirLib.EngineTypes.next = {
19456 MenhirLib.EngineTypes.semv = lp2;
19457 MenhirLib.EngineTypes.startp = _startpos_lp2_;
19458 MenhirLib.EngineTypes.endp = _endpos_lp2_;
19459 MenhirLib.EngineTypes.next = {
19460 MenhirLib.EngineTypes.semv = rp1;
19461 MenhirLib.EngineTypes.startp = _startpos_rp1_;
19462 MenhirLib.EngineTypes.endp = _endpos_rp1_;
19463 MenhirLib.EngineTypes.next = {
19464 MenhirLib.EngineTypes.semv = d;
19465 MenhirLib.EngineTypes.startp = _startpos_d_;
19466 MenhirLib.EngineTypes.endp = _endpos_d_;
19467 MenhirLib.EngineTypes.next = {
19468 MenhirLib.EngineTypes.semv = st;
19469 MenhirLib.EngineTypes.startp = _startpos_st_;
19470 MenhirLib.EngineTypes.endp = _endpos_st_;
19471 MenhirLib.EngineTypes.next = {
19472 MenhirLib.EngineTypes.semv = lp1;
19473 MenhirLib.EngineTypes.startp = _startpos_lp1_;
19474 MenhirLib.EngineTypes.endp = _endpos_lp1_;
19475 MenhirLib.EngineTypes.next = {
19476 MenhirLib.EngineTypes.state = _menhir_s;
19477 MenhirLib.EngineTypes.semv = t;
19478 MenhirLib.EngineTypes.startp = _startpos_t_;
19479 MenhirLib.EngineTypes.endp = _endpos_t_;
19480 MenhirLib.EngineTypes.next = _menhir_stack;
19481 };
19482 };
19483 };
19484 };
19485 };
19486 };
19487 };
19488 };
19489 };
19490 };
19491 } = _menhir_stack in
19492 let pv : (
19493 # 106 "parser_cocci_menhir.mly"
19494 (Data.clt)
19495 # 19496 "parser_cocci_menhir.ml"
19496 ) = Obj.magic pv in
19497 let e : 'tv_initialize = Obj.magic e in
19498 let q : (
19499 # 106 "parser_cocci_menhir.mly"
19500 (Data.clt)
19501 # 19502 "parser_cocci_menhir.ml"
19502 ) = Obj.magic q in
19503 let rp2 : (
19504 # 76 "parser_cocci_menhir.mly"
19505 (Data.clt)
19506 # 19507 "parser_cocci_menhir.ml"
19507 ) = Obj.magic rp2 in
19508 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
19509 let lp2 : (
19510 # 75 "parser_cocci_menhir.mly"
19511 (Data.clt)
19512 # 19513 "parser_cocci_menhir.ml"
19513 ) = Obj.magic lp2 in
19514 let rp1 : (
19515 # 76 "parser_cocci_menhir.mly"
19516 (Data.clt)
19517 # 19518 "parser_cocci_menhir.ml"
19518 ) = Obj.magic rp1 in
19519 let d : 'tv_d_ident = Obj.magic d in
19520 let st : (
19521 # 98 "parser_cocci_menhir.mly"
19522 (Data.clt)
19523 # 19524 "parser_cocci_menhir.ml"
19524 ) = Obj.magic st in
19525 let lp1 : (
19526 # 75 "parser_cocci_menhir.mly"
19527 (Data.clt)
19528 # 19529 "parser_cocci_menhir.ml"
19529 ) = Obj.magic lp1 in
19530 let t : 'tv_fn_ctype = Obj.magic t in
19531 let _startpos = _startpos_t_ in
19532 let _endpos = _endpos_pv_ in
19533 let _v : 'tv_one_decl_var = let s =
19534
19535 # 39 "standard.mly"
19536 ( None )
19537 # 19538 "parser_cocci_menhir.ml"
19538
19539 in
19540
19541 # 984 "parser_cocci_menhir.mly"
19542 ( let (id,fn) = d in
19543 let t =
19544 Ast0.wrap
19545 (Ast0.FunctionPointer
19546 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
19547 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
19548 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
19549 # 19550 "parser_cocci_menhir.ml"
19550 in
19551 _menhir_env.MenhirLib.EngineTypes.stack <- {
19552 MenhirLib.EngineTypes.state = _menhir_s;
19553 MenhirLib.EngineTypes.semv = Obj.repr _v;
19554 MenhirLib.EngineTypes.startp = _startpos;
19555 MenhirLib.EngineTypes.endp = _endpos;
19556 MenhirLib.EngineTypes.next = _menhir_stack;
19557 });
19558 (fun _menhir_env ->
19559 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19560 let {
19561 MenhirLib.EngineTypes.semv = pv;
19562 MenhirLib.EngineTypes.startp = _startpos_pv_;
19563 MenhirLib.EngineTypes.endp = _endpos_pv_;
19564 MenhirLib.EngineTypes.next = {
19565 MenhirLib.EngineTypes.semv = e;
19566 MenhirLib.EngineTypes.startp = _startpos_e_;
19567 MenhirLib.EngineTypes.endp = _endpos_e_;
19568 MenhirLib.EngineTypes.next = {
19569 MenhirLib.EngineTypes.semv = q;
19570 MenhirLib.EngineTypes.startp = _startpos_q_;
19571 MenhirLib.EngineTypes.endp = _endpos_q_;
19572 MenhirLib.EngineTypes.next = {
19573 MenhirLib.EngineTypes.semv = rp2;
19574 MenhirLib.EngineTypes.startp = _startpos_rp2_;
19575 MenhirLib.EngineTypes.endp = _endpos_rp2_;
19576 MenhirLib.EngineTypes.next = {
19577 MenhirLib.EngineTypes.semv = p;
19578 MenhirLib.EngineTypes.startp = _startpos_p_;
19579 MenhirLib.EngineTypes.endp = _endpos_p_;
19580 MenhirLib.EngineTypes.next = {
19581 MenhirLib.EngineTypes.semv = lp2;
19582 MenhirLib.EngineTypes.startp = _startpos_lp2_;
19583 MenhirLib.EngineTypes.endp = _endpos_lp2_;
19584 MenhirLib.EngineTypes.next = {
19585 MenhirLib.EngineTypes.semv = rp1;
19586 MenhirLib.EngineTypes.startp = _startpos_rp1_;
19587 MenhirLib.EngineTypes.endp = _endpos_rp1_;
19588 MenhirLib.EngineTypes.next = {
19589 MenhirLib.EngineTypes.semv = d;
19590 MenhirLib.EngineTypes.startp = _startpos_d_;
19591 MenhirLib.EngineTypes.endp = _endpos_d_;
19592 MenhirLib.EngineTypes.next = {
19593 MenhirLib.EngineTypes.semv = st;
19594 MenhirLib.EngineTypes.startp = _startpos_st_;
19595 MenhirLib.EngineTypes.endp = _endpos_st_;
19596 MenhirLib.EngineTypes.next = {
19597 MenhirLib.EngineTypes.semv = lp1;
19598 MenhirLib.EngineTypes.startp = _startpos_lp1_;
19599 MenhirLib.EngineTypes.endp = _endpos_lp1_;
19600 MenhirLib.EngineTypes.next = {
19601 MenhirLib.EngineTypes.semv = t;
19602 MenhirLib.EngineTypes.startp = _startpos_t_;
19603 MenhirLib.EngineTypes.endp = _endpos_t_;
19604 MenhirLib.EngineTypes.next = {
19605 MenhirLib.EngineTypes.state = _menhir_s;
19606 MenhirLib.EngineTypes.semv = x0;
19607 MenhirLib.EngineTypes.startp = _startpos_x0_;
19608 MenhirLib.EngineTypes.endp = _endpos_x0_;
19609 MenhirLib.EngineTypes.next = _menhir_stack;
19610 };
19611 };
19612 };
19613 };
19614 };
19615 };
19616 };
19617 };
19618 };
19619 };
19620 };
19621 } = _menhir_stack in
19622 let pv : (
19623 # 106 "parser_cocci_menhir.mly"
19624 (Data.clt)
19625 # 19626 "parser_cocci_menhir.ml"
19626 ) = Obj.magic pv in
19627 let e : 'tv_initialize = Obj.magic e in
19628 let q : (
19629 # 106 "parser_cocci_menhir.mly"
19630 (Data.clt)
19631 # 19632 "parser_cocci_menhir.ml"
19632 ) = Obj.magic q in
19633 let rp2 : (
19634 # 76 "parser_cocci_menhir.mly"
19635 (Data.clt)
19636 # 19637 "parser_cocci_menhir.ml"
19637 ) = Obj.magic rp2 in
19638 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
19639 let lp2 : (
19640 # 75 "parser_cocci_menhir.mly"
19641 (Data.clt)
19642 # 19643 "parser_cocci_menhir.ml"
19643 ) = Obj.magic lp2 in
19644 let rp1 : (
19645 # 76 "parser_cocci_menhir.mly"
19646 (Data.clt)
19647 # 19648 "parser_cocci_menhir.ml"
19648 ) = Obj.magic rp1 in
19649 let d : 'tv_d_ident = Obj.magic d in
19650 let st : (
19651 # 98 "parser_cocci_menhir.mly"
19652 (Data.clt)
19653 # 19654 "parser_cocci_menhir.ml"
19654 ) = Obj.magic st in
19655 let lp1 : (
19656 # 75 "parser_cocci_menhir.mly"
19657 (Data.clt)
19658 # 19659 "parser_cocci_menhir.ml"
19659 ) = Obj.magic lp1 in
19660 let t : 'tv_fn_ctype = Obj.magic t in
19661 let x0 : 'tv_storage = Obj.magic x0 in
19662 let _startpos = _startpos_x0_ in
19663 let _endpos = _endpos_pv_ in
19664 let _v : 'tv_one_decl_var = let s =
19665 let x = x0 in
19666
19667 # 41 "standard.mly"
19668 ( Some x )
19669 # 19670 "parser_cocci_menhir.ml"
19670
19671 in
19672
19673 # 984 "parser_cocci_menhir.mly"
19674 ( let (id,fn) = d in
19675 let t =
19676 Ast0.wrap
19677 (Ast0.FunctionPointer
19678 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
19679 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
19680 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
19681 # 19682 "parser_cocci_menhir.ml"
19682 in
19683 _menhir_env.MenhirLib.EngineTypes.stack <- {
19684 MenhirLib.EngineTypes.state = _menhir_s;
19685 MenhirLib.EngineTypes.semv = Obj.repr _v;
19686 MenhirLib.EngineTypes.startp = _startpos;
19687 MenhirLib.EngineTypes.endp = _endpos;
19688 MenhirLib.EngineTypes.next = _menhir_stack;
19689 });
19690 (fun _menhir_env ->
19691 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19692 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19693 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19694 let _endpos = _startpos in
19695 let _v : 'tv_option_TLocal_ =
19696 # 29 "standard.mly"
19697 ( None )
19698 # 19699 "parser_cocci_menhir.ml"
19699 in
19700 _menhir_env.MenhirLib.EngineTypes.stack <- {
19701 MenhirLib.EngineTypes.state = _menhir_s;
19702 MenhirLib.EngineTypes.semv = Obj.repr _v;
19703 MenhirLib.EngineTypes.startp = _startpos;
19704 MenhirLib.EngineTypes.endp = _endpos;
19705 MenhirLib.EngineTypes.next = _menhir_stack;
19706 });
19707 (fun _menhir_env ->
19708 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19709 let {
19710 MenhirLib.EngineTypes.state = _menhir_s;
19711 MenhirLib.EngineTypes.semv = x;
19712 MenhirLib.EngineTypes.startp = _startpos_x_;
19713 MenhirLib.EngineTypes.endp = _endpos_x_;
19714 MenhirLib.EngineTypes.next = _menhir_stack;
19715 } = _menhir_stack in
19716 let x : unit = Obj.magic x in
19717 let _startpos = _startpos_x_ in
19718 let _endpos = _endpos_x_ in
19719 let _v : 'tv_option_TLocal_ =
19720 # 31 "standard.mly"
19721 ( Some x )
19722 # 19723 "parser_cocci_menhir.ml"
19723 in
19724 _menhir_env.MenhirLib.EngineTypes.stack <- {
19725 MenhirLib.EngineTypes.state = _menhir_s;
19726 MenhirLib.EngineTypes.semv = Obj.repr _v;
19727 MenhirLib.EngineTypes.startp = _startpos;
19728 MenhirLib.EngineTypes.endp = _endpos;
19729 MenhirLib.EngineTypes.next = _menhir_stack;
19730 });
19731 (fun _menhir_env ->
19732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19733 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19734 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19735 let _endpos = _startpos in
19736 let _v : 'tv_option_TPosAny_ =
19737 # 29 "standard.mly"
19738 ( None )
19739 # 19740 "parser_cocci_menhir.ml"
19740 in
19741 _menhir_env.MenhirLib.EngineTypes.stack <- {
19742 MenhirLib.EngineTypes.state = _menhir_s;
19743 MenhirLib.EngineTypes.semv = Obj.repr _v;
19744 MenhirLib.EngineTypes.startp = _startpos;
19745 MenhirLib.EngineTypes.endp = _endpos;
19746 MenhirLib.EngineTypes.next = _menhir_stack;
19747 });
19748 (fun _menhir_env ->
19749 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19750 let {
19751 MenhirLib.EngineTypes.state = _menhir_s;
19752 MenhirLib.EngineTypes.semv = x;
19753 MenhirLib.EngineTypes.startp = _startpos_x_;
19754 MenhirLib.EngineTypes.endp = _endpos_x_;
19755 MenhirLib.EngineTypes.next = _menhir_stack;
19756 } = _menhir_stack in
19757 let x : unit = Obj.magic x in
19758 let _startpos = _startpos_x_ in
19759 let _endpos = _endpos_x_ in
19760 let _v : 'tv_option_TPosAny_ =
19761 # 31 "standard.mly"
19762 ( Some x )
19763 # 19764 "parser_cocci_menhir.ml"
19764 in
19765 _menhir_env.MenhirLib.EngineTypes.stack <- {
19766 MenhirLib.EngineTypes.state = _menhir_s;
19767 MenhirLib.EngineTypes.semv = Obj.repr _v;
19768 MenhirLib.EngineTypes.startp = _startpos;
19769 MenhirLib.EngineTypes.endp = _endpos;
19770 MenhirLib.EngineTypes.next = _menhir_stack;
19771 });
19772 (fun _menhir_env ->
19773 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19774 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19775 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19776 let _endpos = _startpos in
19777 let _v : 'tv_option_eexpr_ =
19778 # 29 "standard.mly"
19779 ( None )
19780 # 19781 "parser_cocci_menhir.ml"
19781 in
19782 _menhir_env.MenhirLib.EngineTypes.stack <- {
19783 MenhirLib.EngineTypes.state = _menhir_s;
19784 MenhirLib.EngineTypes.semv = Obj.repr _v;
19785 MenhirLib.EngineTypes.startp = _startpos;
19786 MenhirLib.EngineTypes.endp = _endpos;
19787 MenhirLib.EngineTypes.next = _menhir_stack;
19788 });
19789 (fun _menhir_env ->
19790 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19791 let {
19792 MenhirLib.EngineTypes.state = _menhir_s;
19793 MenhirLib.EngineTypes.semv = x;
19794 MenhirLib.EngineTypes.startp = _startpos_x_;
19795 MenhirLib.EngineTypes.endp = _endpos_x_;
19796 MenhirLib.EngineTypes.next = _menhir_stack;
19797 } = _menhir_stack in
19798 let x : 'tv_eexpr = Obj.magic x in
19799 let _startpos = _startpos_x_ in
19800 let _endpos = _endpos_x_ in
19801 let _v : 'tv_option_eexpr_ =
19802 # 31 "standard.mly"
19803 ( Some x )
19804 # 19805 "parser_cocci_menhir.ml"
19805 in
19806 _menhir_env.MenhirLib.EngineTypes.stack <- {
19807 MenhirLib.EngineTypes.state = _menhir_s;
19808 MenhirLib.EngineTypes.semv = Obj.repr _v;
19809 MenhirLib.EngineTypes.startp = _startpos;
19810 MenhirLib.EngineTypes.endp = _endpos;
19811 MenhirLib.EngineTypes.next = _menhir_stack;
19812 });
19813 (fun _menhir_env ->
19814 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19815 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19816 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19817 let _endpos = _startpos in
19818 let _v : 'tv_option_whenexp_ =
19819 # 29 "standard.mly"
19820 ( None )
19821 # 19822 "parser_cocci_menhir.ml"
19822 in
19823 _menhir_env.MenhirLib.EngineTypes.stack <- {
19824 MenhirLib.EngineTypes.state = _menhir_s;
19825 MenhirLib.EngineTypes.semv = Obj.repr _v;
19826 MenhirLib.EngineTypes.startp = _startpos;
19827 MenhirLib.EngineTypes.endp = _endpos;
19828 MenhirLib.EngineTypes.next = _menhir_stack;
19829 });
19830 (fun _menhir_env ->
19831 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19832 let {
19833 MenhirLib.EngineTypes.state = _menhir_s;
19834 MenhirLib.EngineTypes.semv = x;
19835 MenhirLib.EngineTypes.startp = _startpos_x_;
19836 MenhirLib.EngineTypes.endp = _endpos_x_;
19837 MenhirLib.EngineTypes.next = _menhir_stack;
19838 } = _menhir_stack in
19839 let x : 'tv_whenexp = Obj.magic x in
19840 let _startpos = _startpos_x_ in
19841 let _endpos = _endpos_x_ in
19842 let _v : 'tv_option_whenexp_ =
19843 # 31 "standard.mly"
19844 ( Some x )
19845 # 19846 "parser_cocci_menhir.ml"
19846 in
19847 _menhir_env.MenhirLib.EngineTypes.stack <- {
19848 MenhirLib.EngineTypes.state = _menhir_s;
19849 MenhirLib.EngineTypes.semv = Obj.repr _v;
19850 MenhirLib.EngineTypes.startp = _startpos;
19851 MenhirLib.EngineTypes.endp = _endpos;
19852 MenhirLib.EngineTypes.next = _menhir_stack;
19853 });
19854 (fun _menhir_env ->
19855 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19856 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19857 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19858 let _endpos = _startpos in
19859 let _v : 'tv_plus_after_dots =
19860 # 1563 "parser_cocci_menhir.mly"
19861 ([])
19862 # 19863 "parser_cocci_menhir.ml"
19863 in
19864 _menhir_env.MenhirLib.EngineTypes.stack <- {
19865 MenhirLib.EngineTypes.state = _menhir_s;
19866 MenhirLib.EngineTypes.semv = Obj.repr _v;
19867 MenhirLib.EngineTypes.startp = _startpos;
19868 MenhirLib.EngineTypes.endp = _endpos;
19869 MenhirLib.EngineTypes.next = _menhir_stack;
19870 });
19871 (fun _menhir_env ->
19872 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19873 let {
19874 MenhirLib.EngineTypes.semv = _2;
19875 MenhirLib.EngineTypes.startp = _startpos__2_;
19876 MenhirLib.EngineTypes.endp = _endpos__2_;
19877 MenhirLib.EngineTypes.next = {
19878 MenhirLib.EngineTypes.state = _menhir_s;
19879 MenhirLib.EngineTypes.startp = _startpos__1_;
19880 MenhirLib.EngineTypes.endp = _endpos__1_;
19881 MenhirLib.EngineTypes.next = _menhir_stack;
19882 };
19883 } = _menhir_stack in
19884 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
19885 let _startpos = _startpos__1_ in
19886 let _endpos = _endpos__2_ in
19887 let _v : 'tv_plus_after_dots =
19888 # 1564 "parser_cocci_menhir.mly"
19889 (_2)
19890 # 19891 "parser_cocci_menhir.ml"
19891 in
19892 _menhir_env.MenhirLib.EngineTypes.stack <- {
19893 MenhirLib.EngineTypes.state = _menhir_s;
19894 MenhirLib.EngineTypes.semv = Obj.repr _v;
19895 MenhirLib.EngineTypes.startp = _startpos;
19896 MenhirLib.EngineTypes.endp = _endpos;
19897 MenhirLib.EngineTypes.next = _menhir_stack;
19898 });
19899 (fun _menhir_env ->
19900 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19901 let {
19902 MenhirLib.EngineTypes.semv = _2;
19903 MenhirLib.EngineTypes.startp = _startpos__2_;
19904 MenhirLib.EngineTypes.endp = _endpos__2_;
19905 MenhirLib.EngineTypes.next = {
19906 MenhirLib.EngineTypes.state = _menhir_s;
19907 MenhirLib.EngineTypes.semv = _1;
19908 MenhirLib.EngineTypes.startp = _startpos__1_;
19909 MenhirLib.EngineTypes.endp = _endpos__1_;
19910 MenhirLib.EngineTypes.next = _menhir_stack;
19911 };
19912 } = _menhir_stack in
19913 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
19914 let _1 : 'tv_expr = Obj.magic _1 in
19915 let _startpos = _startpos__1_ in
19916 let _endpos = _endpos__2_ in
19917 let _v : 'tv_plus_after_dots =
19918 # 1566 "parser_cocci_menhir.mly"
19919 ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
19920 # 19921 "parser_cocci_menhir.ml"
19921 in
19922 _menhir_env.MenhirLib.EngineTypes.stack <- {
19923 MenhirLib.EngineTypes.state = _menhir_s;
19924 MenhirLib.EngineTypes.semv = Obj.repr _v;
19925 MenhirLib.EngineTypes.startp = _startpos;
19926 MenhirLib.EngineTypes.endp = _endpos;
19927 MenhirLib.EngineTypes.next = _menhir_stack;
19928 });
19929 (fun _menhir_env ->
19930 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19931 let {
19932 MenhirLib.EngineTypes.semv = _2;
19933 MenhirLib.EngineTypes.startp = _startpos__2_;
19934 MenhirLib.EngineTypes.endp = _endpos__2_;
19935 MenhirLib.EngineTypes.next = {
19936 MenhirLib.EngineTypes.state = _menhir_s;
19937 MenhirLib.EngineTypes.semv = _1;
19938 MenhirLib.EngineTypes.startp = _startpos__1_;
19939 MenhirLib.EngineTypes.endp = _endpos__1_;
19940 MenhirLib.EngineTypes.next = _menhir_stack;
19941 };
19942 } = _menhir_stack in
19943 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
19944 let _1 : 'tv_fundecl = Obj.magic _1 in
19945 let _startpos = _startpos__1_ in
19946 let _endpos = _endpos__2_ in
19947 let _v : 'tv_plus_after_dots =
19948 # 1567 "parser_cocci_menhir.mly"
19949 ( Ast0.wrap(Ast0.DECL(_1))::_2 )
19950 # 19951 "parser_cocci_menhir.ml"
19951 in
19952 _menhir_env.MenhirLib.EngineTypes.stack <- {
19953 MenhirLib.EngineTypes.state = _menhir_s;
19954 MenhirLib.EngineTypes.semv = Obj.repr _v;
19955 MenhirLib.EngineTypes.startp = _startpos;
19956 MenhirLib.EngineTypes.endp = _endpos;
19957 MenhirLib.EngineTypes.next = _menhir_stack;
19958 });
19959 (fun _menhir_env ->
19960 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19961 let {
19962 MenhirLib.EngineTypes.semv = _2;
19963 MenhirLib.EngineTypes.startp = _startpos__2_;
19964 MenhirLib.EngineTypes.endp = _endpos__2_;
19965 MenhirLib.EngineTypes.next = {
19966 MenhirLib.EngineTypes.state = _menhir_s;
19967 MenhirLib.EngineTypes.semv = _1;
19968 MenhirLib.EngineTypes.startp = _startpos__1_;
19969 MenhirLib.EngineTypes.endp = _endpos__1_;
19970 MenhirLib.EngineTypes.next = _menhir_stack;
19971 };
19972 } = _menhir_stack in
19973 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
19974 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
19975 let _startpos = _startpos__1_ in
19976 let _endpos = _endpos__2_ in
19977 let _v : 'tv_plus_after_dots =
19978 # 1569 "parser_cocci_menhir.mly"
19979 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
19980 # 19981 "parser_cocci_menhir.ml"
19981 in
19982 _menhir_env.MenhirLib.EngineTypes.stack <- {
19983 MenhirLib.EngineTypes.state = _menhir_s;
19984 MenhirLib.EngineTypes.semv = Obj.repr _v;
19985 MenhirLib.EngineTypes.startp = _startpos;
19986 MenhirLib.EngineTypes.endp = _endpos;
19987 MenhirLib.EngineTypes.next = _menhir_stack;
19988 });
19989 (fun _menhir_env ->
19990 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19991 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19992 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19993 let _endpos = _startpos in
19994 let _v : 'tv_plus_after_exp =
19995 # 1559 "parser_cocci_menhir.mly"
19996 ([])
19997 # 19998 "parser_cocci_menhir.ml"
19998 in
19999 _menhir_env.MenhirLib.EngineTypes.stack <- {
20000 MenhirLib.EngineTypes.state = _menhir_s;
20001 MenhirLib.EngineTypes.semv = Obj.repr _v;
20002 MenhirLib.EngineTypes.startp = _startpos;
20003 MenhirLib.EngineTypes.endp = _endpos;
20004 MenhirLib.EngineTypes.next = _menhir_stack;
20005 });
20006 (fun _menhir_env ->
20007 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20008 let {
20009 MenhirLib.EngineTypes.semv = _2;
20010 MenhirLib.EngineTypes.startp = _startpos__2_;
20011 MenhirLib.EngineTypes.endp = _endpos__2_;
20012 MenhirLib.EngineTypes.next = {
20013 MenhirLib.EngineTypes.state = _menhir_s;
20014 MenhirLib.EngineTypes.semv = _1;
20015 MenhirLib.EngineTypes.startp = _startpos__1_;
20016 MenhirLib.EngineTypes.endp = _endpos__1_;
20017 MenhirLib.EngineTypes.next = _menhir_stack;
20018 };
20019 } = _menhir_stack in
20020 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
20021 let _1 : 'tv_stm_dots = Obj.magic _1 in
20022 let _startpos = _startpos__1_ in
20023 let _endpos = _endpos__2_ in
20024 let _v : 'tv_plus_after_exp =
20025 # 1560 "parser_cocci_menhir.mly"
20026 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
20027 # 20028 "parser_cocci_menhir.ml"
20028 in
20029 _menhir_env.MenhirLib.EngineTypes.stack <- {
20030 MenhirLib.EngineTypes.state = _menhir_s;
20031 MenhirLib.EngineTypes.semv = Obj.repr _v;
20032 MenhirLib.EngineTypes.startp = _startpos;
20033 MenhirLib.EngineTypes.endp = _endpos;
20034 MenhirLib.EngineTypes.next = _menhir_stack;
20035 });
20036 (fun _menhir_env ->
20037 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20038 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
20039 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
20040 let _endpos = _startpos in
20041 let _v : 'tv_plus_after_stm =
20042 # 1572 "parser_cocci_menhir.mly"
20043 ([])
20044 # 20045 "parser_cocci_menhir.ml"
20045 in
20046 _menhir_env.MenhirLib.EngineTypes.stack <- {
20047 MenhirLib.EngineTypes.state = _menhir_s;
20048 MenhirLib.EngineTypes.semv = Obj.repr _v;
20049 MenhirLib.EngineTypes.startp = _startpos;
20050 MenhirLib.EngineTypes.endp = _endpos;
20051 MenhirLib.EngineTypes.next = _menhir_stack;
20052 });
20053 (fun _menhir_env ->
20054 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20055 let {
20056 MenhirLib.EngineTypes.semv = _2;
20057 MenhirLib.EngineTypes.startp = _startpos__2_;
20058 MenhirLib.EngineTypes.endp = _endpos__2_;
20059 MenhirLib.EngineTypes.next = {
20060 MenhirLib.EngineTypes.state = _menhir_s;
20061 MenhirLib.EngineTypes.semv = _1;
20062 MenhirLib.EngineTypes.startp = _startpos__1_;
20063 MenhirLib.EngineTypes.endp = _endpos__1_;
20064 MenhirLib.EngineTypes.next = _menhir_stack;
20065 };
20066 } = _menhir_stack in
20067 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
20068 let _1 : 'tv_stm_dots = Obj.magic _1 in
20069 let _startpos = _startpos__1_ in
20070 let _endpos = _endpos__2_ in
20071 let _v : 'tv_plus_after_stm =
20072 # 1573 "parser_cocci_menhir.mly"
20073 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
20074 # 20075 "parser_cocci_menhir.ml"
20075 in
20076 _menhir_env.MenhirLib.EngineTypes.stack <- {
20077 MenhirLib.EngineTypes.state = _menhir_s;
20078 MenhirLib.EngineTypes.semv = Obj.repr _v;
20079 MenhirLib.EngineTypes.startp = _startpos;
20080 MenhirLib.EngineTypes.endp = _endpos;
20081 MenhirLib.EngineTypes.next = _menhir_stack;
20082 });
20083 (fun _menhir_env ->
20084 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20085 let {
20086 MenhirLib.EngineTypes.semv = _2;
20087 MenhirLib.EngineTypes.startp = _startpos__2_;
20088 MenhirLib.EngineTypes.endp = _endpos__2_;
20089 MenhirLib.EngineTypes.next = {
20090 MenhirLib.EngineTypes.state = _menhir_s;
20091 MenhirLib.EngineTypes.semv = _1;
20092 MenhirLib.EngineTypes.startp = _startpos__1_;
20093 MenhirLib.EngineTypes.endp = _endpos__1_;
20094 MenhirLib.EngineTypes.next = _menhir_stack;
20095 };
20096 } = _menhir_stack in
20097 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
20098 let _1 : 'tv_fundecl = Obj.magic _1 in
20099 let _startpos = _startpos__1_ in
20100 let _endpos = _endpos__2_ in
20101 let _v : 'tv_plus_after_stm =
20102 # 1574 "parser_cocci_menhir.mly"
20103 ( Ast0.wrap(Ast0.DECL(_1))::_2 )
20104 # 20105 "parser_cocci_menhir.ml"
20105 in
20106 _menhir_env.MenhirLib.EngineTypes.stack <- {
20107 MenhirLib.EngineTypes.state = _menhir_s;
20108 MenhirLib.EngineTypes.semv = Obj.repr _v;
20109 MenhirLib.EngineTypes.startp = _startpos;
20110 MenhirLib.EngineTypes.endp = _endpos;
20111 MenhirLib.EngineTypes.next = _menhir_stack;
20112 });
20113 (fun _menhir_env ->
20114 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20115 let {
20116 MenhirLib.EngineTypes.semv = _2;
20117 MenhirLib.EngineTypes.startp = _startpos__2_;
20118 MenhirLib.EngineTypes.endp = _endpos__2_;
20119 MenhirLib.EngineTypes.next = {
20120 MenhirLib.EngineTypes.state = _menhir_s;
20121 MenhirLib.EngineTypes.semv = _1;
20122 MenhirLib.EngineTypes.startp = _startpos__1_;
20123 MenhirLib.EngineTypes.endp = _endpos__1_;
20124 MenhirLib.EngineTypes.next = _menhir_stack;
20125 };
20126 } = _menhir_stack in
20127 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
20128 let _1 : 'tv_decl_statement = Obj.magic _1 in
20129 let _startpos = _startpos__1_ in
20130 let _endpos = _endpos__2_ in
20131 let _v : 'tv_plus_after_stm =
20132 # 1576 "parser_cocci_menhir.mly"
20133 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
20134 # 20135 "parser_cocci_menhir.ml"
20135 in
20136 _menhir_env.MenhirLib.EngineTypes.stack <- {
20137 MenhirLib.EngineTypes.state = _menhir_s;
20138 MenhirLib.EngineTypes.semv = Obj.repr _v;
20139 MenhirLib.EngineTypes.startp = _startpos;
20140 MenhirLib.EngineTypes.endp = _endpos;
20141 MenhirLib.EngineTypes.next = _menhir_stack;
20142 });
20143 (fun _menhir_env ->
20144 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20145 let {
20146 MenhirLib.EngineTypes.semv = ew;
20147 MenhirLib.EngineTypes.startp = _startpos_ew_;
20148 MenhirLib.EngineTypes.endp = _endpos_ew_;
20149 MenhirLib.EngineTypes.next = {
20150 MenhirLib.EngineTypes.semv = b;
20151 MenhirLib.EngineTypes.startp = _startpos_b_;
20152 MenhirLib.EngineTypes.endp = _endpos_b_;
20153 MenhirLib.EngineTypes.next = {
20154 MenhirLib.EngineTypes.state = _menhir_s;
20155 MenhirLib.EngineTypes.semv = f;
20156 MenhirLib.EngineTypes.startp = _startpos_f_;
20157 MenhirLib.EngineTypes.endp = _endpos_f_;
20158 MenhirLib.EngineTypes.next = _menhir_stack;
20159 };
20160 };
20161 } = _menhir_stack in
20162 let ew : 'tv_loption_error_words_ = Obj.magic ew in
20163 let b : 'tv_loption_plus_start_ = Obj.magic b in
20164 let f : 'tv_loption_filespec_ = Obj.magic f in
20165 let _startpos = _startpos_f_ in
20166 let _endpos = _endpos_ew_ in
20167 let _v : 'tv_plus_body =
20168 # 562 "parser_cocci_menhir.mly"
20169 ( Top_level.top_level (f@b@ew) )
20170 # 20171 "parser_cocci_menhir.ml"
20171 in
20172 _menhir_env.MenhirLib.EngineTypes.stack <- {
20173 MenhirLib.EngineTypes.state = _menhir_s;
20174 MenhirLib.EngineTypes.semv = Obj.repr _v;
20175 MenhirLib.EngineTypes.startp = _startpos;
20176 MenhirLib.EngineTypes.endp = _endpos;
20177 MenhirLib.EngineTypes.next = _menhir_stack;
20178 });
20179 (fun _menhir_env ->
20180 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20181 let {
20182 MenhirLib.EngineTypes.semv = ew;
20183 MenhirLib.EngineTypes.startp = _startpos_ew_;
20184 MenhirLib.EngineTypes.endp = _endpos_ew_;
20185 MenhirLib.EngineTypes.next = {
20186 MenhirLib.EngineTypes.semv = b;
20187 MenhirLib.EngineTypes.startp = _startpos_b_;
20188 MenhirLib.EngineTypes.endp = _endpos_b_;
20189 MenhirLib.EngineTypes.next = {
20190 MenhirLib.EngineTypes.state = _menhir_s;
20191 MenhirLib.EngineTypes.semv = f;
20192 MenhirLib.EngineTypes.startp = _startpos_f_;
20193 MenhirLib.EngineTypes.endp = _endpos_f_;
20194 MenhirLib.EngineTypes.next = _menhir_stack;
20195 };
20196 };
20197 } = _menhir_stack in
20198 let ew : 'tv_loption_error_words_ = Obj.magic ew in
20199 let b : 'tv_top_eexpr = Obj.magic b in
20200 let f : 'tv_loption_filespec_ = Obj.magic f in
20201 let _startpos = _startpos_f_ in
20202 let _endpos = _endpos_ew_ in
20203 let _v : 'tv_plus_exp_body =
20204 # 576 "parser_cocci_menhir.mly"
20205 ( Top_level.top_level (f@[b]@ew) )
20206 # 20207 "parser_cocci_menhir.ml"
20207 in
20208 _menhir_env.MenhirLib.EngineTypes.stack <- {
20209 MenhirLib.EngineTypes.state = _menhir_s;
20210 MenhirLib.EngineTypes.semv = Obj.repr _v;
20211 MenhirLib.EngineTypes.startp = _startpos;
20212 MenhirLib.EngineTypes.endp = _endpos;
20213 MenhirLib.EngineTypes.next = _menhir_stack;
20214 });
20215 (fun _menhir_env ->
20216 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20217 let {
20218 MenhirLib.EngineTypes.startp = _startpos__2_;
20219 MenhirLib.EngineTypes.endp = _endpos__2_;
20220 MenhirLib.EngineTypes.next = {
20221 MenhirLib.EngineTypes.state = _menhir_s;
20222 MenhirLib.EngineTypes.semv = _1;
20223 MenhirLib.EngineTypes.startp = _startpos__1_;
20224 MenhirLib.EngineTypes.endp = _endpos__1_;
20225 MenhirLib.EngineTypes.next = _menhir_stack;
20226 };
20227 } = _menhir_stack in
20228 let _1 : 'tv_plus_exp_body = Obj.magic _1 in
20229 let _startpos = _startpos__1_ in
20230 let _endpos = _endpos__2_ in
20231 let _v : (
20232 # 142 "parser_cocci_menhir.mly"
20233 (Ast0_cocci.rule)
20234 # 20235 "parser_cocci_menhir.ml"
20235 ) =
20236 # 178 "parser_cocci_menhir.mly"
20237 ( _1 )
20238 # 20239 "parser_cocci_menhir.ml"
20239 in
20240 _menhir_env.MenhirLib.EngineTypes.stack <- {
20241 MenhirLib.EngineTypes.state = _menhir_s;
20242 MenhirLib.EngineTypes.semv = Obj.repr _v;
20243 MenhirLib.EngineTypes.startp = _startpos;
20244 MenhirLib.EngineTypes.endp = _endpos;
20245 MenhirLib.EngineTypes.next = _menhir_stack;
20246 });
20247 (fun _menhir_env ->
20248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20249 let {
20250 MenhirLib.EngineTypes.startp = _startpos__2_;
20251 MenhirLib.EngineTypes.endp = _endpos__2_;
20252 MenhirLib.EngineTypes.next = {
20253 MenhirLib.EngineTypes.state = _menhir_s;
20254 MenhirLib.EngineTypes.semv = p;
20255 MenhirLib.EngineTypes.startp = _startpos_p_;
20256 MenhirLib.EngineTypes.endp = _endpos_p_;
20257 MenhirLib.EngineTypes.next = _menhir_stack;
20258 };
20259 } = _menhir_stack in
20260 let p : 'tv_plus_exp_body = Obj.magic p in
20261 let _startpos = _startpos_p_ in
20262 let _endpos = _endpos__2_ in
20263 let _v : (
20264 # 142 "parser_cocci_menhir.mly"
20265 (Ast0_cocci.rule)
20266 # 20267 "parser_cocci_menhir.ml"
20267 ) =
20268 # 178 "parser_cocci_menhir.mly"
20269 ( p )
20270 # 20271 "parser_cocci_menhir.ml"
20271 in
20272 _menhir_env.MenhirLib.EngineTypes.stack <- {
20273 MenhirLib.EngineTypes.state = _menhir_s;
20274 MenhirLib.EngineTypes.semv = Obj.repr _v;
20275 MenhirLib.EngineTypes.startp = _startpos;
20276 MenhirLib.EngineTypes.endp = _endpos;
20277 MenhirLib.EngineTypes.next = _menhir_stack;
20278 });
20279 (fun _menhir_env ->
20280 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20281 let {
20282 MenhirLib.EngineTypes.startp = _startpos__2_;
20283 MenhirLib.EngineTypes.endp = _endpos__2_;
20284 MenhirLib.EngineTypes.next = {
20285 MenhirLib.EngineTypes.state = _menhir_s;
20286 MenhirLib.EngineTypes.semv = p;
20287 MenhirLib.EngineTypes.startp = _startpos_p_;
20288 MenhirLib.EngineTypes.endp = _endpos_p_;
20289 MenhirLib.EngineTypes.next = _menhir_stack;
20290 };
20291 } = _menhir_stack in
20292 let p : 'tv_plus_exp_body = Obj.magic p in
20293 let _startpos = _startpos_p_ in
20294 let _endpos = _endpos__2_ in
20295 let _v : (
20296 # 142 "parser_cocci_menhir.mly"
20297 (Ast0_cocci.rule)
20298 # 20299 "parser_cocci_menhir.ml"
20299 ) =
20300 # 179 "parser_cocci_menhir.mly"
20301 ( p )
20302 # 20303 "parser_cocci_menhir.ml"
20303 in
20304 _menhir_env.MenhirLib.EngineTypes.stack <- {
20305 MenhirLib.EngineTypes.state = _menhir_s;
20306 MenhirLib.EngineTypes.semv = Obj.repr _v;
20307 MenhirLib.EngineTypes.startp = _startpos;
20308 MenhirLib.EngineTypes.endp = _endpos;
20309 MenhirLib.EngineTypes.next = _menhir_stack;
20310 });
20311 (fun _menhir_env ->
20312 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20313 let {
20314 MenhirLib.EngineTypes.startp = _startpos__2_;
20315 MenhirLib.EngineTypes.endp = _endpos__2_;
20316 MenhirLib.EngineTypes.next = {
20317 MenhirLib.EngineTypes.state = _menhir_s;
20318 MenhirLib.EngineTypes.semv = _1;
20319 MenhirLib.EngineTypes.startp = _startpos__1_;
20320 MenhirLib.EngineTypes.endp = _endpos__1_;
20321 MenhirLib.EngineTypes.next = _menhir_stack;
20322 };
20323 } = _menhir_stack in
20324 let _1 : 'tv_plus_body = Obj.magic _1 in
20325 let _startpos = _startpos__1_ in
20326 let _endpos = _endpos__2_ in
20327 let _v : (
20328 # 139 "parser_cocci_menhir.mly"
20329 (Ast0_cocci.rule)
20330 # 20331 "parser_cocci_menhir.ml"
20331 ) =
20332 # 174 "parser_cocci_menhir.mly"
20333 ( _1 )
20334 # 20335 "parser_cocci_menhir.ml"
20335 in
20336 _menhir_env.MenhirLib.EngineTypes.stack <- {
20337 MenhirLib.EngineTypes.state = _menhir_s;
20338 MenhirLib.EngineTypes.semv = Obj.repr _v;
20339 MenhirLib.EngineTypes.startp = _startpos;
20340 MenhirLib.EngineTypes.endp = _endpos;
20341 MenhirLib.EngineTypes.next = _menhir_stack;
20342 });
20343 (fun _menhir_env ->
20344 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20345 let {
20346 MenhirLib.EngineTypes.startp = _startpos__2_;
20347 MenhirLib.EngineTypes.endp = _endpos__2_;
20348 MenhirLib.EngineTypes.next = {
20349 MenhirLib.EngineTypes.state = _menhir_s;
20350 MenhirLib.EngineTypes.semv = p;
20351 MenhirLib.EngineTypes.startp = _startpos_p_;
20352 MenhirLib.EngineTypes.endp = _endpos_p_;
20353 MenhirLib.EngineTypes.next = _menhir_stack;
20354 };
20355 } = _menhir_stack in
20356 let p : 'tv_plus_body = Obj.magic p in
20357 let _startpos = _startpos_p_ in
20358 let _endpos = _endpos__2_ in
20359 let _v : (
20360 # 139 "parser_cocci_menhir.mly"
20361 (Ast0_cocci.rule)
20362 # 20363 "parser_cocci_menhir.ml"
20363 ) =
20364 # 174 "parser_cocci_menhir.mly"
20365 ( p )
20366 # 20367 "parser_cocci_menhir.ml"
20367 in
20368 _menhir_env.MenhirLib.EngineTypes.stack <- {
20369 MenhirLib.EngineTypes.state = _menhir_s;
20370 MenhirLib.EngineTypes.semv = Obj.repr _v;
20371 MenhirLib.EngineTypes.startp = _startpos;
20372 MenhirLib.EngineTypes.endp = _endpos;
20373 MenhirLib.EngineTypes.next = _menhir_stack;
20374 });
20375 (fun _menhir_env ->
20376 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20377 let {
20378 MenhirLib.EngineTypes.startp = _startpos__2_;
20379 MenhirLib.EngineTypes.endp = _endpos__2_;
20380 MenhirLib.EngineTypes.next = {
20381 MenhirLib.EngineTypes.state = _menhir_s;
20382 MenhirLib.EngineTypes.semv = p;
20383 MenhirLib.EngineTypes.startp = _startpos_p_;
20384 MenhirLib.EngineTypes.endp = _endpos_p_;
20385 MenhirLib.EngineTypes.next = _menhir_stack;
20386 };
20387 } = _menhir_stack in
20388 let p : 'tv_plus_body = Obj.magic p in
20389 let _startpos = _startpos_p_ in
20390 let _endpos = _endpos__2_ in
20391 let _v : (
20392 # 139 "parser_cocci_menhir.mly"
20393 (Ast0_cocci.rule)
20394 # 20395 "parser_cocci_menhir.ml"
20395 ) =
20396 # 175 "parser_cocci_menhir.mly"
20397 ( p )
20398 # 20399 "parser_cocci_menhir.ml"
20399 in
20400 _menhir_env.MenhirLib.EngineTypes.stack <- {
20401 MenhirLib.EngineTypes.state = _menhir_s;
20402 MenhirLib.EngineTypes.semv = Obj.repr _v;
20403 MenhirLib.EngineTypes.startp = _startpos;
20404 MenhirLib.EngineTypes.endp = _endpos;
20405 MenhirLib.EngineTypes.next = _menhir_stack;
20406 });
20407 (fun _menhir_env ->
20408 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20409 let {
20410 MenhirLib.EngineTypes.state = _menhir_s;
20411 MenhirLib.EngineTypes.semv = _1;
20412 MenhirLib.EngineTypes.startp = _startpos__1_;
20413 MenhirLib.EngineTypes.endp = _endpos__1_;
20414 MenhirLib.EngineTypes.next = _menhir_stack;
20415 } = _menhir_stack in
20416 let _1 : 'tv_ctype = Obj.magic _1 in
20417 let _startpos = _startpos__1_ in
20418 let _endpos = _endpos__1_ in
20419 let _v : 'tv_plus_start =
20420 # 1549 "parser_cocci_menhir.mly"
20421 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
20422 # 20423 "parser_cocci_menhir.ml"
20423 in
20424 _menhir_env.MenhirLib.EngineTypes.stack <- {
20425 MenhirLib.EngineTypes.state = _menhir_s;
20426 MenhirLib.EngineTypes.semv = Obj.repr _v;
20427 MenhirLib.EngineTypes.startp = _startpos;
20428 MenhirLib.EngineTypes.endp = _endpos;
20429 MenhirLib.EngineTypes.next = _menhir_stack;
20430 });
20431 (fun _menhir_env ->
20432 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20433 let {
20434 MenhirLib.EngineTypes.semv = _2;
20435 MenhirLib.EngineTypes.startp = _startpos__2_;
20436 MenhirLib.EngineTypes.endp = _endpos__2_;
20437 MenhirLib.EngineTypes.next = {
20438 MenhirLib.EngineTypes.state = _menhir_s;
20439 MenhirLib.EngineTypes.semv = _1;
20440 MenhirLib.EngineTypes.startp = _startpos__1_;
20441 MenhirLib.EngineTypes.endp = _endpos__1_;
20442 MenhirLib.EngineTypes.next = _menhir_stack;
20443 };
20444 } = _menhir_stack in
20445 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
20446 let _1 : 'tv_stm_dots = Obj.magic _1 in
20447 let _startpos = _startpos__1_ in
20448 let _endpos = _endpos__2_ in
20449 let _v : 'tv_plus_start =
20450 # 1551 "parser_cocci_menhir.mly"
20451 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
20452 # 20453 "parser_cocci_menhir.ml"
20453 in
20454 _menhir_env.MenhirLib.EngineTypes.stack <- {
20455 MenhirLib.EngineTypes.state = _menhir_s;
20456 MenhirLib.EngineTypes.semv = Obj.repr _v;
20457 MenhirLib.EngineTypes.startp = _startpos;
20458 MenhirLib.EngineTypes.endp = _endpos;
20459 MenhirLib.EngineTypes.next = _menhir_stack;
20460 });
20461 (fun _menhir_env ->
20462 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20463 let {
20464 MenhirLib.EngineTypes.semv = _2;
20465 MenhirLib.EngineTypes.startp = _startpos__2_;
20466 MenhirLib.EngineTypes.endp = _endpos__2_;
20467 MenhirLib.EngineTypes.next = {
20468 MenhirLib.EngineTypes.state = _menhir_s;
20469 MenhirLib.EngineTypes.semv = _1;
20470 MenhirLib.EngineTypes.startp = _startpos__1_;
20471 MenhirLib.EngineTypes.endp = _endpos__1_;
20472 MenhirLib.EngineTypes.next = _menhir_stack;
20473 };
20474 } = _menhir_stack in
20475 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
20476 let _1 : 'tv_expr = Obj.magic _1 in
20477 let _startpos = _startpos__1_ in
20478 let _endpos = _endpos__2_ in
20479 let _v : 'tv_plus_start =
20480 # 1553 "parser_cocci_menhir.mly"
20481 ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
20482 # 20483 "parser_cocci_menhir.ml"
20483 in
20484 _menhir_env.MenhirLib.EngineTypes.stack <- {
20485 MenhirLib.EngineTypes.state = _menhir_s;
20486 MenhirLib.EngineTypes.semv = Obj.repr _v;
20487 MenhirLib.EngineTypes.startp = _startpos;
20488 MenhirLib.EngineTypes.endp = _endpos;
20489 MenhirLib.EngineTypes.next = _menhir_stack;
20490 });
20491 (fun _menhir_env ->
20492 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20493 let {
20494 MenhirLib.EngineTypes.semv = _2;
20495 MenhirLib.EngineTypes.startp = _startpos__2_;
20496 MenhirLib.EngineTypes.endp = _endpos__2_;
20497 MenhirLib.EngineTypes.next = {
20498 MenhirLib.EngineTypes.state = _menhir_s;
20499 MenhirLib.EngineTypes.semv = _1;
20500 MenhirLib.EngineTypes.startp = _startpos__1_;
20501 MenhirLib.EngineTypes.endp = _endpos__1_;
20502 MenhirLib.EngineTypes.next = _menhir_stack;
20503 };
20504 } = _menhir_stack in
20505 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
20506 let _1 : 'tv_fundecl = Obj.magic _1 in
20507 let _startpos = _startpos__1_ in
20508 let _endpos = _endpos__2_ in
20509 let _v : 'tv_plus_start =
20510 # 1554 "parser_cocci_menhir.mly"
20511 ( Ast0.wrap(Ast0.DECL(_1))::_2 )
20512 # 20513 "parser_cocci_menhir.ml"
20513 in
20514 _menhir_env.MenhirLib.EngineTypes.stack <- {
20515 MenhirLib.EngineTypes.state = _menhir_s;
20516 MenhirLib.EngineTypes.semv = Obj.repr _v;
20517 MenhirLib.EngineTypes.startp = _startpos;
20518 MenhirLib.EngineTypes.endp = _endpos;
20519 MenhirLib.EngineTypes.next = _menhir_stack;
20520 });
20521 (fun _menhir_env ->
20522 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20523 let {
20524 MenhirLib.EngineTypes.semv = _2;
20525 MenhirLib.EngineTypes.startp = _startpos__2_;
20526 MenhirLib.EngineTypes.endp = _endpos__2_;
20527 MenhirLib.EngineTypes.next = {
20528 MenhirLib.EngineTypes.state = _menhir_s;
20529 MenhirLib.EngineTypes.semv = _1;
20530 MenhirLib.EngineTypes.startp = _startpos__1_;
20531 MenhirLib.EngineTypes.endp = _endpos__1_;
20532 MenhirLib.EngineTypes.next = _menhir_stack;
20533 };
20534 } = _menhir_stack in
20535 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
20536 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
20537 let _startpos = _startpos__1_ in
20538 let _endpos = _endpos__2_ in
20539 let _v : 'tv_plus_start =
20540 # 1556 "parser_cocci_menhir.mly"
20541 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
20542 # 20543 "parser_cocci_menhir.ml"
20543 in
20544 _menhir_env.MenhirLib.EngineTypes.stack <- {
20545 MenhirLib.EngineTypes.state = _menhir_s;
20546 MenhirLib.EngineTypes.semv = Obj.repr _v;
20547 MenhirLib.EngineTypes.startp = _startpos;
20548 MenhirLib.EngineTypes.endp = _endpos;
20549 MenhirLib.EngineTypes.next = _menhir_stack;
20550 });
20551 (fun _menhir_env ->
20552 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20553 let {
20554 MenhirLib.EngineTypes.state = _menhir_s;
20555 MenhirLib.EngineTypes.semv = _1;
20556 MenhirLib.EngineTypes.startp = _startpos__1_;
20557 MenhirLib.EngineTypes.endp = _endpos__1_;
20558 MenhirLib.EngineTypes.next = _menhir_stack;
20559 } = _menhir_stack in
20560 let _1 : (
20561 # 47 "parser_cocci_menhir.mly"
20562 (string)
20563 # 20564 "parser_cocci_menhir.ml"
20564 ) = Obj.magic _1 in
20565 let _startpos = _startpos__1_ in
20566 let _endpos = _endpos__1_ in
20567 let _v : 'tv_pnrule =
20568 # 220 "parser_cocci_menhir.mly"
20569 ( Ast.Dep _1 )
20570 # 20571 "parser_cocci_menhir.ml"
20571 in
20572 _menhir_env.MenhirLib.EngineTypes.stack <- {
20573 MenhirLib.EngineTypes.state = _menhir_s;
20574 MenhirLib.EngineTypes.semv = Obj.repr _v;
20575 MenhirLib.EngineTypes.startp = _startpos;
20576 MenhirLib.EngineTypes.endp = _endpos;
20577 MenhirLib.EngineTypes.next = _menhir_stack;
20578 });
20579 (fun _menhir_env ->
20580 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20581 let {
20582 MenhirLib.EngineTypes.semv = _2;
20583 MenhirLib.EngineTypes.startp = _startpos__2_;
20584 MenhirLib.EngineTypes.endp = _endpos__2_;
20585 MenhirLib.EngineTypes.next = {
20586 MenhirLib.EngineTypes.state = _menhir_s;
20587 MenhirLib.EngineTypes.startp = _startpos__1_;
20588 MenhirLib.EngineTypes.endp = _endpos__1_;
20589 MenhirLib.EngineTypes.next = _menhir_stack;
20590 };
20591 } = _menhir_stack in
20592 let _2 : (
20593 # 47 "parser_cocci_menhir.mly"
20594 (string)
20595 # 20596 "parser_cocci_menhir.ml"
20596 ) = Obj.magic _2 in
20597 let _startpos = _startpos__1_ in
20598 let _endpos = _endpos__2_ in
20599 let _v : 'tv_pnrule =
20600 # 221 "parser_cocci_menhir.mly"
20601 ( Ast.AntiDep _2 )
20602 # 20603 "parser_cocci_menhir.ml"
20603 in
20604 _menhir_env.MenhirLib.EngineTypes.stack <- {
20605 MenhirLib.EngineTypes.state = _menhir_s;
20606 MenhirLib.EngineTypes.semv = Obj.repr _v;
20607 MenhirLib.EngineTypes.startp = _startpos;
20608 MenhirLib.EngineTypes.endp = _endpos;
20609 MenhirLib.EngineTypes.next = _menhir_stack;
20610 });
20611 (fun _menhir_env ->
20612 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20613 let {
20614 MenhirLib.EngineTypes.semv = _2;
20615 MenhirLib.EngineTypes.startp = _startpos__2_;
20616 MenhirLib.EngineTypes.endp = _endpos__2_;
20617 MenhirLib.EngineTypes.next = {
20618 MenhirLib.EngineTypes.state = _menhir_s;
20619 MenhirLib.EngineTypes.startp = _startpos__1_;
20620 MenhirLib.EngineTypes.endp = _endpos__1_;
20621 MenhirLib.EngineTypes.next = _menhir_stack;
20622 };
20623 } = _menhir_stack in
20624 let _2 : (
20625 # 47 "parser_cocci_menhir.mly"
20626 (string)
20627 # 20628 "parser_cocci_menhir.ml"
20628 ) = Obj.magic _2 in
20629 let _startpos = _startpos__1_ in
20630 let _endpos = _endpos__2_ in
20631 let _v : 'tv_pnrule =
20632 # 222 "parser_cocci_menhir.mly"
20633 ( Ast.EverDep _2 )
20634 # 20635 "parser_cocci_menhir.ml"
20635 in
20636 _menhir_env.MenhirLib.EngineTypes.stack <- {
20637 MenhirLib.EngineTypes.state = _menhir_s;
20638 MenhirLib.EngineTypes.semv = Obj.repr _v;
20639 MenhirLib.EngineTypes.startp = _startpos;
20640 MenhirLib.EngineTypes.endp = _endpos;
20641 MenhirLib.EngineTypes.next = _menhir_stack;
20642 });
20643 (fun _menhir_env ->
20644 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20645 let {
20646 MenhirLib.EngineTypes.semv = _2;
20647 MenhirLib.EngineTypes.startp = _startpos__2_;
20648 MenhirLib.EngineTypes.endp = _endpos__2_;
20649 MenhirLib.EngineTypes.next = {
20650 MenhirLib.EngineTypes.state = _menhir_s;
20651 MenhirLib.EngineTypes.startp = _startpos__1_;
20652 MenhirLib.EngineTypes.endp = _endpos__1_;
20653 MenhirLib.EngineTypes.next = _menhir_stack;
20654 };
20655 } = _menhir_stack in
20656 let _2 : (
20657 # 47 "parser_cocci_menhir.mly"
20658 (string)
20659 # 20660 "parser_cocci_menhir.ml"
20660 ) = Obj.magic _2 in
20661 let _startpos = _startpos__1_ in
20662 let _endpos = _endpos__2_ in
20663 let _v : 'tv_pnrule =
20664 # 223 "parser_cocci_menhir.mly"
20665 ( Ast.NeverDep _2 )
20666 # 20667 "parser_cocci_menhir.ml"
20667 in
20668 _menhir_env.MenhirLib.EngineTypes.stack <- {
20669 MenhirLib.EngineTypes.state = _menhir_s;
20670 MenhirLib.EngineTypes.semv = Obj.repr _v;
20671 MenhirLib.EngineTypes.startp = _startpos;
20672 MenhirLib.EngineTypes.endp = _endpos;
20673 MenhirLib.EngineTypes.next = _menhir_stack;
20674 });
20675 (fun _menhir_env ->
20676 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20677 let {
20678 MenhirLib.EngineTypes.startp = _startpos__3_;
20679 MenhirLib.EngineTypes.endp = _endpos__3_;
20680 MenhirLib.EngineTypes.next = {
20681 MenhirLib.EngineTypes.semv = _2;
20682 MenhirLib.EngineTypes.startp = _startpos__2_;
20683 MenhirLib.EngineTypes.endp = _endpos__2_;
20684 MenhirLib.EngineTypes.next = {
20685 MenhirLib.EngineTypes.state = _menhir_s;
20686 MenhirLib.EngineTypes.startp = _startpos__1_;
20687 MenhirLib.EngineTypes.endp = _endpos__1_;
20688 MenhirLib.EngineTypes.next = _menhir_stack;
20689 };
20690 };
20691 } = _menhir_stack in
20692 let _2 : 'tv_dep = Obj.magic _2 in
20693 let _startpos = _startpos__1_ in
20694 let _endpos = _endpos__3_ in
20695 let _v : 'tv_pnrule =
20696 # 224 "parser_cocci_menhir.mly"
20697 ( _2 )
20698 # 20699 "parser_cocci_menhir.ml"
20699 in
20700 _menhir_env.MenhirLib.EngineTypes.stack <- {
20701 MenhirLib.EngineTypes.state = _menhir_s;
20702 MenhirLib.EngineTypes.semv = Obj.repr _v;
20703 MenhirLib.EngineTypes.startp = _startpos;
20704 MenhirLib.EngineTypes.endp = _endpos;
20705 MenhirLib.EngineTypes.next = _menhir_stack;
20706 });
20707 (fun _menhir_env ->
20708 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20709 let {
20710 MenhirLib.EngineTypes.state = _menhir_s;
20711 MenhirLib.EngineTypes.semv = _1;
20712 MenhirLib.EngineTypes.startp = _startpos__1_;
20713 MenhirLib.EngineTypes.endp = _endpos__1_;
20714 MenhirLib.EngineTypes.next = _menhir_stack;
20715 } = _menhir_stack in
20716 let _1 : 'tv_primary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20717 let _startpos = _startpos__1_ in
20718 let _endpos = _endpos__1_ in
20719 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20720 # 1249 "parser_cocci_menhir.mly"
20721 ( _1 )
20722 # 20723 "parser_cocci_menhir.ml"
20723 in
20724 _menhir_env.MenhirLib.EngineTypes.stack <- {
20725 MenhirLib.EngineTypes.state = _menhir_s;
20726 MenhirLib.EngineTypes.semv = Obj.repr _v;
20727 MenhirLib.EngineTypes.startp = _startpos;
20728 MenhirLib.EngineTypes.endp = _endpos;
20729 MenhirLib.EngineTypes.next = _menhir_stack;
20730 });
20731 (fun _menhir_env ->
20732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20733 let {
20734 MenhirLib.EngineTypes.semv = _4;
20735 MenhirLib.EngineTypes.startp = _startpos__4_;
20736 MenhirLib.EngineTypes.endp = _endpos__4_;
20737 MenhirLib.EngineTypes.next = {
20738 MenhirLib.EngineTypes.semv = _3;
20739 MenhirLib.EngineTypes.startp = _startpos__3_;
20740 MenhirLib.EngineTypes.endp = _endpos__3_;
20741 MenhirLib.EngineTypes.next = {
20742 MenhirLib.EngineTypes.semv = _2;
20743 MenhirLib.EngineTypes.startp = _startpos__2_;
20744 MenhirLib.EngineTypes.endp = _endpos__2_;
20745 MenhirLib.EngineTypes.next = {
20746 MenhirLib.EngineTypes.state = _menhir_s;
20747 MenhirLib.EngineTypes.semv = _1;
20748 MenhirLib.EngineTypes.startp = _startpos__1_;
20749 MenhirLib.EngineTypes.endp = _endpos__1_;
20750 MenhirLib.EngineTypes.next = _menhir_stack;
20751 };
20752 };
20753 };
20754 } = _menhir_stack in
20755 let _4 : (
20756 # 101 "parser_cocci_menhir.mly"
20757 (Data.clt)
20758 # 20759 "parser_cocci_menhir.ml"
20759 ) = Obj.magic _4 in
20760 let _3 : 'tv_eexpr = Obj.magic _3 in
20761 let _2 : (
20762 # 101 "parser_cocci_menhir.mly"
20763 (Data.clt)
20764 # 20765 "parser_cocci_menhir.ml"
20765 ) = Obj.magic _2 in
20766 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20767 let _startpos = _startpos__1_ in
20768 let _endpos = _endpos__4_ in
20769 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20770 # 1251 "parser_cocci_menhir.mly"
20771 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
20772 P.clt2mcode "]" _4)) )
20773 # 20774 "parser_cocci_menhir.ml"
20774 in
20775 _menhir_env.MenhirLib.EngineTypes.stack <- {
20776 MenhirLib.EngineTypes.state = _menhir_s;
20777 MenhirLib.EngineTypes.semv = Obj.repr _v;
20778 MenhirLib.EngineTypes.startp = _startpos;
20779 MenhirLib.EngineTypes.endp = _endpos;
20780 MenhirLib.EngineTypes.next = _menhir_stack;
20781 });
20782 (fun _menhir_env ->
20783 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20784 let {
20785 MenhirLib.EngineTypes.semv = _3;
20786 MenhirLib.EngineTypes.startp = _startpos__3_;
20787 MenhirLib.EngineTypes.endp = _endpos__3_;
20788 MenhirLib.EngineTypes.next = {
20789 MenhirLib.EngineTypes.semv = _2;
20790 MenhirLib.EngineTypes.startp = _startpos__2_;
20791 MenhirLib.EngineTypes.endp = _endpos__2_;
20792 MenhirLib.EngineTypes.next = {
20793 MenhirLib.EngineTypes.state = _menhir_s;
20794 MenhirLib.EngineTypes.semv = _1;
20795 MenhirLib.EngineTypes.startp = _startpos__1_;
20796 MenhirLib.EngineTypes.endp = _endpos__1_;
20797 MenhirLib.EngineTypes.next = _menhir_stack;
20798 };
20799 };
20800 } = _menhir_stack in
20801 let _3 : 'tv_ident = Obj.magic _3 in
20802 let _2 : (
20803 # 106 "parser_cocci_menhir.mly"
20804 (Data.clt)
20805 # 20806 "parser_cocci_menhir.ml"
20806 ) = Obj.magic _2 in
20807 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20808 let _startpos = _startpos__1_ in
20809 let _endpos = _endpos__3_ in
20810 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20811 # 1254 "parser_cocci_menhir.mly"
20812 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
20813 # 20814 "parser_cocci_menhir.ml"
20814 in
20815 _menhir_env.MenhirLib.EngineTypes.stack <- {
20816 MenhirLib.EngineTypes.state = _menhir_s;
20817 MenhirLib.EngineTypes.semv = Obj.repr _v;
20818 MenhirLib.EngineTypes.startp = _startpos;
20819 MenhirLib.EngineTypes.endp = _endpos;
20820 MenhirLib.EngineTypes.next = _menhir_stack;
20821 });
20822 (fun _menhir_env ->
20823 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20824 let {
20825 MenhirLib.EngineTypes.semv = _3;
20826 MenhirLib.EngineTypes.startp = _startpos__3_;
20827 MenhirLib.EngineTypes.endp = _endpos__3_;
20828 MenhirLib.EngineTypes.next = {
20829 MenhirLib.EngineTypes.semv = _2;
20830 MenhirLib.EngineTypes.startp = _startpos__2_;
20831 MenhirLib.EngineTypes.endp = _endpos__2_;
20832 MenhirLib.EngineTypes.next = {
20833 MenhirLib.EngineTypes.state = _menhir_s;
20834 MenhirLib.EngineTypes.semv = _1;
20835 MenhirLib.EngineTypes.startp = _startpos__1_;
20836 MenhirLib.EngineTypes.endp = _endpos__1_;
20837 MenhirLib.EngineTypes.next = _menhir_stack;
20838 };
20839 };
20840 } = _menhir_stack in
20841 let _3 : 'tv_ident = Obj.magic _3 in
20842 let _2 : (
20843 # 103 "parser_cocci_menhir.mly"
20844 (Data.clt)
20845 # 20846 "parser_cocci_menhir.ml"
20846 ) = Obj.magic _2 in
20847 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20848 let _startpos = _startpos__1_ in
20849 let _endpos = _endpos__3_ in
20850 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20851 # 1256 "parser_cocci_menhir.mly"
20852 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
20853 _3)) )
20854 # 20855 "parser_cocci_menhir.ml"
20855 in
20856 _menhir_env.MenhirLib.EngineTypes.stack <- {
20857 MenhirLib.EngineTypes.state = _menhir_s;
20858 MenhirLib.EngineTypes.semv = Obj.repr _v;
20859 MenhirLib.EngineTypes.startp = _startpos;
20860 MenhirLib.EngineTypes.endp = _endpos;
20861 MenhirLib.EngineTypes.next = _menhir_stack;
20862 });
20863 (fun _menhir_env ->
20864 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20865 let {
20866 MenhirLib.EngineTypes.semv = _2;
20867 MenhirLib.EngineTypes.startp = _startpos__2_;
20868 MenhirLib.EngineTypes.endp = _endpos__2_;
20869 MenhirLib.EngineTypes.next = {
20870 MenhirLib.EngineTypes.state = _menhir_s;
20871 MenhirLib.EngineTypes.semv = _1;
20872 MenhirLib.EngineTypes.startp = _startpos__1_;
20873 MenhirLib.EngineTypes.endp = _endpos__1_;
20874 MenhirLib.EngineTypes.next = _menhir_stack;
20875 };
20876 } = _menhir_stack in
20877 let _2 : (
20878 # 84 "parser_cocci_menhir.mly"
20879 (Data.clt)
20880 # 20881 "parser_cocci_menhir.ml"
20881 ) = Obj.magic _2 in
20882 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20883 let _startpos = _startpos__1_ in
20884 let _endpos = _endpos__2_ in
20885 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20886 # 1259 "parser_cocci_menhir.mly"
20887 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
20888 # 20889 "parser_cocci_menhir.ml"
20889 in
20890 _menhir_env.MenhirLib.EngineTypes.stack <- {
20891 MenhirLib.EngineTypes.state = _menhir_s;
20892 MenhirLib.EngineTypes.semv = Obj.repr _v;
20893 MenhirLib.EngineTypes.startp = _startpos;
20894 MenhirLib.EngineTypes.endp = _endpos;
20895 MenhirLib.EngineTypes.next = _menhir_stack;
20896 });
20897 (fun _menhir_env ->
20898 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20899 let {
20900 MenhirLib.EngineTypes.semv = _2;
20901 MenhirLib.EngineTypes.startp = _startpos__2_;
20902 MenhirLib.EngineTypes.endp = _endpos__2_;
20903 MenhirLib.EngineTypes.next = {
20904 MenhirLib.EngineTypes.state = _menhir_s;
20905 MenhirLib.EngineTypes.semv = _1;
20906 MenhirLib.EngineTypes.startp = _startpos__1_;
20907 MenhirLib.EngineTypes.endp = _endpos__1_;
20908 MenhirLib.EngineTypes.next = _menhir_stack;
20909 };
20910 } = _menhir_stack in
20911 let _2 : (
20912 # 84 "parser_cocci_menhir.mly"
20913 (Data.clt)
20914 # 20915 "parser_cocci_menhir.ml"
20915 ) = Obj.magic _2 in
20916 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20917 let _startpos = _startpos__1_ in
20918 let _endpos = _endpos__2_ in
20919 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20920 # 1261 "parser_cocci_menhir.mly"
20921 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
20922 # 20923 "parser_cocci_menhir.ml"
20923 in
20924 _menhir_env.MenhirLib.EngineTypes.stack <- {
20925 MenhirLib.EngineTypes.state = _menhir_s;
20926 MenhirLib.EngineTypes.semv = Obj.repr _v;
20927 MenhirLib.EngineTypes.startp = _startpos;
20928 MenhirLib.EngineTypes.endp = _endpos;
20929 MenhirLib.EngineTypes.next = _menhir_stack;
20930 });
20931 (fun _menhir_env ->
20932 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20933 let {
20934 MenhirLib.EngineTypes.semv = _4;
20935 MenhirLib.EngineTypes.startp = _startpos__4_;
20936 MenhirLib.EngineTypes.endp = _endpos__4_;
20937 MenhirLib.EngineTypes.next = {
20938 MenhirLib.EngineTypes.semv = _3;
20939 MenhirLib.EngineTypes.startp = _startpos__3_;
20940 MenhirLib.EngineTypes.endp = _endpos__3_;
20941 MenhirLib.EngineTypes.next = {
20942 MenhirLib.EngineTypes.semv = _2;
20943 MenhirLib.EngineTypes.startp = _startpos__2_;
20944 MenhirLib.EngineTypes.endp = _endpos__2_;
20945 MenhirLib.EngineTypes.next = {
20946 MenhirLib.EngineTypes.state = _menhir_s;
20947 MenhirLib.EngineTypes.semv = _1;
20948 MenhirLib.EngineTypes.startp = _startpos__1_;
20949 MenhirLib.EngineTypes.endp = _endpos__1_;
20950 MenhirLib.EngineTypes.next = _menhir_stack;
20951 };
20952 };
20953 };
20954 } = _menhir_stack in
20955 let _4 : (
20956 # 76 "parser_cocci_menhir.mly"
20957 (Data.clt)
20958 # 20959 "parser_cocci_menhir.ml"
20959 ) = Obj.magic _4 in
20960 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
20961 let _2 : (
20962 # 75 "parser_cocci_menhir.mly"
20963 (Data.clt)
20964 # 20965 "parser_cocci_menhir.ml"
20965 ) = Obj.magic _2 in
20966 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
20967 let _startpos = _startpos__1_ in
20968 let _endpos = _endpos__4_ in
20969 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
20970 # 1263 "parser_cocci_menhir.mly"
20971 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
20972 _3,
20973 P.clt2mcode ")" _4)) )
20974 # 20975 "parser_cocci_menhir.ml"
20975 in
20976 _menhir_env.MenhirLib.EngineTypes.stack <- {
20977 MenhirLib.EngineTypes.state = _menhir_s;
20978 MenhirLib.EngineTypes.semv = Obj.repr _v;
20979 MenhirLib.EngineTypes.startp = _startpos;
20980 MenhirLib.EngineTypes.endp = _endpos;
20981 MenhirLib.EngineTypes.next = _menhir_stack;
20982 });
20983 (fun _menhir_env ->
20984 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20985 let {
20986 MenhirLib.EngineTypes.state = _menhir_s;
20987 MenhirLib.EngineTypes.semv = _1;
20988 MenhirLib.EngineTypes.startp = _startpos__1_;
20989 MenhirLib.EngineTypes.endp = _endpos__1_;
20990 MenhirLib.EngineTypes.next = _menhir_stack;
20991 } = _menhir_stack in
20992 let _1 : 'tv_primary_expr_eexpr_invalid_ = Obj.magic _1 in
20993 let _startpos = _startpos__1_ in
20994 let _endpos = _endpos__1_ in
20995 let _v : 'tv_postfix_expr_eexpr_invalid_ =
20996 # 1249 "parser_cocci_menhir.mly"
20997 ( _1 )
20998 # 20999 "parser_cocci_menhir.ml"
20999 in
21000 _menhir_env.MenhirLib.EngineTypes.stack <- {
21001 MenhirLib.EngineTypes.state = _menhir_s;
21002 MenhirLib.EngineTypes.semv = Obj.repr _v;
21003 MenhirLib.EngineTypes.startp = _startpos;
21004 MenhirLib.EngineTypes.endp = _endpos;
21005 MenhirLib.EngineTypes.next = _menhir_stack;
21006 });
21007 (fun _menhir_env ->
21008 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21009 let {
21010 MenhirLib.EngineTypes.semv = _4;
21011 MenhirLib.EngineTypes.startp = _startpos__4_;
21012 MenhirLib.EngineTypes.endp = _endpos__4_;
21013 MenhirLib.EngineTypes.next = {
21014 MenhirLib.EngineTypes.semv = _3;
21015 MenhirLib.EngineTypes.startp = _startpos__3_;
21016 MenhirLib.EngineTypes.endp = _endpos__3_;
21017 MenhirLib.EngineTypes.next = {
21018 MenhirLib.EngineTypes.semv = _2;
21019 MenhirLib.EngineTypes.startp = _startpos__2_;
21020 MenhirLib.EngineTypes.endp = _endpos__2_;
21021 MenhirLib.EngineTypes.next = {
21022 MenhirLib.EngineTypes.state = _menhir_s;
21023 MenhirLib.EngineTypes.semv = _1;
21024 MenhirLib.EngineTypes.startp = _startpos__1_;
21025 MenhirLib.EngineTypes.endp = _endpos__1_;
21026 MenhirLib.EngineTypes.next = _menhir_stack;
21027 };
21028 };
21029 };
21030 } = _menhir_stack in
21031 let _4 : (
21032 # 101 "parser_cocci_menhir.mly"
21033 (Data.clt)
21034 # 21035 "parser_cocci_menhir.ml"
21035 ) = Obj.magic _4 in
21036 let _3 : 'tv_eexpr = Obj.magic _3 in
21037 let _2 : (
21038 # 101 "parser_cocci_menhir.mly"
21039 (Data.clt)
21040 # 21041 "parser_cocci_menhir.ml"
21041 ) = Obj.magic _2 in
21042 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21043 let _startpos = _startpos__1_ in
21044 let _endpos = _endpos__4_ in
21045 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21046 # 1251 "parser_cocci_menhir.mly"
21047 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
21048 P.clt2mcode "]" _4)) )
21049 # 21050 "parser_cocci_menhir.ml"
21050 in
21051 _menhir_env.MenhirLib.EngineTypes.stack <- {
21052 MenhirLib.EngineTypes.state = _menhir_s;
21053 MenhirLib.EngineTypes.semv = Obj.repr _v;
21054 MenhirLib.EngineTypes.startp = _startpos;
21055 MenhirLib.EngineTypes.endp = _endpos;
21056 MenhirLib.EngineTypes.next = _menhir_stack;
21057 });
21058 (fun _menhir_env ->
21059 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21060 let {
21061 MenhirLib.EngineTypes.semv = _3;
21062 MenhirLib.EngineTypes.startp = _startpos__3_;
21063 MenhirLib.EngineTypes.endp = _endpos__3_;
21064 MenhirLib.EngineTypes.next = {
21065 MenhirLib.EngineTypes.semv = _2;
21066 MenhirLib.EngineTypes.startp = _startpos__2_;
21067 MenhirLib.EngineTypes.endp = _endpos__2_;
21068 MenhirLib.EngineTypes.next = {
21069 MenhirLib.EngineTypes.state = _menhir_s;
21070 MenhirLib.EngineTypes.semv = _1;
21071 MenhirLib.EngineTypes.startp = _startpos__1_;
21072 MenhirLib.EngineTypes.endp = _endpos__1_;
21073 MenhirLib.EngineTypes.next = _menhir_stack;
21074 };
21075 };
21076 } = _menhir_stack in
21077 let _3 : 'tv_ident = Obj.magic _3 in
21078 let _2 : (
21079 # 106 "parser_cocci_menhir.mly"
21080 (Data.clt)
21081 # 21082 "parser_cocci_menhir.ml"
21082 ) = Obj.magic _2 in
21083 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21084 let _startpos = _startpos__1_ in
21085 let _endpos = _endpos__3_ in
21086 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21087 # 1254 "parser_cocci_menhir.mly"
21088 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
21089 # 21090 "parser_cocci_menhir.ml"
21090 in
21091 _menhir_env.MenhirLib.EngineTypes.stack <- {
21092 MenhirLib.EngineTypes.state = _menhir_s;
21093 MenhirLib.EngineTypes.semv = Obj.repr _v;
21094 MenhirLib.EngineTypes.startp = _startpos;
21095 MenhirLib.EngineTypes.endp = _endpos;
21096 MenhirLib.EngineTypes.next = _menhir_stack;
21097 });
21098 (fun _menhir_env ->
21099 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21100 let {
21101 MenhirLib.EngineTypes.semv = _3;
21102 MenhirLib.EngineTypes.startp = _startpos__3_;
21103 MenhirLib.EngineTypes.endp = _endpos__3_;
21104 MenhirLib.EngineTypes.next = {
21105 MenhirLib.EngineTypes.semv = _2;
21106 MenhirLib.EngineTypes.startp = _startpos__2_;
21107 MenhirLib.EngineTypes.endp = _endpos__2_;
21108 MenhirLib.EngineTypes.next = {
21109 MenhirLib.EngineTypes.state = _menhir_s;
21110 MenhirLib.EngineTypes.semv = _1;
21111 MenhirLib.EngineTypes.startp = _startpos__1_;
21112 MenhirLib.EngineTypes.endp = _endpos__1_;
21113 MenhirLib.EngineTypes.next = _menhir_stack;
21114 };
21115 };
21116 } = _menhir_stack in
21117 let _3 : 'tv_ident = Obj.magic _3 in
21118 let _2 : (
21119 # 103 "parser_cocci_menhir.mly"
21120 (Data.clt)
21121 # 21122 "parser_cocci_menhir.ml"
21122 ) = Obj.magic _2 in
21123 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21124 let _startpos = _startpos__1_ in
21125 let _endpos = _endpos__3_ in
21126 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21127 # 1256 "parser_cocci_menhir.mly"
21128 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
21129 _3)) )
21130 # 21131 "parser_cocci_menhir.ml"
21131 in
21132 _menhir_env.MenhirLib.EngineTypes.stack <- {
21133 MenhirLib.EngineTypes.state = _menhir_s;
21134 MenhirLib.EngineTypes.semv = Obj.repr _v;
21135 MenhirLib.EngineTypes.startp = _startpos;
21136 MenhirLib.EngineTypes.endp = _endpos;
21137 MenhirLib.EngineTypes.next = _menhir_stack;
21138 });
21139 (fun _menhir_env ->
21140 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21141 let {
21142 MenhirLib.EngineTypes.semv = _2;
21143 MenhirLib.EngineTypes.startp = _startpos__2_;
21144 MenhirLib.EngineTypes.endp = _endpos__2_;
21145 MenhirLib.EngineTypes.next = {
21146 MenhirLib.EngineTypes.state = _menhir_s;
21147 MenhirLib.EngineTypes.semv = _1;
21148 MenhirLib.EngineTypes.startp = _startpos__1_;
21149 MenhirLib.EngineTypes.endp = _endpos__1_;
21150 MenhirLib.EngineTypes.next = _menhir_stack;
21151 };
21152 } = _menhir_stack in
21153 let _2 : (
21154 # 84 "parser_cocci_menhir.mly"
21155 (Data.clt)
21156 # 21157 "parser_cocci_menhir.ml"
21157 ) = Obj.magic _2 in
21158 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21159 let _startpos = _startpos__1_ in
21160 let _endpos = _endpos__2_ in
21161 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21162 # 1259 "parser_cocci_menhir.mly"
21163 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
21164 # 21165 "parser_cocci_menhir.ml"
21165 in
21166 _menhir_env.MenhirLib.EngineTypes.stack <- {
21167 MenhirLib.EngineTypes.state = _menhir_s;
21168 MenhirLib.EngineTypes.semv = Obj.repr _v;
21169 MenhirLib.EngineTypes.startp = _startpos;
21170 MenhirLib.EngineTypes.endp = _endpos;
21171 MenhirLib.EngineTypes.next = _menhir_stack;
21172 });
21173 (fun _menhir_env ->
21174 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21175 let {
21176 MenhirLib.EngineTypes.semv = _2;
21177 MenhirLib.EngineTypes.startp = _startpos__2_;
21178 MenhirLib.EngineTypes.endp = _endpos__2_;
21179 MenhirLib.EngineTypes.next = {
21180 MenhirLib.EngineTypes.state = _menhir_s;
21181 MenhirLib.EngineTypes.semv = _1;
21182 MenhirLib.EngineTypes.startp = _startpos__1_;
21183 MenhirLib.EngineTypes.endp = _endpos__1_;
21184 MenhirLib.EngineTypes.next = _menhir_stack;
21185 };
21186 } = _menhir_stack in
21187 let _2 : (
21188 # 84 "parser_cocci_menhir.mly"
21189 (Data.clt)
21190 # 21191 "parser_cocci_menhir.ml"
21191 ) = Obj.magic _2 in
21192 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21193 let _startpos = _startpos__1_ in
21194 let _endpos = _endpos__2_ in
21195 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21196 # 1261 "parser_cocci_menhir.mly"
21197 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
21198 # 21199 "parser_cocci_menhir.ml"
21199 in
21200 _menhir_env.MenhirLib.EngineTypes.stack <- {
21201 MenhirLib.EngineTypes.state = _menhir_s;
21202 MenhirLib.EngineTypes.semv = Obj.repr _v;
21203 MenhirLib.EngineTypes.startp = _startpos;
21204 MenhirLib.EngineTypes.endp = _endpos;
21205 MenhirLib.EngineTypes.next = _menhir_stack;
21206 });
21207 (fun _menhir_env ->
21208 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21209 let {
21210 MenhirLib.EngineTypes.semv = _4;
21211 MenhirLib.EngineTypes.startp = _startpos__4_;
21212 MenhirLib.EngineTypes.endp = _endpos__4_;
21213 MenhirLib.EngineTypes.next = {
21214 MenhirLib.EngineTypes.semv = _3;
21215 MenhirLib.EngineTypes.startp = _startpos__3_;
21216 MenhirLib.EngineTypes.endp = _endpos__3_;
21217 MenhirLib.EngineTypes.next = {
21218 MenhirLib.EngineTypes.semv = _2;
21219 MenhirLib.EngineTypes.startp = _startpos__2_;
21220 MenhirLib.EngineTypes.endp = _endpos__2_;
21221 MenhirLib.EngineTypes.next = {
21222 MenhirLib.EngineTypes.state = _menhir_s;
21223 MenhirLib.EngineTypes.semv = _1;
21224 MenhirLib.EngineTypes.startp = _startpos__1_;
21225 MenhirLib.EngineTypes.endp = _endpos__1_;
21226 MenhirLib.EngineTypes.next = _menhir_stack;
21227 };
21228 };
21229 };
21230 } = _menhir_stack in
21231 let _4 : (
21232 # 76 "parser_cocci_menhir.mly"
21233 (Data.clt)
21234 # 21235 "parser_cocci_menhir.ml"
21235 ) = Obj.magic _4 in
21236 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
21237 let _2 : (
21238 # 75 "parser_cocci_menhir.mly"
21239 (Data.clt)
21240 # 21241 "parser_cocci_menhir.ml"
21241 ) = Obj.magic _2 in
21242 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
21243 let _startpos = _startpos__1_ in
21244 let _endpos = _endpos__4_ in
21245 let _v : 'tv_postfix_expr_eexpr_invalid_ =
21246 # 1263 "parser_cocci_menhir.mly"
21247 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
21248 _3,
21249 P.clt2mcode ")" _4)) )
21250 # 21251 "parser_cocci_menhir.ml"
21251 in
21252 _menhir_env.MenhirLib.EngineTypes.stack <- {
21253 MenhirLib.EngineTypes.state = _menhir_s;
21254 MenhirLib.EngineTypes.semv = Obj.repr _v;
21255 MenhirLib.EngineTypes.startp = _startpos;
21256 MenhirLib.EngineTypes.endp = _endpos;
21257 MenhirLib.EngineTypes.next = _menhir_stack;
21258 });
21259 (fun _menhir_env ->
21260 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21261 let {
21262 MenhirLib.EngineTypes.state = _menhir_s;
21263 MenhirLib.EngineTypes.semv = _1;
21264 MenhirLib.EngineTypes.startp = _startpos__1_;
21265 MenhirLib.EngineTypes.endp = _endpos__1_;
21266 MenhirLib.EngineTypes.next = _menhir_stack;
21267 } = _menhir_stack in
21268 let _1 : 'tv_primary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21269 let _startpos = _startpos__1_ in
21270 let _endpos = _endpos__1_ in
21271 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21272 # 1249 "parser_cocci_menhir.mly"
21273 ( _1 )
21274 # 21275 "parser_cocci_menhir.ml"
21275 in
21276 _menhir_env.MenhirLib.EngineTypes.stack <- {
21277 MenhirLib.EngineTypes.state = _menhir_s;
21278 MenhirLib.EngineTypes.semv = Obj.repr _v;
21279 MenhirLib.EngineTypes.startp = _startpos;
21280 MenhirLib.EngineTypes.endp = _endpos;
21281 MenhirLib.EngineTypes.next = _menhir_stack;
21282 });
21283 (fun _menhir_env ->
21284 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21285 let {
21286 MenhirLib.EngineTypes.semv = _4;
21287 MenhirLib.EngineTypes.startp = _startpos__4_;
21288 MenhirLib.EngineTypes.endp = _endpos__4_;
21289 MenhirLib.EngineTypes.next = {
21290 MenhirLib.EngineTypes.semv = _3;
21291 MenhirLib.EngineTypes.startp = _startpos__3_;
21292 MenhirLib.EngineTypes.endp = _endpos__3_;
21293 MenhirLib.EngineTypes.next = {
21294 MenhirLib.EngineTypes.semv = _2;
21295 MenhirLib.EngineTypes.startp = _startpos__2_;
21296 MenhirLib.EngineTypes.endp = _endpos__2_;
21297 MenhirLib.EngineTypes.next = {
21298 MenhirLib.EngineTypes.state = _menhir_s;
21299 MenhirLib.EngineTypes.semv = _1;
21300 MenhirLib.EngineTypes.startp = _startpos__1_;
21301 MenhirLib.EngineTypes.endp = _endpos__1_;
21302 MenhirLib.EngineTypes.next = _menhir_stack;
21303 };
21304 };
21305 };
21306 } = _menhir_stack in
21307 let _4 : (
21308 # 101 "parser_cocci_menhir.mly"
21309 (Data.clt)
21310 # 21311 "parser_cocci_menhir.ml"
21311 ) = Obj.magic _4 in
21312 let _3 : 'tv_eexpr = Obj.magic _3 in
21313 let _2 : (
21314 # 101 "parser_cocci_menhir.mly"
21315 (Data.clt)
21316 # 21317 "parser_cocci_menhir.ml"
21317 ) = Obj.magic _2 in
21318 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21319 let _startpos = _startpos__1_ in
21320 let _endpos = _endpos__4_ in
21321 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21322 # 1251 "parser_cocci_menhir.mly"
21323 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
21324 P.clt2mcode "]" _4)) )
21325 # 21326 "parser_cocci_menhir.ml"
21326 in
21327 _menhir_env.MenhirLib.EngineTypes.stack <- {
21328 MenhirLib.EngineTypes.state = _menhir_s;
21329 MenhirLib.EngineTypes.semv = Obj.repr _v;
21330 MenhirLib.EngineTypes.startp = _startpos;
21331 MenhirLib.EngineTypes.endp = _endpos;
21332 MenhirLib.EngineTypes.next = _menhir_stack;
21333 });
21334 (fun _menhir_env ->
21335 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21336 let {
21337 MenhirLib.EngineTypes.semv = _3;
21338 MenhirLib.EngineTypes.startp = _startpos__3_;
21339 MenhirLib.EngineTypes.endp = _endpos__3_;
21340 MenhirLib.EngineTypes.next = {
21341 MenhirLib.EngineTypes.semv = _2;
21342 MenhirLib.EngineTypes.startp = _startpos__2_;
21343 MenhirLib.EngineTypes.endp = _endpos__2_;
21344 MenhirLib.EngineTypes.next = {
21345 MenhirLib.EngineTypes.state = _menhir_s;
21346 MenhirLib.EngineTypes.semv = _1;
21347 MenhirLib.EngineTypes.startp = _startpos__1_;
21348 MenhirLib.EngineTypes.endp = _endpos__1_;
21349 MenhirLib.EngineTypes.next = _menhir_stack;
21350 };
21351 };
21352 } = _menhir_stack in
21353 let _3 : 'tv_ident = Obj.magic _3 in
21354 let _2 : (
21355 # 106 "parser_cocci_menhir.mly"
21356 (Data.clt)
21357 # 21358 "parser_cocci_menhir.ml"
21358 ) = Obj.magic _2 in
21359 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21360 let _startpos = _startpos__1_ in
21361 let _endpos = _endpos__3_ in
21362 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21363 # 1254 "parser_cocci_menhir.mly"
21364 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
21365 # 21366 "parser_cocci_menhir.ml"
21366 in
21367 _menhir_env.MenhirLib.EngineTypes.stack <- {
21368 MenhirLib.EngineTypes.state = _menhir_s;
21369 MenhirLib.EngineTypes.semv = Obj.repr _v;
21370 MenhirLib.EngineTypes.startp = _startpos;
21371 MenhirLib.EngineTypes.endp = _endpos;
21372 MenhirLib.EngineTypes.next = _menhir_stack;
21373 });
21374 (fun _menhir_env ->
21375 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21376 let {
21377 MenhirLib.EngineTypes.semv = _3;
21378 MenhirLib.EngineTypes.startp = _startpos__3_;
21379 MenhirLib.EngineTypes.endp = _endpos__3_;
21380 MenhirLib.EngineTypes.next = {
21381 MenhirLib.EngineTypes.semv = _2;
21382 MenhirLib.EngineTypes.startp = _startpos__2_;
21383 MenhirLib.EngineTypes.endp = _endpos__2_;
21384 MenhirLib.EngineTypes.next = {
21385 MenhirLib.EngineTypes.state = _menhir_s;
21386 MenhirLib.EngineTypes.semv = _1;
21387 MenhirLib.EngineTypes.startp = _startpos__1_;
21388 MenhirLib.EngineTypes.endp = _endpos__1_;
21389 MenhirLib.EngineTypes.next = _menhir_stack;
21390 };
21391 };
21392 } = _menhir_stack in
21393 let _3 : 'tv_ident = Obj.magic _3 in
21394 let _2 : (
21395 # 103 "parser_cocci_menhir.mly"
21396 (Data.clt)
21397 # 21398 "parser_cocci_menhir.ml"
21398 ) = Obj.magic _2 in
21399 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21400 let _startpos = _startpos__1_ in
21401 let _endpos = _endpos__3_ in
21402 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21403 # 1256 "parser_cocci_menhir.mly"
21404 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
21405 _3)) )
21406 # 21407 "parser_cocci_menhir.ml"
21407 in
21408 _menhir_env.MenhirLib.EngineTypes.stack <- {
21409 MenhirLib.EngineTypes.state = _menhir_s;
21410 MenhirLib.EngineTypes.semv = Obj.repr _v;
21411 MenhirLib.EngineTypes.startp = _startpos;
21412 MenhirLib.EngineTypes.endp = _endpos;
21413 MenhirLib.EngineTypes.next = _menhir_stack;
21414 });
21415 (fun _menhir_env ->
21416 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21417 let {
21418 MenhirLib.EngineTypes.semv = _2;
21419 MenhirLib.EngineTypes.startp = _startpos__2_;
21420 MenhirLib.EngineTypes.endp = _endpos__2_;
21421 MenhirLib.EngineTypes.next = {
21422 MenhirLib.EngineTypes.state = _menhir_s;
21423 MenhirLib.EngineTypes.semv = _1;
21424 MenhirLib.EngineTypes.startp = _startpos__1_;
21425 MenhirLib.EngineTypes.endp = _endpos__1_;
21426 MenhirLib.EngineTypes.next = _menhir_stack;
21427 };
21428 } = _menhir_stack in
21429 let _2 : (
21430 # 84 "parser_cocci_menhir.mly"
21431 (Data.clt)
21432 # 21433 "parser_cocci_menhir.ml"
21433 ) = Obj.magic _2 in
21434 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21435 let _startpos = _startpos__1_ in
21436 let _endpos = _endpos__2_ in
21437 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21438 # 1259 "parser_cocci_menhir.mly"
21439 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
21440 # 21441 "parser_cocci_menhir.ml"
21441 in
21442 _menhir_env.MenhirLib.EngineTypes.stack <- {
21443 MenhirLib.EngineTypes.state = _menhir_s;
21444 MenhirLib.EngineTypes.semv = Obj.repr _v;
21445 MenhirLib.EngineTypes.startp = _startpos;
21446 MenhirLib.EngineTypes.endp = _endpos;
21447 MenhirLib.EngineTypes.next = _menhir_stack;
21448 });
21449 (fun _menhir_env ->
21450 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21451 let {
21452 MenhirLib.EngineTypes.semv = _2;
21453 MenhirLib.EngineTypes.startp = _startpos__2_;
21454 MenhirLib.EngineTypes.endp = _endpos__2_;
21455 MenhirLib.EngineTypes.next = {
21456 MenhirLib.EngineTypes.state = _menhir_s;
21457 MenhirLib.EngineTypes.semv = _1;
21458 MenhirLib.EngineTypes.startp = _startpos__1_;
21459 MenhirLib.EngineTypes.endp = _endpos__1_;
21460 MenhirLib.EngineTypes.next = _menhir_stack;
21461 };
21462 } = _menhir_stack in
21463 let _2 : (
21464 # 84 "parser_cocci_menhir.mly"
21465 (Data.clt)
21466 # 21467 "parser_cocci_menhir.ml"
21467 ) = Obj.magic _2 in
21468 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21469 let _startpos = _startpos__1_ in
21470 let _endpos = _endpos__2_ in
21471 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21472 # 1261 "parser_cocci_menhir.mly"
21473 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
21474 # 21475 "parser_cocci_menhir.ml"
21475 in
21476 _menhir_env.MenhirLib.EngineTypes.stack <- {
21477 MenhirLib.EngineTypes.state = _menhir_s;
21478 MenhirLib.EngineTypes.semv = Obj.repr _v;
21479 MenhirLib.EngineTypes.startp = _startpos;
21480 MenhirLib.EngineTypes.endp = _endpos;
21481 MenhirLib.EngineTypes.next = _menhir_stack;
21482 });
21483 (fun _menhir_env ->
21484 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21485 let {
21486 MenhirLib.EngineTypes.semv = _4;
21487 MenhirLib.EngineTypes.startp = _startpos__4_;
21488 MenhirLib.EngineTypes.endp = _endpos__4_;
21489 MenhirLib.EngineTypes.next = {
21490 MenhirLib.EngineTypes.semv = _3;
21491 MenhirLib.EngineTypes.startp = _startpos__3_;
21492 MenhirLib.EngineTypes.endp = _endpos__3_;
21493 MenhirLib.EngineTypes.next = {
21494 MenhirLib.EngineTypes.semv = _2;
21495 MenhirLib.EngineTypes.startp = _startpos__2_;
21496 MenhirLib.EngineTypes.endp = _endpos__2_;
21497 MenhirLib.EngineTypes.next = {
21498 MenhirLib.EngineTypes.state = _menhir_s;
21499 MenhirLib.EngineTypes.semv = _1;
21500 MenhirLib.EngineTypes.startp = _startpos__1_;
21501 MenhirLib.EngineTypes.endp = _endpos__1_;
21502 MenhirLib.EngineTypes.next = _menhir_stack;
21503 };
21504 };
21505 };
21506 } = _menhir_stack in
21507 let _4 : (
21508 # 76 "parser_cocci_menhir.mly"
21509 (Data.clt)
21510 # 21511 "parser_cocci_menhir.ml"
21511 ) = Obj.magic _4 in
21512 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
21513 let _2 : (
21514 # 75 "parser_cocci_menhir.mly"
21515 (Data.clt)
21516 # 21517 "parser_cocci_menhir.ml"
21517 ) = Obj.magic _2 in
21518 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
21519 let _startpos = _startpos__1_ in
21520 let _endpos = _endpos__4_ in
21521 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
21522 # 1263 "parser_cocci_menhir.mly"
21523 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
21524 _3,
21525 P.clt2mcode ")" _4)) )
21526 # 21527 "parser_cocci_menhir.ml"
21527 in
21528 _menhir_env.MenhirLib.EngineTypes.stack <- {
21529 MenhirLib.EngineTypes.state = _menhir_s;
21530 MenhirLib.EngineTypes.semv = Obj.repr _v;
21531 MenhirLib.EngineTypes.startp = _startpos;
21532 MenhirLib.EngineTypes.endp = _endpos;
21533 MenhirLib.EngineTypes.next = _menhir_stack;
21534 });
21535 (fun _menhir_env ->
21536 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21537 let {
21538 MenhirLib.EngineTypes.state = _menhir_s;
21539 MenhirLib.EngineTypes.semv = _1;
21540 MenhirLib.EngineTypes.startp = _startpos__1_;
21541 MenhirLib.EngineTypes.endp = _endpos__1_;
21542 MenhirLib.EngineTypes.next = _menhir_stack;
21543 } = _menhir_stack in
21544 let _1 : 'tv_primary_expr_expr_invalid_ = Obj.magic _1 in
21545 let _startpos = _startpos__1_ in
21546 let _endpos = _endpos__1_ in
21547 let _v : 'tv_postfix_expr_expr_invalid_ =
21548 # 1249 "parser_cocci_menhir.mly"
21549 ( _1 )
21550 # 21551 "parser_cocci_menhir.ml"
21551 in
21552 _menhir_env.MenhirLib.EngineTypes.stack <- {
21553 MenhirLib.EngineTypes.state = _menhir_s;
21554 MenhirLib.EngineTypes.semv = Obj.repr _v;
21555 MenhirLib.EngineTypes.startp = _startpos;
21556 MenhirLib.EngineTypes.endp = _endpos;
21557 MenhirLib.EngineTypes.next = _menhir_stack;
21558 });
21559 (fun _menhir_env ->
21560 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21561 let {
21562 MenhirLib.EngineTypes.semv = _4;
21563 MenhirLib.EngineTypes.startp = _startpos__4_;
21564 MenhirLib.EngineTypes.endp = _endpos__4_;
21565 MenhirLib.EngineTypes.next = {
21566 MenhirLib.EngineTypes.semv = _3;
21567 MenhirLib.EngineTypes.startp = _startpos__3_;
21568 MenhirLib.EngineTypes.endp = _endpos__3_;
21569 MenhirLib.EngineTypes.next = {
21570 MenhirLib.EngineTypes.semv = _2;
21571 MenhirLib.EngineTypes.startp = _startpos__2_;
21572 MenhirLib.EngineTypes.endp = _endpos__2_;
21573 MenhirLib.EngineTypes.next = {
21574 MenhirLib.EngineTypes.state = _menhir_s;
21575 MenhirLib.EngineTypes.semv = _1;
21576 MenhirLib.EngineTypes.startp = _startpos__1_;
21577 MenhirLib.EngineTypes.endp = _endpos__1_;
21578 MenhirLib.EngineTypes.next = _menhir_stack;
21579 };
21580 };
21581 };
21582 } = _menhir_stack in
21583 let _4 : (
21584 # 101 "parser_cocci_menhir.mly"
21585 (Data.clt)
21586 # 21587 "parser_cocci_menhir.ml"
21587 ) = Obj.magic _4 in
21588 let _3 : 'tv_eexpr = Obj.magic _3 in
21589 let _2 : (
21590 # 101 "parser_cocci_menhir.mly"
21591 (Data.clt)
21592 # 21593 "parser_cocci_menhir.ml"
21593 ) = Obj.magic _2 in
21594 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21595 let _startpos = _startpos__1_ in
21596 let _endpos = _endpos__4_ in
21597 let _v : 'tv_postfix_expr_expr_invalid_ =
21598 # 1251 "parser_cocci_menhir.mly"
21599 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
21600 P.clt2mcode "]" _4)) )
21601 # 21602 "parser_cocci_menhir.ml"
21602 in
21603 _menhir_env.MenhirLib.EngineTypes.stack <- {
21604 MenhirLib.EngineTypes.state = _menhir_s;
21605 MenhirLib.EngineTypes.semv = Obj.repr _v;
21606 MenhirLib.EngineTypes.startp = _startpos;
21607 MenhirLib.EngineTypes.endp = _endpos;
21608 MenhirLib.EngineTypes.next = _menhir_stack;
21609 });
21610 (fun _menhir_env ->
21611 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21612 let {
21613 MenhirLib.EngineTypes.semv = _3;
21614 MenhirLib.EngineTypes.startp = _startpos__3_;
21615 MenhirLib.EngineTypes.endp = _endpos__3_;
21616 MenhirLib.EngineTypes.next = {
21617 MenhirLib.EngineTypes.semv = _2;
21618 MenhirLib.EngineTypes.startp = _startpos__2_;
21619 MenhirLib.EngineTypes.endp = _endpos__2_;
21620 MenhirLib.EngineTypes.next = {
21621 MenhirLib.EngineTypes.state = _menhir_s;
21622 MenhirLib.EngineTypes.semv = _1;
21623 MenhirLib.EngineTypes.startp = _startpos__1_;
21624 MenhirLib.EngineTypes.endp = _endpos__1_;
21625 MenhirLib.EngineTypes.next = _menhir_stack;
21626 };
21627 };
21628 } = _menhir_stack in
21629 let _3 : 'tv_ident = Obj.magic _3 in
21630 let _2 : (
21631 # 106 "parser_cocci_menhir.mly"
21632 (Data.clt)
21633 # 21634 "parser_cocci_menhir.ml"
21634 ) = Obj.magic _2 in
21635 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21636 let _startpos = _startpos__1_ in
21637 let _endpos = _endpos__3_ in
21638 let _v : 'tv_postfix_expr_expr_invalid_ =
21639 # 1254 "parser_cocci_menhir.mly"
21640 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
21641 # 21642 "parser_cocci_menhir.ml"
21642 in
21643 _menhir_env.MenhirLib.EngineTypes.stack <- {
21644 MenhirLib.EngineTypes.state = _menhir_s;
21645 MenhirLib.EngineTypes.semv = Obj.repr _v;
21646 MenhirLib.EngineTypes.startp = _startpos;
21647 MenhirLib.EngineTypes.endp = _endpos;
21648 MenhirLib.EngineTypes.next = _menhir_stack;
21649 });
21650 (fun _menhir_env ->
21651 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21652 let {
21653 MenhirLib.EngineTypes.semv = _3;
21654 MenhirLib.EngineTypes.startp = _startpos__3_;
21655 MenhirLib.EngineTypes.endp = _endpos__3_;
21656 MenhirLib.EngineTypes.next = {
21657 MenhirLib.EngineTypes.semv = _2;
21658 MenhirLib.EngineTypes.startp = _startpos__2_;
21659 MenhirLib.EngineTypes.endp = _endpos__2_;
21660 MenhirLib.EngineTypes.next = {
21661 MenhirLib.EngineTypes.state = _menhir_s;
21662 MenhirLib.EngineTypes.semv = _1;
21663 MenhirLib.EngineTypes.startp = _startpos__1_;
21664 MenhirLib.EngineTypes.endp = _endpos__1_;
21665 MenhirLib.EngineTypes.next = _menhir_stack;
21666 };
21667 };
21668 } = _menhir_stack in
21669 let _3 : 'tv_ident = Obj.magic _3 in
21670 let _2 : (
21671 # 103 "parser_cocci_menhir.mly"
21672 (Data.clt)
21673 # 21674 "parser_cocci_menhir.ml"
21674 ) = Obj.magic _2 in
21675 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21676 let _startpos = _startpos__1_ in
21677 let _endpos = _endpos__3_ in
21678 let _v : 'tv_postfix_expr_expr_invalid_ =
21679 # 1256 "parser_cocci_menhir.mly"
21680 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
21681 _3)) )
21682 # 21683 "parser_cocci_menhir.ml"
21683 in
21684 _menhir_env.MenhirLib.EngineTypes.stack <- {
21685 MenhirLib.EngineTypes.state = _menhir_s;
21686 MenhirLib.EngineTypes.semv = Obj.repr _v;
21687 MenhirLib.EngineTypes.startp = _startpos;
21688 MenhirLib.EngineTypes.endp = _endpos;
21689 MenhirLib.EngineTypes.next = _menhir_stack;
21690 });
21691 (fun _menhir_env ->
21692 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21693 let {
21694 MenhirLib.EngineTypes.semv = _2;
21695 MenhirLib.EngineTypes.startp = _startpos__2_;
21696 MenhirLib.EngineTypes.endp = _endpos__2_;
21697 MenhirLib.EngineTypes.next = {
21698 MenhirLib.EngineTypes.state = _menhir_s;
21699 MenhirLib.EngineTypes.semv = _1;
21700 MenhirLib.EngineTypes.startp = _startpos__1_;
21701 MenhirLib.EngineTypes.endp = _endpos__1_;
21702 MenhirLib.EngineTypes.next = _menhir_stack;
21703 };
21704 } = _menhir_stack in
21705 let _2 : (
21706 # 84 "parser_cocci_menhir.mly"
21707 (Data.clt)
21708 # 21709 "parser_cocci_menhir.ml"
21709 ) = Obj.magic _2 in
21710 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21711 let _startpos = _startpos__1_ in
21712 let _endpos = _endpos__2_ in
21713 let _v : 'tv_postfix_expr_expr_invalid_ =
21714 # 1259 "parser_cocci_menhir.mly"
21715 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
21716 # 21717 "parser_cocci_menhir.ml"
21717 in
21718 _menhir_env.MenhirLib.EngineTypes.stack <- {
21719 MenhirLib.EngineTypes.state = _menhir_s;
21720 MenhirLib.EngineTypes.semv = Obj.repr _v;
21721 MenhirLib.EngineTypes.startp = _startpos;
21722 MenhirLib.EngineTypes.endp = _endpos;
21723 MenhirLib.EngineTypes.next = _menhir_stack;
21724 });
21725 (fun _menhir_env ->
21726 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21727 let {
21728 MenhirLib.EngineTypes.semv = _2;
21729 MenhirLib.EngineTypes.startp = _startpos__2_;
21730 MenhirLib.EngineTypes.endp = _endpos__2_;
21731 MenhirLib.EngineTypes.next = {
21732 MenhirLib.EngineTypes.state = _menhir_s;
21733 MenhirLib.EngineTypes.semv = _1;
21734 MenhirLib.EngineTypes.startp = _startpos__1_;
21735 MenhirLib.EngineTypes.endp = _endpos__1_;
21736 MenhirLib.EngineTypes.next = _menhir_stack;
21737 };
21738 } = _menhir_stack in
21739 let _2 : (
21740 # 84 "parser_cocci_menhir.mly"
21741 (Data.clt)
21742 # 21743 "parser_cocci_menhir.ml"
21743 ) = Obj.magic _2 in
21744 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21745 let _startpos = _startpos__1_ in
21746 let _endpos = _endpos__2_ in
21747 let _v : 'tv_postfix_expr_expr_invalid_ =
21748 # 1261 "parser_cocci_menhir.mly"
21749 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
21750 # 21751 "parser_cocci_menhir.ml"
21751 in
21752 _menhir_env.MenhirLib.EngineTypes.stack <- {
21753 MenhirLib.EngineTypes.state = _menhir_s;
21754 MenhirLib.EngineTypes.semv = Obj.repr _v;
21755 MenhirLib.EngineTypes.startp = _startpos;
21756 MenhirLib.EngineTypes.endp = _endpos;
21757 MenhirLib.EngineTypes.next = _menhir_stack;
21758 });
21759 (fun _menhir_env ->
21760 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21761 let {
21762 MenhirLib.EngineTypes.semv = _4;
21763 MenhirLib.EngineTypes.startp = _startpos__4_;
21764 MenhirLib.EngineTypes.endp = _endpos__4_;
21765 MenhirLib.EngineTypes.next = {
21766 MenhirLib.EngineTypes.semv = _3;
21767 MenhirLib.EngineTypes.startp = _startpos__3_;
21768 MenhirLib.EngineTypes.endp = _endpos__3_;
21769 MenhirLib.EngineTypes.next = {
21770 MenhirLib.EngineTypes.semv = _2;
21771 MenhirLib.EngineTypes.startp = _startpos__2_;
21772 MenhirLib.EngineTypes.endp = _endpos__2_;
21773 MenhirLib.EngineTypes.next = {
21774 MenhirLib.EngineTypes.state = _menhir_s;
21775 MenhirLib.EngineTypes.semv = _1;
21776 MenhirLib.EngineTypes.startp = _startpos__1_;
21777 MenhirLib.EngineTypes.endp = _endpos__1_;
21778 MenhirLib.EngineTypes.next = _menhir_stack;
21779 };
21780 };
21781 };
21782 } = _menhir_stack in
21783 let _4 : (
21784 # 76 "parser_cocci_menhir.mly"
21785 (Data.clt)
21786 # 21787 "parser_cocci_menhir.ml"
21787 ) = Obj.magic _4 in
21788 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
21789 let _2 : (
21790 # 75 "parser_cocci_menhir.mly"
21791 (Data.clt)
21792 # 21793 "parser_cocci_menhir.ml"
21793 ) = Obj.magic _2 in
21794 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
21795 let _startpos = _startpos__1_ in
21796 let _endpos = _endpos__4_ in
21797 let _v : 'tv_postfix_expr_expr_invalid_ =
21798 # 1263 "parser_cocci_menhir.mly"
21799 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
21800 _3,
21801 P.clt2mcode ")" _4)) )
21802 # 21803 "parser_cocci_menhir.ml"
21803 in
21804 _menhir_env.MenhirLib.EngineTypes.stack <- {
21805 MenhirLib.EngineTypes.state = _menhir_s;
21806 MenhirLib.EngineTypes.semv = Obj.repr _v;
21807 MenhirLib.EngineTypes.startp = _startpos;
21808 MenhirLib.EngineTypes.endp = _endpos;
21809 MenhirLib.EngineTypes.next = _menhir_stack;
21810 });
21811 (fun _menhir_env ->
21812 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21813 let {
21814 MenhirLib.EngineTypes.state = _menhir_s;
21815 MenhirLib.EngineTypes.semv = _1;
21816 MenhirLib.EngineTypes.startp = _startpos__1_;
21817 MenhirLib.EngineTypes.endp = _endpos__1_;
21818 MenhirLib.EngineTypes.next = _menhir_stack;
21819 } = _menhir_stack in
21820 let _1 : 'tv_func_ident = Obj.magic _1 in
21821 let _startpos = _startpos__1_ in
21822 let _endpos = _endpos__1_ in
21823 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21824 # 1268 "parser_cocci_menhir.mly"
21825 ( Ast0.wrap(Ast0.Ident(_1)) )
21826 # 21827 "parser_cocci_menhir.ml"
21827 in
21828 _menhir_env.MenhirLib.EngineTypes.stack <- {
21829 MenhirLib.EngineTypes.state = _menhir_s;
21830 MenhirLib.EngineTypes.semv = Obj.repr _v;
21831 MenhirLib.EngineTypes.startp = _startpos;
21832 MenhirLib.EngineTypes.endp = _endpos;
21833 MenhirLib.EngineTypes.next = _menhir_stack;
21834 });
21835 (fun _menhir_env ->
21836 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21837 let {
21838 MenhirLib.EngineTypes.state = _menhir_s;
21839 MenhirLib.EngineTypes.semv = _1;
21840 MenhirLib.EngineTypes.startp = _startpos__1_;
21841 MenhirLib.EngineTypes.endp = _endpos__1_;
21842 MenhirLib.EngineTypes.next = _menhir_stack;
21843 } = _menhir_stack in
21844 let _1 : (
21845 # 86 "parser_cocci_menhir.mly"
21846 (string * Data.clt)
21847 # 21848 "parser_cocci_menhir.ml"
21848 ) = Obj.magic _1 in
21849 let _startpos = _startpos__1_ in
21850 let _endpos = _endpos__1_ in
21851 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21852 # 1270 "parser_cocci_menhir.mly"
21853 ( let (x,clt) = _1 in
21854 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
21855 # 21856 "parser_cocci_menhir.ml"
21856 in
21857 _menhir_env.MenhirLib.EngineTypes.stack <- {
21858 MenhirLib.EngineTypes.state = _menhir_s;
21859 MenhirLib.EngineTypes.semv = Obj.repr _v;
21860 MenhirLib.EngineTypes.startp = _startpos;
21861 MenhirLib.EngineTypes.endp = _endpos;
21862 MenhirLib.EngineTypes.next = _menhir_stack;
21863 });
21864 (fun _menhir_env ->
21865 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21866 let {
21867 MenhirLib.EngineTypes.state = _menhir_s;
21868 MenhirLib.EngineTypes.semv = _1;
21869 MenhirLib.EngineTypes.startp = _startpos__1_;
21870 MenhirLib.EngineTypes.endp = _endpos__1_;
21871 MenhirLib.EngineTypes.next = _menhir_stack;
21872 } = _menhir_stack in
21873 let _1 : (
21874 # 86 "parser_cocci_menhir.mly"
21875 (string * Data.clt)
21876 # 21877 "parser_cocci_menhir.ml"
21877 ) = Obj.magic _1 in
21878 let _startpos = _startpos__1_ in
21879 let _endpos = _endpos__1_ in
21880 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21881 # 1273 "parser_cocci_menhir.mly"
21882 ( let (x,clt) = _1 in
21883 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
21884 # 21885 "parser_cocci_menhir.ml"
21885 in
21886 _menhir_env.MenhirLib.EngineTypes.stack <- {
21887 MenhirLib.EngineTypes.state = _menhir_s;
21888 MenhirLib.EngineTypes.semv = Obj.repr _v;
21889 MenhirLib.EngineTypes.startp = _startpos;
21890 MenhirLib.EngineTypes.endp = _endpos;
21891 MenhirLib.EngineTypes.next = _menhir_stack;
21892 });
21893 (fun _menhir_env ->
21894 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21895 let {
21896 MenhirLib.EngineTypes.state = _menhir_s;
21897 MenhirLib.EngineTypes.semv = _1;
21898 MenhirLib.EngineTypes.startp = _startpos__1_;
21899 MenhirLib.EngineTypes.endp = _endpos__1_;
21900 MenhirLib.EngineTypes.next = _menhir_stack;
21901 } = _menhir_stack in
21902 let _1 : (
21903 # 86 "parser_cocci_menhir.mly"
21904 (string * Data.clt)
21905 # 21906 "parser_cocci_menhir.ml"
21906 ) = Obj.magic _1 in
21907 let _startpos = _startpos__1_ in
21908 let _endpos = _endpos__1_ in
21909 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21910 # 1276 "parser_cocci_menhir.mly"
21911 ( let (x,clt) = _1 in
21912 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
21913 # 21914 "parser_cocci_menhir.ml"
21914 in
21915 _menhir_env.MenhirLib.EngineTypes.stack <- {
21916 MenhirLib.EngineTypes.state = _menhir_s;
21917 MenhirLib.EngineTypes.semv = Obj.repr _v;
21918 MenhirLib.EngineTypes.startp = _startpos;
21919 MenhirLib.EngineTypes.endp = _endpos;
21920 MenhirLib.EngineTypes.next = _menhir_stack;
21921 });
21922 (fun _menhir_env ->
21923 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21924 let {
21925 MenhirLib.EngineTypes.state = _menhir_s;
21926 MenhirLib.EngineTypes.semv = _1;
21927 MenhirLib.EngineTypes.startp = _startpos__1_;
21928 MenhirLib.EngineTypes.endp = _endpos__1_;
21929 MenhirLib.EngineTypes.next = _menhir_stack;
21930 } = _menhir_stack in
21931 let _1 : (
21932 # 86 "parser_cocci_menhir.mly"
21933 (string * Data.clt)
21934 # 21935 "parser_cocci_menhir.ml"
21935 ) = Obj.magic _1 in
21936 let _startpos = _startpos__1_ in
21937 let _endpos = _endpos__1_ in
21938 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21939 # 1279 "parser_cocci_menhir.mly"
21940 ( let (x,clt) = _1 in
21941 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
21942 # 21943 "parser_cocci_menhir.ml"
21943 in
21944 _menhir_env.MenhirLib.EngineTypes.stack <- {
21945 MenhirLib.EngineTypes.state = _menhir_s;
21946 MenhirLib.EngineTypes.semv = Obj.repr _v;
21947 MenhirLib.EngineTypes.startp = _startpos;
21948 MenhirLib.EngineTypes.endp = _endpos;
21949 MenhirLib.EngineTypes.next = _menhir_stack;
21950 });
21951 (fun _menhir_env ->
21952 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21953 let {
21954 MenhirLib.EngineTypes.state = _menhir_s;
21955 MenhirLib.EngineTypes.semv = _1;
21956 MenhirLib.EngineTypes.startp = _startpos__1_;
21957 MenhirLib.EngineTypes.endp = _endpos__1_;
21958 MenhirLib.EngineTypes.next = _menhir_stack;
21959 } = _menhir_stack in
21960 let _1 : (
21961 # 66 "parser_cocci_menhir.mly"
21962 (Parse_aux.typed_info)
21963 # 21964 "parser_cocci_menhir.ml"
21964 ) = Obj.magic _1 in
21965 let _startpos = _startpos__1_ in
21966 let _endpos = _endpos__1_ in
21967 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21968 # 1282 "parser_cocci_menhir.mly"
21969 ( let (nm,constraints,pure,ty,clt) = _1 in
21970 Ast0.wrap
21971 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
21972 # 21973 "parser_cocci_menhir.ml"
21973 in
21974 _menhir_env.MenhirLib.EngineTypes.stack <- {
21975 MenhirLib.EngineTypes.state = _menhir_s;
21976 MenhirLib.EngineTypes.semv = Obj.repr _v;
21977 MenhirLib.EngineTypes.startp = _startpos;
21978 MenhirLib.EngineTypes.endp = _endpos;
21979 MenhirLib.EngineTypes.next = _menhir_stack;
21980 });
21981 (fun _menhir_env ->
21982 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21983 let {
21984 MenhirLib.EngineTypes.state = _menhir_s;
21985 MenhirLib.EngineTypes.semv = _1;
21986 MenhirLib.EngineTypes.startp = _startpos__1_;
21987 MenhirLib.EngineTypes.endp = _endpos__1_;
21988 MenhirLib.EngineTypes.next = _menhir_stack;
21989 } = _menhir_stack in
21990 let _1 : (
21991 # 63 "parser_cocci_menhir.mly"
21992 (Parse_aux.expinfo)
21993 # 21994 "parser_cocci_menhir.ml"
21994 ) = Obj.magic _1 in
21995 let _startpos = _startpos__1_ in
21996 let _endpos = _endpos__1_ in
21997 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
21998 # 1286 "parser_cocci_menhir.mly"
21999 ( let (nm,constraints,pure,clt) = _1 in
22000 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
22001 # 22002 "parser_cocci_menhir.ml"
22002 in
22003 _menhir_env.MenhirLib.EngineTypes.stack <- {
22004 MenhirLib.EngineTypes.state = _menhir_s;
22005 MenhirLib.EngineTypes.semv = Obj.repr _v;
22006 MenhirLib.EngineTypes.startp = _startpos;
22007 MenhirLib.EngineTypes.endp = _endpos;
22008 MenhirLib.EngineTypes.next = _menhir_stack;
22009 });
22010 (fun _menhir_env ->
22011 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22012 let {
22013 MenhirLib.EngineTypes.state = _menhir_s;
22014 MenhirLib.EngineTypes.semv = _1;
22015 MenhirLib.EngineTypes.startp = _startpos__1_;
22016 MenhirLib.EngineTypes.endp = _endpos__1_;
22017 MenhirLib.EngineTypes.next = _menhir_stack;
22018 } = _menhir_stack in
22019 let _1 : (
22020 # 66 "parser_cocci_menhir.mly"
22021 (Parse_aux.typed_info)
22022 # 22023 "parser_cocci_menhir.ml"
22023 ) = Obj.magic _1 in
22024 let _startpos = _startpos__1_ in
22025 let _endpos = _endpos__1_ in
22026 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22027 # 1289 "parser_cocci_menhir.mly"
22028 ( let (nm,constraints,pure,ty,clt) = _1 in
22029 Ast0.wrap
22030 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
22031 # 22032 "parser_cocci_menhir.ml"
22032 in
22033 _menhir_env.MenhirLib.EngineTypes.stack <- {
22034 MenhirLib.EngineTypes.state = _menhir_s;
22035 MenhirLib.EngineTypes.semv = Obj.repr _v;
22036 MenhirLib.EngineTypes.startp = _startpos;
22037 MenhirLib.EngineTypes.endp = _endpos;
22038 MenhirLib.EngineTypes.next = _menhir_stack;
22039 });
22040 (fun _menhir_env ->
22041 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22042 let {
22043 MenhirLib.EngineTypes.state = _menhir_s;
22044 MenhirLib.EngineTypes.semv = _1;
22045 MenhirLib.EngineTypes.startp = _startpos__1_;
22046 MenhirLib.EngineTypes.endp = _endpos__1_;
22047 MenhirLib.EngineTypes.next = _menhir_stack;
22048 } = _menhir_stack in
22049 let _1 : (
22050 # 66 "parser_cocci_menhir.mly"
22051 (Parse_aux.typed_info)
22052 # 22053 "parser_cocci_menhir.ml"
22053 ) = Obj.magic _1 in
22054 let _startpos = _startpos__1_ in
22055 let _endpos = _endpos__1_ in
22056 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22057 # 1293 "parser_cocci_menhir.mly"
22058 ( let (nm,constraints,pure,ty,clt) = _1 in
22059 Ast0.wrap
22060 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
22061 # 22062 "parser_cocci_menhir.ml"
22062 in
22063 _menhir_env.MenhirLib.EngineTypes.stack <- {
22064 MenhirLib.EngineTypes.state = _menhir_s;
22065 MenhirLib.EngineTypes.semv = Obj.repr _v;
22066 MenhirLib.EngineTypes.startp = _startpos;
22067 MenhirLib.EngineTypes.endp = _endpos;
22068 MenhirLib.EngineTypes.next = _menhir_stack;
22069 });
22070 (fun _menhir_env ->
22071 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22072 let {
22073 MenhirLib.EngineTypes.state = _menhir_s;
22074 MenhirLib.EngineTypes.semv = _1;
22075 MenhirLib.EngineTypes.startp = _startpos__1_;
22076 MenhirLib.EngineTypes.endp = _endpos__1_;
22077 MenhirLib.EngineTypes.next = _menhir_stack;
22078 } = _menhir_stack in
22079 let _1 : (
22080 # 66 "parser_cocci_menhir.mly"
22081 (Parse_aux.typed_info)
22082 # 22083 "parser_cocci_menhir.ml"
22083 ) = Obj.magic _1 in
22084 let _startpos = _startpos__1_ in
22085 let _endpos = _endpos__1_ in
22086 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22087 # 1297 "parser_cocci_menhir.mly"
22088 ( let (nm,constraints,pure,ty,clt) = _1 in
22089 Ast0.wrap
22090 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
22091 # 22092 "parser_cocci_menhir.ml"
22092 in
22093 _menhir_env.MenhirLib.EngineTypes.stack <- {
22094 MenhirLib.EngineTypes.state = _menhir_s;
22095 MenhirLib.EngineTypes.semv = Obj.repr _v;
22096 MenhirLib.EngineTypes.startp = _startpos;
22097 MenhirLib.EngineTypes.endp = _endpos;
22098 MenhirLib.EngineTypes.next = _menhir_stack;
22099 });
22100 (fun _menhir_env ->
22101 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22102 let {
22103 MenhirLib.EngineTypes.semv = _3;
22104 MenhirLib.EngineTypes.startp = _startpos__3_;
22105 MenhirLib.EngineTypes.endp = _endpos__3_;
22106 MenhirLib.EngineTypes.next = {
22107 MenhirLib.EngineTypes.semv = _2;
22108 MenhirLib.EngineTypes.startp = _startpos__2_;
22109 MenhirLib.EngineTypes.endp = _endpos__2_;
22110 MenhirLib.EngineTypes.next = {
22111 MenhirLib.EngineTypes.state = _menhir_s;
22112 MenhirLib.EngineTypes.semv = _1;
22113 MenhirLib.EngineTypes.startp = _startpos__1_;
22114 MenhirLib.EngineTypes.endp = _endpos__1_;
22115 MenhirLib.EngineTypes.next = _menhir_stack;
22116 };
22117 };
22118 } = _menhir_stack in
22119 let _3 : (
22120 # 76 "parser_cocci_menhir.mly"
22121 (Data.clt)
22122 # 22123 "parser_cocci_menhir.ml"
22123 ) = Obj.magic _3 in
22124 let _2 : 'tv_eexpr = Obj.magic _2 in
22125 let _1 : (
22126 # 75 "parser_cocci_menhir.mly"
22127 (Data.clt)
22128 # 22129 "parser_cocci_menhir.ml"
22129 ) = Obj.magic _1 in
22130 let _startpos = _startpos__1_ in
22131 let _endpos = _endpos__3_ in
22132 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22133 # 1301 "parser_cocci_menhir.mly"
22134 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
22135 P.clt2mcode ")" _3)) )
22136 # 22137 "parser_cocci_menhir.ml"
22137 in
22138 _menhir_env.MenhirLib.EngineTypes.stack <- {
22139 MenhirLib.EngineTypes.state = _menhir_s;
22140 MenhirLib.EngineTypes.semv = Obj.repr _v;
22141 MenhirLib.EngineTypes.startp = _startpos;
22142 MenhirLib.EngineTypes.endp = _endpos;
22143 MenhirLib.EngineTypes.next = _menhir_stack;
22144 });
22145 (fun _menhir_env ->
22146 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22147 let {
22148 MenhirLib.EngineTypes.semv = _3;
22149 MenhirLib.EngineTypes.startp = _startpos__3_;
22150 MenhirLib.EngineTypes.endp = _endpos__3_;
22151 MenhirLib.EngineTypes.next = {
22152 MenhirLib.EngineTypes.semv = _2;
22153 MenhirLib.EngineTypes.startp = _startpos__2_;
22154 MenhirLib.EngineTypes.endp = _endpos__2_;
22155 MenhirLib.EngineTypes.next = {
22156 MenhirLib.EngineTypes.state = _menhir_s;
22157 MenhirLib.EngineTypes.semv = _1;
22158 MenhirLib.EngineTypes.startp = _startpos__1_;
22159 MenhirLib.EngineTypes.endp = _endpos__1_;
22160 MenhirLib.EngineTypes.next = _menhir_stack;
22161 };
22162 };
22163 } = _menhir_stack in
22164 let _3 : (
22165 # 76 "parser_cocci_menhir.mly"
22166 (Data.clt)
22167 # 22168 "parser_cocci_menhir.ml"
22168 ) = Obj.magic _3 in
22169 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
22170 let _1 : (
22171 # 75 "parser_cocci_menhir.mly"
22172 (Data.clt)
22173 # 22174 "parser_cocci_menhir.ml"
22174 ) = Obj.magic _1 in
22175 let _startpos = _startpos__1_ in
22176 let _endpos = _endpos__3_ in
22177 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22178 # 1304 "parser_cocci_menhir.mly"
22179 ( let (mids,code) = _2 in
22180 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
22181 code, mids,
22182 P.clt2mcode ")" _3)) )
22183 # 22184 "parser_cocci_menhir.ml"
22184 in
22185 _menhir_env.MenhirLib.EngineTypes.stack <- {
22186 MenhirLib.EngineTypes.state = _menhir_s;
22187 MenhirLib.EngineTypes.semv = Obj.repr _v;
22188 MenhirLib.EngineTypes.startp = _startpos;
22189 MenhirLib.EngineTypes.endp = _endpos;
22190 MenhirLib.EngineTypes.next = _menhir_stack;
22191 });
22192 (fun _menhir_env ->
22193 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22194 let {
22195 MenhirLib.EngineTypes.state = _menhir_s;
22196 MenhirLib.EngineTypes.semv = _1;
22197 MenhirLib.EngineTypes.startp = _startpos__1_;
22198 MenhirLib.EngineTypes.endp = _endpos__1_;
22199 MenhirLib.EngineTypes.next = _menhir_stack;
22200 } = _menhir_stack in
22201 let _1 : 'tv_dot_expressions = Obj.magic _1 in
22202 let _startpos = _startpos__1_ in
22203 let _endpos = _endpos__1_ in
22204 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
22205 # 1308 "parser_cocci_menhir.mly"
22206 ( _1 )
22207 # 22208 "parser_cocci_menhir.ml"
22208 in
22209 _menhir_env.MenhirLib.EngineTypes.stack <- {
22210 MenhirLib.EngineTypes.state = _menhir_s;
22211 MenhirLib.EngineTypes.semv = Obj.repr _v;
22212 MenhirLib.EngineTypes.startp = _startpos;
22213 MenhirLib.EngineTypes.endp = _endpos;
22214 MenhirLib.EngineTypes.next = _menhir_stack;
22215 });
22216 (fun _menhir_env ->
22217 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22218 let {
22219 MenhirLib.EngineTypes.state = _menhir_s;
22220 MenhirLib.EngineTypes.semv = _1;
22221 MenhirLib.EngineTypes.startp = _startpos__1_;
22222 MenhirLib.EngineTypes.endp = _endpos__1_;
22223 MenhirLib.EngineTypes.next = _menhir_stack;
22224 } = _menhir_stack in
22225 let _1 : 'tv_func_ident = Obj.magic _1 in
22226 let _startpos = _startpos__1_ in
22227 let _endpos = _endpos__1_ in
22228 let _v : 'tv_primary_expr_eexpr_invalid_ =
22229 # 1268 "parser_cocci_menhir.mly"
22230 ( Ast0.wrap(Ast0.Ident(_1)) )
22231 # 22232 "parser_cocci_menhir.ml"
22232 in
22233 _menhir_env.MenhirLib.EngineTypes.stack <- {
22234 MenhirLib.EngineTypes.state = _menhir_s;
22235 MenhirLib.EngineTypes.semv = Obj.repr _v;
22236 MenhirLib.EngineTypes.startp = _startpos;
22237 MenhirLib.EngineTypes.endp = _endpos;
22238 MenhirLib.EngineTypes.next = _menhir_stack;
22239 });
22240 (fun _menhir_env ->
22241 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22242 let {
22243 MenhirLib.EngineTypes.state = _menhir_s;
22244 MenhirLib.EngineTypes.semv = _1;
22245 MenhirLib.EngineTypes.startp = _startpos__1_;
22246 MenhirLib.EngineTypes.endp = _endpos__1_;
22247 MenhirLib.EngineTypes.next = _menhir_stack;
22248 } = _menhir_stack in
22249 let _1 : (
22250 # 86 "parser_cocci_menhir.mly"
22251 (string * Data.clt)
22252 # 22253 "parser_cocci_menhir.ml"
22253 ) = Obj.magic _1 in
22254 let _startpos = _startpos__1_ in
22255 let _endpos = _endpos__1_ in
22256 let _v : 'tv_primary_expr_eexpr_invalid_ =
22257 # 1270 "parser_cocci_menhir.mly"
22258 ( let (x,clt) = _1 in
22259 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
22260 # 22261 "parser_cocci_menhir.ml"
22261 in
22262 _menhir_env.MenhirLib.EngineTypes.stack <- {
22263 MenhirLib.EngineTypes.state = _menhir_s;
22264 MenhirLib.EngineTypes.semv = Obj.repr _v;
22265 MenhirLib.EngineTypes.startp = _startpos;
22266 MenhirLib.EngineTypes.endp = _endpos;
22267 MenhirLib.EngineTypes.next = _menhir_stack;
22268 });
22269 (fun _menhir_env ->
22270 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22271 let {
22272 MenhirLib.EngineTypes.state = _menhir_s;
22273 MenhirLib.EngineTypes.semv = _1;
22274 MenhirLib.EngineTypes.startp = _startpos__1_;
22275 MenhirLib.EngineTypes.endp = _endpos__1_;
22276 MenhirLib.EngineTypes.next = _menhir_stack;
22277 } = _menhir_stack in
22278 let _1 : (
22279 # 86 "parser_cocci_menhir.mly"
22280 (string * Data.clt)
22281 # 22282 "parser_cocci_menhir.ml"
22282 ) = Obj.magic _1 in
22283 let _startpos = _startpos__1_ in
22284 let _endpos = _endpos__1_ in
22285 let _v : 'tv_primary_expr_eexpr_invalid_ =
22286 # 1273 "parser_cocci_menhir.mly"
22287 ( let (x,clt) = _1 in
22288 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
22289 # 22290 "parser_cocci_menhir.ml"
22290 in
22291 _menhir_env.MenhirLib.EngineTypes.stack <- {
22292 MenhirLib.EngineTypes.state = _menhir_s;
22293 MenhirLib.EngineTypes.semv = Obj.repr _v;
22294 MenhirLib.EngineTypes.startp = _startpos;
22295 MenhirLib.EngineTypes.endp = _endpos;
22296 MenhirLib.EngineTypes.next = _menhir_stack;
22297 });
22298 (fun _menhir_env ->
22299 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22300 let {
22301 MenhirLib.EngineTypes.state = _menhir_s;
22302 MenhirLib.EngineTypes.semv = _1;
22303 MenhirLib.EngineTypes.startp = _startpos__1_;
22304 MenhirLib.EngineTypes.endp = _endpos__1_;
22305 MenhirLib.EngineTypes.next = _menhir_stack;
22306 } = _menhir_stack in
22307 let _1 : (
22308 # 86 "parser_cocci_menhir.mly"
22309 (string * Data.clt)
22310 # 22311 "parser_cocci_menhir.ml"
22311 ) = Obj.magic _1 in
22312 let _startpos = _startpos__1_ in
22313 let _endpos = _endpos__1_ in
22314 let _v : 'tv_primary_expr_eexpr_invalid_ =
22315 # 1276 "parser_cocci_menhir.mly"
22316 ( let (x,clt) = _1 in
22317 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
22318 # 22319 "parser_cocci_menhir.ml"
22319 in
22320 _menhir_env.MenhirLib.EngineTypes.stack <- {
22321 MenhirLib.EngineTypes.state = _menhir_s;
22322 MenhirLib.EngineTypes.semv = Obj.repr _v;
22323 MenhirLib.EngineTypes.startp = _startpos;
22324 MenhirLib.EngineTypes.endp = _endpos;
22325 MenhirLib.EngineTypes.next = _menhir_stack;
22326 });
22327 (fun _menhir_env ->
22328 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22329 let {
22330 MenhirLib.EngineTypes.state = _menhir_s;
22331 MenhirLib.EngineTypes.semv = _1;
22332 MenhirLib.EngineTypes.startp = _startpos__1_;
22333 MenhirLib.EngineTypes.endp = _endpos__1_;
22334 MenhirLib.EngineTypes.next = _menhir_stack;
22335 } = _menhir_stack in
22336 let _1 : (
22337 # 86 "parser_cocci_menhir.mly"
22338 (string * Data.clt)
22339 # 22340 "parser_cocci_menhir.ml"
22340 ) = Obj.magic _1 in
22341 let _startpos = _startpos__1_ in
22342 let _endpos = _endpos__1_ in
22343 let _v : 'tv_primary_expr_eexpr_invalid_ =
22344 # 1279 "parser_cocci_menhir.mly"
22345 ( let (x,clt) = _1 in
22346 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
22347 # 22348 "parser_cocci_menhir.ml"
22348 in
22349 _menhir_env.MenhirLib.EngineTypes.stack <- {
22350 MenhirLib.EngineTypes.state = _menhir_s;
22351 MenhirLib.EngineTypes.semv = Obj.repr _v;
22352 MenhirLib.EngineTypes.startp = _startpos;
22353 MenhirLib.EngineTypes.endp = _endpos;
22354 MenhirLib.EngineTypes.next = _menhir_stack;
22355 });
22356 (fun _menhir_env ->
22357 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22358 let {
22359 MenhirLib.EngineTypes.state = _menhir_s;
22360 MenhirLib.EngineTypes.semv = _1;
22361 MenhirLib.EngineTypes.startp = _startpos__1_;
22362 MenhirLib.EngineTypes.endp = _endpos__1_;
22363 MenhirLib.EngineTypes.next = _menhir_stack;
22364 } = _menhir_stack in
22365 let _1 : (
22366 # 66 "parser_cocci_menhir.mly"
22367 (Parse_aux.typed_info)
22368 # 22369 "parser_cocci_menhir.ml"
22369 ) = Obj.magic _1 in
22370 let _startpos = _startpos__1_ in
22371 let _endpos = _endpos__1_ in
22372 let _v : 'tv_primary_expr_eexpr_invalid_ =
22373 # 1282 "parser_cocci_menhir.mly"
22374 ( let (nm,constraints,pure,ty,clt) = _1 in
22375 Ast0.wrap
22376 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
22377 # 22378 "parser_cocci_menhir.ml"
22378 in
22379 _menhir_env.MenhirLib.EngineTypes.stack <- {
22380 MenhirLib.EngineTypes.state = _menhir_s;
22381 MenhirLib.EngineTypes.semv = Obj.repr _v;
22382 MenhirLib.EngineTypes.startp = _startpos;
22383 MenhirLib.EngineTypes.endp = _endpos;
22384 MenhirLib.EngineTypes.next = _menhir_stack;
22385 });
22386 (fun _menhir_env ->
22387 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22388 let {
22389 MenhirLib.EngineTypes.state = _menhir_s;
22390 MenhirLib.EngineTypes.semv = _1;
22391 MenhirLib.EngineTypes.startp = _startpos__1_;
22392 MenhirLib.EngineTypes.endp = _endpos__1_;
22393 MenhirLib.EngineTypes.next = _menhir_stack;
22394 } = _menhir_stack in
22395 let _1 : (
22396 # 63 "parser_cocci_menhir.mly"
22397 (Parse_aux.expinfo)
22398 # 22399 "parser_cocci_menhir.ml"
22399 ) = Obj.magic _1 in
22400 let _startpos = _startpos__1_ in
22401 let _endpos = _endpos__1_ in
22402 let _v : 'tv_primary_expr_eexpr_invalid_ =
22403 # 1286 "parser_cocci_menhir.mly"
22404 ( let (nm,constraints,pure,clt) = _1 in
22405 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
22406 # 22407 "parser_cocci_menhir.ml"
22407 in
22408 _menhir_env.MenhirLib.EngineTypes.stack <- {
22409 MenhirLib.EngineTypes.state = _menhir_s;
22410 MenhirLib.EngineTypes.semv = Obj.repr _v;
22411 MenhirLib.EngineTypes.startp = _startpos;
22412 MenhirLib.EngineTypes.endp = _endpos;
22413 MenhirLib.EngineTypes.next = _menhir_stack;
22414 });
22415 (fun _menhir_env ->
22416 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22417 let {
22418 MenhirLib.EngineTypes.state = _menhir_s;
22419 MenhirLib.EngineTypes.semv = _1;
22420 MenhirLib.EngineTypes.startp = _startpos__1_;
22421 MenhirLib.EngineTypes.endp = _endpos__1_;
22422 MenhirLib.EngineTypes.next = _menhir_stack;
22423 } = _menhir_stack in
22424 let _1 : (
22425 # 66 "parser_cocci_menhir.mly"
22426 (Parse_aux.typed_info)
22427 # 22428 "parser_cocci_menhir.ml"
22428 ) = Obj.magic _1 in
22429 let _startpos = _startpos__1_ in
22430 let _endpos = _endpos__1_ in
22431 let _v : 'tv_primary_expr_eexpr_invalid_ =
22432 # 1289 "parser_cocci_menhir.mly"
22433 ( let (nm,constraints,pure,ty,clt) = _1 in
22434 Ast0.wrap
22435 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
22436 # 22437 "parser_cocci_menhir.ml"
22437 in
22438 _menhir_env.MenhirLib.EngineTypes.stack <- {
22439 MenhirLib.EngineTypes.state = _menhir_s;
22440 MenhirLib.EngineTypes.semv = Obj.repr _v;
22441 MenhirLib.EngineTypes.startp = _startpos;
22442 MenhirLib.EngineTypes.endp = _endpos;
22443 MenhirLib.EngineTypes.next = _menhir_stack;
22444 });
22445 (fun _menhir_env ->
22446 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22447 let {
22448 MenhirLib.EngineTypes.state = _menhir_s;
22449 MenhirLib.EngineTypes.semv = _1;
22450 MenhirLib.EngineTypes.startp = _startpos__1_;
22451 MenhirLib.EngineTypes.endp = _endpos__1_;
22452 MenhirLib.EngineTypes.next = _menhir_stack;
22453 } = _menhir_stack in
22454 let _1 : (
22455 # 66 "parser_cocci_menhir.mly"
22456 (Parse_aux.typed_info)
22457 # 22458 "parser_cocci_menhir.ml"
22458 ) = Obj.magic _1 in
22459 let _startpos = _startpos__1_ in
22460 let _endpos = _endpos__1_ in
22461 let _v : 'tv_primary_expr_eexpr_invalid_ =
22462 # 1293 "parser_cocci_menhir.mly"
22463 ( let (nm,constraints,pure,ty,clt) = _1 in
22464 Ast0.wrap
22465 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
22466 # 22467 "parser_cocci_menhir.ml"
22467 in
22468 _menhir_env.MenhirLib.EngineTypes.stack <- {
22469 MenhirLib.EngineTypes.state = _menhir_s;
22470 MenhirLib.EngineTypes.semv = Obj.repr _v;
22471 MenhirLib.EngineTypes.startp = _startpos;
22472 MenhirLib.EngineTypes.endp = _endpos;
22473 MenhirLib.EngineTypes.next = _menhir_stack;
22474 });
22475 (fun _menhir_env ->
22476 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22477 let {
22478 MenhirLib.EngineTypes.state = _menhir_s;
22479 MenhirLib.EngineTypes.semv = _1;
22480 MenhirLib.EngineTypes.startp = _startpos__1_;
22481 MenhirLib.EngineTypes.endp = _endpos__1_;
22482 MenhirLib.EngineTypes.next = _menhir_stack;
22483 } = _menhir_stack in
22484 let _1 : (
22485 # 66 "parser_cocci_menhir.mly"
22486 (Parse_aux.typed_info)
22487 # 22488 "parser_cocci_menhir.ml"
22488 ) = Obj.magic _1 in
22489 let _startpos = _startpos__1_ in
22490 let _endpos = _endpos__1_ in
22491 let _v : 'tv_primary_expr_eexpr_invalid_ =
22492 # 1297 "parser_cocci_menhir.mly"
22493 ( let (nm,constraints,pure,ty,clt) = _1 in
22494 Ast0.wrap
22495 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
22496 # 22497 "parser_cocci_menhir.ml"
22497 in
22498 _menhir_env.MenhirLib.EngineTypes.stack <- {
22499 MenhirLib.EngineTypes.state = _menhir_s;
22500 MenhirLib.EngineTypes.semv = Obj.repr _v;
22501 MenhirLib.EngineTypes.startp = _startpos;
22502 MenhirLib.EngineTypes.endp = _endpos;
22503 MenhirLib.EngineTypes.next = _menhir_stack;
22504 });
22505 (fun _menhir_env ->
22506 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22507 let {
22508 MenhirLib.EngineTypes.semv = _3;
22509 MenhirLib.EngineTypes.startp = _startpos__3_;
22510 MenhirLib.EngineTypes.endp = _endpos__3_;
22511 MenhirLib.EngineTypes.next = {
22512 MenhirLib.EngineTypes.semv = _2;
22513 MenhirLib.EngineTypes.startp = _startpos__2_;
22514 MenhirLib.EngineTypes.endp = _endpos__2_;
22515 MenhirLib.EngineTypes.next = {
22516 MenhirLib.EngineTypes.state = _menhir_s;
22517 MenhirLib.EngineTypes.semv = _1;
22518 MenhirLib.EngineTypes.startp = _startpos__1_;
22519 MenhirLib.EngineTypes.endp = _endpos__1_;
22520 MenhirLib.EngineTypes.next = _menhir_stack;
22521 };
22522 };
22523 } = _menhir_stack in
22524 let _3 : (
22525 # 76 "parser_cocci_menhir.mly"
22526 (Data.clt)
22527 # 22528 "parser_cocci_menhir.ml"
22528 ) = Obj.magic _3 in
22529 let _2 : 'tv_eexpr = Obj.magic _2 in
22530 let _1 : (
22531 # 75 "parser_cocci_menhir.mly"
22532 (Data.clt)
22533 # 22534 "parser_cocci_menhir.ml"
22534 ) = Obj.magic _1 in
22535 let _startpos = _startpos__1_ in
22536 let _endpos = _endpos__3_ in
22537 let _v : 'tv_primary_expr_eexpr_invalid_ =
22538 # 1301 "parser_cocci_menhir.mly"
22539 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
22540 P.clt2mcode ")" _3)) )
22541 # 22542 "parser_cocci_menhir.ml"
22542 in
22543 _menhir_env.MenhirLib.EngineTypes.stack <- {
22544 MenhirLib.EngineTypes.state = _menhir_s;
22545 MenhirLib.EngineTypes.semv = Obj.repr _v;
22546 MenhirLib.EngineTypes.startp = _startpos;
22547 MenhirLib.EngineTypes.endp = _endpos;
22548 MenhirLib.EngineTypes.next = _menhir_stack;
22549 });
22550 (fun _menhir_env ->
22551 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22552 let {
22553 MenhirLib.EngineTypes.semv = _3;
22554 MenhirLib.EngineTypes.startp = _startpos__3_;
22555 MenhirLib.EngineTypes.endp = _endpos__3_;
22556 MenhirLib.EngineTypes.next = {
22557 MenhirLib.EngineTypes.semv = _2;
22558 MenhirLib.EngineTypes.startp = _startpos__2_;
22559 MenhirLib.EngineTypes.endp = _endpos__2_;
22560 MenhirLib.EngineTypes.next = {
22561 MenhirLib.EngineTypes.state = _menhir_s;
22562 MenhirLib.EngineTypes.semv = _1;
22563 MenhirLib.EngineTypes.startp = _startpos__1_;
22564 MenhirLib.EngineTypes.endp = _endpos__1_;
22565 MenhirLib.EngineTypes.next = _menhir_stack;
22566 };
22567 };
22568 } = _menhir_stack in
22569 let _3 : (
22570 # 76 "parser_cocci_menhir.mly"
22571 (Data.clt)
22572 # 22573 "parser_cocci_menhir.ml"
22573 ) = Obj.magic _3 in
22574 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
22575 let _1 : (
22576 # 75 "parser_cocci_menhir.mly"
22577 (Data.clt)
22578 # 22579 "parser_cocci_menhir.ml"
22579 ) = Obj.magic _1 in
22580 let _startpos = _startpos__1_ in
22581 let _endpos = _endpos__3_ in
22582 let _v : 'tv_primary_expr_eexpr_invalid_ =
22583 # 1304 "parser_cocci_menhir.mly"
22584 ( let (mids,code) = _2 in
22585 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
22586 code, mids,
22587 P.clt2mcode ")" _3)) )
22588 # 22589 "parser_cocci_menhir.ml"
22589 in
22590 _menhir_env.MenhirLib.EngineTypes.stack <- {
22591 MenhirLib.EngineTypes.state = _menhir_s;
22592 MenhirLib.EngineTypes.semv = Obj.repr _v;
22593 MenhirLib.EngineTypes.startp = _startpos;
22594 MenhirLib.EngineTypes.endp = _endpos;
22595 MenhirLib.EngineTypes.next = _menhir_stack;
22596 });
22597 (fun _menhir_env ->
22598 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22599 let {
22600 MenhirLib.EngineTypes.state = _menhir_s;
22601 MenhirLib.EngineTypes.semv = _1;
22602 MenhirLib.EngineTypes.startp = _startpos__1_;
22603 MenhirLib.EngineTypes.endp = _endpos__1_;
22604 MenhirLib.EngineTypes.next = _menhir_stack;
22605 } = _menhir_stack in
22606 let _1 : 'tv_invalid = Obj.magic _1 in
22607 let _startpos = _startpos__1_ in
22608 let _endpos = _endpos__1_ in
22609 let _v : 'tv_primary_expr_eexpr_invalid_ =
22610 # 1308 "parser_cocci_menhir.mly"
22611 ( _1 )
22612 # 22613 "parser_cocci_menhir.ml"
22613 in
22614 _menhir_env.MenhirLib.EngineTypes.stack <- {
22615 MenhirLib.EngineTypes.state = _menhir_s;
22616 MenhirLib.EngineTypes.semv = Obj.repr _v;
22617 MenhirLib.EngineTypes.startp = _startpos;
22618 MenhirLib.EngineTypes.endp = _endpos;
22619 MenhirLib.EngineTypes.next = _menhir_stack;
22620 });
22621 (fun _menhir_env ->
22622 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22623 let {
22624 MenhirLib.EngineTypes.state = _menhir_s;
22625 MenhirLib.EngineTypes.semv = _1;
22626 MenhirLib.EngineTypes.startp = _startpos__1_;
22627 MenhirLib.EngineTypes.endp = _endpos__1_;
22628 MenhirLib.EngineTypes.next = _menhir_stack;
22629 } = _menhir_stack in
22630 let _1 : 'tv_func_ident = Obj.magic _1 in
22631 let _startpos = _startpos__1_ in
22632 let _endpos = _endpos__1_ in
22633 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22634 # 1268 "parser_cocci_menhir.mly"
22635 ( Ast0.wrap(Ast0.Ident(_1)) )
22636 # 22637 "parser_cocci_menhir.ml"
22637 in
22638 _menhir_env.MenhirLib.EngineTypes.stack <- {
22639 MenhirLib.EngineTypes.state = _menhir_s;
22640 MenhirLib.EngineTypes.semv = Obj.repr _v;
22641 MenhirLib.EngineTypes.startp = _startpos;
22642 MenhirLib.EngineTypes.endp = _endpos;
22643 MenhirLib.EngineTypes.next = _menhir_stack;
22644 });
22645 (fun _menhir_env ->
22646 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22647 let {
22648 MenhirLib.EngineTypes.state = _menhir_s;
22649 MenhirLib.EngineTypes.semv = _1;
22650 MenhirLib.EngineTypes.startp = _startpos__1_;
22651 MenhirLib.EngineTypes.endp = _endpos__1_;
22652 MenhirLib.EngineTypes.next = _menhir_stack;
22653 } = _menhir_stack in
22654 let _1 : (
22655 # 86 "parser_cocci_menhir.mly"
22656 (string * Data.clt)
22657 # 22658 "parser_cocci_menhir.ml"
22658 ) = Obj.magic _1 in
22659 let _startpos = _startpos__1_ in
22660 let _endpos = _endpos__1_ in
22661 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22662 # 1270 "parser_cocci_menhir.mly"
22663 ( let (x,clt) = _1 in
22664 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
22665 # 22666 "parser_cocci_menhir.ml"
22666 in
22667 _menhir_env.MenhirLib.EngineTypes.stack <- {
22668 MenhirLib.EngineTypes.state = _menhir_s;
22669 MenhirLib.EngineTypes.semv = Obj.repr _v;
22670 MenhirLib.EngineTypes.startp = _startpos;
22671 MenhirLib.EngineTypes.endp = _endpos;
22672 MenhirLib.EngineTypes.next = _menhir_stack;
22673 });
22674 (fun _menhir_env ->
22675 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22676 let {
22677 MenhirLib.EngineTypes.state = _menhir_s;
22678 MenhirLib.EngineTypes.semv = _1;
22679 MenhirLib.EngineTypes.startp = _startpos__1_;
22680 MenhirLib.EngineTypes.endp = _endpos__1_;
22681 MenhirLib.EngineTypes.next = _menhir_stack;
22682 } = _menhir_stack in
22683 let _1 : (
22684 # 86 "parser_cocci_menhir.mly"
22685 (string * Data.clt)
22686 # 22687 "parser_cocci_menhir.ml"
22687 ) = Obj.magic _1 in
22688 let _startpos = _startpos__1_ in
22689 let _endpos = _endpos__1_ in
22690 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22691 # 1273 "parser_cocci_menhir.mly"
22692 ( let (x,clt) = _1 in
22693 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
22694 # 22695 "parser_cocci_menhir.ml"
22695 in
22696 _menhir_env.MenhirLib.EngineTypes.stack <- {
22697 MenhirLib.EngineTypes.state = _menhir_s;
22698 MenhirLib.EngineTypes.semv = Obj.repr _v;
22699 MenhirLib.EngineTypes.startp = _startpos;
22700 MenhirLib.EngineTypes.endp = _endpos;
22701 MenhirLib.EngineTypes.next = _menhir_stack;
22702 });
22703 (fun _menhir_env ->
22704 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22705 let {
22706 MenhirLib.EngineTypes.state = _menhir_s;
22707 MenhirLib.EngineTypes.semv = _1;
22708 MenhirLib.EngineTypes.startp = _startpos__1_;
22709 MenhirLib.EngineTypes.endp = _endpos__1_;
22710 MenhirLib.EngineTypes.next = _menhir_stack;
22711 } = _menhir_stack in
22712 let _1 : (
22713 # 86 "parser_cocci_menhir.mly"
22714 (string * Data.clt)
22715 # 22716 "parser_cocci_menhir.ml"
22716 ) = Obj.magic _1 in
22717 let _startpos = _startpos__1_ in
22718 let _endpos = _endpos__1_ in
22719 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22720 # 1276 "parser_cocci_menhir.mly"
22721 ( let (x,clt) = _1 in
22722 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
22723 # 22724 "parser_cocci_menhir.ml"
22724 in
22725 _menhir_env.MenhirLib.EngineTypes.stack <- {
22726 MenhirLib.EngineTypes.state = _menhir_s;
22727 MenhirLib.EngineTypes.semv = Obj.repr _v;
22728 MenhirLib.EngineTypes.startp = _startpos;
22729 MenhirLib.EngineTypes.endp = _endpos;
22730 MenhirLib.EngineTypes.next = _menhir_stack;
22731 });
22732 (fun _menhir_env ->
22733 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22734 let {
22735 MenhirLib.EngineTypes.state = _menhir_s;
22736 MenhirLib.EngineTypes.semv = _1;
22737 MenhirLib.EngineTypes.startp = _startpos__1_;
22738 MenhirLib.EngineTypes.endp = _endpos__1_;
22739 MenhirLib.EngineTypes.next = _menhir_stack;
22740 } = _menhir_stack in
22741 let _1 : (
22742 # 86 "parser_cocci_menhir.mly"
22743 (string * Data.clt)
22744 # 22745 "parser_cocci_menhir.ml"
22745 ) = Obj.magic _1 in
22746 let _startpos = _startpos__1_ in
22747 let _endpos = _endpos__1_ in
22748 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22749 # 1279 "parser_cocci_menhir.mly"
22750 ( let (x,clt) = _1 in
22751 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
22752 # 22753 "parser_cocci_menhir.ml"
22753 in
22754 _menhir_env.MenhirLib.EngineTypes.stack <- {
22755 MenhirLib.EngineTypes.state = _menhir_s;
22756 MenhirLib.EngineTypes.semv = Obj.repr _v;
22757 MenhirLib.EngineTypes.startp = _startpos;
22758 MenhirLib.EngineTypes.endp = _endpos;
22759 MenhirLib.EngineTypes.next = _menhir_stack;
22760 });
22761 (fun _menhir_env ->
22762 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22763 let {
22764 MenhirLib.EngineTypes.state = _menhir_s;
22765 MenhirLib.EngineTypes.semv = _1;
22766 MenhirLib.EngineTypes.startp = _startpos__1_;
22767 MenhirLib.EngineTypes.endp = _endpos__1_;
22768 MenhirLib.EngineTypes.next = _menhir_stack;
22769 } = _menhir_stack in
22770 let _1 : (
22771 # 66 "parser_cocci_menhir.mly"
22772 (Parse_aux.typed_info)
22773 # 22774 "parser_cocci_menhir.ml"
22774 ) = Obj.magic _1 in
22775 let _startpos = _startpos__1_ in
22776 let _endpos = _endpos__1_ in
22777 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22778 # 1282 "parser_cocci_menhir.mly"
22779 ( let (nm,constraints,pure,ty,clt) = _1 in
22780 Ast0.wrap
22781 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
22782 # 22783 "parser_cocci_menhir.ml"
22783 in
22784 _menhir_env.MenhirLib.EngineTypes.stack <- {
22785 MenhirLib.EngineTypes.state = _menhir_s;
22786 MenhirLib.EngineTypes.semv = Obj.repr _v;
22787 MenhirLib.EngineTypes.startp = _startpos;
22788 MenhirLib.EngineTypes.endp = _endpos;
22789 MenhirLib.EngineTypes.next = _menhir_stack;
22790 });
22791 (fun _menhir_env ->
22792 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22793 let {
22794 MenhirLib.EngineTypes.state = _menhir_s;
22795 MenhirLib.EngineTypes.semv = _1;
22796 MenhirLib.EngineTypes.startp = _startpos__1_;
22797 MenhirLib.EngineTypes.endp = _endpos__1_;
22798 MenhirLib.EngineTypes.next = _menhir_stack;
22799 } = _menhir_stack in
22800 let _1 : (
22801 # 63 "parser_cocci_menhir.mly"
22802 (Parse_aux.expinfo)
22803 # 22804 "parser_cocci_menhir.ml"
22804 ) = Obj.magic _1 in
22805 let _startpos = _startpos__1_ in
22806 let _endpos = _endpos__1_ in
22807 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22808 # 1286 "parser_cocci_menhir.mly"
22809 ( let (nm,constraints,pure,clt) = _1 in
22810 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
22811 # 22812 "parser_cocci_menhir.ml"
22812 in
22813 _menhir_env.MenhirLib.EngineTypes.stack <- {
22814 MenhirLib.EngineTypes.state = _menhir_s;
22815 MenhirLib.EngineTypes.semv = Obj.repr _v;
22816 MenhirLib.EngineTypes.startp = _startpos;
22817 MenhirLib.EngineTypes.endp = _endpos;
22818 MenhirLib.EngineTypes.next = _menhir_stack;
22819 });
22820 (fun _menhir_env ->
22821 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22822 let {
22823 MenhirLib.EngineTypes.state = _menhir_s;
22824 MenhirLib.EngineTypes.semv = _1;
22825 MenhirLib.EngineTypes.startp = _startpos__1_;
22826 MenhirLib.EngineTypes.endp = _endpos__1_;
22827 MenhirLib.EngineTypes.next = _menhir_stack;
22828 } = _menhir_stack in
22829 let _1 : (
22830 # 66 "parser_cocci_menhir.mly"
22831 (Parse_aux.typed_info)
22832 # 22833 "parser_cocci_menhir.ml"
22833 ) = Obj.magic _1 in
22834 let _startpos = _startpos__1_ in
22835 let _endpos = _endpos__1_ in
22836 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22837 # 1289 "parser_cocci_menhir.mly"
22838 ( let (nm,constraints,pure,ty,clt) = _1 in
22839 Ast0.wrap
22840 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
22841 # 22842 "parser_cocci_menhir.ml"
22842 in
22843 _menhir_env.MenhirLib.EngineTypes.stack <- {
22844 MenhirLib.EngineTypes.state = _menhir_s;
22845 MenhirLib.EngineTypes.semv = Obj.repr _v;
22846 MenhirLib.EngineTypes.startp = _startpos;
22847 MenhirLib.EngineTypes.endp = _endpos;
22848 MenhirLib.EngineTypes.next = _menhir_stack;
22849 });
22850 (fun _menhir_env ->
22851 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22852 let {
22853 MenhirLib.EngineTypes.state = _menhir_s;
22854 MenhirLib.EngineTypes.semv = _1;
22855 MenhirLib.EngineTypes.startp = _startpos__1_;
22856 MenhirLib.EngineTypes.endp = _endpos__1_;
22857 MenhirLib.EngineTypes.next = _menhir_stack;
22858 } = _menhir_stack in
22859 let _1 : (
22860 # 66 "parser_cocci_menhir.mly"
22861 (Parse_aux.typed_info)
22862 # 22863 "parser_cocci_menhir.ml"
22863 ) = Obj.magic _1 in
22864 let _startpos = _startpos__1_ in
22865 let _endpos = _endpos__1_ in
22866 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22867 # 1293 "parser_cocci_menhir.mly"
22868 ( let (nm,constraints,pure,ty,clt) = _1 in
22869 Ast0.wrap
22870 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
22871 # 22872 "parser_cocci_menhir.ml"
22872 in
22873 _menhir_env.MenhirLib.EngineTypes.stack <- {
22874 MenhirLib.EngineTypes.state = _menhir_s;
22875 MenhirLib.EngineTypes.semv = Obj.repr _v;
22876 MenhirLib.EngineTypes.startp = _startpos;
22877 MenhirLib.EngineTypes.endp = _endpos;
22878 MenhirLib.EngineTypes.next = _menhir_stack;
22879 });
22880 (fun _menhir_env ->
22881 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22882 let {
22883 MenhirLib.EngineTypes.state = _menhir_s;
22884 MenhirLib.EngineTypes.semv = _1;
22885 MenhirLib.EngineTypes.startp = _startpos__1_;
22886 MenhirLib.EngineTypes.endp = _endpos__1_;
22887 MenhirLib.EngineTypes.next = _menhir_stack;
22888 } = _menhir_stack in
22889 let _1 : (
22890 # 66 "parser_cocci_menhir.mly"
22891 (Parse_aux.typed_info)
22892 # 22893 "parser_cocci_menhir.ml"
22893 ) = Obj.magic _1 in
22894 let _startpos = _startpos__1_ in
22895 let _endpos = _endpos__1_ in
22896 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22897 # 1297 "parser_cocci_menhir.mly"
22898 ( let (nm,constraints,pure,ty,clt) = _1 in
22899 Ast0.wrap
22900 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
22901 # 22902 "parser_cocci_menhir.ml"
22902 in
22903 _menhir_env.MenhirLib.EngineTypes.stack <- {
22904 MenhirLib.EngineTypes.state = _menhir_s;
22905 MenhirLib.EngineTypes.semv = Obj.repr _v;
22906 MenhirLib.EngineTypes.startp = _startpos;
22907 MenhirLib.EngineTypes.endp = _endpos;
22908 MenhirLib.EngineTypes.next = _menhir_stack;
22909 });
22910 (fun _menhir_env ->
22911 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22912 let {
22913 MenhirLib.EngineTypes.semv = _3;
22914 MenhirLib.EngineTypes.startp = _startpos__3_;
22915 MenhirLib.EngineTypes.endp = _endpos__3_;
22916 MenhirLib.EngineTypes.next = {
22917 MenhirLib.EngineTypes.semv = _2;
22918 MenhirLib.EngineTypes.startp = _startpos__2_;
22919 MenhirLib.EngineTypes.endp = _endpos__2_;
22920 MenhirLib.EngineTypes.next = {
22921 MenhirLib.EngineTypes.state = _menhir_s;
22922 MenhirLib.EngineTypes.semv = _1;
22923 MenhirLib.EngineTypes.startp = _startpos__1_;
22924 MenhirLib.EngineTypes.endp = _endpos__1_;
22925 MenhirLib.EngineTypes.next = _menhir_stack;
22926 };
22927 };
22928 } = _menhir_stack in
22929 let _3 : (
22930 # 76 "parser_cocci_menhir.mly"
22931 (Data.clt)
22932 # 22933 "parser_cocci_menhir.ml"
22933 ) = Obj.magic _3 in
22934 let _2 : 'tv_eexpr = Obj.magic _2 in
22935 let _1 : (
22936 # 75 "parser_cocci_menhir.mly"
22937 (Data.clt)
22938 # 22939 "parser_cocci_menhir.ml"
22939 ) = Obj.magic _1 in
22940 let _startpos = _startpos__1_ in
22941 let _endpos = _endpos__3_ in
22942 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22943 # 1301 "parser_cocci_menhir.mly"
22944 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
22945 P.clt2mcode ")" _3)) )
22946 # 22947 "parser_cocci_menhir.ml"
22947 in
22948 _menhir_env.MenhirLib.EngineTypes.stack <- {
22949 MenhirLib.EngineTypes.state = _menhir_s;
22950 MenhirLib.EngineTypes.semv = Obj.repr _v;
22951 MenhirLib.EngineTypes.startp = _startpos;
22952 MenhirLib.EngineTypes.endp = _endpos;
22953 MenhirLib.EngineTypes.next = _menhir_stack;
22954 });
22955 (fun _menhir_env ->
22956 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22957 let {
22958 MenhirLib.EngineTypes.semv = _3;
22959 MenhirLib.EngineTypes.startp = _startpos__3_;
22960 MenhirLib.EngineTypes.endp = _endpos__3_;
22961 MenhirLib.EngineTypes.next = {
22962 MenhirLib.EngineTypes.semv = _2;
22963 MenhirLib.EngineTypes.startp = _startpos__2_;
22964 MenhirLib.EngineTypes.endp = _endpos__2_;
22965 MenhirLib.EngineTypes.next = {
22966 MenhirLib.EngineTypes.state = _menhir_s;
22967 MenhirLib.EngineTypes.semv = _1;
22968 MenhirLib.EngineTypes.startp = _startpos__1_;
22969 MenhirLib.EngineTypes.endp = _endpos__1_;
22970 MenhirLib.EngineTypes.next = _menhir_stack;
22971 };
22972 };
22973 } = _menhir_stack in
22974 let _3 : (
22975 # 76 "parser_cocci_menhir.mly"
22976 (Data.clt)
22977 # 22978 "parser_cocci_menhir.ml"
22978 ) = Obj.magic _3 in
22979 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
22980 let _1 : (
22981 # 75 "parser_cocci_menhir.mly"
22982 (Data.clt)
22983 # 22984 "parser_cocci_menhir.ml"
22984 ) = Obj.magic _1 in
22985 let _startpos = _startpos__1_ in
22986 let _endpos = _endpos__3_ in
22987 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
22988 # 1304 "parser_cocci_menhir.mly"
22989 ( let (mids,code) = _2 in
22990 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
22991 code, mids,
22992 P.clt2mcode ")" _3)) )
22993 # 22994 "parser_cocci_menhir.ml"
22994 in
22995 _menhir_env.MenhirLib.EngineTypes.stack <- {
22996 MenhirLib.EngineTypes.state = _menhir_s;
22997 MenhirLib.EngineTypes.semv = Obj.repr _v;
22998 MenhirLib.EngineTypes.startp = _startpos;
22999 MenhirLib.EngineTypes.endp = _endpos;
23000 MenhirLib.EngineTypes.next = _menhir_stack;
23001 });
23002 (fun _menhir_env ->
23003 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23004 let {
23005 MenhirLib.EngineTypes.state = _menhir_s;
23006 MenhirLib.EngineTypes.semv = _1;
23007 MenhirLib.EngineTypes.startp = _startpos__1_;
23008 MenhirLib.EngineTypes.endp = _endpos__1_;
23009 MenhirLib.EngineTypes.next = _menhir_stack;
23010 } = _menhir_stack in
23011 let _1 : 'tv_nest_expressions = Obj.magic _1 in
23012 let _startpos = _startpos__1_ in
23013 let _endpos = _endpos__1_ in
23014 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
23015 # 1308 "parser_cocci_menhir.mly"
23016 ( _1 )
23017 # 23018 "parser_cocci_menhir.ml"
23018 in
23019 _menhir_env.MenhirLib.EngineTypes.stack <- {
23020 MenhirLib.EngineTypes.state = _menhir_s;
23021 MenhirLib.EngineTypes.semv = Obj.repr _v;
23022 MenhirLib.EngineTypes.startp = _startpos;
23023 MenhirLib.EngineTypes.endp = _endpos;
23024 MenhirLib.EngineTypes.next = _menhir_stack;
23025 });
23026 (fun _menhir_env ->
23027 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23028 let {
23029 MenhirLib.EngineTypes.state = _menhir_s;
23030 MenhirLib.EngineTypes.semv = _1;
23031 MenhirLib.EngineTypes.startp = _startpos__1_;
23032 MenhirLib.EngineTypes.endp = _endpos__1_;
23033 MenhirLib.EngineTypes.next = _menhir_stack;
23034 } = _menhir_stack in
23035 let _1 : 'tv_func_ident = Obj.magic _1 in
23036 let _startpos = _startpos__1_ in
23037 let _endpos = _endpos__1_ in
23038 let _v : 'tv_primary_expr_expr_invalid_ =
23039 # 1268 "parser_cocci_menhir.mly"
23040 ( Ast0.wrap(Ast0.Ident(_1)) )
23041 # 23042 "parser_cocci_menhir.ml"
23042 in
23043 _menhir_env.MenhirLib.EngineTypes.stack <- {
23044 MenhirLib.EngineTypes.state = _menhir_s;
23045 MenhirLib.EngineTypes.semv = Obj.repr _v;
23046 MenhirLib.EngineTypes.startp = _startpos;
23047 MenhirLib.EngineTypes.endp = _endpos;
23048 MenhirLib.EngineTypes.next = _menhir_stack;
23049 });
23050 (fun _menhir_env ->
23051 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23052 let {
23053 MenhirLib.EngineTypes.state = _menhir_s;
23054 MenhirLib.EngineTypes.semv = _1;
23055 MenhirLib.EngineTypes.startp = _startpos__1_;
23056 MenhirLib.EngineTypes.endp = _endpos__1_;
23057 MenhirLib.EngineTypes.next = _menhir_stack;
23058 } = _menhir_stack in
23059 let _1 : (
23060 # 86 "parser_cocci_menhir.mly"
23061 (string * Data.clt)
23062 # 23063 "parser_cocci_menhir.ml"
23063 ) = Obj.magic _1 in
23064 let _startpos = _startpos__1_ in
23065 let _endpos = _endpos__1_ in
23066 let _v : 'tv_primary_expr_expr_invalid_ =
23067 # 1270 "parser_cocci_menhir.mly"
23068 ( let (x,clt) = _1 in
23069 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
23070 # 23071 "parser_cocci_menhir.ml"
23071 in
23072 _menhir_env.MenhirLib.EngineTypes.stack <- {
23073 MenhirLib.EngineTypes.state = _menhir_s;
23074 MenhirLib.EngineTypes.semv = Obj.repr _v;
23075 MenhirLib.EngineTypes.startp = _startpos;
23076 MenhirLib.EngineTypes.endp = _endpos;
23077 MenhirLib.EngineTypes.next = _menhir_stack;
23078 });
23079 (fun _menhir_env ->
23080 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23081 let {
23082 MenhirLib.EngineTypes.state = _menhir_s;
23083 MenhirLib.EngineTypes.semv = _1;
23084 MenhirLib.EngineTypes.startp = _startpos__1_;
23085 MenhirLib.EngineTypes.endp = _endpos__1_;
23086 MenhirLib.EngineTypes.next = _menhir_stack;
23087 } = _menhir_stack in
23088 let _1 : (
23089 # 86 "parser_cocci_menhir.mly"
23090 (string * Data.clt)
23091 # 23092 "parser_cocci_menhir.ml"
23092 ) = Obj.magic _1 in
23093 let _startpos = _startpos__1_ in
23094 let _endpos = _endpos__1_ in
23095 let _v : 'tv_primary_expr_expr_invalid_ =
23096 # 1273 "parser_cocci_menhir.mly"
23097 ( let (x,clt) = _1 in
23098 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
23099 # 23100 "parser_cocci_menhir.ml"
23100 in
23101 _menhir_env.MenhirLib.EngineTypes.stack <- {
23102 MenhirLib.EngineTypes.state = _menhir_s;
23103 MenhirLib.EngineTypes.semv = Obj.repr _v;
23104 MenhirLib.EngineTypes.startp = _startpos;
23105 MenhirLib.EngineTypes.endp = _endpos;
23106 MenhirLib.EngineTypes.next = _menhir_stack;
23107 });
23108 (fun _menhir_env ->
23109 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23110 let {
23111 MenhirLib.EngineTypes.state = _menhir_s;
23112 MenhirLib.EngineTypes.semv = _1;
23113 MenhirLib.EngineTypes.startp = _startpos__1_;
23114 MenhirLib.EngineTypes.endp = _endpos__1_;
23115 MenhirLib.EngineTypes.next = _menhir_stack;
23116 } = _menhir_stack in
23117 let _1 : (
23118 # 86 "parser_cocci_menhir.mly"
23119 (string * Data.clt)
23120 # 23121 "parser_cocci_menhir.ml"
23121 ) = Obj.magic _1 in
23122 let _startpos = _startpos__1_ in
23123 let _endpos = _endpos__1_ in
23124 let _v : 'tv_primary_expr_expr_invalid_ =
23125 # 1276 "parser_cocci_menhir.mly"
23126 ( let (x,clt) = _1 in
23127 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
23128 # 23129 "parser_cocci_menhir.ml"
23129 in
23130 _menhir_env.MenhirLib.EngineTypes.stack <- {
23131 MenhirLib.EngineTypes.state = _menhir_s;
23132 MenhirLib.EngineTypes.semv = Obj.repr _v;
23133 MenhirLib.EngineTypes.startp = _startpos;
23134 MenhirLib.EngineTypes.endp = _endpos;
23135 MenhirLib.EngineTypes.next = _menhir_stack;
23136 });
23137 (fun _menhir_env ->
23138 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23139 let {
23140 MenhirLib.EngineTypes.state = _menhir_s;
23141 MenhirLib.EngineTypes.semv = _1;
23142 MenhirLib.EngineTypes.startp = _startpos__1_;
23143 MenhirLib.EngineTypes.endp = _endpos__1_;
23144 MenhirLib.EngineTypes.next = _menhir_stack;
23145 } = _menhir_stack in
23146 let _1 : (
23147 # 86 "parser_cocci_menhir.mly"
23148 (string * Data.clt)
23149 # 23150 "parser_cocci_menhir.ml"
23150 ) = Obj.magic _1 in
23151 let _startpos = _startpos__1_ in
23152 let _endpos = _endpos__1_ in
23153 let _v : 'tv_primary_expr_expr_invalid_ =
23154 # 1279 "parser_cocci_menhir.mly"
23155 ( let (x,clt) = _1 in
23156 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
23157 # 23158 "parser_cocci_menhir.ml"
23158 in
23159 _menhir_env.MenhirLib.EngineTypes.stack <- {
23160 MenhirLib.EngineTypes.state = _menhir_s;
23161 MenhirLib.EngineTypes.semv = Obj.repr _v;
23162 MenhirLib.EngineTypes.startp = _startpos;
23163 MenhirLib.EngineTypes.endp = _endpos;
23164 MenhirLib.EngineTypes.next = _menhir_stack;
23165 });
23166 (fun _menhir_env ->
23167 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23168 let {
23169 MenhirLib.EngineTypes.state = _menhir_s;
23170 MenhirLib.EngineTypes.semv = _1;
23171 MenhirLib.EngineTypes.startp = _startpos__1_;
23172 MenhirLib.EngineTypes.endp = _endpos__1_;
23173 MenhirLib.EngineTypes.next = _menhir_stack;
23174 } = _menhir_stack in
23175 let _1 : (
23176 # 66 "parser_cocci_menhir.mly"
23177 (Parse_aux.typed_info)
23178 # 23179 "parser_cocci_menhir.ml"
23179 ) = Obj.magic _1 in
23180 let _startpos = _startpos__1_ in
23181 let _endpos = _endpos__1_ in
23182 let _v : 'tv_primary_expr_expr_invalid_ =
23183 # 1282 "parser_cocci_menhir.mly"
23184 ( let (nm,constraints,pure,ty,clt) = _1 in
23185 Ast0.wrap
23186 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
23187 # 23188 "parser_cocci_menhir.ml"
23188 in
23189 _menhir_env.MenhirLib.EngineTypes.stack <- {
23190 MenhirLib.EngineTypes.state = _menhir_s;
23191 MenhirLib.EngineTypes.semv = Obj.repr _v;
23192 MenhirLib.EngineTypes.startp = _startpos;
23193 MenhirLib.EngineTypes.endp = _endpos;
23194 MenhirLib.EngineTypes.next = _menhir_stack;
23195 });
23196 (fun _menhir_env ->
23197 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23198 let {
23199 MenhirLib.EngineTypes.state = _menhir_s;
23200 MenhirLib.EngineTypes.semv = _1;
23201 MenhirLib.EngineTypes.startp = _startpos__1_;
23202 MenhirLib.EngineTypes.endp = _endpos__1_;
23203 MenhirLib.EngineTypes.next = _menhir_stack;
23204 } = _menhir_stack in
23205 let _1 : (
23206 # 63 "parser_cocci_menhir.mly"
23207 (Parse_aux.expinfo)
23208 # 23209 "parser_cocci_menhir.ml"
23209 ) = Obj.magic _1 in
23210 let _startpos = _startpos__1_ in
23211 let _endpos = _endpos__1_ in
23212 let _v : 'tv_primary_expr_expr_invalid_ =
23213 # 1286 "parser_cocci_menhir.mly"
23214 ( let (nm,constraints,pure,clt) = _1 in
23215 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
23216 # 23217 "parser_cocci_menhir.ml"
23217 in
23218 _menhir_env.MenhirLib.EngineTypes.stack <- {
23219 MenhirLib.EngineTypes.state = _menhir_s;
23220 MenhirLib.EngineTypes.semv = Obj.repr _v;
23221 MenhirLib.EngineTypes.startp = _startpos;
23222 MenhirLib.EngineTypes.endp = _endpos;
23223 MenhirLib.EngineTypes.next = _menhir_stack;
23224 });
23225 (fun _menhir_env ->
23226 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23227 let {
23228 MenhirLib.EngineTypes.state = _menhir_s;
23229 MenhirLib.EngineTypes.semv = _1;
23230 MenhirLib.EngineTypes.startp = _startpos__1_;
23231 MenhirLib.EngineTypes.endp = _endpos__1_;
23232 MenhirLib.EngineTypes.next = _menhir_stack;
23233 } = _menhir_stack in
23234 let _1 : (
23235 # 66 "parser_cocci_menhir.mly"
23236 (Parse_aux.typed_info)
23237 # 23238 "parser_cocci_menhir.ml"
23238 ) = Obj.magic _1 in
23239 let _startpos = _startpos__1_ in
23240 let _endpos = _endpos__1_ in
23241 let _v : 'tv_primary_expr_expr_invalid_ =
23242 # 1289 "parser_cocci_menhir.mly"
23243 ( let (nm,constraints,pure,ty,clt) = _1 in
23244 Ast0.wrap
23245 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
23246 # 23247 "parser_cocci_menhir.ml"
23247 in
23248 _menhir_env.MenhirLib.EngineTypes.stack <- {
23249 MenhirLib.EngineTypes.state = _menhir_s;
23250 MenhirLib.EngineTypes.semv = Obj.repr _v;
23251 MenhirLib.EngineTypes.startp = _startpos;
23252 MenhirLib.EngineTypes.endp = _endpos;
23253 MenhirLib.EngineTypes.next = _menhir_stack;
23254 });
23255 (fun _menhir_env ->
23256 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23257 let {
23258 MenhirLib.EngineTypes.state = _menhir_s;
23259 MenhirLib.EngineTypes.semv = _1;
23260 MenhirLib.EngineTypes.startp = _startpos__1_;
23261 MenhirLib.EngineTypes.endp = _endpos__1_;
23262 MenhirLib.EngineTypes.next = _menhir_stack;
23263 } = _menhir_stack in
23264 let _1 : (
23265 # 66 "parser_cocci_menhir.mly"
23266 (Parse_aux.typed_info)
23267 # 23268 "parser_cocci_menhir.ml"
23268 ) = Obj.magic _1 in
23269 let _startpos = _startpos__1_ in
23270 let _endpos = _endpos__1_ in
23271 let _v : 'tv_primary_expr_expr_invalid_ =
23272 # 1293 "parser_cocci_menhir.mly"
23273 ( let (nm,constraints,pure,ty,clt) = _1 in
23274 Ast0.wrap
23275 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
23276 # 23277 "parser_cocci_menhir.ml"
23277 in
23278 _menhir_env.MenhirLib.EngineTypes.stack <- {
23279 MenhirLib.EngineTypes.state = _menhir_s;
23280 MenhirLib.EngineTypes.semv = Obj.repr _v;
23281 MenhirLib.EngineTypes.startp = _startpos;
23282 MenhirLib.EngineTypes.endp = _endpos;
23283 MenhirLib.EngineTypes.next = _menhir_stack;
23284 });
23285 (fun _menhir_env ->
23286 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23287 let {
23288 MenhirLib.EngineTypes.state = _menhir_s;
23289 MenhirLib.EngineTypes.semv = _1;
23290 MenhirLib.EngineTypes.startp = _startpos__1_;
23291 MenhirLib.EngineTypes.endp = _endpos__1_;
23292 MenhirLib.EngineTypes.next = _menhir_stack;
23293 } = _menhir_stack in
23294 let _1 : (
23295 # 66 "parser_cocci_menhir.mly"
23296 (Parse_aux.typed_info)
23297 # 23298 "parser_cocci_menhir.ml"
23298 ) = Obj.magic _1 in
23299 let _startpos = _startpos__1_ in
23300 let _endpos = _endpos__1_ in
23301 let _v : 'tv_primary_expr_expr_invalid_ =
23302 # 1297 "parser_cocci_menhir.mly"
23303 ( let (nm,constraints,pure,ty,clt) = _1 in
23304 Ast0.wrap
23305 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
23306 # 23307 "parser_cocci_menhir.ml"
23307 in
23308 _menhir_env.MenhirLib.EngineTypes.stack <- {
23309 MenhirLib.EngineTypes.state = _menhir_s;
23310 MenhirLib.EngineTypes.semv = Obj.repr _v;
23311 MenhirLib.EngineTypes.startp = _startpos;
23312 MenhirLib.EngineTypes.endp = _endpos;
23313 MenhirLib.EngineTypes.next = _menhir_stack;
23314 });
23315 (fun _menhir_env ->
23316 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23317 let {
23318 MenhirLib.EngineTypes.semv = _3;
23319 MenhirLib.EngineTypes.startp = _startpos__3_;
23320 MenhirLib.EngineTypes.endp = _endpos__3_;
23321 MenhirLib.EngineTypes.next = {
23322 MenhirLib.EngineTypes.semv = _2;
23323 MenhirLib.EngineTypes.startp = _startpos__2_;
23324 MenhirLib.EngineTypes.endp = _endpos__2_;
23325 MenhirLib.EngineTypes.next = {
23326 MenhirLib.EngineTypes.state = _menhir_s;
23327 MenhirLib.EngineTypes.semv = _1;
23328 MenhirLib.EngineTypes.startp = _startpos__1_;
23329 MenhirLib.EngineTypes.endp = _endpos__1_;
23330 MenhirLib.EngineTypes.next = _menhir_stack;
23331 };
23332 };
23333 } = _menhir_stack in
23334 let _3 : (
23335 # 76 "parser_cocci_menhir.mly"
23336 (Data.clt)
23337 # 23338 "parser_cocci_menhir.ml"
23338 ) = Obj.magic _3 in
23339 let _2 : 'tv_eexpr = Obj.magic _2 in
23340 let _1 : (
23341 # 75 "parser_cocci_menhir.mly"
23342 (Data.clt)
23343 # 23344 "parser_cocci_menhir.ml"
23344 ) = Obj.magic _1 in
23345 let _startpos = _startpos__1_ in
23346 let _endpos = _endpos__3_ in
23347 let _v : 'tv_primary_expr_expr_invalid_ =
23348 # 1301 "parser_cocci_menhir.mly"
23349 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
23350 P.clt2mcode ")" _3)) )
23351 # 23352 "parser_cocci_menhir.ml"
23352 in
23353 _menhir_env.MenhirLib.EngineTypes.stack <- {
23354 MenhirLib.EngineTypes.state = _menhir_s;
23355 MenhirLib.EngineTypes.semv = Obj.repr _v;
23356 MenhirLib.EngineTypes.startp = _startpos;
23357 MenhirLib.EngineTypes.endp = _endpos;
23358 MenhirLib.EngineTypes.next = _menhir_stack;
23359 });
23360 (fun _menhir_env ->
23361 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23362 let {
23363 MenhirLib.EngineTypes.semv = _3;
23364 MenhirLib.EngineTypes.startp = _startpos__3_;
23365 MenhirLib.EngineTypes.endp = _endpos__3_;
23366 MenhirLib.EngineTypes.next = {
23367 MenhirLib.EngineTypes.semv = _2;
23368 MenhirLib.EngineTypes.startp = _startpos__2_;
23369 MenhirLib.EngineTypes.endp = _endpos__2_;
23370 MenhirLib.EngineTypes.next = {
23371 MenhirLib.EngineTypes.state = _menhir_s;
23372 MenhirLib.EngineTypes.semv = _1;
23373 MenhirLib.EngineTypes.startp = _startpos__1_;
23374 MenhirLib.EngineTypes.endp = _endpos__1_;
23375 MenhirLib.EngineTypes.next = _menhir_stack;
23376 };
23377 };
23378 } = _menhir_stack in
23379 let _3 : (
23380 # 76 "parser_cocci_menhir.mly"
23381 (Data.clt)
23382 # 23383 "parser_cocci_menhir.ml"
23383 ) = Obj.magic _3 in
23384 let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in
23385 let _1 : (
23386 # 75 "parser_cocci_menhir.mly"
23387 (Data.clt)
23388 # 23389 "parser_cocci_menhir.ml"
23389 ) = Obj.magic _1 in
23390 let _startpos = _startpos__1_ in
23391 let _endpos = _endpos__3_ in
23392 let _v : 'tv_primary_expr_expr_invalid_ =
23393 # 1304 "parser_cocci_menhir.mly"
23394 ( let (mids,code) = _2 in
23395 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
23396 code, mids,
23397 P.clt2mcode ")" _3)) )
23398 # 23399 "parser_cocci_menhir.ml"
23399 in
23400 _menhir_env.MenhirLib.EngineTypes.stack <- {
23401 MenhirLib.EngineTypes.state = _menhir_s;
23402 MenhirLib.EngineTypes.semv = Obj.repr _v;
23403 MenhirLib.EngineTypes.startp = _startpos;
23404 MenhirLib.EngineTypes.endp = _endpos;
23405 MenhirLib.EngineTypes.next = _menhir_stack;
23406 });
23407 (fun _menhir_env ->
23408 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23409 let {
23410 MenhirLib.EngineTypes.state = _menhir_s;
23411 MenhirLib.EngineTypes.semv = _1;
23412 MenhirLib.EngineTypes.startp = _startpos__1_;
23413 MenhirLib.EngineTypes.endp = _endpos__1_;
23414 MenhirLib.EngineTypes.next = _menhir_stack;
23415 } = _menhir_stack in
23416 let _1 : 'tv_invalid = Obj.magic _1 in
23417 let _startpos = _startpos__1_ in
23418 let _endpos = _endpos__1_ in
23419 let _v : 'tv_primary_expr_expr_invalid_ =
23420 # 1308 "parser_cocci_menhir.mly"
23421 ( _1 )
23422 # 23423 "parser_cocci_menhir.ml"
23423 in
23424 _menhir_env.MenhirLib.EngineTypes.stack <- {
23425 MenhirLib.EngineTypes.state = _menhir_s;
23426 MenhirLib.EngineTypes.semv = Obj.repr _v;
23427 MenhirLib.EngineTypes.startp = _startpos;
23428 MenhirLib.EngineTypes.endp = _endpos;
23429 MenhirLib.EngineTypes.next = _menhir_stack;
23430 });
23431 (fun _menhir_env ->
23432 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23433 let {
23434 MenhirLib.EngineTypes.state = _menhir_s;
23435 MenhirLib.EngineTypes.startp = _startpos__1_;
23436 MenhirLib.EngineTypes.endp = _endpos__1_;
23437 MenhirLib.EngineTypes.next = _menhir_stack;
23438 } = _menhir_stack in
23439 let _startpos = _startpos__1_ in
23440 let _endpos = _endpos__1_ in
23441 let _v : 'tv_pure =
23442 # 189 "parser_cocci_menhir.mly"
23443 ( Ast0.Pure )
23444 # 23445 "parser_cocci_menhir.ml"
23445 in
23446 _menhir_env.MenhirLib.EngineTypes.stack <- {
23447 MenhirLib.EngineTypes.state = _menhir_s;
23448 MenhirLib.EngineTypes.semv = Obj.repr _v;
23449 MenhirLib.EngineTypes.startp = _startpos;
23450 MenhirLib.EngineTypes.endp = _endpos;
23451 MenhirLib.EngineTypes.next = _menhir_stack;
23452 });
23453 (fun _menhir_env ->
23454 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23455 let {
23456 MenhirLib.EngineTypes.state = _menhir_s;
23457 MenhirLib.EngineTypes.startp = _startpos__1_;
23458 MenhirLib.EngineTypes.endp = _endpos__1_;
23459 MenhirLib.EngineTypes.next = _menhir_stack;
23460 } = _menhir_stack in
23461 let _startpos = _startpos__1_ in
23462 let _endpos = _endpos__1_ in
23463 let _v : 'tv_pure =
23464 # 190 "parser_cocci_menhir.mly"
23465 ( Ast0.Context )
23466 # 23467 "parser_cocci_menhir.ml"
23467 in
23468 _menhir_env.MenhirLib.EngineTypes.stack <- {
23469 MenhirLib.EngineTypes.state = _menhir_s;
23470 MenhirLib.EngineTypes.semv = Obj.repr _v;
23471 MenhirLib.EngineTypes.startp = _startpos;
23472 MenhirLib.EngineTypes.endp = _endpos;
23473 MenhirLib.EngineTypes.next = _menhir_stack;
23474 });
23475 (fun _menhir_env ->
23476 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23477 let {
23478 MenhirLib.EngineTypes.startp = _startpos__2_;
23479 MenhirLib.EngineTypes.endp = _endpos__2_;
23480 MenhirLib.EngineTypes.next = {
23481 MenhirLib.EngineTypes.state = _menhir_s;
23482 MenhirLib.EngineTypes.startp = _startpos__1_;
23483 MenhirLib.EngineTypes.endp = _endpos__1_;
23484 MenhirLib.EngineTypes.next = _menhir_stack;
23485 };
23486 } = _menhir_stack in
23487 let _startpos = _startpos__1_ in
23488 let _endpos = _endpos__2_ in
23489 let _v : 'tv_pure =
23490 # 191 "parser_cocci_menhir.mly"
23491 ( Ast0.PureContext )
23492 # 23493 "parser_cocci_menhir.ml"
23493 in
23494 _menhir_env.MenhirLib.EngineTypes.stack <- {
23495 MenhirLib.EngineTypes.state = _menhir_s;
23496 MenhirLib.EngineTypes.semv = Obj.repr _v;
23497 MenhirLib.EngineTypes.startp = _startpos;
23498 MenhirLib.EngineTypes.endp = _endpos;
23499 MenhirLib.EngineTypes.next = _menhir_stack;
23500 });
23501 (fun _menhir_env ->
23502 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23503 let {
23504 MenhirLib.EngineTypes.startp = _startpos__2_;
23505 MenhirLib.EngineTypes.endp = _endpos__2_;
23506 MenhirLib.EngineTypes.next = {
23507 MenhirLib.EngineTypes.state = _menhir_s;
23508 MenhirLib.EngineTypes.startp = _startpos__1_;
23509 MenhirLib.EngineTypes.endp = _endpos__1_;
23510 MenhirLib.EngineTypes.next = _menhir_stack;
23511 };
23512 } = _menhir_stack in
23513 let _startpos = _startpos__1_ in
23514 let _endpos = _endpos__2_ in
23515 let _v : 'tv_pure =
23516 # 192 "parser_cocci_menhir.mly"
23517 ( Ast0.PureContext )
23518 # 23519 "parser_cocci_menhir.ml"
23519 in
23520 _menhir_env.MenhirLib.EngineTypes.stack <- {
23521 MenhirLib.EngineTypes.state = _menhir_s;
23522 MenhirLib.EngineTypes.semv = Obj.repr _v;
23523 MenhirLib.EngineTypes.startp = _startpos;
23524 MenhirLib.EngineTypes.endp = _endpos;
23525 MenhirLib.EngineTypes.next = _menhir_stack;
23526 });
23527 (fun _menhir_env ->
23528 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23529 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
23530 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
23531 let _endpos = _startpos in
23532 let _v : 'tv_pure =
23533 # 193 "parser_cocci_menhir.mly"
23534 ( Ast0.Impure )
23535 # 23536 "parser_cocci_menhir.ml"
23536 in
23537 _menhir_env.MenhirLib.EngineTypes.stack <- {
23538 MenhirLib.EngineTypes.state = _menhir_s;
23539 MenhirLib.EngineTypes.semv = Obj.repr _v;
23540 MenhirLib.EngineTypes.startp = _startpos;
23541 MenhirLib.EngineTypes.endp = _endpos;
23542 MenhirLib.EngineTypes.next = _menhir_stack;
23543 });
23544 (fun _menhir_env ->
23545 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23546 let {
23547 MenhirLib.EngineTypes.state = _menhir_s;
23548 MenhirLib.EngineTypes.semv = _1;
23549 MenhirLib.EngineTypes.startp = _startpos__1_;
23550 MenhirLib.EngineTypes.endp = _endpos__1_;
23551 MenhirLib.EngineTypes.next = _menhir_stack;
23552 } = _menhir_stack in
23553 let _1 : (
23554 # 59 "parser_cocci_menhir.mly"
23555 (string * Data.clt)
23556 # 23557 "parser_cocci_menhir.ml"
23557 ) = Obj.magic _1 in
23558 let _startpos = _startpos__1_ in
23559 let _endpos = _endpos__1_ in
23560 let _v : 'tv_pure_ident =
23561 # 1322 "parser_cocci_menhir.mly"
23562 ( _1 )
23563 # 23564 "parser_cocci_menhir.ml"
23564 in
23565 _menhir_env.MenhirLib.EngineTypes.stack <- {
23566 MenhirLib.EngineTypes.state = _menhir_s;
23567 MenhirLib.EngineTypes.semv = Obj.repr _v;
23568 MenhirLib.EngineTypes.startp = _startpos;
23569 MenhirLib.EngineTypes.endp = _endpos;
23570 MenhirLib.EngineTypes.next = _menhir_stack;
23571 });
23572 (fun _menhir_env ->
23573 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23574 let {
23575 MenhirLib.EngineTypes.state = _menhir_s;
23576 MenhirLib.EngineTypes.semv = _1;
23577 MenhirLib.EngineTypes.startp = _startpos__1_;
23578 MenhirLib.EngineTypes.endp = _endpos__1_;
23579 MenhirLib.EngineTypes.next = _menhir_stack;
23580 } = _menhir_stack in
23581 let _1 : 'tv_pure_ident = Obj.magic _1 in
23582 let _startpos = _startpos__1_ in
23583 let _endpos = _endpos__1_ in
23584 let _v : 'tv_pure_ident_or_meta_ident =
23585 # 1328 "parser_cocci_menhir.mly"
23586 ( (None,P.id2name _1) )
23587 # 23588 "parser_cocci_menhir.ml"
23588 in
23589 _menhir_env.MenhirLib.EngineTypes.stack <- {
23590 MenhirLib.EngineTypes.state = _menhir_s;
23591 MenhirLib.EngineTypes.semv = Obj.repr _v;
23592 MenhirLib.EngineTypes.startp = _startpos;
23593 MenhirLib.EngineTypes.endp = _endpos;
23594 MenhirLib.EngineTypes.next = _menhir_stack;
23595 });
23596 (fun _menhir_env ->
23597 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23598 let {
23599 MenhirLib.EngineTypes.state = _menhir_s;
23600 MenhirLib.EngineTypes.semv = _1;
23601 MenhirLib.EngineTypes.startp = _startpos__1_;
23602 MenhirLib.EngineTypes.endp = _endpos__1_;
23603 MenhirLib.EngineTypes.next = _menhir_stack;
23604 } = _menhir_stack in
23605 let _1 : 'tv_meta_ident = Obj.magic _1 in
23606 let _startpos = _startpos__1_ in
23607 let _endpos = _endpos__1_ in
23608 let _v : 'tv_pure_ident_or_meta_ident =
23609 # 1329 "parser_cocci_menhir.mly"
23610 ( _1 )
23611 # 23612 "parser_cocci_menhir.ml"
23612 in
23613 _menhir_env.MenhirLib.EngineTypes.stack <- {
23614 MenhirLib.EngineTypes.state = _menhir_s;
23615 MenhirLib.EngineTypes.semv = Obj.repr _v;
23616 MenhirLib.EngineTypes.startp = _startpos;
23617 MenhirLib.EngineTypes.endp = _endpos;
23618 MenhirLib.EngineTypes.next = _menhir_stack;
23619 });
23620 (fun _menhir_env ->
23621 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23622 let {
23623 MenhirLib.EngineTypes.state = _menhir_s;
23624 MenhirLib.EngineTypes.startp = _startpos__1_;
23625 MenhirLib.EngineTypes.endp = _endpos__1_;
23626 MenhirLib.EngineTypes.next = _menhir_stack;
23627 } = _menhir_stack in
23628 let _startpos = _startpos__1_ in
23629 let _endpos = _endpos__1_ in
23630 let _v : 'tv_pure_ident_or_meta_ident =
23631 # 1330 "parser_cocci_menhir.mly"
23632 ( (None,"list") )
23633 # 23634 "parser_cocci_menhir.ml"
23634 in
23635 _menhir_env.MenhirLib.EngineTypes.stack <- {
23636 MenhirLib.EngineTypes.state = _menhir_s;
23637 MenhirLib.EngineTypes.semv = Obj.repr _v;
23638 MenhirLib.EngineTypes.startp = _startpos;
23639 MenhirLib.EngineTypes.endp = _endpos;
23640 MenhirLib.EngineTypes.next = _menhir_stack;
23641 });
23642 (fun _menhir_env ->
23643 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23644 let {
23645 MenhirLib.EngineTypes.state = _menhir_s;
23646 MenhirLib.EngineTypes.startp = _startpos__1_;
23647 MenhirLib.EngineTypes.endp = _endpos__1_;
23648 MenhirLib.EngineTypes.next = _menhir_stack;
23649 } = _menhir_stack in
23650 let _startpos = _startpos__1_ in
23651 let _endpos = _endpos__1_ in
23652 let _v : 'tv_pure_ident_or_meta_ident =
23653 # 1331 "parser_cocci_menhir.mly"
23654 ( (None,"error") )
23655 # 23656 "parser_cocci_menhir.ml"
23656 in
23657 _menhir_env.MenhirLib.EngineTypes.stack <- {
23658 MenhirLib.EngineTypes.state = _menhir_s;
23659 MenhirLib.EngineTypes.semv = Obj.repr _v;
23660 MenhirLib.EngineTypes.startp = _startpos;
23661 MenhirLib.EngineTypes.endp = _endpos;
23662 MenhirLib.EngineTypes.next = _menhir_stack;
23663 });
23664 (fun _menhir_env ->
23665 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23666 let {
23667 MenhirLib.EngineTypes.state = _menhir_s;
23668 MenhirLib.EngineTypes.startp = _startpos__1_;
23669 MenhirLib.EngineTypes.endp = _endpos__1_;
23670 MenhirLib.EngineTypes.next = _menhir_stack;
23671 } = _menhir_stack in
23672 let _startpos = _startpos__1_ in
23673 let _endpos = _endpos__1_ in
23674 let _v : 'tv_pure_ident_or_meta_ident =
23675 # 1332 "parser_cocci_menhir.mly"
23676 ( (None,"type") )
23677 # 23678 "parser_cocci_menhir.ml"
23678 in
23679 _menhir_env.MenhirLib.EngineTypes.stack <- {
23680 MenhirLib.EngineTypes.state = _menhir_s;
23681 MenhirLib.EngineTypes.semv = Obj.repr _v;
23682 MenhirLib.EngineTypes.startp = _startpos;
23683 MenhirLib.EngineTypes.endp = _endpos;
23684 MenhirLib.EngineTypes.next = _menhir_stack;
23685 });
23686 (fun _menhir_env ->
23687 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23688 let {
23689 MenhirLib.EngineTypes.semv = l;
23690 MenhirLib.EngineTypes.startp = _startpos_l_;
23691 MenhirLib.EngineTypes.endp = _endpos_l_;
23692 MenhirLib.EngineTypes.next = {
23693 MenhirLib.EngineTypes.state = _menhir_s;
23694 MenhirLib.EngineTypes.semv = i;
23695 MenhirLib.EngineTypes.startp = _startpos_i_;
23696 MenhirLib.EngineTypes.endp = _endpos_i_;
23697 MenhirLib.EngineTypes.next = _menhir_stack;
23698 };
23699 } = _menhir_stack in
23700 let l : 'tv_loption_not_ceq_ = Obj.magic l in
23701 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
23702 let _startpos = _startpos_i_ in
23703 let _endpos = _endpos_l_ in
23704 let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ =
23705 # 1335 "parser_cocci_menhir.mly"
23706 ( (i,l) )
23707 # 23708 "parser_cocci_menhir.ml"
23708 in
23709 _menhir_env.MenhirLib.EngineTypes.stack <- {
23710 MenhirLib.EngineTypes.state = _menhir_s;
23711 MenhirLib.EngineTypes.semv = Obj.repr _v;
23712 MenhirLib.EngineTypes.startp = _startpos;
23713 MenhirLib.EngineTypes.endp = _endpos;
23714 MenhirLib.EngineTypes.next = _menhir_stack;
23715 });
23716 (fun _menhir_env ->
23717 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23718 let {
23719 MenhirLib.EngineTypes.semv = l;
23720 MenhirLib.EngineTypes.startp = _startpos_l_;
23721 MenhirLib.EngineTypes.endp = _endpos_l_;
23722 MenhirLib.EngineTypes.next = {
23723 MenhirLib.EngineTypes.state = _menhir_s;
23724 MenhirLib.EngineTypes.semv = i;
23725 MenhirLib.EngineTypes.startp = _startpos_i_;
23726 MenhirLib.EngineTypes.endp = _endpos_i_;
23727 MenhirLib.EngineTypes.next = _menhir_stack;
23728 };
23729 } = _menhir_stack in
23730 let l : 'tv_loption_not_eq_ = Obj.magic l in
23731 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
23732 let _startpos = _startpos_i_ in
23733 let _endpos = _endpos_l_ in
23734 let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ =
23735 # 1335 "parser_cocci_menhir.mly"
23736 ( (i,l) )
23737 # 23738 "parser_cocci_menhir.ml"
23738 in
23739 _menhir_env.MenhirLib.EngineTypes.stack <- {
23740 MenhirLib.EngineTypes.state = _menhir_s;
23741 MenhirLib.EngineTypes.semv = Obj.repr _v;
23742 MenhirLib.EngineTypes.startp = _startpos;
23743 MenhirLib.EngineTypes.endp = _endpos;
23744 MenhirLib.EngineTypes.next = _menhir_stack;
23745 });
23746 (fun _menhir_env ->
23747 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23748 let {
23749 MenhirLib.EngineTypes.semv = l;
23750 MenhirLib.EngineTypes.startp = _startpos_l_;
23751 MenhirLib.EngineTypes.endp = _endpos_l_;
23752 MenhirLib.EngineTypes.next = {
23753 MenhirLib.EngineTypes.state = _menhir_s;
23754 MenhirLib.EngineTypes.semv = i;
23755 MenhirLib.EngineTypes.startp = _startpos_i_;
23756 MenhirLib.EngineTypes.endp = _endpos_i_;
23757 MenhirLib.EngineTypes.next = _menhir_stack;
23758 };
23759 } = _menhir_stack in
23760 let l : 'tv_loption_not_eqe_ = Obj.magic l in
23761 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
23762 let _startpos = _startpos_i_ in
23763 let _endpos = _endpos_l_ in
23764 let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ =
23765 # 1335 "parser_cocci_menhir.mly"
23766 ( (i,l) )
23767 # 23768 "parser_cocci_menhir.ml"
23768 in
23769 _menhir_env.MenhirLib.EngineTypes.stack <- {
23770 MenhirLib.EngineTypes.state = _menhir_s;
23771 MenhirLib.EngineTypes.semv = Obj.repr _v;
23772 MenhirLib.EngineTypes.startp = _startpos;
23773 MenhirLib.EngineTypes.endp = _endpos;
23774 MenhirLib.EngineTypes.next = _menhir_stack;
23775 });
23776 (fun _menhir_env ->
23777 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23778 let {
23779 MenhirLib.EngineTypes.semv = l;
23780 MenhirLib.EngineTypes.startp = _startpos_l_;
23781 MenhirLib.EngineTypes.endp = _endpos_l_;
23782 MenhirLib.EngineTypes.next = {
23783 MenhirLib.EngineTypes.state = _menhir_s;
23784 MenhirLib.EngineTypes.semv = i;
23785 MenhirLib.EngineTypes.startp = _startpos_i_;
23786 MenhirLib.EngineTypes.endp = _endpos_i_;
23787 MenhirLib.EngineTypes.next = _menhir_stack;
23788 };
23789 } = _menhir_stack in
23790 let l : 'tv_loption_not_pos_ = Obj.magic l in
23791 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
23792 let _startpos = _startpos_i_ in
23793 let _endpos = _endpos_l_ in
23794 let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ =
23795 # 1335 "parser_cocci_menhir.mly"
23796 ( (i,l) )
23797 # 23798 "parser_cocci_menhir.ml"
23798 in
23799 _menhir_env.MenhirLib.EngineTypes.stack <- {
23800 MenhirLib.EngineTypes.state = _menhir_s;
23801 MenhirLib.EngineTypes.semv = Obj.repr _v;
23802 MenhirLib.EngineTypes.startp = _startpos;
23803 MenhirLib.EngineTypes.endp = _endpos;
23804 MenhirLib.EngineTypes.next = _menhir_stack;
23805 });
23806 (fun _menhir_env ->
23807 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23808 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
23809 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
23810 let _endpos = _startpos in
23811 let _v : (
23812 # 130 "parser_cocci_menhir.mly"
23813 (unit)
23814 # 23815 "parser_cocci_menhir.ml"
23815 ) =
23816 # 171 "parser_cocci_menhir.mly"
23817 ( )
23818 # 23819 "parser_cocci_menhir.ml"
23819 in
23820 _menhir_env.MenhirLib.EngineTypes.stack <- {
23821 MenhirLib.EngineTypes.state = _menhir_s;
23822 MenhirLib.EngineTypes.semv = Obj.repr _v;
23823 MenhirLib.EngineTypes.startp = _startpos;
23824 MenhirLib.EngineTypes.endp = _endpos;
23825 MenhirLib.EngineTypes.next = _menhir_stack;
23826 });
23827 (fun _menhir_env ->
23828 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23829 let {
23830 MenhirLib.EngineTypes.state = _menhir_s;
23831 MenhirLib.EngineTypes.semv = _1;
23832 MenhirLib.EngineTypes.startp = _startpos__1_;
23833 MenhirLib.EngineTypes.endp = _endpos__1_;
23834 MenhirLib.EngineTypes.next = _menhir_stack;
23835 } = _menhir_stack in
23836 let _1 : 'tv_one_decl_var = Obj.magic _1 in
23837 let _startpos = _startpos__1_ in
23838 let _endpos = _endpos__1_ in
23839 let _v : 'tv_rule_elem_statement =
23840 # 849 "parser_cocci_menhir.mly"
23841 ( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) )
23842 # 23843 "parser_cocci_menhir.ml"
23843 in
23844 _menhir_env.MenhirLib.EngineTypes.stack <- {
23845 MenhirLib.EngineTypes.state = _menhir_s;
23846 MenhirLib.EngineTypes.semv = Obj.repr _v;
23847 MenhirLib.EngineTypes.startp = _startpos;
23848 MenhirLib.EngineTypes.endp = _endpos;
23849 MenhirLib.EngineTypes.next = _menhir_stack;
23850 });
23851 (fun _menhir_env ->
23852 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23853 let {
23854 MenhirLib.EngineTypes.semv = _2;
23855 MenhirLib.EngineTypes.startp = _startpos__2_;
23856 MenhirLib.EngineTypes.endp = _endpos__2_;
23857 MenhirLib.EngineTypes.next = {
23858 MenhirLib.EngineTypes.state = _menhir_s;
23859 MenhirLib.EngineTypes.semv = _1;
23860 MenhirLib.EngineTypes.startp = _startpos__1_;
23861 MenhirLib.EngineTypes.endp = _endpos__1_;
23862 MenhirLib.EngineTypes.next = _menhir_stack;
23863 };
23864 } = _menhir_stack in
23865 let _2 : (
23866 # 106 "parser_cocci_menhir.mly"
23867 (Data.clt)
23868 # 23869 "parser_cocci_menhir.ml"
23869 ) = Obj.magic _2 in
23870 let _1 : 'tv_expr = Obj.magic _1 in
23871 let _startpos = _startpos__1_ in
23872 let _endpos = _endpos__2_ in
23873 let _v : 'tv_rule_elem_statement =
23874 # 850 "parser_cocci_menhir.mly"
23875 ( P.exp_stm _1 _2 )
23876 # 23877 "parser_cocci_menhir.ml"
23877 in
23878 _menhir_env.MenhirLib.EngineTypes.stack <- {
23879 MenhirLib.EngineTypes.state = _menhir_s;
23880 MenhirLib.EngineTypes.semv = Obj.repr _v;
23881 MenhirLib.EngineTypes.startp = _startpos;
23882 MenhirLib.EngineTypes.endp = _endpos;
23883 MenhirLib.EngineTypes.next = _menhir_stack;
23884 });
23885 (fun _menhir_env ->
23886 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23887 let {
23888 MenhirLib.EngineTypes.semv = _3;
23889 MenhirLib.EngineTypes.startp = _startpos__3_;
23890 MenhirLib.EngineTypes.endp = _endpos__3_;
23891 MenhirLib.EngineTypes.next = {
23892 MenhirLib.EngineTypes.semv = _2;
23893 MenhirLib.EngineTypes.startp = _startpos__2_;
23894 MenhirLib.EngineTypes.endp = _endpos__2_;
23895 MenhirLib.EngineTypes.next = {
23896 MenhirLib.EngineTypes.state = _menhir_s;
23897 MenhirLib.EngineTypes.semv = _1;
23898 MenhirLib.EngineTypes.startp = _startpos__1_;
23899 MenhirLib.EngineTypes.endp = _endpos__1_;
23900 MenhirLib.EngineTypes.next = _menhir_stack;
23901 };
23902 };
23903 } = _menhir_stack in
23904 let _3 : (
23905 # 106 "parser_cocci_menhir.mly"
23906 (Data.clt)
23907 # 23908 "parser_cocci_menhir.ml"
23908 ) = Obj.magic _3 in
23909 let _2 : 'tv_eexpr = Obj.magic _2 in
23910 let _1 : (
23911 # 57 "parser_cocci_menhir.mly"
23912 (Data.clt)
23913 # 23914 "parser_cocci_menhir.ml"
23914 ) = Obj.magic _1 in
23915 let _startpos = _startpos__1_ in
23916 let _endpos = _endpos__3_ in
23917 let _v : 'tv_rule_elem_statement =
23918 # 851 "parser_cocci_menhir.mly"
23919 ( P.ret_exp _1 _2 _3 )
23920 # 23921 "parser_cocci_menhir.ml"
23921 in
23922 _menhir_env.MenhirLib.EngineTypes.stack <- {
23923 MenhirLib.EngineTypes.state = _menhir_s;
23924 MenhirLib.EngineTypes.semv = Obj.repr _v;
23925 MenhirLib.EngineTypes.startp = _startpos;
23926 MenhirLib.EngineTypes.endp = _endpos;
23927 MenhirLib.EngineTypes.next = _menhir_stack;
23928 });
23929 (fun _menhir_env ->
23930 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23931 let {
23932 MenhirLib.EngineTypes.semv = _2;
23933 MenhirLib.EngineTypes.startp = _startpos__2_;
23934 MenhirLib.EngineTypes.endp = _endpos__2_;
23935 MenhirLib.EngineTypes.next = {
23936 MenhirLib.EngineTypes.state = _menhir_s;
23937 MenhirLib.EngineTypes.semv = _1;
23938 MenhirLib.EngineTypes.startp = _startpos__1_;
23939 MenhirLib.EngineTypes.endp = _endpos__1_;
23940 MenhirLib.EngineTypes.next = _menhir_stack;
23941 };
23942 } = _menhir_stack in
23943 let _2 : (
23944 # 106 "parser_cocci_menhir.mly"
23945 (Data.clt)
23946 # 23947 "parser_cocci_menhir.ml"
23947 ) = Obj.magic _2 in
23948 let _1 : (
23949 # 57 "parser_cocci_menhir.mly"
23950 (Data.clt)
23951 # 23952 "parser_cocci_menhir.ml"
23952 ) = Obj.magic _1 in
23953 let _startpos = _startpos__1_ in
23954 let _endpos = _endpos__2_ in
23955 let _v : 'tv_rule_elem_statement =
23956 # 852 "parser_cocci_menhir.mly"
23957 ( P.ret _1 _2 )
23958 # 23959 "parser_cocci_menhir.ml"
23959 in
23960 _menhir_env.MenhirLib.EngineTypes.stack <- {
23961 MenhirLib.EngineTypes.state = _menhir_s;
23962 MenhirLib.EngineTypes.semv = Obj.repr _v;
23963 MenhirLib.EngineTypes.startp = _startpos;
23964 MenhirLib.EngineTypes.endp = _endpos;
23965 MenhirLib.EngineTypes.next = _menhir_stack;
23966 });
23967 (fun _menhir_env ->
23968 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23969 let {
23970 MenhirLib.EngineTypes.semv = _2;
23971 MenhirLib.EngineTypes.startp = _startpos__2_;
23972 MenhirLib.EngineTypes.endp = _endpos__2_;
23973 MenhirLib.EngineTypes.next = {
23974 MenhirLib.EngineTypes.state = _menhir_s;
23975 MenhirLib.EngineTypes.semv = _1;
23976 MenhirLib.EngineTypes.startp = _startpos__1_;
23977 MenhirLib.EngineTypes.endp = _endpos__1_;
23978 MenhirLib.EngineTypes.next = _menhir_stack;
23979 };
23980 } = _menhir_stack in
23981 let _2 : (
23982 # 106 "parser_cocci_menhir.mly"
23983 (Data.clt)
23984 # 23985 "parser_cocci_menhir.ml"
23985 ) = Obj.magic _2 in
23986 let _1 : (
23987 # 58 "parser_cocci_menhir.mly"
23988 (Data.clt)
23989 # 23990 "parser_cocci_menhir.ml"
23990 ) = Obj.magic _1 in
23991 let _startpos = _startpos__1_ in
23992 let _endpos = _endpos__2_ in
23993 let _v : 'tv_rule_elem_statement =
23994 # 853 "parser_cocci_menhir.mly"
23995 ( P.break _1 _2 )
23996 # 23997 "parser_cocci_menhir.ml"
23997 in
23998 _menhir_env.MenhirLib.EngineTypes.stack <- {
23999 MenhirLib.EngineTypes.state = _menhir_s;
24000 MenhirLib.EngineTypes.semv = Obj.repr _v;
24001 MenhirLib.EngineTypes.startp = _startpos;
24002 MenhirLib.EngineTypes.endp = _endpos;
24003 MenhirLib.EngineTypes.next = _menhir_stack;
24004 });
24005 (fun _menhir_env ->
24006 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24007 let {
24008 MenhirLib.EngineTypes.semv = _2;
24009 MenhirLib.EngineTypes.startp = _startpos__2_;
24010 MenhirLib.EngineTypes.endp = _endpos__2_;
24011 MenhirLib.EngineTypes.next = {
24012 MenhirLib.EngineTypes.state = _menhir_s;
24013 MenhirLib.EngineTypes.semv = _1;
24014 MenhirLib.EngineTypes.startp = _startpos__1_;
24015 MenhirLib.EngineTypes.endp = _endpos__1_;
24016 MenhirLib.EngineTypes.next = _menhir_stack;
24017 };
24018 } = _menhir_stack in
24019 let _2 : (
24020 # 106 "parser_cocci_menhir.mly"
24021 (Data.clt)
24022 # 24023 "parser_cocci_menhir.ml"
24023 ) = Obj.magic _2 in
24024 let _1 : (
24025 # 58 "parser_cocci_menhir.mly"
24026 (Data.clt)
24027 # 24028 "parser_cocci_menhir.ml"
24028 ) = Obj.magic _1 in
24029 let _startpos = _startpos__1_ in
24030 let _endpos = _endpos__2_ in
24031 let _v : 'tv_rule_elem_statement =
24032 # 854 "parser_cocci_menhir.mly"
24033 ( P.cont _1 _2 )
24034 # 24035 "parser_cocci_menhir.ml"
24035 in
24036 _menhir_env.MenhirLib.EngineTypes.stack <- {
24037 MenhirLib.EngineTypes.state = _menhir_s;
24038 MenhirLib.EngineTypes.semv = Obj.repr _v;
24039 MenhirLib.EngineTypes.startp = _startpos;
24040 MenhirLib.EngineTypes.endp = _endpos;
24041 MenhirLib.EngineTypes.next = _menhir_stack;
24042 });
24043 (fun _menhir_env ->
24044 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24045 let {
24046 MenhirLib.EngineTypes.semv = _3;
24047 MenhirLib.EngineTypes.startp = _startpos__3_;
24048 MenhirLib.EngineTypes.endp = _endpos__3_;
24049 MenhirLib.EngineTypes.next = {
24050 MenhirLib.EngineTypes.semv = _2;
24051 MenhirLib.EngineTypes.startp = _startpos__2_;
24052 MenhirLib.EngineTypes.endp = _endpos__2_;
24053 MenhirLib.EngineTypes.next = {
24054 MenhirLib.EngineTypes.state = _menhir_s;
24055 MenhirLib.EngineTypes.semv = _1;
24056 MenhirLib.EngineTypes.startp = _startpos__1_;
24057 MenhirLib.EngineTypes.endp = _endpos__1_;
24058 MenhirLib.EngineTypes.next = _menhir_stack;
24059 };
24060 };
24061 } = _menhir_stack in
24062 let _3 : (
24063 # 76 "parser_cocci_menhir.mly"
24064 (Data.clt)
24065 # 24066 "parser_cocci_menhir.ml"
24066 ) = Obj.magic _3 in
24067 let _2 : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ = Obj.magic _2 in
24068 let _1 : (
24069 # 75 "parser_cocci_menhir.mly"
24070 (Data.clt)
24071 # 24072 "parser_cocci_menhir.ml"
24072 ) = Obj.magic _1 in
24073 let _startpos = _startpos__1_ in
24074 let _endpos = _endpos__3_ in
24075 let _v : 'tv_rule_elem_statement =
24076 # 856 "parser_cocci_menhir.mly"
24077 ( let (mids,code) = _2 in
24078 Ast0.wrap
24079 (Ast0.Disj(P.clt2mcode "(" _1,
24080 List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
24081 mids, P.clt2mcode ")" _3)) )
24082 # 24083 "parser_cocci_menhir.ml"
24083 in
24084 _menhir_env.MenhirLib.EngineTypes.stack <- {
24085 MenhirLib.EngineTypes.state = _menhir_s;
24086 MenhirLib.EngineTypes.semv = Obj.repr _v;
24087 MenhirLib.EngineTypes.startp = _startpos;
24088 MenhirLib.EngineTypes.endp = _endpos;
24089 MenhirLib.EngineTypes.next = _menhir_stack;
24090 });
24091 (fun _menhir_env ->
24092 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24093 let {
24094 MenhirLib.EngineTypes.startp = _startpos__7_;
24095 MenhirLib.EngineTypes.endp = _endpos__7_;
24096 MenhirLib.EngineTypes.next = {
24097 MenhirLib.EngineTypes.semv = ee;
24098 MenhirLib.EngineTypes.startp = _startpos_ee_;
24099 MenhirLib.EngineTypes.endp = _endpos_ee_;
24100 MenhirLib.EngineTypes.next = {
24101 MenhirLib.EngineTypes.semv = e;
24102 MenhirLib.EngineTypes.startp = _startpos_e_;
24103 MenhirLib.EngineTypes.endp = _endpos_e_;
24104 MenhirLib.EngineTypes.next = {
24105 MenhirLib.EngineTypes.semv = a;
24106 MenhirLib.EngineTypes.startp = _startpos_a_;
24107 MenhirLib.EngineTypes.endp = _endpos_a_;
24108 MenhirLib.EngineTypes.next = {
24109 MenhirLib.EngineTypes.semv = i;
24110 MenhirLib.EngineTypes.startp = _startpos_i_;
24111 MenhirLib.EngineTypes.endp = _endpos_i_;
24112 MenhirLib.EngineTypes.next = {
24113 MenhirLib.EngineTypes.semv = d;
24114 MenhirLib.EngineTypes.startp = _startpos_d_;
24115 MenhirLib.EngineTypes.endp = _endpos_d_;
24116 MenhirLib.EngineTypes.next = {
24117 MenhirLib.EngineTypes.state = _menhir_s;
24118 MenhirLib.EngineTypes.startp = _startpos__1_;
24119 MenhirLib.EngineTypes.endp = _endpos__1_;
24120 MenhirLib.EngineTypes.next = _menhir_stack;
24121 };
24122 };
24123 };
24124 };
24125 };
24126 };
24127 } = _menhir_stack in
24128 let ee : 'tv_is_expression = Obj.magic ee in
24129 let e : 'tv_exists = Obj.magic e in
24130 let a : 'tv_loption_disable_ = Obj.magic a in
24131 let i : 'tv_loption_choose_iso_ = Obj.magic i in
24132 let d : 'tv_depends = Obj.magic d in
24133 let _startpos = _startpos__1_ in
24134 let _endpos = _endpos__7_ in
24135 let _v : (
24136 # 152 "parser_cocci_menhir.mly"
24137 (Ast_cocci.rulename)
24138 # 24139 "parser_cocci_menhir.ml"
24139 ) = let nm =
24140
24141 # 39 "standard.mly"
24142 ( None )
24143 # 24144 "parser_cocci_menhir.ml"
24144
24145 in
24146
24147 # 201 "parser_cocci_menhir.mly"
24148 ( P.make_cocci_rule_name_result nm d i a e ee )
24149 # 24150 "parser_cocci_menhir.ml"
24150 in
24151 _menhir_env.MenhirLib.EngineTypes.stack <- {
24152 MenhirLib.EngineTypes.state = _menhir_s;
24153 MenhirLib.EngineTypes.semv = Obj.repr _v;
24154 MenhirLib.EngineTypes.startp = _startpos;
24155 MenhirLib.EngineTypes.endp = _endpos;
24156 MenhirLib.EngineTypes.next = _menhir_stack;
24157 });
24158 (fun _menhir_env ->
24159 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24160 let {
24161 MenhirLib.EngineTypes.startp = _startpos__8_;
24162 MenhirLib.EngineTypes.endp = _endpos__8_;
24163 MenhirLib.EngineTypes.next = {
24164 MenhirLib.EngineTypes.semv = ee;
24165 MenhirLib.EngineTypes.startp = _startpos_ee_;
24166 MenhirLib.EngineTypes.endp = _endpos_ee_;
24167 MenhirLib.EngineTypes.next = {
24168 MenhirLib.EngineTypes.semv = e;
24169 MenhirLib.EngineTypes.startp = _startpos_e_;
24170 MenhirLib.EngineTypes.endp = _endpos_e_;
24171 MenhirLib.EngineTypes.next = {
24172 MenhirLib.EngineTypes.semv = a;
24173 MenhirLib.EngineTypes.startp = _startpos_a_;
24174 MenhirLib.EngineTypes.endp = _endpos_a_;
24175 MenhirLib.EngineTypes.next = {
24176 MenhirLib.EngineTypes.semv = i;
24177 MenhirLib.EngineTypes.startp = _startpos_i_;
24178 MenhirLib.EngineTypes.endp = _endpos_i_;
24179 MenhirLib.EngineTypes.next = {
24180 MenhirLib.EngineTypes.semv = d;
24181 MenhirLib.EngineTypes.startp = _startpos_d_;
24182 MenhirLib.EngineTypes.endp = _endpos_d_;
24183 MenhirLib.EngineTypes.next = {
24184 MenhirLib.EngineTypes.startp = _startpos__2_;
24185 MenhirLib.EngineTypes.endp = _endpos__2_;
24186 MenhirLib.EngineTypes.next = {
24187 MenhirLib.EngineTypes.state = _menhir_s;
24188 MenhirLib.EngineTypes.semv = x0;
24189 MenhirLib.EngineTypes.startp = _startpos_x0_;
24190 MenhirLib.EngineTypes.endp = _endpos_x0_;
24191 MenhirLib.EngineTypes.next = _menhir_stack;
24192 };
24193 };
24194 };
24195 };
24196 };
24197 };
24198 };
24199 } = _menhir_stack in
24200 let ee : 'tv_is_expression = Obj.magic ee in
24201 let e : 'tv_exists = Obj.magic e in
24202 let a : 'tv_loption_disable_ = Obj.magic a in
24203 let i : 'tv_loption_choose_iso_ = Obj.magic i in
24204 let d : 'tv_depends = Obj.magic d in
24205 let x0 : 'tv_pure_ident = Obj.magic x0 in
24206 let _startpos = _startpos_x0_ in
24207 let _endpos = _endpos__8_ in
24208 let _v : (
24209 # 152 "parser_cocci_menhir.mly"
24210 (Ast_cocci.rulename)
24211 # 24212 "parser_cocci_menhir.ml"
24212 ) = let nm =
24213 let x = x0 in
24214
24215 # 41 "standard.mly"
24216 ( Some x )
24217 # 24218 "parser_cocci_menhir.ml"
24218
24219 in
24220
24221 # 201 "parser_cocci_menhir.mly"
24222 ( P.make_cocci_rule_name_result nm d i a e ee )
24223 # 24224 "parser_cocci_menhir.ml"
24224 in
24225 _menhir_env.MenhirLib.EngineTypes.stack <- {
24226 MenhirLib.EngineTypes.state = _menhir_s;
24227 MenhirLib.EngineTypes.semv = Obj.repr _v;
24228 MenhirLib.EngineTypes.startp = _startpos;
24229 MenhirLib.EngineTypes.endp = _endpos;
24230 MenhirLib.EngineTypes.next = _menhir_stack;
24231 });
24232 (fun _menhir_env ->
24233 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24234 let {
24235 MenhirLib.EngineTypes.startp = _startpos__5_;
24236 MenhirLib.EngineTypes.endp = _endpos__5_;
24237 MenhirLib.EngineTypes.next = {
24238 MenhirLib.EngineTypes.semv = d;
24239 MenhirLib.EngineTypes.startp = _startpos_d_;
24240 MenhirLib.EngineTypes.endp = _endpos_d_;
24241 MenhirLib.EngineTypes.next = {
24242 MenhirLib.EngineTypes.semv = lang;
24243 MenhirLib.EngineTypes.startp = _startpos_lang_;
24244 MenhirLib.EngineTypes.endp = _endpos_lang_;
24245 MenhirLib.EngineTypes.next = {
24246 MenhirLib.EngineTypes.startp = _startpos__2_;
24247 MenhirLib.EngineTypes.endp = _endpos__2_;
24248 MenhirLib.EngineTypes.next = {
24249 MenhirLib.EngineTypes.state = _menhir_s;
24250 MenhirLib.EngineTypes.semv = scr;
24251 MenhirLib.EngineTypes.startp = _startpos_scr_;
24252 MenhirLib.EngineTypes.endp = _endpos_scr_;
24253 MenhirLib.EngineTypes.next = _menhir_stack;
24254 };
24255 };
24256 };
24257 };
24258 } = _menhir_stack in
24259 let d : 'tv_depends = Obj.magic d in
24260 let lang : 'tv_pure_ident = Obj.magic lang in
24261 let scr : 'tv_pure_ident = Obj.magic scr in
24262 let _startpos = _startpos_scr_ in
24263 let _endpos = _endpos__5_ in
24264 let _v : (
24265 # 152 "parser_cocci_menhir.mly"
24266 (Ast_cocci.rulename)
24267 # 24268 "parser_cocci_menhir.ml"
24268 ) =
24269 # 203 "parser_cocci_menhir.mly"
24270 ( P.make_script_rule_name_result scr lang d )
24271 # 24272 "parser_cocci_menhir.ml"
24272 in
24273 _menhir_env.MenhirLib.EngineTypes.stack <- {
24274 MenhirLib.EngineTypes.state = _menhir_s;
24275 MenhirLib.EngineTypes.semv = Obj.repr _v;
24276 MenhirLib.EngineTypes.startp = _startpos;
24277 MenhirLib.EngineTypes.endp = _endpos;
24278 MenhirLib.EngineTypes.next = _menhir_stack;
24279 });
24280 (fun _menhir_env ->
24281 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24282 let {
24283 MenhirLib.EngineTypes.startp = _startpos__6_;
24284 MenhirLib.EngineTypes.endp = _endpos__6_;
24285 MenhirLib.EngineTypes.next = {
24286 MenhirLib.EngineTypes.semv = cocci;
24287 MenhirLib.EngineTypes.startp = _startpos_cocci_;
24288 MenhirLib.EngineTypes.endp = _endpos_cocci_;
24289 MenhirLib.EngineTypes.next = {
24290 MenhirLib.EngineTypes.startp = _startpos__4_;
24291 MenhirLib.EngineTypes.endp = _endpos__4_;
24292 MenhirLib.EngineTypes.next = {
24293 MenhirLib.EngineTypes.semv = _3;
24294 MenhirLib.EngineTypes.startp = _startpos__3_;
24295 MenhirLib.EngineTypes.endp = _endpos__3_;
24296 MenhirLib.EngineTypes.next = {
24297 MenhirLib.EngineTypes.startp = _startpos__2_;
24298 MenhirLib.EngineTypes.endp = _endpos__2_;
24299 MenhirLib.EngineTypes.next = {
24300 MenhirLib.EngineTypes.state = _menhir_s;
24301 MenhirLib.EngineTypes.semv = py;
24302 MenhirLib.EngineTypes.startp = _startpos_py_;
24303 MenhirLib.EngineTypes.endp = _endpos_py_;
24304 MenhirLib.EngineTypes.next = _menhir_stack;
24305 };
24306 };
24307 };
24308 };
24309 };
24310 } = _menhir_stack in
24311 let cocci : 'tv_pure_ident = Obj.magic cocci in
24312 let _3 : (
24313 # 47 "parser_cocci_menhir.mly"
24314 (string)
24315 # 24316 "parser_cocci_menhir.ml"
24316 ) = Obj.magic _3 in
24317 let py : 'tv_pure_ident = Obj.magic py in
24318 let _startpos = _startpos_py_ in
24319 let _endpos = _endpos__6_ in
24320 let _v : (
24321 # 158 "parser_cocci_menhir.mly"
24322 (string * (string * string))
24323 # 24324 "parser_cocci_menhir.ml"
24324 ) =
24325 # 1765 "parser_cocci_menhir.mly"
24326 ( (P.id2name py, (_3, P.id2name cocci)) )
24327 # 24328 "parser_cocci_menhir.ml"
24328 in
24329 _menhir_env.MenhirLib.EngineTypes.stack <- {
24330 MenhirLib.EngineTypes.state = _menhir_s;
24331 MenhirLib.EngineTypes.semv = Obj.repr _v;
24332 MenhirLib.EngineTypes.startp = _startpos;
24333 MenhirLib.EngineTypes.endp = _endpos;
24334 MenhirLib.EngineTypes.next = _menhir_stack;
24335 });
24336 (fun _menhir_env ->
24337 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24338 let {
24339 MenhirLib.EngineTypes.state = _menhir_s;
24340 MenhirLib.EngineTypes.semv = x;
24341 MenhirLib.EngineTypes.startp = _startpos_x_;
24342 MenhirLib.EngineTypes.endp = _endpos_x_;
24343 MenhirLib.EngineTypes.next = _menhir_stack;
24344 } = _menhir_stack in
24345 let x : (
24346 # 86 "parser_cocci_menhir.mly"
24347 (string * Data.clt)
24348 # 24349 "parser_cocci_menhir.ml"
24349 ) = Obj.magic x in
24350 let _startpos = _startpos_x_ in
24351 let _endpos = _endpos_x_ in
24352 let _v : 'tv_separated_nonempty_list_TComma_TString_ =
24353 # 144 "standard.mly"
24354 ( [ x ] )
24355 # 24356 "parser_cocci_menhir.ml"
24356 in
24357 _menhir_env.MenhirLib.EngineTypes.stack <- {
24358 MenhirLib.EngineTypes.state = _menhir_s;
24359 MenhirLib.EngineTypes.semv = Obj.repr _v;
24360 MenhirLib.EngineTypes.startp = _startpos;
24361 MenhirLib.EngineTypes.endp = _endpos;
24362 MenhirLib.EngineTypes.next = _menhir_stack;
24363 });
24364 (fun _menhir_env ->
24365 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24366 let {
24367 MenhirLib.EngineTypes.semv = xs;
24368 MenhirLib.EngineTypes.startp = _startpos_xs_;
24369 MenhirLib.EngineTypes.endp = _endpos_xs_;
24370 MenhirLib.EngineTypes.next = {
24371 MenhirLib.EngineTypes.startp = _startpos__2_;
24372 MenhirLib.EngineTypes.endp = _endpos__2_;
24373 MenhirLib.EngineTypes.next = {
24374 MenhirLib.EngineTypes.state = _menhir_s;
24375 MenhirLib.EngineTypes.semv = x;
24376 MenhirLib.EngineTypes.startp = _startpos_x_;
24377 MenhirLib.EngineTypes.endp = _endpos_x_;
24378 MenhirLib.EngineTypes.next = _menhir_stack;
24379 };
24380 };
24381 } = _menhir_stack in
24382 let xs : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic xs in
24383 let x : (
24384 # 86 "parser_cocci_menhir.mly"
24385 (string * Data.clt)
24386 # 24387 "parser_cocci_menhir.ml"
24387 ) = Obj.magic x in
24388 let _startpos = _startpos_x_ in
24389 let _endpos = _endpos_xs_ in
24390 let _v : 'tv_separated_nonempty_list_TComma_TString_ =
24391 # 146 "standard.mly"
24392 ( x :: xs )
24393 # 24394 "parser_cocci_menhir.ml"
24394 in
24395 _menhir_env.MenhirLib.EngineTypes.stack <- {
24396 MenhirLib.EngineTypes.state = _menhir_s;
24397 MenhirLib.EngineTypes.semv = Obj.repr _v;
24398 MenhirLib.EngineTypes.startp = _startpos;
24399 MenhirLib.EngineTypes.endp = _endpos;
24400 MenhirLib.EngineTypes.next = _menhir_stack;
24401 });
24402 (fun _menhir_env ->
24403 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24404 let {
24405 MenhirLib.EngineTypes.state = _menhir_s;
24406 MenhirLib.EngineTypes.semv = x;
24407 MenhirLib.EngineTypes.startp = _startpos_x_;
24408 MenhirLib.EngineTypes.endp = _endpos_x_;
24409 MenhirLib.EngineTypes.next = _menhir_stack;
24410 } = _menhir_stack in
24411 let x : 'tv_any_strict = Obj.magic x in
24412 let _startpos = _startpos_x_ in
24413 let _endpos = _endpos_x_ in
24414 let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
24415 # 144 "standard.mly"
24416 ( [ x ] )
24417 # 24418 "parser_cocci_menhir.ml"
24418 in
24419 _menhir_env.MenhirLib.EngineTypes.stack <- {
24420 MenhirLib.EngineTypes.state = _menhir_s;
24421 MenhirLib.EngineTypes.semv = Obj.repr _v;
24422 MenhirLib.EngineTypes.startp = _startpos;
24423 MenhirLib.EngineTypes.endp = _endpos;
24424 MenhirLib.EngineTypes.next = _menhir_stack;
24425 });
24426 (fun _menhir_env ->
24427 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24428 let {
24429 MenhirLib.EngineTypes.semv = xs;
24430 MenhirLib.EngineTypes.startp = _startpos_xs_;
24431 MenhirLib.EngineTypes.endp = _endpos_xs_;
24432 MenhirLib.EngineTypes.next = {
24433 MenhirLib.EngineTypes.startp = _startpos__2_;
24434 MenhirLib.EngineTypes.endp = _endpos__2_;
24435 MenhirLib.EngineTypes.next = {
24436 MenhirLib.EngineTypes.state = _menhir_s;
24437 MenhirLib.EngineTypes.semv = x;
24438 MenhirLib.EngineTypes.startp = _startpos_x_;
24439 MenhirLib.EngineTypes.endp = _endpos_x_;
24440 MenhirLib.EngineTypes.next = _menhir_stack;
24441 };
24442 };
24443 } = _menhir_stack in
24444 let xs : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic xs in
24445 let x : 'tv_any_strict = Obj.magic x in
24446 let _startpos = _startpos_x_ in
24447 let _endpos = _endpos_xs_ in
24448 let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
24449 # 146 "standard.mly"
24450 ( x :: xs )
24451 # 24452 "parser_cocci_menhir.ml"
24452 in
24453 _menhir_env.MenhirLib.EngineTypes.stack <- {
24454 MenhirLib.EngineTypes.state = _menhir_s;
24455 MenhirLib.EngineTypes.semv = Obj.repr _v;
24456 MenhirLib.EngineTypes.startp = _startpos;
24457 MenhirLib.EngineTypes.endp = _endpos;
24458 MenhirLib.EngineTypes.next = _menhir_stack;
24459 });
24460 (fun _menhir_env ->
24461 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24462 let {
24463 MenhirLib.EngineTypes.state = _menhir_s;
24464 MenhirLib.EngineTypes.semv = x;
24465 MenhirLib.EngineTypes.startp = _startpos_x_;
24466 MenhirLib.EngineTypes.endp = _endpos_x_;
24467 MenhirLib.EngineTypes.next = _menhir_stack;
24468 } = _menhir_stack in
24469 let x : 'tv_ctype = Obj.magic x in
24470 let _startpos = _startpos_x_ in
24471 let _endpos = _endpos_x_ in
24472 let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
24473 # 144 "standard.mly"
24474 ( [ x ] )
24475 # 24476 "parser_cocci_menhir.ml"
24476 in
24477 _menhir_env.MenhirLib.EngineTypes.stack <- {
24478 MenhirLib.EngineTypes.state = _menhir_s;
24479 MenhirLib.EngineTypes.semv = Obj.repr _v;
24480 MenhirLib.EngineTypes.startp = _startpos;
24481 MenhirLib.EngineTypes.endp = _endpos;
24482 MenhirLib.EngineTypes.next = _menhir_stack;
24483 });
24484 (fun _menhir_env ->
24485 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24486 let {
24487 MenhirLib.EngineTypes.semv = xs;
24488 MenhirLib.EngineTypes.startp = _startpos_xs_;
24489 MenhirLib.EngineTypes.endp = _endpos_xs_;
24490 MenhirLib.EngineTypes.next = {
24491 MenhirLib.EngineTypes.startp = _startpos__2_;
24492 MenhirLib.EngineTypes.endp = _endpos__2_;
24493 MenhirLib.EngineTypes.next = {
24494 MenhirLib.EngineTypes.state = _menhir_s;
24495 MenhirLib.EngineTypes.semv = x;
24496 MenhirLib.EngineTypes.startp = _startpos_x_;
24497 MenhirLib.EngineTypes.endp = _endpos_x_;
24498 MenhirLib.EngineTypes.next = _menhir_stack;
24499 };
24500 };
24501 } = _menhir_stack in
24502 let xs : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic xs in
24503 let x : 'tv_ctype = Obj.magic x in
24504 let _startpos = _startpos_x_ in
24505 let _endpos = _endpos_xs_ in
24506 let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
24507 # 146 "standard.mly"
24508 ( x :: xs )
24509 # 24510 "parser_cocci_menhir.ml"
24510 in
24511 _menhir_env.MenhirLib.EngineTypes.stack <- {
24512 MenhirLib.EngineTypes.state = _menhir_s;
24513 MenhirLib.EngineTypes.semv = Obj.repr _v;
24514 MenhirLib.EngineTypes.startp = _startpos;
24515 MenhirLib.EngineTypes.endp = _endpos;
24516 MenhirLib.EngineTypes.next = _menhir_stack;
24517 });
24518 (fun _menhir_env ->
24519 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24520 let {
24521 MenhirLib.EngineTypes.state = _menhir_s;
24522 MenhirLib.EngineTypes.semv = x;
24523 MenhirLib.EngineTypes.startp = _startpos_x_;
24524 MenhirLib.EngineTypes.endp = _endpos_x_;
24525 MenhirLib.EngineTypes.next = _menhir_stack;
24526 } = _menhir_stack in
24527 let x : 'tv_d_ident = Obj.magic x in
24528 let _startpos = _startpos_x_ in
24529 let _endpos = _endpos_x_ in
24530 let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
24531 # 144 "standard.mly"
24532 ( [ x ] )
24533 # 24534 "parser_cocci_menhir.ml"
24534 in
24535 _menhir_env.MenhirLib.EngineTypes.stack <- {
24536 MenhirLib.EngineTypes.state = _menhir_s;
24537 MenhirLib.EngineTypes.semv = Obj.repr _v;
24538 MenhirLib.EngineTypes.startp = _startpos;
24539 MenhirLib.EngineTypes.endp = _endpos;
24540 MenhirLib.EngineTypes.next = _menhir_stack;
24541 });
24542 (fun _menhir_env ->
24543 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24544 let {
24545 MenhirLib.EngineTypes.semv = xs;
24546 MenhirLib.EngineTypes.startp = _startpos_xs_;
24547 MenhirLib.EngineTypes.endp = _endpos_xs_;
24548 MenhirLib.EngineTypes.next = {
24549 MenhirLib.EngineTypes.startp = _startpos__2_;
24550 MenhirLib.EngineTypes.endp = _endpos__2_;
24551 MenhirLib.EngineTypes.next = {
24552 MenhirLib.EngineTypes.state = _menhir_s;
24553 MenhirLib.EngineTypes.semv = x;
24554 MenhirLib.EngineTypes.startp = _startpos_x_;
24555 MenhirLib.EngineTypes.endp = _endpos_x_;
24556 MenhirLib.EngineTypes.next = _menhir_stack;
24557 };
24558 };
24559 } = _menhir_stack in
24560 let xs : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic xs in
24561 let x : 'tv_d_ident = Obj.magic x in
24562 let _startpos = _startpos_x_ in
24563 let _endpos = _endpos_xs_ in
24564 let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
24565 # 146 "standard.mly"
24566 ( x :: xs )
24567 # 24568 "parser_cocci_menhir.ml"
24568 in
24569 _menhir_env.MenhirLib.EngineTypes.stack <- {
24570 MenhirLib.EngineTypes.state = _menhir_s;
24571 MenhirLib.EngineTypes.semv = Obj.repr _v;
24572 MenhirLib.EngineTypes.startp = _startpos;
24573 MenhirLib.EngineTypes.endp = _endpos;
24574 MenhirLib.EngineTypes.next = _menhir_stack;
24575 });
24576 (fun _menhir_env ->
24577 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24578 let {
24579 MenhirLib.EngineTypes.state = _menhir_s;
24580 MenhirLib.EngineTypes.semv = x;
24581 MenhirLib.EngineTypes.startp = _startpos_x_;
24582 MenhirLib.EngineTypes.endp = _endpos_x_;
24583 MenhirLib.EngineTypes.next = _menhir_stack;
24584 } = _menhir_stack in
24585 let x : 'tv_dexpr = Obj.magic x in
24586 let _startpos = _startpos_x_ in
24587 let _endpos = _endpos_x_ in
24588 let _v : 'tv_separated_nonempty_list_TComma_dexpr_ =
24589 # 144 "standard.mly"
24590 ( [ x ] )
24591 # 24592 "parser_cocci_menhir.ml"
24592 in
24593 _menhir_env.MenhirLib.EngineTypes.stack <- {
24594 MenhirLib.EngineTypes.state = _menhir_s;
24595 MenhirLib.EngineTypes.semv = Obj.repr _v;
24596 MenhirLib.EngineTypes.startp = _startpos;
24597 MenhirLib.EngineTypes.endp = _endpos;
24598 MenhirLib.EngineTypes.next = _menhir_stack;
24599 });
24600 (fun _menhir_env ->
24601 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24602 let {
24603 MenhirLib.EngineTypes.semv = xs;
24604 MenhirLib.EngineTypes.startp = _startpos_xs_;
24605 MenhirLib.EngineTypes.endp = _endpos_xs_;
24606 MenhirLib.EngineTypes.next = {
24607 MenhirLib.EngineTypes.startp = _startpos__2_;
24608 MenhirLib.EngineTypes.endp = _endpos__2_;
24609 MenhirLib.EngineTypes.next = {
24610 MenhirLib.EngineTypes.state = _menhir_s;
24611 MenhirLib.EngineTypes.semv = x;
24612 MenhirLib.EngineTypes.startp = _startpos_x_;
24613 MenhirLib.EngineTypes.endp = _endpos_x_;
24614 MenhirLib.EngineTypes.next = _menhir_stack;
24615 };
24616 };
24617 } = _menhir_stack in
24618 let xs : 'tv_separated_nonempty_list_TComma_dexpr_ = Obj.magic xs in
24619 let x : 'tv_dexpr = Obj.magic x in
24620 let _startpos = _startpos_x_ in
24621 let _endpos = _endpos_xs_ in
24622 let _v : 'tv_separated_nonempty_list_TComma_dexpr_ =
24623 # 146 "standard.mly"
24624 ( x :: xs )
24625 # 24626 "parser_cocci_menhir.ml"
24626 in
24627 _menhir_env.MenhirLib.EngineTypes.stack <- {
24628 MenhirLib.EngineTypes.state = _menhir_s;
24629 MenhirLib.EngineTypes.semv = Obj.repr _v;
24630 MenhirLib.EngineTypes.startp = _startpos;
24631 MenhirLib.EngineTypes.endp = _endpos;
24632 MenhirLib.EngineTypes.next = _menhir_stack;
24633 });
24634 (fun _menhir_env ->
24635 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24636 let {
24637 MenhirLib.EngineTypes.state = _menhir_s;
24638 MenhirLib.EngineTypes.semv = x;
24639 MenhirLib.EngineTypes.startp = _startpos_x_;
24640 MenhirLib.EngineTypes.endp = _endpos_x_;
24641 MenhirLib.EngineTypes.next = _menhir_stack;
24642 } = _menhir_stack in
24643 let x : 'tv_ident_or_const = Obj.magic x in
24644 let _startpos = _startpos_x_ in
24645 let _endpos = _endpos_x_ in
24646 let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
24647 # 144 "standard.mly"
24648 ( [ x ] )
24649 # 24650 "parser_cocci_menhir.ml"
24650 in
24651 _menhir_env.MenhirLib.EngineTypes.stack <- {
24652 MenhirLib.EngineTypes.state = _menhir_s;
24653 MenhirLib.EngineTypes.semv = Obj.repr _v;
24654 MenhirLib.EngineTypes.startp = _startpos;
24655 MenhirLib.EngineTypes.endp = _endpos;
24656 MenhirLib.EngineTypes.next = _menhir_stack;
24657 });
24658 (fun _menhir_env ->
24659 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24660 let {
24661 MenhirLib.EngineTypes.semv = xs;
24662 MenhirLib.EngineTypes.startp = _startpos_xs_;
24663 MenhirLib.EngineTypes.endp = _endpos_xs_;
24664 MenhirLib.EngineTypes.next = {
24665 MenhirLib.EngineTypes.startp = _startpos__2_;
24666 MenhirLib.EngineTypes.endp = _endpos__2_;
24667 MenhirLib.EngineTypes.next = {
24668 MenhirLib.EngineTypes.state = _menhir_s;
24669 MenhirLib.EngineTypes.semv = x;
24670 MenhirLib.EngineTypes.startp = _startpos_x_;
24671 MenhirLib.EngineTypes.endp = _endpos_x_;
24672 MenhirLib.EngineTypes.next = _menhir_stack;
24673 };
24674 };
24675 } = _menhir_stack in
24676 let xs : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic xs in
24677 let x : 'tv_ident_or_const = Obj.magic x in
24678 let _startpos = _startpos_x_ in
24679 let _endpos = _endpos_xs_ in
24680 let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
24681 # 146 "standard.mly"
24682 ( x :: xs )
24683 # 24684 "parser_cocci_menhir.ml"
24684 in
24685 _menhir_env.MenhirLib.EngineTypes.stack <- {
24686 MenhirLib.EngineTypes.state = _menhir_s;
24687 MenhirLib.EngineTypes.semv = Obj.repr _v;
24688 MenhirLib.EngineTypes.startp = _startpos;
24689 MenhirLib.EngineTypes.endp = _endpos;
24690 MenhirLib.EngineTypes.next = _menhir_stack;
24691 });
24692 (fun _menhir_env ->
24693 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24694 let {
24695 MenhirLib.EngineTypes.state = _menhir_s;
24696 MenhirLib.EngineTypes.semv = x;
24697 MenhirLib.EngineTypes.startp = _startpos_x_;
24698 MenhirLib.EngineTypes.endp = _endpos_x_;
24699 MenhirLib.EngineTypes.next = _menhir_stack;
24700 } = _menhir_stack in
24701 let x : 'tv_meta_ident = Obj.magic x in
24702 let _startpos = _startpos_x_ in
24703 let _endpos = _endpos_x_ in
24704 let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
24705 # 144 "standard.mly"
24706 ( [ x ] )
24707 # 24708 "parser_cocci_menhir.ml"
24708 in
24709 _menhir_env.MenhirLib.EngineTypes.stack <- {
24710 MenhirLib.EngineTypes.state = _menhir_s;
24711 MenhirLib.EngineTypes.semv = Obj.repr _v;
24712 MenhirLib.EngineTypes.startp = _startpos;
24713 MenhirLib.EngineTypes.endp = _endpos;
24714 MenhirLib.EngineTypes.next = _menhir_stack;
24715 });
24716 (fun _menhir_env ->
24717 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24718 let {
24719 MenhirLib.EngineTypes.semv = xs;
24720 MenhirLib.EngineTypes.startp = _startpos_xs_;
24721 MenhirLib.EngineTypes.endp = _endpos_xs_;
24722 MenhirLib.EngineTypes.next = {
24723 MenhirLib.EngineTypes.startp = _startpos__2_;
24724 MenhirLib.EngineTypes.endp = _endpos__2_;
24725 MenhirLib.EngineTypes.next = {
24726 MenhirLib.EngineTypes.state = _menhir_s;
24727 MenhirLib.EngineTypes.semv = x;
24728 MenhirLib.EngineTypes.startp = _startpos_x_;
24729 MenhirLib.EngineTypes.endp = _endpos_x_;
24730 MenhirLib.EngineTypes.next = _menhir_stack;
24731 };
24732 };
24733 } = _menhir_stack in
24734 let xs : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic xs in
24735 let x : 'tv_meta_ident = Obj.magic x in
24736 let _startpos = _startpos_x_ in
24737 let _endpos = _endpos_xs_ in
24738 let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
24739 # 146 "standard.mly"
24740 ( x :: xs )
24741 # 24742 "parser_cocci_menhir.ml"
24742 in
24743 _menhir_env.MenhirLib.EngineTypes.stack <- {
24744 MenhirLib.EngineTypes.state = _menhir_s;
24745 MenhirLib.EngineTypes.semv = Obj.repr _v;
24746 MenhirLib.EngineTypes.startp = _startpos;
24747 MenhirLib.EngineTypes.endp = _endpos;
24748 MenhirLib.EngineTypes.next = _menhir_stack;
24749 });
24750 (fun _menhir_env ->
24751 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24752 let {
24753 MenhirLib.EngineTypes.state = _menhir_s;
24754 MenhirLib.EngineTypes.semv = x;
24755 MenhirLib.EngineTypes.startp = _startpos_x_;
24756 MenhirLib.EngineTypes.endp = _endpos_x_;
24757 MenhirLib.EngineTypes.next = _menhir_stack;
24758 } = _menhir_stack in
24759 let x : 'tv_pure_ident = Obj.magic x in
24760 let _startpos = _startpos_x_ in
24761 let _endpos = _endpos_x_ in
24762 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
24763 # 144 "standard.mly"
24764 ( [ x ] )
24765 # 24766 "parser_cocci_menhir.ml"
24766 in
24767 _menhir_env.MenhirLib.EngineTypes.stack <- {
24768 MenhirLib.EngineTypes.state = _menhir_s;
24769 MenhirLib.EngineTypes.semv = Obj.repr _v;
24770 MenhirLib.EngineTypes.startp = _startpos;
24771 MenhirLib.EngineTypes.endp = _endpos;
24772 MenhirLib.EngineTypes.next = _menhir_stack;
24773 });
24774 (fun _menhir_env ->
24775 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24776 let {
24777 MenhirLib.EngineTypes.semv = xs;
24778 MenhirLib.EngineTypes.startp = _startpos_xs_;
24779 MenhirLib.EngineTypes.endp = _endpos_xs_;
24780 MenhirLib.EngineTypes.next = {
24781 MenhirLib.EngineTypes.startp = _startpos__2_;
24782 MenhirLib.EngineTypes.endp = _endpos__2_;
24783 MenhirLib.EngineTypes.next = {
24784 MenhirLib.EngineTypes.state = _menhir_s;
24785 MenhirLib.EngineTypes.semv = x;
24786 MenhirLib.EngineTypes.startp = _startpos_x_;
24787 MenhirLib.EngineTypes.endp = _endpos_x_;
24788 MenhirLib.EngineTypes.next = _menhir_stack;
24789 };
24790 };
24791 } = _menhir_stack in
24792 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic xs in
24793 let x : 'tv_pure_ident = Obj.magic x in
24794 let _startpos = _startpos_x_ in
24795 let _endpos = _endpos_xs_ in
24796 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
24797 # 146 "standard.mly"
24798 ( x :: xs )
24799 # 24800 "parser_cocci_menhir.ml"
24800 in
24801 _menhir_env.MenhirLib.EngineTypes.stack <- {
24802 MenhirLib.EngineTypes.state = _menhir_s;
24803 MenhirLib.EngineTypes.semv = Obj.repr _v;
24804 MenhirLib.EngineTypes.startp = _startpos;
24805 MenhirLib.EngineTypes.endp = _endpos;
24806 MenhirLib.EngineTypes.next = _menhir_stack;
24807 });
24808 (fun _menhir_env ->
24809 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24810 let {
24811 MenhirLib.EngineTypes.state = _menhir_s;
24812 MenhirLib.EngineTypes.semv = x;
24813 MenhirLib.EngineTypes.startp = _startpos_x_;
24814 MenhirLib.EngineTypes.endp = _endpos_x_;
24815 MenhirLib.EngineTypes.next = _menhir_stack;
24816 } = _menhir_stack in
24817 let x : 'tv_pure_ident_or_meta_ident = Obj.magic x in
24818 let _startpos = _startpos_x_ in
24819 let _endpos = _endpos_x_ in
24820 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
24821 # 144 "standard.mly"
24822 ( [ x ] )
24823 # 24824 "parser_cocci_menhir.ml"
24824 in
24825 _menhir_env.MenhirLib.EngineTypes.stack <- {
24826 MenhirLib.EngineTypes.state = _menhir_s;
24827 MenhirLib.EngineTypes.semv = Obj.repr _v;
24828 MenhirLib.EngineTypes.startp = _startpos;
24829 MenhirLib.EngineTypes.endp = _endpos;
24830 MenhirLib.EngineTypes.next = _menhir_stack;
24831 });
24832 (fun _menhir_env ->
24833 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24834 let {
24835 MenhirLib.EngineTypes.semv = xs;
24836 MenhirLib.EngineTypes.startp = _startpos_xs_;
24837 MenhirLib.EngineTypes.endp = _endpos_xs_;
24838 MenhirLib.EngineTypes.next = {
24839 MenhirLib.EngineTypes.startp = _startpos__2_;
24840 MenhirLib.EngineTypes.endp = _endpos__2_;
24841 MenhirLib.EngineTypes.next = {
24842 MenhirLib.EngineTypes.state = _menhir_s;
24843 MenhirLib.EngineTypes.semv = x;
24844 MenhirLib.EngineTypes.startp = _startpos_x_;
24845 MenhirLib.EngineTypes.endp = _endpos_x_;
24846 MenhirLib.EngineTypes.next = _menhir_stack;
24847 };
24848 };
24849 } = _menhir_stack in
24850 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic xs in
24851 let x : 'tv_pure_ident_or_meta_ident = Obj.magic x in
24852 let _startpos = _startpos_x_ in
24853 let _endpos = _endpos_xs_ in
24854 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
24855 # 146 "standard.mly"
24856 ( x :: xs )
24857 # 24858 "parser_cocci_menhir.ml"
24858 in
24859 _menhir_env.MenhirLib.EngineTypes.stack <- {
24860 MenhirLib.EngineTypes.state = _menhir_s;
24861 MenhirLib.EngineTypes.semv = Obj.repr _v;
24862 MenhirLib.EngineTypes.startp = _startpos;
24863 MenhirLib.EngineTypes.endp = _endpos;
24864 MenhirLib.EngineTypes.next = _menhir_stack;
24865 });
24866 (fun _menhir_env ->
24867 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24868 let {
24869 MenhirLib.EngineTypes.state = _menhir_s;
24870 MenhirLib.EngineTypes.semv = x;
24871 MenhirLib.EngineTypes.startp = _startpos_x_;
24872 MenhirLib.EngineTypes.endp = _endpos_x_;
24873 MenhirLib.EngineTypes.next = _menhir_stack;
24874 } = _menhir_stack in
24875 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ = Obj.magic x in
24876 let _startpos = _startpos_x_ in
24877 let _endpos = _endpos_x_ in
24878 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
24879 # 144 "standard.mly"
24880 ( [ x ] )
24881 # 24882 "parser_cocci_menhir.ml"
24882 in
24883 _menhir_env.MenhirLib.EngineTypes.stack <- {
24884 MenhirLib.EngineTypes.state = _menhir_s;
24885 MenhirLib.EngineTypes.semv = Obj.repr _v;
24886 MenhirLib.EngineTypes.startp = _startpos;
24887 MenhirLib.EngineTypes.endp = _endpos;
24888 MenhirLib.EngineTypes.next = _menhir_stack;
24889 });
24890 (fun _menhir_env ->
24891 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24892 let {
24893 MenhirLib.EngineTypes.semv = xs;
24894 MenhirLib.EngineTypes.startp = _startpos_xs_;
24895 MenhirLib.EngineTypes.endp = _endpos_xs_;
24896 MenhirLib.EngineTypes.next = {
24897 MenhirLib.EngineTypes.startp = _startpos__2_;
24898 MenhirLib.EngineTypes.endp = _endpos__2_;
24899 MenhirLib.EngineTypes.next = {
24900 MenhirLib.EngineTypes.state = _menhir_s;
24901 MenhirLib.EngineTypes.semv = x;
24902 MenhirLib.EngineTypes.startp = _startpos_x_;
24903 MenhirLib.EngineTypes.endp = _endpos_x_;
24904 MenhirLib.EngineTypes.next = _menhir_stack;
24905 };
24906 };
24907 } = _menhir_stack in
24908 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic xs in
24909 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ = Obj.magic x in
24910 let _startpos = _startpos_x_ in
24911 let _endpos = _endpos_xs_ in
24912 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
24913 # 146 "standard.mly"
24914 ( x :: xs )
24915 # 24916 "parser_cocci_menhir.ml"
24916 in
24917 _menhir_env.MenhirLib.EngineTypes.stack <- {
24918 MenhirLib.EngineTypes.state = _menhir_s;
24919 MenhirLib.EngineTypes.semv = Obj.repr _v;
24920 MenhirLib.EngineTypes.startp = _startpos;
24921 MenhirLib.EngineTypes.endp = _endpos;
24922 MenhirLib.EngineTypes.next = _menhir_stack;
24923 });
24924 (fun _menhir_env ->
24925 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24926 let {
24927 MenhirLib.EngineTypes.state = _menhir_s;
24928 MenhirLib.EngineTypes.semv = x;
24929 MenhirLib.EngineTypes.startp = _startpos_x_;
24930 MenhirLib.EngineTypes.endp = _endpos_x_;
24931 MenhirLib.EngineTypes.next = _menhir_stack;
24932 } = _menhir_stack in
24933 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ = Obj.magic x in
24934 let _startpos = _startpos_x_ in
24935 let _endpos = _endpos_x_ in
24936 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
24937 # 144 "standard.mly"
24938 ( [ x ] )
24939 # 24940 "parser_cocci_menhir.ml"
24940 in
24941 _menhir_env.MenhirLib.EngineTypes.stack <- {
24942 MenhirLib.EngineTypes.state = _menhir_s;
24943 MenhirLib.EngineTypes.semv = Obj.repr _v;
24944 MenhirLib.EngineTypes.startp = _startpos;
24945 MenhirLib.EngineTypes.endp = _endpos;
24946 MenhirLib.EngineTypes.next = _menhir_stack;
24947 });
24948 (fun _menhir_env ->
24949 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24950 let {
24951 MenhirLib.EngineTypes.semv = xs;
24952 MenhirLib.EngineTypes.startp = _startpos_xs_;
24953 MenhirLib.EngineTypes.endp = _endpos_xs_;
24954 MenhirLib.EngineTypes.next = {
24955 MenhirLib.EngineTypes.startp = _startpos__2_;
24956 MenhirLib.EngineTypes.endp = _endpos__2_;
24957 MenhirLib.EngineTypes.next = {
24958 MenhirLib.EngineTypes.state = _menhir_s;
24959 MenhirLib.EngineTypes.semv = x;
24960 MenhirLib.EngineTypes.startp = _startpos_x_;
24961 MenhirLib.EngineTypes.endp = _endpos_x_;
24962 MenhirLib.EngineTypes.next = _menhir_stack;
24963 };
24964 };
24965 } = _menhir_stack in
24966 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic xs in
24967 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ = Obj.magic x in
24968 let _startpos = _startpos_x_ in
24969 let _endpos = _endpos_xs_ in
24970 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
24971 # 146 "standard.mly"
24972 ( x :: xs )
24973 # 24974 "parser_cocci_menhir.ml"
24974 in
24975 _menhir_env.MenhirLib.EngineTypes.stack <- {
24976 MenhirLib.EngineTypes.state = _menhir_s;
24977 MenhirLib.EngineTypes.semv = Obj.repr _v;
24978 MenhirLib.EngineTypes.startp = _startpos;
24979 MenhirLib.EngineTypes.endp = _endpos;
24980 MenhirLib.EngineTypes.next = _menhir_stack;
24981 });
24982 (fun _menhir_env ->
24983 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24984 let {
24985 MenhirLib.EngineTypes.state = _menhir_s;
24986 MenhirLib.EngineTypes.semv = x;
24987 MenhirLib.EngineTypes.startp = _startpos_x_;
24988 MenhirLib.EngineTypes.endp = _endpos_x_;
24989 MenhirLib.EngineTypes.next = _menhir_stack;
24990 } = _menhir_stack in
24991 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ = Obj.magic x in
24992 let _startpos = _startpos_x_ in
24993 let _endpos = _endpos_x_ in
24994 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
24995 # 144 "standard.mly"
24996 ( [ x ] )
24997 # 24998 "parser_cocci_menhir.ml"
24998 in
24999 _menhir_env.MenhirLib.EngineTypes.stack <- {
25000 MenhirLib.EngineTypes.state = _menhir_s;
25001 MenhirLib.EngineTypes.semv = Obj.repr _v;
25002 MenhirLib.EngineTypes.startp = _startpos;
25003 MenhirLib.EngineTypes.endp = _endpos;
25004 MenhirLib.EngineTypes.next = _menhir_stack;
25005 });
25006 (fun _menhir_env ->
25007 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25008 let {
25009 MenhirLib.EngineTypes.semv = xs;
25010 MenhirLib.EngineTypes.startp = _startpos_xs_;
25011 MenhirLib.EngineTypes.endp = _endpos_xs_;
25012 MenhirLib.EngineTypes.next = {
25013 MenhirLib.EngineTypes.startp = _startpos__2_;
25014 MenhirLib.EngineTypes.endp = _endpos__2_;
25015 MenhirLib.EngineTypes.next = {
25016 MenhirLib.EngineTypes.state = _menhir_s;
25017 MenhirLib.EngineTypes.semv = x;
25018 MenhirLib.EngineTypes.startp = _startpos_x_;
25019 MenhirLib.EngineTypes.endp = _endpos_x_;
25020 MenhirLib.EngineTypes.next = _menhir_stack;
25021 };
25022 };
25023 } = _menhir_stack in
25024 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic xs in
25025 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ = Obj.magic x in
25026 let _startpos = _startpos_x_ in
25027 let _endpos = _endpos_xs_ in
25028 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
25029 # 146 "standard.mly"
25030 ( x :: xs )
25031 # 25032 "parser_cocci_menhir.ml"
25032 in
25033 _menhir_env.MenhirLib.EngineTypes.stack <- {
25034 MenhirLib.EngineTypes.state = _menhir_s;
25035 MenhirLib.EngineTypes.semv = Obj.repr _v;
25036 MenhirLib.EngineTypes.startp = _startpos;
25037 MenhirLib.EngineTypes.endp = _endpos;
25038 MenhirLib.EngineTypes.next = _menhir_stack;
25039 });
25040 (fun _menhir_env ->
25041 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25042 let {
25043 MenhirLib.EngineTypes.state = _menhir_s;
25044 MenhirLib.EngineTypes.semv = x;
25045 MenhirLib.EngineTypes.startp = _startpos_x_;
25046 MenhirLib.EngineTypes.endp = _endpos_x_;
25047 MenhirLib.EngineTypes.next = _menhir_stack;
25048 } = _menhir_stack in
25049 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ = Obj.magic x in
25050 let _startpos = _startpos_x_ in
25051 let _endpos = _endpos_x_ in
25052 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
25053 # 144 "standard.mly"
25054 ( [ x ] )
25055 # 25056 "parser_cocci_menhir.ml"
25056 in
25057 _menhir_env.MenhirLib.EngineTypes.stack <- {
25058 MenhirLib.EngineTypes.state = _menhir_s;
25059 MenhirLib.EngineTypes.semv = Obj.repr _v;
25060 MenhirLib.EngineTypes.startp = _startpos;
25061 MenhirLib.EngineTypes.endp = _endpos;
25062 MenhirLib.EngineTypes.next = _menhir_stack;
25063 });
25064 (fun _menhir_env ->
25065 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25066 let {
25067 MenhirLib.EngineTypes.semv = xs;
25068 MenhirLib.EngineTypes.startp = _startpos_xs_;
25069 MenhirLib.EngineTypes.endp = _endpos_xs_;
25070 MenhirLib.EngineTypes.next = {
25071 MenhirLib.EngineTypes.startp = _startpos__2_;
25072 MenhirLib.EngineTypes.endp = _endpos__2_;
25073 MenhirLib.EngineTypes.next = {
25074 MenhirLib.EngineTypes.state = _menhir_s;
25075 MenhirLib.EngineTypes.semv = x;
25076 MenhirLib.EngineTypes.startp = _startpos_x_;
25077 MenhirLib.EngineTypes.endp = _endpos_x_;
25078 MenhirLib.EngineTypes.next = _menhir_stack;
25079 };
25080 };
25081 } = _menhir_stack in
25082 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic xs in
25083 let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ = Obj.magic x in
25084 let _startpos = _startpos_x_ in
25085 let _endpos = _endpos_xs_ in
25086 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
25087 # 146 "standard.mly"
25088 ( x :: xs )
25089 # 25090 "parser_cocci_menhir.ml"
25090 in
25091 _menhir_env.MenhirLib.EngineTypes.stack <- {
25092 MenhirLib.EngineTypes.state = _menhir_s;
25093 MenhirLib.EngineTypes.semv = Obj.repr _v;
25094 MenhirLib.EngineTypes.startp = _startpos;
25095 MenhirLib.EngineTypes.endp = _endpos;
25096 MenhirLib.EngineTypes.next = _menhir_stack;
25097 });
25098 (fun _menhir_env ->
25099 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25100 let {
25101 MenhirLib.EngineTypes.state = _menhir_s;
25102 MenhirLib.EngineTypes.semv = _1;
25103 MenhirLib.EngineTypes.startp = _startpos__1_;
25104 MenhirLib.EngineTypes.endp = _endpos__1_;
25105 MenhirLib.EngineTypes.next = _menhir_stack;
25106 } = _menhir_stack in
25107 let _1 : 'tv_statement = Obj.magic _1 in
25108 let _startpos = _startpos__1_ in
25109 let _endpos = _endpos__1_ in
25110 let _v : 'tv_single_statement =
25111 # 864 "parser_cocci_menhir.mly"
25112 ( _1 )
25113 # 25114 "parser_cocci_menhir.ml"
25114 in
25115 _menhir_env.MenhirLib.EngineTypes.stack <- {
25116 MenhirLib.EngineTypes.state = _menhir_s;
25117 MenhirLib.EngineTypes.semv = Obj.repr _v;
25118 MenhirLib.EngineTypes.startp = _startpos;
25119 MenhirLib.EngineTypes.endp = _endpos;
25120 MenhirLib.EngineTypes.next = _menhir_stack;
25121 });
25122 (fun _menhir_env ->
25123 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25124 let {
25125 MenhirLib.EngineTypes.semv = _3;
25126 MenhirLib.EngineTypes.startp = _startpos__3_;
25127 MenhirLib.EngineTypes.endp = _endpos__3_;
25128 MenhirLib.EngineTypes.next = {
25129 MenhirLib.EngineTypes.semv = _2;
25130 MenhirLib.EngineTypes.startp = _startpos__2_;
25131 MenhirLib.EngineTypes.endp = _endpos__2_;
25132 MenhirLib.EngineTypes.next = {
25133 MenhirLib.EngineTypes.state = _menhir_s;
25134 MenhirLib.EngineTypes.semv = _1;
25135 MenhirLib.EngineTypes.startp = _startpos__1_;
25136 MenhirLib.EngineTypes.endp = _endpos__1_;
25137 MenhirLib.EngineTypes.next = _menhir_stack;
25138 };
25139 };
25140 } = _menhir_stack in
25141 let _3 : (
25142 # 76 "parser_cocci_menhir.mly"
25143 (Data.clt)
25144 # 25145 "parser_cocci_menhir.ml"
25145 ) = Obj.magic _3 in
25146 let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in
25147 let _1 : (
25148 # 75 "parser_cocci_menhir.mly"
25149 (Data.clt)
25150 # 25151 "parser_cocci_menhir.ml"
25151 ) = Obj.magic _1 in
25152 let _startpos = _startpos__1_ in
25153 let _endpos = _endpos__3_ in
25154 let _v : 'tv_single_statement =
25155 # 868 "parser_cocci_menhir.mly"
25156 ( let (mids,code) = _2 in
25157 Ast0.wrap
25158 (Ast0.Disj(P.clt2mcode "(" _1,
25159 List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
25160 mids, P.clt2mcode ")" _3)) )
25161 # 25162 "parser_cocci_menhir.ml"
25162 in
25163 _menhir_env.MenhirLib.EngineTypes.stack <- {
25164 MenhirLib.EngineTypes.state = _menhir_s;
25165 MenhirLib.EngineTypes.semv = Obj.repr _v;
25166 MenhirLib.EngineTypes.startp = _startpos;
25167 MenhirLib.EngineTypes.endp = _endpos;
25168 MenhirLib.EngineTypes.next = _menhir_stack;
25169 });
25170 (fun _menhir_env ->
25171 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25172 let {
25173 MenhirLib.EngineTypes.state = _menhir_s;
25174 MenhirLib.EngineTypes.semv = _1;
25175 MenhirLib.EngineTypes.startp = _startpos__1_;
25176 MenhirLib.EngineTypes.endp = _endpos__1_;
25177 MenhirLib.EngineTypes.next = _menhir_stack;
25178 } = _menhir_stack in
25179 let _1 : 'tv_includes = Obj.magic _1 in
25180 let _startpos = _startpos__1_ in
25181 let _endpos = _endpos__1_ in
25182 let _v : 'tv_statement =
25183 # 803 "parser_cocci_menhir.mly"
25184 ( _1 )
25185 # 25186 "parser_cocci_menhir.ml"
25186 in
25187 _menhir_env.MenhirLib.EngineTypes.stack <- {
25188 MenhirLib.EngineTypes.state = _menhir_s;
25189 MenhirLib.EngineTypes.semv = Obj.repr _v;
25190 MenhirLib.EngineTypes.startp = _startpos;
25191 MenhirLib.EngineTypes.endp = _endpos;
25192 MenhirLib.EngineTypes.next = _menhir_stack;
25193 });
25194 (fun _menhir_env ->
25195 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25196 let {
25197 MenhirLib.EngineTypes.state = _menhir_s;
25198 MenhirLib.EngineTypes.semv = _1;
25199 MenhirLib.EngineTypes.startp = _startpos__1_;
25200 MenhirLib.EngineTypes.endp = _endpos__1_;
25201 MenhirLib.EngineTypes.next = _menhir_stack;
25202 } = _menhir_stack in
25203 let _1 : (
25204 # 64 "parser_cocci_menhir.mly"
25205 (Parse_aux.info)
25206 # 25207 "parser_cocci_menhir.ml"
25207 ) = Obj.magic _1 in
25208 let _startpos = _startpos__1_ in
25209 let _endpos = _endpos__1_ in
25210 let _v : 'tv_statement =
25211 # 805 "parser_cocci_menhir.mly"
25212 ( P.meta_stm _1 )
25213 # 25214 "parser_cocci_menhir.ml"
25214 in
25215 _menhir_env.MenhirLib.EngineTypes.stack <- {
25216 MenhirLib.EngineTypes.state = _menhir_s;
25217 MenhirLib.EngineTypes.semv = Obj.repr _v;
25218 MenhirLib.EngineTypes.startp = _startpos;
25219 MenhirLib.EngineTypes.endp = _endpos;
25220 MenhirLib.EngineTypes.next = _menhir_stack;
25221 });
25222 (fun _menhir_env ->
25223 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25224 let {
25225 MenhirLib.EngineTypes.semv = _2;
25226 MenhirLib.EngineTypes.startp = _startpos__2_;
25227 MenhirLib.EngineTypes.endp = _endpos__2_;
25228 MenhirLib.EngineTypes.next = {
25229 MenhirLib.EngineTypes.state = _menhir_s;
25230 MenhirLib.EngineTypes.semv = _1;
25231 MenhirLib.EngineTypes.startp = _startpos__1_;
25232 MenhirLib.EngineTypes.endp = _endpos__1_;
25233 MenhirLib.EngineTypes.next = _menhir_stack;
25234 };
25235 } = _menhir_stack in
25236 let _2 : (
25237 # 106 "parser_cocci_menhir.mly"
25238 (Data.clt)
25239 # 25240 "parser_cocci_menhir.ml"
25240 ) = Obj.magic _2 in
25241 let _1 : 'tv_expr = Obj.magic _1 in
25242 let _startpos = _startpos__1_ in
25243 let _endpos = _endpos__2_ in
25244 let _v : 'tv_statement =
25245 # 807 "parser_cocci_menhir.mly"
25246 ( P.exp_stm _1 _2 )
25247 # 25248 "parser_cocci_menhir.ml"
25248 in
25249 _menhir_env.MenhirLib.EngineTypes.stack <- {
25250 MenhirLib.EngineTypes.state = _menhir_s;
25251 MenhirLib.EngineTypes.semv = Obj.repr _v;
25252 MenhirLib.EngineTypes.startp = _startpos;
25253 MenhirLib.EngineTypes.endp = _endpos;
25254 MenhirLib.EngineTypes.next = _menhir_stack;
25255 });
25256 (fun _menhir_env ->
25257 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25258 let {
25259 MenhirLib.EngineTypes.semv = _5;
25260 MenhirLib.EngineTypes.startp = _startpos__5_;
25261 MenhirLib.EngineTypes.endp = _endpos__5_;
25262 MenhirLib.EngineTypes.next = {
25263 MenhirLib.EngineTypes.semv = _4;
25264 MenhirLib.EngineTypes.startp = _startpos__4_;
25265 MenhirLib.EngineTypes.endp = _endpos__4_;
25266 MenhirLib.EngineTypes.next = {
25267 MenhirLib.EngineTypes.semv = _3;
25268 MenhirLib.EngineTypes.startp = _startpos__3_;
25269 MenhirLib.EngineTypes.endp = _endpos__3_;
25270 MenhirLib.EngineTypes.next = {
25271 MenhirLib.EngineTypes.semv = _2;
25272 MenhirLib.EngineTypes.startp = _startpos__2_;
25273 MenhirLib.EngineTypes.endp = _endpos__2_;
25274 MenhirLib.EngineTypes.next = {
25275 MenhirLib.EngineTypes.state = _menhir_s;
25276 MenhirLib.EngineTypes.semv = _1;
25277 MenhirLib.EngineTypes.startp = _startpos__1_;
25278 MenhirLib.EngineTypes.endp = _endpos__1_;
25279 MenhirLib.EngineTypes.next = _menhir_stack;
25280 };
25281 };
25282 };
25283 };
25284 } = _menhir_stack in
25285 let _5 : 'tv_single_statement = Obj.magic _5 in
25286 let _4 : (
25287 # 76 "parser_cocci_menhir.mly"
25288 (Data.clt)
25289 # 25290 "parser_cocci_menhir.ml"
25290 ) = Obj.magic _4 in
25291 let _3 : 'tv_eexpr = Obj.magic _3 in
25292 let _2 : (
25293 # 75 "parser_cocci_menhir.mly"
25294 (Data.clt)
25295 # 25296 "parser_cocci_menhir.ml"
25296 ) = Obj.magic _2 in
25297 let _1 : (
25298 # 57 "parser_cocci_menhir.mly"
25299 (Data.clt)
25300 # 25301 "parser_cocci_menhir.ml"
25301 ) = Obj.magic _1 in
25302 let _startpos = _startpos__1_ in
25303 let _endpos = _endpos__5_ in
25304 let _v : 'tv_statement =
25305 # 809 "parser_cocci_menhir.mly"
25306 ( P.ifthen _1 _2 _3 _4 _5 )
25307 # 25308 "parser_cocci_menhir.ml"
25308 in
25309 _menhir_env.MenhirLib.EngineTypes.stack <- {
25310 MenhirLib.EngineTypes.state = _menhir_s;
25311 MenhirLib.EngineTypes.semv = Obj.repr _v;
25312 MenhirLib.EngineTypes.startp = _startpos;
25313 MenhirLib.EngineTypes.endp = _endpos;
25314 MenhirLib.EngineTypes.next = _menhir_stack;
25315 });
25316 (fun _menhir_env ->
25317 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25318 let {
25319 MenhirLib.EngineTypes.semv = _7;
25320 MenhirLib.EngineTypes.startp = _startpos__7_;
25321 MenhirLib.EngineTypes.endp = _endpos__7_;
25322 MenhirLib.EngineTypes.next = {
25323 MenhirLib.EngineTypes.semv = _6;
25324 MenhirLib.EngineTypes.startp = _startpos__6_;
25325 MenhirLib.EngineTypes.endp = _endpos__6_;
25326 MenhirLib.EngineTypes.next = {
25327 MenhirLib.EngineTypes.semv = _5;
25328 MenhirLib.EngineTypes.startp = _startpos__5_;
25329 MenhirLib.EngineTypes.endp = _endpos__5_;
25330 MenhirLib.EngineTypes.next = {
25331 MenhirLib.EngineTypes.semv = _4;
25332 MenhirLib.EngineTypes.startp = _startpos__4_;
25333 MenhirLib.EngineTypes.endp = _endpos__4_;
25334 MenhirLib.EngineTypes.next = {
25335 MenhirLib.EngineTypes.semv = _3;
25336 MenhirLib.EngineTypes.startp = _startpos__3_;
25337 MenhirLib.EngineTypes.endp = _endpos__3_;
25338 MenhirLib.EngineTypes.next = {
25339 MenhirLib.EngineTypes.semv = _2;
25340 MenhirLib.EngineTypes.startp = _startpos__2_;
25341 MenhirLib.EngineTypes.endp = _endpos__2_;
25342 MenhirLib.EngineTypes.next = {
25343 MenhirLib.EngineTypes.state = _menhir_s;
25344 MenhirLib.EngineTypes.semv = _1;
25345 MenhirLib.EngineTypes.startp = _startpos__1_;
25346 MenhirLib.EngineTypes.endp = _endpos__1_;
25347 MenhirLib.EngineTypes.next = _menhir_stack;
25348 };
25349 };
25350 };
25351 };
25352 };
25353 };
25354 } = _menhir_stack in
25355 let _7 : 'tv_single_statement = Obj.magic _7 in
25356 let _6 : (
25357 # 57 "parser_cocci_menhir.mly"
25358 (Data.clt)
25359 # 25360 "parser_cocci_menhir.ml"
25360 ) = Obj.magic _6 in
25361 let _5 : 'tv_single_statement = Obj.magic _5 in
25362 let _4 : (
25363 # 76 "parser_cocci_menhir.mly"
25364 (Data.clt)
25365 # 25366 "parser_cocci_menhir.ml"
25366 ) = Obj.magic _4 in
25367 let _3 : 'tv_eexpr = Obj.magic _3 in
25368 let _2 : (
25369 # 75 "parser_cocci_menhir.mly"
25370 (Data.clt)
25371 # 25372 "parser_cocci_menhir.ml"
25372 ) = Obj.magic _2 in
25373 let _1 : (
25374 # 57 "parser_cocci_menhir.mly"
25375 (Data.clt)
25376 # 25377 "parser_cocci_menhir.ml"
25377 ) = Obj.magic _1 in
25378 let _startpos = _startpos__1_ in
25379 let _endpos = _endpos__7_ in
25380 let _v : 'tv_statement =
25381 # 811 "parser_cocci_menhir.mly"
25382 ( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 )
25383 # 25384 "parser_cocci_menhir.ml"
25384 in
25385 _menhir_env.MenhirLib.EngineTypes.stack <- {
25386 MenhirLib.EngineTypes.state = _menhir_s;
25387 MenhirLib.EngineTypes.semv = Obj.repr _v;
25388 MenhirLib.EngineTypes.startp = _startpos;
25389 MenhirLib.EngineTypes.endp = _endpos;
25390 MenhirLib.EngineTypes.next = _menhir_stack;
25391 });
25392 (fun _menhir_env ->
25393 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25394 let {
25395 MenhirLib.EngineTypes.semv = _9;
25396 MenhirLib.EngineTypes.startp = _startpos__9_;
25397 MenhirLib.EngineTypes.endp = _endpos__9_;
25398 MenhirLib.EngineTypes.next = {
25399 MenhirLib.EngineTypes.semv = _8;
25400 MenhirLib.EngineTypes.startp = _startpos__8_;
25401 MenhirLib.EngineTypes.endp = _endpos__8_;
25402 MenhirLib.EngineTypes.next = {
25403 MenhirLib.EngineTypes.semv = _7;
25404 MenhirLib.EngineTypes.startp = _startpos__7_;
25405 MenhirLib.EngineTypes.endp = _endpos__7_;
25406 MenhirLib.EngineTypes.next = {
25407 MenhirLib.EngineTypes.semv = _6;
25408 MenhirLib.EngineTypes.startp = _startpos__6_;
25409 MenhirLib.EngineTypes.endp = _endpos__6_;
25410 MenhirLib.EngineTypes.next = {
25411 MenhirLib.EngineTypes.semv = _5;
25412 MenhirLib.EngineTypes.startp = _startpos__5_;
25413 MenhirLib.EngineTypes.endp = _endpos__5_;
25414 MenhirLib.EngineTypes.next = {
25415 MenhirLib.EngineTypes.semv = _4;
25416 MenhirLib.EngineTypes.startp = _startpos__4_;
25417 MenhirLib.EngineTypes.endp = _endpos__4_;
25418 MenhirLib.EngineTypes.next = {
25419 MenhirLib.EngineTypes.semv = _3;
25420 MenhirLib.EngineTypes.startp = _startpos__3_;
25421 MenhirLib.EngineTypes.endp = _endpos__3_;
25422 MenhirLib.EngineTypes.next = {
25423 MenhirLib.EngineTypes.semv = _2;
25424 MenhirLib.EngineTypes.startp = _startpos__2_;
25425 MenhirLib.EngineTypes.endp = _endpos__2_;
25426 MenhirLib.EngineTypes.next = {
25427 MenhirLib.EngineTypes.state = _menhir_s;
25428 MenhirLib.EngineTypes.semv = _1;
25429 MenhirLib.EngineTypes.startp = _startpos__1_;
25430 MenhirLib.EngineTypes.endp = _endpos__1_;
25431 MenhirLib.EngineTypes.next = _menhir_stack;
25432 };
25433 };
25434 };
25435 };
25436 };
25437 };
25438 };
25439 };
25440 } = _menhir_stack in
25441 let _9 : 'tv_single_statement = Obj.magic _9 in
25442 let _8 : (
25443 # 76 "parser_cocci_menhir.mly"
25444 (Data.clt)
25445 # 25446 "parser_cocci_menhir.ml"
25446 ) = Obj.magic _8 in
25447 let _7 : 'tv_option_eexpr_ = Obj.magic _7 in
25448 let _6 : (
25449 # 106 "parser_cocci_menhir.mly"
25450 (Data.clt)
25451 # 25452 "parser_cocci_menhir.ml"
25452 ) = Obj.magic _6 in
25453 let _5 : 'tv_option_eexpr_ = Obj.magic _5 in
25454 let _4 : (
25455 # 106 "parser_cocci_menhir.mly"
25456 (Data.clt)
25457 # 25458 "parser_cocci_menhir.ml"
25458 ) = Obj.magic _4 in
25459 let _3 : 'tv_option_eexpr_ = Obj.magic _3 in
25460 let _2 : (
25461 # 75 "parser_cocci_menhir.mly"
25462 (Data.clt)
25463 # 25464 "parser_cocci_menhir.ml"
25464 ) = Obj.magic _2 in
25465 let _1 : (
25466 # 57 "parser_cocci_menhir.mly"
25467 (Data.clt)
25468 # 25469 "parser_cocci_menhir.ml"
25469 ) = Obj.magic _1 in
25470 let _startpos = _startpos__1_ in
25471 let _endpos = _endpos__9_ in
25472 let _v : 'tv_statement =
25473 # 814 "parser_cocci_menhir.mly"
25474 ( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 )
25475 # 25476 "parser_cocci_menhir.ml"
25476 in
25477 _menhir_env.MenhirLib.EngineTypes.stack <- {
25478 MenhirLib.EngineTypes.state = _menhir_s;
25479 MenhirLib.EngineTypes.semv = Obj.repr _v;
25480 MenhirLib.EngineTypes.startp = _startpos;
25481 MenhirLib.EngineTypes.endp = _endpos;
25482 MenhirLib.EngineTypes.next = _menhir_stack;
25483 });
25484 (fun _menhir_env ->
25485 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25486 let {
25487 MenhirLib.EngineTypes.semv = _5;
25488 MenhirLib.EngineTypes.startp = _startpos__5_;
25489 MenhirLib.EngineTypes.endp = _endpos__5_;
25490 MenhirLib.EngineTypes.next = {
25491 MenhirLib.EngineTypes.semv = _4;
25492 MenhirLib.EngineTypes.startp = _startpos__4_;
25493 MenhirLib.EngineTypes.endp = _endpos__4_;
25494 MenhirLib.EngineTypes.next = {
25495 MenhirLib.EngineTypes.semv = _3;
25496 MenhirLib.EngineTypes.startp = _startpos__3_;
25497 MenhirLib.EngineTypes.endp = _endpos__3_;
25498 MenhirLib.EngineTypes.next = {
25499 MenhirLib.EngineTypes.semv = _2;
25500 MenhirLib.EngineTypes.startp = _startpos__2_;
25501 MenhirLib.EngineTypes.endp = _endpos__2_;
25502 MenhirLib.EngineTypes.next = {
25503 MenhirLib.EngineTypes.state = _menhir_s;
25504 MenhirLib.EngineTypes.semv = _1;
25505 MenhirLib.EngineTypes.startp = _startpos__1_;
25506 MenhirLib.EngineTypes.endp = _endpos__1_;
25507 MenhirLib.EngineTypes.next = _menhir_stack;
25508 };
25509 };
25510 };
25511 };
25512 } = _menhir_stack in
25513 let _5 : 'tv_single_statement = Obj.magic _5 in
25514 let _4 : (
25515 # 76 "parser_cocci_menhir.mly"
25516 (Data.clt)
25517 # 25518 "parser_cocci_menhir.ml"
25518 ) = Obj.magic _4 in
25519 let _3 : 'tv_eexpr = Obj.magic _3 in
25520 let _2 : (
25521 # 75 "parser_cocci_menhir.mly"
25522 (Data.clt)
25523 # 25524 "parser_cocci_menhir.ml"
25524 ) = Obj.magic _2 in
25525 let _1 : (
25526 # 57 "parser_cocci_menhir.mly"
25527 (Data.clt)
25528 # 25529 "parser_cocci_menhir.ml"
25529 ) = Obj.magic _1 in
25530 let _startpos = _startpos__1_ in
25531 let _endpos = _endpos__5_ in
25532 let _v : 'tv_statement =
25533 # 816 "parser_cocci_menhir.mly"
25534 ( P.whileloop _1 _2 _3 _4 _5 )
25535 # 25536 "parser_cocci_menhir.ml"
25536 in
25537 _menhir_env.MenhirLib.EngineTypes.stack <- {
25538 MenhirLib.EngineTypes.state = _menhir_s;
25539 MenhirLib.EngineTypes.semv = Obj.repr _v;
25540 MenhirLib.EngineTypes.startp = _startpos;
25541 MenhirLib.EngineTypes.endp = _endpos;
25542 MenhirLib.EngineTypes.next = _menhir_stack;
25543 });
25544 (fun _menhir_env ->
25545 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25546 let {
25547 MenhirLib.EngineTypes.semv = _7;
25548 MenhirLib.EngineTypes.startp = _startpos__7_;
25549 MenhirLib.EngineTypes.endp = _endpos__7_;
25550 MenhirLib.EngineTypes.next = {
25551 MenhirLib.EngineTypes.semv = _6;
25552 MenhirLib.EngineTypes.startp = _startpos__6_;
25553 MenhirLib.EngineTypes.endp = _endpos__6_;
25554 MenhirLib.EngineTypes.next = {
25555 MenhirLib.EngineTypes.semv = _5;
25556 MenhirLib.EngineTypes.startp = _startpos__5_;
25557 MenhirLib.EngineTypes.endp = _endpos__5_;
25558 MenhirLib.EngineTypes.next = {
25559 MenhirLib.EngineTypes.semv = _4;
25560 MenhirLib.EngineTypes.startp = _startpos__4_;
25561 MenhirLib.EngineTypes.endp = _endpos__4_;
25562 MenhirLib.EngineTypes.next = {
25563 MenhirLib.EngineTypes.semv = _3;
25564 MenhirLib.EngineTypes.startp = _startpos__3_;
25565 MenhirLib.EngineTypes.endp = _endpos__3_;
25566 MenhirLib.EngineTypes.next = {
25567 MenhirLib.EngineTypes.semv = _2;
25568 MenhirLib.EngineTypes.startp = _startpos__2_;
25569 MenhirLib.EngineTypes.endp = _endpos__2_;
25570 MenhirLib.EngineTypes.next = {
25571 MenhirLib.EngineTypes.state = _menhir_s;
25572 MenhirLib.EngineTypes.semv = _1;
25573 MenhirLib.EngineTypes.startp = _startpos__1_;
25574 MenhirLib.EngineTypes.endp = _endpos__1_;
25575 MenhirLib.EngineTypes.next = _menhir_stack;
25576 };
25577 };
25578 };
25579 };
25580 };
25581 };
25582 } = _menhir_stack in
25583 let _7 : (
25584 # 106 "parser_cocci_menhir.mly"
25585 (Data.clt)
25586 # 25587 "parser_cocci_menhir.ml"
25587 ) = Obj.magic _7 in
25588 let _6 : (
25589 # 76 "parser_cocci_menhir.mly"
25590 (Data.clt)
25591 # 25592 "parser_cocci_menhir.ml"
25592 ) = Obj.magic _6 in
25593 let _5 : 'tv_eexpr = Obj.magic _5 in
25594 let _4 : (
25595 # 75 "parser_cocci_menhir.mly"
25596 (Data.clt)
25597 # 25598 "parser_cocci_menhir.ml"
25598 ) = Obj.magic _4 in
25599 let _3 : (
25600 # 57 "parser_cocci_menhir.mly"
25601 (Data.clt)
25602 # 25603 "parser_cocci_menhir.ml"
25603 ) = Obj.magic _3 in
25604 let _2 : 'tv_single_statement = Obj.magic _2 in
25605 let _1 : (
25606 # 57 "parser_cocci_menhir.mly"
25607 (Data.clt)
25608 # 25609 "parser_cocci_menhir.ml"
25609 ) = Obj.magic _1 in
25610 let _startpos = _startpos__1_ in
25611 let _endpos = _endpos__7_ in
25612 let _v : 'tv_statement =
25613 # 818 "parser_cocci_menhir.mly"
25614 ( P.doloop _1 _2 _3 _4 _5 _6 _7 )
25615 # 25616 "parser_cocci_menhir.ml"
25616 in
25617 _menhir_env.MenhirLib.EngineTypes.stack <- {
25618 MenhirLib.EngineTypes.state = _menhir_s;
25619 MenhirLib.EngineTypes.semv = Obj.repr _v;
25620 MenhirLib.EngineTypes.startp = _startpos;
25621 MenhirLib.EngineTypes.endp = _endpos;
25622 MenhirLib.EngineTypes.next = _menhir_stack;
25623 });
25624 (fun _menhir_env ->
25625 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25626 let {
25627 MenhirLib.EngineTypes.semv = _5;
25628 MenhirLib.EngineTypes.startp = _startpos__5_;
25629 MenhirLib.EngineTypes.endp = _endpos__5_;
25630 MenhirLib.EngineTypes.next = {
25631 MenhirLib.EngineTypes.semv = _4;
25632 MenhirLib.EngineTypes.startp = _startpos__4_;
25633 MenhirLib.EngineTypes.endp = _endpos__4_;
25634 MenhirLib.EngineTypes.next = {
25635 MenhirLib.EngineTypes.semv = _3;
25636 MenhirLib.EngineTypes.startp = _startpos__3_;
25637 MenhirLib.EngineTypes.endp = _endpos__3_;
25638 MenhirLib.EngineTypes.next = {
25639 MenhirLib.EngineTypes.semv = _2;
25640 MenhirLib.EngineTypes.startp = _startpos__2_;
25641 MenhirLib.EngineTypes.endp = _endpos__2_;
25642 MenhirLib.EngineTypes.next = {
25643 MenhirLib.EngineTypes.state = _menhir_s;
25644 MenhirLib.EngineTypes.semv = _1;
25645 MenhirLib.EngineTypes.startp = _startpos__1_;
25646 MenhirLib.EngineTypes.endp = _endpos__1_;
25647 MenhirLib.EngineTypes.next = _menhir_stack;
25648 };
25649 };
25650 };
25651 };
25652 } = _menhir_stack in
25653 let _5 : 'tv_single_statement = Obj.magic _5 in
25654 let _4 : (
25655 # 76 "parser_cocci_menhir.mly"
25656 (Data.clt)
25657 # 25658 "parser_cocci_menhir.ml"
25658 ) = Obj.magic _4 in
25659 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
25660 let _2 : (
25661 # 75 "parser_cocci_menhir.mly"
25662 (Data.clt)
25663 # 25664 "parser_cocci_menhir.ml"
25664 ) = Obj.magic _2 in
25665 let _1 : 'tv_iter_ident = Obj.magic _1 in
25666 let _startpos = _startpos__1_ in
25667 let _endpos = _endpos__5_ in
25668 let _v : 'tv_statement =
25669 # 820 "parser_cocci_menhir.mly"
25670 ( P.iterator _1 _2 _3 _4 _5 )
25671 # 25672 "parser_cocci_menhir.ml"
25672 in
25673 _menhir_env.MenhirLib.EngineTypes.stack <- {
25674 MenhirLib.EngineTypes.state = _menhir_s;
25675 MenhirLib.EngineTypes.semv = Obj.repr _v;
25676 MenhirLib.EngineTypes.startp = _startpos;
25677 MenhirLib.EngineTypes.endp = _endpos;
25678 MenhirLib.EngineTypes.next = _menhir_stack;
25679 });
25680 (fun _menhir_env ->
25681 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25682 let {
25683 MenhirLib.EngineTypes.semv = _7;
25684 MenhirLib.EngineTypes.startp = _startpos__7_;
25685 MenhirLib.EngineTypes.endp = _endpos__7_;
25686 MenhirLib.EngineTypes.next = {
25687 MenhirLib.EngineTypes.semv = _6;
25688 MenhirLib.EngineTypes.startp = _startpos__6_;
25689 MenhirLib.EngineTypes.endp = _endpos__6_;
25690 MenhirLib.EngineTypes.next = {
25691 MenhirLib.EngineTypes.semv = _5;
25692 MenhirLib.EngineTypes.startp = _startpos__5_;
25693 MenhirLib.EngineTypes.endp = _endpos__5_;
25694 MenhirLib.EngineTypes.next = {
25695 MenhirLib.EngineTypes.semv = _4;
25696 MenhirLib.EngineTypes.startp = _startpos__4_;
25697 MenhirLib.EngineTypes.endp = _endpos__4_;
25698 MenhirLib.EngineTypes.next = {
25699 MenhirLib.EngineTypes.semv = _3;
25700 MenhirLib.EngineTypes.startp = _startpos__3_;
25701 MenhirLib.EngineTypes.endp = _endpos__3_;
25702 MenhirLib.EngineTypes.next = {
25703 MenhirLib.EngineTypes.semv = _2;
25704 MenhirLib.EngineTypes.startp = _startpos__2_;
25705 MenhirLib.EngineTypes.endp = _endpos__2_;
25706 MenhirLib.EngineTypes.next = {
25707 MenhirLib.EngineTypes.state = _menhir_s;
25708 MenhirLib.EngineTypes.semv = _1;
25709 MenhirLib.EngineTypes.startp = _startpos__1_;
25710 MenhirLib.EngineTypes.endp = _endpos__1_;
25711 MenhirLib.EngineTypes.next = _menhir_stack;
25712 };
25713 };
25714 };
25715 };
25716 };
25717 };
25718 } = _menhir_stack in
25719 let _7 : (
25720 # 100 "parser_cocci_menhir.mly"
25721 (Data.clt)
25722 # 25723 "parser_cocci_menhir.ml"
25723 ) = Obj.magic _7 in
25724 let _6 : 'tv_list_case_line_ = Obj.magic _6 in
25725 let _5 : (
25726 # 100 "parser_cocci_menhir.mly"
25727 (Data.clt)
25728 # 25729 "parser_cocci_menhir.ml"
25729 ) = Obj.magic _5 in
25730 let _4 : (
25731 # 76 "parser_cocci_menhir.mly"
25732 (Data.clt)
25733 # 25734 "parser_cocci_menhir.ml"
25734 ) = Obj.magic _4 in
25735 let _3 : 'tv_eexpr = Obj.magic _3 in
25736 let _2 : (
25737 # 75 "parser_cocci_menhir.mly"
25738 (Data.clt)
25739 # 25740 "parser_cocci_menhir.ml"
25740 ) = Obj.magic _2 in
25741 let _1 : (
25742 # 57 "parser_cocci_menhir.mly"
25743 (Data.clt)
25744 # 25745 "parser_cocci_menhir.ml"
25745 ) = Obj.magic _1 in
25746 let _startpos = _startpos__1_ in
25747 let _endpos = _endpos__7_ in
25748 let _v : 'tv_statement =
25749 # 822 "parser_cocci_menhir.mly"
25750 ( P.switch _1 _2 _3 _4 _5 _6 _7 )
25751 # 25752 "parser_cocci_menhir.ml"
25752 in
25753 _menhir_env.MenhirLib.EngineTypes.stack <- {
25754 MenhirLib.EngineTypes.state = _menhir_s;
25755 MenhirLib.EngineTypes.semv = Obj.repr _v;
25756 MenhirLib.EngineTypes.startp = _startpos;
25757 MenhirLib.EngineTypes.endp = _endpos;
25758 MenhirLib.EngineTypes.next = _menhir_stack;
25759 });
25760 (fun _menhir_env ->
25761 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25762 let {
25763 MenhirLib.EngineTypes.semv = _3;
25764 MenhirLib.EngineTypes.startp = _startpos__3_;
25765 MenhirLib.EngineTypes.endp = _endpos__3_;
25766 MenhirLib.EngineTypes.next = {
25767 MenhirLib.EngineTypes.semv = _2;
25768 MenhirLib.EngineTypes.startp = _startpos__2_;
25769 MenhirLib.EngineTypes.endp = _endpos__2_;
25770 MenhirLib.EngineTypes.next = {
25771 MenhirLib.EngineTypes.state = _menhir_s;
25772 MenhirLib.EngineTypes.semv = _1;
25773 MenhirLib.EngineTypes.startp = _startpos__1_;
25774 MenhirLib.EngineTypes.endp = _endpos__1_;
25775 MenhirLib.EngineTypes.next = _menhir_stack;
25776 };
25777 };
25778 } = _menhir_stack in
25779 let _3 : (
25780 # 106 "parser_cocci_menhir.mly"
25781 (Data.clt)
25782 # 25783 "parser_cocci_menhir.ml"
25783 ) = Obj.magic _3 in
25784 let _2 : 'tv_eexpr = Obj.magic _2 in
25785 let _1 : (
25786 # 57 "parser_cocci_menhir.mly"
25787 (Data.clt)
25788 # 25789 "parser_cocci_menhir.ml"
25789 ) = Obj.magic _1 in
25790 let _startpos = _startpos__1_ in
25791 let _endpos = _endpos__3_ in
25792 let _v : 'tv_statement =
25793 # 823 "parser_cocci_menhir.mly"
25794 ( P.ret_exp _1 _2 _3 )
25795 # 25796 "parser_cocci_menhir.ml"
25796 in
25797 _menhir_env.MenhirLib.EngineTypes.stack <- {
25798 MenhirLib.EngineTypes.state = _menhir_s;
25799 MenhirLib.EngineTypes.semv = Obj.repr _v;
25800 MenhirLib.EngineTypes.startp = _startpos;
25801 MenhirLib.EngineTypes.endp = _endpos;
25802 MenhirLib.EngineTypes.next = _menhir_stack;
25803 });
25804 (fun _menhir_env ->
25805 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25806 let {
25807 MenhirLib.EngineTypes.semv = _2;
25808 MenhirLib.EngineTypes.startp = _startpos__2_;
25809 MenhirLib.EngineTypes.endp = _endpos__2_;
25810 MenhirLib.EngineTypes.next = {
25811 MenhirLib.EngineTypes.state = _menhir_s;
25812 MenhirLib.EngineTypes.semv = _1;
25813 MenhirLib.EngineTypes.startp = _startpos__1_;
25814 MenhirLib.EngineTypes.endp = _endpos__1_;
25815 MenhirLib.EngineTypes.next = _menhir_stack;
25816 };
25817 } = _menhir_stack in
25818 let _2 : (
25819 # 106 "parser_cocci_menhir.mly"
25820 (Data.clt)
25821 # 25822 "parser_cocci_menhir.ml"
25822 ) = Obj.magic _2 in
25823 let _1 : (
25824 # 57 "parser_cocci_menhir.mly"
25825 (Data.clt)
25826 # 25827 "parser_cocci_menhir.ml"
25827 ) = Obj.magic _1 in
25828 let _startpos = _startpos__1_ in
25829 let _endpos = _endpos__2_ in
25830 let _v : 'tv_statement =
25831 # 824 "parser_cocci_menhir.mly"
25832 ( P.ret _1 _2 )
25833 # 25834 "parser_cocci_menhir.ml"
25834 in
25835 _menhir_env.MenhirLib.EngineTypes.stack <- {
25836 MenhirLib.EngineTypes.state = _menhir_s;
25837 MenhirLib.EngineTypes.semv = Obj.repr _v;
25838 MenhirLib.EngineTypes.startp = _startpos;
25839 MenhirLib.EngineTypes.endp = _endpos;
25840 MenhirLib.EngineTypes.next = _menhir_stack;
25841 });
25842 (fun _menhir_env ->
25843 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25844 let {
25845 MenhirLib.EngineTypes.semv = _2;
25846 MenhirLib.EngineTypes.startp = _startpos__2_;
25847 MenhirLib.EngineTypes.endp = _endpos__2_;
25848 MenhirLib.EngineTypes.next = {
25849 MenhirLib.EngineTypes.state = _menhir_s;
25850 MenhirLib.EngineTypes.semv = _1;
25851 MenhirLib.EngineTypes.startp = _startpos__1_;
25852 MenhirLib.EngineTypes.endp = _endpos__1_;
25853 MenhirLib.EngineTypes.next = _menhir_stack;
25854 };
25855 } = _menhir_stack in
25856 let _2 : (
25857 # 106 "parser_cocci_menhir.mly"
25858 (Data.clt)
25859 # 25860 "parser_cocci_menhir.ml"
25860 ) = Obj.magic _2 in
25861 let _1 : (
25862 # 58 "parser_cocci_menhir.mly"
25863 (Data.clt)
25864 # 25865 "parser_cocci_menhir.ml"
25865 ) = Obj.magic _1 in
25866 let _startpos = _startpos__1_ in
25867 let _endpos = _endpos__2_ in
25868 let _v : 'tv_statement =
25869 # 825 "parser_cocci_menhir.mly"
25870 ( P.break _1 _2 )
25871 # 25872 "parser_cocci_menhir.ml"
25872 in
25873 _menhir_env.MenhirLib.EngineTypes.stack <- {
25874 MenhirLib.EngineTypes.state = _menhir_s;
25875 MenhirLib.EngineTypes.semv = Obj.repr _v;
25876 MenhirLib.EngineTypes.startp = _startpos;
25877 MenhirLib.EngineTypes.endp = _endpos;
25878 MenhirLib.EngineTypes.next = _menhir_stack;
25879 });
25880 (fun _menhir_env ->
25881 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25882 let {
25883 MenhirLib.EngineTypes.semv = _2;
25884 MenhirLib.EngineTypes.startp = _startpos__2_;
25885 MenhirLib.EngineTypes.endp = _endpos__2_;
25886 MenhirLib.EngineTypes.next = {
25887 MenhirLib.EngineTypes.state = _menhir_s;
25888 MenhirLib.EngineTypes.semv = _1;
25889 MenhirLib.EngineTypes.startp = _startpos__1_;
25890 MenhirLib.EngineTypes.endp = _endpos__1_;
25891 MenhirLib.EngineTypes.next = _menhir_stack;
25892 };
25893 } = _menhir_stack in
25894 let _2 : (
25895 # 106 "parser_cocci_menhir.mly"
25896 (Data.clt)
25897 # 25898 "parser_cocci_menhir.ml"
25898 ) = Obj.magic _2 in
25899 let _1 : (
25900 # 58 "parser_cocci_menhir.mly"
25901 (Data.clt)
25902 # 25903 "parser_cocci_menhir.ml"
25903 ) = Obj.magic _1 in
25904 let _startpos = _startpos__1_ in
25905 let _endpos = _endpos__2_ in
25906 let _v : 'tv_statement =
25907 # 826 "parser_cocci_menhir.mly"
25908 ( P.cont _1 _2 )
25909 # 25910 "parser_cocci_menhir.ml"
25910 in
25911 _menhir_env.MenhirLib.EngineTypes.stack <- {
25912 MenhirLib.EngineTypes.state = _menhir_s;
25913 MenhirLib.EngineTypes.semv = Obj.repr _v;
25914 MenhirLib.EngineTypes.startp = _startpos;
25915 MenhirLib.EngineTypes.endp = _endpos;
25916 MenhirLib.EngineTypes.next = _menhir_stack;
25917 });
25918 (fun _menhir_env ->
25919 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25920 let {
25921 MenhirLib.EngineTypes.semv = _2;
25922 MenhirLib.EngineTypes.startp = _startpos__2_;
25923 MenhirLib.EngineTypes.endp = _endpos__2_;
25924 MenhirLib.EngineTypes.next = {
25925 MenhirLib.EngineTypes.state = _menhir_s;
25926 MenhirLib.EngineTypes.semv = _1;
25927 MenhirLib.EngineTypes.startp = _startpos__1_;
25928 MenhirLib.EngineTypes.endp = _endpos__1_;
25929 MenhirLib.EngineTypes.next = _menhir_stack;
25930 };
25931 } = _menhir_stack in
25932 let _2 : (
25933 # 75 "parser_cocci_menhir.mly"
25934 (Data.clt)
25935 # 25936 "parser_cocci_menhir.ml"
25936 ) = Obj.magic _2 in
25937 let _1 : 'tv_ident = Obj.magic _1 in
25938 let _startpos = _startpos__1_ in
25939 let _endpos = _endpos__2_ in
25940 let _v : 'tv_statement =
25941 # 827 "parser_cocci_menhir.mly"
25942 ( P.label _1 _2 )
25943 # 25944 "parser_cocci_menhir.ml"
25944 in
25945 _menhir_env.MenhirLib.EngineTypes.stack <- {
25946 MenhirLib.EngineTypes.state = _menhir_s;
25947 MenhirLib.EngineTypes.semv = Obj.repr _v;
25948 MenhirLib.EngineTypes.startp = _startpos;
25949 MenhirLib.EngineTypes.endp = _endpos;
25950 MenhirLib.EngineTypes.next = _menhir_stack;
25951 });
25952 (fun _menhir_env ->
25953 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25954 let {
25955 MenhirLib.EngineTypes.semv = _3;
25956 MenhirLib.EngineTypes.startp = _startpos__3_;
25957 MenhirLib.EngineTypes.endp = _endpos__3_;
25958 MenhirLib.EngineTypes.next = {
25959 MenhirLib.EngineTypes.semv = _2;
25960 MenhirLib.EngineTypes.startp = _startpos__2_;
25961 MenhirLib.EngineTypes.endp = _endpos__2_;
25962 MenhirLib.EngineTypes.next = {
25963 MenhirLib.EngineTypes.state = _menhir_s;
25964 MenhirLib.EngineTypes.semv = _1;
25965 MenhirLib.EngineTypes.startp = _startpos__1_;
25966 MenhirLib.EngineTypes.endp = _endpos__1_;
25967 MenhirLib.EngineTypes.next = _menhir_stack;
25968 };
25969 };
25970 } = _menhir_stack in
25971 let _3 : (
25972 # 106 "parser_cocci_menhir.mly"
25973 (Data.clt)
25974 # 25975 "parser_cocci_menhir.ml"
25975 ) = Obj.magic _3 in
25976 let _2 : 'tv_ident = Obj.magic _2 in
25977 let _1 : (
25978 # 58 "parser_cocci_menhir.mly"
25979 (Data.clt)
25980 # 25981 "parser_cocci_menhir.ml"
25981 ) = Obj.magic _1 in
25982 let _startpos = _startpos__1_ in
25983 let _endpos = _endpos__3_ in
25984 let _v : 'tv_statement =
25985 # 828 "parser_cocci_menhir.mly"
25986 ( P.goto _1 _2 _3 )
25987 # 25988 "parser_cocci_menhir.ml"
25988 in
25989 _menhir_env.MenhirLib.EngineTypes.stack <- {
25990 MenhirLib.EngineTypes.state = _menhir_s;
25991 MenhirLib.EngineTypes.semv = Obj.repr _v;
25992 MenhirLib.EngineTypes.startp = _startpos;
25993 MenhirLib.EngineTypes.endp = _endpos;
25994 MenhirLib.EngineTypes.next = _menhir_stack;
25995 });
25996 (fun _menhir_env ->
25997 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25998 let {
25999 MenhirLib.EngineTypes.semv = _3;
26000 MenhirLib.EngineTypes.startp = _startpos__3_;
26001 MenhirLib.EngineTypes.endp = _endpos__3_;
26002 MenhirLib.EngineTypes.next = {
26003 MenhirLib.EngineTypes.semv = _2;
26004 MenhirLib.EngineTypes.startp = _startpos__2_;
26005 MenhirLib.EngineTypes.endp = _endpos__2_;
26006 MenhirLib.EngineTypes.next = {
26007 MenhirLib.EngineTypes.state = _menhir_s;
26008 MenhirLib.EngineTypes.semv = _1;
26009 MenhirLib.EngineTypes.startp = _startpos__1_;
26010 MenhirLib.EngineTypes.endp = _endpos__1_;
26011 MenhirLib.EngineTypes.next = _menhir_stack;
26012 };
26013 };
26014 } = _menhir_stack in
26015 let _3 : (
26016 # 100 "parser_cocci_menhir.mly"
26017 (Data.clt)
26018 # 26019 "parser_cocci_menhir.ml"
26019 ) = Obj.magic _3 in
26020 let _2 : 'tv_fun_start = Obj.magic _2 in
26021 let _1 : (
26022 # 100 "parser_cocci_menhir.mly"
26023 (Data.clt)
26024 # 26025 "parser_cocci_menhir.ml"
26025 ) = Obj.magic _1 in
26026 let _startpos = _startpos__1_ in
26027 let _endpos = _endpos__3_ in
26028 let _v : 'tv_statement =
26029 # 830 "parser_cocci_menhir.mly"
26030 ( P.seq _1 _2 _3 )
26031 # 26032 "parser_cocci_menhir.ml"
26032 in
26033 _menhir_env.MenhirLib.EngineTypes.stack <- {
26034 MenhirLib.EngineTypes.state = _menhir_s;
26035 MenhirLib.EngineTypes.semv = Obj.repr _v;
26036 MenhirLib.EngineTypes.startp = _startpos;
26037 MenhirLib.EngineTypes.endp = _endpos;
26038 MenhirLib.EngineTypes.next = _menhir_stack;
26039 });
26040 (fun _menhir_env ->
26041 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26042 let {
26043 MenhirLib.EngineTypes.semv = w;
26044 MenhirLib.EngineTypes.startp = _startpos_w_;
26045 MenhirLib.EngineTypes.endp = _endpos_w_;
26046 MenhirLib.EngineTypes.next = {
26047 MenhirLib.EngineTypes.state = _menhir_s;
26048 MenhirLib.EngineTypes.semv = _1;
26049 MenhirLib.EngineTypes.startp = _startpos__1_;
26050 MenhirLib.EngineTypes.endp = _endpos__1_;
26051 MenhirLib.EngineTypes.next = _menhir_stack;
26052 };
26053 } = _menhir_stack in
26054 let w : 'tv_list_whenppdecs_ = Obj.magic w in
26055 let _1 : (
26056 # 72 "parser_cocci_menhir.mly"
26057 (Data.clt)
26058 # 26059 "parser_cocci_menhir.ml"
26059 ) = Obj.magic _1 in
26060 let _startpos = _startpos__1_ in
26061 let _endpos = _endpos_w_ in
26062 let _v : 'tv_stm_dots =
26063 # 834 "parser_cocci_menhir.mly"
26064 ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) )
26065 # 26066 "parser_cocci_menhir.ml"
26066 in
26067 _menhir_env.MenhirLib.EngineTypes.stack <- {
26068 MenhirLib.EngineTypes.state = _menhir_s;
26069 MenhirLib.EngineTypes.semv = Obj.repr _v;
26070 MenhirLib.EngineTypes.startp = _startpos;
26071 MenhirLib.EngineTypes.endp = _endpos;
26072 MenhirLib.EngineTypes.next = _menhir_stack;
26073 });
26074 (fun _menhir_env ->
26075 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26076 let {
26077 MenhirLib.EngineTypes.semv = c;
26078 MenhirLib.EngineTypes.startp = _startpos_c_;
26079 MenhirLib.EngineTypes.endp = _endpos_c_;
26080 MenhirLib.EngineTypes.next = {
26081 MenhirLib.EngineTypes.semv = b;
26082 MenhirLib.EngineTypes.startp = _startpos_b_;
26083 MenhirLib.EngineTypes.endp = _endpos_b_;
26084 MenhirLib.EngineTypes.next = {
26085 MenhirLib.EngineTypes.semv = w;
26086 MenhirLib.EngineTypes.startp = _startpos_w_;
26087 MenhirLib.EngineTypes.endp = _endpos_w_;
26088 MenhirLib.EngineTypes.next = {
26089 MenhirLib.EngineTypes.state = _menhir_s;
26090 MenhirLib.EngineTypes.semv = _1;
26091 MenhirLib.EngineTypes.startp = _startpos__1_;
26092 MenhirLib.EngineTypes.endp = _endpos__1_;
26093 MenhirLib.EngineTypes.next = _menhir_stack;
26094 };
26095 };
26096 };
26097 } = _menhir_stack in
26098 let c : (
26099 # 72 "parser_cocci_menhir.mly"
26100 (Data.clt)
26101 # 26102 "parser_cocci_menhir.ml"
26102 ) = Obj.magic c in
26103 let b : 'tv_nest_start = Obj.magic b in
26104 let w : 'tv_list_whenppdecs_ = Obj.magic w in
26105 let _1 : (
26106 # 72 "parser_cocci_menhir.mly"
26107 (Data.clt)
26108 # 26109 "parser_cocci_menhir.ml"
26109 ) = Obj.magic _1 in
26110 let _startpos = _startpos__1_ in
26111 let _endpos = _endpos_c_ in
26112 let _v : 'tv_stm_dots =
26113 # 836 "parser_cocci_menhir.mly"
26114 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b,
26115 P.clt2mcode "...>" c, List.concat w, false)) )
26116 # 26117 "parser_cocci_menhir.ml"
26117 in
26118 _menhir_env.MenhirLib.EngineTypes.stack <- {
26119 MenhirLib.EngineTypes.state = _menhir_s;
26120 MenhirLib.EngineTypes.semv = Obj.repr _v;
26121 MenhirLib.EngineTypes.startp = _startpos;
26122 MenhirLib.EngineTypes.endp = _endpos;
26123 MenhirLib.EngineTypes.next = _menhir_stack;
26124 });
26125 (fun _menhir_env ->
26126 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26127 let {
26128 MenhirLib.EngineTypes.semv = c;
26129 MenhirLib.EngineTypes.startp = _startpos_c_;
26130 MenhirLib.EngineTypes.endp = _endpos_c_;
26131 MenhirLib.EngineTypes.next = {
26132 MenhirLib.EngineTypes.semv = b;
26133 MenhirLib.EngineTypes.startp = _startpos_b_;
26134 MenhirLib.EngineTypes.endp = _endpos_b_;
26135 MenhirLib.EngineTypes.next = {
26136 MenhirLib.EngineTypes.semv = w;
26137 MenhirLib.EngineTypes.startp = _startpos_w_;
26138 MenhirLib.EngineTypes.endp = _endpos_w_;
26139 MenhirLib.EngineTypes.next = {
26140 MenhirLib.EngineTypes.state = _menhir_s;
26141 MenhirLib.EngineTypes.semv = _1;
26142 MenhirLib.EngineTypes.startp = _startpos__1_;
26143 MenhirLib.EngineTypes.endp = _endpos__1_;
26144 MenhirLib.EngineTypes.next = _menhir_stack;
26145 };
26146 };
26147 };
26148 } = _menhir_stack in
26149 let c : (
26150 # 72 "parser_cocci_menhir.mly"
26151 (Data.clt)
26152 # 26153 "parser_cocci_menhir.ml"
26153 ) = Obj.magic c in
26154 let b : 'tv_nest_start = Obj.magic b in
26155 let w : 'tv_list_whenppdecs_ = Obj.magic w in
26156 let _1 : (
26157 # 72 "parser_cocci_menhir.mly"
26158 (Data.clt)
26159 # 26160 "parser_cocci_menhir.ml"
26160 ) = Obj.magic _1 in
26161 let _startpos = _startpos__1_ in
26162 let _endpos = _endpos_c_ in
26163 let _v : 'tv_stm_dots =
26164 # 839 "parser_cocci_menhir.mly"
26165 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b,
26166 P.clt2mcode "...+>" c, List.concat w, true)) )
26167 # 26168 "parser_cocci_menhir.ml"
26168 in
26169 _menhir_env.MenhirLib.EngineTypes.stack <- {
26170 MenhirLib.EngineTypes.state = _menhir_s;
26171 MenhirLib.EngineTypes.semv = Obj.repr _v;
26172 MenhirLib.EngineTypes.startp = _startpos;
26173 MenhirLib.EngineTypes.endp = _endpos;
26174 MenhirLib.EngineTypes.next = _menhir_stack;
26175 });
26176 (fun _menhir_env ->
26177 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26178 let {
26179 MenhirLib.EngineTypes.state = _menhir_s;
26180 MenhirLib.EngineTypes.semv = s;
26181 MenhirLib.EngineTypes.startp = _startpos_s_;
26182 MenhirLib.EngineTypes.endp = _endpos_s_;
26183 MenhirLib.EngineTypes.next = _menhir_stack;
26184 } = _menhir_stack in
26185 let s : (
26186 # 53 "parser_cocci_menhir.mly"
26187 (Data.clt)
26188 # 26189 "parser_cocci_menhir.ml"
26189 ) = Obj.magic s in
26190 let _startpos = _startpos_s_ in
26191 let _endpos = _endpos_s_ in
26192 let _v : 'tv_storage =
26193 # 762 "parser_cocci_menhir.mly"
26194 ( P.clt2mcode Ast.Static s )
26195 # 26196 "parser_cocci_menhir.ml"
26196 in
26197 _menhir_env.MenhirLib.EngineTypes.stack <- {
26198 MenhirLib.EngineTypes.state = _menhir_s;
26199 MenhirLib.EngineTypes.semv = Obj.repr _v;
26200 MenhirLib.EngineTypes.startp = _startpos;
26201 MenhirLib.EngineTypes.endp = _endpos;
26202 MenhirLib.EngineTypes.next = _menhir_stack;
26203 });
26204 (fun _menhir_env ->
26205 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26206 let {
26207 MenhirLib.EngineTypes.state = _menhir_s;
26208 MenhirLib.EngineTypes.semv = s;
26209 MenhirLib.EngineTypes.startp = _startpos_s_;
26210 MenhirLib.EngineTypes.endp = _endpos_s_;
26211 MenhirLib.EngineTypes.next = _menhir_stack;
26212 } = _menhir_stack in
26213 let s : (
26214 # 53 "parser_cocci_menhir.mly"
26215 (Data.clt)
26216 # 26217 "parser_cocci_menhir.ml"
26217 ) = Obj.magic s in
26218 let _startpos = _startpos_s_ in
26219 let _endpos = _endpos_s_ in
26220 let _v : 'tv_storage =
26221 # 763 "parser_cocci_menhir.mly"
26222 ( P.clt2mcode Ast.Auto s )
26223 # 26224 "parser_cocci_menhir.ml"
26224 in
26225 _menhir_env.MenhirLib.EngineTypes.stack <- {
26226 MenhirLib.EngineTypes.state = _menhir_s;
26227 MenhirLib.EngineTypes.semv = Obj.repr _v;
26228 MenhirLib.EngineTypes.startp = _startpos;
26229 MenhirLib.EngineTypes.endp = _endpos;
26230 MenhirLib.EngineTypes.next = _menhir_stack;
26231 });
26232 (fun _menhir_env ->
26233 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26234 let {
26235 MenhirLib.EngineTypes.state = _menhir_s;
26236 MenhirLib.EngineTypes.semv = s;
26237 MenhirLib.EngineTypes.startp = _startpos_s_;
26238 MenhirLib.EngineTypes.endp = _endpos_s_;
26239 MenhirLib.EngineTypes.next = _menhir_stack;
26240 } = _menhir_stack in
26241 let s : (
26242 # 53 "parser_cocci_menhir.mly"
26243 (Data.clt)
26244 # 26245 "parser_cocci_menhir.ml"
26245 ) = Obj.magic s in
26246 let _startpos = _startpos_s_ in
26247 let _endpos = _endpos_s_ in
26248 let _v : 'tv_storage =
26249 # 764 "parser_cocci_menhir.mly"
26250 ( P.clt2mcode Ast.Register s )
26251 # 26252 "parser_cocci_menhir.ml"
26252 in
26253 _menhir_env.MenhirLib.EngineTypes.stack <- {
26254 MenhirLib.EngineTypes.state = _menhir_s;
26255 MenhirLib.EngineTypes.semv = Obj.repr _v;
26256 MenhirLib.EngineTypes.startp = _startpos;
26257 MenhirLib.EngineTypes.endp = _endpos;
26258 MenhirLib.EngineTypes.next = _menhir_stack;
26259 });
26260 (fun _menhir_env ->
26261 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26262 let {
26263 MenhirLib.EngineTypes.state = _menhir_s;
26264 MenhirLib.EngineTypes.semv = s;
26265 MenhirLib.EngineTypes.startp = _startpos_s_;
26266 MenhirLib.EngineTypes.endp = _endpos_s_;
26267 MenhirLib.EngineTypes.next = _menhir_stack;
26268 } = _menhir_stack in
26269 let s : (
26270 # 53 "parser_cocci_menhir.mly"
26271 (Data.clt)
26272 # 26273 "parser_cocci_menhir.ml"
26273 ) = Obj.magic s in
26274 let _startpos = _startpos_s_ in
26275 let _endpos = _endpos_s_ in
26276 let _v : 'tv_storage =
26277 # 765 "parser_cocci_menhir.mly"
26278 ( P.clt2mcode Ast.Extern s )
26279 # 26280 "parser_cocci_menhir.ml"
26280 in
26281 _menhir_env.MenhirLib.EngineTypes.stack <- {
26282 MenhirLib.EngineTypes.state = _menhir_s;
26283 MenhirLib.EngineTypes.semv = Obj.repr _v;
26284 MenhirLib.EngineTypes.startp = _startpos;
26285 MenhirLib.EngineTypes.endp = _endpos;
26286 MenhirLib.EngineTypes.next = _menhir_stack;
26287 });
26288 (fun _menhir_env ->
26289 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26290 let {
26291 MenhirLib.EngineTypes.state = _menhir_s;
26292 MenhirLib.EngineTypes.startp = _startpos__1_;
26293 MenhirLib.EngineTypes.endp = _endpos__1_;
26294 MenhirLib.EngineTypes.next = _menhir_stack;
26295 } = _menhir_stack in
26296 let _startpos = _startpos__1_ in
26297 let _endpos = _endpos__1_ in
26298 let _v : 'tv_struct_decl =
26299 # 488 "parser_cocci_menhir.mly"
26300 ( [] )
26301 # 26302 "parser_cocci_menhir.ml"
26302 in
26303 _menhir_env.MenhirLib.EngineTypes.stack <- {
26304 MenhirLib.EngineTypes.state = _menhir_s;
26305 MenhirLib.EngineTypes.semv = Obj.repr _v;
26306 MenhirLib.EngineTypes.startp = _startpos;
26307 MenhirLib.EngineTypes.endp = _endpos;
26308 MenhirLib.EngineTypes.next = _menhir_stack;
26309 });
26310 (fun _menhir_env ->
26311 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26312 let {
26313 MenhirLib.EngineTypes.semv = pv;
26314 MenhirLib.EngineTypes.startp = _startpos_pv_;
26315 MenhirLib.EngineTypes.endp = _endpos_pv_;
26316 MenhirLib.EngineTypes.next = {
26317 MenhirLib.EngineTypes.semv = d;
26318 MenhirLib.EngineTypes.startp = _startpos_d_;
26319 MenhirLib.EngineTypes.endp = _endpos_d_;
26320 MenhirLib.EngineTypes.next = {
26321 MenhirLib.EngineTypes.state = _menhir_s;
26322 MenhirLib.EngineTypes.semv = t;
26323 MenhirLib.EngineTypes.startp = _startpos_t_;
26324 MenhirLib.EngineTypes.endp = _endpos_t_;
26325 MenhirLib.EngineTypes.next = _menhir_stack;
26326 };
26327 };
26328 } = _menhir_stack in
26329 let pv : (
26330 # 106 "parser_cocci_menhir.mly"
26331 (Data.clt)
26332 # 26333 "parser_cocci_menhir.ml"
26333 ) = Obj.magic pv in
26334 let d : 'tv_d_ident = Obj.magic d in
26335 let t : 'tv_ctype = Obj.magic t in
26336 let _startpos = _startpos_t_ in
26337 let _endpos = _endpos_pv_ in
26338 let _v : 'tv_struct_decl =
26339 # 490 "parser_cocci_menhir.mly"
26340 ( let (id,fn) = d in
26341 [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
26342 # 26343 "parser_cocci_menhir.ml"
26343 in
26344 _menhir_env.MenhirLib.EngineTypes.stack <- {
26345 MenhirLib.EngineTypes.state = _menhir_s;
26346 MenhirLib.EngineTypes.semv = Obj.repr _v;
26347 MenhirLib.EngineTypes.startp = _startpos;
26348 MenhirLib.EngineTypes.endp = _endpos;
26349 MenhirLib.EngineTypes.next = _menhir_stack;
26350 });
26351 (fun _menhir_env ->
26352 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26353 let {
26354 MenhirLib.EngineTypes.semv = pv;
26355 MenhirLib.EngineTypes.startp = _startpos_pv_;
26356 MenhirLib.EngineTypes.endp = _endpos_pv_;
26357 MenhirLib.EngineTypes.next = {
26358 MenhirLib.EngineTypes.semv = rp2;
26359 MenhirLib.EngineTypes.startp = _startpos_rp2_;
26360 MenhirLib.EngineTypes.endp = _endpos_rp2_;
26361 MenhirLib.EngineTypes.next = {
26362 MenhirLib.EngineTypes.semv = p;
26363 MenhirLib.EngineTypes.startp = _startpos_p_;
26364 MenhirLib.EngineTypes.endp = _endpos_p_;
26365 MenhirLib.EngineTypes.next = {
26366 MenhirLib.EngineTypes.semv = lp2;
26367 MenhirLib.EngineTypes.startp = _startpos_lp2_;
26368 MenhirLib.EngineTypes.endp = _endpos_lp2_;
26369 MenhirLib.EngineTypes.next = {
26370 MenhirLib.EngineTypes.semv = rp1;
26371 MenhirLib.EngineTypes.startp = _startpos_rp1_;
26372 MenhirLib.EngineTypes.endp = _endpos_rp1_;
26373 MenhirLib.EngineTypes.next = {
26374 MenhirLib.EngineTypes.semv = d;
26375 MenhirLib.EngineTypes.startp = _startpos_d_;
26376 MenhirLib.EngineTypes.endp = _endpos_d_;
26377 MenhirLib.EngineTypes.next = {
26378 MenhirLib.EngineTypes.semv = st;
26379 MenhirLib.EngineTypes.startp = _startpos_st_;
26380 MenhirLib.EngineTypes.endp = _endpos_st_;
26381 MenhirLib.EngineTypes.next = {
26382 MenhirLib.EngineTypes.semv = lp1;
26383 MenhirLib.EngineTypes.startp = _startpos_lp1_;
26384 MenhirLib.EngineTypes.endp = _endpos_lp1_;
26385 MenhirLib.EngineTypes.next = {
26386 MenhirLib.EngineTypes.state = _menhir_s;
26387 MenhirLib.EngineTypes.semv = t;
26388 MenhirLib.EngineTypes.startp = _startpos_t_;
26389 MenhirLib.EngineTypes.endp = _endpos_t_;
26390 MenhirLib.EngineTypes.next = _menhir_stack;
26391 };
26392 };
26393 };
26394 };
26395 };
26396 };
26397 };
26398 };
26399 } = _menhir_stack in
26400 let pv : (
26401 # 106 "parser_cocci_menhir.mly"
26402 (Data.clt)
26403 # 26404 "parser_cocci_menhir.ml"
26404 ) = Obj.magic pv in
26405 let rp2 : (
26406 # 76 "parser_cocci_menhir.mly"
26407 (Data.clt)
26408 # 26409 "parser_cocci_menhir.ml"
26409 ) = Obj.magic rp2 in
26410 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
26411 let lp2 : (
26412 # 75 "parser_cocci_menhir.mly"
26413 (Data.clt)
26414 # 26415 "parser_cocci_menhir.ml"
26415 ) = Obj.magic lp2 in
26416 let rp1 : (
26417 # 76 "parser_cocci_menhir.mly"
26418 (Data.clt)
26419 # 26420 "parser_cocci_menhir.ml"
26420 ) = Obj.magic rp1 in
26421 let d : 'tv_d_ident = Obj.magic d in
26422 let st : (
26423 # 98 "parser_cocci_menhir.mly"
26424 (Data.clt)
26425 # 26426 "parser_cocci_menhir.ml"
26426 ) = Obj.magic st in
26427 let lp1 : (
26428 # 75 "parser_cocci_menhir.mly"
26429 (Data.clt)
26430 # 26431 "parser_cocci_menhir.ml"
26431 ) = Obj.magic lp1 in
26432 let t : 'tv_fn_ctype = Obj.magic t in
26433 let _startpos = _startpos_t_ in
26434 let _endpos = _endpos_pv_ in
26435 let _v : 'tv_struct_decl =
26436 # 494 "parser_cocci_menhir.mly"
26437 ( let (id,fn) = d in
26438 let t =
26439 Ast0.wrap
26440 (Ast0.FunctionPointer
26441 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
26442 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
26443 [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
26444 # 26445 "parser_cocci_menhir.ml"
26445 in
26446 _menhir_env.MenhirLib.EngineTypes.stack <- {
26447 MenhirLib.EngineTypes.state = _menhir_s;
26448 MenhirLib.EngineTypes.semv = Obj.repr _v;
26449 MenhirLib.EngineTypes.startp = _startpos;
26450 MenhirLib.EngineTypes.endp = _endpos;
26451 MenhirLib.EngineTypes.next = _menhir_stack;
26452 });
26453 (fun _menhir_env ->
26454 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26455 let {
26456 MenhirLib.EngineTypes.semv = pv;
26457 MenhirLib.EngineTypes.startp = _startpos_pv_;
26458 MenhirLib.EngineTypes.endp = _endpos_pv_;
26459 MenhirLib.EngineTypes.next = {
26460 MenhirLib.EngineTypes.semv = d;
26461 MenhirLib.EngineTypes.startp = _startpos_d_;
26462 MenhirLib.EngineTypes.endp = _endpos_d_;
26463 MenhirLib.EngineTypes.next = {
26464 MenhirLib.EngineTypes.state = _menhir_s;
26465 MenhirLib.EngineTypes.semv = i;
26466 MenhirLib.EngineTypes.startp = _startpos_i_;
26467 MenhirLib.EngineTypes.endp = _endpos_i_;
26468 MenhirLib.EngineTypes.next = _menhir_stack;
26469 };
26470 };
26471 } = _menhir_stack in
26472 let pv : (
26473 # 106 "parser_cocci_menhir.mly"
26474 (Data.clt)
26475 # 26476 "parser_cocci_menhir.ml"
26476 ) = Obj.magic pv in
26477 let d : 'tv_d_ident = Obj.magic d in
26478 let i : 'tv_pure_ident = Obj.magic i in
26479 let _startpos = _startpos_i_ in
26480 let _endpos = _endpos_pv_ in
26481 let _v : 'tv_struct_decl = let cv =
26482
26483 # 39 "standard.mly"
26484 ( None )
26485 # 26486 "parser_cocci_menhir.ml"
26486
26487 in
26488
26489 # 502 "parser_cocci_menhir.mly"
26490 ( let (id,fn) = d in
26491 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
26492 [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
26493 # 26494 "parser_cocci_menhir.ml"
26494 in
26495 _menhir_env.MenhirLib.EngineTypes.stack <- {
26496 MenhirLib.EngineTypes.state = _menhir_s;
26497 MenhirLib.EngineTypes.semv = Obj.repr _v;
26498 MenhirLib.EngineTypes.startp = _startpos;
26499 MenhirLib.EngineTypes.endp = _endpos;
26500 MenhirLib.EngineTypes.next = _menhir_stack;
26501 });
26502 (fun _menhir_env ->
26503 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26504 let {
26505 MenhirLib.EngineTypes.semv = pv;
26506 MenhirLib.EngineTypes.startp = _startpos_pv_;
26507 MenhirLib.EngineTypes.endp = _endpos_pv_;
26508 MenhirLib.EngineTypes.next = {
26509 MenhirLib.EngineTypes.semv = d;
26510 MenhirLib.EngineTypes.startp = _startpos_d_;
26511 MenhirLib.EngineTypes.endp = _endpos_d_;
26512 MenhirLib.EngineTypes.next = {
26513 MenhirLib.EngineTypes.semv = i;
26514 MenhirLib.EngineTypes.startp = _startpos_i_;
26515 MenhirLib.EngineTypes.endp = _endpos_i_;
26516 MenhirLib.EngineTypes.next = {
26517 MenhirLib.EngineTypes.state = _menhir_s;
26518 MenhirLib.EngineTypes.semv = x0;
26519 MenhirLib.EngineTypes.startp = _startpos_x0_;
26520 MenhirLib.EngineTypes.endp = _endpos_x0_;
26521 MenhirLib.EngineTypes.next = _menhir_stack;
26522 };
26523 };
26524 };
26525 } = _menhir_stack in
26526 let pv : (
26527 # 106 "parser_cocci_menhir.mly"
26528 (Data.clt)
26529 # 26530 "parser_cocci_menhir.ml"
26530 ) = Obj.magic pv in
26531 let d : 'tv_d_ident = Obj.magic d in
26532 let i : 'tv_pure_ident = Obj.magic i in
26533 let x0 : 'tv_const_vol = Obj.magic x0 in
26534 let _startpos = _startpos_x0_ in
26535 let _endpos = _endpos_pv_ in
26536 let _v : 'tv_struct_decl = let cv =
26537 let x = x0 in
26538
26539 # 41 "standard.mly"
26540 ( Some x )
26541 # 26542 "parser_cocci_menhir.ml"
26542
26543 in
26544
26545 # 502 "parser_cocci_menhir.mly"
26546 ( let (id,fn) = d in
26547 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
26548 [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
26549 # 26550 "parser_cocci_menhir.ml"
26550 in
26551 _menhir_env.MenhirLib.EngineTypes.stack <- {
26552 MenhirLib.EngineTypes.state = _menhir_s;
26553 MenhirLib.EngineTypes.semv = Obj.repr _v;
26554 MenhirLib.EngineTypes.startp = _startpos;
26555 MenhirLib.EngineTypes.endp = _endpos;
26556 MenhirLib.EngineTypes.next = _menhir_stack;
26557 });
26558 (fun _menhir_env ->
26559 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26560 let {
26561 MenhirLib.EngineTypes.state = _menhir_s;
26562 MenhirLib.EngineTypes.semv = _1;
26563 MenhirLib.EngineTypes.startp = _startpos__1_;
26564 MenhirLib.EngineTypes.endp = _endpos__1_;
26565 MenhirLib.EngineTypes.next = _menhir_stack;
26566 } = _menhir_stack in
26567 let _1 : 'tv_struct_decl_list_start = Obj.magic _1 in
26568 let _startpos = _startpos__1_ in
26569 let _endpos = _endpos__1_ in
26570 let _v : 'tv_struct_decl_list =
26571 # 507 "parser_cocci_menhir.mly"
26572 ( Ast0.wrap(Ast0.DOTS(_1)) )
26573 # 26574 "parser_cocci_menhir.ml"
26574 in
26575 _menhir_env.MenhirLib.EngineTypes.stack <- {
26576 MenhirLib.EngineTypes.state = _menhir_s;
26577 MenhirLib.EngineTypes.semv = Obj.repr _v;
26578 MenhirLib.EngineTypes.startp = _startpos;
26579 MenhirLib.EngineTypes.endp = _endpos;
26580 MenhirLib.EngineTypes.next = _menhir_stack;
26581 });
26582 (fun _menhir_env ->
26583 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26584 let {
26585 MenhirLib.EngineTypes.state = _menhir_s;
26586 MenhirLib.EngineTypes.semv = _1;
26587 MenhirLib.EngineTypes.startp = _startpos__1_;
26588 MenhirLib.EngineTypes.endp = _endpos__1_;
26589 MenhirLib.EngineTypes.next = _menhir_stack;
26590 } = _menhir_stack in
26591 let _1 : 'tv_struct_decl = Obj.magic _1 in
26592 let _startpos = _startpos__1_ in
26593 let _endpos = _endpos__1_ in
26594 let _v : 'tv_struct_decl_list_start =
26595 # 510 "parser_cocci_menhir.mly"
26596 ( _1 )
26597 # 26598 "parser_cocci_menhir.ml"
26598 in
26599 _menhir_env.MenhirLib.EngineTypes.stack <- {
26600 MenhirLib.EngineTypes.state = _menhir_s;
26601 MenhirLib.EngineTypes.semv = Obj.repr _v;
26602 MenhirLib.EngineTypes.startp = _startpos;
26603 MenhirLib.EngineTypes.endp = _endpos;
26604 MenhirLib.EngineTypes.next = _menhir_stack;
26605 });
26606 (fun _menhir_env ->
26607 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26608 let {
26609 MenhirLib.EngineTypes.semv = _2;
26610 MenhirLib.EngineTypes.startp = _startpos__2_;
26611 MenhirLib.EngineTypes.endp = _endpos__2_;
26612 MenhirLib.EngineTypes.next = {
26613 MenhirLib.EngineTypes.state = _menhir_s;
26614 MenhirLib.EngineTypes.semv = _1;
26615 MenhirLib.EngineTypes.startp = _startpos__1_;
26616 MenhirLib.EngineTypes.endp = _endpos__1_;
26617 MenhirLib.EngineTypes.next = _menhir_stack;
26618 };
26619 } = _menhir_stack in
26620 let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
26621 let _1 : 'tv_struct_decl = Obj.magic _1 in
26622 let _startpos = _startpos__1_ in
26623 let _endpos = _endpos__2_ in
26624 let _v : 'tv_struct_decl_list_start =
26625 # 511 "parser_cocci_menhir.mly"
26626 ( _1@_2 )
26627 # 26628 "parser_cocci_menhir.ml"
26628 in
26629 _menhir_env.MenhirLib.EngineTypes.stack <- {
26630 MenhirLib.EngineTypes.state = _menhir_s;
26631 MenhirLib.EngineTypes.semv = Obj.repr _v;
26632 MenhirLib.EngineTypes.startp = _startpos;
26633 MenhirLib.EngineTypes.endp = _endpos;
26634 MenhirLib.EngineTypes.next = _menhir_stack;
26635 });
26636 (fun _menhir_env ->
26637 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26638 let {
26639 MenhirLib.EngineTypes.semv = r;
26640 MenhirLib.EngineTypes.startp = _startpos_r_;
26641 MenhirLib.EngineTypes.endp = _endpos_r_;
26642 MenhirLib.EngineTypes.next = {
26643 MenhirLib.EngineTypes.state = _menhir_s;
26644 MenhirLib.EngineTypes.semv = d;
26645 MenhirLib.EngineTypes.startp = _startpos_d_;
26646 MenhirLib.EngineTypes.endp = _endpos_d_;
26647 MenhirLib.EngineTypes.next = _menhir_stack;
26648 };
26649 } = _menhir_stack in
26650 let r : 'tv_continue_struct_decl_list = Obj.magic r in
26651 let d : 'tv_edots_when_TEllipsis_struct_decl_ = Obj.magic d in
26652 let _startpos = _startpos_d_ in
26653 let _endpos = _endpos_r_ in
26654 let _v : 'tv_struct_decl_list_start =
26655 # 513 "parser_cocci_menhir.mly"
26656 ( (P.mkddots "..." d)::r )
26657 # 26658 "parser_cocci_menhir.ml"
26658 in
26659 _menhir_env.MenhirLib.EngineTypes.stack <- {
26660 MenhirLib.EngineTypes.state = _menhir_s;
26661 MenhirLib.EngineTypes.semv = Obj.repr _v;
26662 MenhirLib.EngineTypes.startp = _startpos;
26663 MenhirLib.EngineTypes.endp = _endpos;
26664 MenhirLib.EngineTypes.next = _menhir_stack;
26665 });
26666 (fun _menhir_env ->
26667 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26668 let {
26669 MenhirLib.EngineTypes.state = _menhir_s;
26670 MenhirLib.EngineTypes.semv = s;
26671 MenhirLib.EngineTypes.startp = _startpos_s_;
26672 MenhirLib.EngineTypes.endp = _endpos_s_;
26673 MenhirLib.EngineTypes.next = _menhir_stack;
26674 } = _menhir_stack in
26675 let s : (
26676 # 50 "parser_cocci_menhir.mly"
26677 (Data.clt)
26678 # 26679 "parser_cocci_menhir.ml"
26679 ) = Obj.magic s in
26680 let _startpos = _startpos_s_ in
26681 let _endpos = _endpos_s_ in
26682 let _v : 'tv_struct_or_union =
26683 # 484 "parser_cocci_menhir.mly"
26684 ( P.clt2mcode Ast.Struct s )
26685 # 26686 "parser_cocci_menhir.ml"
26686 in
26687 _menhir_env.MenhirLib.EngineTypes.stack <- {
26688 MenhirLib.EngineTypes.state = _menhir_s;
26689 MenhirLib.EngineTypes.semv = Obj.repr _v;
26690 MenhirLib.EngineTypes.startp = _startpos;
26691 MenhirLib.EngineTypes.endp = _endpos;
26692 MenhirLib.EngineTypes.next = _menhir_stack;
26693 });
26694 (fun _menhir_env ->
26695 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26696 let {
26697 MenhirLib.EngineTypes.state = _menhir_s;
26698 MenhirLib.EngineTypes.semv = u;
26699 MenhirLib.EngineTypes.startp = _startpos_u_;
26700 MenhirLib.EngineTypes.endp = _endpos_u_;
26701 MenhirLib.EngineTypes.next = _menhir_stack;
26702 } = _menhir_stack in
26703 let u : (
26704 # 50 "parser_cocci_menhir.mly"
26705 (Data.clt)
26706 # 26707 "parser_cocci_menhir.ml"
26707 ) = Obj.magic u in
26708 let _startpos = _startpos_u_ in
26709 let _endpos = _endpos_u_ in
26710 let _v : 'tv_struct_or_union =
26711 # 485 "parser_cocci_menhir.mly"
26712 ( P.clt2mcode Ast.Union u )
26713 # 26714 "parser_cocci_menhir.ml"
26714 in
26715 _menhir_env.MenhirLib.EngineTypes.stack <- {
26716 MenhirLib.EngineTypes.state = _menhir_s;
26717 MenhirLib.EngineTypes.semv = Obj.repr _v;
26718 MenhirLib.EngineTypes.startp = _startpos;
26719 MenhirLib.EngineTypes.endp = _endpos;
26720 MenhirLib.EngineTypes.next = _menhir_stack;
26721 });
26722 (fun _menhir_env ->
26723 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26724 let {
26725 MenhirLib.EngineTypes.state = _menhir_s;
26726 MenhirLib.EngineTypes.semv = _1;
26727 MenhirLib.EngineTypes.startp = _startpos__1_;
26728 MenhirLib.EngineTypes.endp = _endpos__1_;
26729 MenhirLib.EngineTypes.next = _menhir_stack;
26730 } = _menhir_stack in
26731 let _1 : 'tv_eexpr = Obj.magic _1 in
26732 let _startpos = _startpos__1_ in
26733 let _endpos = _endpos__1_ in
26734 let _v : 'tv_top_eexpr =
26735 # 1137 "parser_cocci_menhir.mly"
26736 ( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) )
26737 # 26738 "parser_cocci_menhir.ml"
26738 in
26739 _menhir_env.MenhirLib.EngineTypes.stack <- {
26740 MenhirLib.EngineTypes.state = _menhir_s;
26741 MenhirLib.EngineTypes.semv = Obj.repr _v;
26742 MenhirLib.EngineTypes.startp = _startpos;
26743 MenhirLib.EngineTypes.endp = _endpos;
26744 MenhirLib.EngineTypes.next = _menhir_stack;
26745 });
26746 (fun _menhir_env ->
26747 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26748 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
26749 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
26750 let _endpos = _startpos in
26751 let _v : 'tv_toplevel_after_dots =
26752 # 1534 "parser_cocci_menhir.mly"
26753 ([])
26754 # 26755 "parser_cocci_menhir.ml"
26755 in
26756 _menhir_env.MenhirLib.EngineTypes.stack <- {
26757 MenhirLib.EngineTypes.state = _menhir_s;
26758 MenhirLib.EngineTypes.semv = Obj.repr _v;
26759 MenhirLib.EngineTypes.startp = _startpos;
26760 MenhirLib.EngineTypes.endp = _endpos;
26761 MenhirLib.EngineTypes.next = _menhir_stack;
26762 });
26763 (fun _menhir_env ->
26764 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26765 let {
26766 MenhirLib.EngineTypes.semv = _2;
26767 MenhirLib.EngineTypes.startp = _startpos__2_;
26768 MenhirLib.EngineTypes.endp = _endpos__2_;
26769 MenhirLib.EngineTypes.next = {
26770 MenhirLib.EngineTypes.state = _menhir_s;
26771 MenhirLib.EngineTypes.startp = _startpos__1_;
26772 MenhirLib.EngineTypes.endp = _endpos__1_;
26773 MenhirLib.EngineTypes.next = _menhir_stack;
26774 };
26775 } = _menhir_stack in
26776 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
26777 let _startpos = _startpos__1_ in
26778 let _endpos = _endpos__2_ in
26779 let _v : 'tv_toplevel_after_dots =
26780 # 1535 "parser_cocci_menhir.mly"
26781 (_2)
26782 # 26783 "parser_cocci_menhir.ml"
26783 in
26784 _menhir_env.MenhirLib.EngineTypes.stack <- {
26785 MenhirLib.EngineTypes.state = _menhir_s;
26786 MenhirLib.EngineTypes.semv = Obj.repr _v;
26787 MenhirLib.EngineTypes.startp = _startpos;
26788 MenhirLib.EngineTypes.endp = _endpos;
26789 MenhirLib.EngineTypes.next = _menhir_stack;
26790 });
26791 (fun _menhir_env ->
26792 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26793 let {
26794 MenhirLib.EngineTypes.semv = _2;
26795 MenhirLib.EngineTypes.startp = _startpos__2_;
26796 MenhirLib.EngineTypes.endp = _endpos__2_;
26797 MenhirLib.EngineTypes.next = {
26798 MenhirLib.EngineTypes.state = _menhir_s;
26799 MenhirLib.EngineTypes.semv = _1;
26800 MenhirLib.EngineTypes.startp = _startpos__1_;
26801 MenhirLib.EngineTypes.endp = _endpos__1_;
26802 MenhirLib.EngineTypes.next = _menhir_stack;
26803 };
26804 } = _menhir_stack in
26805 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
26806 let _1 : 'tv_expr = Obj.magic _1 in
26807 let _startpos = _startpos__1_ in
26808 let _endpos = _endpos__2_ in
26809 let _v : 'tv_toplevel_after_dots =
26810 # 1536 "parser_cocci_menhir.mly"
26811 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
26812 # 26813 "parser_cocci_menhir.ml"
26813 in
26814 _menhir_env.MenhirLib.EngineTypes.stack <- {
26815 MenhirLib.EngineTypes.state = _menhir_s;
26816 MenhirLib.EngineTypes.semv = Obj.repr _v;
26817 MenhirLib.EngineTypes.startp = _startpos;
26818 MenhirLib.EngineTypes.endp = _endpos;
26819 MenhirLib.EngineTypes.next = _menhir_stack;
26820 });
26821 (fun _menhir_env ->
26822 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26823 let {
26824 MenhirLib.EngineTypes.semv = _2;
26825 MenhirLib.EngineTypes.startp = _startpos__2_;
26826 MenhirLib.EngineTypes.endp = _endpos__2_;
26827 MenhirLib.EngineTypes.next = {
26828 MenhirLib.EngineTypes.state = _menhir_s;
26829 MenhirLib.EngineTypes.semv = _1;
26830 MenhirLib.EngineTypes.startp = _startpos__1_;
26831 MenhirLib.EngineTypes.endp = _endpos__1_;
26832 MenhirLib.EngineTypes.next = _menhir_stack;
26833 };
26834 } = _menhir_stack in
26835 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
26836 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
26837 let _startpos = _startpos__1_ in
26838 let _endpos = _endpos__2_ in
26839 let _v : 'tv_toplevel_after_dots =
26840 # 1537 "parser_cocci_menhir.mly"
26841 (_1@_2)
26842 # 26843 "parser_cocci_menhir.ml"
26843 in
26844 _menhir_env.MenhirLib.EngineTypes.stack <- {
26845 MenhirLib.EngineTypes.state = _menhir_s;
26846 MenhirLib.EngineTypes.semv = Obj.repr _v;
26847 MenhirLib.EngineTypes.startp = _startpos;
26848 MenhirLib.EngineTypes.endp = _endpos;
26849 MenhirLib.EngineTypes.next = _menhir_stack;
26850 });
26851 (fun _menhir_env ->
26852 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26853 let {
26854 MenhirLib.EngineTypes.semv = _2;
26855 MenhirLib.EngineTypes.startp = _startpos__2_;
26856 MenhirLib.EngineTypes.endp = _endpos__2_;
26857 MenhirLib.EngineTypes.next = {
26858 MenhirLib.EngineTypes.state = _menhir_s;
26859 MenhirLib.EngineTypes.startp = _startpos__1_;
26860 MenhirLib.EngineTypes.endp = _endpos__1_;
26861 MenhirLib.EngineTypes.next = _menhir_stack;
26862 };
26863 } = _menhir_stack in
26864 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
26865 let _startpos = _startpos__1_ in
26866 let _endpos = _endpos__2_ in
26867 let _v : 'tv_toplevel_after_dots_init =
26868 # 1525 "parser_cocci_menhir.mly"
26869 (_2)
26870 # 26871 "parser_cocci_menhir.ml"
26871 in
26872 _menhir_env.MenhirLib.EngineTypes.stack <- {
26873 MenhirLib.EngineTypes.state = _menhir_s;
26874 MenhirLib.EngineTypes.semv = Obj.repr _v;
26875 MenhirLib.EngineTypes.startp = _startpos;
26876 MenhirLib.EngineTypes.endp = _endpos;
26877 MenhirLib.EngineTypes.next = _menhir_stack;
26878 });
26879 (fun _menhir_env ->
26880 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26881 let {
26882 MenhirLib.EngineTypes.semv = _2;
26883 MenhirLib.EngineTypes.startp = _startpos__2_;
26884 MenhirLib.EngineTypes.endp = _endpos__2_;
26885 MenhirLib.EngineTypes.next = {
26886 MenhirLib.EngineTypes.state = _menhir_s;
26887 MenhirLib.EngineTypes.semv = _1;
26888 MenhirLib.EngineTypes.startp = _startpos__1_;
26889 MenhirLib.EngineTypes.endp = _endpos__1_;
26890 MenhirLib.EngineTypes.next = _menhir_stack;
26891 };
26892 } = _menhir_stack in
26893 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
26894 let _1 : 'tv_expr = Obj.magic _1 in
26895 let _startpos = _startpos__1_ in
26896 let _endpos = _endpos__2_ in
26897 let _v : 'tv_toplevel_after_dots_init =
26898 # 1526 "parser_cocci_menhir.mly"
26899 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
26900 # 26901 "parser_cocci_menhir.ml"
26901 in
26902 _menhir_env.MenhirLib.EngineTypes.stack <- {
26903 MenhirLib.EngineTypes.state = _menhir_s;
26904 MenhirLib.EngineTypes.semv = Obj.repr _v;
26905 MenhirLib.EngineTypes.startp = _startpos;
26906 MenhirLib.EngineTypes.endp = _endpos;
26907 MenhirLib.EngineTypes.next = _menhir_stack;
26908 });
26909 (fun _menhir_env ->
26910 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26911 let {
26912 MenhirLib.EngineTypes.semv = _2;
26913 MenhirLib.EngineTypes.startp = _startpos__2_;
26914 MenhirLib.EngineTypes.endp = _endpos__2_;
26915 MenhirLib.EngineTypes.next = {
26916 MenhirLib.EngineTypes.state = _menhir_s;
26917 MenhirLib.EngineTypes.semv = _1;
26918 MenhirLib.EngineTypes.startp = _startpos__1_;
26919 MenhirLib.EngineTypes.endp = _endpos__1_;
26920 MenhirLib.EngineTypes.next = _menhir_stack;
26921 };
26922 } = _menhir_stack in
26923 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
26924 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
26925 let _startpos = _startpos__1_ in
26926 let _endpos = _endpos__2_ in
26927 let _v : 'tv_toplevel_after_dots_init =
26928 # 1527 "parser_cocci_menhir.mly"
26929 (_1@_2)
26930 # 26931 "parser_cocci_menhir.ml"
26931 in
26932 _menhir_env.MenhirLib.EngineTypes.stack <- {
26933 MenhirLib.EngineTypes.state = _menhir_s;
26934 MenhirLib.EngineTypes.semv = Obj.repr _v;
26935 MenhirLib.EngineTypes.startp = _startpos;
26936 MenhirLib.EngineTypes.endp = _endpos;
26937 MenhirLib.EngineTypes.next = _menhir_stack;
26938 });
26939 (fun _menhir_env ->
26940 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26941 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
26942 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
26943 let _endpos = _startpos in
26944 let _v : 'tv_toplevel_after_exp =
26945 # 1530 "parser_cocci_menhir.mly"
26946 ([])
26947 # 26948 "parser_cocci_menhir.ml"
26948 in
26949 _menhir_env.MenhirLib.EngineTypes.stack <- {
26950 MenhirLib.EngineTypes.state = _menhir_s;
26951 MenhirLib.EngineTypes.semv = Obj.repr _v;
26952 MenhirLib.EngineTypes.startp = _startpos;
26953 MenhirLib.EngineTypes.endp = _endpos;
26954 MenhirLib.EngineTypes.next = _menhir_stack;
26955 });
26956 (fun _menhir_env ->
26957 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26958 let {
26959 MenhirLib.EngineTypes.semv = _2;
26960 MenhirLib.EngineTypes.startp = _startpos__2_;
26961 MenhirLib.EngineTypes.endp = _endpos__2_;
26962 MenhirLib.EngineTypes.next = {
26963 MenhirLib.EngineTypes.state = _menhir_s;
26964 MenhirLib.EngineTypes.semv = _1;
26965 MenhirLib.EngineTypes.startp = _startpos__1_;
26966 MenhirLib.EngineTypes.endp = _endpos__1_;
26967 MenhirLib.EngineTypes.next = _menhir_stack;
26968 };
26969 } = _menhir_stack in
26970 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
26971 let _1 : 'tv_stm_dots = Obj.magic _1 in
26972 let _startpos = _startpos__1_ in
26973 let _endpos = _endpos__2_ in
26974 let _v : 'tv_toplevel_after_exp =
26975 # 1531 "parser_cocci_menhir.mly"
26976 (_1::_2)
26977 # 26978 "parser_cocci_menhir.ml"
26978 in
26979 _menhir_env.MenhirLib.EngineTypes.stack <- {
26980 MenhirLib.EngineTypes.state = _menhir_s;
26981 MenhirLib.EngineTypes.semv = Obj.repr _v;
26982 MenhirLib.EngineTypes.startp = _startpos;
26983 MenhirLib.EngineTypes.endp = _endpos;
26984 MenhirLib.EngineTypes.next = _menhir_stack;
26985 });
26986 (fun _menhir_env ->
26987 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26988 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
26989 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
26990 let _endpos = _startpos in
26991 let _v : 'tv_toplevel_after_stm =
26992 # 1540 "parser_cocci_menhir.mly"
26993 ([])
26994 # 26995 "parser_cocci_menhir.ml"
26995 in
26996 _menhir_env.MenhirLib.EngineTypes.stack <- {
26997 MenhirLib.EngineTypes.state = _menhir_s;
26998 MenhirLib.EngineTypes.semv = Obj.repr _v;
26999 MenhirLib.EngineTypes.startp = _startpos;
27000 MenhirLib.EngineTypes.endp = _endpos;
27001 MenhirLib.EngineTypes.next = _menhir_stack;
27002 });
27003 (fun _menhir_env ->
27004 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27005 let {
27006 MenhirLib.EngineTypes.semv = _2;
27007 MenhirLib.EngineTypes.startp = _startpos__2_;
27008 MenhirLib.EngineTypes.endp = _endpos__2_;
27009 MenhirLib.EngineTypes.next = {
27010 MenhirLib.EngineTypes.state = _menhir_s;
27011 MenhirLib.EngineTypes.semv = _1;
27012 MenhirLib.EngineTypes.startp = _startpos__1_;
27013 MenhirLib.EngineTypes.endp = _endpos__1_;
27014 MenhirLib.EngineTypes.next = _menhir_stack;
27015 };
27016 } = _menhir_stack in
27017 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
27018 let _1 : 'tv_stm_dots = Obj.magic _1 in
27019 let _startpos = _startpos__1_ in
27020 let _endpos = _endpos__2_ in
27021 let _v : 'tv_toplevel_after_stm =
27022 # 1541 "parser_cocci_menhir.mly"
27023 (_1::_2)
27024 # 27025 "parser_cocci_menhir.ml"
27025 in
27026 _menhir_env.MenhirLib.EngineTypes.stack <- {
27027 MenhirLib.EngineTypes.state = _menhir_s;
27028 MenhirLib.EngineTypes.semv = Obj.repr _v;
27029 MenhirLib.EngineTypes.startp = _startpos;
27030 MenhirLib.EngineTypes.endp = _endpos;
27031 MenhirLib.EngineTypes.next = _menhir_stack;
27032 });
27033 (fun _menhir_env ->
27034 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27035 let {
27036 MenhirLib.EngineTypes.semv = _2;
27037 MenhirLib.EngineTypes.startp = _startpos__2_;
27038 MenhirLib.EngineTypes.endp = _endpos__2_;
27039 MenhirLib.EngineTypes.next = {
27040 MenhirLib.EngineTypes.state = _menhir_s;
27041 MenhirLib.EngineTypes.semv = _1;
27042 MenhirLib.EngineTypes.startp = _startpos__1_;
27043 MenhirLib.EngineTypes.endp = _endpos__1_;
27044 MenhirLib.EngineTypes.next = _menhir_stack;
27045 };
27046 } = _menhir_stack in
27047 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
27048 let _1 : 'tv_decl_statement = Obj.magic _1 in
27049 let _startpos = _startpos__1_ in
27050 let _endpos = _endpos__2_ in
27051 let _v : 'tv_toplevel_after_stm =
27052 # 1542 "parser_cocci_menhir.mly"
27053 (_1@_2)
27054 # 27055 "parser_cocci_menhir.ml"
27055 in
27056 _menhir_env.MenhirLib.EngineTypes.stack <- {
27057 MenhirLib.EngineTypes.state = _menhir_s;
27058 MenhirLib.EngineTypes.semv = Obj.repr _v;
27059 MenhirLib.EngineTypes.startp = _startpos;
27060 MenhirLib.EngineTypes.endp = _endpos;
27061 MenhirLib.EngineTypes.next = _menhir_stack;
27062 });
27063 (fun _menhir_env ->
27064 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27065 let {
27066 MenhirLib.EngineTypes.semv = _2;
27067 MenhirLib.EngineTypes.startp = _startpos__2_;
27068 MenhirLib.EngineTypes.endp = _endpos__2_;
27069 MenhirLib.EngineTypes.next = {
27070 MenhirLib.EngineTypes.state = _menhir_s;
27071 MenhirLib.EngineTypes.semv = _1;
27072 MenhirLib.EngineTypes.startp = _startpos__1_;
27073 MenhirLib.EngineTypes.endp = _endpos__1_;
27074 MenhirLib.EngineTypes.next = _menhir_stack;
27075 };
27076 } = _menhir_stack in
27077 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
27078 let _1 : 'tv_stm_dots = Obj.magic _1 in
27079 let _startpos = _startpos__1_ in
27080 let _endpos = _endpos__2_ in
27081 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
27082 # 1520 "parser_cocci_menhir.mly"
27083 ( _1::_2 )
27084 # 27085 "parser_cocci_menhir.ml"
27085 in
27086 _menhir_env.MenhirLib.EngineTypes.stack <- {
27087 MenhirLib.EngineTypes.state = _menhir_s;
27088 MenhirLib.EngineTypes.semv = Obj.repr _v;
27089 MenhirLib.EngineTypes.startp = _startpos;
27090 MenhirLib.EngineTypes.endp = _endpos;
27091 MenhirLib.EngineTypes.next = _menhir_stack;
27092 });
27093 (fun _menhir_env ->
27094 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27095 let {
27096 MenhirLib.EngineTypes.semv = _2;
27097 MenhirLib.EngineTypes.startp = _startpos__2_;
27098 MenhirLib.EngineTypes.endp = _endpos__2_;
27099 MenhirLib.EngineTypes.next = {
27100 MenhirLib.EngineTypes.state = _menhir_s;
27101 MenhirLib.EngineTypes.semv = _1;
27102 MenhirLib.EngineTypes.startp = _startpos__1_;
27103 MenhirLib.EngineTypes.endp = _endpos__1_;
27104 MenhirLib.EngineTypes.next = _menhir_stack;
27105 };
27106 } = _menhir_stack in
27107 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
27108 let _1 : 'tv_expr = Obj.magic _1 in
27109 let _startpos = _startpos__1_ in
27110 let _endpos = _endpos__2_ in
27111 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
27112 # 1521 "parser_cocci_menhir.mly"
27113 ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
27114 # 27115 "parser_cocci_menhir.ml"
27115 in
27116 _menhir_env.MenhirLib.EngineTypes.stack <- {
27117 MenhirLib.EngineTypes.state = _menhir_s;
27118 MenhirLib.EngineTypes.semv = Obj.repr _v;
27119 MenhirLib.EngineTypes.startp = _startpos;
27120 MenhirLib.EngineTypes.endp = _endpos;
27121 MenhirLib.EngineTypes.next = _menhir_stack;
27122 });
27123 (fun _menhir_env ->
27124 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27125 let {
27126 MenhirLib.EngineTypes.semv = _2;
27127 MenhirLib.EngineTypes.startp = _startpos__2_;
27128 MenhirLib.EngineTypes.endp = _endpos__2_;
27129 MenhirLib.EngineTypes.next = {
27130 MenhirLib.EngineTypes.state = _menhir_s;
27131 MenhirLib.EngineTypes.semv = _1;
27132 MenhirLib.EngineTypes.startp = _startpos__1_;
27133 MenhirLib.EngineTypes.endp = _endpos__1_;
27134 MenhirLib.EngineTypes.next = _menhir_stack;
27135 };
27136 } = _menhir_stack in
27137 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
27138 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
27139 let _startpos = _startpos__1_ in
27140 let _endpos = _endpos__2_ in
27141 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
27142 # 1522 "parser_cocci_menhir.mly"
27143 ( _1@_2 )
27144 # 27145 "parser_cocci_menhir.ml"
27145 in
27146 _menhir_env.MenhirLib.EngineTypes.stack <- {
27147 MenhirLib.EngineTypes.state = _menhir_s;
27148 MenhirLib.EngineTypes.semv = Obj.repr _v;
27149 MenhirLib.EngineTypes.startp = _startpos;
27150 MenhirLib.EngineTypes.endp = _endpos;
27151 MenhirLib.EngineTypes.next = _menhir_stack;
27152 });
27153 (fun _menhir_env ->
27154 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27155 let {
27156 MenhirLib.EngineTypes.semv = _2;
27157 MenhirLib.EngineTypes.startp = _startpos__2_;
27158 MenhirLib.EngineTypes.endp = _endpos__2_;
27159 MenhirLib.EngineTypes.next = {
27160 MenhirLib.EngineTypes.state = _menhir_s;
27161 MenhirLib.EngineTypes.semv = _1;
27162 MenhirLib.EngineTypes.startp = _startpos__1_;
27163 MenhirLib.EngineTypes.endp = _endpos__1_;
27164 MenhirLib.EngineTypes.next = _menhir_stack;
27165 };
27166 } = _menhir_stack in
27167 let _2 : 'tv_toplevel_after_dots_init = Obj.magic _2 in
27168 let _1 : 'tv_stm_dots = Obj.magic _1 in
27169 let _startpos = _startpos__1_ in
27170 let _endpos = _endpos__2_ in
27171 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_init_ =
27172 # 1520 "parser_cocci_menhir.mly"
27173 ( _1::_2 )
27174 # 27175 "parser_cocci_menhir.ml"
27175 in
27176 _menhir_env.MenhirLib.EngineTypes.stack <- {
27177 MenhirLib.EngineTypes.state = _menhir_s;
27178 MenhirLib.EngineTypes.semv = Obj.repr _v;
27179 MenhirLib.EngineTypes.startp = _startpos;
27180 MenhirLib.EngineTypes.endp = _endpos;
27181 MenhirLib.EngineTypes.next = _menhir_stack;
27182 });
27183 (fun _menhir_env ->
27184 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27185 let {
27186 MenhirLib.EngineTypes.semv = _2;
27187 MenhirLib.EngineTypes.startp = _startpos__2_;
27188 MenhirLib.EngineTypes.endp = _endpos__2_;
27189 MenhirLib.EngineTypes.next = {
27190 MenhirLib.EngineTypes.state = _menhir_s;
27191 MenhirLib.EngineTypes.semv = _1;
27192 MenhirLib.EngineTypes.startp = _startpos__1_;
27193 MenhirLib.EngineTypes.endp = _endpos__1_;
27194 MenhirLib.EngineTypes.next = _menhir_stack;
27195 };
27196 } = _menhir_stack in
27197 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
27198 let _1 : 'tv_expr = Obj.magic _1 in
27199 let _startpos = _startpos__1_ in
27200 let _endpos = _endpos__2_ in
27201 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_init_ =
27202 # 1521 "parser_cocci_menhir.mly"
27203 ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
27204 # 27205 "parser_cocci_menhir.ml"
27205 in
27206 _menhir_env.MenhirLib.EngineTypes.stack <- {
27207 MenhirLib.EngineTypes.state = _menhir_s;
27208 MenhirLib.EngineTypes.semv = Obj.repr _v;
27209 MenhirLib.EngineTypes.startp = _startpos;
27210 MenhirLib.EngineTypes.endp = _endpos;
27211 MenhirLib.EngineTypes.next = _menhir_stack;
27212 });
27213 (fun _menhir_env ->
27214 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27215 let {
27216 MenhirLib.EngineTypes.semv = _2;
27217 MenhirLib.EngineTypes.startp = _startpos__2_;
27218 MenhirLib.EngineTypes.endp = _endpos__2_;
27219 MenhirLib.EngineTypes.next = {
27220 MenhirLib.EngineTypes.state = _menhir_s;
27221 MenhirLib.EngineTypes.semv = _1;
27222 MenhirLib.EngineTypes.startp = _startpos__1_;
27223 MenhirLib.EngineTypes.endp = _endpos__1_;
27224 MenhirLib.EngineTypes.next = _menhir_stack;
27225 };
27226 } = _menhir_stack in
27227 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
27228 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
27229 let _startpos = _startpos__1_ in
27230 let _endpos = _endpos__2_ in
27231 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_init_ =
27232 # 1522 "parser_cocci_menhir.mly"
27233 ( _1@_2 )
27234 # 27235 "parser_cocci_menhir.ml"
27235 in
27236 _menhir_env.MenhirLib.EngineTypes.stack <- {
27237 MenhirLib.EngineTypes.state = _menhir_s;
27238 MenhirLib.EngineTypes.semv = Obj.repr _v;
27239 MenhirLib.EngineTypes.startp = _startpos;
27240 MenhirLib.EngineTypes.endp = _endpos;
27241 MenhirLib.EngineTypes.next = _menhir_stack;
27242 });
27243 (fun _menhir_env ->
27244 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27245 let {
27246 MenhirLib.EngineTypes.state = _menhir_s;
27247 MenhirLib.EngineTypes.semv = _1;
27248 MenhirLib.EngineTypes.startp = _startpos__1_;
27249 MenhirLib.EngineTypes.endp = _endpos__1_;
27250 MenhirLib.EngineTypes.next = _menhir_stack;
27251 } = _menhir_stack in
27252 let _1 : 'tv_pure_ident = Obj.magic _1 in
27253 let _startpos = _startpos__1_ in
27254 let _endpos = _endpos__1_ in
27255 let _v : 'tv_typedef_ident =
27256 # 1434 "parser_cocci_menhir.mly"
27257 ( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) )
27258 # 27259 "parser_cocci_menhir.ml"
27259 in
27260 _menhir_env.MenhirLib.EngineTypes.stack <- {
27261 MenhirLib.EngineTypes.state = _menhir_s;
27262 MenhirLib.EngineTypes.semv = Obj.repr _v;
27263 MenhirLib.EngineTypes.startp = _startpos;
27264 MenhirLib.EngineTypes.endp = _endpos;
27265 MenhirLib.EngineTypes.next = _menhir_stack;
27266 });
27267 (fun _menhir_env ->
27268 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27269 let {
27270 MenhirLib.EngineTypes.state = _menhir_s;
27271 MenhirLib.EngineTypes.semv = _1;
27272 MenhirLib.EngineTypes.startp = _startpos__1_;
27273 MenhirLib.EngineTypes.endp = _endpos__1_;
27274 MenhirLib.EngineTypes.next = _menhir_stack;
27275 } = _menhir_stack in
27276 let _1 : (
27277 # 64 "parser_cocci_menhir.mly"
27278 (Parse_aux.info)
27279 # 27280 "parser_cocci_menhir.ml"
27280 ) = Obj.magic _1 in
27281 let _startpos = _startpos__1_ in
27282 let _endpos = _endpos__1_ in
27283 let _v : 'tv_typedef_ident =
27284 # 1436 "parser_cocci_menhir.mly"
27285 ( let (nm,pure,clt) = _1 in
27286 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
27287 # 27288 "parser_cocci_menhir.ml"
27288 in
27289 _menhir_env.MenhirLib.EngineTypes.stack <- {
27290 MenhirLib.EngineTypes.state = _menhir_s;
27291 MenhirLib.EngineTypes.semv = Obj.repr _v;
27292 MenhirLib.EngineTypes.startp = _startpos;
27293 MenhirLib.EngineTypes.endp = _endpos;
27294 MenhirLib.EngineTypes.next = _menhir_stack;
27295 });
27296 (fun _menhir_env ->
27297 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27298 let {
27299 MenhirLib.EngineTypes.state = _menhir_s;
27300 MenhirLib.EngineTypes.semv = _1;
27301 MenhirLib.EngineTypes.startp = _startpos__1_;
27302 MenhirLib.EngineTypes.endp = _endpos__1_;
27303 MenhirLib.EngineTypes.next = _menhir_stack;
27304 } = _menhir_stack in
27305 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
27306 let _startpos = _startpos__1_ in
27307 let _endpos = _endpos__1_ in
27308 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27309 # 1225 "parser_cocci_menhir.mly"
27310 ( _1 )
27311 # 27312 "parser_cocci_menhir.ml"
27312 in
27313 _menhir_env.MenhirLib.EngineTypes.stack <- {
27314 MenhirLib.EngineTypes.state = _menhir_s;
27315 MenhirLib.EngineTypes.semv = Obj.repr _v;
27316 MenhirLib.EngineTypes.startp = _startpos;
27317 MenhirLib.EngineTypes.endp = _endpos;
27318 MenhirLib.EngineTypes.next = _menhir_stack;
27319 });
27320 (fun _menhir_env ->
27321 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27322 let {
27323 MenhirLib.EngineTypes.semv = _2;
27324 MenhirLib.EngineTypes.startp = _startpos__2_;
27325 MenhirLib.EngineTypes.endp = _endpos__2_;
27326 MenhirLib.EngineTypes.next = {
27327 MenhirLib.EngineTypes.state = _menhir_s;
27328 MenhirLib.EngineTypes.semv = _1;
27329 MenhirLib.EngineTypes.startp = _startpos__1_;
27330 MenhirLib.EngineTypes.endp = _endpos__1_;
27331 MenhirLib.EngineTypes.next = _menhir_stack;
27332 };
27333 } = _menhir_stack in
27334 let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
27335 let _1 : (
27336 # 84 "parser_cocci_menhir.mly"
27337 (Data.clt)
27338 # 27339 "parser_cocci_menhir.ml"
27339 ) = Obj.magic _1 in
27340 let _startpos = _startpos__1_ in
27341 let _endpos = _endpos__2_ in
27342 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27343 # 1227 "parser_cocci_menhir.mly"
27344 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
27345 # 27346 "parser_cocci_menhir.ml"
27346 in
27347 _menhir_env.MenhirLib.EngineTypes.stack <- {
27348 MenhirLib.EngineTypes.state = _menhir_s;
27349 MenhirLib.EngineTypes.semv = Obj.repr _v;
27350 MenhirLib.EngineTypes.startp = _startpos;
27351 MenhirLib.EngineTypes.endp = _endpos;
27352 MenhirLib.EngineTypes.next = _menhir_stack;
27353 });
27354 (fun _menhir_env ->
27355 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27356 let {
27357 MenhirLib.EngineTypes.semv = _2;
27358 MenhirLib.EngineTypes.startp = _startpos__2_;
27359 MenhirLib.EngineTypes.endp = _endpos__2_;
27360 MenhirLib.EngineTypes.next = {
27361 MenhirLib.EngineTypes.state = _menhir_s;
27362 MenhirLib.EngineTypes.semv = _1;
27363 MenhirLib.EngineTypes.startp = _startpos__1_;
27364 MenhirLib.EngineTypes.endp = _endpos__1_;
27365 MenhirLib.EngineTypes.next = _menhir_stack;
27366 };
27367 } = _menhir_stack in
27368 let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
27369 let _1 : (
27370 # 84 "parser_cocci_menhir.mly"
27371 (Data.clt)
27372 # 27373 "parser_cocci_menhir.ml"
27373 ) = Obj.magic _1 in
27374 let _startpos = _startpos__1_ in
27375 let _endpos = _endpos__2_ in
27376 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27377 # 1229 "parser_cocci_menhir.mly"
27378 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
27379 # 27380 "parser_cocci_menhir.ml"
27380 in
27381 _menhir_env.MenhirLib.EngineTypes.stack <- {
27382 MenhirLib.EngineTypes.state = _menhir_s;
27383 MenhirLib.EngineTypes.semv = Obj.repr _v;
27384 MenhirLib.EngineTypes.startp = _startpos;
27385 MenhirLib.EngineTypes.endp = _endpos;
27386 MenhirLib.EngineTypes.next = _menhir_stack;
27387 });
27388 (fun _menhir_env ->
27389 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27390 let {
27391 MenhirLib.EngineTypes.semv = _2;
27392 MenhirLib.EngineTypes.startp = _startpos__2_;
27393 MenhirLib.EngineTypes.endp = _endpos__2_;
27394 MenhirLib.EngineTypes.next = {
27395 MenhirLib.EngineTypes.state = _menhir_s;
27396 MenhirLib.EngineTypes.semv = _1;
27397 MenhirLib.EngineTypes.startp = _startpos__1_;
27398 MenhirLib.EngineTypes.endp = _endpos__1_;
27399 MenhirLib.EngineTypes.next = _menhir_stack;
27400 };
27401 } = _menhir_stack in
27402 let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
27403 let _1 : 'tv_unary_op = Obj.magic _1 in
27404 let _startpos = _startpos__1_ in
27405 let _endpos = _endpos__2_ in
27406 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27407 # 1231 "parser_cocci_menhir.mly"
27408 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
27409 # 27410 "parser_cocci_menhir.ml"
27410 in
27411 _menhir_env.MenhirLib.EngineTypes.stack <- {
27412 MenhirLib.EngineTypes.state = _menhir_s;
27413 MenhirLib.EngineTypes.semv = Obj.repr _v;
27414 MenhirLib.EngineTypes.startp = _startpos;
27415 MenhirLib.EngineTypes.endp = _endpos;
27416 MenhirLib.EngineTypes.next = _menhir_stack;
27417 });
27418 (fun _menhir_env ->
27419 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27420 let {
27421 MenhirLib.EngineTypes.semv = _2;
27422 MenhirLib.EngineTypes.startp = _startpos__2_;
27423 MenhirLib.EngineTypes.endp = _endpos__2_;
27424 MenhirLib.EngineTypes.next = {
27425 MenhirLib.EngineTypes.state = _menhir_s;
27426 MenhirLib.EngineTypes.semv = _1;
27427 MenhirLib.EngineTypes.startp = _startpos__1_;
27428 MenhirLib.EngineTypes.endp = _endpos__1_;
27429 MenhirLib.EngineTypes.next = _menhir_stack;
27430 };
27431 } = _menhir_stack in
27432 let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
27433 let _1 : (
27434 # 75 "parser_cocci_menhir.mly"
27435 (Data.clt)
27436 # 27437 "parser_cocci_menhir.ml"
27437 ) = Obj.magic _1 in
27438 let _startpos = _startpos__1_ in
27439 let _endpos = _endpos__2_ in
27440 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27441 # 1233 "parser_cocci_menhir.mly"
27442 ( let mcode = P.clt2mcode Ast.Not _1 in
27443 Ast0.wrap(Ast0.Unary(_2, mcode)) )
27444 # 27445 "parser_cocci_menhir.ml"
27445 in
27446 _menhir_env.MenhirLib.EngineTypes.stack <- {
27447 MenhirLib.EngineTypes.state = _menhir_s;
27448 MenhirLib.EngineTypes.semv = Obj.repr _v;
27449 MenhirLib.EngineTypes.startp = _startpos;
27450 MenhirLib.EngineTypes.endp = _endpos;
27451 MenhirLib.EngineTypes.next = _menhir_stack;
27452 });
27453 (fun _menhir_env ->
27454 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27455 let {
27456 MenhirLib.EngineTypes.semv = _2;
27457 MenhirLib.EngineTypes.startp = _startpos__2_;
27458 MenhirLib.EngineTypes.endp = _endpos__2_;
27459 MenhirLib.EngineTypes.next = {
27460 MenhirLib.EngineTypes.state = _menhir_s;
27461 MenhirLib.EngineTypes.semv = _1;
27462 MenhirLib.EngineTypes.startp = _startpos__1_;
27463 MenhirLib.EngineTypes.endp = _endpos__1_;
27464 MenhirLib.EngineTypes.next = _menhir_stack;
27465 };
27466 } = _menhir_stack in
27467 let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
27468 let _1 : (
27469 # 58 "parser_cocci_menhir.mly"
27470 (Data.clt)
27471 # 27472 "parser_cocci_menhir.ml"
27472 ) = Obj.magic _1 in
27473 let _startpos = _startpos__1_ in
27474 let _endpos = _endpos__2_ in
27475 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27476 # 1236 "parser_cocci_menhir.mly"
27477 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
27478 # 27479 "parser_cocci_menhir.ml"
27479 in
27480 _menhir_env.MenhirLib.EngineTypes.stack <- {
27481 MenhirLib.EngineTypes.state = _menhir_s;
27482 MenhirLib.EngineTypes.semv = Obj.repr _v;
27483 MenhirLib.EngineTypes.startp = _startpos;
27484 MenhirLib.EngineTypes.endp = _endpos;
27485 MenhirLib.EngineTypes.next = _menhir_stack;
27486 });
27487 (fun _menhir_env ->
27488 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27489 let {
27490 MenhirLib.EngineTypes.semv = rp;
27491 MenhirLib.EngineTypes.startp = _startpos_rp_;
27492 MenhirLib.EngineTypes.endp = _endpos_rp_;
27493 MenhirLib.EngineTypes.next = {
27494 MenhirLib.EngineTypes.semv = t;
27495 MenhirLib.EngineTypes.startp = _startpos_t_;
27496 MenhirLib.EngineTypes.endp = _endpos_t_;
27497 MenhirLib.EngineTypes.next = {
27498 MenhirLib.EngineTypes.semv = lp;
27499 MenhirLib.EngineTypes.startp = _startpos_lp_;
27500 MenhirLib.EngineTypes.endp = _endpos_lp_;
27501 MenhirLib.EngineTypes.next = {
27502 MenhirLib.EngineTypes.state = _menhir_s;
27503 MenhirLib.EngineTypes.semv = s;
27504 MenhirLib.EngineTypes.startp = _startpos_s_;
27505 MenhirLib.EngineTypes.endp = _endpos_s_;
27506 MenhirLib.EngineTypes.next = _menhir_stack;
27507 };
27508 };
27509 };
27510 } = _menhir_stack in
27511 let rp : (
27512 # 76 "parser_cocci_menhir.mly"
27513 (Data.clt)
27514 # 27515 "parser_cocci_menhir.ml"
27515 ) = Obj.magic rp in
27516 let t : 'tv_ctype = Obj.magic t in
27517 let lp : (
27518 # 75 "parser_cocci_menhir.mly"
27519 (Data.clt)
27520 # 27521 "parser_cocci_menhir.ml"
27521 ) = Obj.magic lp in
27522 let s : (
27523 # 58 "parser_cocci_menhir.mly"
27524 (Data.clt)
27525 # 27526 "parser_cocci_menhir.ml"
27526 ) = Obj.magic s in
27527 let _startpos = _startpos_s_ in
27528 let _endpos = _endpos_rp_ in
27529 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
27530 # 1238 "parser_cocci_menhir.mly"
27531 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
27532 P.clt2mcode "(" lp,t,
27533 P.clt2mcode ")" rp)) )
27534 # 27535 "parser_cocci_menhir.ml"
27535 in
27536 _menhir_env.MenhirLib.EngineTypes.stack <- {
27537 MenhirLib.EngineTypes.state = _menhir_s;
27538 MenhirLib.EngineTypes.semv = Obj.repr _v;
27539 MenhirLib.EngineTypes.startp = _startpos;
27540 MenhirLib.EngineTypes.endp = _endpos;
27541 MenhirLib.EngineTypes.next = _menhir_stack;
27542 });
27543 (fun _menhir_env ->
27544 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27545 let {
27546 MenhirLib.EngineTypes.state = _menhir_s;
27547 MenhirLib.EngineTypes.semv = _1;
27548 MenhirLib.EngineTypes.startp = _startpos__1_;
27549 MenhirLib.EngineTypes.endp = _endpos__1_;
27550 MenhirLib.EngineTypes.next = _menhir_stack;
27551 } = _menhir_stack in
27552 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
27553 let _startpos = _startpos__1_ in
27554 let _endpos = _endpos__1_ in
27555 let _v : 'tv_unary_expr_eexpr_invalid_ =
27556 # 1225 "parser_cocci_menhir.mly"
27557 ( _1 )
27558 # 27559 "parser_cocci_menhir.ml"
27559 in
27560 _menhir_env.MenhirLib.EngineTypes.stack <- {
27561 MenhirLib.EngineTypes.state = _menhir_s;
27562 MenhirLib.EngineTypes.semv = Obj.repr _v;
27563 MenhirLib.EngineTypes.startp = _startpos;
27564 MenhirLib.EngineTypes.endp = _endpos;
27565 MenhirLib.EngineTypes.next = _menhir_stack;
27566 });
27567 (fun _menhir_env ->
27568 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27569 let {
27570 MenhirLib.EngineTypes.semv = _2;
27571 MenhirLib.EngineTypes.startp = _startpos__2_;
27572 MenhirLib.EngineTypes.endp = _endpos__2_;
27573 MenhirLib.EngineTypes.next = {
27574 MenhirLib.EngineTypes.state = _menhir_s;
27575 MenhirLib.EngineTypes.semv = _1;
27576 MenhirLib.EngineTypes.startp = _startpos__1_;
27577 MenhirLib.EngineTypes.endp = _endpos__1_;
27578 MenhirLib.EngineTypes.next = _menhir_stack;
27579 };
27580 } = _menhir_stack in
27581 let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
27582 let _1 : (
27583 # 84 "parser_cocci_menhir.mly"
27584 (Data.clt)
27585 # 27586 "parser_cocci_menhir.ml"
27586 ) = Obj.magic _1 in
27587 let _startpos = _startpos__1_ in
27588 let _endpos = _endpos__2_ in
27589 let _v : 'tv_unary_expr_eexpr_invalid_ =
27590 # 1227 "parser_cocci_menhir.mly"
27591 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
27592 # 27593 "parser_cocci_menhir.ml"
27593 in
27594 _menhir_env.MenhirLib.EngineTypes.stack <- {
27595 MenhirLib.EngineTypes.state = _menhir_s;
27596 MenhirLib.EngineTypes.semv = Obj.repr _v;
27597 MenhirLib.EngineTypes.startp = _startpos;
27598 MenhirLib.EngineTypes.endp = _endpos;
27599 MenhirLib.EngineTypes.next = _menhir_stack;
27600 });
27601 (fun _menhir_env ->
27602 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27603 let {
27604 MenhirLib.EngineTypes.semv = _2;
27605 MenhirLib.EngineTypes.startp = _startpos__2_;
27606 MenhirLib.EngineTypes.endp = _endpos__2_;
27607 MenhirLib.EngineTypes.next = {
27608 MenhirLib.EngineTypes.state = _menhir_s;
27609 MenhirLib.EngineTypes.semv = _1;
27610 MenhirLib.EngineTypes.startp = _startpos__1_;
27611 MenhirLib.EngineTypes.endp = _endpos__1_;
27612 MenhirLib.EngineTypes.next = _menhir_stack;
27613 };
27614 } = _menhir_stack in
27615 let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
27616 let _1 : (
27617 # 84 "parser_cocci_menhir.mly"
27618 (Data.clt)
27619 # 27620 "parser_cocci_menhir.ml"
27620 ) = Obj.magic _1 in
27621 let _startpos = _startpos__1_ in
27622 let _endpos = _endpos__2_ in
27623 let _v : 'tv_unary_expr_eexpr_invalid_ =
27624 # 1229 "parser_cocci_menhir.mly"
27625 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
27626 # 27627 "parser_cocci_menhir.ml"
27627 in
27628 _menhir_env.MenhirLib.EngineTypes.stack <- {
27629 MenhirLib.EngineTypes.state = _menhir_s;
27630 MenhirLib.EngineTypes.semv = Obj.repr _v;
27631 MenhirLib.EngineTypes.startp = _startpos;
27632 MenhirLib.EngineTypes.endp = _endpos;
27633 MenhirLib.EngineTypes.next = _menhir_stack;
27634 });
27635 (fun _menhir_env ->
27636 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27637 let {
27638 MenhirLib.EngineTypes.semv = _2;
27639 MenhirLib.EngineTypes.startp = _startpos__2_;
27640 MenhirLib.EngineTypes.endp = _endpos__2_;
27641 MenhirLib.EngineTypes.next = {
27642 MenhirLib.EngineTypes.state = _menhir_s;
27643 MenhirLib.EngineTypes.semv = _1;
27644 MenhirLib.EngineTypes.startp = _startpos__1_;
27645 MenhirLib.EngineTypes.endp = _endpos__1_;
27646 MenhirLib.EngineTypes.next = _menhir_stack;
27647 };
27648 } = _menhir_stack in
27649 let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
27650 let _1 : 'tv_unary_op = Obj.magic _1 in
27651 let _startpos = _startpos__1_ in
27652 let _endpos = _endpos__2_ in
27653 let _v : 'tv_unary_expr_eexpr_invalid_ =
27654 # 1231 "parser_cocci_menhir.mly"
27655 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
27656 # 27657 "parser_cocci_menhir.ml"
27657 in
27658 _menhir_env.MenhirLib.EngineTypes.stack <- {
27659 MenhirLib.EngineTypes.state = _menhir_s;
27660 MenhirLib.EngineTypes.semv = Obj.repr _v;
27661 MenhirLib.EngineTypes.startp = _startpos;
27662 MenhirLib.EngineTypes.endp = _endpos;
27663 MenhirLib.EngineTypes.next = _menhir_stack;
27664 });
27665 (fun _menhir_env ->
27666 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27667 let {
27668 MenhirLib.EngineTypes.semv = _2;
27669 MenhirLib.EngineTypes.startp = _startpos__2_;
27670 MenhirLib.EngineTypes.endp = _endpos__2_;
27671 MenhirLib.EngineTypes.next = {
27672 MenhirLib.EngineTypes.state = _menhir_s;
27673 MenhirLib.EngineTypes.semv = _1;
27674 MenhirLib.EngineTypes.startp = _startpos__1_;
27675 MenhirLib.EngineTypes.endp = _endpos__1_;
27676 MenhirLib.EngineTypes.next = _menhir_stack;
27677 };
27678 } = _menhir_stack in
27679 let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
27680 let _1 : (
27681 # 75 "parser_cocci_menhir.mly"
27682 (Data.clt)
27683 # 27684 "parser_cocci_menhir.ml"
27684 ) = Obj.magic _1 in
27685 let _startpos = _startpos__1_ in
27686 let _endpos = _endpos__2_ in
27687 let _v : 'tv_unary_expr_eexpr_invalid_ =
27688 # 1233 "parser_cocci_menhir.mly"
27689 ( let mcode = P.clt2mcode Ast.Not _1 in
27690 Ast0.wrap(Ast0.Unary(_2, mcode)) )
27691 # 27692 "parser_cocci_menhir.ml"
27692 in
27693 _menhir_env.MenhirLib.EngineTypes.stack <- {
27694 MenhirLib.EngineTypes.state = _menhir_s;
27695 MenhirLib.EngineTypes.semv = Obj.repr _v;
27696 MenhirLib.EngineTypes.startp = _startpos;
27697 MenhirLib.EngineTypes.endp = _endpos;
27698 MenhirLib.EngineTypes.next = _menhir_stack;
27699 });
27700 (fun _menhir_env ->
27701 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27702 let {
27703 MenhirLib.EngineTypes.semv = _2;
27704 MenhirLib.EngineTypes.startp = _startpos__2_;
27705 MenhirLib.EngineTypes.endp = _endpos__2_;
27706 MenhirLib.EngineTypes.next = {
27707 MenhirLib.EngineTypes.state = _menhir_s;
27708 MenhirLib.EngineTypes.semv = _1;
27709 MenhirLib.EngineTypes.startp = _startpos__1_;
27710 MenhirLib.EngineTypes.endp = _endpos__1_;
27711 MenhirLib.EngineTypes.next = _menhir_stack;
27712 };
27713 } = _menhir_stack in
27714 let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
27715 let _1 : (
27716 # 58 "parser_cocci_menhir.mly"
27717 (Data.clt)
27718 # 27719 "parser_cocci_menhir.ml"
27719 ) = Obj.magic _1 in
27720 let _startpos = _startpos__1_ in
27721 let _endpos = _endpos__2_ in
27722 let _v : 'tv_unary_expr_eexpr_invalid_ =
27723 # 1236 "parser_cocci_menhir.mly"
27724 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
27725 # 27726 "parser_cocci_menhir.ml"
27726 in
27727 _menhir_env.MenhirLib.EngineTypes.stack <- {
27728 MenhirLib.EngineTypes.state = _menhir_s;
27729 MenhirLib.EngineTypes.semv = Obj.repr _v;
27730 MenhirLib.EngineTypes.startp = _startpos;
27731 MenhirLib.EngineTypes.endp = _endpos;
27732 MenhirLib.EngineTypes.next = _menhir_stack;
27733 });
27734 (fun _menhir_env ->
27735 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27736 let {
27737 MenhirLib.EngineTypes.semv = rp;
27738 MenhirLib.EngineTypes.startp = _startpos_rp_;
27739 MenhirLib.EngineTypes.endp = _endpos_rp_;
27740 MenhirLib.EngineTypes.next = {
27741 MenhirLib.EngineTypes.semv = t;
27742 MenhirLib.EngineTypes.startp = _startpos_t_;
27743 MenhirLib.EngineTypes.endp = _endpos_t_;
27744 MenhirLib.EngineTypes.next = {
27745 MenhirLib.EngineTypes.semv = lp;
27746 MenhirLib.EngineTypes.startp = _startpos_lp_;
27747 MenhirLib.EngineTypes.endp = _endpos_lp_;
27748 MenhirLib.EngineTypes.next = {
27749 MenhirLib.EngineTypes.state = _menhir_s;
27750 MenhirLib.EngineTypes.semv = s;
27751 MenhirLib.EngineTypes.startp = _startpos_s_;
27752 MenhirLib.EngineTypes.endp = _endpos_s_;
27753 MenhirLib.EngineTypes.next = _menhir_stack;
27754 };
27755 };
27756 };
27757 } = _menhir_stack in
27758 let rp : (
27759 # 76 "parser_cocci_menhir.mly"
27760 (Data.clt)
27761 # 27762 "parser_cocci_menhir.ml"
27762 ) = Obj.magic rp in
27763 let t : 'tv_ctype = Obj.magic t in
27764 let lp : (
27765 # 75 "parser_cocci_menhir.mly"
27766 (Data.clt)
27767 # 27768 "parser_cocci_menhir.ml"
27768 ) = Obj.magic lp in
27769 let s : (
27770 # 58 "parser_cocci_menhir.mly"
27771 (Data.clt)
27772 # 27773 "parser_cocci_menhir.ml"
27773 ) = Obj.magic s in
27774 let _startpos = _startpos_s_ in
27775 let _endpos = _endpos_rp_ in
27776 let _v : 'tv_unary_expr_eexpr_invalid_ =
27777 # 1238 "parser_cocci_menhir.mly"
27778 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
27779 P.clt2mcode "(" lp,t,
27780 P.clt2mcode ")" rp)) )
27781 # 27782 "parser_cocci_menhir.ml"
27782 in
27783 _menhir_env.MenhirLib.EngineTypes.stack <- {
27784 MenhirLib.EngineTypes.state = _menhir_s;
27785 MenhirLib.EngineTypes.semv = Obj.repr _v;
27786 MenhirLib.EngineTypes.startp = _startpos;
27787 MenhirLib.EngineTypes.endp = _endpos;
27788 MenhirLib.EngineTypes.next = _menhir_stack;
27789 });
27790 (fun _menhir_env ->
27791 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27792 let {
27793 MenhirLib.EngineTypes.state = _menhir_s;
27794 MenhirLib.EngineTypes.semv = _1;
27795 MenhirLib.EngineTypes.startp = _startpos__1_;
27796 MenhirLib.EngineTypes.endp = _endpos__1_;
27797 MenhirLib.EngineTypes.next = _menhir_stack;
27798 } = _menhir_stack in
27799 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
27800 let _startpos = _startpos__1_ in
27801 let _endpos = _endpos__1_ in
27802 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27803 # 1225 "parser_cocci_menhir.mly"
27804 ( _1 )
27805 # 27806 "parser_cocci_menhir.ml"
27806 in
27807 _menhir_env.MenhirLib.EngineTypes.stack <- {
27808 MenhirLib.EngineTypes.state = _menhir_s;
27809 MenhirLib.EngineTypes.semv = Obj.repr _v;
27810 MenhirLib.EngineTypes.startp = _startpos;
27811 MenhirLib.EngineTypes.endp = _endpos;
27812 MenhirLib.EngineTypes.next = _menhir_stack;
27813 });
27814 (fun _menhir_env ->
27815 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27816 let {
27817 MenhirLib.EngineTypes.semv = _2;
27818 MenhirLib.EngineTypes.startp = _startpos__2_;
27819 MenhirLib.EngineTypes.endp = _endpos__2_;
27820 MenhirLib.EngineTypes.next = {
27821 MenhirLib.EngineTypes.state = _menhir_s;
27822 MenhirLib.EngineTypes.semv = _1;
27823 MenhirLib.EngineTypes.startp = _startpos__1_;
27824 MenhirLib.EngineTypes.endp = _endpos__1_;
27825 MenhirLib.EngineTypes.next = _menhir_stack;
27826 };
27827 } = _menhir_stack in
27828 let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
27829 let _1 : (
27830 # 84 "parser_cocci_menhir.mly"
27831 (Data.clt)
27832 # 27833 "parser_cocci_menhir.ml"
27833 ) = Obj.magic _1 in
27834 let _startpos = _startpos__1_ in
27835 let _endpos = _endpos__2_ in
27836 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27837 # 1227 "parser_cocci_menhir.mly"
27838 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
27839 # 27840 "parser_cocci_menhir.ml"
27840 in
27841 _menhir_env.MenhirLib.EngineTypes.stack <- {
27842 MenhirLib.EngineTypes.state = _menhir_s;
27843 MenhirLib.EngineTypes.semv = Obj.repr _v;
27844 MenhirLib.EngineTypes.startp = _startpos;
27845 MenhirLib.EngineTypes.endp = _endpos;
27846 MenhirLib.EngineTypes.next = _menhir_stack;
27847 });
27848 (fun _menhir_env ->
27849 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27850 let {
27851 MenhirLib.EngineTypes.semv = _2;
27852 MenhirLib.EngineTypes.startp = _startpos__2_;
27853 MenhirLib.EngineTypes.endp = _endpos__2_;
27854 MenhirLib.EngineTypes.next = {
27855 MenhirLib.EngineTypes.state = _menhir_s;
27856 MenhirLib.EngineTypes.semv = _1;
27857 MenhirLib.EngineTypes.startp = _startpos__1_;
27858 MenhirLib.EngineTypes.endp = _endpos__1_;
27859 MenhirLib.EngineTypes.next = _menhir_stack;
27860 };
27861 } = _menhir_stack in
27862 let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
27863 let _1 : (
27864 # 84 "parser_cocci_menhir.mly"
27865 (Data.clt)
27866 # 27867 "parser_cocci_menhir.ml"
27867 ) = Obj.magic _1 in
27868 let _startpos = _startpos__1_ in
27869 let _endpos = _endpos__2_ in
27870 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27871 # 1229 "parser_cocci_menhir.mly"
27872 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
27873 # 27874 "parser_cocci_menhir.ml"
27874 in
27875 _menhir_env.MenhirLib.EngineTypes.stack <- {
27876 MenhirLib.EngineTypes.state = _menhir_s;
27877 MenhirLib.EngineTypes.semv = Obj.repr _v;
27878 MenhirLib.EngineTypes.startp = _startpos;
27879 MenhirLib.EngineTypes.endp = _endpos;
27880 MenhirLib.EngineTypes.next = _menhir_stack;
27881 });
27882 (fun _menhir_env ->
27883 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27884 let {
27885 MenhirLib.EngineTypes.semv = _2;
27886 MenhirLib.EngineTypes.startp = _startpos__2_;
27887 MenhirLib.EngineTypes.endp = _endpos__2_;
27888 MenhirLib.EngineTypes.next = {
27889 MenhirLib.EngineTypes.state = _menhir_s;
27890 MenhirLib.EngineTypes.semv = _1;
27891 MenhirLib.EngineTypes.startp = _startpos__1_;
27892 MenhirLib.EngineTypes.endp = _endpos__1_;
27893 MenhirLib.EngineTypes.next = _menhir_stack;
27894 };
27895 } = _menhir_stack in
27896 let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
27897 let _1 : 'tv_unary_op = Obj.magic _1 in
27898 let _startpos = _startpos__1_ in
27899 let _endpos = _endpos__2_ in
27900 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27901 # 1231 "parser_cocci_menhir.mly"
27902 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
27903 # 27904 "parser_cocci_menhir.ml"
27904 in
27905 _menhir_env.MenhirLib.EngineTypes.stack <- {
27906 MenhirLib.EngineTypes.state = _menhir_s;
27907 MenhirLib.EngineTypes.semv = Obj.repr _v;
27908 MenhirLib.EngineTypes.startp = _startpos;
27909 MenhirLib.EngineTypes.endp = _endpos;
27910 MenhirLib.EngineTypes.next = _menhir_stack;
27911 });
27912 (fun _menhir_env ->
27913 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27914 let {
27915 MenhirLib.EngineTypes.semv = _2;
27916 MenhirLib.EngineTypes.startp = _startpos__2_;
27917 MenhirLib.EngineTypes.endp = _endpos__2_;
27918 MenhirLib.EngineTypes.next = {
27919 MenhirLib.EngineTypes.state = _menhir_s;
27920 MenhirLib.EngineTypes.semv = _1;
27921 MenhirLib.EngineTypes.startp = _startpos__1_;
27922 MenhirLib.EngineTypes.endp = _endpos__1_;
27923 MenhirLib.EngineTypes.next = _menhir_stack;
27924 };
27925 } = _menhir_stack in
27926 let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
27927 let _1 : (
27928 # 75 "parser_cocci_menhir.mly"
27929 (Data.clt)
27930 # 27931 "parser_cocci_menhir.ml"
27931 ) = Obj.magic _1 in
27932 let _startpos = _startpos__1_ in
27933 let _endpos = _endpos__2_ in
27934 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27935 # 1233 "parser_cocci_menhir.mly"
27936 ( let mcode = P.clt2mcode Ast.Not _1 in
27937 Ast0.wrap(Ast0.Unary(_2, mcode)) )
27938 # 27939 "parser_cocci_menhir.ml"
27939 in
27940 _menhir_env.MenhirLib.EngineTypes.stack <- {
27941 MenhirLib.EngineTypes.state = _menhir_s;
27942 MenhirLib.EngineTypes.semv = Obj.repr _v;
27943 MenhirLib.EngineTypes.startp = _startpos;
27944 MenhirLib.EngineTypes.endp = _endpos;
27945 MenhirLib.EngineTypes.next = _menhir_stack;
27946 });
27947 (fun _menhir_env ->
27948 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27949 let {
27950 MenhirLib.EngineTypes.semv = _2;
27951 MenhirLib.EngineTypes.startp = _startpos__2_;
27952 MenhirLib.EngineTypes.endp = _endpos__2_;
27953 MenhirLib.EngineTypes.next = {
27954 MenhirLib.EngineTypes.state = _menhir_s;
27955 MenhirLib.EngineTypes.semv = _1;
27956 MenhirLib.EngineTypes.startp = _startpos__1_;
27957 MenhirLib.EngineTypes.endp = _endpos__1_;
27958 MenhirLib.EngineTypes.next = _menhir_stack;
27959 };
27960 } = _menhir_stack in
27961 let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
27962 let _1 : (
27963 # 58 "parser_cocci_menhir.mly"
27964 (Data.clt)
27965 # 27966 "parser_cocci_menhir.ml"
27966 ) = Obj.magic _1 in
27967 let _startpos = _startpos__1_ in
27968 let _endpos = _endpos__2_ in
27969 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
27970 # 1236 "parser_cocci_menhir.mly"
27971 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
27972 # 27973 "parser_cocci_menhir.ml"
27973 in
27974 _menhir_env.MenhirLib.EngineTypes.stack <- {
27975 MenhirLib.EngineTypes.state = _menhir_s;
27976 MenhirLib.EngineTypes.semv = Obj.repr _v;
27977 MenhirLib.EngineTypes.startp = _startpos;
27978 MenhirLib.EngineTypes.endp = _endpos;
27979 MenhirLib.EngineTypes.next = _menhir_stack;
27980 });
27981 (fun _menhir_env ->
27982 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27983 let {
27984 MenhirLib.EngineTypes.semv = rp;
27985 MenhirLib.EngineTypes.startp = _startpos_rp_;
27986 MenhirLib.EngineTypes.endp = _endpos_rp_;
27987 MenhirLib.EngineTypes.next = {
27988 MenhirLib.EngineTypes.semv = t;
27989 MenhirLib.EngineTypes.startp = _startpos_t_;
27990 MenhirLib.EngineTypes.endp = _endpos_t_;
27991 MenhirLib.EngineTypes.next = {
27992 MenhirLib.EngineTypes.semv = lp;
27993 MenhirLib.EngineTypes.startp = _startpos_lp_;
27994 MenhirLib.EngineTypes.endp = _endpos_lp_;
27995 MenhirLib.EngineTypes.next = {
27996 MenhirLib.EngineTypes.state = _menhir_s;
27997 MenhirLib.EngineTypes.semv = s;
27998 MenhirLib.EngineTypes.startp = _startpos_s_;
27999 MenhirLib.EngineTypes.endp = _endpos_s_;
28000 MenhirLib.EngineTypes.next = _menhir_stack;
28001 };
28002 };
28003 };
28004 } = _menhir_stack in
28005 let rp : (
28006 # 76 "parser_cocci_menhir.mly"
28007 (Data.clt)
28008 # 28009 "parser_cocci_menhir.ml"
28009 ) = Obj.magic rp in
28010 let t : 'tv_ctype = Obj.magic t in
28011 let lp : (
28012 # 75 "parser_cocci_menhir.mly"
28013 (Data.clt)
28014 # 28015 "parser_cocci_menhir.ml"
28015 ) = Obj.magic lp in
28016 let s : (
28017 # 58 "parser_cocci_menhir.mly"
28018 (Data.clt)
28019 # 28020 "parser_cocci_menhir.ml"
28020 ) = Obj.magic s in
28021 let _startpos = _startpos_s_ in
28022 let _endpos = _endpos_rp_ in
28023 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
28024 # 1238 "parser_cocci_menhir.mly"
28025 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
28026 P.clt2mcode "(" lp,t,
28027 P.clt2mcode ")" rp)) )
28028 # 28029 "parser_cocci_menhir.ml"
28029 in
28030 _menhir_env.MenhirLib.EngineTypes.stack <- {
28031 MenhirLib.EngineTypes.state = _menhir_s;
28032 MenhirLib.EngineTypes.semv = Obj.repr _v;
28033 MenhirLib.EngineTypes.startp = _startpos;
28034 MenhirLib.EngineTypes.endp = _endpos;
28035 MenhirLib.EngineTypes.next = _menhir_stack;
28036 });
28037 (fun _menhir_env ->
28038 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28039 let {
28040 MenhirLib.EngineTypes.state = _menhir_s;
28041 MenhirLib.EngineTypes.semv = _1;
28042 MenhirLib.EngineTypes.startp = _startpos__1_;
28043 MenhirLib.EngineTypes.endp = _endpos__1_;
28044 MenhirLib.EngineTypes.next = _menhir_stack;
28045 } = _menhir_stack in
28046 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
28047 let _startpos = _startpos__1_ in
28048 let _endpos = _endpos__1_ in
28049 let _v : 'tv_unary_expr_expr_invalid_ =
28050 # 1225 "parser_cocci_menhir.mly"
28051 ( _1 )
28052 # 28053 "parser_cocci_menhir.ml"
28053 in
28054 _menhir_env.MenhirLib.EngineTypes.stack <- {
28055 MenhirLib.EngineTypes.state = _menhir_s;
28056 MenhirLib.EngineTypes.semv = Obj.repr _v;
28057 MenhirLib.EngineTypes.startp = _startpos;
28058 MenhirLib.EngineTypes.endp = _endpos;
28059 MenhirLib.EngineTypes.next = _menhir_stack;
28060 });
28061 (fun _menhir_env ->
28062 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28063 let {
28064 MenhirLib.EngineTypes.semv = _2;
28065 MenhirLib.EngineTypes.startp = _startpos__2_;
28066 MenhirLib.EngineTypes.endp = _endpos__2_;
28067 MenhirLib.EngineTypes.next = {
28068 MenhirLib.EngineTypes.state = _menhir_s;
28069 MenhirLib.EngineTypes.semv = _1;
28070 MenhirLib.EngineTypes.startp = _startpos__1_;
28071 MenhirLib.EngineTypes.endp = _endpos__1_;
28072 MenhirLib.EngineTypes.next = _menhir_stack;
28073 };
28074 } = _menhir_stack in
28075 let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
28076 let _1 : (
28077 # 84 "parser_cocci_menhir.mly"
28078 (Data.clt)
28079 # 28080 "parser_cocci_menhir.ml"
28080 ) = Obj.magic _1 in
28081 let _startpos = _startpos__1_ in
28082 let _endpos = _endpos__2_ in
28083 let _v : 'tv_unary_expr_expr_invalid_ =
28084 # 1227 "parser_cocci_menhir.mly"
28085 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
28086 # 28087 "parser_cocci_menhir.ml"
28087 in
28088 _menhir_env.MenhirLib.EngineTypes.stack <- {
28089 MenhirLib.EngineTypes.state = _menhir_s;
28090 MenhirLib.EngineTypes.semv = Obj.repr _v;
28091 MenhirLib.EngineTypes.startp = _startpos;
28092 MenhirLib.EngineTypes.endp = _endpos;
28093 MenhirLib.EngineTypes.next = _menhir_stack;
28094 });
28095 (fun _menhir_env ->
28096 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28097 let {
28098 MenhirLib.EngineTypes.semv = _2;
28099 MenhirLib.EngineTypes.startp = _startpos__2_;
28100 MenhirLib.EngineTypes.endp = _endpos__2_;
28101 MenhirLib.EngineTypes.next = {
28102 MenhirLib.EngineTypes.state = _menhir_s;
28103 MenhirLib.EngineTypes.semv = _1;
28104 MenhirLib.EngineTypes.startp = _startpos__1_;
28105 MenhirLib.EngineTypes.endp = _endpos__1_;
28106 MenhirLib.EngineTypes.next = _menhir_stack;
28107 };
28108 } = _menhir_stack in
28109 let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
28110 let _1 : (
28111 # 84 "parser_cocci_menhir.mly"
28112 (Data.clt)
28113 # 28114 "parser_cocci_menhir.ml"
28114 ) = Obj.magic _1 in
28115 let _startpos = _startpos__1_ in
28116 let _endpos = _endpos__2_ in
28117 let _v : 'tv_unary_expr_expr_invalid_ =
28118 # 1229 "parser_cocci_menhir.mly"
28119 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
28120 # 28121 "parser_cocci_menhir.ml"
28121 in
28122 _menhir_env.MenhirLib.EngineTypes.stack <- {
28123 MenhirLib.EngineTypes.state = _menhir_s;
28124 MenhirLib.EngineTypes.semv = Obj.repr _v;
28125 MenhirLib.EngineTypes.startp = _startpos;
28126 MenhirLib.EngineTypes.endp = _endpos;
28127 MenhirLib.EngineTypes.next = _menhir_stack;
28128 });
28129 (fun _menhir_env ->
28130 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28131 let {
28132 MenhirLib.EngineTypes.semv = _2;
28133 MenhirLib.EngineTypes.startp = _startpos__2_;
28134 MenhirLib.EngineTypes.endp = _endpos__2_;
28135 MenhirLib.EngineTypes.next = {
28136 MenhirLib.EngineTypes.state = _menhir_s;
28137 MenhirLib.EngineTypes.semv = _1;
28138 MenhirLib.EngineTypes.startp = _startpos__1_;
28139 MenhirLib.EngineTypes.endp = _endpos__1_;
28140 MenhirLib.EngineTypes.next = _menhir_stack;
28141 };
28142 } = _menhir_stack in
28143 let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
28144 let _1 : 'tv_unary_op = Obj.magic _1 in
28145 let _startpos = _startpos__1_ in
28146 let _endpos = _endpos__2_ in
28147 let _v : 'tv_unary_expr_expr_invalid_ =
28148 # 1231 "parser_cocci_menhir.mly"
28149 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
28150 # 28151 "parser_cocci_menhir.ml"
28151 in
28152 _menhir_env.MenhirLib.EngineTypes.stack <- {
28153 MenhirLib.EngineTypes.state = _menhir_s;
28154 MenhirLib.EngineTypes.semv = Obj.repr _v;
28155 MenhirLib.EngineTypes.startp = _startpos;
28156 MenhirLib.EngineTypes.endp = _endpos;
28157 MenhirLib.EngineTypes.next = _menhir_stack;
28158 });
28159 (fun _menhir_env ->
28160 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28161 let {
28162 MenhirLib.EngineTypes.semv = _2;
28163 MenhirLib.EngineTypes.startp = _startpos__2_;
28164 MenhirLib.EngineTypes.endp = _endpos__2_;
28165 MenhirLib.EngineTypes.next = {
28166 MenhirLib.EngineTypes.state = _menhir_s;
28167 MenhirLib.EngineTypes.semv = _1;
28168 MenhirLib.EngineTypes.startp = _startpos__1_;
28169 MenhirLib.EngineTypes.endp = _endpos__1_;
28170 MenhirLib.EngineTypes.next = _menhir_stack;
28171 };
28172 } = _menhir_stack in
28173 let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
28174 let _1 : (
28175 # 75 "parser_cocci_menhir.mly"
28176 (Data.clt)
28177 # 28178 "parser_cocci_menhir.ml"
28178 ) = Obj.magic _1 in
28179 let _startpos = _startpos__1_ in
28180 let _endpos = _endpos__2_ in
28181 let _v : 'tv_unary_expr_expr_invalid_ =
28182 # 1233 "parser_cocci_menhir.mly"
28183 ( let mcode = P.clt2mcode Ast.Not _1 in
28184 Ast0.wrap(Ast0.Unary(_2, mcode)) )
28185 # 28186 "parser_cocci_menhir.ml"
28186 in
28187 _menhir_env.MenhirLib.EngineTypes.stack <- {
28188 MenhirLib.EngineTypes.state = _menhir_s;
28189 MenhirLib.EngineTypes.semv = Obj.repr _v;
28190 MenhirLib.EngineTypes.startp = _startpos;
28191 MenhirLib.EngineTypes.endp = _endpos;
28192 MenhirLib.EngineTypes.next = _menhir_stack;
28193 });
28194 (fun _menhir_env ->
28195 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28196 let {
28197 MenhirLib.EngineTypes.semv = _2;
28198 MenhirLib.EngineTypes.startp = _startpos__2_;
28199 MenhirLib.EngineTypes.endp = _endpos__2_;
28200 MenhirLib.EngineTypes.next = {
28201 MenhirLib.EngineTypes.state = _menhir_s;
28202 MenhirLib.EngineTypes.semv = _1;
28203 MenhirLib.EngineTypes.startp = _startpos__1_;
28204 MenhirLib.EngineTypes.endp = _endpos__1_;
28205 MenhirLib.EngineTypes.next = _menhir_stack;
28206 };
28207 } = _menhir_stack in
28208 let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
28209 let _1 : (
28210 # 58 "parser_cocci_menhir.mly"
28211 (Data.clt)
28212 # 28213 "parser_cocci_menhir.ml"
28213 ) = Obj.magic _1 in
28214 let _startpos = _startpos__1_ in
28215 let _endpos = _endpos__2_ in
28216 let _v : 'tv_unary_expr_expr_invalid_ =
28217 # 1236 "parser_cocci_menhir.mly"
28218 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
28219 # 28220 "parser_cocci_menhir.ml"
28220 in
28221 _menhir_env.MenhirLib.EngineTypes.stack <- {
28222 MenhirLib.EngineTypes.state = _menhir_s;
28223 MenhirLib.EngineTypes.semv = Obj.repr _v;
28224 MenhirLib.EngineTypes.startp = _startpos;
28225 MenhirLib.EngineTypes.endp = _endpos;
28226 MenhirLib.EngineTypes.next = _menhir_stack;
28227 });
28228 (fun _menhir_env ->
28229 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28230 let {
28231 MenhirLib.EngineTypes.semv = rp;
28232 MenhirLib.EngineTypes.startp = _startpos_rp_;
28233 MenhirLib.EngineTypes.endp = _endpos_rp_;
28234 MenhirLib.EngineTypes.next = {
28235 MenhirLib.EngineTypes.semv = t;
28236 MenhirLib.EngineTypes.startp = _startpos_t_;
28237 MenhirLib.EngineTypes.endp = _endpos_t_;
28238 MenhirLib.EngineTypes.next = {
28239 MenhirLib.EngineTypes.semv = lp;
28240 MenhirLib.EngineTypes.startp = _startpos_lp_;
28241 MenhirLib.EngineTypes.endp = _endpos_lp_;
28242 MenhirLib.EngineTypes.next = {
28243 MenhirLib.EngineTypes.state = _menhir_s;
28244 MenhirLib.EngineTypes.semv = s;
28245 MenhirLib.EngineTypes.startp = _startpos_s_;
28246 MenhirLib.EngineTypes.endp = _endpos_s_;
28247 MenhirLib.EngineTypes.next = _menhir_stack;
28248 };
28249 };
28250 };
28251 } = _menhir_stack in
28252 let rp : (
28253 # 76 "parser_cocci_menhir.mly"
28254 (Data.clt)
28255 # 28256 "parser_cocci_menhir.ml"
28256 ) = Obj.magic rp in
28257 let t : 'tv_ctype = Obj.magic t in
28258 let lp : (
28259 # 75 "parser_cocci_menhir.mly"
28260 (Data.clt)
28261 # 28262 "parser_cocci_menhir.ml"
28262 ) = Obj.magic lp in
28263 let s : (
28264 # 58 "parser_cocci_menhir.mly"
28265 (Data.clt)
28266 # 28267 "parser_cocci_menhir.ml"
28267 ) = Obj.magic s in
28268 let _startpos = _startpos_s_ in
28269 let _endpos = _endpos_rp_ in
28270 let _v : 'tv_unary_expr_expr_invalid_ =
28271 # 1238 "parser_cocci_menhir.mly"
28272 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
28273 P.clt2mcode "(" lp,t,
28274 P.clt2mcode ")" rp)) )
28275 # 28276 "parser_cocci_menhir.ml"
28276 in
28277 _menhir_env.MenhirLib.EngineTypes.stack <- {
28278 MenhirLib.EngineTypes.state = _menhir_s;
28279 MenhirLib.EngineTypes.semv = Obj.repr _v;
28280 MenhirLib.EngineTypes.startp = _startpos;
28281 MenhirLib.EngineTypes.endp = _endpos;
28282 MenhirLib.EngineTypes.next = _menhir_stack;
28283 });
28284 (fun _menhir_env ->
28285 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28286 let {
28287 MenhirLib.EngineTypes.state = _menhir_s;
28288 MenhirLib.EngineTypes.semv = _1;
28289 MenhirLib.EngineTypes.startp = _startpos__1_;
28290 MenhirLib.EngineTypes.endp = _endpos__1_;
28291 MenhirLib.EngineTypes.next = _menhir_stack;
28292 } = _menhir_stack in
28293 let _1 : (
28294 # 92 "parser_cocci_menhir.mly"
28295 (Data.clt)
28296 # 28297 "parser_cocci_menhir.ml"
28297 ) = Obj.magic _1 in
28298 let _startpos = _startpos__1_ in
28299 let _endpos = _endpos__1_ in
28300 let _v : 'tv_unary_op =
28301 # 1242 "parser_cocci_menhir.mly"
28302 ( P.clt2mcode Ast.GetRef _1 )
28303 # 28304 "parser_cocci_menhir.ml"
28304 in
28305 _menhir_env.MenhirLib.EngineTypes.stack <- {
28306 MenhirLib.EngineTypes.state = _menhir_s;
28307 MenhirLib.EngineTypes.semv = Obj.repr _v;
28308 MenhirLib.EngineTypes.startp = _startpos;
28309 MenhirLib.EngineTypes.endp = _endpos;
28310 MenhirLib.EngineTypes.next = _menhir_stack;
28311 });
28312 (fun _menhir_env ->
28313 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28314 let {
28315 MenhirLib.EngineTypes.state = _menhir_s;
28316 MenhirLib.EngineTypes.semv = _1;
28317 MenhirLib.EngineTypes.startp = _startpos__1_;
28318 MenhirLib.EngineTypes.endp = _endpos__1_;
28319 MenhirLib.EngineTypes.next = _menhir_stack;
28320 } = _menhir_stack in
28321 let _1 : (
28322 # 98 "parser_cocci_menhir.mly"
28323 (Data.clt)
28324 # 28325 "parser_cocci_menhir.ml"
28325 ) = Obj.magic _1 in
28326 let _startpos = _startpos__1_ in
28327 let _endpos = _endpos__1_ in
28328 let _v : 'tv_unary_op =
28329 # 1243 "parser_cocci_menhir.mly"
28330 ( P.clt2mcode Ast.DeRef _1 )
28331 # 28332 "parser_cocci_menhir.ml"
28332 in
28333 _menhir_env.MenhirLib.EngineTypes.stack <- {
28334 MenhirLib.EngineTypes.state = _menhir_s;
28335 MenhirLib.EngineTypes.semv = Obj.repr _v;
28336 MenhirLib.EngineTypes.startp = _startpos;
28337 MenhirLib.EngineTypes.endp = _endpos;
28338 MenhirLib.EngineTypes.next = _menhir_stack;
28339 });
28340 (fun _menhir_env ->
28341 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28342 let {
28343 MenhirLib.EngineTypes.state = _menhir_s;
28344 MenhirLib.EngineTypes.semv = _1;
28345 MenhirLib.EngineTypes.startp = _startpos__1_;
28346 MenhirLib.EngineTypes.endp = _endpos__1_;
28347 MenhirLib.EngineTypes.next = _menhir_stack;
28348 } = _menhir_stack in
28349 let _1 : (
28350 # 97 "parser_cocci_menhir.mly"
28351 (Data.clt)
28352 # 28353 "parser_cocci_menhir.ml"
28353 ) = Obj.magic _1 in
28354 let _startpos = _startpos__1_ in
28355 let _endpos = _endpos__1_ in
28356 let _v : 'tv_unary_op =
28357 # 1244 "parser_cocci_menhir.mly"
28358 ( P.clt2mcode Ast.UnPlus _1 )
28359 # 28360 "parser_cocci_menhir.ml"
28360 in
28361 _menhir_env.MenhirLib.EngineTypes.stack <- {
28362 MenhirLib.EngineTypes.state = _menhir_s;
28363 MenhirLib.EngineTypes.semv = Obj.repr _v;
28364 MenhirLib.EngineTypes.startp = _startpos;
28365 MenhirLib.EngineTypes.endp = _endpos;
28366 MenhirLib.EngineTypes.next = _menhir_stack;
28367 });
28368 (fun _menhir_env ->
28369 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28370 let {
28371 MenhirLib.EngineTypes.state = _menhir_s;
28372 MenhirLib.EngineTypes.semv = _1;
28373 MenhirLib.EngineTypes.startp = _startpos__1_;
28374 MenhirLib.EngineTypes.endp = _endpos__1_;
28375 MenhirLib.EngineTypes.next = _menhir_stack;
28376 } = _menhir_stack in
28377 let _1 : (
28378 # 97 "parser_cocci_menhir.mly"
28379 (Data.clt)
28380 # 28381 "parser_cocci_menhir.ml"
28381 ) = Obj.magic _1 in
28382 let _startpos = _startpos__1_ in
28383 let _endpos = _endpos__1_ in
28384 let _v : 'tv_unary_op =
28385 # 1245 "parser_cocci_menhir.mly"
28386 ( P.clt2mcode Ast.UnMinus _1 )
28387 # 28388 "parser_cocci_menhir.ml"
28388 in
28389 _menhir_env.MenhirLib.EngineTypes.stack <- {
28390 MenhirLib.EngineTypes.state = _menhir_s;
28391 MenhirLib.EngineTypes.semv = Obj.repr _v;
28392 MenhirLib.EngineTypes.startp = _startpos;
28393 MenhirLib.EngineTypes.endp = _endpos;
28394 MenhirLib.EngineTypes.next = _menhir_stack;
28395 });
28396 (fun _menhir_env ->
28397 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28398 let {
28399 MenhirLib.EngineTypes.state = _menhir_s;
28400 MenhirLib.EngineTypes.semv = _1;
28401 MenhirLib.EngineTypes.startp = _startpos__1_;
28402 MenhirLib.EngineTypes.endp = _endpos__1_;
28403 MenhirLib.EngineTypes.next = _menhir_stack;
28404 } = _menhir_stack in
28405 let _1 : (
28406 # 98 "parser_cocci_menhir.mly"
28407 (Data.clt)
28408 # 28409 "parser_cocci_menhir.ml"
28409 ) = Obj.magic _1 in
28410 let _startpos = _startpos__1_ in
28411 let _endpos = _endpos__1_ in
28412 let _v : 'tv_unary_op =
28413 # 1246 "parser_cocci_menhir.mly"
28414 ( P.clt2mcode Ast.Tilde _1 )
28415 # 28416 "parser_cocci_menhir.ml"
28416 in
28417 _menhir_env.MenhirLib.EngineTypes.stack <- {
28418 MenhirLib.EngineTypes.state = _menhir_s;
28419 MenhirLib.EngineTypes.semv = Obj.repr _v;
28420 MenhirLib.EngineTypes.startp = _startpos;
28421 MenhirLib.EngineTypes.endp = _endpos;
28422 MenhirLib.EngineTypes.next = _menhir_stack;
28423 });
28424 (fun _menhir_env ->
28425 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28426 let {
28427 MenhirLib.EngineTypes.semv = _2;
28428 MenhirLib.EngineTypes.startp = _startpos__2_;
28429 MenhirLib.EngineTypes.endp = _endpos__2_;
28430 MenhirLib.EngineTypes.next = {
28431 MenhirLib.EngineTypes.state = _menhir_s;
28432 MenhirLib.EngineTypes.semv = _1;
28433 MenhirLib.EngineTypes.startp = _startpos__1_;
28434 MenhirLib.EngineTypes.endp = _endpos__1_;
28435 MenhirLib.EngineTypes.next = _menhir_stack;
28436 };
28437 } = _menhir_stack in
28438 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
28439 let _1 : 'tv_expr = Obj.magic _1 in
28440 let _startpos = _startpos__1_ in
28441 let _endpos = _endpos__2_ in
28442 let _v : 'tv_when_start =
28443 # 1634 "parser_cocci_menhir.mly"
28444 ( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) )
28445 # 28446 "parser_cocci_menhir.ml"
28446 in
28447 _menhir_env.MenhirLib.EngineTypes.stack <- {
28448 MenhirLib.EngineTypes.state = _menhir_s;
28449 MenhirLib.EngineTypes.semv = Obj.repr _v;
28450 MenhirLib.EngineTypes.startp = _startpos;
28451 MenhirLib.EngineTypes.endp = _endpos;
28452 MenhirLib.EngineTypes.next = _menhir_stack;
28453 });
28454 (fun _menhir_env ->
28455 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28456 let {
28457 MenhirLib.EngineTypes.semv = _2;
28458 MenhirLib.EngineTypes.startp = _startpos__2_;
28459 MenhirLib.EngineTypes.endp = _endpos__2_;
28460 MenhirLib.EngineTypes.next = {
28461 MenhirLib.EngineTypes.state = _menhir_s;
28462 MenhirLib.EngineTypes.semv = _1;
28463 MenhirLib.EngineTypes.startp = _startpos__1_;
28464 MenhirLib.EngineTypes.endp = _endpos__1_;
28465 MenhirLib.EngineTypes.next = _menhir_stack;
28466 };
28467 } = _menhir_stack in
28468 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
28469 let _1 : 'tv_decl_statement = Obj.magic _1 in
28470 let _startpos = _startpos__1_ in
28471 let _endpos = _endpos__2_ in
28472 let _v : 'tv_when_start =
28473 # 1636 "parser_cocci_menhir.mly"
28474 ( Ast0.wrap(Ast0.DOTS(_1@_2)) )
28475 # 28476 "parser_cocci_menhir.ml"
28476 in
28477 _menhir_env.MenhirLib.EngineTypes.stack <- {
28478 MenhirLib.EngineTypes.state = _menhir_s;
28479 MenhirLib.EngineTypes.semv = Obj.repr _v;
28480 MenhirLib.EngineTypes.startp = _startpos;
28481 MenhirLib.EngineTypes.endp = _endpos;
28482 MenhirLib.EngineTypes.next = _menhir_stack;
28483 });
28484 (fun _menhir_env ->
28485 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28486 let {
28487 MenhirLib.EngineTypes.startp = _startpos__4_;
28488 MenhirLib.EngineTypes.endp = _endpos__4_;
28489 MenhirLib.EngineTypes.next = {
28490 MenhirLib.EngineTypes.semv = w;
28491 MenhirLib.EngineTypes.startp = _startpos_w_;
28492 MenhirLib.EngineTypes.endp = _endpos_w_;
28493 MenhirLib.EngineTypes.next = {
28494 MenhirLib.EngineTypes.startp = _startpos__2_;
28495 MenhirLib.EngineTypes.endp = _endpos__2_;
28496 MenhirLib.EngineTypes.next = {
28497 MenhirLib.EngineTypes.state = _menhir_s;
28498 MenhirLib.EngineTypes.startp = _startpos__1_;
28499 MenhirLib.EngineTypes.endp = _endpos__1_;
28500 MenhirLib.EngineTypes.next = _menhir_stack;
28501 };
28502 };
28503 };
28504 } = _menhir_stack in
28505 let w : 'tv_eexpr = Obj.magic w in
28506 let _startpos = _startpos__1_ in
28507 let _endpos = _endpos__4_ in
28508 let _v : 'tv_whenexp =
28509 # 1156 "parser_cocci_menhir.mly"
28510 ( w )
28511 # 28512 "parser_cocci_menhir.ml"
28512 in
28513 _menhir_env.MenhirLib.EngineTypes.stack <- {
28514 MenhirLib.EngineTypes.state = _menhir_s;
28515 MenhirLib.EngineTypes.semv = Obj.repr _v;
28516 MenhirLib.EngineTypes.startp = _startpos;
28517 MenhirLib.EngineTypes.endp = _endpos;
28518 MenhirLib.EngineTypes.next = _menhir_stack;
28519 });
28520 (fun _menhir_env ->
28521 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28522 let {
28523 MenhirLib.EngineTypes.state = _menhir_s;
28524 MenhirLib.EngineTypes.semv = w;
28525 MenhirLib.EngineTypes.startp = _startpos_w_;
28526 MenhirLib.EngineTypes.endp = _endpos_w_;
28527 MenhirLib.EngineTypes.next = _menhir_stack;
28528 } = _menhir_stack in
28529 let w : 'tv_whens_when_start_rule_elem_statement_ = Obj.magic w in
28530 let _startpos = _startpos_w_ in
28531 let _endpos = _endpos_w_ in
28532 let _v : 'tv_whenppdecs =
28533 # 843 "parser_cocci_menhir.mly"
28534 ( w )
28535 # 28536 "parser_cocci_menhir.ml"
28536 in
28537 _menhir_env.MenhirLib.EngineTypes.stack <- {
28538 MenhirLib.EngineTypes.state = _menhir_s;
28539 MenhirLib.EngineTypes.semv = Obj.repr _v;
28540 MenhirLib.EngineTypes.startp = _startpos;
28541 MenhirLib.EngineTypes.endp = _endpos;
28542 MenhirLib.EngineTypes.next = _menhir_stack;
28543 });
28544 (fun _menhir_env ->
28545 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28546 let {
28547 MenhirLib.EngineTypes.startp = _startpos__4_;
28548 MenhirLib.EngineTypes.endp = _endpos__4_;
28549 MenhirLib.EngineTypes.next = {
28550 MenhirLib.EngineTypes.semv = w;
28551 MenhirLib.EngineTypes.startp = _startpos_w_;
28552 MenhirLib.EngineTypes.endp = _endpos_w_;
28553 MenhirLib.EngineTypes.next = {
28554 MenhirLib.EngineTypes.startp = _startpos__2_;
28555 MenhirLib.EngineTypes.endp = _endpos__2_;
28556 MenhirLib.EngineTypes.next = {
28557 MenhirLib.EngineTypes.state = _menhir_s;
28558 MenhirLib.EngineTypes.startp = _startpos__1_;
28559 MenhirLib.EngineTypes.endp = _endpos__1_;
28560 MenhirLib.EngineTypes.next = _menhir_stack;
28561 };
28562 };
28563 };
28564 } = _menhir_stack in
28565 let w : 'tv_when_start = Obj.magic w in
28566 let _startpos = _startpos__1_ in
28567 let _endpos = _endpos__4_ in
28568 let _v : 'tv_whens_when_start_rule_elem_statement_ =
28569 # 1706 "parser_cocci_menhir.mly"
28570 ( [Ast0.WhenNot w] )
28571 # 28572 "parser_cocci_menhir.ml"
28572 in
28573 _menhir_env.MenhirLib.EngineTypes.stack <- {
28574 MenhirLib.EngineTypes.state = _menhir_s;
28575 MenhirLib.EngineTypes.semv = Obj.repr _v;
28576 MenhirLib.EngineTypes.startp = _startpos;
28577 MenhirLib.EngineTypes.endp = _endpos;
28578 MenhirLib.EngineTypes.next = _menhir_stack;
28579 });
28580 (fun _menhir_env ->
28581 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28582 let {
28583 MenhirLib.EngineTypes.startp = _startpos__4_;
28584 MenhirLib.EngineTypes.endp = _endpos__4_;
28585 MenhirLib.EngineTypes.next = {
28586 MenhirLib.EngineTypes.semv = w;
28587 MenhirLib.EngineTypes.startp = _startpos_w_;
28588 MenhirLib.EngineTypes.endp = _endpos_w_;
28589 MenhirLib.EngineTypes.next = {
28590 MenhirLib.EngineTypes.startp = _startpos__2_;
28591 MenhirLib.EngineTypes.endp = _endpos__2_;
28592 MenhirLib.EngineTypes.next = {
28593 MenhirLib.EngineTypes.state = _menhir_s;
28594 MenhirLib.EngineTypes.startp = _startpos__1_;
28595 MenhirLib.EngineTypes.endp = _endpos__1_;
28596 MenhirLib.EngineTypes.next = _menhir_stack;
28597 };
28598 };
28599 };
28600 } = _menhir_stack in
28601 let w : 'tv_rule_elem_statement = Obj.magic w in
28602 let _startpos = _startpos__1_ in
28603 let _endpos = _endpos__4_ in
28604 let _v : 'tv_whens_when_start_rule_elem_statement_ =
28605 # 1707 "parser_cocci_menhir.mly"
28606 ( [Ast0.WhenAlways w] )
28607 # 28608 "parser_cocci_menhir.ml"
28608 in
28609 _menhir_env.MenhirLib.EngineTypes.stack <- {
28610 MenhirLib.EngineTypes.state = _menhir_s;
28611 MenhirLib.EngineTypes.semv = Obj.repr _v;
28612 MenhirLib.EngineTypes.startp = _startpos;
28613 MenhirLib.EngineTypes.endp = _endpos;
28614 MenhirLib.EngineTypes.next = _menhir_stack;
28615 });
28616 (fun _menhir_env ->
28617 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28618 let {
28619 MenhirLib.EngineTypes.startp = _startpos__3_;
28620 MenhirLib.EngineTypes.endp = _endpos__3_;
28621 MenhirLib.EngineTypes.next = {
28622 MenhirLib.EngineTypes.semv = _2;
28623 MenhirLib.EngineTypes.startp = _startpos__2_;
28624 MenhirLib.EngineTypes.endp = _endpos__2_;
28625 MenhirLib.EngineTypes.next = {
28626 MenhirLib.EngineTypes.state = _menhir_s;
28627 MenhirLib.EngineTypes.startp = _startpos__1_;
28628 MenhirLib.EngineTypes.endp = _endpos__1_;
28629 MenhirLib.EngineTypes.next = _menhir_stack;
28630 };
28631 };
28632 } = _menhir_stack in
28633 let _2 : 'tv_comma_list_any_strict_ = Obj.magic _2 in
28634 let _startpos = _startpos__1_ in
28635 let _endpos = _endpos__3_ in
28636 let _v : 'tv_whens_when_start_rule_elem_statement_ =
28637 # 1709 "parser_cocci_menhir.mly"
28638 ( List.map (function x -> Ast0.WhenModifier(x)) _2 )
28639 # 28640 "parser_cocci_menhir.ml"
28640 in
28641 _menhir_env.MenhirLib.EngineTypes.stack <- {
28642 MenhirLib.EngineTypes.state = _menhir_s;
28643 MenhirLib.EngineTypes.semv = Obj.repr _v;
28644 MenhirLib.EngineTypes.startp = _startpos;
28645 MenhirLib.EngineTypes.endp = _endpos;
28646 MenhirLib.EngineTypes.next = _menhir_stack;
28647 });
28648 |]
28649
28650 let recovery =
28651 false
28652
28653 let trace =
28654 None
28655
28656 end)
28657
28658 let rec script_meta_main =
28659 fun lexer lexbuf ->
28660 (Obj.magic (MenhirInterpreter.entry 1479 lexer lexbuf) : (
28661 # 158 "parser_cocci_menhir.mly"
28662 (string * (string * string))
28663 # 28664 "parser_cocci_menhir.ml"
28664 ))
28665
28666 and rule_name =
28667 fun lexer lexbuf ->
28668 (Obj.magic (MenhirInterpreter.entry 1424 lexer lexbuf) : (
28669 # 152 "parser_cocci_menhir.mly"
28670 (Ast_cocci.rulename)
28671 # 28672 "parser_cocci_menhir.ml"
28672 ))
28673
28674 and reinit =
28675 fun lexer lexbuf ->
28676 (Obj.magic (MenhirInterpreter.entry 1422 lexer lexbuf) : (
28677 # 130 "parser_cocci_menhir.mly"
28678 (unit)
28679 # 28680 "parser_cocci_menhir.ml"
28680 ))
28681
28682 and plus_main =
28683 fun lexer lexbuf ->
28684 (Obj.magic (MenhirInterpreter.entry 1387 lexer lexbuf) : (
28685 # 139 "parser_cocci_menhir.mly"
28686 (Ast0_cocci.rule)
28687 # 28688 "parser_cocci_menhir.ml"
28688 ))
28689
28690 and plus_exp_main =
28691 fun lexer lexbuf ->
28692 (Obj.magic (MenhirInterpreter.entry 1378 lexer lexbuf) : (
28693 # 142 "parser_cocci_menhir.mly"
28694 (Ast0_cocci.rule)
28695 # 28696 "parser_cocci_menhir.ml"
28696 ))
28697
28698 and never_used =
28699 fun lexer lexbuf ->
28700 (Obj.magic (MenhirInterpreter.entry 1372 lexer lexbuf) : (
28701 # 167 "parser_cocci_menhir.mly"
28702 (unit)
28703 # 28704 "parser_cocci_menhir.ml"
28704 ))
28705
28706 and minus_main =
28707 fun lexer lexbuf ->
28708 (Obj.magic (MenhirInterpreter.entry 1301 lexer lexbuf) : (
28709 # 133 "parser_cocci_menhir.mly"
28710 (Ast0_cocci.rule)
28711 # 28712 "parser_cocci_menhir.ml"
28712 ))
28713
28714 and minus_exp_main =
28715 fun lexer lexbuf ->
28716 (Obj.magic (MenhirInterpreter.entry 1277 lexer lexbuf) : (
28717 # 136 "parser_cocci_menhir.mly"
28718 (Ast0_cocci.rule)
28719 # 28720 "parser_cocci_menhir.ml"
28720 ))
28721
28722 and meta_main =
28723 fun lexer lexbuf ->
28724 (Obj.magic (MenhirInterpreter.entry 1274 lexer lexbuf) : (
28725 # 156 "parser_cocci_menhir.mly"
28726 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
28727 # 28728 "parser_cocci_menhir.ml"
28728 ))
28729
28730 and iso_rule_name =
28731 fun lexer lexbuf ->
28732 (Obj.magic (MenhirInterpreter.entry 1270 lexer lexbuf) : (
28733 # 148 "parser_cocci_menhir.mly"
28734 (Ast_cocci.rulename)
28735 # 28736 "parser_cocci_menhir.ml"
28736 ))
28737
28738 and iso_meta_main =
28739 fun lexer lexbuf ->
28740 (Obj.magic (MenhirInterpreter.entry 1078 lexer lexbuf) : (
28741 # 164 "parser_cocci_menhir.mly"
28742 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
28743 # 28744 "parser_cocci_menhir.ml"
28744 ))
28745
28746 and iso_main =
28747 fun lexer lexbuf ->
28748 (Obj.magic (MenhirInterpreter.entry 10 lexer lexbuf) : (
28749 # 161 "parser_cocci_menhir.mly"
28750 (Ast0_cocci.anything list list)
28751 # 28752 "parser_cocci_menhir.ml"
28752 ))
28753
28754 and include_main =
28755 fun lexer lexbuf ->
28756 (Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : (
28757 # 145 "parser_cocci_menhir.mly"
28758 ((string,string) Common.either list)
28759 # 28760 "parser_cocci_menhir.ml"
28760 ))
28761
28762
28763