build administrativa
[m6w6/ext-psi] / src / parser_scan.c
1 /* Generated by re2c 1.1.1 on Mon Dec 3 17:01:05 2018 */
2 #line 1 "src/parser_scan.re"
3 /*******************************************************************************
4 Copyright (c) 2016, Michael Wallner <mike@php.net>.
5 All rights reserved.
6
7 Redistribution and use in source and binary forms, with or without
8 modification, are permitted provided that the following conditions are met:
9
10 * Redistributions of source code must retain the above copyright notice,
11 this list of conditions and the following disclaimer.
12 * Redistributions in binary form must reproduce the above copyright
13 notice, this list of conditions and the following disclaimer in the
14 documentation and/or other materials provided with the distribution.
15
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
20 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *******************************************************************************/
27
28 #ifdef HAVE_CONFIG_H
29 # include "config.h"
30 #else
31 # include "php_config.h"
32 #endif
33
34 #include "parser.h"
35 #include "plist.h"
36
37 #define YYMAXFILL 15
38
39 #ifndef YYMAXFILL
40 # define YYMAXFILL 256
41 #endif
42
43 size_t psi_parser_maxfill(void) {
44 return YYMAXFILL;
45 }
46
47 #define NEWLINE() \
48 eol = cur; \
49 ++I->lines
50
51 #define NEWTOKEN(t) do { \
52 if (t == PSI_T_COMMENT || t == PSI_T_WHITESPACE) { \
53 token = psi_token_init(t, "", 0, tok - eol + 1, I->lines, I->file); \
54 } else { \
55 token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \
56 } \
57 tokens = psi_plist_add(tokens, &token); \
58 PSI_DEBUG_PRINT(P, "PSI: scanned < "); \
59 PSI_DEBUG_DUMP(P, psi_token_dump, token); \
60 } while(0)
61
62 #define CHECKEOF() if (cur >= lim - YYMAXFILL) goto done
63
64 struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input *I)
65 {
66 struct psi_plist *tokens;
67 struct psi_token *token;
68 const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
69 unsigned parens;
70 bool escaped;
71 token_t char_width;
72
73 PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
74
75 tok = mrk = eol = cur = I->buffer;
76 lim = I->buffer + I->length + YYMAXFILL;
77 I->lines = 1;
78 tokens = psi_plist_init((psi_plist_dtor) psi_token_free);
79
80 start: ;
81 char_width = 1;
82 ctxmrk = NULL;
83 tok = cur;
84
85 (void) ctxmrk;
86
87
88 #line 89 "src/parser_scan.c"
89 {
90 unsigned char yych;
91 unsigned int yyaccept = 0;
92 if ((lim - cur) < 15) CHECKEOF();;
93 yych = *cur;
94 switch (yych) {
95 case 0x00:
96 case 0x01:
97 case 0x02:
98 case 0x03:
99 case 0x04:
100 case 0x05:
101 case 0x06:
102 case 0x07:
103 case 0x08:
104 case '\v':
105 case 0x0E:
106 case 0x0F:
107 case 0x10:
108 case 0x11:
109 case 0x12:
110 case 0x13:
111 case 0x14:
112 case 0x15:
113 case 0x16:
114 case 0x17:
115 case 0x18:
116 case 0x19:
117 case 0x1A:
118 case 0x1B:
119 case 0x1C:
120 case 0x1D:
121 case 0x1E:
122 case 0x1F:
123 case '@':
124 case '`':
125 case 0x7F: goto yy2;
126 case '\t':
127 case '\f':
128 case ' ': goto yy4;
129 case '\n':
130 case '\r': goto yy7;
131 case '!': goto yy9;
132 case '"': goto yy11;
133 case '#': goto yy13;
134 case '$': goto yy15;
135 case '%': goto yy16;
136 case '&': goto yy18;
137 case '\'': goto yy20;
138 case '(': goto yy22;
139 case ')': goto yy24;
140 case '*': goto yy26;
141 case '+': goto yy28;
142 case ',': goto yy30;
143 case '-': goto yy32;
144 case '.': goto yy34;
145 case '/': goto yy36;
146 case '0': goto yy38;
147 case '1':
148 case '2':
149 case '3':
150 case '4':
151 case '5':
152 case '6':
153 case '7':
154 case '8':
155 case '9': goto yy40;
156 case ':': goto yy42;
157 case ';': goto yy44;
158 case '<': goto yy46;
159 case '=': goto yy48;
160 case '>': goto yy50;
161 case '?': goto yy52;
162 case 'A':
163 case 'a': goto yy54;
164 case 'B': goto yy56;
165 case 'C': goto yy57;
166 case 'D': goto yy58;
167 case 'E': goto yy59;
168 case 'F': goto yy60;
169 case 'I': goto yy63;
170 case 'L': goto yy64;
171 case 'M':
172 case 'm': goto yy65;
173 case 'N':
174 case 'n': goto yy66;
175 case 'O':
176 case 'o': goto yy67;
177 case 'P': goto yy68;
178 case 'R':
179 case 'r': goto yy69;
180 case 'S': goto yy70;
181 case 'T': goto yy71;
182 case 'U': goto yy72;
183 case 'W':
184 case 'w': goto yy73;
185 case 'Z':
186 case 'z': goto yy74;
187 case '[': goto yy75;
188 case '\\': goto yy77;
189 case ']': goto yy79;
190 case '^': goto yy81;
191 case '_': goto yy83;
192 case 'b': goto yy84;
193 case 'c': goto yy85;
194 case 'd': goto yy86;
195 case 'e': goto yy87;
196 case 'f': goto yy88;
197 case 'i': goto yy89;
198 case 'l': goto yy90;
199 case 'p': goto yy91;
200 case 's': goto yy92;
201 case 't': goto yy93;
202 case 'u': goto yy94;
203 case 'v': goto yy95;
204 case '{': goto yy96;
205 case '|': goto yy98;
206 case '}': goto yy100;
207 case '~': goto yy102;
208 default: goto yy61;
209 }
210 yy2:
211 ++cur;
212 yy3:
213 #line 254 "src/parser_scan.re"
214 { CHECKEOF(); NEWTOKEN(-2); goto error; }
215 #line 216 "src/parser_scan.c"
216 yy4:
217 ++cur;
218 if (lim <= cur) CHECKEOF();;
219 yych = *cur;
220 switch (yych) {
221 case '\t':
222 case '\f':
223 case ' ': goto yy4;
224 default: goto yy6;
225 }
226 yy6:
227 #line 253 "src/parser_scan.re"
228 { NEWTOKEN(PSI_T_WHITESPACE); goto start; }
229 #line 230 "src/parser_scan.c"
230 yy7:
231 ++cur;
232 #line 252 "src/parser_scan.re"
233 { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
234 #line 235 "src/parser_scan.c"
235 yy9:
236 yych = *++cur;
237 switch (yych) {
238 case '=': goto yy104;
239 default: goto yy10;
240 }
241 yy10:
242 #line 155 "src/parser_scan.re"
243 { NEWTOKEN(PSI_T_NOT); goto start; }
244 #line 245 "src/parser_scan.c"
245 yy11:
246 ++cur;
247 #line 128 "src/parser_scan.re"
248 { escaped = false; tok += 1; goto string; }
249 #line 250 "src/parser_scan.c"
250 yy13:
251 yych = *++cur;
252 switch (yych) {
253 case '#': goto yy106;
254 default: goto yy14;
255 }
256 yy14:
257 #line 138 "src/parser_scan.re"
258 { NEWTOKEN(PSI_T_HASH); goto start; }
259 #line 260 "src/parser_scan.c"
260 yy15:
261 yych = *++cur;
262 switch (yych) {
263 case 0x00:
264 case 0x01:
265 case 0x02:
266 case 0x03:
267 case 0x04:
268 case 0x05:
269 case 0x06:
270 case 0x07:
271 case 0x08:
272 case '\t':
273 case '\n':
274 case '\v':
275 case '\f':
276 case '\r':
277 case 0x0E:
278 case 0x0F:
279 case 0x10:
280 case 0x11:
281 case 0x12:
282 case 0x13:
283 case 0x14:
284 case 0x15:
285 case 0x16:
286 case 0x17:
287 case 0x18:
288 case 0x19:
289 case 0x1A:
290 case 0x1B:
291 case 0x1C:
292 case 0x1D:
293 case 0x1E:
294 case 0x1F:
295 case ' ':
296 case '!':
297 case '"':
298 case '#':
299 case '$':
300 case '%':
301 case '&':
302 case '\'':
303 case '(':
304 case ')':
305 case '*':
306 case '+':
307 case ',':
308 case '-':
309 case '.':
310 case '/':
311 case ':':
312 case ';':
313 case '<':
314 case '=':
315 case '>':
316 case '?':
317 case '@':
318 case '[':
319 case '\\':
320 case ']':
321 case '^':
322 case '`':
323 case '{':
324 case '|':
325 case '}':
326 case '~':
327 case 0x7F: goto yy3;
328 default: goto yy108;
329 }
330 yy16:
331 ++cur;
332 #line 156 "src/parser_scan.re"
333 { NEWTOKEN(PSI_T_MODULO); goto start; }
334 #line 335 "src/parser_scan.c"
335 yy18:
336 yych = *++cur;
337 switch (yych) {
338 case '&': goto yy111;
339 default: goto yy19;
340 }
341 yy19:
342 #line 157 "src/parser_scan.re"
343 { NEWTOKEN(PSI_T_AMPERSAND); goto start; }
344 #line 345 "src/parser_scan.c"
345 yy20:
346 ++cur;
347 #line 127 "src/parser_scan.re"
348 { escaped = false; tok += 1; goto character; }
349 #line 350 "src/parser_scan.c"
350 yy22:
351 ++cur;
352 #line 139 "src/parser_scan.re"
353 { NEWTOKEN(PSI_T_LPAREN); goto start; }
354 #line 355 "src/parser_scan.c"
355 yy24:
356 ++cur;
357 #line 140 "src/parser_scan.re"
358 { NEWTOKEN(PSI_T_RPAREN); goto start; }
359 #line 360 "src/parser_scan.c"
360 yy26:
361 ++cur;
362 #line 153 "src/parser_scan.re"
363 { NEWTOKEN(PSI_T_ASTERISK); goto start; }
364 #line 365 "src/parser_scan.c"
365 yy28:
366 ++cur;
367 #line 158 "src/parser_scan.re"
368 { NEWTOKEN(PSI_T_PLUS); goto start; }
369 #line 370 "src/parser_scan.c"
370 yy30:
371 ++cur;
372 #line 142 "src/parser_scan.re"
373 { NEWTOKEN(PSI_T_COMMA); goto start; }
374 #line 375 "src/parser_scan.c"
375 yy32:
376 ++cur;
377 #line 159 "src/parser_scan.re"
378 { NEWTOKEN(PSI_T_MINUS); goto start; }
379 #line 380 "src/parser_scan.c"
380 yy34:
381 yyaccept = 0;
382 yych = *(mrk = ++cur);
383 switch (yych) {
384 case '.': goto yy113;
385 case '0':
386 case '1':
387 case '2':
388 case '3':
389 case '4':
390 case '5':
391 case '6':
392 case '7':
393 case '8':
394 case '9': goto yy115;
395 default: goto yy35;
396 }
397 yy35:
398 #line 170 "src/parser_scan.re"
399 { NEWTOKEN(PSI_T_PERIOD); goto start; }
400 #line 401 "src/parser_scan.c"
401 yy36:
402 yych = *++cur;
403 switch (yych) {
404 case '*': goto yy118;
405 case '/': goto yy120;
406 default: goto yy37;
407 }
408 yy37:
409 #line 160 "src/parser_scan.re"
410 { NEWTOKEN(PSI_T_SLASH); goto start; }
411 #line 412 "src/parser_scan.c"
412 yy38:
413 yyaccept = 1;
414 yych = *(mrk = ++cur);
415 switch (yych) {
416 case '.': goto yy122;
417 case 'E':
418 case 'e': goto yy126;
419 case 'X':
420 case 'x': goto yy131;
421 default: goto yy125;
422 }
423 yy39:
424 #line 114 "src/parser_scan.re"
425 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; }
426 #line 427 "src/parser_scan.c"
427 yy40:
428 yyaccept = 1;
429 mrk = ++cur;
430 if ((lim - cur) < 3) CHECKEOF();;
431 yych = *cur;
432 switch (yych) {
433 case '.': goto yy122;
434 case '0':
435 case '1':
436 case '2':
437 case '3':
438 case '4':
439 case '5':
440 case '6':
441 case '7':
442 case '8':
443 case '9': goto yy40;
444 case 'E':
445 case 'e': goto yy126;
446 case 'L':
447 case 'l': goto yy127;
448 case 'U':
449 case 'u': goto yy129;
450 default: goto yy39;
451 }
452 yy42:
453 ++cur;
454 #line 143 "src/parser_scan.re"
455 { NEWTOKEN(PSI_T_COLON); goto start; }
456 #line 457 "src/parser_scan.c"
457 yy44:
458 ++cur;
459 #line 141 "src/parser_scan.re"
460 { NEWTOKEN(PSI_T_EOS); goto start; }
461 #line 462 "src/parser_scan.c"
462 yy46:
463 yyaccept = 2;
464 yych = *(mrk = ++cur);
465 switch (yych) {
466 case '-':
467 case '.':
468 case '/':
469 case '0':
470 case '1':
471 case '2':
472 case '3':
473 case '4':
474 case '5':
475 case '6':
476 case '7':
477 case '8':
478 case '9':
479 case 'A':
480 case 'B':
481 case 'C':
482 case 'D':
483 case 'E':
484 case 'F':
485 case 'G':
486 case 'H':
487 case 'I':
488 case 'J':
489 case 'K':
490 case 'L':
491 case 'M':
492 case 'N':
493 case 'O':
494 case 'P':
495 case 'Q':
496 case 'R':
497 case 'S':
498 case 'T':
499 case 'U':
500 case 'V':
501 case 'W':
502 case 'X':
503 case 'Y':
504 case 'Z':
505 case '_':
506 case 'a':
507 case 'b':
508 case 'c':
509 case 'd':
510 case 'e':
511 case 'f':
512 case 'g':
513 case 'h':
514 case 'i':
515 case 'j':
516 case 'k':
517 case 'l':
518 case 'm':
519 case 'n':
520 case 'o':
521 case 'p':
522 case 'q':
523 case 'r':
524 case 's':
525 case 't':
526 case 'u':
527 case 'v':
528 case 'w':
529 case 'x':
530 case 'y':
531 case 'z': goto yy132;
532 case '<': goto yy134;
533 case '=': goto yy136;
534 default: goto yy47;
535 }
536 yy47:
537 #line 168 "src/parser_scan.re"
538 { NEWTOKEN(PSI_T_LCHEVR); goto start; }
539 #line 540 "src/parser_scan.c"
540 yy48:
541 yych = *++cur;
542 switch (yych) {
543 case '=': goto yy138;
544 default: goto yy49;
545 }
546 yy49:
547 #line 152 "src/parser_scan.re"
548 { NEWTOKEN(PSI_T_EQUALS); goto start; }
549 #line 550 "src/parser_scan.c"
550 yy50:
551 yych = *++cur;
552 switch (yych) {
553 case '=': goto yy140;
554 case '>': goto yy142;
555 default: goto yy51;
556 }
557 yy51:
558 #line 169 "src/parser_scan.re"
559 { NEWTOKEN(PSI_T_RCHEVR); goto start; }
560 #line 561 "src/parser_scan.c"
561 yy52:
562 ++cur;
563 #line 172 "src/parser_scan.re"
564 { NEWTOKEN(PSI_T_IIF); goto start; }
565 #line 566 "src/parser_scan.c"
566 yy54:
567 yyaccept = 3;
568 yych = *(mrk = ++cur);
569 switch (yych) {
570 case 'R':
571 case 'r': goto yy144;
572 case 'S':
573 case 's': goto yy145;
574 default: goto yy62;
575 }
576 yy55:
577 #line 247 "src/parser_scan.re"
578 { NEWTOKEN(PSI_T_NAME); goto start; }
579 #line 580 "src/parser_scan.c"
580 yy56:
581 yyaccept = 3;
582 yych = *(mrk = ++cur);
583 switch (yych) {
584 case 'O':
585 case 'o': goto yy148;
586 default: goto yy62;
587 }
588 yy57:
589 yyaccept = 3;
590 yych = *(mrk = ++cur);
591 switch (yych) {
592 case 'A':
593 case 'a': goto yy149;
594 case 'O':
595 case 'o': goto yy150;
596 default: goto yy62;
597 }
598 yy58:
599 yyaccept = 3;
600 yych = *(mrk = ++cur);
601 switch (yych) {
602 case 'E':
603 case 'e': goto yy151;
604 default: goto yy62;
605 }
606 yy59:
607 yyaccept = 3;
608 yych = *(mrk = ++cur);
609 switch (yych) {
610 case 'L':
611 case 'l': goto yy152;
612 case 'N':
613 case 'n': goto yy153;
614 case 'R':
615 case 'r': goto yy154;
616 default: goto yy62;
617 }
618 yy60:
619 yyaccept = 3;
620 yych = *(mrk = ++cur);
621 switch (yych) {
622 case 'A':
623 case 'a': goto yy155;
624 case 'L':
625 case 'l': goto yy156;
626 case 'R':
627 case 'r': goto yy157;
628 case 'U':
629 case 'u': goto yy158;
630 default: goto yy62;
631 }
632 yy61:
633 yyaccept = 3;
634 mrk = ++cur;
635 if (lim <= cur) CHECKEOF();;
636 yych = *cur;
637 yy62:
638 switch (yych) {
639 case 0x00:
640 case 0x01:
641 case 0x02:
642 case 0x03:
643 case 0x04:
644 case 0x05:
645 case 0x06:
646 case 0x07:
647 case 0x08:
648 case '\t':
649 case '\n':
650 case '\v':
651 case '\f':
652 case '\r':
653 case 0x0E:
654 case 0x0F:
655 case 0x10:
656 case 0x11:
657 case 0x12:
658 case 0x13:
659 case 0x14:
660 case 0x15:
661 case 0x16:
662 case 0x17:
663 case 0x18:
664 case 0x19:
665 case 0x1A:
666 case 0x1B:
667 case 0x1C:
668 case 0x1D:
669 case 0x1E:
670 case 0x1F:
671 case ' ':
672 case '!':
673 case '"':
674 case '#':
675 case '$':
676 case '%':
677 case '&':
678 case '\'':
679 case '(':
680 case ')':
681 case '*':
682 case '+':
683 case ',':
684 case '-':
685 case '.':
686 case '/':
687 case ':':
688 case ';':
689 case '<':
690 case '=':
691 case '>':
692 case '?':
693 case '@':
694 case '[':
695 case ']':
696 case '^':
697 case '`':
698 case '{':
699 case '|':
700 case '}':
701 case '~':
702 case 0x7F: goto yy55;
703 case '\\': goto yy147;
704 default: goto yy61;
705 }
706 yy63:
707 yyaccept = 3;
708 yych = *(mrk = ++cur);
709 switch (yych) {
710 case 'F':
711 case 'f': goto yy159;
712 case 'N':
713 case 'n': goto yy161;
714 default: goto yy62;
715 }
716 yy64:
717 yyaccept = 3;
718 yych = *(mrk = ++cur);
719 switch (yych) {
720 case '"':
721 case '\'': goto yy162;
722 case 'E':
723 case 'e': goto yy164;
724 case 'I':
725 case 'i': goto yy165;
726 default: goto yy62;
727 }
728 yy65:
729 yyaccept = 3;
730 yych = *(mrk = ++cur);
731 switch (yych) {
732 case 'I':
733 case 'i': goto yy166;
734 default: goto yy62;
735 }
736 yy66:
737 yyaccept = 3;
738 yych = *(mrk = ++cur);
739 switch (yych) {
740 case 'U':
741 case 'u': goto yy167;
742 default: goto yy62;
743 }
744 yy67:
745 yyaccept = 3;
746 yych = *(mrk = ++cur);
747 switch (yych) {
748 case 'B':
749 case 'b': goto yy168;
750 default: goto yy62;
751 }
752 yy68:
753 yyaccept = 3;
754 yych = *(mrk = ++cur);
755 switch (yych) {
756 case 'A':
757 case 'a': goto yy169;
758 case 'O':
759 case 'o': goto yy170;
760 case 'R':
761 case 'r': goto yy171;
762 default: goto yy62;
763 }
764 yy69:
765 yyaccept = 3;
766 yych = *(mrk = ++cur);
767 switch (yych) {
768 case 'E':
769 case 'e': goto yy172;
770 default: goto yy62;
771 }
772 yy70:
773 yyaccept = 3;
774 yych = *(mrk = ++cur);
775 switch (yych) {
776 case 'E':
777 case 'e': goto yy173;
778 case 'T':
779 case 't': goto yy174;
780 default: goto yy62;
781 }
782 yy71:
783 yyaccept = 3;
784 yych = *(mrk = ++cur);
785 switch (yych) {
786 case 'E':
787 case 'e': goto yy175;
788 case 'O':
789 case 'o': goto yy176;
790 case 'R':
791 case 'r': goto yy177;
792 default: goto yy62;
793 }
794 yy72:
795 yyaccept = 3;
796 yych = *(mrk = ++cur);
797 switch (yych) {
798 case '"':
799 case '\'': goto yy178;
800 case 'N':
801 case 'n': goto yy180;
802 default: goto yy62;
803 }
804 yy73:
805 yyaccept = 3;
806 yych = *(mrk = ++cur);
807 switch (yych) {
808 case 'A':
809 case 'a': goto yy181;
810 default: goto yy62;
811 }
812 yy74:
813 yyaccept = 3;
814 yych = *(mrk = ++cur);
815 switch (yych) {
816 case 'V':
817 case 'v': goto yy182;
818 default: goto yy62;
819 }
820 yy75:
821 ++cur;
822 #line 146 "src/parser_scan.re"
823 { NEWTOKEN(PSI_T_LBRACKET); goto start; }
824 #line 825 "src/parser_scan.c"
825 yy77:
826 yych = *++cur;
827 switch (yych) {
828 case 0x00:
829 case 0x01:
830 case 0x02:
831 case 0x03:
832 case 0x04:
833 case 0x05:
834 case 0x06:
835 case 0x07:
836 case 0x08:
837 case '\t':
838 case '\n':
839 case '\v':
840 case '\f':
841 case '\r':
842 case 0x0E:
843 case 0x0F:
844 case 0x10:
845 case 0x11:
846 case 0x12:
847 case 0x13:
848 case 0x14:
849 case 0x15:
850 case 0x16:
851 case 0x17:
852 case 0x18:
853 case 0x19:
854 case 0x1A:
855 case 0x1B:
856 case 0x1C:
857 case 0x1D:
858 case 0x1E:
859 case 0x1F:
860 case ' ':
861 case '!':
862 case '"':
863 case '#':
864 case '$':
865 case '%':
866 case '&':
867 case '\'':
868 case '(':
869 case ')':
870 case '*':
871 case '+':
872 case ',':
873 case '-':
874 case '.':
875 case '/':
876 case '0':
877 case '1':
878 case '2':
879 case '3':
880 case '4':
881 case '5':
882 case '6':
883 case '7':
884 case '8':
885 case '9':
886 case ':':
887 case ';':
888 case '<':
889 case '=':
890 case '>':
891 case '?':
892 case '@':
893 case '[':
894 case '\\':
895 case ']':
896 case '^':
897 case '`':
898 case '{':
899 case '|':
900 case '}':
901 case '~':
902 case 0x7F: goto yy78;
903 default: goto yy183;
904 }
905 yy78:
906 #line 161 "src/parser_scan.re"
907 { NEWTOKEN(PSI_T_BSLASH); goto start; }
908 #line 909 "src/parser_scan.c"
909 yy79:
910 ++cur;
911 #line 147 "src/parser_scan.re"
912 { NEWTOKEN(PSI_T_RBRACKET); goto start; }
913 #line 914 "src/parser_scan.c"
914 yy81:
915 ++cur;
916 #line 163 "src/parser_scan.re"
917 { NEWTOKEN(PSI_T_CARET); goto start; }
918 #line 919 "src/parser_scan.c"
919 yy83:
920 yyaccept = 3;
921 yych = *(mrk = ++cur);
922 switch (yych) {
923 case '_': goto yy186;
924 default: goto yy62;
925 }
926 yy84:
927 yyaccept = 3;
928 yych = *(mrk = ++cur);
929 switch (yych) {
930 case 'O': goto yy148;
931 case 'o': goto yy187;
932 default: goto yy62;
933 }
934 yy85:
935 yyaccept = 3;
936 yych = *(mrk = ++cur);
937 switch (yych) {
938 case 'A':
939 case 'a': goto yy149;
940 case 'O': goto yy150;
941 case 'h': goto yy188;
942 case 'o': goto yy189;
943 default: goto yy62;
944 }
945 yy86:
946 yyaccept = 3;
947 yych = *(mrk = ++cur);
948 switch (yych) {
949 case 'E':
950 case 'e': goto yy151;
951 case 'o': goto yy190;
952 default: goto yy62;
953 }
954 yy87:
955 yyaccept = 3;
956 yych = *(mrk = ++cur);
957 switch (yych) {
958 case 'L':
959 case 'l': goto yy152;
960 case 'N': goto yy153;
961 case 'R':
962 case 'r': goto yy154;
963 case 'n': goto yy191;
964 default: goto yy62;
965 }
966 yy88:
967 yyaccept = 3;
968 yych = *(mrk = ++cur);
969 switch (yych) {
970 case 'A':
971 case 'a': goto yy155;
972 case 'L': goto yy156;
973 case 'R':
974 case 'r': goto yy157;
975 case 'U':
976 case 'u': goto yy158;
977 case 'l': goto yy192;
978 default: goto yy62;
979 }
980 yy89:
981 yyaccept = 3;
982 yych = *(mrk = ++cur);
983 switch (yych) {
984 case 'F':
985 case 'f': goto yy159;
986 case 'N': goto yy161;
987 case 'n': goto yy193;
988 default: goto yy62;
989 }
990 yy90:
991 yyaccept = 3;
992 yych = *(mrk = ++cur);
993 switch (yych) {
994 case 'E':
995 case 'e': goto yy164;
996 case 'I': goto yy165;
997 case 'i': goto yy194;
998 case 'o': goto yy195;
999 default: goto yy62;
1000 }
1001 yy91:
1002 yyaccept = 3;
1003 yych = *(mrk = ++cur);
1004 switch (yych) {
1005 case 'A':
1006 case 'a': goto yy169;
1007 case 'O':
1008 case 'o': goto yy170;
1009 case 'R': goto yy171;
1010 case 'r': goto yy196;
1011 default: goto yy62;
1012 }
1013 yy92:
1014 yyaccept = 3;
1015 yych = *(mrk = ++cur);
1016 switch (yych) {
1017 case 'E':
1018 case 'e': goto yy173;
1019 case 'T': goto yy174;
1020 case 'h': goto yy197;
1021 case 'i': goto yy198;
1022 case 't': goto yy199;
1023 default: goto yy62;
1024 }
1025 yy93:
1026 yyaccept = 3;
1027 yych = *(mrk = ++cur);
1028 switch (yych) {
1029 case 'E':
1030 case 'e': goto yy175;
1031 case 'O':
1032 case 'o': goto yy176;
1033 case 'R':
1034 case 'r': goto yy177;
1035 case 'y': goto yy200;
1036 default: goto yy62;
1037 }
1038 yy94:
1039 yyaccept = 3;
1040 yych = *(mrk = ++cur);
1041 switch (yych) {
1042 case '"':
1043 case '\'': goto yy201;
1044 case '8': goto yy203;
1045 case 'N': goto yy180;
1046 case 'n': goto yy204;
1047 default: goto yy62;
1048 }
1049 yy95:
1050 yyaccept = 3;
1051 yych = *(mrk = ++cur);
1052 switch (yych) {
1053 case 'o': goto yy205;
1054 default: goto yy62;
1055 }
1056 yy96:
1057 ++cur;
1058 #line 144 "src/parser_scan.re"
1059 { NEWTOKEN(PSI_T_LBRACE); goto start; }
1060 #line 1061 "src/parser_scan.c"
1061 yy98:
1062 yych = *++cur;
1063 switch (yych) {
1064 case '|': goto yy206;
1065 default: goto yy99;
1066 }
1067 yy99:
1068 #line 162 "src/parser_scan.re"
1069 { NEWTOKEN(PSI_T_PIPE); goto start; }
1070 #line 1071 "src/parser_scan.c"
1071 yy100:
1072 ++cur;
1073 #line 145 "src/parser_scan.re"
1074 { NEWTOKEN(PSI_T_RBRACE); goto start; }
1075 #line 1076 "src/parser_scan.c"
1076 yy102:
1077 ++cur;
1078 #line 154 "src/parser_scan.re"
1079 { NEWTOKEN(PSI_T_TILDE); goto start; }
1080 #line 1081 "src/parser_scan.c"
1081 yy104:
1082 ++cur;
1083 #line 148 "src/parser_scan.re"
1084 { NEWTOKEN(PSI_T_CMP_NE); goto start; }
1085 #line 1086 "src/parser_scan.c"
1086 yy106:
1087 ++cur;
1088 #line 137 "src/parser_scan.re"
1089 { NEWTOKEN(PSI_T_CPP_PASTE); goto start; }
1090 #line 1091 "src/parser_scan.c"
1091 yy108:
1092 ++cur;
1093 if (lim <= cur) CHECKEOF();;
1094 yych = *cur;
1095 switch (yych) {
1096 case 0x00:
1097 case 0x01:
1098 case 0x02:
1099 case 0x03:
1100 case 0x04:
1101 case 0x05:
1102 case 0x06:
1103 case 0x07:
1104 case 0x08:
1105 case '\t':
1106 case '\n':
1107 case '\v':
1108 case '\f':
1109 case '\r':
1110 case 0x0E:
1111 case 0x0F:
1112 case 0x10:
1113 case 0x11:
1114 case 0x12:
1115 case 0x13:
1116 case 0x14:
1117 case 0x15:
1118 case 0x16:
1119 case 0x17:
1120 case 0x18:
1121 case 0x19:
1122 case 0x1A:
1123 case 0x1B:
1124 case 0x1C:
1125 case 0x1D:
1126 case 0x1E:
1127 case 0x1F:
1128 case ' ':
1129 case '!':
1130 case '"':
1131 case '#':
1132 case '$':
1133 case '%':
1134 case '&':
1135 case '\'':
1136 case '(':
1137 case ')':
1138 case '*':
1139 case '+':
1140 case ',':
1141 case '-':
1142 case '.':
1143 case '/':
1144 case ':':
1145 case ';':
1146 case '<':
1147 case '=':
1148 case '>':
1149 case '?':
1150 case '@':
1151 case '[':
1152 case '\\':
1153 case ']':
1154 case '^':
1155 case '`':
1156 case '{':
1157 case '|':
1158 case '}':
1159 case '~':
1160 case 0x7F: goto yy110;
1161 default: goto yy108;
1162 }
1163 yy110:
1164 #line 249 "src/parser_scan.re"
1165 { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; }
1166 #line 1167 "src/parser_scan.c"
1167 yy111:
1168 ++cur;
1169 #line 150 "src/parser_scan.re"
1170 { NEWTOKEN(PSI_T_AND); goto start; }
1171 #line 1172 "src/parser_scan.c"
1172 yy113:
1173 yych = *++cur;
1174 switch (yych) {
1175 case '.': goto yy208;
1176 default: goto yy114;
1177 }
1178 yy114:
1179 cur = mrk;
1180 switch (yyaccept) {
1181 case 0: goto yy35;
1182 case 1: goto yy39;
1183 case 2: goto yy47;
1184 case 3: goto yy55;
1185 case 4: goto yy117;
1186 case 5: goto yy128;
1187 case 6: goto yy146;
1188 case 7: goto yy160;
1189 case 8: goto yy185;
1190 case 9: goto yy242;
1191 case 10: goto yy244;
1192 case 11: goto yy253;
1193 case 12: goto yy274;
1194 case 13: goto yy306;
1195 case 14: goto yy308;
1196 case 15: goto yy314;
1197 case 16: goto yy322;
1198 case 17: goto yy334;
1199 case 18: goto yy342;
1200 case 19: goto yy346;
1201 case 20: goto yy353;
1202 case 21: goto yy355;
1203 case 22: goto yy359;
1204 case 23: goto yy363;
1205 case 24: goto yy365;
1206 case 25: goto yy375;
1207 case 26: goto yy378;
1208 case 27: goto yy385;
1209 case 28: goto yy388;
1210 case 29: goto yy390;
1211 case 30: goto yy392;
1212 case 31: goto yy396;
1213 case 32: goto yy401;
1214 case 33: goto yy419;
1215 case 34: goto yy422;
1216 case 35: goto yy427;
1217 case 36: goto yy430;
1218 case 37: goto yy434;
1219 case 38: goto yy440;
1220 case 39: goto yy444;
1221 case 40: goto yy449;
1222 case 41: goto yy451;
1223 case 42: goto yy455;
1224 case 43: goto yy458;
1225 case 44: goto yy460;
1226 case 45: goto yy462;
1227 case 46: goto yy467;
1228 case 47: goto yy469;
1229 case 48: goto yy471;
1230 case 49: goto yy473;
1231 case 50: goto yy475;
1232 case 51: goto yy480;
1233 case 52: goto yy489;
1234 case 53: goto yy491;
1235 case 54: goto yy493;
1236 case 55: goto yy495;
1237 case 56: goto yy497;
1238 case 57: goto yy499;
1239 case 58: goto yy504;
1240 case 59: goto yy508;
1241 case 60: goto yy512;
1242 case 61: goto yy514;
1243 case 62: goto yy519;
1244 case 63: goto yy524;
1245 case 64: goto yy532;
1246 case 65: goto yy536;
1247 case 66: goto yy538;
1248 case 67: goto yy540;
1249 case 68: goto yy542;
1250 case 69: goto yy547;
1251 case 70: goto yy549;
1252 case 71: goto yy558;
1253 case 72: goto yy560;
1254 case 73: goto yy565;
1255 case 74: goto yy567;
1256 case 75: goto yy575;
1257 case 76: goto yy579;
1258 case 77: goto yy583;
1259 case 78: goto yy587;
1260 case 79: goto yy589;
1261 default: goto yy594;
1262 }
1263 yy115:
1264 yyaccept = 4;
1265 mrk = ++cur;
1266 if ((lim - cur) < 2) CHECKEOF();;
1267 yych = *cur;
1268 switch (yych) {
1269 case '0':
1270 case '1':
1271 case '2':
1272 case '3':
1273 case '4':
1274 case '5':
1275 case '6':
1276 case '7':
1277 case '8':
1278 case '9': goto yy115;
1279 case 'D':
1280 case 'd': goto yy210;
1281 case 'F':
1282 case 'f': goto yy211;
1283 case 'L':
1284 case 'l': goto yy213;
1285 default: goto yy117;
1286 }
1287 yy117:
1288 #line 120 "src/parser_scan.re"
1289 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
1290 #line 1291 "src/parser_scan.c"
1291 yy118:
1292 ++cur;
1293 #line 134 "src/parser_scan.re"
1294 { goto comment; }
1295 #line 1296 "src/parser_scan.c"
1296 yy120:
1297 ++cur;
1298 #line 135 "src/parser_scan.re"
1299 { goto comment_sl; }
1300 #line 1301 "src/parser_scan.c"
1301 yy122:
1302 yyaccept = 4;
1303 mrk = ++cur;
1304 if ((lim - cur) < 3) CHECKEOF();;
1305 yych = *cur;
1306 switch (yych) {
1307 case '0':
1308 case '1':
1309 case '2':
1310 case '3':
1311 case '4':
1312 case '5':
1313 case '6':
1314 case '7':
1315 case '8':
1316 case '9': goto yy122;
1317 case 'D':
1318 case 'd': goto yy210;
1319 case 'E':
1320 case 'e': goto yy126;
1321 case 'F':
1322 case 'f': goto yy211;
1323 case 'L':
1324 case 'l': goto yy213;
1325 default: goto yy117;
1326 }
1327 yy124:
1328 ++cur;
1329 if ((lim - cur) < 3) CHECKEOF();;
1330 yych = *cur;
1331 yy125:
1332 switch (yych) {
1333 case '0':
1334 case '1':
1335 case '2':
1336 case '3':
1337 case '4':
1338 case '5':
1339 case '6':
1340 case '7': goto yy124;
1341 case 'L':
1342 case 'l': goto yy127;
1343 case 'U':
1344 case 'u': goto yy129;
1345 default: goto yy39;
1346 }
1347 yy126:
1348 yych = *++cur;
1349 switch (yych) {
1350 case '+':
1351 case '-': goto yy215;
1352 case '0':
1353 case '1':
1354 case '2':
1355 case '3':
1356 case '4':
1357 case '5':
1358 case '6':
1359 case '7':
1360 case '8':
1361 case '9': goto yy115;
1362 default: goto yy114;
1363 }
1364 yy127:
1365 yyaccept = 5;
1366 yych = *(mrk = ++cur);
1367 switch (yych) {
1368 case 'L':
1369 case 'l': goto yy216;
1370 case 'U':
1371 case 'u': goto yy217;
1372 default: goto yy128;
1373 }
1374 yy128:
1375 cur -= 1;
1376 #line 116 "src/parser_scan.re"
1377 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
1378 #line 1379 "src/parser_scan.c"
1379 yy129:
1380 yych = *++cur;
1381 switch (yych) {
1382 case 'L':
1383 case 'l': goto yy219;
1384 default: goto yy130;
1385 }
1386 yy130:
1387 cur -= 1;
1388 #line 115 "src/parser_scan.re"
1389 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
1390 #line 1391 "src/parser_scan.c"
1391 yy131:
1392 yych = *++cur;
1393 switch (yych) {
1394 case '0':
1395 case '1':
1396 case '2':
1397 case '3':
1398 case '4':
1399 case '5':
1400 case '6':
1401 case '7':
1402 case '8':
1403 case '9':
1404 case 'A':
1405 case 'B':
1406 case 'C':
1407 case 'D':
1408 case 'E':
1409 case 'F':
1410 case 'a':
1411 case 'b':
1412 case 'c':
1413 case 'd':
1414 case 'e':
1415 case 'f': goto yy220;
1416 default: goto yy114;
1417 }
1418 yy132:
1419 ++cur;
1420 if (lim <= cur) CHECKEOF();;
1421 yych = *cur;
1422 switch (yych) {
1423 case '-':
1424 case '.':
1425 case '/':
1426 case '0':
1427 case '1':
1428 case '2':
1429 case '3':
1430 case '4':
1431 case '5':
1432 case '6':
1433 case '7':
1434 case '8':
1435 case '9':
1436 case 'A':
1437 case 'B':
1438 case 'C':
1439 case 'D':
1440 case 'E':
1441 case 'F':
1442 case 'G':
1443 case 'H':
1444 case 'I':
1445 case 'J':
1446 case 'K':
1447 case 'L':
1448 case 'M':
1449 case 'N':
1450 case 'O':
1451 case 'P':
1452 case 'Q':
1453 case 'R':
1454 case 'S':
1455 case 'T':
1456 case 'U':
1457 case 'V':
1458 case 'W':
1459 case 'X':
1460 case 'Y':
1461 case 'Z':
1462 case '_':
1463 case 'a':
1464 case 'b':
1465 case 'c':
1466 case 'd':
1467 case 'e':
1468 case 'f':
1469 case 'g':
1470 case 'h':
1471 case 'i':
1472 case 'j':
1473 case 'k':
1474 case 'l':
1475 case 'm':
1476 case 'n':
1477 case 'o':
1478 case 'p':
1479 case 'q':
1480 case 'r':
1481 case 's':
1482 case 't':
1483 case 'u':
1484 case 'v':
1485 case 'w':
1486 case 'x':
1487 case 'y':
1488 case 'z': goto yy132;
1489 case '>': goto yy222;
1490 default: goto yy114;
1491 }
1492 yy134:
1493 ++cur;
1494 #line 164 "src/parser_scan.re"
1495 { NEWTOKEN(PSI_T_LSHIFT); goto start; }
1496 #line 1497 "src/parser_scan.c"
1497 yy136:
1498 ++cur;
1499 #line 166 "src/parser_scan.re"
1500 { NEWTOKEN(PSI_T_CMP_LE); goto start; }
1501 #line 1502 "src/parser_scan.c"
1502 yy138:
1503 ++cur;
1504 #line 149 "src/parser_scan.re"
1505 { NEWTOKEN(PSI_T_CMP_EQ); goto start; }
1506 #line 1507 "src/parser_scan.c"
1507 yy140:
1508 ++cur;
1509 #line 167 "src/parser_scan.re"
1510 { NEWTOKEN(PSI_T_CMP_GE); goto start; }
1511 #line 1512 "src/parser_scan.c"
1512 yy142:
1513 ++cur;
1514 #line 165 "src/parser_scan.re"
1515 { NEWTOKEN(PSI_T_RSHIFT); goto start; }
1516 #line 1517 "src/parser_scan.c"
1517 yy144:
1518 yyaccept = 3;
1519 yych = *(mrk = ++cur);
1520 switch (yych) {
1521 case 'R':
1522 case 'r': goto yy224;
1523 default: goto yy62;
1524 }
1525 yy145:
1526 yyaccept = 6;
1527 yych = *(mrk = ++cur);
1528 switch (yych) {
1529 case 0x00:
1530 case 0x01:
1531 case 0x02:
1532 case 0x03:
1533 case 0x04:
1534 case 0x05:
1535 case 0x06:
1536 case 0x07:
1537 case 0x08:
1538 case '\t':
1539 case '\n':
1540 case '\v':
1541 case '\f':
1542 case '\r':
1543 case 0x0E:
1544 case 0x0F:
1545 case 0x10:
1546 case 0x11:
1547 case 0x12:
1548 case 0x13:
1549 case 0x14:
1550 case 0x15:
1551 case 0x16:
1552 case 0x17:
1553 case 0x18:
1554 case 0x19:
1555 case 0x1A:
1556 case 0x1B:
1557 case 0x1C:
1558 case 0x1D:
1559 case 0x1E:
1560 case 0x1F:
1561 case ' ':
1562 case '!':
1563 case '"':
1564 case '#':
1565 case '$':
1566 case '%':
1567 case '&':
1568 case '\'':
1569 case '(':
1570 case ')':
1571 case '*':
1572 case '+':
1573 case ',':
1574 case '-':
1575 case '.':
1576 case '/':
1577 case ':':
1578 case ';':
1579 case '<':
1580 case '=':
1581 case '>':
1582 case '?':
1583 case '@':
1584 case '[':
1585 case ']':
1586 case '^':
1587 case '`':
1588 case '{':
1589 case '|':
1590 case '}':
1591 case '~':
1592 case 0x7F: goto yy146;
1593 case '\\': goto yy147;
1594 default: goto yy61;
1595 }
1596 yy146:
1597 #line 227 "src/parser_scan.re"
1598 { NEWTOKEN(PSI_T_AS); goto start; }
1599 #line 1600 "src/parser_scan.c"
1600 yy147:
1601 ++cur;
1602 if (lim <= cur) CHECKEOF();;
1603 yych = *cur;
1604 switch (yych) {
1605 case 0x00:
1606 case 0x01:
1607 case 0x02:
1608 case 0x03:
1609 case 0x04:
1610 case 0x05:
1611 case 0x06:
1612 case 0x07:
1613 case 0x08:
1614 case '\t':
1615 case '\n':
1616 case '\v':
1617 case '\f':
1618 case '\r':
1619 case 0x0E:
1620 case 0x0F:
1621 case 0x10:
1622 case 0x11:
1623 case 0x12:
1624 case 0x13:
1625 case 0x14:
1626 case 0x15:
1627 case 0x16:
1628 case 0x17:
1629 case 0x18:
1630 case 0x19:
1631 case 0x1A:
1632 case 0x1B:
1633 case 0x1C:
1634 case 0x1D:
1635 case 0x1E:
1636 case 0x1F:
1637 case ' ':
1638 case '!':
1639 case '"':
1640 case '#':
1641 case '$':
1642 case '%':
1643 case '&':
1644 case '\'':
1645 case '(':
1646 case ')':
1647 case '*':
1648 case '+':
1649 case ',':
1650 case '-':
1651 case '.':
1652 case '/':
1653 case '0':
1654 case '1':
1655 case '2':
1656 case '3':
1657 case '4':
1658 case '5':
1659 case '6':
1660 case '7':
1661 case '8':
1662 case '9':
1663 case ':':
1664 case ';':
1665 case '<':
1666 case '=':
1667 case '>':
1668 case '?':
1669 case '@':
1670 case '[':
1671 case '\\':
1672 case ']':
1673 case '^':
1674 case '`':
1675 case '{':
1676 case '|':
1677 case '}':
1678 case '~':
1679 case 0x7F: goto yy114;
1680 default: goto yy183;
1681 }
1682 yy148:
1683 yyaccept = 3;
1684 yych = *(mrk = ++cur);
1685 switch (yych) {
1686 case 'O':
1687 case 'o': goto yy225;
1688 default: goto yy62;
1689 }
1690 yy149:
1691 yyaccept = 3;
1692 yych = *(mrk = ++cur);
1693 switch (yych) {
1694 case 'L':
1695 case 'l': goto yy226;
1696 default: goto yy62;
1697 }
1698 yy150:
1699 yyaccept = 3;
1700 yych = *(mrk = ++cur);
1701 switch (yych) {
1702 case 'U':
1703 case 'u': goto yy227;
1704 default: goto yy62;
1705 }
1706 yy151:
1707 yyaccept = 3;
1708 yych = *(mrk = ++cur);
1709 switch (yych) {
1710 case 'F':
1711 case 'f': goto yy228;
1712 default: goto yy62;
1713 }
1714 yy152:
1715 yyaccept = 3;
1716 yych = *(mrk = ++cur);
1717 switch (yych) {
1718 case 'I':
1719 case 'i': goto yy229;
1720 case 'S':
1721 case 's': goto yy230;
1722 default: goto yy62;
1723 }
1724 yy153:
1725 yyaccept = 3;
1726 yych = *(mrk = ++cur);
1727 switch (yych) {
1728 case 'D':
1729 case 'd': goto yy231;
1730 default: goto yy62;
1731 }
1732 yy154:
1733 yyaccept = 3;
1734 yych = *(mrk = ++cur);
1735 switch (yych) {
1736 case 'R':
1737 case 'r': goto yy232;
1738 default: goto yy62;
1739 }
1740 yy155:
1741 yyaccept = 3;
1742 yych = *(mrk = ++cur);
1743 switch (yych) {
1744 case 'L':
1745 case 'l': goto yy233;
1746 default: goto yy62;
1747 }
1748 yy156:
1749 yyaccept = 3;
1750 yych = *(mrk = ++cur);
1751 switch (yych) {
1752 case 'O':
1753 case 'o': goto yy234;
1754 default: goto yy62;
1755 }
1756 yy157:
1757 yyaccept = 3;
1758 yych = *(mrk = ++cur);
1759 switch (yych) {
1760 case 'E':
1761 case 'e': goto yy235;
1762 default: goto yy62;
1763 }
1764 yy158:
1765 yyaccept = 3;
1766 yych = *(mrk = ++cur);
1767 switch (yych) {
1768 case 'N':
1769 case 'n': goto yy236;
1770 default: goto yy62;
1771 }
1772 yy159:
1773 yyaccept = 7;
1774 yych = *(mrk = ++cur);
1775 switch (yych) {
1776 case 0x00:
1777 case 0x01:
1778 case 0x02:
1779 case 0x03:
1780 case 0x04:
1781 case 0x05:
1782 case 0x06:
1783 case 0x07:
1784 case 0x08:
1785 case '\t':
1786 case '\n':
1787 case '\v':
1788 case '\f':
1789 case '\r':
1790 case 0x0E:
1791 case 0x0F:
1792 case 0x10:
1793 case 0x11:
1794 case 0x12:
1795 case 0x13:
1796 case 0x14:
1797 case 0x15:
1798 case 0x16:
1799 case 0x17:
1800 case 0x18:
1801 case 0x19:
1802 case 0x1A:
1803 case 0x1B:
1804 case 0x1C:
1805 case 0x1D:
1806 case 0x1E:
1807 case 0x1F:
1808 case ' ':
1809 case '!':
1810 case '"':
1811 case '#':
1812 case '$':
1813 case '%':
1814 case '&':
1815 case '\'':
1816 case '(':
1817 case ')':
1818 case '*':
1819 case '+':
1820 case ',':
1821 case '-':
1822 case '.':
1823 case '/':
1824 case ':':
1825 case ';':
1826 case '<':
1827 case '=':
1828 case '>':
1829 case '?':
1830 case '@':
1831 case '[':
1832 case ']':
1833 case '^':
1834 case '`':
1835 case '{':
1836 case '|':
1837 case '}':
1838 case '~':
1839 case 0x7F: goto yy160;
1840 case 'D':
1841 case 'd': goto yy237;
1842 case 'N':
1843 case 'n': goto yy238;
1844 case '\\': goto yy147;
1845 default: goto yy61;
1846 }
1847 yy160:
1848 #line 197 "src/parser_scan.re"
1849 { NEWTOKEN(PSI_T_IF); goto start; }
1850 #line 1851 "src/parser_scan.c"
1851 yy161:
1852 yyaccept = 3;
1853 yych = *(mrk = ++cur);
1854 switch (yych) {
1855 case 'C':
1856 case 'c': goto yy239;
1857 case 'T':
1858 case 't': goto yy240;
1859 default: goto yy62;
1860 }
1861 yy162:
1862 ++cur;
1863 cur -= 1;
1864 #line 132 "src/parser_scan.re"
1865 { char_width = sizeof(wchar_t)/8; }
1866 #line 1867 "src/parser_scan.c"
1867 yy164:
1868 yyaccept = 3;
1869 yych = *(mrk = ++cur);
1870 switch (yych) {
1871 case 'T':
1872 case 't': goto yy241;
1873 default: goto yy62;
1874 }
1875 yy165:
1876 yyaccept = 3;
1877 yych = *(mrk = ++cur);
1878 switch (yych) {
1879 case 'B':
1880 case 'b': goto yy243;
1881 default: goto yy62;
1882 }
1883 yy166:
1884 yyaccept = 3;
1885 yych = *(mrk = ++cur);
1886 switch (yych) {
1887 case 'X':
1888 case 'x': goto yy245;
1889 default: goto yy62;
1890 }
1891 yy167:
1892 yyaccept = 3;
1893 yych = *(mrk = ++cur);
1894 switch (yych) {
1895 case 'L':
1896 case 'l': goto yy246;
1897 default: goto yy62;
1898 }
1899 yy168:
1900 yyaccept = 3;
1901 yych = *(mrk = ++cur);
1902 switch (yych) {
1903 case 'J':
1904 case 'j': goto yy247;
1905 default: goto yy62;
1906 }
1907 yy169:
1908 yyaccept = 3;
1909 yych = *(mrk = ++cur);
1910 switch (yych) {
1911 case 'T':
1912 case 't': goto yy248;
1913 default: goto yy62;
1914 }
1915 yy170:
1916 yyaccept = 3;
1917 yych = *(mrk = ++cur);
1918 switch (yych) {
1919 case 'S':
1920 case 's': goto yy249;
1921 default: goto yy62;
1922 }
1923 yy171:
1924 yyaccept = 3;
1925 yych = *(mrk = ++cur);
1926 switch (yych) {
1927 case 'E':
1928 case 'e': goto yy250;
1929 default: goto yy62;
1930 }
1931 yy172:
1932 yyaccept = 3;
1933 yych = *(mrk = ++cur);
1934 switch (yych) {
1935 case 'T':
1936 case 't': goto yy251;
1937 default: goto yy62;
1938 }
1939 yy173:
1940 yyaccept = 3;
1941 yych = *(mrk = ++cur);
1942 switch (yych) {
1943 case 'T':
1944 case 't': goto yy252;
1945 default: goto yy62;
1946 }
1947 yy174:
1948 yyaccept = 3;
1949 yych = *(mrk = ++cur);
1950 switch (yych) {
1951 case 'A':
1952 case 'a': goto yy254;
1953 case 'R':
1954 case 'r': goto yy255;
1955 default: goto yy62;
1956 }
1957 yy175:
1958 yyaccept = 3;
1959 yych = *(mrk = ++cur);
1960 switch (yych) {
1961 case 'M':
1962 case 'm': goto yy256;
1963 default: goto yy62;
1964 }
1965 yy176:
1966 yyaccept = 3;
1967 yych = *(mrk = ++cur);
1968 switch (yych) {
1969 case '_': goto yy257;
1970 default: goto yy62;
1971 }
1972 yy177:
1973 yyaccept = 3;
1974 yych = *(mrk = ++cur);
1975 switch (yych) {
1976 case 'U':
1977 case 'u': goto yy258;
1978 default: goto yy62;
1979 }
1980 yy178:
1981 ++cur;
1982 cur -= 1;
1983 #line 131 "src/parser_scan.re"
1984 { char_width = 4; }
1985 #line 1986 "src/parser_scan.c"
1986 yy180:
1987 yyaccept = 3;
1988 yych = *(mrk = ++cur);
1989 switch (yych) {
1990 case 'D':
1991 case 'd': goto yy259;
1992 default: goto yy62;
1993 }
1994 yy181:
1995 yyaccept = 3;
1996 yych = *(mrk = ++cur);
1997 switch (yych) {
1998 case 'R':
1999 case 'r': goto yy260;
2000 default: goto yy62;
2001 }
2002 yy182:
2003 yyaccept = 3;
2004 yych = *(mrk = ++cur);
2005 switch (yych) {
2006 case 'A':
2007 case 'a': goto yy261;
2008 default: goto yy62;
2009 }
2010 yy183:
2011 yyaccept = 8;
2012 mrk = ++cur;
2013 if (lim <= cur) CHECKEOF();;
2014 yych = *cur;
2015 switch (yych) {
2016 case 0x00:
2017 case 0x01:
2018 case 0x02:
2019 case 0x03:
2020 case 0x04:
2021 case 0x05:
2022 case 0x06:
2023 case 0x07:
2024 case 0x08:
2025 case '\t':
2026 case '\n':
2027 case '\v':
2028 case '\f':
2029 case '\r':
2030 case 0x0E:
2031 case 0x0F:
2032 case 0x10:
2033 case 0x11:
2034 case 0x12:
2035 case 0x13:
2036 case 0x14:
2037 case 0x15:
2038 case 0x16:
2039 case 0x17:
2040 case 0x18:
2041 case 0x19:
2042 case 0x1A:
2043 case 0x1B:
2044 case 0x1C:
2045 case 0x1D:
2046 case 0x1E:
2047 case 0x1F:
2048 case ' ':
2049 case '!':
2050 case '"':
2051 case '#':
2052 case '$':
2053 case '%':
2054 case '&':
2055 case '\'':
2056 case '(':
2057 case ')':
2058 case '*':
2059 case '+':
2060 case ',':
2061 case '-':
2062 case '.':
2063 case '/':
2064 case ':':
2065 case ';':
2066 case '<':
2067 case '=':
2068 case '>':
2069 case '?':
2070 case '@':
2071 case '[':
2072 case ']':
2073 case '^':
2074 case '`':
2075 case '{':
2076 case '|':
2077 case '}':
2078 case '~':
2079 case 0x7F: goto yy185;
2080 case '\\': goto yy147;
2081 default: goto yy183;
2082 }
2083 yy185:
2084 #line 248 "src/parser_scan.re"
2085 { NEWTOKEN(PSI_T_NSNAME); goto start; }
2086 #line 2087 "src/parser_scan.c"
2087 yy186:
2088 yyaccept = 3;
2089 yych = *(mrk = ++cur);
2090 switch (yych) {
2091 case 'a': goto yy262;
2092 case 'e': goto yy263;
2093 case 'i': goto yy264;
2094 case 'r': goto yy265;
2095 default: goto yy62;
2096 }
2097 yy187:
2098 yyaccept = 3;
2099 yych = *(mrk = ++cur);
2100 switch (yych) {
2101 case 'O': goto yy225;
2102 case 'o': goto yy266;
2103 default: goto yy62;
2104 }
2105 yy188:
2106 yyaccept = 3;
2107 yych = *(mrk = ++cur);
2108 switch (yych) {
2109 case 'a': goto yy267;
2110 default: goto yy62;
2111 }
2112 yy189:
2113 yyaccept = 3;
2114 yych = *(mrk = ++cur);
2115 switch (yych) {
2116 case 'U':
2117 case 'u': goto yy227;
2118 case 'n': goto yy268;
2119 default: goto yy62;
2120 }
2121 yy190:
2122 yyaccept = 3;
2123 yych = *(mrk = ++cur);
2124 switch (yych) {
2125 case 'u': goto yy269;
2126 default: goto yy62;
2127 }
2128 yy191:
2129 yyaccept = 3;
2130 yych = *(mrk = ++cur);
2131 switch (yych) {
2132 case 'D':
2133 case 'd': goto yy231;
2134 case 'u': goto yy270;
2135 default: goto yy62;
2136 }
2137 yy192:
2138 yyaccept = 3;
2139 yych = *(mrk = ++cur);
2140 switch (yych) {
2141 case 'O': goto yy234;
2142 case 'o': goto yy271;
2143 default: goto yy62;
2144 }
2145 yy193:
2146 yyaccept = 3;
2147 yych = *(mrk = ++cur);
2148 switch (yych) {
2149 case 'C':
2150 case 'c': goto yy239;
2151 case 'T': goto yy240;
2152 case 'l': goto yy272;
2153 case 't': goto yy273;
2154 default: goto yy62;
2155 }
2156 yy194:
2157 yyaccept = 3;
2158 yych = *(mrk = ++cur);
2159 switch (yych) {
2160 case 'B':
2161 case 'b': goto yy243;
2162 case 'n': goto yy275;
2163 default: goto yy62;
2164 }
2165 yy195:
2166 yyaccept = 3;
2167 yych = *(mrk = ++cur);
2168 switch (yych) {
2169 case 'n': goto yy276;
2170 default: goto yy62;
2171 }
2172 yy196:
2173 yyaccept = 3;
2174 yych = *(mrk = ++cur);
2175 switch (yych) {
2176 case 'E':
2177 case 'e': goto yy250;
2178 case 'a': goto yy277;
2179 default: goto yy62;
2180 }
2181 yy197:
2182 yyaccept = 3;
2183 yych = *(mrk = ++cur);
2184 switch (yych) {
2185 case 'o': goto yy278;
2186 default: goto yy62;
2187 }
2188 yy198:
2189 yyaccept = 3;
2190 yych = *(mrk = ++cur);
2191 switch (yych) {
2192 case 'g': goto yy279;
2193 case 'z': goto yy280;
2194 default: goto yy62;
2195 }
2196 yy199:
2197 yyaccept = 3;
2198 yych = *(mrk = ++cur);
2199 switch (yych) {
2200 case 'A':
2201 case 'a': goto yy254;
2202 case 'R': goto yy255;
2203 case 'r': goto yy281;
2204 default: goto yy62;
2205 }
2206 yy200:
2207 yyaccept = 3;
2208 yych = *(mrk = ++cur);
2209 switch (yych) {
2210 case 'p': goto yy282;
2211 default: goto yy62;
2212 }
2213 yy201:
2214 ++cur;
2215 cur -= 1;
2216 #line 130 "src/parser_scan.re"
2217 { char_width = 2; }
2218 #line 2219 "src/parser_scan.c"
2219 yy203:
2220 yyaccept = 3;
2221 yych = *(mrk = ++cur);
2222 switch (yych) {
2223 case '"': goto yy283;
2224 default: goto yy62;
2225 }
2226 yy204:
2227 yyaccept = 3;
2228 yych = *(mrk = ++cur);
2229 switch (yych) {
2230 case 'D':
2231 case 'd': goto yy259;
2232 case 'i': goto yy285;
2233 case 's': goto yy286;
2234 default: goto yy62;
2235 }
2236 yy205:
2237 yyaccept = 3;
2238 yych = *(mrk = ++cur);
2239 switch (yych) {
2240 case 'i': goto yy287;
2241 case 'l': goto yy288;
2242 default: goto yy62;
2243 }
2244 yy206:
2245 ++cur;
2246 #line 151 "src/parser_scan.re"
2247 { NEWTOKEN(PSI_T_OR); goto start; }
2248 #line 2249 "src/parser_scan.c"
2249 yy208:
2250 ++cur;
2251 #line 171 "src/parser_scan.re"
2252 { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
2253 #line 2254 "src/parser_scan.c"
2254 yy210:
2255 yych = *++cur;
2256 switch (yych) {
2257 case 'D':
2258 case 'd': goto yy289;
2259 case 'F':
2260 case 'f': goto yy291;
2261 case 'L':
2262 case 'l': goto yy293;
2263 default: goto yy114;
2264 }
2265 yy211:
2266 ++cur;
2267 cur -= 1;
2268 #line 121 "src/parser_scan.re"
2269 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
2270 #line 2271 "src/parser_scan.c"
2271 yy213:
2272 ++cur;
2273 cur -= 1;
2274 #line 122 "src/parser_scan.re"
2275 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
2276 #line 2277 "src/parser_scan.c"
2277 yy215:
2278 yych = *++cur;
2279 switch (yych) {
2280 case '0':
2281 case '1':
2282 case '2':
2283 case '3':
2284 case '4':
2285 case '5':
2286 case '6':
2287 case '7':
2288 case '8':
2289 case '9': goto yy115;
2290 default: goto yy114;
2291 }
2292 yy216:
2293 yych = *++cur;
2294 switch (yych) {
2295 case 'U':
2296 case 'u': goto yy295;
2297 default: goto yy114;
2298 }
2299 yy217:
2300 ++cur;
2301 yy218:
2302 cur -= 2;
2303 #line 117 "src/parser_scan.re"
2304 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
2305 #line 2306 "src/parser_scan.c"
2306 yy219:
2307 yych = *++cur;
2308 switch (yych) {
2309 case 'L':
2310 case 'l': goto yy295;
2311 default: goto yy218;
2312 }
2313 yy220:
2314 yyaccept = 1;
2315 mrk = ++cur;
2316 if ((lim - cur) < 3) CHECKEOF();;
2317 yych = *cur;
2318 switch (yych) {
2319 case '.': goto yy297;
2320 case '0':
2321 case '1':
2322 case '2':
2323 case '3':
2324 case '4':
2325 case '5':
2326 case '6':
2327 case '7':
2328 case '8':
2329 case '9':
2330 case 'A':
2331 case 'B':
2332 case 'C':
2333 case 'D':
2334 case 'E':
2335 case 'F':
2336 case 'a':
2337 case 'b':
2338 case 'c':
2339 case 'd':
2340 case 'e':
2341 case 'f': goto yy220;
2342 case 'L':
2343 case 'l': goto yy127;
2344 case 'P':
2345 case 'p': goto yy126;
2346 case 'U':
2347 case 'u': goto yy129;
2348 default: goto yy39;
2349 }
2350 yy222:
2351 ++cur;
2352 #line 250 "src/parser_scan.re"
2353 { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; }
2354 #line 2355 "src/parser_scan.c"
2355 yy224:
2356 yyaccept = 3;
2357 yych = *(mrk = ++cur);
2358 switch (yych) {
2359 case 'A':
2360 case 'a': goto yy299;
2361 case 'V':
2362 case 'v': goto yy300;
2363 default: goto yy62;
2364 }
2365 yy225:
2366 yyaccept = 3;
2367 yych = *(mrk = ++cur);
2368 switch (yych) {
2369 case 'L':
2370 case 'l': goto yy301;
2371 default: goto yy62;
2372 }
2373 yy226:
2374 yyaccept = 3;
2375 yych = *(mrk = ++cur);
2376 switch (yych) {
2377 case 'L':
2378 case 'l': goto yy302;
2379 default: goto yy62;
2380 }
2381 yy227:
2382 yyaccept = 3;
2383 yych = *(mrk = ++cur);
2384 switch (yych) {
2385 case 'N':
2386 case 'n': goto yy303;
2387 default: goto yy62;
2388 }
2389 yy228:
2390 yyaccept = 3;
2391 yych = *(mrk = ++cur);
2392 switch (yych) {
2393 case 'I':
2394 case 'i': goto yy304;
2395 default: goto yy62;
2396 }
2397 yy229:
2398 yyaccept = 3;
2399 yych = *(mrk = ++cur);
2400 switch (yych) {
2401 case 'F':
2402 case 'f': goto yy305;
2403 default: goto yy62;
2404 }
2405 yy230:
2406 yyaccept = 3;
2407 yych = *(mrk = ++cur);
2408 switch (yych) {
2409 case 'E':
2410 case 'e': goto yy307;
2411 default: goto yy62;
2412 }
2413 yy231:
2414 yyaccept = 3;
2415 yych = *(mrk = ++cur);
2416 switch (yych) {
2417 case 'I':
2418 case 'i': goto yy309;
2419 default: goto yy62;
2420 }
2421 yy232:
2422 yyaccept = 3;
2423 yych = *(mrk = ++cur);
2424 switch (yych) {
2425 case 'O':
2426 case 'o': goto yy310;
2427 default: goto yy62;
2428 }
2429 yy233:
2430 yyaccept = 3;
2431 yych = *(mrk = ++cur);
2432 switch (yych) {
2433 case 'S':
2434 case 's': goto yy311;
2435 default: goto yy62;
2436 }
2437 yy234:
2438 yyaccept = 3;
2439 yych = *(mrk = ++cur);
2440 switch (yych) {
2441 case 'A':
2442 case 'a': goto yy312;
2443 default: goto yy62;
2444 }
2445 yy235:
2446 yyaccept = 3;
2447 yych = *(mrk = ++cur);
2448 switch (yych) {
2449 case 'E':
2450 case 'e': goto yy313;
2451 default: goto yy62;
2452 }
2453 yy236:
2454 yyaccept = 3;
2455 yych = *(mrk = ++cur);
2456 switch (yych) {
2457 case 'C':
2458 case 'c': goto yy315;
2459 default: goto yy62;
2460 }
2461 yy237:
2462 yyaccept = 3;
2463 yych = *(mrk = ++cur);
2464 switch (yych) {
2465 case 'E':
2466 case 'e': goto yy316;
2467 default: goto yy62;
2468 }
2469 yy238:
2470 yyaccept = 3;
2471 yych = *(mrk = ++cur);
2472 switch (yych) {
2473 case 'D':
2474 case 'd': goto yy317;
2475 default: goto yy62;
2476 }
2477 yy239:
2478 yyaccept = 3;
2479 yych = *(mrk = ++cur);
2480 switch (yych) {
2481 case 'L':
2482 case 'l': goto yy318;
2483 default: goto yy62;
2484 }
2485 yy240:
2486 yyaccept = 3;
2487 yych = *(mrk = ++cur);
2488 switch (yych) {
2489 case 'V':
2490 case 'v': goto yy319;
2491 default: goto yy62;
2492 }
2493 yy241:
2494 yyaccept = 9;
2495 yych = *(mrk = ++cur);
2496 switch (yych) {
2497 case 0x00:
2498 case 0x01:
2499 case 0x02:
2500 case 0x03:
2501 case 0x04:
2502 case 0x05:
2503 case 0x06:
2504 case 0x07:
2505 case 0x08:
2506 case '\t':
2507 case '\n':
2508 case '\v':
2509 case '\f':
2510 case '\r':
2511 case 0x0E:
2512 case 0x0F:
2513 case 0x10:
2514 case 0x11:
2515 case 0x12:
2516 case 0x13:
2517 case 0x14:
2518 case 0x15:
2519 case 0x16:
2520 case 0x17:
2521 case 0x18:
2522 case 0x19:
2523 case 0x1A:
2524 case 0x1B:
2525 case 0x1C:
2526 case 0x1D:
2527 case 0x1E:
2528 case 0x1F:
2529 case ' ':
2530 case '!':
2531 case '"':
2532 case '#':
2533 case '$':
2534 case '%':
2535 case '&':
2536 case '\'':
2537 case '(':
2538 case ')':
2539 case '*':
2540 case '+':
2541 case ',':
2542 case '-':
2543 case '.':
2544 case '/':
2545 case ':':
2546 case ';':
2547 case '<':
2548 case '=':
2549 case '>':
2550 case '?':
2551 case '@':
2552 case '[':
2553 case ']':
2554 case '^':
2555 case '`':
2556 case '{':
2557 case '|':
2558 case '}':
2559 case '~':
2560 case 0x7F: goto yy242;
2561 case '\\': goto yy147;
2562 default: goto yy61;
2563 }
2564 yy242:
2565 #line 222 "src/parser_scan.re"
2566 { NEWTOKEN(PSI_T_LET); goto start; }
2567 #line 2568 "src/parser_scan.c"
2568 yy243:
2569 yyaccept = 10;
2570 yych = *(mrk = ++cur);
2571 switch (yych) {
2572 case 0x00:
2573 case 0x01:
2574 case 0x02:
2575 case 0x03:
2576 case 0x04:
2577 case 0x05:
2578 case 0x06:
2579 case 0x07:
2580 case 0x08:
2581 case '\t':
2582 case '\n':
2583 case '\v':
2584 case '\f':
2585 case '\r':
2586 case 0x0E:
2587 case 0x0F:
2588 case 0x10:
2589 case 0x11:
2590 case 0x12:
2591 case 0x13:
2592 case 0x14:
2593 case 0x15:
2594 case 0x16:
2595 case 0x17:
2596 case 0x18:
2597 case 0x19:
2598 case 0x1A:
2599 case 0x1B:
2600 case 0x1C:
2601 case 0x1D:
2602 case 0x1E:
2603 case 0x1F:
2604 case ' ':
2605 case '!':
2606 case '"':
2607 case '#':
2608 case '$':
2609 case '%':
2610 case '&':
2611 case '\'':
2612 case '(':
2613 case ')':
2614 case '*':
2615 case '+':
2616 case ',':
2617 case '-':
2618 case '.':
2619 case '/':
2620 case ':':
2621 case ';':
2622 case '<':
2623 case '=':
2624 case '>':
2625 case '?':
2626 case '@':
2627 case '[':
2628 case ']':
2629 case '^':
2630 case '`':
2631 case '{':
2632 case '|':
2633 case '}':
2634 case '~':
2635 case 0x7F: goto yy244;
2636 case '\\': goto yy147;
2637 default: goto yy61;
2638 }
2639 yy244:
2640 #line 221 "src/parser_scan.re"
2641 { NEWTOKEN(PSI_T_LIB); goto start; }
2642 #line 2643 "src/parser_scan.c"
2643 yy245:
2644 yyaccept = 3;
2645 yych = *(mrk = ++cur);
2646 switch (yych) {
2647 case 'E':
2648 case 'e': goto yy320;
2649 default: goto yy62;
2650 }
2651 yy246:
2652 yyaccept = 3;
2653 yych = *(mrk = ++cur);
2654 switch (yych) {
2655 case 'L':
2656 case 'l': goto yy321;
2657 default: goto yy62;
2658 }
2659 yy247:
2660 yyaccept = 3;
2661 yych = *(mrk = ++cur);
2662 switch (yych) {
2663 case 'E':
2664 case 'e': goto yy323;
2665 case 'V':
2666 case 'v': goto yy324;
2667 default: goto yy62;
2668 }
2669 yy248:
2670 yyaccept = 3;
2671 yych = *(mrk = ++cur);
2672 switch (yych) {
2673 case 'H':
2674 case 'h': goto yy325;
2675 default: goto yy62;
2676 }
2677 yy249:
2678 yyaccept = 3;
2679 yych = *(mrk = ++cur);
2680 switch (yych) {
2681 case 'T':
2682 case 't': goto yy326;
2683 default: goto yy62;
2684 }
2685 yy250:
2686 yyaccept = 3;
2687 yych = *(mrk = ++cur);
2688 switch (yych) {
2689 case '_': goto yy327;
2690 default: goto yy62;
2691 }
2692 yy251:
2693 yyaccept = 3;
2694 yych = *(mrk = ++cur);
2695 switch (yych) {
2696 case 'U':
2697 case 'u': goto yy328;
2698 default: goto yy62;
2699 }
2700 yy252:
2701 yyaccept = 11;
2702 yych = *(mrk = ++cur);
2703 switch (yych) {
2704 case 0x00:
2705 case 0x01:
2706 case 0x02:
2707 case 0x03:
2708 case 0x04:
2709 case 0x05:
2710 case 0x06:
2711 case 0x07:
2712 case 0x08:
2713 case '\t':
2714 case '\n':
2715 case '\v':
2716 case '\f':
2717 case '\r':
2718 case 0x0E:
2719 case 0x0F:
2720 case 0x10:
2721 case 0x11:
2722 case 0x12:
2723 case 0x13:
2724 case 0x14:
2725 case 0x15:
2726 case 0x16:
2727 case 0x17:
2728 case 0x18:
2729 case 0x19:
2730 case 0x1A:
2731 case 0x1B:
2732 case 0x1C:
2733 case 0x1D:
2734 case 0x1E:
2735 case 0x1F:
2736 case ' ':
2737 case '!':
2738 case '"':
2739 case '#':
2740 case '$':
2741 case '%':
2742 case '&':
2743 case '\'':
2744 case '(':
2745 case ')':
2746 case '*':
2747 case '+':
2748 case ',':
2749 case '-':
2750 case '.':
2751 case '/':
2752 case ':':
2753 case ';':
2754 case '<':
2755 case '=':
2756 case '>':
2757 case '?':
2758 case '@':
2759 case '[':
2760 case ']':
2761 case '^':
2762 case '`':
2763 case '{':
2764 case '|':
2765 case '}':
2766 case '~':
2767 case 0x7F: goto yy253;
2768 case '\\': goto yy147;
2769 default: goto yy61;
2770 }
2771 yy253:
2772 #line 223 "src/parser_scan.re"
2773 { NEWTOKEN(PSI_T_SET); goto start; }
2774 #line 2775 "src/parser_scan.c"
2775 yy254:
2776 yyaccept = 3;
2777 yych = *(mrk = ++cur);
2778 switch (yych) {
2779 case 'T':
2780 case 't': goto yy329;
2781 default: goto yy62;
2782 }
2783 yy255:
2784 yyaccept = 3;
2785 yych = *(mrk = ++cur);
2786 switch (yych) {
2787 case 'I':
2788 case 'i': goto yy330;
2789 case 'L':
2790 case 'l': goto yy331;
2791 case 'V':
2792 case 'v': goto yy332;
2793 default: goto yy62;
2794 }
2795 yy256:
2796 yyaccept = 3;
2797 yych = *(mrk = ++cur);
2798 switch (yych) {
2799 case 'P':
2800 case 'p': goto yy333;
2801 default: goto yy62;
2802 }
2803 yy257:
2804 yyaccept = 3;
2805 yych = *(mrk = ++cur);
2806 switch (yych) {
2807 case 'A':
2808 case 'a': goto yy335;
2809 case 'B':
2810 case 'b': goto yy336;
2811 case 'F':
2812 case 'f': goto yy337;
2813 case 'I':
2814 case 'i': goto yy338;
2815 case 'O':
2816 case 'o': goto yy339;
2817 case 'S':
2818 case 's': goto yy340;
2819 default: goto yy62;
2820 }
2821 yy258:
2822 yyaccept = 3;
2823 yych = *(mrk = ++cur);
2824 switch (yych) {
2825 case 'E':
2826 case 'e': goto yy341;
2827 default: goto yy62;
2828 }
2829 yy259:
2830 yyaccept = 3;
2831 yych = *(mrk = ++cur);
2832 switch (yych) {
2833 case 'E':
2834 case 'e': goto yy343;
2835 default: goto yy62;
2836 }
2837 yy260:
2838 yyaccept = 3;
2839 yych = *(mrk = ++cur);
2840 switch (yych) {
2841 case 'N':
2842 case 'n': goto yy344;
2843 default: goto yy62;
2844 }
2845 yy261:
2846 yyaccept = 3;
2847 yych = *(mrk = ++cur);
2848 switch (yych) {
2849 case 'L':
2850 case 'l': goto yy345;
2851 default: goto yy62;
2852 }
2853 yy262:
2854 yyaccept = 3;
2855 yych = *(mrk = ++cur);
2856 switch (yych) {
2857 case 's': goto yy347;
2858 case 't': goto yy348;
2859 default: goto yy62;
2860 }
2861 yy263:
2862 yyaccept = 3;
2863 yych = *(mrk = ++cur);
2864 switch (yych) {
2865 case 'x': goto yy349;
2866 default: goto yy62;
2867 }
2868 yy264:
2869 yyaccept = 3;
2870 yych = *(mrk = ++cur);
2871 switch (yych) {
2872 case 'n': goto yy350;
2873 default: goto yy62;
2874 }
2875 yy265:
2876 yyaccept = 3;
2877 yych = *(mrk = ++cur);
2878 switch (yych) {
2879 case 'e': goto yy351;
2880 default: goto yy62;
2881 }
2882 yy266:
2883 yyaccept = 3;
2884 yych = *(mrk = ++cur);
2885 switch (yych) {
2886 case 'L': goto yy301;
2887 case 'l': goto yy352;
2888 default: goto yy62;
2889 }
2890 yy267:
2891 yyaccept = 3;
2892 yych = *(mrk = ++cur);
2893 switch (yych) {
2894 case 'r': goto yy354;
2895 default: goto yy62;
2896 }
2897 yy268:
2898 yyaccept = 3;
2899 yych = *(mrk = ++cur);
2900 switch (yych) {
2901 case 's': goto yy356;
2902 default: goto yy62;
2903 }
2904 yy269:
2905 yyaccept = 3;
2906 yych = *(mrk = ++cur);
2907 switch (yych) {
2908 case 'b': goto yy357;
2909 default: goto yy62;
2910 }
2911 yy270:
2912 yyaccept = 3;
2913 yych = *(mrk = ++cur);
2914 switch (yych) {
2915 case 'm': goto yy358;
2916 default: goto yy62;
2917 }
2918 yy271:
2919 yyaccept = 3;
2920 yych = *(mrk = ++cur);
2921 switch (yych) {
2922 case 'A': goto yy312;
2923 case 'a': goto yy360;
2924 default: goto yy62;
2925 }
2926 yy272:
2927 yyaccept = 3;
2928 yych = *(mrk = ++cur);
2929 switch (yych) {
2930 case 'i': goto yy361;
2931 default: goto yy62;
2932 }
2933 yy273:
2934 yyaccept = 12;
2935 yych = *(mrk = ++cur);
2936 switch (yych) {
2937 case 0x00:
2938 case 0x01:
2939 case 0x02:
2940 case 0x03:
2941 case 0x04:
2942 case 0x05:
2943 case 0x06:
2944 case 0x07:
2945 case 0x08:
2946 case '\t':
2947 case '\n':
2948 case '\v':
2949 case '\f':
2950 case '\r':
2951 case 0x0E:
2952 case 0x0F:
2953 case 0x10:
2954 case 0x11:
2955 case 0x12:
2956 case 0x13:
2957 case 0x14:
2958 case 0x15:
2959 case 0x16:
2960 case 0x17:
2961 case 0x18:
2962 case 0x19:
2963 case 0x1A:
2964 case 0x1B:
2965 case 0x1C:
2966 case 0x1D:
2967 case 0x1E:
2968 case 0x1F:
2969 case ' ':
2970 case '!':
2971 case '"':
2972 case '#':
2973 case '$':
2974 case '%':
2975 case '&':
2976 case '\'':
2977 case '(':
2978 case ')':
2979 case '*':
2980 case '+':
2981 case ',':
2982 case '-':
2983 case '.':
2984 case '/':
2985 case ':':
2986 case ';':
2987 case '<':
2988 case '=':
2989 case '>':
2990 case '?':
2991 case '@':
2992 case '[':
2993 case ']':
2994 case '^':
2995 case '`':
2996 case '{':
2997 case '|':
2998 case '}':
2999 case '~':
3000 case 0x7F: goto yy274;
3001 case 'V':
3002 case 'v': goto yy319;
3003 case '\\': goto yy147;
3004 default: goto yy61;
3005 }
3006 yy274:
3007 #line 191 "src/parser_scan.re"
3008 { NEWTOKEN(PSI_T_INT); goto start; }
3009 #line 3010 "src/parser_scan.c"
3010 yy275:
3011 yyaccept = 3;
3012 yych = *(mrk = ++cur);
3013 switch (yych) {
3014 case 'e': goto yy362;
3015 default: goto yy62;
3016 }
3017 yy276:
3018 yyaccept = 3;
3019 yych = *(mrk = ++cur);
3020 switch (yych) {
3021 case 'g': goto yy364;
3022 default: goto yy62;
3023 }
3024 yy277:
3025 yyaccept = 3;
3026 yych = *(mrk = ++cur);
3027 switch (yych) {
3028 case 'g': goto yy366;
3029 default: goto yy62;
3030 }
3031 yy278:
3032 yyaccept = 3;
3033 yych = *(mrk = ++cur);
3034 switch (yych) {
3035 case 'r': goto yy367;
3036 default: goto yy62;
3037 }
3038 yy279:
3039 yyaccept = 3;
3040 yych = *(mrk = ++cur);
3041 switch (yych) {
3042 case 'n': goto yy368;
3043 default: goto yy62;
3044 }
3045 yy280:
3046 yyaccept = 3;
3047 yych = *(mrk = ++cur);
3048 switch (yych) {
3049 case 'e': goto yy369;
3050 default: goto yy62;
3051 }
3052 yy281:
3053 yyaccept = 3;
3054 yych = *(mrk = ++cur);
3055 switch (yych) {
3056 case 'I':
3057 case 'i': goto yy330;
3058 case 'L':
3059 case 'l': goto yy331;
3060 case 'V':
3061 case 'v': goto yy332;
3062 case 'u': goto yy370;
3063 default: goto yy62;
3064 }
3065 yy282:
3066 yyaccept = 3;
3067 yych = *(mrk = ++cur);
3068 switch (yych) {
3069 case 'e': goto yy371;
3070 default: goto yy62;
3071 }
3072 yy283:
3073 ++cur;
3074 cur -= 1;
3075 #line 129 "src/parser_scan.re"
3076 { char_width = 1; }
3077 #line 3078 "src/parser_scan.c"
3078 yy285:
3079 yyaccept = 3;
3080 yych = *(mrk = ++cur);
3081 switch (yych) {
3082 case 'o': goto yy372;
3083 default: goto yy62;
3084 }
3085 yy286:
3086 yyaccept = 3;
3087 yych = *(mrk = ++cur);
3088 switch (yych) {
3089 case 'i': goto yy373;
3090 default: goto yy62;
3091 }
3092 yy287:
3093 yyaccept = 3;
3094 yych = *(mrk = ++cur);
3095 switch (yych) {
3096 case 'd': goto yy374;
3097 default: goto yy62;
3098 }
3099 yy288:
3100 yyaccept = 3;
3101 yych = *(mrk = ++cur);
3102 switch (yych) {
3103 case 'a': goto yy376;
3104 default: goto yy62;
3105 }
3106 yy289:
3107 ++cur;
3108 cur -= 2;
3109 #line 124 "src/parser_scan.re"
3110 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
3111 #line 3112 "src/parser_scan.c"
3112 yy291:
3113 ++cur;
3114 cur -= 2;
3115 #line 123 "src/parser_scan.re"
3116 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
3117 #line 3118 "src/parser_scan.c"
3118 yy293:
3119 ++cur;
3120 cur -= 2;
3121 #line 125 "src/parser_scan.re"
3122 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
3123 #line 3124 "src/parser_scan.c"
3124 yy295:
3125 ++cur;
3126 cur -= 3;
3127 #line 118 "src/parser_scan.re"
3128 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
3129 #line 3130 "src/parser_scan.c"
3130 yy297:
3131 ++cur;
3132 if ((lim - cur) < 3) CHECKEOF();;
3133 yych = *cur;
3134 switch (yych) {
3135 case '0':
3136 case '1':
3137 case '2':
3138 case '3':
3139 case '4':
3140 case '5':
3141 case '6':
3142 case '7':
3143 case '8':
3144 case '9':
3145 case 'A':
3146 case 'B':
3147 case 'C':
3148 case 'D':
3149 case 'E':
3150 case 'F':
3151 case 'a':
3152 case 'b':
3153 case 'c':
3154 case 'd':
3155 case 'e':
3156 case 'f': goto yy297;
3157 case 'P':
3158 case 'p': goto yy126;
3159 default: goto yy114;
3160 }
3161 yy299:
3162 yyaccept = 3;
3163 yych = *(mrk = ++cur);
3164 switch (yych) {
3165 case 'Y':
3166 case 'y': goto yy377;
3167 default: goto yy62;
3168 }
3169 yy300:
3170 yyaccept = 3;
3171 yych = *(mrk = ++cur);
3172 switch (yych) {
3173 case 'A':
3174 case 'a': goto yy379;
3175 default: goto yy62;
3176 }
3177 yy301:
3178 yyaccept = 3;
3179 yych = *(mrk = ++cur);
3180 switch (yych) {
3181 case 'V':
3182 case 'v': goto yy380;
3183 default: goto yy62;
3184 }
3185 yy302:
3186 yyaccept = 3;
3187 yych = *(mrk = ++cur);
3188 switch (yych) {
3189 case 'A':
3190 case 'a': goto yy381;
3191 case 'B':
3192 case 'b': goto yy382;
3193 case 'O':
3194 case 'o': goto yy383;
3195 default: goto yy62;
3196 }
3197 yy303:
3198 yyaccept = 3;
3199 yych = *(mrk = ++cur);
3200 switch (yych) {
3201 case 'T':
3202 case 't': goto yy384;
3203 default: goto yy62;
3204 }
3205 yy304:
3206 yyaccept = 3;
3207 yych = *(mrk = ++cur);
3208 switch (yych) {
3209 case 'N':
3210 case 'n': goto yy386;
3211 default: goto yy62;
3212 }
3213 yy305:
3214 yyaccept = 13;
3215 yych = *(mrk = ++cur);
3216 switch (yych) {
3217 case 0x00:
3218 case 0x01:
3219 case 0x02:
3220 case 0x03:
3221 case 0x04:
3222 case 0x05:
3223 case 0x06:
3224 case 0x07:
3225 case 0x08:
3226 case '\t':
3227 case '\n':
3228 case '\v':
3229 case '\f':
3230 case '\r':
3231 case 0x0E:
3232 case 0x0F:
3233 case 0x10:
3234 case 0x11:
3235 case 0x12:
3236 case 0x13:
3237 case 0x14:
3238 case 0x15:
3239 case 0x16:
3240 case 0x17:
3241 case 0x18:
3242 case 0x19:
3243 case 0x1A:
3244 case 0x1B:
3245 case 0x1C:
3246 case 0x1D:
3247 case 0x1E:
3248 case 0x1F:
3249 case ' ':
3250 case '!':
3251 case '"':
3252 case '#':
3253 case '$':
3254 case '%':
3255 case '&':
3256 case '\'':
3257 case '(':
3258 case ')':
3259 case '*':
3260 case '+':
3261 case ',':
3262 case '-':
3263 case '.':
3264 case '/':
3265 case ':':
3266 case ';':
3267 case '<':
3268 case '=':
3269 case '>':
3270 case '?':
3271 case '@':
3272 case '[':
3273 case ']':
3274 case '^':
3275 case '`':
3276 case '{':
3277 case '|':
3278 case '}':
3279 case '~':
3280 case 0x7F: goto yy306;
3281 case '\\': goto yy147;
3282 default: goto yy61;
3283 }
3284 yy306:
3285 #line 201 "src/parser_scan.re"
3286 { NEWTOKEN(PSI_T_ELIF); goto start; }
3287 #line 3288 "src/parser_scan.c"
3288 yy307:
3289 yyaccept = 14;
3290 yych = *(mrk = ++cur);
3291 switch (yych) {
3292 case 0x00:
3293 case 0x01:
3294 case 0x02:
3295 case 0x03:
3296 case 0x04:
3297 case 0x05:
3298 case 0x06:
3299 case 0x07:
3300 case 0x08:
3301 case '\t':
3302 case '\n':
3303 case '\v':
3304 case '\f':
3305 case '\r':
3306 case 0x0E:
3307 case 0x0F:
3308 case 0x10:
3309 case 0x11:
3310 case 0x12:
3311 case 0x13:
3312 case 0x14:
3313 case 0x15:
3314 case 0x16:
3315 case 0x17:
3316 case 0x18:
3317 case 0x19:
3318 case 0x1A:
3319 case 0x1B:
3320 case 0x1C:
3321 case 0x1D:
3322 case 0x1E:
3323 case 0x1F:
3324 case ' ':
3325 case '!':
3326 case '"':
3327 case '#':
3328 case '$':
3329 case '%':
3330 case '&':
3331 case '\'':
3332 case '(':
3333 case ')':
3334 case '*':
3335 case '+':
3336 case ',':
3337 case '-':
3338 case '.':
3339 case '/':
3340 case ':':
3341 case ';':
3342 case '<':
3343 case '=':
3344 case '>':
3345 case '?':
3346 case '@':
3347 case '[':
3348 case ']':
3349 case '^':
3350 case '`':
3351 case '{':
3352 case '|':
3353 case '}':
3354 case '~':
3355 case 0x7F: goto yy308;
3356 case '\\': goto yy147;
3357 default: goto yy61;
3358 }
3359 yy308:
3360 #line 200 "src/parser_scan.re"
3361 { NEWTOKEN(PSI_T_ELSE); goto start; }
3362 #line 3363 "src/parser_scan.c"
3363 yy309:
3364 yyaccept = 3;
3365 yych = *(mrk = ++cur);
3366 switch (yych) {
3367 case 'F':
3368 case 'f': goto yy387;
3369 default: goto yy62;
3370 }
3371 yy310:
3372 yyaccept = 3;
3373 yych = *(mrk = ++cur);
3374 switch (yych) {
3375 case 'R':
3376 case 'r': goto yy389;
3377 default: goto yy62;
3378 }
3379 yy311:
3380 yyaccept = 3;
3381 yych = *(mrk = ++cur);
3382 switch (yych) {
3383 case 'E':
3384 case 'e': goto yy391;
3385 default: goto yy62;
3386 }
3387 yy312:
3388 yyaccept = 3;
3389 yych = *(mrk = ++cur);
3390 switch (yych) {
3391 case 'T':
3392 case 't': goto yy393;
3393 default: goto yy62;
3394 }
3395 yy313:
3396 yyaccept = 15;
3397 yych = *(mrk = ++cur);
3398 switch (yych) {
3399 case 0x00:
3400 case 0x01:
3401 case 0x02:
3402 case 0x03:
3403 case 0x04:
3404 case 0x05:
3405 case 0x06:
3406 case 0x07:
3407 case 0x08:
3408 case '\t':
3409 case '\n':
3410 case '\v':
3411 case '\f':
3412 case '\r':
3413 case 0x0E:
3414 case 0x0F:
3415 case 0x10:
3416 case 0x11:
3417 case 0x12:
3418 case 0x13:
3419 case 0x14:
3420 case 0x15:
3421 case 0x16:
3422 case 0x17:
3423 case 0x18:
3424 case 0x19:
3425 case 0x1A:
3426 case 0x1B:
3427 case 0x1C:
3428 case 0x1D:
3429 case 0x1E:
3430 case 0x1F:
3431 case ' ':
3432 case '!':
3433 case '"':
3434 case '#':
3435 case '$':
3436 case '%':
3437 case '&':
3438 case '\'':
3439 case '(':
3440 case ')':
3441 case '*':
3442 case '+':
3443 case ',':
3444 case '-':
3445 case '.':
3446 case '/':
3447 case ':':
3448 case ';':
3449 case '<':
3450 case '=':
3451 case '>':
3452 case '?':
3453 case '@':
3454 case '[':
3455 case ']':
3456 case '^':
3457 case '`':
3458 case '{':
3459 case '|':
3460 case '}':
3461 case '~':
3462 case 0x7F: goto yy314;
3463 case '\\': goto yy147;
3464 default: goto yy61;
3465 }
3466 yy314:
3467 #line 228 "src/parser_scan.re"
3468 { NEWTOKEN(PSI_T_FREE); goto start; }
3469 #line 3470 "src/parser_scan.c"
3470 yy315:
3471 yyaccept = 3;
3472 yych = *(mrk = ++cur);
3473 switch (yych) {
3474 case 'T':
3475 case 't': goto yy394;
3476 default: goto yy62;
3477 }
3478 yy316:
3479 yyaccept = 3;
3480 yych = *(mrk = ++cur);
3481 switch (yych) {
3482 case 'F':
3483 case 'f': goto yy395;
3484 default: goto yy62;
3485 }
3486 yy317:
3487 yyaccept = 3;
3488 yych = *(mrk = ++cur);
3489 switch (yych) {
3490 case 'E':
3491 case 'e': goto yy397;
3492 default: goto yy62;
3493 }
3494 yy318:
3495 yyaccept = 3;
3496 yych = *(mrk = ++cur);
3497 switch (yych) {
3498 case 'U':
3499 case 'u': goto yy398;
3500 default: goto yy62;
3501 }
3502 yy319:
3503 yyaccept = 3;
3504 yych = *(mrk = ++cur);
3505 switch (yych) {
3506 case 'A':
3507 case 'a': goto yy399;
3508 default: goto yy62;
3509 }
3510 yy320:
3511 yyaccept = 3;
3512 yych = *(mrk = ++cur);
3513 switch (yych) {
3514 case 'D':
3515 case 'd': goto yy400;
3516 default: goto yy62;
3517 }
3518 yy321:
3519 yyaccept = 16;
3520 yych = *(mrk = ++cur);
3521 switch (yych) {
3522 case 0x00:
3523 case 0x01:
3524 case 0x02:
3525 case 0x03:
3526 case 0x04:
3527 case 0x05:
3528 case 0x06:
3529 case 0x07:
3530 case 0x08:
3531 case '\t':
3532 case '\n':
3533 case '\v':
3534 case '\f':
3535 case '\r':
3536 case 0x0E:
3537 case 0x0F:
3538 case 0x10:
3539 case 0x11:
3540 case 0x12:
3541 case 0x13:
3542 case 0x14:
3543 case 0x15:
3544 case 0x16:
3545 case 0x17:
3546 case 0x18:
3547 case 0x19:
3548 case 0x1A:
3549 case 0x1B:
3550 case 0x1C:
3551 case 0x1D:
3552 case 0x1E:
3553 case 0x1F:
3554 case ' ':
3555 case '!':
3556 case '"':
3557 case '#':
3558 case '$':
3559 case '%':
3560 case '&':
3561 case '\'':
3562 case '(':
3563 case ')':
3564 case '*':
3565 case '+':
3566 case ',':
3567 case '-':
3568 case '.':
3569 case '/':
3570 case ':':
3571 case ';':
3572 case '<':
3573 case '=':
3574 case '>':
3575 case '?':
3576 case '@':
3577 case '[':
3578 case ']':
3579 case '^':
3580 case '`':
3581 case '{':
3582 case '|':
3583 case '}':
3584 case '~':
3585 case 0x7F: goto yy322;
3586 case '\\': goto yy147;
3587 default: goto yy61;
3588 }
3589 yy322:
3590 #line 212 "src/parser_scan.re"
3591 { NEWTOKEN(PSI_T_NULL); goto start; }
3592 #line 3593 "src/parser_scan.c"
3593 yy323:
3594 yyaccept = 3;
3595 yych = *(mrk = ++cur);
3596 switch (yych) {
3597 case 'C':
3598 case 'c': goto yy402;
3599 default: goto yy62;
3600 }
3601 yy324:
3602 yyaccept = 3;
3603 yych = *(mrk = ++cur);
3604 switch (yych) {
3605 case 'A':
3606 case 'a': goto yy403;
3607 default: goto yy62;
3608 }
3609 yy325:
3610 yyaccept = 3;
3611 yych = *(mrk = ++cur);
3612 switch (yych) {
3613 case 'V':
3614 case 'v': goto yy404;
3615 default: goto yy62;
3616 }
3617 yy326:
3618 yyaccept = 3;
3619 yych = *(mrk = ++cur);
3620 switch (yych) {
3621 case '_': goto yy405;
3622 default: goto yy62;
3623 }
3624 yy327:
3625 yyaccept = 3;
3626 yych = *(mrk = ++cur);
3627 switch (yych) {
3628 case 'A':
3629 case 'a': goto yy406;
3630 default: goto yy62;
3631 }
3632 yy328:
3633 yyaccept = 3;
3634 yych = *(mrk = ++cur);
3635 switch (yych) {
3636 case 'R':
3637 case 'r': goto yy407;
3638 default: goto yy62;
3639 }
3640 yy329:
3641 yyaccept = 3;
3642 yych = *(mrk = ++cur);
3643 switch (yych) {
3644 case 'I':
3645 case 'i': goto yy408;
3646 default: goto yy62;
3647 }
3648 yy330:
3649 yyaccept = 3;
3650 yych = *(mrk = ++cur);
3651 switch (yych) {
3652 case 'N':
3653 case 'n': goto yy409;
3654 default: goto yy62;
3655 }
3656 yy331:
3657 yyaccept = 3;
3658 yych = *(mrk = ++cur);
3659 switch (yych) {
3660 case 'E':
3661 case 'e': goto yy410;
3662 default: goto yy62;
3663 }
3664 yy332:
3665 yyaccept = 3;
3666 yych = *(mrk = ++cur);
3667 switch (yych) {
3668 case 'A':
3669 case 'a': goto yy411;
3670 default: goto yy62;
3671 }
3672 yy333:
3673 yyaccept = 17;
3674 yych = *(mrk = ++cur);
3675 switch (yych) {
3676 case 0x00:
3677 case 0x01:
3678 case 0x02:
3679 case 0x03:
3680 case 0x04:
3681 case 0x05:
3682 case 0x06:
3683 case 0x07:
3684 case 0x08:
3685 case '\t':
3686 case '\n':
3687 case '\v':
3688 case '\f':
3689 case '\r':
3690 case 0x0E:
3691 case 0x0F:
3692 case 0x10:
3693 case 0x11:
3694 case 0x12:
3695 case 0x13:
3696 case 0x14:
3697 case 0x15:
3698 case 0x16:
3699 case 0x17:
3700 case 0x18:
3701 case 0x19:
3702 case 0x1A:
3703 case 0x1B:
3704 case 0x1C:
3705 case 0x1D:
3706 case 0x1E:
3707 case 0x1F:
3708 case ' ':
3709 case '!':
3710 case '"':
3711 case '#':
3712 case '$':
3713 case '%':
3714 case '&':
3715 case '\'':
3716 case '(':
3717 case ')':
3718 case '*':
3719 case '+':
3720 case ',':
3721 case '-':
3722 case '.':
3723 case '/':
3724 case ':':
3725 case ';':
3726 case '<':
3727 case '=':
3728 case '>':
3729 case '?':
3730 case '@':
3731 case '[':
3732 case ']':
3733 case '^':
3734 case '`':
3735 case '{':
3736 case '|':
3737 case '}':
3738 case '~':
3739 case 0x7F: goto yy334;
3740 case '\\': goto yy147;
3741 default: goto yy61;
3742 }
3743 yy334:
3744 #line 229 "src/parser_scan.re"
3745 { NEWTOKEN(PSI_T_TEMP); goto start; }
3746 #line 3747 "src/parser_scan.c"
3747 yy335:
3748 yyaccept = 3;
3749 yych = *(mrk = ++cur);
3750 switch (yych) {
3751 case 'R':
3752 case 'r': goto yy412;
3753 default: goto yy62;
3754 }
3755 yy336:
3756 yyaccept = 3;
3757 yych = *(mrk = ++cur);
3758 switch (yych) {
3759 case 'O':
3760 case 'o': goto yy413;
3761 default: goto yy62;
3762 }
3763 yy337:
3764 yyaccept = 3;
3765 yych = *(mrk = ++cur);
3766 switch (yych) {
3767 case 'L':
3768 case 'l': goto yy414;
3769 default: goto yy62;
3770 }
3771 yy338:
3772 yyaccept = 3;
3773 yych = *(mrk = ++cur);
3774 switch (yych) {
3775 case 'N':
3776 case 'n': goto yy415;
3777 default: goto yy62;
3778 }
3779 yy339:
3780 yyaccept = 3;
3781 yych = *(mrk = ++cur);
3782 switch (yych) {
3783 case 'B':
3784 case 'b': goto yy416;
3785 default: goto yy62;
3786 }
3787 yy340:
3788 yyaccept = 3;
3789 yych = *(mrk = ++cur);
3790 switch (yych) {
3791 case 'T':
3792 case 't': goto yy417;
3793 default: goto yy62;
3794 }
3795 yy341:
3796 yyaccept = 18;
3797 yych = *(mrk = ++cur);
3798 switch (yych) {
3799 case 0x00:
3800 case 0x01:
3801 case 0x02:
3802 case 0x03:
3803 case 0x04:
3804 case 0x05:
3805 case 0x06:
3806 case 0x07:
3807 case 0x08:
3808 case '\t':
3809 case '\n':
3810 case '\v':
3811 case '\f':
3812 case '\r':
3813 case 0x0E:
3814 case 0x0F:
3815 case 0x10:
3816 case 0x11:
3817 case 0x12:
3818 case 0x13:
3819 case 0x14:
3820 case 0x15:
3821 case 0x16:
3822 case 0x17:
3823 case 0x18:
3824 case 0x19:
3825 case 0x1A:
3826 case 0x1B:
3827 case 0x1C:
3828 case 0x1D:
3829 case 0x1E:
3830 case 0x1F:
3831 case ' ':
3832 case '!':
3833 case '"':
3834 case '#':
3835 case '$':
3836 case '%':
3837 case '&':
3838 case '\'':
3839 case '(':
3840 case ')':
3841 case '*':
3842 case '+':
3843 case ',':
3844 case '-':
3845 case '.':
3846 case '/':
3847 case ':':
3848 case ';':
3849 case '<':
3850 case '=':
3851 case '>':
3852 case '?':
3853 case '@':
3854 case '[':
3855 case ']':
3856 case '^':
3857 case '`':
3858 case '{':
3859 case '|':
3860 case '}':
3861 case '~':
3862 case 0x7F: goto yy342;
3863 case '\\': goto yy147;
3864 default: goto yy61;
3865 }
3866 yy342:
3867 #line 210 "src/parser_scan.re"
3868 { NEWTOKEN(PSI_T_TRUE); goto start; }
3869 #line 3870 "src/parser_scan.c"
3870 yy343:
3871 yyaccept = 3;
3872 yych = *(mrk = ++cur);
3873 switch (yych) {
3874 case 'F':
3875 case 'f': goto yy418;
3876 default: goto yy62;
3877 }
3878 yy344:
3879 yyaccept = 3;
3880 yych = *(mrk = ++cur);
3881 switch (yych) {
3882 case 'I':
3883 case 'i': goto yy420;
3884 default: goto yy62;
3885 }
3886 yy345:
3887 yyaccept = 19;
3888 yych = *(mrk = ++cur);
3889 switch (yych) {
3890 case 0x00:
3891 case 0x01:
3892 case 0x02:
3893 case 0x03:
3894 case 0x04:
3895 case 0x05:
3896 case 0x06:
3897 case 0x07:
3898 case 0x08:
3899 case '\t':
3900 case '\n':
3901 case '\v':
3902 case '\f':
3903 case '\r':
3904 case 0x0E:
3905 case 0x0F:
3906 case 0x10:
3907 case 0x11:
3908 case 0x12:
3909 case 0x13:
3910 case 0x14:
3911 case 0x15:
3912 case 0x16:
3913 case 0x17:
3914 case 0x18:
3915 case 0x19:
3916 case 0x1A:
3917 case 0x1B:
3918 case 0x1C:
3919 case 0x1D:
3920 case 0x1E:
3921 case 0x1F:
3922 case ' ':
3923 case '!':
3924 case '"':
3925 case '#':
3926 case '$':
3927 case '%':
3928 case '&':
3929 case '\'':
3930 case '(':
3931 case ')':
3932 case '*':
3933 case '+':
3934 case ',':
3935 case '-':
3936 case '.':
3937 case '/':
3938 case ':':
3939 case ';':
3940 case '<':
3941 case '=':
3942 case '>':
3943 case '?':
3944 case '@':
3945 case '[':
3946 case ']':
3947 case '^':
3948 case '`':
3949 case '{':
3950 case '|':
3951 case '}':
3952 case '~':
3953 case 0x7F: goto yy346;
3954 case '\\': goto yy147;
3955 default: goto yy61;
3956 }
3957 yy346:
3958 #line 238 "src/parser_scan.re"
3959 { NEWTOKEN(PSI_T_ZVAL); goto start; }
3960 #line 3961 "src/parser_scan.c"
3961 yy347:
3962 yyaccept = 3;
3963 yych = *(mrk = ++cur);
3964 switch (yych) {
3965 case 'm': goto yy421;
3966 default: goto yy62;
3967 }
3968 yy348:
3969 yyaccept = 3;
3970 yych = *(mrk = ++cur);
3971 switch (yych) {
3972 case 't': goto yy423;
3973 default: goto yy62;
3974 }
3975 yy349:
3976 yyaccept = 3;
3977 yych = *(mrk = ++cur);
3978 switch (yych) {
3979 case 't': goto yy424;
3980 default: goto yy62;
3981 }
3982 yy350:
3983 yyaccept = 3;
3984 yych = *(mrk = ++cur);
3985 switch (yych) {
3986 case 'l': goto yy272;
3987 default: goto yy62;
3988 }
3989 yy351:
3990 yyaccept = 3;
3991 yych = *(mrk = ++cur);
3992 switch (yych) {
3993 case 's': goto yy425;
3994 default: goto yy62;
3995 }
3996 yy352:
3997 yyaccept = 20;
3998 yych = *(mrk = ++cur);
3999 switch (yych) {
4000 case 0x00:
4001 case 0x01:
4002 case 0x02:
4003 case 0x03:
4004 case 0x04:
4005 case 0x05:
4006 case 0x06:
4007 case 0x07:
4008 case 0x08:
4009 case '\t':
4010 case '\n':
4011 case '\v':
4012 case '\f':
4013 case '\r':
4014 case 0x0E:
4015 case 0x0F:
4016 case 0x10:
4017 case 0x11:
4018 case 0x12:
4019 case 0x13:
4020 case 0x14:
4021 case 0x15:
4022 case 0x16:
4023 case 0x17:
4024 case 0x18:
4025 case 0x19:
4026 case 0x1A:
4027 case 0x1B:
4028 case 0x1C:
4029 case 0x1D:
4030 case 0x1E:
4031 case 0x1F:
4032 case ' ':
4033 case '!':
4034 case '"':
4035 case '#':
4036 case '$':
4037 case '%':
4038 case '&':
4039 case '\'':
4040 case '(':
4041 case ')':
4042 case '*':
4043 case '+':
4044 case ',':
4045 case '-':
4046 case '.':
4047 case '/':
4048 case ':':
4049 case ';':
4050 case '<':
4051 case '=':
4052 case '>':
4053 case '?':
4054 case '@':
4055 case '[':
4056 case ']':
4057 case '^':
4058 case '`':
4059 case '{':
4060 case '|':
4061 case '}':
4062 case '~':
4063 case 0x7F: goto yy353;
4064 case 'V':
4065 case 'v': goto yy380;
4066 case '\\': goto yy147;
4067 default: goto yy61;
4068 }
4069 yy353:
4070 #line 188 "src/parser_scan.re"
4071 { NEWTOKEN(PSI_T_BOOL); goto start; }
4072 #line 4073 "src/parser_scan.c"
4073 yy354:
4074 yyaccept = 21;
4075 yych = *(mrk = ++cur);
4076 switch (yych) {
4077 case 0x00:
4078 case 0x01:
4079 case 0x02:
4080 case 0x03:
4081 case 0x04:
4082 case 0x05:
4083 case 0x06:
4084 case 0x07:
4085 case 0x08:
4086 case '\t':
4087 case '\n':
4088 case '\v':
4089 case '\f':
4090 case '\r':
4091 case 0x0E:
4092 case 0x0F:
4093 case 0x10:
4094 case 0x11:
4095 case 0x12:
4096 case 0x13:
4097 case 0x14:
4098 case 0x15:
4099 case 0x16:
4100 case 0x17:
4101 case 0x18:
4102 case 0x19:
4103 case 0x1A:
4104 case 0x1B:
4105 case 0x1C:
4106 case 0x1D:
4107 case 0x1E:
4108 case 0x1F:
4109 case ' ':
4110 case '!':
4111 case '"':
4112 case '#':
4113 case '$':
4114 case '%':
4115 case '&':
4116 case '\'':
4117 case '(':
4118 case ')':
4119 case '*':
4120 case '+':
4121 case ',':
4122 case '-':
4123 case '.':
4124 case '/':
4125 case ':':
4126 case ';':
4127 case '<':
4128 case '=':
4129 case '>':
4130 case '?':
4131 case '@':
4132 case '[':
4133 case ']':
4134 case '^':
4135 case '`':
4136 case '{':
4137 case '|':
4138 case '}':
4139 case '~':
4140 case 0x7F: goto yy355;
4141 case '\\': goto yy147;
4142 default: goto yy61;
4143 }
4144 yy355:
4145 #line 189 "src/parser_scan.re"
4146 { NEWTOKEN(PSI_T_CHAR); goto start; }
4147 #line 4148 "src/parser_scan.c"
4148 yy356:
4149 yyaccept = 3;
4150 yych = *(mrk = ++cur);
4151 switch (yych) {
4152 case 't': goto yy426;
4153 default: goto yy62;
4154 }
4155 yy357:
4156 yyaccept = 3;
4157 yych = *(mrk = ++cur);
4158 switch (yych) {
4159 case 'l': goto yy428;
4160 default: goto yy62;
4161 }
4162 yy358:
4163 yyaccept = 22;
4164 yych = *(mrk = ++cur);
4165 switch (yych) {
4166 case 0x00:
4167 case 0x01:
4168 case 0x02:
4169 case 0x03:
4170 case 0x04:
4171 case 0x05:
4172 case 0x06:
4173 case 0x07:
4174 case 0x08:
4175 case '\t':
4176 case '\n':
4177 case '\v':
4178 case '\f':
4179 case '\r':
4180 case 0x0E:
4181 case 0x0F:
4182 case 0x10:
4183 case 0x11:
4184 case 0x12:
4185 case 0x13:
4186 case 0x14:
4187 case 0x15:
4188 case 0x16:
4189 case 0x17:
4190 case 0x18:
4191 case 0x19:
4192 case 0x1A:
4193 case 0x1B:
4194 case 0x1C:
4195 case 0x1D:
4196 case 0x1E:
4197 case 0x1F:
4198 case ' ':
4199 case '!':
4200 case '"':
4201 case '#':
4202 case '$':
4203 case '%':
4204 case '&':
4205 case '\'':
4206 case '(':
4207 case ')':
4208 case '*':
4209 case '+':
4210 case ',':
4211 case '-':
4212 case '.':
4213 case '/':
4214 case ':':
4215 case ';':
4216 case '<':
4217 case '=':
4218 case '>':
4219 case '?':
4220 case '@':
4221 case '[':
4222 case ']':
4223 case '^':
4224 case '`':
4225 case '{':
4226 case '|':
4227 case '}':
4228 case '~':
4229 case 0x7F: goto yy359;
4230 case '\\': goto yy147;
4231 default: goto yy61;
4232 }
4233 yy359:
4234 #line 185 "src/parser_scan.re"
4235 { NEWTOKEN(PSI_T_ENUM); goto start; }
4236 #line 4237 "src/parser_scan.c"
4237 yy360:
4238 yyaccept = 3;
4239 yych = *(mrk = ++cur);
4240 switch (yych) {
4241 case 'T': goto yy393;
4242 case 't': goto yy429;
4243 default: goto yy62;
4244 }
4245 yy361:
4246 yyaccept = 3;
4247 yych = *(mrk = ++cur);
4248 switch (yych) {
4249 case 'n': goto yy431;
4250 default: goto yy62;
4251 }
4252 yy362:
4253 yyaccept = 23;
4254 yych = *(mrk = ++cur);
4255 switch (yych) {
4256 case 0x00:
4257 case 0x01:
4258 case 0x02:
4259 case 0x03:
4260 case 0x04:
4261 case 0x05:
4262 case 0x06:
4263 case 0x07:
4264 case 0x08:
4265 case '\t':
4266 case '\n':
4267 case '\v':
4268 case '\f':
4269 case '\r':
4270 case 0x0E:
4271 case 0x0F:
4272 case 0x10:
4273 case 0x11:
4274 case 0x12:
4275 case 0x13:
4276 case 0x14:
4277 case 0x15:
4278 case 0x16:
4279 case 0x17:
4280 case 0x18:
4281 case 0x19:
4282 case 0x1A:
4283 case 0x1B:
4284 case 0x1C:
4285 case 0x1D:
4286 case 0x1E:
4287 case 0x1F:
4288 case ' ':
4289 case '!':
4290 case '"':
4291 case '#':
4292 case '$':
4293 case '%':
4294 case '&':
4295 case '\'':
4296 case '(':
4297 case ')':
4298 case '*':
4299 case '+':
4300 case ',':
4301 case '-':
4302 case '.':
4303 case '/':
4304 case ':':
4305 case ';':
4306 case '<':
4307 case '=':
4308 case '>':
4309 case '?':
4310 case '@':
4311 case '[':
4312 case ']':
4313 case '^':
4314 case '`':
4315 case '{':
4316 case '|':
4317 case '}':
4318 case '~':
4319 case 0x7F: goto yy363;
4320 case '\\': goto yy147;
4321 default: goto yy61;
4322 }
4323 yy363:
4324 #line 181 "src/parser_scan.re"
4325 { NEWTOKEN(PSI_T_LINE); goto start; }
4326 #line 4327 "src/parser_scan.c"
4327 yy364:
4328 yyaccept = 24;
4329 yych = *(mrk = ++cur);
4330 switch (yych) {
4331 case 0x00:
4332 case 0x01:
4333 case 0x02:
4334 case 0x03:
4335 case 0x04:
4336 case 0x05:
4337 case 0x06:
4338 case 0x07:
4339 case 0x08:
4340 case '\t':
4341 case '\n':
4342 case '\v':
4343 case '\f':
4344 case '\r':
4345 case 0x0E:
4346 case 0x0F:
4347 case 0x10:
4348 case 0x11:
4349 case 0x12:
4350 case 0x13:
4351 case 0x14:
4352 case 0x15:
4353 case 0x16:
4354 case 0x17:
4355 case 0x18:
4356 case 0x19:
4357 case 0x1A:
4358 case 0x1B:
4359 case 0x1C:
4360 case 0x1D:
4361 case 0x1E:
4362 case 0x1F:
4363 case ' ':
4364 case '!':
4365 case '"':
4366 case '#':
4367 case '$':
4368 case '%':
4369 case '&':
4370 case '\'':
4371 case '(':
4372 case ')':
4373 case '*':
4374 case '+':
4375 case ',':
4376 case '-':
4377 case '.':
4378 case '/':
4379 case ':':
4380 case ';':
4381 case '<':
4382 case '=':
4383 case '>':
4384 case '?':
4385 case '@':
4386 case '[':
4387 case ']':
4388 case '^':
4389 case '`':
4390 case '{':
4391 case '|':
4392 case '}':
4393 case '~':
4394 case 0x7F: goto yy365;
4395 case '\\': goto yy147;
4396 default: goto yy61;
4397 }
4398 yy365:
4399 #line 192 "src/parser_scan.re"
4400 { NEWTOKEN(PSI_T_LONG); goto start; }
4401 #line 4402 "src/parser_scan.c"
4402 yy366:
4403 yyaccept = 3;
4404 yych = *(mrk = ++cur);
4405 switch (yych) {
4406 case 'm': goto yy432;
4407 default: goto yy62;
4408 }
4409 yy367:
4410 yyaccept = 3;
4411 yych = *(mrk = ++cur);
4412 switch (yych) {
4413 case 't': goto yy433;
4414 default: goto yy62;
4415 }
4416 yy368:
4417 yyaccept = 3;
4418 yych = *(mrk = ++cur);
4419 switch (yych) {
4420 case 'e': goto yy435;
4421 default: goto yy62;
4422 }
4423 yy369:
4424 yyaccept = 3;
4425 yych = *(mrk = ++cur);
4426 switch (yych) {
4427 case 'o': goto yy436;
4428 default: goto yy62;
4429 }
4430 yy370:
4431 yyaccept = 3;
4432 yych = *(mrk = ++cur);
4433 switch (yych) {
4434 case 'c': goto yy437;
4435 default: goto yy62;
4436 }
4437 yy371:
4438 yyaccept = 3;
4439 yych = *(mrk = ++cur);
4440 switch (yych) {
4441 case 'd': goto yy438;
4442 default: goto yy62;
4443 }
4444 yy372:
4445 yyaccept = 3;
4446 yych = *(mrk = ++cur);
4447 switch (yych) {
4448 case 'n': goto yy439;
4449 default: goto yy62;
4450 }
4451 yy373:
4452 yyaccept = 3;
4453 yych = *(mrk = ++cur);
4454 switch (yych) {
4455 case 'g': goto yy441;
4456 default: goto yy62;
4457 }
4458 yy374:
4459 yyaccept = 25;
4460 yych = *(mrk = ++cur);
4461 switch (yych) {
4462 case 0x00:
4463 case 0x01:
4464 case 0x02:
4465 case 0x03:
4466 case 0x04:
4467 case 0x05:
4468 case 0x06:
4469 case 0x07:
4470 case 0x08:
4471 case '\t':
4472 case '\n':
4473 case '\v':
4474 case '\f':
4475 case '\r':
4476 case 0x0E:
4477 case 0x0F:
4478 case 0x10:
4479 case 0x11:
4480 case 0x12:
4481 case 0x13:
4482 case 0x14:
4483 case 0x15:
4484 case 0x16:
4485 case 0x17:
4486 case 0x18:
4487 case 0x19:
4488 case 0x1A:
4489 case 0x1B:
4490 case 0x1C:
4491 case 0x1D:
4492 case 0x1E:
4493 case 0x1F:
4494 case ' ':
4495 case '!':
4496 case '"':
4497 case '#':
4498 case '$':
4499 case '%':
4500 case '&':
4501 case '\'':
4502 case '(':
4503 case ')':
4504 case '*':
4505 case '+':
4506 case ',':
4507 case '-':
4508 case '.':
4509 case '/':
4510 case ':':
4511 case ';':
4512 case '<':
4513 case '=':
4514 case '>':
4515 case '?':
4516 case '@':
4517 case '[':
4518 case ']':
4519 case '^':
4520 case '`':
4521 case '{':
4522 case '|':
4523 case '}':
4524 case '~':
4525 case 0x7F: goto yy375;
4526 case '\\': goto yy147;
4527 default: goto yy61;
4528 }
4529 yy375:
4530 #line 187 "src/parser_scan.re"
4531 { NEWTOKEN(PSI_T_VOID); goto start; }
4532 #line 4533 "src/parser_scan.c"
4533 yy376:
4534 yyaccept = 3;
4535 yych = *(mrk = ++cur);
4536 switch (yych) {
4537 case 't': goto yy442;
4538 default: goto yy62;
4539 }
4540 yy377:
4541 yyaccept = 26;
4542 yych = *(mrk = ++cur);
4543 switch (yych) {
4544 case 0x00:
4545 case 0x01:
4546 case 0x02:
4547 case 0x03:
4548 case 0x04:
4549 case 0x05:
4550 case 0x06:
4551 case 0x07:
4552 case 0x08:
4553 case '\t':
4554 case '\n':
4555 case '\v':
4556 case '\f':
4557 case '\r':
4558 case 0x0E:
4559 case 0x0F:
4560 case 0x10:
4561 case 0x11:
4562 case 0x12:
4563 case 0x13:
4564 case 0x14:
4565 case 0x15:
4566 case 0x16:
4567 case 0x17:
4568 case 0x18:
4569 case 0x19:
4570 case 0x1A:
4571 case 0x1B:
4572 case 0x1C:
4573 case 0x1D:
4574 case 0x1E:
4575 case 0x1F:
4576 case ' ':
4577 case '!':
4578 case '"':
4579 case '#':
4580 case '$':
4581 case '%':
4582 case '&':
4583 case '\'':
4584 case '(':
4585 case ')':
4586 case '*':
4587 case '+':
4588 case ',':
4589 case '-':
4590 case '.':
4591 case '/':
4592 case ':':
4593 case ';':
4594 case '<':
4595 case '=':
4596 case '>':
4597 case '?':
4598 case '@':
4599 case '[':
4600 case ']':
4601 case '^':
4602 case '`':
4603 case '{':
4604 case '|':
4605 case '}':
4606 case '~':
4607 case 0x7F: goto yy378;
4608 case '\\': goto yy147;
4609 default: goto yy61;
4610 }
4611 yy378:
4612 #line 216 "src/parser_scan.re"
4613 { NEWTOKEN(PSI_T_ARRAY); goto start; }
4614 #line 4615 "src/parser_scan.c"
4615 yy379:
4616 yyaccept = 3;
4617 yych = *(mrk = ++cur);
4618 switch (yych) {
4619 case 'L':
4620 case 'l': goto yy443;
4621 default: goto yy62;
4622 }
4623 yy380:
4624 yyaccept = 3;
4625 yych = *(mrk = ++cur);
4626 switch (yych) {
4627 case 'A':
4628 case 'a': goto yy445;
4629 default: goto yy62;
4630 }
4631 yy381:
4632 yyaccept = 3;
4633 yych = *(mrk = ++cur);
4634 switch (yych) {
4635 case 'B':
4636 case 'b': goto yy446;
4637 default: goto yy62;
4638 }
4639 yy382:
4640 yyaccept = 3;
4641 yych = *(mrk = ++cur);
4642 switch (yych) {
4643 case 'A':
4644 case 'a': goto yy447;
4645 default: goto yy62;
4646 }
4647 yy383:
4648 yyaccept = 3;
4649 yych = *(mrk = ++cur);
4650 switch (yych) {
4651 case 'C':
4652 case 'c': goto yy448;
4653 default: goto yy62;
4654 }
4655 yy384:
4656 yyaccept = 27;
4657 yych = *(mrk = ++cur);
4658 switch (yych) {
4659 case 0x00:
4660 case 0x01:
4661 case 0x02:
4662 case 0x03:
4663 case 0x04:
4664 case 0x05:
4665 case 0x06:
4666 case 0x07:
4667 case 0x08:
4668 case '\t':
4669 case '\n':
4670 case '\v':
4671 case '\f':
4672 case '\r':
4673 case 0x0E:
4674 case 0x0F:
4675 case 0x10:
4676 case 0x11:
4677 case 0x12:
4678 case 0x13:
4679 case 0x14:
4680 case 0x15:
4681 case 0x16:
4682 case 0x17:
4683 case 0x18:
4684 case 0x19:
4685 case 0x1A:
4686 case 0x1B:
4687 case 0x1C:
4688 case 0x1D:
4689 case 0x1E:
4690 case 0x1F:
4691 case ' ':
4692 case '!':
4693 case '"':
4694 case '#':
4695 case '$':
4696 case '%':
4697 case '&':
4698 case '\'':
4699 case '(':
4700 case ')':
4701 case '*':
4702 case '+':
4703 case ',':
4704 case '-':
4705 case '.':
4706 case '/':
4707 case ':':
4708 case ';':
4709 case '<':
4710 case '=':
4711 case '>':
4712 case '?':
4713 case '@':
4714 case '[':
4715 case ']':
4716 case '^':
4717 case '`':
4718 case '{':
4719 case '|':
4720 case '}':
4721 case '~':
4722 case 0x7F: goto yy385;
4723 case '\\': goto yy147;
4724 default: goto yy61;
4725 }
4726 yy385:
4727 #line 239 "src/parser_scan.re"
4728 { NEWTOKEN(PSI_T_COUNT); goto start; }
4729 #line 4730 "src/parser_scan.c"
4730 yy386:
4731 yyaccept = 3;
4732 yych = *(mrk = ++cur);
4733 switch (yych) {
4734 case 'E':
4735 case 'e': goto yy450;
4736 default: goto yy62;
4737 }
4738 yy387:
4739 yyaccept = 28;
4740 yych = *(mrk = ++cur);
4741 switch (yych) {
4742 case 0x00:
4743 case 0x01:
4744 case 0x02:
4745 case 0x03:
4746 case 0x04:
4747 case 0x05:
4748 case 0x06:
4749 case 0x07:
4750 case 0x08:
4751 case '\t':
4752 case '\n':
4753 case '\v':
4754 case '\f':
4755 case '\r':
4756 case 0x0E:
4757 case 0x0F:
4758 case 0x10:
4759 case 0x11:
4760 case 0x12:
4761 case 0x13:
4762 case 0x14:
4763 case 0x15:
4764 case 0x16:
4765 case 0x17:
4766 case 0x18:
4767 case 0x19:
4768 case 0x1A:
4769 case 0x1B:
4770 case 0x1C:
4771 case 0x1D:
4772 case 0x1E:
4773 case 0x1F:
4774 case ' ':
4775 case '!':
4776 case '"':
4777 case '#':
4778 case '$':
4779 case '%':
4780 case '&':
4781 case '\'':
4782 case '(':
4783 case ')':
4784 case '*':
4785 case '+':
4786 case ',':
4787 case '-':
4788 case '.':
4789 case '/':
4790 case ':':
4791 case ';':
4792 case '<':
4793 case '=':
4794 case '>':
4795 case '?':
4796 case '@':
4797 case '[':
4798 case ']':
4799 case '^':
4800 case '`':
4801 case '{':
4802 case '|':
4803 case '}':
4804 case '~':
4805 case 0x7F: goto yy388;
4806 case '\\': goto yy147;
4807 default: goto yy61;
4808 }
4809 yy388:
4810 #line 202 "src/parser_scan.re"
4811 { NEWTOKEN(PSI_T_ENDIF); goto start; }
4812 #line 4813 "src/parser_scan.c"
4813 yy389:
4814 yyaccept = 29;
4815 yych = *(mrk = ++cur);
4816 switch (yych) {
4817 case 0x00:
4818 case 0x01:
4819 case 0x02:
4820 case 0x03:
4821 case 0x04:
4822 case 0x05:
4823 case 0x06:
4824 case 0x07:
4825 case 0x08:
4826 case '\t':
4827 case '\n':
4828 case '\v':
4829 case '\f':
4830 case '\r':
4831 case 0x0E:
4832 case 0x0F:
4833 case 0x10:
4834 case 0x11:
4835 case 0x12:
4836 case 0x13:
4837 case 0x14:
4838 case 0x15:
4839 case 0x16:
4840 case 0x17:
4841 case 0x18:
4842 case 0x19:
4843 case 0x1A:
4844 case 0x1B:
4845 case 0x1C:
4846 case 0x1D:
4847 case 0x1E:
4848 case 0x1F:
4849 case ' ':
4850 case '!':
4851 case '"':
4852 case '#':
4853 case '$':
4854 case '%':
4855 case '&':
4856 case '\'':
4857 case '(':
4858 case ')':
4859 case '*':
4860 case '+':
4861 case ',':
4862 case '-':
4863 case '.':
4864 case '/':
4865 case ':':
4866 case ';':
4867 case '<':
4868 case '=':
4869 case '>':
4870 case '?':
4871 case '@':
4872 case '[':
4873 case ']':
4874 case '^':
4875 case '`':
4876 case '{':
4877 case '|':
4878 case '}':
4879 case '~':
4880 case 0x7F: goto yy390;
4881 case '\\': goto yy147;
4882 default: goto yy61;
4883 }
4884 yy390:
4885 #line 207 "src/parser_scan.re"
4886 { NEWTOKEN(PSI_T_ERROR); goto start; }
4887 #line 4888 "src/parser_scan.c"
4888 yy391:
4889 yyaccept = 30;
4890 yych = *(mrk = ++cur);
4891 switch (yych) {
4892 case 0x00:
4893 case 0x01:
4894 case 0x02:
4895 case 0x03:
4896 case 0x04:
4897 case 0x05:
4898 case 0x06:
4899 case 0x07:
4900 case 0x08:
4901 case '\t':
4902 case '\n':
4903 case '\v':
4904 case '\f':
4905 case '\r':
4906 case 0x0E:
4907 case 0x0F:
4908 case 0x10:
4909 case 0x11:
4910 case 0x12:
4911 case 0x13:
4912 case 0x14:
4913 case 0x15:
4914 case 0x16:
4915 case 0x17:
4916 case 0x18:
4917 case 0x19:
4918 case 0x1A:
4919 case 0x1B:
4920 case 0x1C:
4921 case 0x1D:
4922 case 0x1E:
4923 case 0x1F:
4924 case ' ':
4925 case '!':
4926 case '"':
4927 case '#':
4928 case '$':
4929 case '%':
4930 case '&':
4931 case '\'':
4932 case '(':
4933 case ')':
4934 case '*':
4935 case '+':
4936 case ',':
4937 case '-':
4938 case '.':
4939 case '/':
4940 case ':':
4941 case ';':
4942 case '<':
4943 case '=':
4944 case '>':
4945 case '?':
4946 case '@':
4947 case '[':
4948 case ']':
4949 case '^':
4950 case '`':
4951 case '{':
4952 case '|':
4953 case '}':
4954 case '~':
4955 case 0x7F: goto yy392;
4956 case '\\': goto yy147;
4957 default: goto yy61;
4958 }
4959 yy392:
4960 #line 211 "src/parser_scan.re"
4961 { NEWTOKEN(PSI_T_FALSE); goto start; }
4962 #line 4963 "src/parser_scan.c"
4963 yy393:
4964 yyaccept = 3;
4965 yych = *(mrk = ++cur);
4966 switch (yych) {
4967 case 'V':
4968 case 'v': goto yy452;
4969 default: goto yy62;
4970 }
4971 yy394:
4972 yyaccept = 3;
4973 yych = *(mrk = ++cur);
4974 switch (yych) {
4975 case 'I':
4976 case 'i': goto yy453;
4977 default: goto yy62;
4978 }
4979 yy395:
4980 yyaccept = 31;
4981 yych = *(mrk = ++cur);
4982 switch (yych) {
4983 case 0x00:
4984 case 0x01:
4985 case 0x02:
4986 case 0x03:
4987 case 0x04:
4988 case 0x05:
4989 case 0x06:
4990 case 0x07:
4991 case 0x08:
4992 case '\t':
4993 case '\n':
4994 case '\v':
4995 case '\f':
4996 case '\r':
4997 case 0x0E:
4998 case 0x0F:
4999 case 0x10:
5000 case 0x11:
5001 case 0x12:
5002 case 0x13:
5003 case 0x14:
5004 case 0x15:
5005 case 0x16:
5006 case 0x17:
5007 case 0x18:
5008 case 0x19:
5009 case 0x1A:
5010 case 0x1B:
5011 case 0x1C:
5012 case 0x1D:
5013 case 0x1E:
5014 case 0x1F:
5015 case ' ':
5016 case '!':
5017 case '"':
5018 case '#':
5019 case '$':
5020 case '%':
5021 case '&':
5022 case '\'':
5023 case '(':
5024 case ')':
5025 case '*':
5026 case '+':
5027 case ',':
5028 case '-':
5029 case '.':
5030 case '/':
5031 case ':':
5032 case ';':
5033 case '<':
5034 case '=':
5035 case '>':
5036 case '?':
5037 case '@':
5038 case '[':
5039 case ']':
5040 case '^':
5041 case '`':
5042 case '{':
5043 case '|':
5044 case '}':
5045 case '~':
5046 case 0x7F: goto yy396;
5047 case '\\': goto yy147;
5048 default: goto yy61;
5049 }
5050 yy396:
5051 #line 198 "src/parser_scan.re"
5052 { NEWTOKEN(PSI_T_IFDEF); goto start; }
5053 #line 5054 "src/parser_scan.c"
5054 yy397:
5055 yyaccept = 3;
5056 yych = *(mrk = ++cur);
5057 switch (yych) {
5058 case 'F':
5059 case 'f': goto yy454;
5060 default: goto yy62;
5061 }
5062 yy398:
5063 yyaccept = 3;
5064 yych = *(mrk = ++cur);
5065 switch (yych) {
5066 case 'D':
5067 case 'd': goto yy456;
5068 default: goto yy62;
5069 }
5070 yy399:
5071 yyaccept = 3;
5072 yych = *(mrk = ++cur);
5073 switch (yych) {
5074 case 'L':
5075 case 'l': goto yy457;
5076 default: goto yy62;
5077 }
5078 yy400:
5079 yyaccept = 32;
5080 yych = *(mrk = ++cur);
5081 switch (yych) {
5082 case 0x00:
5083 case 0x01:
5084 case 0x02:
5085 case 0x03:
5086 case 0x04:
5087 case 0x05:
5088 case 0x06:
5089 case 0x07:
5090 case 0x08:
5091 case '\t':
5092 case '\n':
5093 case '\v':
5094 case '\f':
5095 case '\r':
5096 case 0x0E:
5097 case 0x0F:
5098 case 0x10:
5099 case 0x11:
5100 case 0x12:
5101 case 0x13:
5102 case 0x14:
5103 case 0x15:
5104 case 0x16:
5105 case 0x17:
5106 case 0x18:
5107 case 0x19:
5108 case 0x1A:
5109 case 0x1B:
5110 case 0x1C:
5111 case 0x1D:
5112 case 0x1E:
5113 case 0x1F:
5114 case ' ':
5115 case '!':
5116 case '"':
5117 case '#':
5118 case '$':
5119 case '%':
5120 case '&':
5121 case '\'':
5122 case '(':
5123 case ')':
5124 case '*':
5125 case '+':
5126 case ',':
5127 case '-':
5128 case '.':
5129 case '/':
5130 case ':':
5131 case ';':
5132 case '<':
5133 case '=':
5134 case '>':
5135 case '?':
5136 case '@':
5137 case '[':
5138 case ']':
5139 case '^':
5140 case '`':
5141 case '{':
5142 case '|':
5143 case '}':
5144 case '~':
5145 case 0x7F: goto yy401;
5146 case '\\': goto yy147;
5147 default: goto yy61;
5148 }
5149 yy401:
5150 #line 213 "src/parser_scan.re"
5151 { NEWTOKEN(PSI_T_MIXED); goto start; }
5152 #line 5153 "src/parser_scan.c"
5153 yy402:
5154 yyaccept = 3;
5155 yych = *(mrk = ++cur);
5156 switch (yych) {
5157 case 'T':
5158 case 't': goto yy459;
5159 default: goto yy62;
5160 }
5161 yy403:
5162 yyaccept = 3;
5163 yych = *(mrk = ++cur);
5164 switch (yych) {
5165 case 'L':
5166 case 'l': goto yy461;
5167 default: goto yy62;
5168 }
5169 yy404:
5170 yyaccept = 3;
5171 yych = *(mrk = ++cur);
5172 switch (yych) {
5173 case 'A':
5174 case 'a': goto yy463;
5175 default: goto yy62;
5176 }
5177 yy405:
5178 yyaccept = 3;
5179 yych = *(mrk = ++cur);
5180 switch (yych) {
5181 case 'A':
5182 case 'a': goto yy464;
5183 default: goto yy62;
5184 }
5185 yy406:
5186 yyaccept = 3;
5187 yych = *(mrk = ++cur);
5188 switch (yych) {
5189 case 'S':
5190 case 's': goto yy465;
5191 default: goto yy62;
5192 }
5193 yy407:
5194 yyaccept = 3;
5195 yych = *(mrk = ++cur);
5196 switch (yych) {
5197 case 'N':
5198 case 'n': goto yy466;
5199 default: goto yy62;
5200 }
5201 yy408:
5202 yyaccept = 3;
5203 yych = *(mrk = ++cur);
5204 switch (yych) {
5205 case 'C':
5206 case 'c': goto yy468;
5207 default: goto yy62;
5208 }
5209 yy409:
5210 yyaccept = 3;
5211 yych = *(mrk = ++cur);
5212 switch (yych) {
5213 case 'G':
5214 case 'g': goto yy470;
5215 default: goto yy62;
5216 }
5217 yy410:
5218 yyaccept = 3;
5219 yych = *(mrk = ++cur);
5220 switch (yych) {
5221 case 'N':
5222 case 'n': goto yy472;
5223 default: goto yy62;
5224 }
5225 yy411:
5226 yyaccept = 3;
5227 yych = *(mrk = ++cur);
5228 switch (yych) {
5229 case 'L':
5230 case 'l': goto yy474;
5231 default: goto yy62;
5232 }
5233 yy412:
5234 yyaccept = 3;
5235 yych = *(mrk = ++cur);
5236 switch (yych) {
5237 case 'R':
5238 case 'r': goto yy476;
5239 default: goto yy62;
5240 }
5241 yy413:
5242 yyaccept = 3;
5243 yych = *(mrk = ++cur);
5244 switch (yych) {
5245 case 'O':
5246 case 'o': goto yy477;
5247 default: goto yy62;
5248 }
5249 yy414:
5250 yyaccept = 3;
5251 yych = *(mrk = ++cur);
5252 switch (yych) {
5253 case 'O':
5254 case 'o': goto yy478;
5255 default: goto yy62;
5256 }
5257 yy415:
5258 yyaccept = 3;
5259 yych = *(mrk = ++cur);
5260 switch (yych) {
5261 case 'T':
5262 case 't': goto yy479;
5263 default: goto yy62;
5264 }
5265 yy416:
5266 yyaccept = 3;
5267 yych = *(mrk = ++cur);
5268 switch (yych) {
5269 case 'J':
5270 case 'j': goto yy481;
5271 default: goto yy62;
5272 }
5273 yy417:
5274 yyaccept = 3;
5275 yych = *(mrk = ++cur);
5276 switch (yych) {
5277 case 'R':
5278 case 'r': goto yy482;
5279 default: goto yy62;
5280 }
5281 yy418:
5282 yyaccept = 33;
5283 yych = *(mrk = ++cur);
5284 switch (yych) {
5285 case 0x00:
5286 case 0x01:
5287 case 0x02:
5288 case 0x03:
5289 case 0x04:
5290 case 0x05:
5291 case 0x06:
5292 case 0x07:
5293 case 0x08:
5294 case '\t':
5295 case '\n':
5296 case '\v':
5297 case '\f':
5298 case '\r':
5299 case 0x0E:
5300 case 0x0F:
5301 case 0x10:
5302 case 0x11:
5303 case 0x12:
5304 case 0x13:
5305 case 0x14:
5306 case 0x15:
5307 case 0x16:
5308 case 0x17:
5309 case 0x18:
5310 case 0x19:
5311 case 0x1A:
5312 case 0x1B:
5313 case 0x1C:
5314 case 0x1D:
5315 case 0x1E:
5316 case 0x1F:
5317 case ' ':
5318 case '!':
5319 case '"':
5320 case '#':
5321 case '$':
5322 case '%':
5323 case '&':
5324 case '\'':
5325 case '(':
5326 case ')':
5327 case '*':
5328 case '+':
5329 case ',':
5330 case '-':
5331 case '.':
5332 case '/':
5333 case ':':
5334 case ';':
5335 case '<':
5336 case '=':
5337 case '>':
5338 case '?':
5339 case '@':
5340 case '[':
5341 case ']':
5342 case '^':
5343 case '`':
5344 case '{':
5345 case '|':
5346 case '}':
5347 case '~':
5348 case 0x7F: goto yy419;
5349 case '\\': goto yy147;
5350 default: goto yy61;
5351 }
5352 yy419:
5353 #line 205 "src/parser_scan.re"
5354 { NEWTOKEN(PSI_T_UNDEF); goto start; }
5355 #line 5356 "src/parser_scan.c"
5356 yy420:
5357 yyaccept = 3;
5358 yych = *(mrk = ++cur);
5359 switch (yych) {
5360 case 'N':
5361 case 'n': goto yy483;
5362 default: goto yy62;
5363 }
5364 yy421:
5365 yyaccept = 34;
5366 yych = *(mrk = ++cur);
5367 switch (yych) {
5368 case 0x00:
5369 case 0x01:
5370 case 0x02:
5371 case 0x03:
5372 case 0x04:
5373 case 0x05:
5374 case 0x06:
5375 case 0x07:
5376 case 0x08:
5377 case '\t':
5378 case '\n':
5379 case '\v':
5380 case '\f':
5381 case '\r':
5382 case 0x0E:
5383 case 0x0F:
5384 case 0x10:
5385 case 0x11:
5386 case 0x12:
5387 case 0x13:
5388 case 0x14:
5389 case 0x15:
5390 case 0x16:
5391 case 0x17:
5392 case 0x18:
5393 case 0x19:
5394 case 0x1A:
5395 case 0x1B:
5396 case 0x1C:
5397 case 0x1D:
5398 case 0x1E:
5399 case 0x1F:
5400 case ' ':
5401 case '!':
5402 case '"':
5403 case '#':
5404 case '$':
5405 case '%':
5406 case '&':
5407 case '\'':
5408 case '(':
5409 case ')':
5410 case '*':
5411 case '+':
5412 case ',':
5413 case '-':
5414 case '.':
5415 case '/':
5416 case ':':
5417 case ';':
5418 case '<':
5419 case '=':
5420 case '>':
5421 case '?':
5422 case '@':
5423 case '[':
5424 case ']':
5425 case '^':
5426 case '`':
5427 case '{':
5428 case '|':
5429 case '}':
5430 case '~':
5431 case 0x7F: goto yy422;
5432 case '\\': goto yy147;
5433 case '_': goto yy484;
5434 default: goto yy61;
5435 }
5436 yy422:
5437 #line 178 "src/parser_scan.re"
5438 { NEWTOKEN(PSI_T_CPP_ASM); goto start; }
5439 #line 5440 "src/parser_scan.c"
5440 yy423:
5441 yyaccept = 3;
5442 yych = *(mrk = ++cur);
5443 switch (yych) {
5444 case 'r': goto yy485;
5445 default: goto yy62;
5446 }
5447 yy424:
5448 yyaccept = 3;
5449 yych = *(mrk = ++cur);
5450 switch (yych) {
5451 case 'e': goto yy486;
5452 default: goto yy62;
5453 }
5454 yy425:
5455 yyaccept = 3;
5456 yych = *(mrk = ++cur);
5457 switch (yych) {
5458 case 't': goto yy487;
5459 default: goto yy62;
5460 }
5461 yy426:
5462 yyaccept = 35;
5463 yych = *(mrk = ++cur);
5464 switch (yych) {
5465 case 0x00:
5466 case 0x01:
5467 case 0x02:
5468 case 0x03:
5469 case 0x04:
5470 case 0x05:
5471 case 0x06:
5472 case 0x07:
5473 case 0x08:
5474 case '\t':
5475 case '\n':
5476 case '\v':
5477 case '\f':
5478 case '\r':
5479 case 0x0E:
5480 case 0x0F:
5481 case 0x10:
5482 case 0x11:
5483 case 0x12:
5484 case 0x13:
5485 case 0x14:
5486 case 0x15:
5487 case 0x16:
5488 case 0x17:
5489 case 0x18:
5490 case 0x19:
5491 case 0x1A:
5492 case 0x1B:
5493 case 0x1C:
5494 case 0x1D:
5495 case 0x1E:
5496 case 0x1F:
5497 case ' ':
5498 case '!':
5499 case '"':
5500 case '#':
5501 case '$':
5502 case '%':
5503 case '&':
5504 case '\'':
5505 case '(':
5506 case ')':
5507 case '*':
5508 case '+':
5509 case ',':
5510 case '-':
5511 case '.':
5512 case '/':
5513 case ':':
5514 case ';':
5515 case '<':
5516 case '=':
5517 case '>':
5518 case '?':
5519 case '@':
5520 case '[':
5521 case ']':
5522 case '^':
5523 case '`':
5524 case '{':
5525 case '|':
5526 case '}':
5527 case '~':
5528 case 0x7F: goto yy427;
5529 case '\\': goto yy147;
5530 default: goto yy61;
5531 }
5532 yy427:
5533 #line 186 "src/parser_scan.re"
5534 { NEWTOKEN(PSI_T_CONST); goto start; }
5535 #line 5536 "src/parser_scan.c"
5536 yy428:
5537 yyaccept = 3;
5538 yych = *(mrk = ++cur);
5539 switch (yych) {
5540 case 'e': goto yy488;
5541 default: goto yy62;
5542 }
5543 yy429:
5544 yyaccept = 36;
5545 yych = *(mrk = ++cur);
5546 switch (yych) {
5547 case 0x00:
5548 case 0x01:
5549 case 0x02:
5550 case 0x03:
5551 case 0x04:
5552 case 0x05:
5553 case 0x06:
5554 case 0x07:
5555 case 0x08:
5556 case '\t':
5557 case '\n':
5558 case '\v':
5559 case '\f':
5560 case '\r':
5561 case 0x0E:
5562 case 0x0F:
5563 case 0x10:
5564 case 0x11:
5565 case 0x12:
5566 case 0x13:
5567 case 0x14:
5568 case 0x15:
5569 case 0x16:
5570 case 0x17:
5571 case 0x18:
5572 case 0x19:
5573 case 0x1A:
5574 case 0x1B:
5575 case 0x1C:
5576 case 0x1D:
5577 case 0x1E:
5578 case 0x1F:
5579 case ' ':
5580 case '!':
5581 case '"':
5582 case '#':
5583 case '$':
5584 case '%':
5585 case '&':
5586 case '\'':
5587 case '(':
5588 case ')':
5589 case '*':
5590 case '+':
5591 case ',':
5592 case '-':
5593 case '.':
5594 case '/':
5595 case ':':
5596 case ';':
5597 case '<':
5598 case '=':
5599 case '>':
5600 case '?':
5601 case '@':
5602 case '[':
5603 case ']':
5604 case '^':
5605 case '`':
5606 case '{':
5607 case '|':
5608 case '}':
5609 case '~':
5610 case 0x7F: goto yy430;
5611 case 'V':
5612 case 'v': goto yy452;
5613 case '\\': goto yy147;
5614 default: goto yy61;
5615 }
5616 yy430:
5617 #line 193 "src/parser_scan.re"
5618 { NEWTOKEN(PSI_T_FLOAT); goto start; }
5619 #line 5620 "src/parser_scan.c"
5620 yy431:
5621 yyaccept = 3;
5622 yych = *(mrk = ++cur);
5623 switch (yych) {
5624 case 'e': goto yy490;
5625 default: goto yy62;
5626 }
5627 yy432:
5628 yyaccept = 3;
5629 yych = *(mrk = ++cur);
5630 switch (yych) {
5631 case 'a': goto yy492;
5632 default: goto yy62;
5633 }
5634 yy433:
5635 yyaccept = 37;
5636 yych = *(mrk = ++cur);
5637 switch (yych) {
5638 case 0x00:
5639 case 0x01:
5640 case 0x02:
5641 case 0x03:
5642 case 0x04:
5643 case 0x05:
5644 case 0x06:
5645 case 0x07:
5646 case 0x08:
5647 case '\t':
5648 case '\n':
5649 case '\v':
5650 case '\f':
5651 case '\r':
5652 case 0x0E:
5653 case 0x0F:
5654 case 0x10:
5655 case 0x11:
5656 case 0x12:
5657 case 0x13:
5658 case 0x14:
5659 case 0x15:
5660 case 0x16:
5661 case 0x17:
5662 case 0x18:
5663 case 0x19:
5664 case 0x1A:
5665 case 0x1B:
5666 case 0x1C:
5667 case 0x1D:
5668 case 0x1E:
5669 case 0x1F:
5670 case ' ':
5671 case '!':
5672 case '"':
5673 case '#':
5674 case '$':
5675 case '%':
5676 case '&':
5677 case '\'':
5678 case '(':
5679 case ')':
5680 case '*':
5681 case '+':
5682 case ',':
5683 case '-':
5684 case '.':
5685 case '/':
5686 case ':':
5687 case ';':
5688 case '<':
5689 case '=':
5690 case '>':
5691 case '?':
5692 case '@':
5693 case '[':
5694 case ']':
5695 case '^':
5696 case '`':
5697 case '{':
5698 case '|':
5699 case '}':
5700 case '~':
5701 case 0x7F: goto yy434;
5702 case '\\': goto yy147;
5703 default: goto yy61;
5704 }
5705 yy434:
5706 #line 190 "src/parser_scan.re"
5707 { NEWTOKEN(PSI_T_SHORT); goto start; }
5708 #line 5709 "src/parser_scan.c"
5709 yy435:
5710 yyaccept = 3;
5711 yych = *(mrk = ++cur);
5712 switch (yych) {
5713 case 'd': goto yy494;
5714 default: goto yy62;
5715 }
5716 yy436:
5717 yyaccept = 3;
5718 yych = *(mrk = ++cur);
5719 switch (yych) {
5720 case 'f': goto yy496;
5721 default: goto yy62;
5722 }
5723 yy437:
5724 yyaccept = 3;
5725 yych = *(mrk = ++cur);
5726 switch (yych) {
5727 case 't': goto yy498;
5728 default: goto yy62;
5729 }
5730 yy438:
5731 yyaccept = 3;
5732 yych = *(mrk = ++cur);
5733 switch (yych) {
5734 case 'e': goto yy500;
5735 default: goto yy62;
5736 }
5737 yy439:
5738 yyaccept = 38;
5739 yych = *(mrk = ++cur);
5740 switch (yych) {
5741 case 0x00:
5742 case 0x01:
5743 case 0x02:
5744 case 0x03:
5745 case 0x04:
5746 case 0x05:
5747 case 0x06:
5748 case 0x07:
5749 case 0x08:
5750 case '\t':
5751 case '\n':
5752 case '\v':
5753 case '\f':
5754 case '\r':
5755 case 0x0E:
5756 case 0x0F:
5757 case 0x10:
5758 case 0x11:
5759 case 0x12:
5760 case 0x13:
5761 case 0x14:
5762 case 0x15:
5763 case 0x16:
5764 case 0x17:
5765 case 0x18:
5766 case 0x19:
5767 case 0x1A:
5768 case 0x1B:
5769 case 0x1C:
5770 case 0x1D:
5771 case 0x1E:
5772 case 0x1F:
5773 case ' ':
5774 case '!':
5775 case '"':
5776 case '#':
5777 case '$':
5778 case '%':
5779 case '&':
5780 case '\'':
5781 case '(':
5782 case ')':
5783 case '*':
5784 case '+':
5785 case ',':
5786 case '-':
5787 case '.':
5788 case '/':
5789 case ':':
5790 case ';':
5791 case '<':
5792 case '=':
5793 case '>':
5794 case '?':
5795 case '@':
5796 case '[':
5797 case ']':
5798 case '^':
5799 case '`':
5800 case '{':
5801 case '|':
5802 case '}':
5803 case '~':
5804 case 0x7F: goto yy440;
5805 case '\\': goto yy147;
5806 default: goto yy61;
5807 }
5808 yy440:
5809 #line 184 "src/parser_scan.re"
5810 { NEWTOKEN(PSI_T_UNION); goto start; }
5811 #line 5812 "src/parser_scan.c"
5812 yy441:
5813 yyaccept = 3;
5814 yych = *(mrk = ++cur);
5815 switch (yych) {
5816 case 'n': goto yy501;
5817 default: goto yy62;
5818 }
5819 yy442:
5820 yyaccept = 3;
5821 yych = *(mrk = ++cur);
5822 switch (yych) {
5823 case 'i': goto yy502;
5824 default: goto yy62;
5825 }
5826 yy443:
5827 yyaccept = 39;
5828 yych = *(mrk = ++cur);
5829 switch (yych) {
5830 case 0x00:
5831 case 0x01:
5832 case 0x02:
5833 case 0x03:
5834 case 0x04:
5835 case 0x05:
5836 case 0x06:
5837 case 0x07:
5838 case 0x08:
5839 case '\t':
5840 case '\n':
5841 case '\v':
5842 case '\f':
5843 case '\r':
5844 case 0x0E:
5845 case 0x0F:
5846 case 0x10:
5847 case 0x11:
5848 case 0x12:
5849 case 0x13:
5850 case 0x14:
5851 case 0x15:
5852 case 0x16:
5853 case 0x17:
5854 case 0x18:
5855 case 0x19:
5856 case 0x1A:
5857 case 0x1B:
5858 case 0x1C:
5859 case 0x1D:
5860 case 0x1E:
5861 case 0x1F:
5862 case ' ':
5863 case '!':
5864 case '"':
5865 case '#':
5866 case '$':
5867 case '%':
5868 case '&':
5869 case '\'':
5870 case '(':
5871 case ')':
5872 case '*':
5873 case '+':
5874 case ',':
5875 case '-':
5876 case '.':
5877 case '/':
5878 case ':':
5879 case ';':
5880 case '<':
5881 case '=':
5882 case '>':
5883 case '?':
5884 case '@':
5885 case '[':
5886 case ']':
5887 case '^':
5888 case '`':
5889 case '{':
5890 case '|':
5891 case '}':
5892 case '~':
5893 case 0x7F: goto yy444;
5894 case '\\': goto yy147;
5895 default: goto yy61;
5896 }
5897 yy444:
5898 #line 236 "src/parser_scan.re"
5899 { NEWTOKEN(PSI_T_ARRVAL); goto start; }
5900 #line 5901 "src/parser_scan.c"
5901 yy445:
5902 yyaccept = 3;
5903 yych = *(mrk = ++cur);
5904 switch (yych) {
5905 case 'L':
5906 case 'l': goto yy503;
5907 default: goto yy62;
5908 }
5909 yy446:
5910 yyaccept = 3;
5911 yych = *(mrk = ++cur);
5912 switch (yych) {
5913 case 'L':
5914 case 'l': goto yy505;
5915 default: goto yy62;
5916 }
5917 yy447:
5918 yyaccept = 3;
5919 yych = *(mrk = ++cur);
5920 switch (yych) {
5921 case 'C':
5922 case 'c': goto yy506;
5923 default: goto yy62;
5924 }
5925 yy448:
5926 yyaccept = 40;
5927 yych = *(mrk = ++cur);
5928 switch (yych) {
5929 case 0x00:
5930 case 0x01:
5931 case 0x02:
5932 case 0x03:
5933 case 0x04:
5934 case 0x05:
5935 case 0x06:
5936 case 0x07:
5937 case 0x08:
5938 case '\t':
5939 case '\n':
5940 case '\v':
5941 case '\f':
5942 case '\r':
5943 case 0x0E:
5944 case 0x0F:
5945 case 0x10:
5946 case 0x11:
5947 case 0x12:
5948 case 0x13:
5949 case 0x14:
5950 case 0x15:
5951 case 0x16:
5952 case 0x17:
5953 case 0x18:
5954 case 0x19:
5955 case 0x1A:
5956 case 0x1B:
5957 case 0x1C:
5958 case 0x1D:
5959 case 0x1E:
5960 case 0x1F:
5961 case ' ':
5962 case '!':
5963 case '"':
5964 case '#':
5965 case '$':
5966 case '%':
5967 case '&':
5968 case '\'':
5969 case '(':
5970 case ')':
5971 case '*':
5972 case '+':
5973 case ',':
5974 case '-':
5975 case '.':
5976 case '/':
5977 case ':':
5978 case ';':
5979 case '<':
5980 case '=':
5981 case '>':
5982 case '?':
5983 case '@':
5984 case '[':
5985 case ']':
5986 case '^':
5987 case '`':
5988 case '{':
5989 case '|':
5990 case '}':
5991 case '~':
5992 case 0x7F: goto yy449;
5993 case '\\': goto yy147;
5994 default: goto yy61;
5995 }
5996 yy449:
5997 #line 240 "src/parser_scan.re"
5998 { NEWTOKEN(PSI_T_CALLOC); goto start; }
5999 #line 6000 "src/parser_scan.c"
6000 yy450:
6001 yyaccept = 41;
6002 yych = *(mrk = ++cur);
6003 switch (yych) {
6004 case 0x00:
6005 case 0x01:
6006 case 0x02:
6007 case 0x03:
6008 case 0x04:
6009 case 0x05:
6010 case 0x06:
6011 case 0x07:
6012 case 0x08:
6013 case '\t':
6014 case '\n':
6015 case '\v':
6016 case '\f':
6017 case '\r':
6018 case 0x0E:
6019 case 0x0F:
6020 case 0x10:
6021 case 0x11:
6022 case 0x12:
6023 case 0x13:
6024 case 0x14:
6025 case 0x15:
6026 case 0x16:
6027 case 0x17:
6028 case 0x18:
6029 case 0x19:
6030 case 0x1A:
6031 case 0x1B:
6032 case 0x1C:
6033 case 0x1D:
6034 case 0x1E:
6035 case 0x1F:
6036 case ' ':
6037 case '!':
6038 case '"':
6039 case '#':
6040 case '$':
6041 case '%':
6042 case '&':
6043 case '\'':
6044 case '(':
6045 case ')':
6046 case '*':
6047 case '+':
6048 case ',':
6049 case '-':
6050 case '.':
6051 case '/':
6052 case ':':
6053 case ';':
6054 case '<':
6055 case '=':
6056 case '>':
6057 case '?':
6058 case '@':
6059 case '[':
6060 case ']':
6061 case '^':
6062 case '`':
6063 case '{':
6064 case '|':
6065 case '}':
6066 case '~':
6067 case 0x7F: goto yy451;
6068 case 'D':
6069 case 'd': goto yy507;
6070 case '\\': goto yy147;
6071 default: goto yy61;
6072 }
6073 yy451:
6074 #line 203 "src/parser_scan.re"
6075 { NEWTOKEN(PSI_T_DEFINE); goto start; }
6076 #line 6077 "src/parser_scan.c"
6077 yy452:
6078 yyaccept = 3;
6079 yych = *(mrk = ++cur);
6080 switch (yych) {
6081 case 'A':
6082 case 'a': goto yy509;
6083 default: goto yy62;
6084 }
6085 yy453:
6086 yyaccept = 3;
6087 yych = *(mrk = ++cur);
6088 switch (yych) {
6089 case 'O':
6090 case 'o': goto yy510;
6091 default: goto yy62;
6092 }
6093 yy454:
6094 yyaccept = 42;
6095 yych = *(mrk = ++cur);
6096 switch (yych) {
6097 case 0x00:
6098 case 0x01:
6099 case 0x02:
6100 case 0x03:
6101 case 0x04:
6102 case 0x05:
6103 case 0x06:
6104 case 0x07:
6105 case 0x08:
6106 case '\t':
6107 case '\n':
6108 case '\v':
6109 case '\f':
6110 case '\r':
6111 case 0x0E:
6112 case 0x0F:
6113 case 0x10:
6114 case 0x11:
6115 case 0x12:
6116 case 0x13:
6117 case 0x14:
6118 case 0x15:
6119 case 0x16:
6120 case 0x17:
6121 case 0x18:
6122 case 0x19:
6123 case 0x1A:
6124 case 0x1B:
6125 case 0x1C:
6126 case 0x1D:
6127 case 0x1E:
6128 case 0x1F:
6129 case ' ':
6130 case '!':
6131 case '"':
6132 case '#':
6133 case '$':
6134 case '%':
6135 case '&':
6136 case '\'':
6137 case '(':
6138 case ')':
6139 case '*':
6140 case '+':
6141 case ',':
6142 case '-':
6143 case '.':
6144 case '/':
6145 case ':':
6146 case ';':
6147 case '<':
6148 case '=':
6149 case '>':
6150 case '?':
6151 case '@':
6152 case '[':
6153 case ']':
6154 case '^':
6155 case '`':
6156 case '{':
6157 case '|':
6158 case '}':
6159 case '~':
6160 case 0x7F: goto yy455;
6161 case '\\': goto yy147;
6162 default: goto yy61;
6163 }
6164 yy455:
6165 #line 199 "src/parser_scan.re"
6166 { NEWTOKEN(PSI_T_IFNDEF); goto start; }
6167 #line 6168 "src/parser_scan.c"
6168 yy456:
6169 yyaccept = 3;
6170 yych = *(mrk = ++cur);
6171 switch (yych) {
6172 case 'E':
6173 case 'e': goto yy511;
6174 default: goto yy62;
6175 }
6176 yy457:
6177 yyaccept = 43;
6178 yych = *(mrk = ++cur);
6179 switch (yych) {
6180 case 0x00:
6181 case 0x01:
6182 case 0x02:
6183 case 0x03:
6184 case 0x04:
6185 case 0x05:
6186 case 0x06:
6187 case 0x07:
6188 case 0x08:
6189 case '\t':
6190 case '\n':
6191 case '\v':
6192 case '\f':
6193 case '\r':
6194 case 0x0E:
6195 case 0x0F:
6196 case 0x10:
6197 case 0x11:
6198 case 0x12:
6199 case 0x13:
6200 case 0x14:
6201 case 0x15:
6202 case 0x16:
6203 case 0x17:
6204 case 0x18:
6205 case 0x19:
6206 case 0x1A:
6207 case 0x1B:
6208 case 0x1C:
6209 case 0x1D:
6210 case 0x1E:
6211 case 0x1F:
6212 case ' ':
6213 case '!':
6214 case '"':
6215 case '#':
6216 case '$':
6217 case '%':
6218 case '&':
6219 case '\'':
6220 case '(':
6221 case ')':
6222 case '*':
6223 case '+':
6224 case ',':
6225 case '-':
6226 case '.':
6227 case '/':
6228 case ':':
6229 case ';':
6230 case '<':
6231 case '=':
6232 case '>':
6233 case '?':
6234 case '@':
6235 case '[':
6236 case ']':
6237 case '^':
6238 case '`':
6239 case '{':
6240 case '|':
6241 case '}':
6242 case '~':
6243 case 0x7F: goto yy458;
6244 case '\\': goto yy147;
6245 default: goto yy61;
6246 }
6247 yy458:
6248 #line 233 "src/parser_scan.re"
6249 { NEWTOKEN(PSI_T_INTVAL); goto start; }
6250 #line 6251 "src/parser_scan.c"
6251 yy459:
6252 yyaccept = 44;
6253 yych = *(mrk = ++cur);
6254 switch (yych) {
6255 case 0x00:
6256 case 0x01:
6257 case 0x02:
6258 case 0x03:
6259 case 0x04:
6260 case 0x05:
6261 case 0x06:
6262 case 0x07:
6263 case 0x08:
6264 case '\t':
6265 case '\n':
6266 case '\v':
6267 case '\f':
6268 case '\r':
6269 case 0x0E:
6270 case 0x0F:
6271 case 0x10:
6272 case 0x11:
6273 case 0x12:
6274 case 0x13:
6275 case 0x14:
6276 case 0x15:
6277 case 0x16:
6278 case 0x17:
6279 case 0x18:
6280 case 0x19:
6281 case 0x1A:
6282 case 0x1B:
6283 case 0x1C:
6284 case 0x1D:
6285 case 0x1E:
6286 case 0x1F:
6287 case ' ':
6288 case '!':
6289 case '"':
6290 case '#':
6291 case '$':
6292 case '%':
6293 case '&':
6294 case '\'':
6295 case '(':
6296 case ')':
6297 case '*':
6298 case '+':
6299 case ',':
6300 case '-':
6301 case '.':
6302 case '/':
6303 case ':':
6304 case ';':
6305 case '<':
6306 case '=':
6307 case '>':
6308 case '?':
6309 case '@':
6310 case '[':
6311 case ']':
6312 case '^':
6313 case '`':
6314 case '{':
6315 case '|':
6316 case '}':
6317 case '~':
6318 case 0x7F: goto yy460;
6319 case '\\': goto yy147;
6320 default: goto yy61;
6321 }
6322 yy460:
6323 #line 217 "src/parser_scan.re"
6324 { NEWTOKEN(PSI_T_OBJECT); goto start; }
6325 #line 6326 "src/parser_scan.c"
6326 yy461:
6327 yyaccept = 45;
6328 yych = *(mrk = ++cur);
6329 switch (yych) {
6330 case 0x00:
6331 case 0x01:
6332 case 0x02:
6333 case 0x03:
6334 case 0x04:
6335 case 0x05:
6336 case 0x06:
6337 case 0x07:
6338 case 0x08:
6339 case '\t':
6340 case '\n':
6341 case '\v':
6342 case '\f':
6343 case '\r':
6344 case 0x0E:
6345 case 0x0F:
6346 case 0x10:
6347 case 0x11:
6348 case 0x12:
6349 case 0x13:
6350 case 0x14:
6351 case 0x15:
6352 case 0x16:
6353 case 0x17:
6354 case 0x18:
6355 case 0x19:
6356 case 0x1A:
6357 case 0x1B:
6358 case 0x1C:
6359 case 0x1D:
6360 case 0x1E:
6361 case 0x1F:
6362 case ' ':
6363 case '!':
6364 case '"':
6365 case '#':
6366 case '$':
6367 case '%':
6368 case '&':
6369 case '\'':
6370 case '(':
6371 case ')':
6372 case '*':
6373 case '+':
6374 case ',':
6375 case '-':
6376 case '.':
6377 case '/':
6378 case ':':
6379 case ';':
6380 case '<':
6381 case '=':
6382 case '>':
6383 case '?':
6384 case '@':
6385 case '[':
6386 case ']':
6387 case '^':
6388 case '`':
6389 case '{':
6390 case '|':
6391 case '}':
6392 case '~':
6393 case 0x7F: goto yy462;
6394 case '\\': goto yy147;
6395 default: goto yy61;
6396 }
6397 yy462:
6398 #line 237 "src/parser_scan.re"
6399 { NEWTOKEN(PSI_T_OBJVAL); goto start; }
6400 #line 6401 "src/parser_scan.c"
6401 yy463:
6402 yyaccept = 3;
6403 yych = *(mrk = ++cur);
6404 switch (yych) {
6405 case 'L':
6406 case 'l': goto yy513;
6407 default: goto yy62;
6408 }
6409 yy464:
6410 yyaccept = 3;
6411 yych = *(mrk = ++cur);
6412 switch (yych) {
6413 case 'S':
6414 case 's': goto yy515;
6415 default: goto yy62;
6416 }
6417 yy465:
6418 yyaccept = 3;
6419 yych = *(mrk = ++cur);
6420 switch (yych) {
6421 case 'S':
6422 case 's': goto yy516;
6423 default: goto yy62;
6424 }
6425 yy466:
6426 yyaccept = 46;
6427 yych = *(mrk = ++cur);
6428 switch (yych) {
6429 case 0x00:
6430 case 0x01:
6431 case 0x02:
6432 case 0x03:
6433 case 0x04:
6434 case 0x05:
6435 case 0x06:
6436 case 0x07:
6437 case 0x08:
6438 case '\t':
6439 case '\n':
6440 case '\v':
6441 case '\f':
6442 case '\r':
6443 case 0x0E:
6444 case 0x0F:
6445 case 0x10:
6446 case 0x11:
6447 case 0x12:
6448 case 0x13:
6449 case 0x14:
6450 case 0x15:
6451 case 0x16:
6452 case 0x17:
6453 case 0x18:
6454 case 0x19:
6455 case 0x1A:
6456 case 0x1B:
6457 case 0x1C:
6458 case 0x1D:
6459 case 0x1E:
6460 case 0x1F:
6461 case ' ':
6462 case '!':
6463 case '"':
6464 case '#':
6465 case '$':
6466 case '%':
6467 case '&':
6468 case '\'':
6469 case '(':
6470 case ')':
6471 case '*':
6472 case '+':
6473 case ',':
6474 case '-':
6475 case '.':
6476 case '/':
6477 case ':':
6478 case ';':
6479 case '<':
6480 case '=':
6481 case '>':
6482 case '?':
6483 case '@':
6484 case '[':
6485 case ']':
6486 case '^':
6487 case '`':
6488 case '{':
6489 case '|':
6490 case '}':
6491 case '~':
6492 case 0x7F: goto yy467;
6493 case '\\': goto yy147;
6494 default: goto yy61;
6495 }
6496 yy467:
6497 #line 226 "src/parser_scan.re"
6498 { NEWTOKEN(PSI_T_RETURN); goto start; }
6499 #line 6500 "src/parser_scan.c"
6500 yy468:
6501 yyaccept = 47;
6502 yych = *(mrk = ++cur);
6503 switch (yych) {
6504 case 0x00:
6505 case 0x01:
6506 case 0x02:
6507 case 0x03:
6508 case 0x04:
6509 case 0x05:
6510 case 0x06:
6511 case 0x07:
6512 case 0x08:
6513 case '\t':
6514 case '\n':
6515 case '\v':
6516 case '\f':
6517 case '\r':
6518 case 0x0E:
6519 case 0x0F:
6520 case 0x10:
6521 case 0x11:
6522 case 0x12:
6523 case 0x13:
6524 case 0x14:
6525 case 0x15:
6526 case 0x16:
6527 case 0x17:
6528 case 0x18:
6529 case 0x19:
6530 case 0x1A:
6531 case 0x1B:
6532 case 0x1C:
6533 case 0x1D:
6534 case 0x1E:
6535 case 0x1F:
6536 case ' ':
6537 case '!':
6538 case '"':
6539 case '#':
6540 case '$':
6541 case '%':
6542 case '&':
6543 case '\'':
6544 case '(':
6545 case ')':
6546 case '*':
6547 case '+':
6548 case ',':
6549 case '-':
6550 case '.':
6551 case '/':
6552 case ':':
6553 case ';':
6554 case '<':
6555 case '=':
6556 case '>':
6557 case '?':
6558 case '@':
6559 case '[':
6560 case ']':
6561 case '^':
6562 case '`':
6563 case '{':
6564 case '|':
6565 case '}':
6566 case '~':
6567 case 0x7F: goto yy469;
6568 case '\\': goto yy147;
6569 default: goto yy61;
6570 }
6571 yy469:
6572 #line 219 "src/parser_scan.re"
6573 { NEWTOKEN(PSI_T_STATIC); goto start; }
6574 #line 6575 "src/parser_scan.c"
6575 yy470:
6576 yyaccept = 48;
6577 yych = *(mrk = ++cur);
6578 switch (yych) {
6579 case 0x00:
6580 case 0x01:
6581 case 0x02:
6582 case 0x03:
6583 case 0x04:
6584 case 0x05:
6585 case 0x06:
6586 case 0x07:
6587 case 0x08:
6588 case '\t':
6589 case '\n':
6590 case '\v':
6591 case '\f':
6592 case '\r':
6593 case 0x0E:
6594 case 0x0F:
6595 case 0x10:
6596 case 0x11:
6597 case 0x12:
6598 case 0x13:
6599 case 0x14:
6600 case 0x15:
6601 case 0x16:
6602 case 0x17:
6603 case 0x18:
6604 case 0x19:
6605 case 0x1A:
6606 case 0x1B:
6607 case 0x1C:
6608 case 0x1D:
6609 case 0x1E:
6610 case 0x1F:
6611 case ' ':
6612 case '!':
6613 case '"':
6614 case '#':
6615 case '$':
6616 case '%':
6617 case '&':
6618 case '\'':
6619 case '(':
6620 case ')':
6621 case '*':
6622 case '+':
6623 case ',':
6624 case '-':
6625 case '.':
6626 case '/':
6627 case ':':
6628 case ';':
6629 case '<':
6630 case '=':
6631 case '>':
6632 case '?':
6633 case '@':
6634 case '[':
6635 case ']':
6636 case '^':
6637 case '`':
6638 case '{':
6639 case '|':
6640 case '}':
6641 case '~':
6642 case 0x7F: goto yy471;
6643 case '\\': goto yy147;
6644 default: goto yy61;
6645 }
6646 yy471:
6647 #line 215 "src/parser_scan.re"
6648 { NEWTOKEN(PSI_T_STRING); goto start; }
6649 #line 6650 "src/parser_scan.c"
6650 yy472:
6651 yyaccept = 49;
6652 yych = *(mrk = ++cur);
6653 switch (yych) {
6654 case 0x00:
6655 case 0x01:
6656 case 0x02:
6657 case 0x03:
6658 case 0x04:
6659 case 0x05:
6660 case 0x06:
6661 case 0x07:
6662 case 0x08:
6663 case '\t':
6664 case '\n':
6665 case '\v':
6666 case '\f':
6667 case '\r':
6668 case 0x0E:
6669 case 0x0F:
6670 case 0x10:
6671 case 0x11:
6672 case 0x12:
6673 case 0x13:
6674 case 0x14:
6675 case 0x15:
6676 case 0x16:
6677 case 0x17:
6678 case 0x18:
6679 case 0x19:
6680 case 0x1A:
6681 case 0x1B:
6682 case 0x1C:
6683 case 0x1D:
6684 case 0x1E:
6685 case 0x1F:
6686 case ' ':
6687 case '!':
6688 case '"':
6689 case '#':
6690 case '$':
6691 case '%':
6692 case '&':
6693 case '\'':
6694 case '(':
6695 case ')':
6696 case '*':
6697 case '+':
6698 case ',':
6699 case '-':
6700 case '.':
6701 case '/':
6702 case ':':
6703 case ';':
6704 case '<':
6705 case '=':
6706 case '>':
6707 case '?':
6708 case '@':
6709 case '[':
6710 case ']':
6711 case '^':
6712 case '`':
6713 case '{':
6714 case '|':
6715 case '}':
6716 case '~':
6717 case 0x7F: goto yy473;
6718 case '\\': goto yy147;
6719 default: goto yy61;
6720 }
6721 yy473:
6722 #line 230 "src/parser_scan.re"
6723 { NEWTOKEN(PSI_T_STRLEN); goto start; }
6724 #line 6725 "src/parser_scan.c"
6725 yy474:
6726 yyaccept = 50;
6727 yych = *(mrk = ++cur);
6728 switch (yych) {
6729 case 0x00:
6730 case 0x01:
6731 case 0x02:
6732 case 0x03:
6733 case 0x04:
6734 case 0x05:
6735 case 0x06:
6736 case 0x07:
6737 case 0x08:
6738 case '\t':
6739 case '\n':
6740 case '\v':
6741 case '\f':
6742 case '\r':
6743 case 0x0E:
6744 case 0x0F:
6745 case 0x10:
6746 case 0x11:
6747 case 0x12:
6748 case 0x13:
6749 case 0x14:
6750 case 0x15:
6751 case 0x16:
6752 case 0x17:
6753 case 0x18:
6754 case 0x19:
6755 case 0x1A:
6756 case 0x1B:
6757 case 0x1C:
6758 case 0x1D:
6759 case 0x1E:
6760 case 0x1F:
6761 case ' ':
6762 case '!':
6763 case '"':
6764 case '#':
6765 case '$':
6766 case '%':
6767 case '&':
6768 case '\'':
6769 case '(':
6770 case ')':
6771 case '*':
6772 case '+':
6773 case ',':
6774 case '-':
6775 case '.':
6776 case '/':
6777 case ':':
6778 case ';':
6779 case '<':
6780 case '=':
6781 case '>':
6782 case '?':
6783 case '@':
6784 case '[':
6785 case ']':
6786 case '^':
6787 case '`':
6788 case '{':
6789 case '|':
6790 case '}':
6791 case '~':
6792 case 0x7F: goto yy475;
6793 case '\\': goto yy147;
6794 default: goto yy61;
6795 }
6796 yy475:
6797 #line 231 "src/parser_scan.re"
6798 { NEWTOKEN(PSI_T_STRVAL); goto start; }
6799 #line 6800 "src/parser_scan.c"
6800 yy476:
6801 yyaccept = 3;
6802 yych = *(mrk = ++cur);
6803 switch (yych) {
6804 case 'A':
6805 case 'a': goto yy517;
6806 default: goto yy62;
6807 }
6808 yy477:
6809 yyaccept = 3;
6810 yych = *(mrk = ++cur);
6811 switch (yych) {
6812 case 'L':
6813 case 'l': goto yy518;
6814 default: goto yy62;
6815 }
6816 yy478:
6817 yyaccept = 3;
6818 yych = *(mrk = ++cur);
6819 switch (yych) {
6820 case 'A':
6821 case 'a': goto yy520;
6822 default: goto yy62;
6823 }
6824 yy479:
6825 yyaccept = 51;
6826 yych = *(mrk = ++cur);
6827 switch (yych) {
6828 case 0x00:
6829 case 0x01:
6830 case 0x02:
6831 case 0x03:
6832 case 0x04:
6833 case 0x05:
6834 case 0x06:
6835 case 0x07:
6836 case 0x08:
6837 case '\t':
6838 case '\n':
6839 case '\v':
6840 case '\f':
6841 case '\r':
6842 case 0x0E:
6843 case 0x0F:
6844 case 0x10:
6845 case 0x11:
6846 case 0x12:
6847 case 0x13:
6848 case 0x14:
6849 case 0x15:
6850 case 0x16:
6851 case 0x17:
6852 case 0x18:
6853 case 0x19:
6854 case 0x1A:
6855 case 0x1B:
6856 case 0x1C:
6857 case 0x1D:
6858 case 0x1E:
6859 case 0x1F:
6860 case ' ':
6861 case '!':
6862 case '"':
6863 case '#':
6864 case '$':
6865 case '%':
6866 case '&':
6867 case '\'':
6868 case '(':
6869 case ')':
6870 case '*':
6871 case '+':
6872 case ',':
6873 case '-':
6874 case '.':
6875 case '/':
6876 case ':':
6877 case ';':
6878 case '<':
6879 case '=':
6880 case '>':
6881 case '?':
6882 case '@':
6883 case '[':
6884 case ']':
6885 case '^':
6886 case '`':
6887 case '{':
6888 case '|':
6889 case '}':
6890 case '~':
6891 case 0x7F: goto yy480;
6892 case '\\': goto yy147;
6893 default: goto yy61;
6894 }
6895 yy480:
6896 #line 244 "src/parser_scan.re"
6897 { NEWTOKEN(PSI_T_TO_INT); goto start; }
6898 #line 6899 "src/parser_scan.c"
6899 yy481:
6900 yyaccept = 3;
6901 yych = *(mrk = ++cur);
6902 switch (yych) {
6903 case 'E':
6904 case 'e': goto yy521;
6905 default: goto yy62;
6906 }
6907 yy482:
6908 yyaccept = 3;
6909 yych = *(mrk = ++cur);
6910 switch (yych) {
6911 case 'I':
6912 case 'i': goto yy522;
6913 default: goto yy62;
6914 }
6915 yy483:
6916 yyaccept = 3;
6917 yych = *(mrk = ++cur);
6918 switch (yych) {
6919 case 'G':
6920 case 'g': goto yy523;
6921 default: goto yy62;
6922 }
6923 yy484:
6924 yyaccept = 3;
6925 yych = *(mrk = ++cur);
6926 switch (yych) {
6927 case '_': goto yy525;
6928 default: goto yy62;
6929 }
6930 yy485:
6931 yyaccept = 3;
6932 yych = *(mrk = ++cur);
6933 switch (yych) {
6934 case 'i': goto yy526;
6935 default: goto yy62;
6936 }
6937 yy486:
6938 yyaccept = 3;
6939 yych = *(mrk = ++cur);
6940 switch (yych) {
6941 case 'n': goto yy527;
6942 default: goto yy62;
6943 }
6944 yy487:
6945 yyaccept = 3;
6946 yych = *(mrk = ++cur);
6947 switch (yych) {
6948 case 'r': goto yy528;
6949 default: goto yy62;
6950 }
6951 yy488:
6952 yyaccept = 52;
6953 yych = *(mrk = ++cur);
6954 switch (yych) {
6955 case 0x00:
6956 case 0x01:
6957 case 0x02:
6958 case 0x03:
6959 case 0x04:
6960 case 0x05:
6961 case 0x06:
6962 case 0x07:
6963 case 0x08:
6964 case '\t':
6965 case '\n':
6966 case '\v':
6967 case '\f':
6968 case '\r':
6969 case 0x0E:
6970 case 0x0F:
6971 case 0x10:
6972 case 0x11:
6973 case 0x12:
6974 case 0x13:
6975 case 0x14:
6976 case 0x15:
6977 case 0x16:
6978 case 0x17:
6979 case 0x18:
6980 case 0x19:
6981 case 0x1A:
6982 case 0x1B:
6983 case 0x1C:
6984 case 0x1D:
6985 case 0x1E:
6986 case 0x1F:
6987 case ' ':
6988 case '!':
6989 case '"':
6990 case '#':
6991 case '$':
6992 case '%':
6993 case '&':
6994 case '\'':
6995 case '(':
6996 case ')':
6997 case '*':
6998 case '+':
6999 case ',':
7000 case '-':
7001 case '.':
7002 case '/':
7003 case ':':
7004 case ';':
7005 case '<':
7006 case '=':
7007 case '>':
7008 case '?':
7009 case '@':
7010 case '[':
7011 case ']':
7012 case '^':
7013 case '`':
7014 case '{':
7015 case '|':
7016 case '}':
7017 case '~':
7018 case 0x7F: goto yy489;
7019 case '\\': goto yy147;
7020 default: goto yy61;
7021 }
7022 yy489:
7023 #line 194 "src/parser_scan.re"
7024 { NEWTOKEN(PSI_T_DOUBLE); goto start; }
7025 #line 7026 "src/parser_scan.c"
7026 yy490:
7027 yyaccept = 53;
7028 yych = *(mrk = ++cur);
7029 switch (yych) {
7030 case 0x00:
7031 case 0x01:
7032 case 0x02:
7033 case 0x03:
7034 case 0x04:
7035 case 0x05:
7036 case 0x06:
7037 case 0x07:
7038 case 0x08:
7039 case '\t':
7040 case '\n':
7041 case '\v':
7042 case '\f':
7043 case '\r':
7044 case 0x0E:
7045 case 0x0F:
7046 case 0x10:
7047 case 0x11:
7048 case 0x12:
7049 case 0x13:
7050 case 0x14:
7051 case 0x15:
7052 case 0x16:
7053 case 0x17:
7054 case 0x18:
7055 case 0x19:
7056 case 0x1A:
7057 case 0x1B:
7058 case 0x1C:
7059 case 0x1D:
7060 case 0x1E:
7061 case 0x1F:
7062 case ' ':
7063 case '!':
7064 case '"':
7065 case '#':
7066 case '$':
7067 case '%':
7068 case '&':
7069 case '\'':
7070 case '(':
7071 case ')':
7072 case '*':
7073 case '+':
7074 case ',':
7075 case '-':
7076 case '.':
7077 case '/':
7078 case ':':
7079 case ';':
7080 case '<':
7081 case '=':
7082 case '>':
7083 case '?':
7084 case '@':
7085 case '[':
7086 case ']':
7087 case '^':
7088 case '`':
7089 case '{':
7090 case '|':
7091 case '}':
7092 case '~':
7093 case 0x7F: goto yy491;
7094 case '\\': goto yy147;
7095 default: goto yy61;
7096 }
7097 yy491:
7098 #line 175 "src/parser_scan.re"
7099 { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
7100 #line 7101 "src/parser_scan.c"
7101 yy492:
7102 yyaccept = 54;
7103 yych = *(mrk = ++cur);
7104 switch (yych) {
7105 case 0x00:
7106 case 0x01:
7107 case 0x02:
7108 case 0x03:
7109 case 0x04:
7110 case 0x05:
7111 case 0x06:
7112 case 0x07:
7113 case 0x08:
7114 case '\t':
7115 case '\n':
7116 case '\v':
7117 case '\f':
7118 case '\r':
7119 case 0x0E:
7120 case 0x0F:
7121 case 0x10:
7122 case 0x11:
7123 case 0x12:
7124 case 0x13:
7125 case 0x14:
7126 case 0x15:
7127 case 0x16:
7128 case 0x17:
7129 case 0x18:
7130 case 0x19:
7131 case 0x1A:
7132 case 0x1B:
7133 case 0x1C:
7134 case 0x1D:
7135 case 0x1E:
7136 case 0x1F:
7137 case ' ':
7138 case '!':
7139 case '"':
7140 case '#':
7141 case '$':
7142 case '%':
7143 case '&':
7144 case '\'':
7145 case '(':
7146 case ')':
7147 case '*':
7148 case '+':
7149 case ',':
7150 case '-':
7151 case '.':
7152 case '/':
7153 case ':':
7154 case ';':
7155 case '<':
7156 case '=':
7157 case '>':
7158 case '?':
7159 case '@':
7160 case '[':
7161 case ']':
7162 case '^':
7163 case '`':
7164 case '{':
7165 case '|':
7166 case '}':
7167 case '~':
7168 case 0x7F: goto yy493;
7169 case '\\': goto yy147;
7170 default: goto yy529;
7171 }
7172 yy493:
7173 #line 173 "src/parser_scan.re"
7174 { NEWTOKEN(PSI_T_PRAGMA); goto start; }
7175 #line 7176 "src/parser_scan.c"
7176 yy494:
7177 yyaccept = 55;
7178 yych = *(mrk = ++cur);
7179 switch (yych) {
7180 case 0x00:
7181 case 0x01:
7182 case 0x02:
7183 case 0x03:
7184 case 0x04:
7185 case 0x05:
7186 case 0x06:
7187 case 0x07:
7188 case 0x08:
7189 case '\t':
7190 case '\n':
7191 case '\v':
7192 case '\f':
7193 case '\r':
7194 case 0x0E:
7195 case 0x0F:
7196 case 0x10:
7197 case 0x11:
7198 case 0x12:
7199 case 0x13:
7200 case 0x14:
7201 case 0x15:
7202 case 0x16:
7203 case 0x17:
7204 case 0x18:
7205 case 0x19:
7206 case 0x1A:
7207 case 0x1B:
7208 case 0x1C:
7209 case 0x1D:
7210 case 0x1E:
7211 case 0x1F:
7212 case ' ':
7213 case '!':
7214 case '"':
7215 case '#':
7216 case '$':
7217 case '%':
7218 case '&':
7219 case '\'':
7220 case '(':
7221 case ')':
7222 case '*':
7223 case '+':
7224 case ',':
7225 case '-':
7226 case '.':
7227 case '/':
7228 case ':':
7229 case ';':
7230 case '<':
7231 case '=':
7232 case '>':
7233 case '?':
7234 case '@':
7235 case '[':
7236 case ']':
7237 case '^':
7238 case '`':
7239 case '{':
7240 case '|':
7241 case '}':
7242 case '~':
7243 case 0x7F: goto yy495;
7244 case '\\': goto yy147;
7245 default: goto yy61;
7246 }
7247 yy495:
7248 #line 196 "src/parser_scan.re"
7249 { NEWTOKEN(PSI_T_SIGNED); goto start; }
7250 #line 7251 "src/parser_scan.c"
7251 yy496:
7252 yyaccept = 56;
7253 yych = *(mrk = ++cur);
7254 switch (yych) {
7255 case 0x00:
7256 case 0x01:
7257 case 0x02:
7258 case 0x03:
7259 case 0x04:
7260 case 0x05:
7261 case 0x06:
7262 case 0x07:
7263 case 0x08:
7264 case '\t':
7265 case '\n':
7266 case '\v':
7267 case '\f':
7268 case '\r':
7269 case 0x0E:
7270 case 0x0F:
7271 case 0x10:
7272 case 0x11:
7273 case 0x12:
7274 case 0x13:
7275 case 0x14:
7276 case 0x15:
7277 case 0x16:
7278 case 0x17:
7279 case 0x18:
7280 case 0x19:
7281 case 0x1A:
7282 case 0x1B:
7283 case 0x1C:
7284 case 0x1D:
7285 case 0x1E:
7286 case 0x1F:
7287 case ' ':
7288 case '!':
7289 case '"':
7290 case '#':
7291 case '$':
7292 case '%':
7293 case '&':
7294 case '\'':
7295 case '(':
7296 case ')':
7297 case '*':
7298 case '+':
7299 case ',':
7300 case '-':
7301 case '.':
7302 case '/':
7303 case ':':
7304 case ';':
7305 case '<':
7306 case '=':
7307 case '>':
7308 case '?':
7309 case '@':
7310 case '[':
7311 case ']':
7312 case '^':
7313 case '`':
7314 case '{':
7315 case '|':
7316 case '}':
7317 case '~':
7318 case 0x7F: goto yy497;
7319 case '\\': goto yy147;
7320 default: goto yy61;
7321 }
7322 yy497:
7323 #line 180 "src/parser_scan.re"
7324 { NEWTOKEN(PSI_T_SIZEOF); goto start; }
7325 #line 7326 "src/parser_scan.c"
7326 yy498:
7327 yyaccept = 57;
7328 yych = *(mrk = ++cur);
7329 switch (yych) {
7330 case 0x00:
7331 case 0x01:
7332 case 0x02:
7333 case 0x03:
7334 case 0x04:
7335 case 0x05:
7336 case 0x06:
7337 case 0x07:
7338 case 0x08:
7339 case '\t':
7340 case '\n':
7341 case '\v':
7342 case '\f':
7343 case '\r':
7344 case 0x0E:
7345 case 0x0F:
7346 case 0x10:
7347 case 0x11:
7348 case 0x12:
7349 case 0x13:
7350 case 0x14:
7351 case 0x15:
7352 case 0x16:
7353 case 0x17:
7354 case 0x18:
7355 case 0x19:
7356 case 0x1A:
7357 case 0x1B:
7358 case 0x1C:
7359 case 0x1D:
7360 case 0x1E:
7361 case 0x1F:
7362 case ' ':
7363 case '!':
7364 case '"':
7365 case '#':
7366 case '$':
7367 case '%':
7368 case '&':
7369 case '\'':
7370 case '(':
7371 case ')':
7372 case '*':
7373 case '+':
7374 case ',':
7375 case '-':
7376 case '.':
7377 case '/':
7378 case ':':
7379 case ';':
7380 case '<':
7381 case '=':
7382 case '>':
7383 case '?':
7384 case '@':
7385 case '[':
7386 case ']':
7387 case '^':
7388 case '`':
7389 case '{':
7390 case '|':
7391 case '}':
7392 case '~':
7393 case 0x7F: goto yy499;
7394 case '\\': goto yy147;
7395 default: goto yy61;
7396 }
7397 yy499:
7398 #line 183 "src/parser_scan.re"
7399 { NEWTOKEN(PSI_T_STRUCT); goto start; }
7400 #line 7401 "src/parser_scan.c"
7401 yy500:
7402 yyaccept = 3;
7403 yych = *(mrk = ++cur);
7404 switch (yych) {
7405 case 'f': goto yy531;
7406 default: goto yy62;
7407 }
7408 yy501:
7409 yyaccept = 3;
7410 yych = *(mrk = ++cur);
7411 switch (yych) {
7412 case 'e': goto yy533;
7413 default: goto yy62;
7414 }
7415 yy502:
7416 yyaccept = 3;
7417 yych = *(mrk = ++cur);
7418 switch (yych) {
7419 case 'l': goto yy534;
7420 default: goto yy62;
7421 }
7422 yy503:
7423 yyaccept = 58;
7424 yych = *(mrk = ++cur);
7425 switch (yych) {
7426 case 0x00:
7427 case 0x01:
7428 case 0x02:
7429 case 0x03:
7430 case 0x04:
7431 case 0x05:
7432 case 0x06:
7433 case 0x07:
7434 case 0x08:
7435 case '\t':
7436 case '\n':
7437 case '\v':
7438 case '\f':
7439 case '\r':
7440 case 0x0E:
7441 case 0x0F:
7442 case 0x10:
7443 case 0x11:
7444 case 0x12:
7445 case 0x13:
7446 case 0x14:
7447 case 0x15:
7448 case 0x16:
7449 case 0x17:
7450 case 0x18:
7451 case 0x19:
7452 case 0x1A:
7453 case 0x1B:
7454 case 0x1C:
7455 case 0x1D:
7456 case 0x1E:
7457 case 0x1F:
7458 case ' ':
7459 case '!':
7460 case '"':
7461 case '#':
7462 case '$':
7463 case '%':
7464 case '&':
7465 case '\'':
7466 case '(':
7467 case ')':
7468 case '*':
7469 case '+':
7470 case ',':
7471 case '-':
7472 case '.':
7473 case '/':
7474 case ':':
7475 case ';':
7476 case '<':
7477 case '=':
7478 case '>':
7479 case '?':
7480 case '@':
7481 case '[':
7482 case ']':
7483 case '^':
7484 case '`':
7485 case '{':
7486 case '|':
7487 case '}':
7488 case '~':
7489 case 0x7F: goto yy504;
7490 case '\\': goto yy147;
7491 default: goto yy61;
7492 }
7493 yy504:
7494 #line 235 "src/parser_scan.re"
7495 { NEWTOKEN(PSI_T_BOOLVAL); goto start; }
7496 #line 7497 "src/parser_scan.c"
7497 yy505:
7498 yyaccept = 3;
7499 yych = *(mrk = ++cur);
7500 switch (yych) {
7501 case 'E':
7502 case 'e': goto yy535;
7503 default: goto yy62;
7504 }
7505 yy506:
7506 yyaccept = 3;
7507 yych = *(mrk = ++cur);
7508 switch (yych) {
7509 case 'K':
7510 case 'k': goto yy537;
7511 default: goto yy62;
7512 }
7513 yy507:
7514 yyaccept = 59;
7515 yych = *(mrk = ++cur);
7516 switch (yych) {
7517 case 0x00:
7518 case 0x01:
7519 case 0x02:
7520 case 0x03:
7521 case 0x04:
7522 case 0x05:
7523 case 0x06:
7524 case 0x07:
7525 case 0x08:
7526 case '\t':
7527 case '\n':
7528 case '\v':
7529 case '\f':
7530 case '\r':
7531 case 0x0E:
7532 case 0x0F:
7533 case 0x10:
7534 case 0x11:
7535 case 0x12:
7536 case 0x13:
7537 case 0x14:
7538 case 0x15:
7539 case 0x16:
7540 case 0x17:
7541 case 0x18:
7542 case 0x19:
7543 case 0x1A:
7544 case 0x1B:
7545 case 0x1C:
7546 case 0x1D:
7547 case 0x1E:
7548 case 0x1F:
7549 case ' ':
7550 case '!':
7551 case '"':
7552 case '#':
7553 case '$':
7554 case '%':
7555 case '&':
7556 case '\'':
7557 case '(':
7558 case ')':
7559 case '*':
7560 case '+':
7561 case ',':
7562 case '-':
7563 case '.':
7564 case '/':
7565 case ':':
7566 case ';':
7567 case '<':
7568 case '=':
7569 case '>':
7570 case '?':
7571 case '@':
7572 case '[':
7573 case ']':
7574 case '^':
7575 case '`':
7576 case '{':
7577 case '|':
7578 case '}':
7579 case '~':
7580 case 0x7F: goto yy508;
7581 case '\\': goto yy147;
7582 default: goto yy61;
7583 }
7584 yy508:
7585 #line 204 "src/parser_scan.re"
7586 { NEWTOKEN(PSI_T_DEFINED); goto start; }
7587 #line 7588 "src/parser_scan.c"
7588 yy509:
7589 yyaccept = 3;
7590 yych = *(mrk = ++cur);
7591 switch (yych) {
7592 case 'L':
7593 case 'l': goto yy539;
7594 default: goto yy62;
7595 }
7596 yy510:
7597 yyaccept = 3;
7598 yych = *(mrk = ++cur);
7599 switch (yych) {
7600 case 'N':
7601 case 'n': goto yy541;
7602 default: goto yy62;
7603 }
7604 yy511:
7605 yyaccept = 60;
7606 yych = *(mrk = ++cur);
7607 switch (yych) {
7608 case 0x00:
7609 case 0x01:
7610 case 0x02:
7611 case 0x03:
7612 case 0x04:
7613 case 0x05:
7614 case 0x06:
7615 case 0x07:
7616 case 0x08:
7617 case '\t':
7618 case '\n':
7619 case '\v':
7620 case '\f':
7621 case '\r':
7622 case 0x0E:
7623 case 0x0F:
7624 case 0x10:
7625 case 0x11:
7626 case 0x12:
7627 case 0x13:
7628 case 0x14:
7629 case 0x15:
7630 case 0x16:
7631 case 0x17:
7632 case 0x18:
7633 case 0x19:
7634 case 0x1A:
7635 case 0x1B:
7636 case 0x1C:
7637 case 0x1D:
7638 case 0x1E:
7639 case 0x1F:
7640 case ' ':
7641 case '!':
7642 case '"':
7643 case '#':
7644 case '$':
7645 case '%':
7646 case '&':
7647 case '\'':
7648 case '(':
7649 case ')':
7650 case '*':
7651 case '+':
7652 case ',':
7653 case '-':
7654 case '.':
7655 case '/':
7656 case ':':
7657 case ';':
7658 case '<':
7659 case '=':
7660 case '>':
7661 case '?':
7662 case '@':
7663 case '[':
7664 case ']':
7665 case '^':
7666 case '`':
7667 case '{':
7668 case '|':
7669 case '}':
7670 case '~':
7671 case 0x7F: goto yy512;
7672 case '\\': goto yy147;
7673 case '_': goto yy543;
7674 default: goto yy61;
7675 }
7676 yy512:
7677 #line 208 "src/parser_scan.re"
7678 { NEWTOKEN(PSI_T_INCLUDE); goto start; }
7679 #line 7680 "src/parser_scan.c"
7680 yy513:
7681 yyaccept = 61;
7682 yych = *(mrk = ++cur);
7683 switch (yych) {
7684 case 0x00:
7685 case 0x01:
7686 case 0x02:
7687 case 0x03:
7688 case 0x04:
7689 case 0x05:
7690 case 0x06:
7691 case 0x07:
7692 case 0x08:
7693 case '\t':
7694 case '\n':
7695 case '\v':
7696 case '\f':
7697 case '\r':
7698 case 0x0E:
7699 case 0x0F:
7700 case 0x10:
7701 case 0x11:
7702 case 0x12:
7703 case 0x13:
7704 case 0x14:
7705 case 0x15:
7706 case 0x16:
7707 case 0x17:
7708 case 0x18:
7709 case 0x19:
7710 case 0x1A:
7711 case 0x1B:
7712 case 0x1C:
7713 case 0x1D:
7714 case 0x1E:
7715 case 0x1F:
7716 case ' ':
7717 case '!':
7718 case '"':
7719 case '#':
7720 case '$':
7721 case '%':
7722 case '&':
7723 case '\'':
7724 case '(':
7725 case ')':
7726 case '*':
7727 case '+':
7728 case ',':
7729 case '-':
7730 case '.':
7731 case '/':
7732 case ':':
7733 case ';':
7734 case '<':
7735 case '=':
7736 case '>':
7737 case '?':
7738 case '@':
7739 case '[':
7740 case ']':
7741 case '^':
7742 case '`':
7743 case '{':
7744 case '|':
7745 case '}':
7746 case '~':
7747 case 0x7F: goto yy514;
7748 case '\\': goto yy147;
7749 default: goto yy61;
7750 }
7751 yy514:
7752 #line 232 "src/parser_scan.re"
7753 { NEWTOKEN(PSI_T_PATHVAL); goto start; }
7754 #line 7755 "src/parser_scan.c"
7755 yy515:
7756 yyaccept = 3;
7757 yych = *(mrk = ++cur);
7758 switch (yych) {
7759 case 'S':
7760 case 's': goto yy544;
7761 default: goto yy62;
7762 }
7763 yy516:
7764 yyaccept = 3;
7765 yych = *(mrk = ++cur);
7766 switch (yych) {
7767 case 'E':
7768 case 'e': goto yy545;
7769 default: goto yy62;
7770 }
7771 yy517:
7772 yyaccept = 3;
7773 yych = *(mrk = ++cur);
7774 switch (yych) {
7775 case 'Y':
7776 case 'y': goto yy546;
7777 default: goto yy62;
7778 }
7779 yy518:
7780 yyaccept = 62;
7781 yych = *(mrk = ++cur);
7782 switch (yych) {
7783 case 0x00:
7784 case 0x01:
7785 case 0x02:
7786 case 0x03:
7787 case 0x04:
7788 case 0x05:
7789 case 0x06:
7790 case 0x07:
7791 case 0x08:
7792 case '\t':
7793 case '\n':
7794 case '\v':
7795 case '\f':
7796 case '\r':
7797 case 0x0E:
7798 case 0x0F:
7799 case 0x10:
7800 case 0x11:
7801 case 0x12:
7802 case 0x13:
7803 case 0x14:
7804 case 0x15:
7805 case 0x16:
7806 case 0x17:
7807 case 0x18:
7808 case 0x19:
7809 case 0x1A:
7810 case 0x1B:
7811 case 0x1C:
7812 case 0x1D:
7813 case 0x1E:
7814 case 0x1F:
7815 case ' ':
7816 case '!':
7817 case '"':
7818 case '#':
7819 case '$':
7820 case '%':
7821 case '&':
7822 case '\'':
7823 case '(':
7824 case ')':
7825 case '*':
7826 case '+':
7827 case ',':
7828 case '-':
7829 case '.':
7830 case '/':
7831 case ':':
7832 case ';':
7833 case '<':
7834 case '=':
7835 case '>':
7836 case '?':
7837 case '@':
7838 case '[':
7839 case ']':
7840 case '^':
7841 case '`':
7842 case '{':
7843 case '|':
7844 case '}':
7845 case '~':
7846 case 0x7F: goto yy519;
7847 case '\\': goto yy147;
7848 default: goto yy61;
7849 }
7850 yy519:
7851 #line 246 "src/parser_scan.re"
7852 { NEWTOKEN(PSI_T_TO_BOOL); goto start; }
7853 #line 7854 "src/parser_scan.c"
7854 yy520:
7855 yyaccept = 3;
7856 yych = *(mrk = ++cur);
7857 switch (yych) {
7858 case 'T':
7859 case 't': goto yy548;
7860 default: goto yy62;
7861 }
7862 yy521:
7863 yyaccept = 3;
7864 yych = *(mrk = ++cur);
7865 switch (yych) {
7866 case 'C':
7867 case 'c': goto yy550;
7868 default: goto yy62;
7869 }
7870 yy522:
7871 yyaccept = 3;
7872 yych = *(mrk = ++cur);
7873 switch (yych) {
7874 case 'N':
7875 case 'n': goto yy551;
7876 default: goto yy62;
7877 }
7878 yy523:
7879 yyaccept = 63;
7880 yych = *(mrk = ++cur);
7881 switch (yych) {
7882 case 0x00:
7883 case 0x01:
7884 case 0x02:
7885 case 0x03:
7886 case 0x04:
7887 case 0x05:
7888 case 0x06:
7889 case 0x07:
7890 case 0x08:
7891 case '\t':
7892 case '\n':
7893 case '\v':
7894 case '\f':
7895 case '\r':
7896 case 0x0E:
7897 case 0x0F:
7898 case 0x10:
7899 case 0x11:
7900 case 0x12:
7901 case 0x13:
7902 case 0x14:
7903 case 0x15:
7904 case 0x16:
7905 case 0x17:
7906 case 0x18:
7907 case 0x19:
7908 case 0x1A:
7909 case 0x1B:
7910 case 0x1C:
7911 case 0x1D:
7912 case 0x1E:
7913 case 0x1F:
7914 case ' ':
7915 case '!':
7916 case '"':
7917 case '#':
7918 case '$':
7919 case '%':
7920 case '&':
7921 case '\'':
7922 case '(':
7923 case ')':
7924 case '*':
7925 case '+':
7926 case ',':
7927 case '-':
7928 case '.':
7929 case '/':
7930 case ':':
7931 case ';':
7932 case '<':
7933 case '=':
7934 case '>':
7935 case '?':
7936 case '@':
7937 case '[':
7938 case ']':
7939 case '^':
7940 case '`':
7941 case '{':
7942 case '|':
7943 case '}':
7944 case '~':
7945 case 0x7F: goto yy524;
7946 case '\\': goto yy147;
7947 default: goto yy61;
7948 }
7949 yy524:
7950 #line 206 "src/parser_scan.re"
7951 { NEWTOKEN(PSI_T_WARNING); goto start; }
7952 #line 7953 "src/parser_scan.c"
7953 yy525:
7954 yyaccept = 34;
7955 yych = *(mrk = ++cur);
7956 switch (yych) {
7957 case 0x00:
7958 case 0x01:
7959 case 0x02:
7960 case 0x03:
7961 case 0x04:
7962 case 0x05:
7963 case 0x06:
7964 case 0x07:
7965 case 0x08:
7966 case '\t':
7967 case '\n':
7968 case '\v':
7969 case '\f':
7970 case '\r':
7971 case 0x0E:
7972 case 0x0F:
7973 case 0x10:
7974 case 0x11:
7975 case 0x12:
7976 case 0x13:
7977 case 0x14:
7978 case 0x15:
7979 case 0x16:
7980 case 0x17:
7981 case 0x18:
7982 case 0x19:
7983 case 0x1A:
7984 case 0x1B:
7985 case 0x1C:
7986 case 0x1D:
7987 case 0x1E:
7988 case 0x1F:
7989 case ' ':
7990 case '!':
7991 case '"':
7992 case '#':
7993 case '$':
7994 case '%':
7995 case '&':
7996 case '\'':
7997 case '(':
7998 case ')':
7999 case '*':
8000 case '+':
8001 case ',':
8002 case '-':
8003 case '.':
8004 case '/':
8005 case ':':
8006 case ';':
8007 case '<':
8008 case '=':
8009 case '>':
8010 case '?':
8011 case '@':
8012 case '[':
8013 case ']':
8014 case '^':
8015 case '`':
8016 case '{':
8017 case '|':
8018 case '}':
8019 case '~':
8020 case 0x7F: goto yy422;
8021 case '\\': goto yy147;
8022 default: goto yy61;
8023 }
8024 yy526:
8025 yyaccept = 3;
8026 yych = *(mrk = ++cur);
8027 switch (yych) {
8028 case 'b': goto yy552;
8029 default: goto yy62;
8030 }
8031 yy527:
8032 yyaccept = 3;
8033 yych = *(mrk = ++cur);
8034 switch (yych) {
8035 case 's': goto yy553;
8036 default: goto yy62;
8037 }
8038 yy528:
8039 yyaccept = 3;
8040 yych = *(mrk = ++cur);
8041 switch (yych) {
8042 case 'i': goto yy554;
8043 default: goto yy62;
8044 }
8045 yy529:
8046 yyaccept = 3;
8047 mrk = ++cur;
8048 if (lim <= cur) CHECKEOF();;
8049 yych = *cur;
8050 switch (yych) {
8051 case 0x00:
8052 case 0x01:
8053 case 0x02:
8054 case 0x03:
8055 case 0x04:
8056 case 0x05:
8057 case 0x06:
8058 case 0x07:
8059 case 0x08:
8060 case '\t':
8061 case '\n':
8062 case '\v':
8063 case '\f':
8064 case '\r':
8065 case 0x0E:
8066 case 0x0F:
8067 case 0x10:
8068 case 0x11:
8069 case 0x12:
8070 case 0x13:
8071 case 0x14:
8072 case 0x15:
8073 case 0x16:
8074 case 0x17:
8075 case 0x18:
8076 case 0x19:
8077 case 0x1A:
8078 case 0x1B:
8079 case 0x1C:
8080 case 0x1D:
8081 case 0x1E:
8082 case 0x1F:
8083 case ' ':
8084 case '!':
8085 case '"':
8086 case '#':
8087 case '$':
8088 case '%':
8089 case '&':
8090 case '\'':
8091 case '(':
8092 case ')':
8093 case '*':
8094 case '+':
8095 case ',':
8096 case '-':
8097 case '.':
8098 case '/':
8099 case ':':
8100 case ';':
8101 case '<':
8102 case '=':
8103 case '>':
8104 case '?':
8105 case '@':
8106 case '[':
8107 case ']':
8108 case '^':
8109 case '`':
8110 case '{':
8111 case '|':
8112 case '}':
8113 case '~':
8114 case 0x7F: goto yy55;
8115 case '\\': goto yy147;
8116 case 'o': goto yy555;
8117 default: goto yy529;
8118 }
8119 yy531:
8120 yyaccept = 64;
8121 yych = *(mrk = ++cur);
8122 switch (yych) {
8123 case 0x00:
8124 case 0x01:
8125 case 0x02:
8126 case 0x03:
8127 case 0x04:
8128 case 0x05:
8129 case 0x06:
8130 case 0x07:
8131 case 0x08:
8132 case '\t':
8133 case '\n':
8134 case '\v':
8135 case '\f':
8136 case '\r':
8137 case 0x0E:
8138 case 0x0F:
8139 case 0x10:
8140 case 0x11:
8141 case 0x12:
8142 case 0x13:
8143 case 0x14:
8144 case 0x15:
8145 case 0x16:
8146 case 0x17:
8147 case 0x18:
8148 case 0x19:
8149 case 0x1A:
8150 case 0x1B:
8151 case 0x1C:
8152 case 0x1D:
8153 case 0x1E:
8154 case 0x1F:
8155 case ' ':
8156 case '!':
8157 case '"':
8158 case '#':
8159 case '$':
8160 case '%':
8161 case '&':
8162 case '\'':
8163 case '(':
8164 case ')':
8165 case '*':
8166 case '+':
8167 case ',':
8168 case '-':
8169 case '.':
8170 case '/':
8171 case ':':
8172 case ';':
8173 case '<':
8174 case '=':
8175 case '>':
8176 case '?':
8177 case '@':
8178 case '[':
8179 case ']':
8180 case '^':
8181 case '`':
8182 case '{':
8183 case '|':
8184 case '}':
8185 case '~':
8186 case 0x7F: goto yy532;
8187 case '\\': goto yy147;
8188 default: goto yy61;
8189 }
8190 yy532:
8191 #line 182 "src/parser_scan.re"
8192 { NEWTOKEN(PSI_T_TYPEDEF); goto start; }
8193 #line 8194 "src/parser_scan.c"
8194 yy533:
8195 yyaccept = 3;
8196 yych = *(mrk = ++cur);
8197 switch (yych) {
8198 case 'd': goto yy557;
8199 default: goto yy62;
8200 }
8201 yy534:
8202 yyaccept = 3;
8203 yych = *(mrk = ++cur);
8204 switch (yych) {
8205 case 'e': goto yy559;
8206 default: goto yy62;
8207 }
8208 yy535:
8209 yyaccept = 65;
8210 yych = *(mrk = ++cur);
8211 switch (yych) {
8212 case 0x00:
8213 case 0x01:
8214 case 0x02:
8215 case 0x03:
8216 case 0x04:
8217 case 0x05:
8218 case 0x06:
8219 case 0x07:
8220 case 0x08:
8221 case '\t':
8222 case '\n':
8223 case '\v':
8224 case '\f':
8225 case '\r':
8226 case 0x0E:
8227 case 0x0F:
8228 case 0x10:
8229 case 0x11:
8230 case 0x12:
8231 case 0x13:
8232 case 0x14:
8233 case 0x15:
8234 case 0x16:
8235 case 0x17:
8236 case 0x18:
8237 case 0x19:
8238 case 0x1A:
8239 case 0x1B:
8240 case 0x1C:
8241 case 0x1D:
8242 case 0x1E:
8243 case 0x1F:
8244 case ' ':
8245 case '!':
8246 case '"':
8247 case '#':
8248 case '$':
8249 case '%':
8250 case '&':
8251 case '\'':
8252 case '(':
8253 case ')':
8254 case '*':
8255 case '+':
8256 case ',':
8257 case '-':
8258 case '.':
8259 case '/':
8260 case ':':
8261 case ';':
8262 case '<':
8263 case '=':
8264 case '>':
8265 case '?':
8266 case '@':
8267 case '[':
8268 case ']':
8269 case '^':
8270 case '`':
8271 case '{':
8272 case '|':
8273 case '}':
8274 case '~':
8275 case 0x7F: goto yy536;
8276 case '\\': goto yy147;
8277 default: goto yy61;
8278 }
8279 yy536:
8280 #line 214 "src/parser_scan.re"
8281 { NEWTOKEN(PSI_T_CALLABLE); goto start; }
8282 #line 8283 "src/parser_scan.c"
8283 yy537:
8284 yyaccept = 66;
8285 yych = *(mrk = ++cur);
8286 switch (yych) {
8287 case 0x00:
8288 case 0x01:
8289 case 0x02:
8290 case 0x03:
8291 case 0x04:
8292 case 0x05:
8293 case 0x06:
8294 case 0x07:
8295 case 0x08:
8296 case '\t':
8297 case '\n':
8298 case '\v':
8299 case '\f':
8300 case '\r':
8301 case 0x0E:
8302 case 0x0F:
8303 case 0x10:
8304 case 0x11:
8305 case 0x12:
8306 case 0x13:
8307 case 0x14:
8308 case 0x15:
8309 case 0x16:
8310 case 0x17:
8311 case 0x18:
8312 case 0x19:
8313 case 0x1A:
8314 case 0x1B:
8315 case 0x1C:
8316 case 0x1D:
8317 case 0x1E:
8318 case 0x1F:
8319 case ' ':
8320 case '!':
8321 case '"':
8322 case '#':
8323 case '$':
8324 case '%':
8325 case '&':
8326 case '\'':
8327 case '(':
8328 case ')':
8329 case '*':
8330 case '+':
8331 case ',':
8332 case '-':
8333 case '.':
8334 case '/':
8335 case ':':
8336 case ';':
8337 case '<':
8338 case '=':
8339 case '>':
8340 case '?':
8341 case '@':
8342 case '[':
8343 case ']':
8344 case '^':
8345 case '`':
8346 case '{':
8347 case '|':
8348 case '}':
8349 case '~':
8350 case 0x7F: goto yy538;
8351 case '\\': goto yy147;
8352 default: goto yy61;
8353 }
8354 yy538:
8355 #line 218 "src/parser_scan.re"
8356 { NEWTOKEN(PSI_T_CALLBACK); goto start; }
8357 #line 8358 "src/parser_scan.c"
8358 yy539:
8359 yyaccept = 67;
8360 yych = *(mrk = ++cur);
8361 switch (yych) {
8362 case 0x00:
8363 case 0x01:
8364 case 0x02:
8365 case 0x03:
8366 case 0x04:
8367 case 0x05:
8368 case 0x06:
8369 case 0x07:
8370 case 0x08:
8371 case '\t':
8372 case '\n':
8373 case '\v':
8374 case '\f':
8375 case '\r':
8376 case 0x0E:
8377 case 0x0F:
8378 case 0x10:
8379 case 0x11:
8380 case 0x12:
8381 case 0x13:
8382 case 0x14:
8383 case 0x15:
8384 case 0x16:
8385 case 0x17:
8386 case 0x18:
8387 case 0x19:
8388 case 0x1A:
8389 case 0x1B:
8390 case 0x1C:
8391 case 0x1D:
8392 case 0x1E:
8393 case 0x1F:
8394 case ' ':
8395 case '!':
8396 case '"':
8397 case '#':
8398 case '$':
8399 case '%':
8400 case '&':
8401 case '\'':
8402 case '(':
8403 case ')':
8404 case '*':
8405 case '+':
8406 case ',':
8407 case '-':
8408 case '.':
8409 case '/':
8410 case ':':
8411 case ';':
8412 case '<':
8413 case '=':
8414 case '>':
8415 case '?':
8416 case '@':
8417 case '[':
8418 case ']':
8419 case '^':
8420 case '`':
8421 case '{':
8422 case '|':
8423 case '}':
8424 case '~':
8425 case 0x7F: goto yy540;
8426 case '\\': goto yy147;
8427 default: goto yy61;
8428 }
8429 yy540:
8430 #line 234 "src/parser_scan.re"
8431 { NEWTOKEN(PSI_T_FLOATVAL); goto start; }
8432 #line 8433 "src/parser_scan.c"
8433 yy541:
8434 yyaccept = 68;
8435 yych = *(mrk = ++cur);
8436 switch (yych) {
8437 case 0x00:
8438 case 0x01:
8439 case 0x02:
8440 case 0x03:
8441 case 0x04:
8442 case 0x05:
8443 case 0x06:
8444 case 0x07:
8445 case 0x08:
8446 case '\t':
8447 case '\n':
8448 case '\v':
8449 case '\f':
8450 case '\r':
8451 case 0x0E:
8452 case 0x0F:
8453 case 0x10:
8454 case 0x11:
8455 case 0x12:
8456 case 0x13:
8457 case 0x14:
8458 case 0x15:
8459 case 0x16:
8460 case 0x17:
8461 case 0x18:
8462 case 0x19:
8463 case 0x1A:
8464 case 0x1B:
8465 case 0x1C:
8466 case 0x1D:
8467 case 0x1E:
8468 case 0x1F:
8469 case ' ':
8470 case '!':
8471 case '"':
8472 case '#':
8473 case '$':
8474 case '%':
8475 case '&':
8476 case '\'':
8477 case '(':
8478 case ')':
8479 case '*':
8480 case '+':
8481 case ',':
8482 case '-':
8483 case '.':
8484 case '/':
8485 case ':':
8486 case ';':
8487 case '<':
8488 case '=':
8489 case '>':
8490 case '?':
8491 case '@':
8492 case '[':
8493 case ']':
8494 case '^':
8495 case '`':
8496 case '{':
8497 case '|':
8498 case '}':
8499 case '~':
8500 case 0x7F: goto yy542;
8501 case '\\': goto yy147;
8502 default: goto yy61;
8503 }
8504 yy542:
8505 #line 220 "src/parser_scan.re"
8506 { NEWTOKEN(PSI_T_FUNCTION); goto start; }
8507 #line 8508 "src/parser_scan.c"
8508 yy543:
8509 yyaccept = 3;
8510 yych = *(mrk = ++cur);
8511 switch (yych) {
8512 case 'N':
8513 case 'n': goto yy561;
8514 default: goto yy62;
8515 }
8516 yy544:
8517 yyaccept = 3;
8518 yych = *(mrk = ++cur);
8519 switch (yych) {
8520 case 'E':
8521 case 'e': goto yy562;
8522 default: goto yy62;
8523 }
8524 yy545:
8525 yyaccept = 3;
8526 yych = *(mrk = ++cur);
8527 switch (yych) {
8528 case 'R':
8529 case 'r': goto yy563;
8530 default: goto yy62;
8531 }
8532 yy546:
8533 yyaccept = 69;
8534 yych = *(mrk = ++cur);
8535 switch (yych) {
8536 case 0x00:
8537 case 0x01:
8538 case 0x02:
8539 case 0x03:
8540 case 0x04:
8541 case 0x05:
8542 case 0x06:
8543 case 0x07:
8544 case 0x08:
8545 case '\t':
8546 case '\n':
8547 case '\v':
8548 case '\f':
8549 case '\r':
8550 case 0x0E:
8551 case 0x0F:
8552 case 0x10:
8553 case 0x11:
8554 case 0x12:
8555 case 0x13:
8556 case 0x14:
8557 case 0x15:
8558 case 0x16:
8559 case 0x17:
8560 case 0x18:
8561 case 0x19:
8562 case 0x1A:
8563 case 0x1B:
8564 case 0x1C:
8565 case 0x1D:
8566 case 0x1E:
8567 case 0x1F:
8568 case ' ':
8569 case '!':
8570 case '"':
8571 case '#':
8572 case '$':
8573 case '%':
8574 case '&':
8575 case '\'':
8576 case '(':
8577 case ')':
8578 case '*':
8579 case '+':
8580 case ',':
8581 case '-':
8582 case '.':
8583 case '/':
8584 case ':':
8585 case ';':
8586 case '<':
8587 case '=':
8588 case '>':
8589 case '?':
8590 case '@':
8591 case '[':
8592 case ']':
8593 case '^':
8594 case '`':
8595 case '{':
8596 case '|':
8597 case '}':
8598 case '~':
8599 case 0x7F: goto yy547;
8600 case '\\': goto yy147;
8601 default: goto yy61;
8602 }
8603 yy547:
8604 #line 242 "src/parser_scan.re"
8605 { NEWTOKEN(PSI_T_TO_ARRAY); goto start; }
8606 #line 8607 "src/parser_scan.c"
8607 yy548:
8608 yyaccept = 70;
8609 yych = *(mrk = ++cur);
8610 switch (yych) {
8611 case 0x00:
8612 case 0x01:
8613 case 0x02:
8614 case 0x03:
8615 case 0x04:
8616 case 0x05:
8617 case 0x06:
8618 case 0x07:
8619 case 0x08:
8620 case '\t':
8621 case '\n':
8622 case '\v':
8623 case '\f':
8624 case '\r':
8625 case 0x0E:
8626 case 0x0F:
8627 case 0x10:
8628 case 0x11:
8629 case 0x12:
8630 case 0x13:
8631 case 0x14:
8632 case 0x15:
8633 case 0x16:
8634 case 0x17:
8635 case 0x18:
8636 case 0x19:
8637 case 0x1A:
8638 case 0x1B:
8639 case 0x1C:
8640 case 0x1D:
8641 case 0x1E:
8642 case 0x1F:
8643 case ' ':
8644 case '!':
8645 case '"':
8646 case '#':
8647 case '$':
8648 case '%':
8649 case '&':
8650 case '\'':
8651 case '(':
8652 case ')':
8653 case '*':
8654 case '+':
8655 case ',':
8656 case '-':
8657 case '.':
8658 case '/':
8659 case ':':
8660 case ';':
8661 case '<':
8662 case '=':
8663 case '>':
8664 case '?':
8665 case '@':
8666 case '[':
8667 case ']':
8668 case '^':
8669 case '`':
8670 case '{':
8671 case '|':
8672 case '}':
8673 case '~':
8674 case 0x7F: goto yy549;
8675 case '\\': goto yy147;
8676 default: goto yy61;
8677 }
8678 yy549:
8679 #line 245 "src/parser_scan.re"
8680 { NEWTOKEN(PSI_T_TO_FLOAT); goto start; }
8681 #line 8682 "src/parser_scan.c"
8682 yy550:
8683 yyaccept = 3;
8684 yych = *(mrk = ++cur);
8685 switch (yych) {
8686 case 'T':
8687 case 't': goto yy564;
8688 default: goto yy62;
8689 }
8690 yy551:
8691 yyaccept = 3;
8692 yych = *(mrk = ++cur);
8693 switch (yych) {
8694 case 'G':
8695 case 'g': goto yy566;
8696 default: goto yy62;
8697 }
8698 yy552:
8699 yyaccept = 3;
8700 yych = *(mrk = ++cur);
8701 switch (yych) {
8702 case 'u': goto yy568;
8703 default: goto yy62;
8704 }
8705 yy553:
8706 yyaccept = 3;
8707 yych = *(mrk = ++cur);
8708 switch (yych) {
8709 case 'i': goto yy569;
8710 default: goto yy62;
8711 }
8712 yy554:
8713 yyaccept = 3;
8714 yych = *(mrk = ++cur);
8715 switch (yych) {
8716 case 'c': goto yy570;
8717 default: goto yy62;
8718 }
8719 yy555:
8720 yyaccept = 3;
8721 mrk = ++cur;
8722 if (lim <= cur) CHECKEOF();;
8723 yych = *cur;
8724 switch (yych) {
8725 case 0x00:
8726 case 0x01:
8727 case 0x02:
8728 case 0x03:
8729 case 0x04:
8730 case 0x05:
8731 case 0x06:
8732 case 0x07:
8733 case 0x08:
8734 case '\t':
8735 case '\n':
8736 case '\v':
8737 case '\f':
8738 case '\r':
8739 case 0x0E:
8740 case 0x0F:
8741 case 0x10:
8742 case 0x11:
8743 case 0x12:
8744 case 0x13:
8745 case 0x14:
8746 case 0x15:
8747 case 0x16:
8748 case 0x17:
8749 case 0x18:
8750 case 0x19:
8751 case 0x1A:
8752 case 0x1B:
8753 case 0x1C:
8754 case 0x1D:
8755 case 0x1E:
8756 case 0x1F:
8757 case ' ':
8758 case '!':
8759 case '"':
8760 case '#':
8761 case '$':
8762 case '%':
8763 case '&':
8764 case '\'':
8765 case '(':
8766 case ')':
8767 case '*':
8768 case '+':
8769 case ',':
8770 case '-':
8771 case '.':
8772 case '/':
8773 case ':':
8774 case ';':
8775 case '<':
8776 case '=':
8777 case '>':
8778 case '?':
8779 case '@':
8780 case '[':
8781 case ']':
8782 case '^':
8783 case '`':
8784 case '{':
8785 case '|':
8786 case '}':
8787 case '~':
8788 case 0x7F: goto yy55;
8789 case '\\': goto yy147;
8790 case 'n': goto yy571;
8791 case 'o': goto yy555;
8792 default: goto yy529;
8793 }
8794 yy557:
8795 yyaccept = 71;
8796 yych = *(mrk = ++cur);
8797 switch (yych) {
8798 case 0x00:
8799 case 0x01:
8800 case 0x02:
8801 case 0x03:
8802 case 0x04:
8803 case 0x05:
8804 case 0x06:
8805 case 0x07:
8806 case 0x08:
8807 case '\t':
8808 case '\n':
8809 case '\v':
8810 case '\f':
8811 case '\r':
8812 case 0x0E:
8813 case 0x0F:
8814 case 0x10:
8815 case 0x11:
8816 case 0x12:
8817 case 0x13:
8818 case 0x14:
8819 case 0x15:
8820 case 0x16:
8821 case 0x17:
8822 case 0x18:
8823 case 0x19:
8824 case 0x1A:
8825 case 0x1B:
8826 case 0x1C:
8827 case 0x1D:
8828 case 0x1E:
8829 case 0x1F:
8830 case ' ':
8831 case '!':
8832 case '"':
8833 case '#':
8834 case '$':
8835 case '%':
8836 case '&':
8837 case '\'':
8838 case '(':
8839 case ')':
8840 case '*':
8841 case '+':
8842 case ',':
8843 case '-':
8844 case '.':
8845 case '/':
8846 case ':':
8847 case ';':
8848 case '<':
8849 case '=':
8850 case '>':
8851 case '?':
8852 case '@':
8853 case '[':
8854 case ']':
8855 case '^':
8856 case '`':
8857 case '{':
8858 case '|':
8859 case '}':
8860 case '~':
8861 case 0x7F: goto yy558;
8862 case '\\': goto yy147;
8863 default: goto yy61;
8864 }
8865 yy558:
8866 #line 195 "src/parser_scan.re"
8867 { NEWTOKEN(PSI_T_UNSIGNED); goto start; }
8868 #line 8869 "src/parser_scan.c"
8869 yy559:
8870 yyaccept = 72;
8871 yych = *(mrk = ++cur);
8872 switch (yych) {
8873 case 0x00:
8874 case 0x01:
8875 case 0x02:
8876 case 0x03:
8877 case 0x04:
8878 case 0x05:
8879 case 0x06:
8880 case 0x07:
8881 case 0x08:
8882 case '\t':
8883 case '\n':
8884 case '\v':
8885 case '\f':
8886 case '\r':
8887 case 0x0E:
8888 case 0x0F:
8889 case 0x10:
8890 case 0x11:
8891 case 0x12:
8892 case 0x13:
8893 case 0x14:
8894 case 0x15:
8895 case 0x16:
8896 case 0x17:
8897 case 0x18:
8898 case 0x19:
8899 case 0x1A:
8900 case 0x1B:
8901 case 0x1C:
8902 case 0x1D:
8903 case 0x1E:
8904 case 0x1F:
8905 case ' ':
8906 case '!':
8907 case '"':
8908 case '#':
8909 case '$':
8910 case '%':
8911 case '&':
8912 case '\'':
8913 case '(':
8914 case ')':
8915 case '*':
8916 case '+':
8917 case ',':
8918 case '-':
8919 case '.':
8920 case '/':
8921 case ':':
8922 case ';':
8923 case '<':
8924 case '=':
8925 case '>':
8926 case '?':
8927 case '@':
8928 case '[':
8929 case ']':
8930 case '^':
8931 case '`':
8932 case '{':
8933 case '|':
8934 case '}':
8935 case '~':
8936 case 0x7F: goto yy560;
8937 case '\\': goto yy147;
8938 default: goto yy61;
8939 }
8940 yy560:
8941 #line 179 "src/parser_scan.re"
8942 { NEWTOKEN(PSI_T_VOLATILE); goto start; }
8943 #line 8944 "src/parser_scan.c"
8944 yy561:
8945 yyaccept = 3;
8946 yych = *(mrk = ++cur);
8947 switch (yych) {
8948 case 'E':
8949 case 'e': goto yy572;
8950 default: goto yy62;
8951 }
8952 yy562:
8953 yyaccept = 3;
8954 yych = *(mrk = ++cur);
8955 switch (yych) {
8956 case 'R':
8957 case 'r': goto yy573;
8958 default: goto yy62;
8959 }
8960 yy563:
8961 yyaccept = 3;
8962 yych = *(mrk = ++cur);
8963 switch (yych) {
8964 case 'T':
8965 case 't': goto yy574;
8966 default: goto yy62;
8967 }
8968 yy564:
8969 yyaccept = 73;
8970 yych = *(mrk = ++cur);
8971 switch (yych) {
8972 case 0x00:
8973 case 0x01:
8974 case 0x02:
8975 case 0x03:
8976 case 0x04:
8977 case 0x05:
8978 case 0x06:
8979 case 0x07:
8980 case 0x08:
8981 case '\t':
8982 case '\n':
8983 case '\v':
8984 case '\f':
8985 case '\r':
8986 case 0x0E:
8987 case 0x0F:
8988 case 0x10:
8989 case 0x11:
8990 case 0x12:
8991 case 0x13:
8992 case 0x14:
8993 case 0x15:
8994 case 0x16:
8995 case 0x17:
8996 case 0x18:
8997 case 0x19:
8998 case 0x1A:
8999 case 0x1B:
9000 case 0x1C:
9001 case 0x1D:
9002 case 0x1E:
9003 case 0x1F:
9004 case ' ':
9005 case '!':
9006 case '"':
9007 case '#':
9008 case '$':
9009 case '%':
9010 case '&':
9011 case '\'':
9012 case '(':
9013 case ')':
9014 case '*':
9015 case '+':
9016 case ',':
9017 case '-':
9018 case '.':
9019 case '/':
9020 case ':':
9021 case ';':
9022 case '<':
9023 case '=':
9024 case '>':
9025 case '?':
9026 case '@':
9027 case '[':
9028 case ']':
9029 case '^':
9030 case '`':
9031 case '{':
9032 case '|':
9033 case '}':
9034 case '~':
9035 case 0x7F: goto yy565;
9036 case '\\': goto yy147;
9037 default: goto yy61;
9038 }
9039 yy565:
9040 #line 241 "src/parser_scan.re"
9041 { NEWTOKEN(PSI_T_TO_OBJECT); goto start; }
9042 #line 9043 "src/parser_scan.c"
9043 yy566:
9044 yyaccept = 74;
9045 yych = *(mrk = ++cur);
9046 switch (yych) {
9047 case 0x00:
9048 case 0x01:
9049 case 0x02:
9050 case 0x03:
9051 case 0x04:
9052 case 0x05:
9053 case 0x06:
9054 case 0x07:
9055 case 0x08:
9056 case '\t':
9057 case '\n':
9058 case '\v':
9059 case '\f':
9060 case '\r':
9061 case 0x0E:
9062 case 0x0F:
9063 case 0x10:
9064 case 0x11:
9065 case 0x12:
9066 case 0x13:
9067 case 0x14:
9068 case 0x15:
9069 case 0x16:
9070 case 0x17:
9071 case 0x18:
9072 case 0x19:
9073 case 0x1A:
9074 case 0x1B:
9075 case 0x1C:
9076 case 0x1D:
9077 case 0x1E:
9078 case 0x1F:
9079 case ' ':
9080 case '!':
9081 case '"':
9082 case '#':
9083 case '$':
9084 case '%':
9085 case '&':
9086 case '\'':
9087 case '(':
9088 case ')':
9089 case '*':
9090 case '+':
9091 case ',':
9092 case '-':
9093 case '.':
9094 case '/':
9095 case ':':
9096 case ';':
9097 case '<':
9098 case '=':
9099 case '>':
9100 case '?':
9101 case '@':
9102 case '[':
9103 case ']':
9104 case '^':
9105 case '`':
9106 case '{':
9107 case '|':
9108 case '}':
9109 case '~':
9110 case 0x7F: goto yy567;
9111 case '\\': goto yy147;
9112 default: goto yy61;
9113 }
9114 yy567:
9115 #line 243 "src/parser_scan.re"
9116 { NEWTOKEN(PSI_T_TO_STRING); goto start; }
9117 #line 9118 "src/parser_scan.c"
9118 yy568:
9119 yyaccept = 3;
9120 yych = *(mrk = ++cur);
9121 switch (yych) {
9122 case 't': goto yy576;
9123 default: goto yy62;
9124 }
9125 yy569:
9126 yyaccept = 3;
9127 yych = *(mrk = ++cur);
9128 switch (yych) {
9129 case 'o': goto yy577;
9130 default: goto yy62;
9131 }
9132 yy570:
9133 yyaccept = 3;
9134 yych = *(mrk = ++cur);
9135 switch (yych) {
9136 case 't': goto yy578;
9137 default: goto yy62;
9138 }
9139 yy571:
9140 yyaccept = 3;
9141 mrk = ++cur;
9142 if (lim <= cur) CHECKEOF();;
9143 yych = *cur;
9144 switch (yych) {
9145 case 0x00:
9146 case 0x01:
9147 case 0x02:
9148 case 0x03:
9149 case 0x04:
9150 case 0x05:
9151 case 0x06:
9152 case 0x07:
9153 case 0x08:
9154 case '\t':
9155 case '\n':
9156 case '\v':
9157 case '\f':
9158 case '\r':
9159 case 0x0E:
9160 case 0x0F:
9161 case 0x10:
9162 case 0x11:
9163 case 0x12:
9164 case 0x13:
9165 case 0x14:
9166 case 0x15:
9167 case 0x16:
9168 case 0x17:
9169 case 0x18:
9170 case 0x19:
9171 case 0x1A:
9172 case 0x1B:
9173 case 0x1C:
9174 case 0x1D:
9175 case 0x1E:
9176 case 0x1F:
9177 case ' ':
9178 case '!':
9179 case '"':
9180 case '#':
9181 case '$':
9182 case '%':
9183 case '&':
9184 case '\'':
9185 case '(':
9186 case ')':
9187 case '*':
9188 case '+':
9189 case ',':
9190 case '-':
9191 case '.':
9192 case '/':
9193 case ':':
9194 case ';':
9195 case '<':
9196 case '=':
9197 case '>':
9198 case '?':
9199 case '@':
9200 case '[':
9201 case ']':
9202 case '^':
9203 case '`':
9204 case '{':
9205 case '|':
9206 case '}':
9207 case '~':
9208 case 0x7F: goto yy55;
9209 case '\\': goto yy147;
9210 case 'c': goto yy580;
9211 case 'o': goto yy555;
9212 default: goto yy529;
9213 }
9214 yy572:
9215 yyaccept = 3;
9216 yych = *(mrk = ++cur);
9217 switch (yych) {
9218 case 'X':
9219 case 'x': goto yy581;
9220 default: goto yy62;
9221 }
9222 yy573:
9223 yyaccept = 3;
9224 yych = *(mrk = ++cur);
9225 switch (yych) {
9226 case 'T':
9227 case 't': goto yy582;
9228 default: goto yy62;
9229 }
9230 yy574:
9231 yyaccept = 75;
9232 yych = *(mrk = ++cur);
9233 switch (yych) {
9234 case 0x00:
9235 case 0x01:
9236 case 0x02:
9237 case 0x03:
9238 case 0x04:
9239 case 0x05:
9240 case 0x06:
9241 case 0x07:
9242 case 0x08:
9243 case '\t':
9244 case '\n':
9245 case '\v':
9246 case '\f':
9247 case '\r':
9248 case 0x0E:
9249 case 0x0F:
9250 case 0x10:
9251 case 0x11:
9252 case 0x12:
9253 case 0x13:
9254 case 0x14:
9255 case 0x15:
9256 case 0x16:
9257 case 0x17:
9258 case 0x18:
9259 case 0x19:
9260 case 0x1A:
9261 case 0x1B:
9262 case 0x1C:
9263 case 0x1D:
9264 case 0x1E:
9265 case 0x1F:
9266 case ' ':
9267 case '!':
9268 case '"':
9269 case '#':
9270 case '$':
9271 case '%':
9272 case '&':
9273 case '\'':
9274 case '(':
9275 case ')':
9276 case '*':
9277 case '+':
9278 case ',':
9279 case '-':
9280 case '.':
9281 case '/':
9282 case ':':
9283 case ';':
9284 case '<':
9285 case '=':
9286 case '>':
9287 case '?':
9288 case '@':
9289 case '[':
9290 case ']':
9291 case '^':
9292 case '`':
9293 case '{':
9294 case '|':
9295 case '}':
9296 case '~':
9297 case 0x7F: goto yy575;
9298 case '\\': goto yy147;
9299 default: goto yy61;
9300 }
9301 yy575:
9302 #line 224 "src/parser_scan.re"
9303 { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
9304 #line 9305 "src/parser_scan.c"
9305 yy576:
9306 yyaccept = 3;
9307 yych = *(mrk = ++cur);
9308 switch (yych) {
9309 case 'e': goto yy584;
9310 default: goto yy62;
9311 }
9312 yy577:
9313 yyaccept = 3;
9314 yych = *(mrk = ++cur);
9315 switch (yych) {
9316 case 'n': goto yy585;
9317 default: goto yy62;
9318 }
9319 yy578:
9320 yyaccept = 76;
9321 yych = *(mrk = ++cur);
9322 switch (yych) {
9323 case 0x00:
9324 case 0x01:
9325 case 0x02:
9326 case 0x03:
9327 case 0x04:
9328 case 0x05:
9329 case 0x06:
9330 case 0x07:
9331 case 0x08:
9332 case '\t':
9333 case '\n':
9334 case '\v':
9335 case '\f':
9336 case '\r':
9337 case 0x0E:
9338 case 0x0F:
9339 case 0x10:
9340 case 0x11:
9341 case 0x12:
9342 case 0x13:
9343 case 0x14:
9344 case 0x15:
9345 case 0x16:
9346 case 0x17:
9347 case 0x18:
9348 case 0x19:
9349 case 0x1A:
9350 case 0x1B:
9351 case 0x1C:
9352 case 0x1D:
9353 case 0x1E:
9354 case 0x1F:
9355 case ' ':
9356 case '!':
9357 case '"':
9358 case '#':
9359 case '$':
9360 case '%':
9361 case '&':
9362 case '\'':
9363 case '(':
9364 case ')':
9365 case '*':
9366 case '+':
9367 case ',':
9368 case '-':
9369 case '.':
9370 case '/':
9371 case ':':
9372 case ';':
9373 case '<':
9374 case '=':
9375 case '>':
9376 case '?':
9377 case '@':
9378 case '[':
9379 case ']':
9380 case '^':
9381 case '`':
9382 case '{':
9383 case '|':
9384 case '}':
9385 case '~':
9386 case 0x7F: goto yy579;
9387 case '\\': goto yy147;
9388 default: goto yy61;
9389 }
9390 yy579:
9391 #line 176 "src/parser_scan.re"
9392 { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
9393 #line 9394 "src/parser_scan.c"
9394 yy580:
9395 yyaccept = 3;
9396 mrk = ++cur;
9397 if (lim <= cur) CHECKEOF();;
9398 yych = *cur;
9399 switch (yych) {
9400 case 0x00:
9401 case 0x01:
9402 case 0x02:
9403 case 0x03:
9404 case 0x04:
9405 case 0x05:
9406 case 0x06:
9407 case 0x07:
9408 case 0x08:
9409 case '\t':
9410 case '\n':
9411 case '\v':
9412 case '\f':
9413 case '\r':
9414 case 0x0E:
9415 case 0x0F:
9416 case 0x10:
9417 case 0x11:
9418 case 0x12:
9419 case 0x13:
9420 case 0x14:
9421 case 0x15:
9422 case 0x16:
9423 case 0x17:
9424 case 0x18:
9425 case 0x19:
9426 case 0x1A:
9427 case 0x1B:
9428 case 0x1C:
9429 case 0x1D:
9430 case 0x1E:
9431 case 0x1F:
9432 case ' ':
9433 case '!':
9434 case '"':
9435 case '#':
9436 case '$':
9437 case '%':
9438 case '&':
9439 case '\'':
9440 case '(':
9441 case ')':
9442 case '*':
9443 case '+':
9444 case ',':
9445 case '-':
9446 case '.':
9447 case '/':
9448 case ':':
9449 case ';':
9450 case '<':
9451 case '=':
9452 case '>':
9453 case '?':
9454 case '@':
9455 case '[':
9456 case ']':
9457 case '^':
9458 case '`':
9459 case '{':
9460 case '|':
9461 case '}':
9462 case '~':
9463 case 0x7F: goto yy55;
9464 case '\\': goto yy147;
9465 case 'e': goto yy586;
9466 case 'o': goto yy555;
9467 default: goto yy529;
9468 }
9469 yy581:
9470 yyaccept = 3;
9471 yych = *(mrk = ++cur);
9472 switch (yych) {
9473 case 'T':
9474 case 't': goto yy588;
9475 default: goto yy62;
9476 }
9477 yy582:
9478 yyaccept = 77;
9479 yych = *(mrk = ++cur);
9480 switch (yych) {
9481 case 0x00:
9482 case 0x01:
9483 case 0x02:
9484 case 0x03:
9485 case 0x04:
9486 case 0x05:
9487 case 0x06:
9488 case 0x07:
9489 case 0x08:
9490 case '\t':
9491 case '\n':
9492 case '\v':
9493 case '\f':
9494 case '\r':
9495 case 0x0E:
9496 case 0x0F:
9497 case 0x10:
9498 case 0x11:
9499 case 0x12:
9500 case 0x13:
9501 case 0x14:
9502 case 0x15:
9503 case 0x16:
9504 case 0x17:
9505 case 0x18:
9506 case 0x19:
9507 case 0x1A:
9508 case 0x1B:
9509 case 0x1C:
9510 case 0x1D:
9511 case 0x1E:
9512 case 0x1F:
9513 case ' ':
9514 case '!':
9515 case '"':
9516 case '#':
9517 case '$':
9518 case '%':
9519 case '&':
9520 case '\'':
9521 case '(':
9522 case ')':
9523 case '*':
9524 case '+':
9525 case ',':
9526 case '-':
9527 case '.':
9528 case '/':
9529 case ':':
9530 case ';':
9531 case '<':
9532 case '=':
9533 case '>':
9534 case '?':
9535 case '@':
9536 case '[':
9537 case ']':
9538 case '^':
9539 case '`':
9540 case '{':
9541 case '|':
9542 case '}':
9543 case '~':
9544 case 0x7F: goto yy583;
9545 case '\\': goto yy147;
9546 default: goto yy61;
9547 }
9548 yy583:
9549 #line 225 "src/parser_scan.re"
9550 { NEWTOKEN(PSI_T_POST_ASSERT); goto start; }
9551 #line 9552 "src/parser_scan.c"
9552 yy584:
9553 yyaccept = 3;
9554 yych = *(mrk = ++cur);
9555 switch (yych) {
9556 case '_': goto yy590;
9557 default: goto yy62;
9558 }
9559 yy585:
9560 yyaccept = 3;
9561 yych = *(mrk = ++cur);
9562 switch (yych) {
9563 case '_': goto yy591;
9564 default: goto yy62;
9565 }
9566 yy586:
9567 yyaccept = 78;
9568 mrk = ++cur;
9569 if (lim <= cur) CHECKEOF();;
9570 yych = *cur;
9571 switch (yych) {
9572 case 0x00:
9573 case 0x01:
9574 case 0x02:
9575 case 0x03:
9576 case 0x04:
9577 case 0x05:
9578 case 0x06:
9579 case 0x07:
9580 case 0x08:
9581 case '\t':
9582 case '\n':
9583 case '\v':
9584 case '\f':
9585 case '\r':
9586 case 0x0E:
9587 case 0x0F:
9588 case 0x10:
9589 case 0x11:
9590 case 0x12:
9591 case 0x13:
9592 case 0x14:
9593 case 0x15:
9594 case 0x16:
9595 case 0x17:
9596 case 0x18:
9597 case 0x19:
9598 case 0x1A:
9599 case 0x1B:
9600 case 0x1C:
9601 case 0x1D:
9602 case 0x1E:
9603 case 0x1F:
9604 case ' ':
9605 case '!':
9606 case '"':
9607 case '#':
9608 case '$':
9609 case '%':
9610 case '&':
9611 case '\'':
9612 case '(':
9613 case ')':
9614 case '*':
9615 case '+':
9616 case ',':
9617 case '-':
9618 case '.':
9619 case '/':
9620 case ':':
9621 case ';':
9622 case '<':
9623 case '=':
9624 case '>':
9625 case '?':
9626 case '@':
9627 case '[':
9628 case ']':
9629 case '^':
9630 case '`':
9631 case '{':
9632 case '|':
9633 case '}':
9634 case '~':
9635 case 0x7F: goto yy587;
9636 case '\\': goto yy147;
9637 case 'o': goto yy555;
9638 default: goto yy529;
9639 }
9640 yy587:
9641 #line 174 "src/parser_scan.re"
9642 { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; }
9643 #line 9644 "src/parser_scan.c"
9644 yy588:
9645 yyaccept = 79;
9646 yych = *(mrk = ++cur);
9647 switch (yych) {
9648 case 0x00:
9649 case 0x01:
9650 case 0x02:
9651 case 0x03:
9652 case 0x04:
9653 case 0x05:
9654 case 0x06:
9655 case 0x07:
9656 case 0x08:
9657 case '\t':
9658 case '\n':
9659 case '\v':
9660 case '\f':
9661 case '\r':
9662 case 0x0E:
9663 case 0x0F:
9664 case 0x10:
9665 case 0x11:
9666 case 0x12:
9667 case 0x13:
9668 case 0x14:
9669 case 0x15:
9670 case 0x16:
9671 case 0x17:
9672 case 0x18:
9673 case 0x19:
9674 case 0x1A:
9675 case 0x1B:
9676 case 0x1C:
9677 case 0x1D:
9678 case 0x1E:
9679 case 0x1F:
9680 case ' ':
9681 case '!':
9682 case '"':
9683 case '#':
9684 case '$':
9685 case '%':
9686 case '&':
9687 case '\'':
9688 case '(':
9689 case ')':
9690 case '*':
9691 case '+':
9692 case ',':
9693 case '-':
9694 case '.':
9695 case '/':
9696 case ':':
9697 case ';':
9698 case '<':
9699 case '=':
9700 case '>':
9701 case '?':
9702 case '@':
9703 case '[':
9704 case ']':
9705 case '^':
9706 case '`':
9707 case '{':
9708 case '|':
9709 case '}':
9710 case '~':
9711 case 0x7F: goto yy589;
9712 case '\\': goto yy147;
9713 default: goto yy61;
9714 }
9715 yy589:
9716 #line 209 "src/parser_scan.re"
9717 { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; }
9718 #line 9719 "src/parser_scan.c"
9719 yy590:
9720 yyaccept = 3;
9721 yych = *(mrk = ++cur);
9722 switch (yych) {
9723 case '_': goto yy592;
9724 default: goto yy62;
9725 }
9726 yy591:
9727 yyaccept = 3;
9728 yych = *(mrk = ++cur);
9729 switch (yych) {
9730 case '_': goto yy593;
9731 default: goto yy62;
9732 }
9733 yy592:
9734 yyaccept = 3;
9735 yych = *(mrk = ++cur);
9736 switch (yych) {
9737 case '\t':
9738 case '\f':
9739 case ' ': goto yy595;
9740 case '(': goto yy597;
9741 default: goto yy62;
9742 }
9743 yy593:
9744 yyaccept = 80;
9745 yych = *(mrk = ++cur);
9746 switch (yych) {
9747 case 0x00:
9748 case 0x01:
9749 case 0x02:
9750 case 0x03:
9751 case 0x04:
9752 case 0x05:
9753 case 0x06:
9754 case 0x07:
9755 case 0x08:
9756 case '\t':
9757 case '\n':
9758 case '\v':
9759 case '\f':
9760 case '\r':
9761 case 0x0E:
9762 case 0x0F:
9763 case 0x10:
9764 case 0x11:
9765 case 0x12:
9766 case 0x13:
9767 case 0x14:
9768 case 0x15:
9769 case 0x16:
9770 case 0x17:
9771 case 0x18:
9772 case 0x19:
9773 case 0x1A:
9774 case 0x1B:
9775 case 0x1C:
9776 case 0x1D:
9777 case 0x1E:
9778 case 0x1F:
9779 case ' ':
9780 case '!':
9781 case '"':
9782 case '#':
9783 case '$':
9784 case '%':
9785 case '&':
9786 case '\'':
9787 case '(':
9788 case ')':
9789 case '*':
9790 case '+':
9791 case ',':
9792 case '-':
9793 case '.':
9794 case '/':
9795 case ':':
9796 case ';':
9797 case '<':
9798 case '=':
9799 case '>':
9800 case '?':
9801 case '@':
9802 case '[':
9803 case ']':
9804 case '^':
9805 case '`':
9806 case '{':
9807 case '|':
9808 case '}':
9809 case '~':
9810 case 0x7F: goto yy594;
9811 case '\\': goto yy147;
9812 default: goto yy61;
9813 }
9814 yy594:
9815 #line 177 "src/parser_scan.re"
9816 { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
9817 #line 9818 "src/parser_scan.c"
9818 yy595:
9819 ++cur;
9820 if ((lim - cur) < 2) CHECKEOF();;
9821 yych = *cur;
9822 switch (yych) {
9823 case '\t':
9824 case '\f':
9825 case ' ': goto yy595;
9826 case '(': goto yy597;
9827 default: goto yy114;
9828 }
9829 yy597:
9830 yych = *++cur;
9831 switch (yych) {
9832 case '(': goto yy598;
9833 default: goto yy114;
9834 }
9835 yy598:
9836 ++cur;
9837 #line 251 "src/parser_scan.re"
9838 { parens = 2; goto cpp_attribute; }
9839 #line 9840 "src/parser_scan.c"
9840 }
9841 #line 257 "src/parser_scan.re"
9842
9843
9844 character: ;
9845
9846 #line 9847 "src/parser_scan.c"
9847 {
9848 unsigned char yych;
9849 if (lim <= cur) CHECKEOF();;
9850 yych = *cur;
9851 switch (yych) {
9852 case '\n':
9853 case '\r': goto yy604;
9854 case '\'': goto yy606;
9855 case '\\': goto yy608;
9856 default: goto yy602;
9857 }
9858 yy602:
9859 ++cur;
9860 #line 275 "src/parser_scan.re"
9861 { escaped = false; goto character; }
9862 #line 9863 "src/parser_scan.c"
9863 yy604:
9864 ++cur;
9865 #line 262 "src/parser_scan.re"
9866 { NEWLINE(); goto character; }
9867 #line 9868 "src/parser_scan.c"
9868 yy606:
9869 ++cur;
9870 #line 264 "src/parser_scan.re"
9871 {
9872 if (escaped) {
9873 escaped = false;
9874 goto character;
9875 }
9876 cur -= 1;
9877 NEWTOKEN(PSI_T_QUOTED_CHAR);
9878 cur += 1;
9879 token->flags = char_width;
9880 goto start;
9881 }
9882 #line 9883 "src/parser_scan.c"
9883 yy608:
9884 ++cur;
9885 #line 263 "src/parser_scan.re"
9886 { escaped = !escaped; goto character; }
9887 #line 9888 "src/parser_scan.c"
9888 }
9889 #line 277 "src/parser_scan.re"
9890
9891
9892 string: ;
9893
9894 #line 9895 "src/parser_scan.c"
9895 {
9896 unsigned char yych;
9897 if (lim <= cur) CHECKEOF();;
9898 yych = *cur;
9899 switch (yych) {
9900 case '\n':
9901 case '\r': goto yy614;
9902 case '"': goto yy616;
9903 case '\\': goto yy618;
9904 default: goto yy612;
9905 }
9906 yy612:
9907 ++cur;
9908 #line 295 "src/parser_scan.re"
9909 { escaped = false; goto string; }
9910 #line 9911 "src/parser_scan.c"
9911 yy614:
9912 ++cur;
9913 #line 282 "src/parser_scan.re"
9914 { NEWLINE(); goto string; }
9915 #line 9916 "src/parser_scan.c"
9916 yy616:
9917 ++cur;
9918 #line 284 "src/parser_scan.re"
9919 {
9920 if (escaped) {
9921 escaped = false;
9922 goto string;
9923 }
9924 cur -= 1;
9925 NEWTOKEN(PSI_T_QUOTED_STRING);
9926 cur += 1;
9927 token->flags = char_width;
9928 goto start;
9929 }
9930 #line 9931 "src/parser_scan.c"
9931 yy618:
9932 ++cur;
9933 #line 283 "src/parser_scan.re"
9934 { escaped = !escaped; goto string; }
9935 #line 9936 "src/parser_scan.c"
9936 }
9937 #line 297 "src/parser_scan.re"
9938
9939
9940 comment: ;
9941
9942 #line 9943 "src/parser_scan.c"
9943 {
9944 unsigned char yych;
9945 if ((lim - cur) < 2) CHECKEOF();;
9946 yych = *cur;
9947 switch (yych) {
9948 case '\n':
9949 case '\r': goto yy624;
9950 case '*': goto yy626;
9951 default: goto yy622;
9952 }
9953 yy622:
9954 ++cur;
9955 yy623:
9956 #line 304 "src/parser_scan.re"
9957 { goto comment; }
9958 #line 9959 "src/parser_scan.c"
9959 yy624:
9960 ++cur;
9961 #line 302 "src/parser_scan.re"
9962 { NEWLINE(); goto comment; }
9963 #line 9964 "src/parser_scan.c"
9964 yy626:
9965 yych = *++cur;
9966 switch (yych) {
9967 case '/': goto yy627;
9968 default: goto yy623;
9969 }
9970 yy627:
9971 ++cur;
9972 #line 303 "src/parser_scan.re"
9973 { NEWTOKEN(PSI_T_COMMENT); goto start; }
9974 #line 9975 "src/parser_scan.c"
9975 }
9976 #line 306 "src/parser_scan.re"
9977
9978
9979 comment_sl: ;
9980
9981 #line 9982 "src/parser_scan.c"
9982 {
9983 unsigned char yych;
9984 if (lim <= cur) CHECKEOF();;
9985 yych = *cur;
9986 switch (yych) {
9987 case '\n':
9988 case '\r': goto yy633;
9989 default: goto yy631;
9990 }
9991 yy631:
9992 ++cur;
9993 #line 312 "src/parser_scan.re"
9994 { goto comment_sl; }
9995 #line 9996 "src/parser_scan.c"
9996 yy633:
9997 ++cur;
9998 #line 311 "src/parser_scan.re"
9999 { NEWTOKEN(PSI_T_COMMENT); tok = cur - 1; NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
10000 #line 10001 "src/parser_scan.c"
10001 }
10002 #line 314 "src/parser_scan.re"
10003
10004
10005 cpp_attribute: ;
10006
10007
10008 #line 10009 "src/parser_scan.c"
10009 {
10010 unsigned char yych;
10011 if (lim <= cur) CHECKEOF();;
10012 yych = *cur;
10013 switch (yych) {
10014 case '\n':
10015 case '\r': goto yy639;
10016 case '(': goto yy641;
10017 case ')': goto yy643;
10018 default: goto yy637;
10019 }
10020 yy637:
10021 ++cur;
10022 #line 323 "src/parser_scan.re"
10023 { goto cpp_attribute; }
10024 #line 10025 "src/parser_scan.c"
10025 yy639:
10026 ++cur;
10027 #line 322 "src/parser_scan.re"
10028 { NEWLINE(); goto cpp_attribute; }
10029 #line 10030 "src/parser_scan.c"
10030 yy641:
10031 ++cur;
10032 #line 320 "src/parser_scan.re"
10033 { ++parens; goto cpp_attribute; }
10034 #line 10035 "src/parser_scan.c"
10035 yy643:
10036 ++cur;
10037 #line 321 "src/parser_scan.re"
10038 { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }
10039 #line 10040 "src/parser_scan.c"
10040 }
10041 #line 325 "src/parser_scan.re"
10042
10043 error: ;
10044
10045 P->error(PSI_DATA(P), token, PSI_WARNING, "PSI syntax error: unexpected input (%d) '%.*s' at col %tu",
10046 token->type, token->text->len, token->text->val, tok - eol + 1);
10047 psi_plist_free(tokens);
10048 return NULL;
10049
10050 done: ;
10051
10052 PSI_DEBUG_PRINT(P, "PSI: EOF cur=%p lim=%p\n", cur, lim);
10053
10054 return tokens;
10055 }