CPP builtins
[m6w6/ext-psi] / src / parser_scan.c
1 /* Generated by re2c 1.1.1 on Mon Dec 10 08:53:39 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 #include "debug.h"
37
38 #define YYMAXFILL 15
39
40 #ifndef YYMAXFILL
41 # define YYMAXFILL 256
42 #endif
43
44 size_t psi_parser_maxfill(void) {
45 return YYMAXFILL;
46 }
47
48 #define NEWLINE() \
49 eol = cur; \
50 ++lines
51
52 #define NEWTOKEN(t) do { \
53 if (t == PSI_T_COMMENT || t == PSI_T_WHITESPACE) { \
54 token = psi_token_init(t, "", 0, tok - eol + 1, lines, I->file); \
55 } else { \
56 token = psi_token_init(t, tok, cur - tok, tok - eol + 1, lines, I->file); \
57 } \
58 tokens = psi_plist_add(tokens, &token); \
59 PSI_DEBUG_LOCK(P, \
60 PSI_DEBUG_PRINT(P, "PSI: scanned < "); \
61 PSI_DEBUG_DUMP(P, psi_token_dump, token); \
62 ); \
63 } while(0)
64
65 #define CHECKEOF() if (cur >= lim - YYMAXFILL) goto done
66
67 struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input *I)
68 {
69 struct psi_plist *tokens;
70 struct psi_token *token;
71 const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
72 unsigned parens, lines = 1;
73 bool escaped;
74 token_t char_width;
75
76 PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
77
78 tok = mrk = eol = cur = I->buffer;
79 lim = I->buffer + I->length + YYMAXFILL;
80 tokens = psi_plist_init((psi_plist_dtor) psi_token_free);
81
82 start: ;
83 char_width = 1;
84 ctxmrk = NULL;
85 tok = cur;
86
87 (void) ctxmrk;
88
89
90 #line 91 "src/parser_scan.c"
91 {
92 unsigned char yych;
93 unsigned int yyaccept = 0;
94 if ((lim - cur) < 15) CHECKEOF();;
95 yych = *cur;
96 switch (yych) {
97 case 0x00:
98 case 0x01:
99 case 0x02:
100 case 0x03:
101 case 0x04:
102 case 0x05:
103 case 0x06:
104 case 0x07:
105 case 0x08:
106 case '\v':
107 case 0x0E:
108 case 0x0F:
109 case 0x10:
110 case 0x11:
111 case 0x12:
112 case 0x13:
113 case 0x14:
114 case 0x15:
115 case 0x16:
116 case 0x17:
117 case 0x18:
118 case 0x19:
119 case 0x1A:
120 case 0x1B:
121 case 0x1C:
122 case 0x1D:
123 case 0x1E:
124 case 0x1F:
125 case '@':
126 case '`':
127 case 0x7F: goto yy2;
128 case '\t':
129 case '\f':
130 case ' ': goto yy4;
131 case '\n':
132 case '\r': goto yy7;
133 case '!': goto yy9;
134 case '"': goto yy11;
135 case '#': goto yy13;
136 case '$': goto yy15;
137 case '%': goto yy16;
138 case '&': goto yy18;
139 case '\'': goto yy20;
140 case '(': goto yy22;
141 case ')': goto yy24;
142 case '*': goto yy26;
143 case '+': goto yy28;
144 case ',': goto yy30;
145 case '-': goto yy32;
146 case '.': goto yy34;
147 case '/': goto yy36;
148 case '0': goto yy38;
149 case '1':
150 case '2':
151 case '3':
152 case '4':
153 case '5':
154 case '6':
155 case '7':
156 case '8':
157 case '9': goto yy40;
158 case ':': goto yy42;
159 case ';': goto yy44;
160 case '<': goto yy46;
161 case '=': goto yy48;
162 case '>': goto yy50;
163 case '?': goto yy52;
164 case 'A':
165 case 'a': goto yy54;
166 case 'B': goto yy56;
167 case 'C': goto yy57;
168 case 'D': goto yy58;
169 case 'E': goto yy59;
170 case 'F': goto yy60;
171 case 'I': goto yy63;
172 case 'L': goto yy64;
173 case 'M':
174 case 'm': goto yy65;
175 case 'N':
176 case 'n': goto yy66;
177 case 'O':
178 case 'o': goto yy67;
179 case 'P': goto yy68;
180 case 'R':
181 case 'r': goto yy69;
182 case 'S': goto yy70;
183 case 'T': goto yy71;
184 case 'U': goto yy72;
185 case 'W':
186 case 'w': goto yy73;
187 case 'Z':
188 case 'z': goto yy74;
189 case '[': goto yy75;
190 case '\\': goto yy77;
191 case ']': goto yy79;
192 case '^': goto yy81;
193 case '_': goto yy83;
194 case 'b': goto yy84;
195 case 'c': goto yy85;
196 case 'd': goto yy86;
197 case 'e': goto yy87;
198 case 'f': goto yy88;
199 case 'i': goto yy89;
200 case 'l': goto yy90;
201 case 'p': goto yy91;
202 case 's': goto yy92;
203 case 't': goto yy93;
204 case 'u': goto yy94;
205 case 'v': goto yy95;
206 case '{': goto yy96;
207 case '|': goto yy98;
208 case '}': goto yy100;
209 case '~': goto yy102;
210 default: goto yy61;
211 }
212 yy2:
213 ++cur;
214 yy3:
215 #line 256 "src/parser_scan.re"
216 { CHECKEOF(); NEWTOKEN(-2); goto error; }
217 #line 218 "src/parser_scan.c"
218 yy4:
219 ++cur;
220 if (lim <= cur) CHECKEOF();;
221 yych = *cur;
222 switch (yych) {
223 case '\t':
224 case '\f':
225 case ' ': goto yy4;
226 default: goto yy6;
227 }
228 yy6:
229 #line 255 "src/parser_scan.re"
230 { NEWTOKEN(PSI_T_WHITESPACE); goto start; }
231 #line 232 "src/parser_scan.c"
232 yy7:
233 ++cur;
234 #line 254 "src/parser_scan.re"
235 { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
236 #line 237 "src/parser_scan.c"
237 yy9:
238 yych = *++cur;
239 switch (yych) {
240 case '=': goto yy104;
241 default: goto yy10;
242 }
243 yy10:
244 #line 157 "src/parser_scan.re"
245 { NEWTOKEN(PSI_T_NOT); goto start; }
246 #line 247 "src/parser_scan.c"
247 yy11:
248 ++cur;
249 #line 130 "src/parser_scan.re"
250 { escaped = false; tok += 1; goto string; }
251 #line 252 "src/parser_scan.c"
252 yy13:
253 yych = *++cur;
254 switch (yych) {
255 case '#': goto yy106;
256 default: goto yy14;
257 }
258 yy14:
259 #line 140 "src/parser_scan.re"
260 { NEWTOKEN(PSI_T_HASH); goto start; }
261 #line 262 "src/parser_scan.c"
262 yy15:
263 yych = *++cur;
264 switch (yych) {
265 case 0x00:
266 case 0x01:
267 case 0x02:
268 case 0x03:
269 case 0x04:
270 case 0x05:
271 case 0x06:
272 case 0x07:
273 case 0x08:
274 case '\t':
275 case '\n':
276 case '\v':
277 case '\f':
278 case '\r':
279 case 0x0E:
280 case 0x0F:
281 case 0x10:
282 case 0x11:
283 case 0x12:
284 case 0x13:
285 case 0x14:
286 case 0x15:
287 case 0x16:
288 case 0x17:
289 case 0x18:
290 case 0x19:
291 case 0x1A:
292 case 0x1B:
293 case 0x1C:
294 case 0x1D:
295 case 0x1E:
296 case 0x1F:
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 '}':
328 case '~':
329 case 0x7F: goto yy3;
330 default: goto yy108;
331 }
332 yy16:
333 ++cur;
334 #line 158 "src/parser_scan.re"
335 { NEWTOKEN(PSI_T_MODULO); goto start; }
336 #line 337 "src/parser_scan.c"
337 yy18:
338 yych = *++cur;
339 switch (yych) {
340 case '&': goto yy111;
341 default: goto yy19;
342 }
343 yy19:
344 #line 159 "src/parser_scan.re"
345 { NEWTOKEN(PSI_T_AMPERSAND); goto start; }
346 #line 347 "src/parser_scan.c"
347 yy20:
348 ++cur;
349 #line 129 "src/parser_scan.re"
350 { escaped = false; tok += 1; goto character; }
351 #line 352 "src/parser_scan.c"
352 yy22:
353 ++cur;
354 #line 141 "src/parser_scan.re"
355 { NEWTOKEN(PSI_T_LPAREN); goto start; }
356 #line 357 "src/parser_scan.c"
357 yy24:
358 ++cur;
359 #line 142 "src/parser_scan.re"
360 { NEWTOKEN(PSI_T_RPAREN); goto start; }
361 #line 362 "src/parser_scan.c"
362 yy26:
363 ++cur;
364 #line 155 "src/parser_scan.re"
365 { NEWTOKEN(PSI_T_ASTERISK); goto start; }
366 #line 367 "src/parser_scan.c"
367 yy28:
368 ++cur;
369 #line 160 "src/parser_scan.re"
370 { NEWTOKEN(PSI_T_PLUS); goto start; }
371 #line 372 "src/parser_scan.c"
372 yy30:
373 ++cur;
374 #line 144 "src/parser_scan.re"
375 { NEWTOKEN(PSI_T_COMMA); goto start; }
376 #line 377 "src/parser_scan.c"
377 yy32:
378 ++cur;
379 #line 161 "src/parser_scan.re"
380 { NEWTOKEN(PSI_T_MINUS); goto start; }
381 #line 382 "src/parser_scan.c"
382 yy34:
383 yyaccept = 0;
384 yych = *(mrk = ++cur);
385 switch (yych) {
386 case '.': goto yy113;
387 case '0':
388 case '1':
389 case '2':
390 case '3':
391 case '4':
392 case '5':
393 case '6':
394 case '7':
395 case '8':
396 case '9': goto yy115;
397 default: goto yy35;
398 }
399 yy35:
400 #line 172 "src/parser_scan.re"
401 { NEWTOKEN(PSI_T_PERIOD); goto start; }
402 #line 403 "src/parser_scan.c"
403 yy36:
404 yych = *++cur;
405 switch (yych) {
406 case '*': goto yy118;
407 case '/': goto yy120;
408 default: goto yy37;
409 }
410 yy37:
411 #line 162 "src/parser_scan.re"
412 { NEWTOKEN(PSI_T_SLASH); goto start; }
413 #line 414 "src/parser_scan.c"
414 yy38:
415 yyaccept = 1;
416 yych = *(mrk = ++cur);
417 switch (yych) {
418 case '.': goto yy122;
419 case 'E':
420 case 'e': goto yy126;
421 case 'X':
422 case 'x': goto yy131;
423 default: goto yy125;
424 }
425 yy39:
426 #line 116 "src/parser_scan.re"
427 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; }
428 #line 429 "src/parser_scan.c"
429 yy40:
430 yyaccept = 1;
431 mrk = ++cur;
432 if ((lim - cur) < 3) CHECKEOF();;
433 yych = *cur;
434 switch (yych) {
435 case '.': goto yy122;
436 case '0':
437 case '1':
438 case '2':
439 case '3':
440 case '4':
441 case '5':
442 case '6':
443 case '7':
444 case '8':
445 case '9': goto yy40;
446 case 'E':
447 case 'e': goto yy126;
448 case 'L':
449 case 'l': goto yy127;
450 case 'U':
451 case 'u': goto yy129;
452 default: goto yy39;
453 }
454 yy42:
455 ++cur;
456 #line 145 "src/parser_scan.re"
457 { NEWTOKEN(PSI_T_COLON); goto start; }
458 #line 459 "src/parser_scan.c"
459 yy44:
460 ++cur;
461 #line 143 "src/parser_scan.re"
462 { NEWTOKEN(PSI_T_EOS); goto start; }
463 #line 464 "src/parser_scan.c"
464 yy46:
465 yyaccept = 2;
466 yych = *(mrk = ++cur);
467 switch (yych) {
468 case '-':
469 case '.':
470 case '/':
471 case '0':
472 case '1':
473 case '2':
474 case '3':
475 case '4':
476 case '5':
477 case '6':
478 case '7':
479 case '8':
480 case '9':
481 case 'A':
482 case 'B':
483 case 'C':
484 case 'D':
485 case 'E':
486 case 'F':
487 case 'G':
488 case 'H':
489 case 'I':
490 case 'J':
491 case 'K':
492 case 'L':
493 case 'M':
494 case 'N':
495 case 'O':
496 case 'P':
497 case 'Q':
498 case 'R':
499 case 'S':
500 case 'T':
501 case 'U':
502 case 'V':
503 case 'W':
504 case 'X':
505 case 'Y':
506 case 'Z':
507 case '_':
508 case 'a':
509 case 'b':
510 case 'c':
511 case 'd':
512 case 'e':
513 case 'f':
514 case 'g':
515 case 'h':
516 case 'i':
517 case 'j':
518 case 'k':
519 case 'l':
520 case 'm':
521 case 'n':
522 case 'o':
523 case 'p':
524 case 'q':
525 case 'r':
526 case 's':
527 case 't':
528 case 'u':
529 case 'v':
530 case 'w':
531 case 'x':
532 case 'y':
533 case 'z': goto yy132;
534 case '<': goto yy134;
535 case '=': goto yy136;
536 default: goto yy47;
537 }
538 yy47:
539 #line 170 "src/parser_scan.re"
540 { NEWTOKEN(PSI_T_LCHEVR); goto start; }
541 #line 542 "src/parser_scan.c"
542 yy48:
543 yych = *++cur;
544 switch (yych) {
545 case '=': goto yy138;
546 default: goto yy49;
547 }
548 yy49:
549 #line 154 "src/parser_scan.re"
550 { NEWTOKEN(PSI_T_EQUALS); goto start; }
551 #line 552 "src/parser_scan.c"
552 yy50:
553 yych = *++cur;
554 switch (yych) {
555 case '=': goto yy140;
556 case '>': goto yy142;
557 default: goto yy51;
558 }
559 yy51:
560 #line 171 "src/parser_scan.re"
561 { NEWTOKEN(PSI_T_RCHEVR); goto start; }
562 #line 563 "src/parser_scan.c"
563 yy52:
564 ++cur;
565 #line 174 "src/parser_scan.re"
566 { NEWTOKEN(PSI_T_IIF); goto start; }
567 #line 568 "src/parser_scan.c"
568 yy54:
569 yyaccept = 3;
570 yych = *(mrk = ++cur);
571 switch (yych) {
572 case 'R':
573 case 'r': goto yy144;
574 case 'S':
575 case 's': goto yy145;
576 default: goto yy62;
577 }
578 yy55:
579 #line 249 "src/parser_scan.re"
580 { NEWTOKEN(PSI_T_NAME); goto start; }
581 #line 582 "src/parser_scan.c"
582 yy56:
583 yyaccept = 3;
584 yych = *(mrk = ++cur);
585 switch (yych) {
586 case 'O':
587 case 'o': goto yy148;
588 default: goto yy62;
589 }
590 yy57:
591 yyaccept = 3;
592 yych = *(mrk = ++cur);
593 switch (yych) {
594 case 'A':
595 case 'a': goto yy149;
596 case 'O':
597 case 'o': goto yy150;
598 default: goto yy62;
599 }
600 yy58:
601 yyaccept = 3;
602 yych = *(mrk = ++cur);
603 switch (yych) {
604 case 'E':
605 case 'e': goto yy151;
606 default: goto yy62;
607 }
608 yy59:
609 yyaccept = 3;
610 yych = *(mrk = ++cur);
611 switch (yych) {
612 case 'L':
613 case 'l': goto yy152;
614 case 'N':
615 case 'n': goto yy153;
616 case 'R':
617 case 'r': goto yy154;
618 default: goto yy62;
619 }
620 yy60:
621 yyaccept = 3;
622 yych = *(mrk = ++cur);
623 switch (yych) {
624 case 'A':
625 case 'a': goto yy155;
626 case 'L':
627 case 'l': goto yy156;
628 case 'R':
629 case 'r': goto yy157;
630 case 'U':
631 case 'u': goto yy158;
632 default: goto yy62;
633 }
634 yy61:
635 yyaccept = 3;
636 mrk = ++cur;
637 if (lim <= cur) CHECKEOF();;
638 yych = *cur;
639 yy62:
640 switch (yych) {
641 case 0x00:
642 case 0x01:
643 case 0x02:
644 case 0x03:
645 case 0x04:
646 case 0x05:
647 case 0x06:
648 case 0x07:
649 case 0x08:
650 case '\t':
651 case '\n':
652 case '\v':
653 case '\f':
654 case '\r':
655 case 0x0E:
656 case 0x0F:
657 case 0x10:
658 case 0x11:
659 case 0x12:
660 case 0x13:
661 case 0x14:
662 case 0x15:
663 case 0x16:
664 case 0x17:
665 case 0x18:
666 case 0x19:
667 case 0x1A:
668 case 0x1B:
669 case 0x1C:
670 case 0x1D:
671 case 0x1E:
672 case 0x1F:
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 '}':
703 case '~':
704 case 0x7F: goto yy55;
705 case '\\': goto yy147;
706 default: goto yy61;
707 }
708 yy63:
709 yyaccept = 3;
710 yych = *(mrk = ++cur);
711 switch (yych) {
712 case 'F':
713 case 'f': goto yy159;
714 case 'N':
715 case 'n': goto yy161;
716 default: goto yy62;
717 }
718 yy64:
719 yyaccept = 3;
720 yych = *(mrk = ++cur);
721 switch (yych) {
722 case '"':
723 case '\'': goto yy162;
724 case 'E':
725 case 'e': goto yy164;
726 case 'I':
727 case 'i': goto yy165;
728 default: goto yy62;
729 }
730 yy65:
731 yyaccept = 3;
732 yych = *(mrk = ++cur);
733 switch (yych) {
734 case 'I':
735 case 'i': goto yy166;
736 default: goto yy62;
737 }
738 yy66:
739 yyaccept = 3;
740 yych = *(mrk = ++cur);
741 switch (yych) {
742 case 'U':
743 case 'u': goto yy167;
744 default: goto yy62;
745 }
746 yy67:
747 yyaccept = 3;
748 yych = *(mrk = ++cur);
749 switch (yych) {
750 case 'B':
751 case 'b': goto yy168;
752 default: goto yy62;
753 }
754 yy68:
755 yyaccept = 3;
756 yych = *(mrk = ++cur);
757 switch (yych) {
758 case 'A':
759 case 'a': goto yy169;
760 case 'O':
761 case 'o': goto yy170;
762 case 'R':
763 case 'r': goto yy171;
764 default: goto yy62;
765 }
766 yy69:
767 yyaccept = 3;
768 yych = *(mrk = ++cur);
769 switch (yych) {
770 case 'E':
771 case 'e': goto yy172;
772 default: goto yy62;
773 }
774 yy70:
775 yyaccept = 3;
776 yych = *(mrk = ++cur);
777 switch (yych) {
778 case 'E':
779 case 'e': goto yy173;
780 case 'T':
781 case 't': goto yy174;
782 default: goto yy62;
783 }
784 yy71:
785 yyaccept = 3;
786 yych = *(mrk = ++cur);
787 switch (yych) {
788 case 'E':
789 case 'e': goto yy175;
790 case 'O':
791 case 'o': goto yy176;
792 case 'R':
793 case 'r': goto yy177;
794 default: goto yy62;
795 }
796 yy72:
797 yyaccept = 3;
798 yych = *(mrk = ++cur);
799 switch (yych) {
800 case '"':
801 case '\'': goto yy178;
802 case 'N':
803 case 'n': goto yy180;
804 default: goto yy62;
805 }
806 yy73:
807 yyaccept = 3;
808 yych = *(mrk = ++cur);
809 switch (yych) {
810 case 'A':
811 case 'a': goto yy181;
812 default: goto yy62;
813 }
814 yy74:
815 yyaccept = 3;
816 yych = *(mrk = ++cur);
817 switch (yych) {
818 case 'V':
819 case 'v': goto yy182;
820 default: goto yy62;
821 }
822 yy75:
823 ++cur;
824 #line 148 "src/parser_scan.re"
825 { NEWTOKEN(PSI_T_LBRACKET); goto start; }
826 #line 827 "src/parser_scan.c"
827 yy77:
828 yych = *++cur;
829 switch (yych) {
830 case 0x00:
831 case 0x01:
832 case 0x02:
833 case 0x03:
834 case 0x04:
835 case 0x05:
836 case 0x06:
837 case 0x07:
838 case 0x08:
839 case '\t':
840 case '\n':
841 case '\v':
842 case '\f':
843 case '\r':
844 case 0x0E:
845 case 0x0F:
846 case 0x10:
847 case 0x11:
848 case 0x12:
849 case 0x13:
850 case 0x14:
851 case 0x15:
852 case 0x16:
853 case 0x17:
854 case 0x18:
855 case 0x19:
856 case 0x1A:
857 case 0x1B:
858 case 0x1C:
859 case 0x1D:
860 case 0x1E:
861 case 0x1F:
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 '.':
877 case '/':
878 case '0':
879 case '1':
880 case '2':
881 case '3':
882 case '4':
883 case '5':
884 case '6':
885 case '7':
886 case '8':
887 case '9':
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 '}':
903 case '~':
904 case 0x7F: goto yy78;
905 default: goto yy183;
906 }
907 yy78:
908 #line 163 "src/parser_scan.re"
909 { NEWTOKEN(PSI_T_BSLASH); goto start; }
910 #line 911 "src/parser_scan.c"
911 yy79:
912 ++cur;
913 #line 149 "src/parser_scan.re"
914 { NEWTOKEN(PSI_T_RBRACKET); goto start; }
915 #line 916 "src/parser_scan.c"
916 yy81:
917 ++cur;
918 #line 165 "src/parser_scan.re"
919 { NEWTOKEN(PSI_T_CARET); goto start; }
920 #line 921 "src/parser_scan.c"
921 yy83:
922 yyaccept = 3;
923 yych = *(mrk = ++cur);
924 switch (yych) {
925 case '_': goto yy186;
926 default: goto yy62;
927 }
928 yy84:
929 yyaccept = 3;
930 yych = *(mrk = ++cur);
931 switch (yych) {
932 case 'O': goto yy148;
933 case 'o': goto yy187;
934 default: goto yy62;
935 }
936 yy85:
937 yyaccept = 3;
938 yych = *(mrk = ++cur);
939 switch (yych) {
940 case 'A':
941 case 'a': goto yy149;
942 case 'O': goto yy150;
943 case 'h': goto yy188;
944 case 'o': goto yy189;
945 default: goto yy62;
946 }
947 yy86:
948 yyaccept = 3;
949 yych = *(mrk = ++cur);
950 switch (yych) {
951 case 'E':
952 case 'e': goto yy151;
953 case 'o': goto yy190;
954 default: goto yy62;
955 }
956 yy87:
957 yyaccept = 3;
958 yych = *(mrk = ++cur);
959 switch (yych) {
960 case 'L':
961 case 'l': goto yy152;
962 case 'N': goto yy153;
963 case 'R':
964 case 'r': goto yy154;
965 case 'n': goto yy191;
966 default: goto yy62;
967 }
968 yy88:
969 yyaccept = 3;
970 yych = *(mrk = ++cur);
971 switch (yych) {
972 case 'A':
973 case 'a': goto yy155;
974 case 'L': goto yy156;
975 case 'R':
976 case 'r': goto yy157;
977 case 'U':
978 case 'u': goto yy158;
979 case 'l': goto yy192;
980 default: goto yy62;
981 }
982 yy89:
983 yyaccept = 3;
984 yych = *(mrk = ++cur);
985 switch (yych) {
986 case 'F':
987 case 'f': goto yy159;
988 case 'N': goto yy161;
989 case 'n': goto yy193;
990 default: goto yy62;
991 }
992 yy90:
993 yyaccept = 3;
994 yych = *(mrk = ++cur);
995 switch (yych) {
996 case 'E':
997 case 'e': goto yy164;
998 case 'I': goto yy165;
999 case 'i': goto yy194;
1000 case 'o': goto yy195;
1001 default: goto yy62;
1002 }
1003 yy91:
1004 yyaccept = 3;
1005 yych = *(mrk = ++cur);
1006 switch (yych) {
1007 case 'A':
1008 case 'a': goto yy169;
1009 case 'O':
1010 case 'o': goto yy170;
1011 case 'R': goto yy171;
1012 case 'r': goto yy196;
1013 default: goto yy62;
1014 }
1015 yy92:
1016 yyaccept = 3;
1017 yych = *(mrk = ++cur);
1018 switch (yych) {
1019 case 'E':
1020 case 'e': goto yy173;
1021 case 'T': goto yy174;
1022 case 'h': goto yy197;
1023 case 'i': goto yy198;
1024 case 't': goto yy199;
1025 default: goto yy62;
1026 }
1027 yy93:
1028 yyaccept = 3;
1029 yych = *(mrk = ++cur);
1030 switch (yych) {
1031 case 'E':
1032 case 'e': goto yy175;
1033 case 'O':
1034 case 'o': goto yy176;
1035 case 'R':
1036 case 'r': goto yy177;
1037 case 'y': goto yy200;
1038 default: goto yy62;
1039 }
1040 yy94:
1041 yyaccept = 3;
1042 yych = *(mrk = ++cur);
1043 switch (yych) {
1044 case '"':
1045 case '\'': goto yy201;
1046 case '8': goto yy203;
1047 case 'N': goto yy180;
1048 case 'n': goto yy204;
1049 default: goto yy62;
1050 }
1051 yy95:
1052 yyaccept = 3;
1053 yych = *(mrk = ++cur);
1054 switch (yych) {
1055 case 'o': goto yy205;
1056 default: goto yy62;
1057 }
1058 yy96:
1059 ++cur;
1060 #line 146 "src/parser_scan.re"
1061 { NEWTOKEN(PSI_T_LBRACE); goto start; }
1062 #line 1063 "src/parser_scan.c"
1063 yy98:
1064 yych = *++cur;
1065 switch (yych) {
1066 case '|': goto yy206;
1067 default: goto yy99;
1068 }
1069 yy99:
1070 #line 164 "src/parser_scan.re"
1071 { NEWTOKEN(PSI_T_PIPE); goto start; }
1072 #line 1073 "src/parser_scan.c"
1073 yy100:
1074 ++cur;
1075 #line 147 "src/parser_scan.re"
1076 { NEWTOKEN(PSI_T_RBRACE); goto start; }
1077 #line 1078 "src/parser_scan.c"
1078 yy102:
1079 ++cur;
1080 #line 156 "src/parser_scan.re"
1081 { NEWTOKEN(PSI_T_TILDE); goto start; }
1082 #line 1083 "src/parser_scan.c"
1083 yy104:
1084 ++cur;
1085 #line 150 "src/parser_scan.re"
1086 { NEWTOKEN(PSI_T_CMP_NE); goto start; }
1087 #line 1088 "src/parser_scan.c"
1088 yy106:
1089 ++cur;
1090 #line 139 "src/parser_scan.re"
1091 { NEWTOKEN(PSI_T_CPP_PASTE); goto start; }
1092 #line 1093 "src/parser_scan.c"
1093 yy108:
1094 ++cur;
1095 if (lim <= cur) CHECKEOF();;
1096 yych = *cur;
1097 switch (yych) {
1098 case 0x00:
1099 case 0x01:
1100 case 0x02:
1101 case 0x03:
1102 case 0x04:
1103 case 0x05:
1104 case 0x06:
1105 case 0x07:
1106 case 0x08:
1107 case '\t':
1108 case '\n':
1109 case '\v':
1110 case '\f':
1111 case '\r':
1112 case 0x0E:
1113 case 0x0F:
1114 case 0x10:
1115 case 0x11:
1116 case 0x12:
1117 case 0x13:
1118 case 0x14:
1119 case 0x15:
1120 case 0x16:
1121 case 0x17:
1122 case 0x18:
1123 case 0x19:
1124 case 0x1A:
1125 case 0x1B:
1126 case 0x1C:
1127 case 0x1D:
1128 case 0x1E:
1129 case 0x1F:
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 '}':
1161 case '~':
1162 case 0x7F: goto yy110;
1163 default: goto yy108;
1164 }
1165 yy110:
1166 #line 251 "src/parser_scan.re"
1167 { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; }
1168 #line 1169 "src/parser_scan.c"
1169 yy111:
1170 ++cur;
1171 #line 152 "src/parser_scan.re"
1172 { NEWTOKEN(PSI_T_AND); goto start; }
1173 #line 1174 "src/parser_scan.c"
1174 yy113:
1175 yych = *++cur;
1176 switch (yych) {
1177 case '.': goto yy208;
1178 default: goto yy114;
1179 }
1180 yy114:
1181 cur = mrk;
1182 switch (yyaccept) {
1183 case 0: goto yy35;
1184 case 1: goto yy39;
1185 case 2: goto yy47;
1186 case 3: goto yy55;
1187 case 4: goto yy117;
1188 case 5: goto yy128;
1189 case 6: goto yy146;
1190 case 7: goto yy160;
1191 case 8: goto yy185;
1192 case 9: goto yy242;
1193 case 10: goto yy244;
1194 case 11: goto yy253;
1195 case 12: goto yy274;
1196 case 13: goto yy306;
1197 case 14: goto yy308;
1198 case 15: goto yy314;
1199 case 16: goto yy322;
1200 case 17: goto yy334;
1201 case 18: goto yy342;
1202 case 19: goto yy346;
1203 case 20: goto yy353;
1204 case 21: goto yy355;
1205 case 22: goto yy359;
1206 case 23: goto yy363;
1207 case 24: goto yy365;
1208 case 25: goto yy375;
1209 case 26: goto yy378;
1210 case 27: goto yy385;
1211 case 28: goto yy388;
1212 case 29: goto yy390;
1213 case 30: goto yy392;
1214 case 31: goto yy396;
1215 case 32: goto yy401;
1216 case 33: goto yy419;
1217 case 34: goto yy422;
1218 case 35: goto yy427;
1219 case 36: goto yy430;
1220 case 37: goto yy434;
1221 case 38: goto yy440;
1222 case 39: goto yy444;
1223 case 40: goto yy449;
1224 case 41: goto yy451;
1225 case 42: goto yy455;
1226 case 43: goto yy458;
1227 case 44: goto yy460;
1228 case 45: goto yy462;
1229 case 46: goto yy467;
1230 case 47: goto yy469;
1231 case 48: goto yy471;
1232 case 49: goto yy473;
1233 case 50: goto yy475;
1234 case 51: goto yy480;
1235 case 52: goto yy489;
1236 case 53: goto yy491;
1237 case 54: goto yy493;
1238 case 55: goto yy495;
1239 case 56: goto yy497;
1240 case 57: goto yy499;
1241 case 58: goto yy504;
1242 case 59: goto yy508;
1243 case 60: goto yy512;
1244 case 61: goto yy514;
1245 case 62: goto yy519;
1246 case 63: goto yy524;
1247 case 64: goto yy532;
1248 case 65: goto yy536;
1249 case 66: goto yy538;
1250 case 67: goto yy540;
1251 case 68: goto yy542;
1252 case 69: goto yy547;
1253 case 70: goto yy549;
1254 case 71: goto yy558;
1255 case 72: goto yy560;
1256 case 73: goto yy565;
1257 case 74: goto yy567;
1258 case 75: goto yy575;
1259 case 76: goto yy579;
1260 case 77: goto yy583;
1261 case 78: goto yy587;
1262 case 79: goto yy589;
1263 default: goto yy594;
1264 }
1265 yy115:
1266 yyaccept = 4;
1267 mrk = ++cur;
1268 if ((lim - cur) < 2) CHECKEOF();;
1269 yych = *cur;
1270 switch (yych) {
1271 case '0':
1272 case '1':
1273 case '2':
1274 case '3':
1275 case '4':
1276 case '5':
1277 case '6':
1278 case '7':
1279 case '8':
1280 case '9': goto yy115;
1281 case 'D':
1282 case 'd': goto yy210;
1283 case 'F':
1284 case 'f': goto yy211;
1285 case 'L':
1286 case 'l': goto yy213;
1287 default: goto yy117;
1288 }
1289 yy117:
1290 #line 122 "src/parser_scan.re"
1291 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
1292 #line 1293 "src/parser_scan.c"
1293 yy118:
1294 ++cur;
1295 #line 136 "src/parser_scan.re"
1296 { goto comment; }
1297 #line 1298 "src/parser_scan.c"
1298 yy120:
1299 ++cur;
1300 #line 137 "src/parser_scan.re"
1301 { goto comment_sl; }
1302 #line 1303 "src/parser_scan.c"
1303 yy122:
1304 yyaccept = 4;
1305 mrk = ++cur;
1306 if ((lim - cur) < 3) CHECKEOF();;
1307 yych = *cur;
1308 switch (yych) {
1309 case '0':
1310 case '1':
1311 case '2':
1312 case '3':
1313 case '4':
1314 case '5':
1315 case '6':
1316 case '7':
1317 case '8':
1318 case '9': goto yy122;
1319 case 'D':
1320 case 'd': goto yy210;
1321 case 'E':
1322 case 'e': goto yy126;
1323 case 'F':
1324 case 'f': goto yy211;
1325 case 'L':
1326 case 'l': goto yy213;
1327 default: goto yy117;
1328 }
1329 yy124:
1330 ++cur;
1331 if ((lim - cur) < 3) CHECKEOF();;
1332 yych = *cur;
1333 yy125:
1334 switch (yych) {
1335 case '0':
1336 case '1':
1337 case '2':
1338 case '3':
1339 case '4':
1340 case '5':
1341 case '6':
1342 case '7': goto yy124;
1343 case 'L':
1344 case 'l': goto yy127;
1345 case 'U':
1346 case 'u': goto yy129;
1347 default: goto yy39;
1348 }
1349 yy126:
1350 yych = *++cur;
1351 switch (yych) {
1352 case '+':
1353 case '-': goto yy215;
1354 case '0':
1355 case '1':
1356 case '2':
1357 case '3':
1358 case '4':
1359 case '5':
1360 case '6':
1361 case '7':
1362 case '8':
1363 case '9': goto yy115;
1364 default: goto yy114;
1365 }
1366 yy127:
1367 yyaccept = 5;
1368 yych = *(mrk = ++cur);
1369 switch (yych) {
1370 case 'L':
1371 case 'l': goto yy216;
1372 case 'U':
1373 case 'u': goto yy217;
1374 default: goto yy128;
1375 }
1376 yy128:
1377 cur -= 1;
1378 #line 118 "src/parser_scan.re"
1379 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
1380 #line 1381 "src/parser_scan.c"
1381 yy129:
1382 yych = *++cur;
1383 switch (yych) {
1384 case 'L':
1385 case 'l': goto yy219;
1386 default: goto yy130;
1387 }
1388 yy130:
1389 cur -= 1;
1390 #line 117 "src/parser_scan.re"
1391 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
1392 #line 1393 "src/parser_scan.c"
1393 yy131:
1394 yych = *++cur;
1395 switch (yych) {
1396 case '0':
1397 case '1':
1398 case '2':
1399 case '3':
1400 case '4':
1401 case '5':
1402 case '6':
1403 case '7':
1404 case '8':
1405 case '9':
1406 case 'A':
1407 case 'B':
1408 case 'C':
1409 case 'D':
1410 case 'E':
1411 case 'F':
1412 case 'a':
1413 case 'b':
1414 case 'c':
1415 case 'd':
1416 case 'e':
1417 case 'f': goto yy220;
1418 default: goto yy114;
1419 }
1420 yy132:
1421 ++cur;
1422 if (lim <= cur) CHECKEOF();;
1423 yych = *cur;
1424 switch (yych) {
1425 case '-':
1426 case '.':
1427 case '/':
1428 case '0':
1429 case '1':
1430 case '2':
1431 case '3':
1432 case '4':
1433 case '5':
1434 case '6':
1435 case '7':
1436 case '8':
1437 case '9':
1438 case 'A':
1439 case 'B':
1440 case 'C':
1441 case 'D':
1442 case 'E':
1443 case 'F':
1444 case 'G':
1445 case 'H':
1446 case 'I':
1447 case 'J':
1448 case 'K':
1449 case 'L':
1450 case 'M':
1451 case 'N':
1452 case 'O':
1453 case 'P':
1454 case 'Q':
1455 case 'R':
1456 case 'S':
1457 case 'T':
1458 case 'U':
1459 case 'V':
1460 case 'W':
1461 case 'X':
1462 case 'Y':
1463 case 'Z':
1464 case '_':
1465 case 'a':
1466 case 'b':
1467 case 'c':
1468 case 'd':
1469 case 'e':
1470 case 'f':
1471 case 'g':
1472 case 'h':
1473 case 'i':
1474 case 'j':
1475 case 'k':
1476 case 'l':
1477 case 'm':
1478 case 'n':
1479 case 'o':
1480 case 'p':
1481 case 'q':
1482 case 'r':
1483 case 's':
1484 case 't':
1485 case 'u':
1486 case 'v':
1487 case 'w':
1488 case 'x':
1489 case 'y':
1490 case 'z': goto yy132;
1491 case '>': goto yy222;
1492 default: goto yy114;
1493 }
1494 yy134:
1495 ++cur;
1496 #line 166 "src/parser_scan.re"
1497 { NEWTOKEN(PSI_T_LSHIFT); goto start; }
1498 #line 1499 "src/parser_scan.c"
1499 yy136:
1500 ++cur;
1501 #line 168 "src/parser_scan.re"
1502 { NEWTOKEN(PSI_T_CMP_LE); goto start; }
1503 #line 1504 "src/parser_scan.c"
1504 yy138:
1505 ++cur;
1506 #line 151 "src/parser_scan.re"
1507 { NEWTOKEN(PSI_T_CMP_EQ); goto start; }
1508 #line 1509 "src/parser_scan.c"
1509 yy140:
1510 ++cur;
1511 #line 169 "src/parser_scan.re"
1512 { NEWTOKEN(PSI_T_CMP_GE); goto start; }
1513 #line 1514 "src/parser_scan.c"
1514 yy142:
1515 ++cur;
1516 #line 167 "src/parser_scan.re"
1517 { NEWTOKEN(PSI_T_RSHIFT); goto start; }
1518 #line 1519 "src/parser_scan.c"
1519 yy144:
1520 yyaccept = 3;
1521 yych = *(mrk = ++cur);
1522 switch (yych) {
1523 case 'R':
1524 case 'r': goto yy224;
1525 default: goto yy62;
1526 }
1527 yy145:
1528 yyaccept = 6;
1529 yych = *(mrk = ++cur);
1530 switch (yych) {
1531 case 0x00:
1532 case 0x01:
1533 case 0x02:
1534 case 0x03:
1535 case 0x04:
1536 case 0x05:
1537 case 0x06:
1538 case 0x07:
1539 case 0x08:
1540 case '\t':
1541 case '\n':
1542 case '\v':
1543 case '\f':
1544 case '\r':
1545 case 0x0E:
1546 case 0x0F:
1547 case 0x10:
1548 case 0x11:
1549 case 0x12:
1550 case 0x13:
1551 case 0x14:
1552 case 0x15:
1553 case 0x16:
1554 case 0x17:
1555 case 0x18:
1556 case 0x19:
1557 case 0x1A:
1558 case 0x1B:
1559 case 0x1C:
1560 case 0x1D:
1561 case 0x1E:
1562 case 0x1F:
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 '}':
1593 case '~':
1594 case 0x7F: goto yy146;
1595 case '\\': goto yy147;
1596 default: goto yy61;
1597 }
1598 yy146:
1599 #line 229 "src/parser_scan.re"
1600 { NEWTOKEN(PSI_T_AS); goto start; }
1601 #line 1602 "src/parser_scan.c"
1602 yy147:
1603 ++cur;
1604 if (lim <= cur) CHECKEOF();;
1605 yych = *cur;
1606 switch (yych) {
1607 case 0x00:
1608 case 0x01:
1609 case 0x02:
1610 case 0x03:
1611 case 0x04:
1612 case 0x05:
1613 case 0x06:
1614 case 0x07:
1615 case 0x08:
1616 case '\t':
1617 case '\n':
1618 case '\v':
1619 case '\f':
1620 case '\r':
1621 case 0x0E:
1622 case 0x0F:
1623 case 0x10:
1624 case 0x11:
1625 case 0x12:
1626 case 0x13:
1627 case 0x14:
1628 case 0x15:
1629 case 0x16:
1630 case 0x17:
1631 case 0x18:
1632 case 0x19:
1633 case 0x1A:
1634 case 0x1B:
1635 case 0x1C:
1636 case 0x1D:
1637 case 0x1E:
1638 case 0x1F:
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 '.':
1654 case '/':
1655 case '0':
1656 case '1':
1657 case '2':
1658 case '3':
1659 case '4':
1660 case '5':
1661 case '6':
1662 case '7':
1663 case '8':
1664 case '9':
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 '}':
1680 case '~':
1681 case 0x7F: goto yy114;
1682 default: goto yy183;
1683 }
1684 yy148:
1685 yyaccept = 3;
1686 yych = *(mrk = ++cur);
1687 switch (yych) {
1688 case 'O':
1689 case 'o': goto yy225;
1690 default: goto yy62;
1691 }
1692 yy149:
1693 yyaccept = 3;
1694 yych = *(mrk = ++cur);
1695 switch (yych) {
1696 case 'L':
1697 case 'l': goto yy226;
1698 default: goto yy62;
1699 }
1700 yy150:
1701 yyaccept = 3;
1702 yych = *(mrk = ++cur);
1703 switch (yych) {
1704 case 'U':
1705 case 'u': goto yy227;
1706 default: goto yy62;
1707 }
1708 yy151:
1709 yyaccept = 3;
1710 yych = *(mrk = ++cur);
1711 switch (yych) {
1712 case 'F':
1713 case 'f': goto yy228;
1714 default: goto yy62;
1715 }
1716 yy152:
1717 yyaccept = 3;
1718 yych = *(mrk = ++cur);
1719 switch (yych) {
1720 case 'I':
1721 case 'i': goto yy229;
1722 case 'S':
1723 case 's': goto yy230;
1724 default: goto yy62;
1725 }
1726 yy153:
1727 yyaccept = 3;
1728 yych = *(mrk = ++cur);
1729 switch (yych) {
1730 case 'D':
1731 case 'd': goto yy231;
1732 default: goto yy62;
1733 }
1734 yy154:
1735 yyaccept = 3;
1736 yych = *(mrk = ++cur);
1737 switch (yych) {
1738 case 'R':
1739 case 'r': goto yy232;
1740 default: goto yy62;
1741 }
1742 yy155:
1743 yyaccept = 3;
1744 yych = *(mrk = ++cur);
1745 switch (yych) {
1746 case 'L':
1747 case 'l': goto yy233;
1748 default: goto yy62;
1749 }
1750 yy156:
1751 yyaccept = 3;
1752 yych = *(mrk = ++cur);
1753 switch (yych) {
1754 case 'O':
1755 case 'o': goto yy234;
1756 default: goto yy62;
1757 }
1758 yy157:
1759 yyaccept = 3;
1760 yych = *(mrk = ++cur);
1761 switch (yych) {
1762 case 'E':
1763 case 'e': goto yy235;
1764 default: goto yy62;
1765 }
1766 yy158:
1767 yyaccept = 3;
1768 yych = *(mrk = ++cur);
1769 switch (yych) {
1770 case 'N':
1771 case 'n': goto yy236;
1772 default: goto yy62;
1773 }
1774 yy159:
1775 yyaccept = 7;
1776 yych = *(mrk = ++cur);
1777 switch (yych) {
1778 case 0x00:
1779 case 0x01:
1780 case 0x02:
1781 case 0x03:
1782 case 0x04:
1783 case 0x05:
1784 case 0x06:
1785 case 0x07:
1786 case 0x08:
1787 case '\t':
1788 case '\n':
1789 case '\v':
1790 case '\f':
1791 case '\r':
1792 case 0x0E:
1793 case 0x0F:
1794 case 0x10:
1795 case 0x11:
1796 case 0x12:
1797 case 0x13:
1798 case 0x14:
1799 case 0x15:
1800 case 0x16:
1801 case 0x17:
1802 case 0x18:
1803 case 0x19:
1804 case 0x1A:
1805 case 0x1B:
1806 case 0x1C:
1807 case 0x1D:
1808 case 0x1E:
1809 case 0x1F:
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 '}':
1840 case '~':
1841 case 0x7F: goto yy160;
1842 case 'D':
1843 case 'd': goto yy237;
1844 case 'N':
1845 case 'n': goto yy238;
1846 case '\\': goto yy147;
1847 default: goto yy61;
1848 }
1849 yy160:
1850 #line 199 "src/parser_scan.re"
1851 { NEWTOKEN(PSI_T_IF); goto start; }
1852 #line 1853 "src/parser_scan.c"
1853 yy161:
1854 yyaccept = 3;
1855 yych = *(mrk = ++cur);
1856 switch (yych) {
1857 case 'C':
1858 case 'c': goto yy239;
1859 case 'T':
1860 case 't': goto yy240;
1861 default: goto yy62;
1862 }
1863 yy162:
1864 ++cur;
1865 cur -= 1;
1866 #line 134 "src/parser_scan.re"
1867 { char_width = sizeof(wchar_t); }
1868 #line 1869 "src/parser_scan.c"
1869 yy164:
1870 yyaccept = 3;
1871 yych = *(mrk = ++cur);
1872 switch (yych) {
1873 case 'T':
1874 case 't': goto yy241;
1875 default: goto yy62;
1876 }
1877 yy165:
1878 yyaccept = 3;
1879 yych = *(mrk = ++cur);
1880 switch (yych) {
1881 case 'B':
1882 case 'b': goto yy243;
1883 default: goto yy62;
1884 }
1885 yy166:
1886 yyaccept = 3;
1887 yych = *(mrk = ++cur);
1888 switch (yych) {
1889 case 'X':
1890 case 'x': goto yy245;
1891 default: goto yy62;
1892 }
1893 yy167:
1894 yyaccept = 3;
1895 yych = *(mrk = ++cur);
1896 switch (yych) {
1897 case 'L':
1898 case 'l': goto yy246;
1899 default: goto yy62;
1900 }
1901 yy168:
1902 yyaccept = 3;
1903 yych = *(mrk = ++cur);
1904 switch (yych) {
1905 case 'J':
1906 case 'j': goto yy247;
1907 default: goto yy62;
1908 }
1909 yy169:
1910 yyaccept = 3;
1911 yych = *(mrk = ++cur);
1912 switch (yych) {
1913 case 'T':
1914 case 't': goto yy248;
1915 default: goto yy62;
1916 }
1917 yy170:
1918 yyaccept = 3;
1919 yych = *(mrk = ++cur);
1920 switch (yych) {
1921 case 'S':
1922 case 's': goto yy249;
1923 default: goto yy62;
1924 }
1925 yy171:
1926 yyaccept = 3;
1927 yych = *(mrk = ++cur);
1928 switch (yych) {
1929 case 'E':
1930 case 'e': goto yy250;
1931 default: goto yy62;
1932 }
1933 yy172:
1934 yyaccept = 3;
1935 yych = *(mrk = ++cur);
1936 switch (yych) {
1937 case 'T':
1938 case 't': goto yy251;
1939 default: goto yy62;
1940 }
1941 yy173:
1942 yyaccept = 3;
1943 yych = *(mrk = ++cur);
1944 switch (yych) {
1945 case 'T':
1946 case 't': goto yy252;
1947 default: goto yy62;
1948 }
1949 yy174:
1950 yyaccept = 3;
1951 yych = *(mrk = ++cur);
1952 switch (yych) {
1953 case 'A':
1954 case 'a': goto yy254;
1955 case 'R':
1956 case 'r': goto yy255;
1957 default: goto yy62;
1958 }
1959 yy175:
1960 yyaccept = 3;
1961 yych = *(mrk = ++cur);
1962 switch (yych) {
1963 case 'M':
1964 case 'm': goto yy256;
1965 default: goto yy62;
1966 }
1967 yy176:
1968 yyaccept = 3;
1969 yych = *(mrk = ++cur);
1970 switch (yych) {
1971 case '_': goto yy257;
1972 default: goto yy62;
1973 }
1974 yy177:
1975 yyaccept = 3;
1976 yych = *(mrk = ++cur);
1977 switch (yych) {
1978 case 'U':
1979 case 'u': goto yy258;
1980 default: goto yy62;
1981 }
1982 yy178:
1983 ++cur;
1984 cur -= 1;
1985 #line 133 "src/parser_scan.re"
1986 { char_width = 4; }
1987 #line 1988 "src/parser_scan.c"
1988 yy180:
1989 yyaccept = 3;
1990 yych = *(mrk = ++cur);
1991 switch (yych) {
1992 case 'D':
1993 case 'd': goto yy259;
1994 default: goto yy62;
1995 }
1996 yy181:
1997 yyaccept = 3;
1998 yych = *(mrk = ++cur);
1999 switch (yych) {
2000 case 'R':
2001 case 'r': goto yy260;
2002 default: goto yy62;
2003 }
2004 yy182:
2005 yyaccept = 3;
2006 yych = *(mrk = ++cur);
2007 switch (yych) {
2008 case 'A':
2009 case 'a': goto yy261;
2010 default: goto yy62;
2011 }
2012 yy183:
2013 yyaccept = 8;
2014 mrk = ++cur;
2015 if (lim <= cur) CHECKEOF();;
2016 yych = *cur;
2017 switch (yych) {
2018 case 0x00:
2019 case 0x01:
2020 case 0x02:
2021 case 0x03:
2022 case 0x04:
2023 case 0x05:
2024 case 0x06:
2025 case 0x07:
2026 case 0x08:
2027 case '\t':
2028 case '\n':
2029 case '\v':
2030 case '\f':
2031 case '\r':
2032 case 0x0E:
2033 case 0x0F:
2034 case 0x10:
2035 case 0x11:
2036 case 0x12:
2037 case 0x13:
2038 case 0x14:
2039 case 0x15:
2040 case 0x16:
2041 case 0x17:
2042 case 0x18:
2043 case 0x19:
2044 case 0x1A:
2045 case 0x1B:
2046 case 0x1C:
2047 case 0x1D:
2048 case 0x1E:
2049 case 0x1F:
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 '}':
2080 case '~':
2081 case 0x7F: goto yy185;
2082 case '\\': goto yy147;
2083 default: goto yy183;
2084 }
2085 yy185:
2086 #line 250 "src/parser_scan.re"
2087 { NEWTOKEN(PSI_T_NSNAME); goto start; }
2088 #line 2089 "src/parser_scan.c"
2089 yy186:
2090 yyaccept = 3;
2091 yych = *(mrk = ++cur);
2092 switch (yych) {
2093 case 'a': goto yy262;
2094 case 'e': goto yy263;
2095 case 'i': goto yy264;
2096 case 'r': goto yy265;
2097 default: goto yy62;
2098 }
2099 yy187:
2100 yyaccept = 3;
2101 yych = *(mrk = ++cur);
2102 switch (yych) {
2103 case 'O': goto yy225;
2104 case 'o': goto yy266;
2105 default: goto yy62;
2106 }
2107 yy188:
2108 yyaccept = 3;
2109 yych = *(mrk = ++cur);
2110 switch (yych) {
2111 case 'a': goto yy267;
2112 default: goto yy62;
2113 }
2114 yy189:
2115 yyaccept = 3;
2116 yych = *(mrk = ++cur);
2117 switch (yych) {
2118 case 'U':
2119 case 'u': goto yy227;
2120 case 'n': goto yy268;
2121 default: goto yy62;
2122 }
2123 yy190:
2124 yyaccept = 3;
2125 yych = *(mrk = ++cur);
2126 switch (yych) {
2127 case 'u': goto yy269;
2128 default: goto yy62;
2129 }
2130 yy191:
2131 yyaccept = 3;
2132 yych = *(mrk = ++cur);
2133 switch (yych) {
2134 case 'D':
2135 case 'd': goto yy231;
2136 case 'u': goto yy270;
2137 default: goto yy62;
2138 }
2139 yy192:
2140 yyaccept = 3;
2141 yych = *(mrk = ++cur);
2142 switch (yych) {
2143 case 'O': goto yy234;
2144 case 'o': goto yy271;
2145 default: goto yy62;
2146 }
2147 yy193:
2148 yyaccept = 3;
2149 yych = *(mrk = ++cur);
2150 switch (yych) {
2151 case 'C':
2152 case 'c': goto yy239;
2153 case 'T': goto yy240;
2154 case 'l': goto yy272;
2155 case 't': goto yy273;
2156 default: goto yy62;
2157 }
2158 yy194:
2159 yyaccept = 3;
2160 yych = *(mrk = ++cur);
2161 switch (yych) {
2162 case 'B':
2163 case 'b': goto yy243;
2164 case 'n': goto yy275;
2165 default: goto yy62;
2166 }
2167 yy195:
2168 yyaccept = 3;
2169 yych = *(mrk = ++cur);
2170 switch (yych) {
2171 case 'n': goto yy276;
2172 default: goto yy62;
2173 }
2174 yy196:
2175 yyaccept = 3;
2176 yych = *(mrk = ++cur);
2177 switch (yych) {
2178 case 'E':
2179 case 'e': goto yy250;
2180 case 'a': goto yy277;
2181 default: goto yy62;
2182 }
2183 yy197:
2184 yyaccept = 3;
2185 yych = *(mrk = ++cur);
2186 switch (yych) {
2187 case 'o': goto yy278;
2188 default: goto yy62;
2189 }
2190 yy198:
2191 yyaccept = 3;
2192 yych = *(mrk = ++cur);
2193 switch (yych) {
2194 case 'g': goto yy279;
2195 case 'z': goto yy280;
2196 default: goto yy62;
2197 }
2198 yy199:
2199 yyaccept = 3;
2200 yych = *(mrk = ++cur);
2201 switch (yych) {
2202 case 'A':
2203 case 'a': goto yy254;
2204 case 'R': goto yy255;
2205 case 'r': goto yy281;
2206 default: goto yy62;
2207 }
2208 yy200:
2209 yyaccept = 3;
2210 yych = *(mrk = ++cur);
2211 switch (yych) {
2212 case 'p': goto yy282;
2213 default: goto yy62;
2214 }
2215 yy201:
2216 ++cur;
2217 cur -= 1;
2218 #line 132 "src/parser_scan.re"
2219 { char_width = 2; }
2220 #line 2221 "src/parser_scan.c"
2221 yy203:
2222 yyaccept = 3;
2223 yych = *(mrk = ++cur);
2224 switch (yych) {
2225 case '"': goto yy283;
2226 default: goto yy62;
2227 }
2228 yy204:
2229 yyaccept = 3;
2230 yych = *(mrk = ++cur);
2231 switch (yych) {
2232 case 'D':
2233 case 'd': goto yy259;
2234 case 'i': goto yy285;
2235 case 's': goto yy286;
2236 default: goto yy62;
2237 }
2238 yy205:
2239 yyaccept = 3;
2240 yych = *(mrk = ++cur);
2241 switch (yych) {
2242 case 'i': goto yy287;
2243 case 'l': goto yy288;
2244 default: goto yy62;
2245 }
2246 yy206:
2247 ++cur;
2248 #line 153 "src/parser_scan.re"
2249 { NEWTOKEN(PSI_T_OR); goto start; }
2250 #line 2251 "src/parser_scan.c"
2251 yy208:
2252 ++cur;
2253 #line 173 "src/parser_scan.re"
2254 { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
2255 #line 2256 "src/parser_scan.c"
2256 yy210:
2257 yych = *++cur;
2258 switch (yych) {
2259 case 'D':
2260 case 'd': goto yy289;
2261 case 'F':
2262 case 'f': goto yy291;
2263 case 'L':
2264 case 'l': goto yy293;
2265 default: goto yy114;
2266 }
2267 yy211:
2268 ++cur;
2269 cur -= 1;
2270 #line 123 "src/parser_scan.re"
2271 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
2272 #line 2273 "src/parser_scan.c"
2273 yy213:
2274 ++cur;
2275 cur -= 1;
2276 #line 124 "src/parser_scan.re"
2277 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
2278 #line 2279 "src/parser_scan.c"
2279 yy215:
2280 yych = *++cur;
2281 switch (yych) {
2282 case '0':
2283 case '1':
2284 case '2':
2285 case '3':
2286 case '4':
2287 case '5':
2288 case '6':
2289 case '7':
2290 case '8':
2291 case '9': goto yy115;
2292 default: goto yy114;
2293 }
2294 yy216:
2295 yych = *++cur;
2296 switch (yych) {
2297 case 'U':
2298 case 'u': goto yy295;
2299 default: goto yy114;
2300 }
2301 yy217:
2302 ++cur;
2303 yy218:
2304 cur -= 2;
2305 #line 119 "src/parser_scan.re"
2306 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
2307 #line 2308 "src/parser_scan.c"
2308 yy219:
2309 yych = *++cur;
2310 switch (yych) {
2311 case 'L':
2312 case 'l': goto yy295;
2313 default: goto yy218;
2314 }
2315 yy220:
2316 yyaccept = 1;
2317 mrk = ++cur;
2318 if ((lim - cur) < 3) CHECKEOF();;
2319 yych = *cur;
2320 switch (yych) {
2321 case '.': goto yy297;
2322 case '0':
2323 case '1':
2324 case '2':
2325 case '3':
2326 case '4':
2327 case '5':
2328 case '6':
2329 case '7':
2330 case '8':
2331 case '9':
2332 case 'A':
2333 case 'B':
2334 case 'C':
2335 case 'D':
2336 case 'E':
2337 case 'F':
2338 case 'a':
2339 case 'b':
2340 case 'c':
2341 case 'd':
2342 case 'e':
2343 case 'f': goto yy220;
2344 case 'L':
2345 case 'l': goto yy127;
2346 case 'P':
2347 case 'p': goto yy126;
2348 case 'U':
2349 case 'u': goto yy129;
2350 default: goto yy39;
2351 }
2352 yy222:
2353 ++cur;
2354 #line 252 "src/parser_scan.re"
2355 { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; }
2356 #line 2357 "src/parser_scan.c"
2357 yy224:
2358 yyaccept = 3;
2359 yych = *(mrk = ++cur);
2360 switch (yych) {
2361 case 'A':
2362 case 'a': goto yy299;
2363 case 'V':
2364 case 'v': goto yy300;
2365 default: goto yy62;
2366 }
2367 yy225:
2368 yyaccept = 3;
2369 yych = *(mrk = ++cur);
2370 switch (yych) {
2371 case 'L':
2372 case 'l': goto yy301;
2373 default: goto yy62;
2374 }
2375 yy226:
2376 yyaccept = 3;
2377 yych = *(mrk = ++cur);
2378 switch (yych) {
2379 case 'L':
2380 case 'l': goto yy302;
2381 default: goto yy62;
2382 }
2383 yy227:
2384 yyaccept = 3;
2385 yych = *(mrk = ++cur);
2386 switch (yych) {
2387 case 'N':
2388 case 'n': goto yy303;
2389 default: goto yy62;
2390 }
2391 yy228:
2392 yyaccept = 3;
2393 yych = *(mrk = ++cur);
2394 switch (yych) {
2395 case 'I':
2396 case 'i': goto yy304;
2397 default: goto yy62;
2398 }
2399 yy229:
2400 yyaccept = 3;
2401 yych = *(mrk = ++cur);
2402 switch (yych) {
2403 case 'F':
2404 case 'f': goto yy305;
2405 default: goto yy62;
2406 }
2407 yy230:
2408 yyaccept = 3;
2409 yych = *(mrk = ++cur);
2410 switch (yych) {
2411 case 'E':
2412 case 'e': goto yy307;
2413 default: goto yy62;
2414 }
2415 yy231:
2416 yyaccept = 3;
2417 yych = *(mrk = ++cur);
2418 switch (yych) {
2419 case 'I':
2420 case 'i': goto yy309;
2421 default: goto yy62;
2422 }
2423 yy232:
2424 yyaccept = 3;
2425 yych = *(mrk = ++cur);
2426 switch (yych) {
2427 case 'O':
2428 case 'o': goto yy310;
2429 default: goto yy62;
2430 }
2431 yy233:
2432 yyaccept = 3;
2433 yych = *(mrk = ++cur);
2434 switch (yych) {
2435 case 'S':
2436 case 's': goto yy311;
2437 default: goto yy62;
2438 }
2439 yy234:
2440 yyaccept = 3;
2441 yych = *(mrk = ++cur);
2442 switch (yych) {
2443 case 'A':
2444 case 'a': goto yy312;
2445 default: goto yy62;
2446 }
2447 yy235:
2448 yyaccept = 3;
2449 yych = *(mrk = ++cur);
2450 switch (yych) {
2451 case 'E':
2452 case 'e': goto yy313;
2453 default: goto yy62;
2454 }
2455 yy236:
2456 yyaccept = 3;
2457 yych = *(mrk = ++cur);
2458 switch (yych) {
2459 case 'C':
2460 case 'c': goto yy315;
2461 default: goto yy62;
2462 }
2463 yy237:
2464 yyaccept = 3;
2465 yych = *(mrk = ++cur);
2466 switch (yych) {
2467 case 'E':
2468 case 'e': goto yy316;
2469 default: goto yy62;
2470 }
2471 yy238:
2472 yyaccept = 3;
2473 yych = *(mrk = ++cur);
2474 switch (yych) {
2475 case 'D':
2476 case 'd': goto yy317;
2477 default: goto yy62;
2478 }
2479 yy239:
2480 yyaccept = 3;
2481 yych = *(mrk = ++cur);
2482 switch (yych) {
2483 case 'L':
2484 case 'l': goto yy318;
2485 default: goto yy62;
2486 }
2487 yy240:
2488 yyaccept = 3;
2489 yych = *(mrk = ++cur);
2490 switch (yych) {
2491 case 'V':
2492 case 'v': goto yy319;
2493 default: goto yy62;
2494 }
2495 yy241:
2496 yyaccept = 9;
2497 yych = *(mrk = ++cur);
2498 switch (yych) {
2499 case 0x00:
2500 case 0x01:
2501 case 0x02:
2502 case 0x03:
2503 case 0x04:
2504 case 0x05:
2505 case 0x06:
2506 case 0x07:
2507 case 0x08:
2508 case '\t':
2509 case '\n':
2510 case '\v':
2511 case '\f':
2512 case '\r':
2513 case 0x0E:
2514 case 0x0F:
2515 case 0x10:
2516 case 0x11:
2517 case 0x12:
2518 case 0x13:
2519 case 0x14:
2520 case 0x15:
2521 case 0x16:
2522 case 0x17:
2523 case 0x18:
2524 case 0x19:
2525 case 0x1A:
2526 case 0x1B:
2527 case 0x1C:
2528 case 0x1D:
2529 case 0x1E:
2530 case 0x1F:
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 '}':
2561 case '~':
2562 case 0x7F: goto yy242;
2563 case '\\': goto yy147;
2564 default: goto yy61;
2565 }
2566 yy242:
2567 #line 224 "src/parser_scan.re"
2568 { NEWTOKEN(PSI_T_LET); goto start; }
2569 #line 2570 "src/parser_scan.c"
2570 yy243:
2571 yyaccept = 10;
2572 yych = *(mrk = ++cur);
2573 switch (yych) {
2574 case 0x00:
2575 case 0x01:
2576 case 0x02:
2577 case 0x03:
2578 case 0x04:
2579 case 0x05:
2580 case 0x06:
2581 case 0x07:
2582 case 0x08:
2583 case '\t':
2584 case '\n':
2585 case '\v':
2586 case '\f':
2587 case '\r':
2588 case 0x0E:
2589 case 0x0F:
2590 case 0x10:
2591 case 0x11:
2592 case 0x12:
2593 case 0x13:
2594 case 0x14:
2595 case 0x15:
2596 case 0x16:
2597 case 0x17:
2598 case 0x18:
2599 case 0x19:
2600 case 0x1A:
2601 case 0x1B:
2602 case 0x1C:
2603 case 0x1D:
2604 case 0x1E:
2605 case 0x1F:
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 '}':
2636 case '~':
2637 case 0x7F: goto yy244;
2638 case '\\': goto yy147;
2639 default: goto yy61;
2640 }
2641 yy244:
2642 #line 223 "src/parser_scan.re"
2643 { NEWTOKEN(PSI_T_LIB); goto start; }
2644 #line 2645 "src/parser_scan.c"
2645 yy245:
2646 yyaccept = 3;
2647 yych = *(mrk = ++cur);
2648 switch (yych) {
2649 case 'E':
2650 case 'e': goto yy320;
2651 default: goto yy62;
2652 }
2653 yy246:
2654 yyaccept = 3;
2655 yych = *(mrk = ++cur);
2656 switch (yych) {
2657 case 'L':
2658 case 'l': goto yy321;
2659 default: goto yy62;
2660 }
2661 yy247:
2662 yyaccept = 3;
2663 yych = *(mrk = ++cur);
2664 switch (yych) {
2665 case 'E':
2666 case 'e': goto yy323;
2667 case 'V':
2668 case 'v': goto yy324;
2669 default: goto yy62;
2670 }
2671 yy248:
2672 yyaccept = 3;
2673 yych = *(mrk = ++cur);
2674 switch (yych) {
2675 case 'H':
2676 case 'h': goto yy325;
2677 default: goto yy62;
2678 }
2679 yy249:
2680 yyaccept = 3;
2681 yych = *(mrk = ++cur);
2682 switch (yych) {
2683 case 'T':
2684 case 't': goto yy326;
2685 default: goto yy62;
2686 }
2687 yy250:
2688 yyaccept = 3;
2689 yych = *(mrk = ++cur);
2690 switch (yych) {
2691 case '_': goto yy327;
2692 default: goto yy62;
2693 }
2694 yy251:
2695 yyaccept = 3;
2696 yych = *(mrk = ++cur);
2697 switch (yych) {
2698 case 'U':
2699 case 'u': goto yy328;
2700 default: goto yy62;
2701 }
2702 yy252:
2703 yyaccept = 11;
2704 yych = *(mrk = ++cur);
2705 switch (yych) {
2706 case 0x00:
2707 case 0x01:
2708 case 0x02:
2709 case 0x03:
2710 case 0x04:
2711 case 0x05:
2712 case 0x06:
2713 case 0x07:
2714 case 0x08:
2715 case '\t':
2716 case '\n':
2717 case '\v':
2718 case '\f':
2719 case '\r':
2720 case 0x0E:
2721 case 0x0F:
2722 case 0x10:
2723 case 0x11:
2724 case 0x12:
2725 case 0x13:
2726 case 0x14:
2727 case 0x15:
2728 case 0x16:
2729 case 0x17:
2730 case 0x18:
2731 case 0x19:
2732 case 0x1A:
2733 case 0x1B:
2734 case 0x1C:
2735 case 0x1D:
2736 case 0x1E:
2737 case 0x1F:
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 '}':
2768 case '~':
2769 case 0x7F: goto yy253;
2770 case '\\': goto yy147;
2771 default: goto yy61;
2772 }
2773 yy253:
2774 #line 225 "src/parser_scan.re"
2775 { NEWTOKEN(PSI_T_SET); goto start; }
2776 #line 2777 "src/parser_scan.c"
2777 yy254:
2778 yyaccept = 3;
2779 yych = *(mrk = ++cur);
2780 switch (yych) {
2781 case 'T':
2782 case 't': goto yy329;
2783 default: goto yy62;
2784 }
2785 yy255:
2786 yyaccept = 3;
2787 yych = *(mrk = ++cur);
2788 switch (yych) {
2789 case 'I':
2790 case 'i': goto yy330;
2791 case 'L':
2792 case 'l': goto yy331;
2793 case 'V':
2794 case 'v': goto yy332;
2795 default: goto yy62;
2796 }
2797 yy256:
2798 yyaccept = 3;
2799 yych = *(mrk = ++cur);
2800 switch (yych) {
2801 case 'P':
2802 case 'p': goto yy333;
2803 default: goto yy62;
2804 }
2805 yy257:
2806 yyaccept = 3;
2807 yych = *(mrk = ++cur);
2808 switch (yych) {
2809 case 'A':
2810 case 'a': goto yy335;
2811 case 'B':
2812 case 'b': goto yy336;
2813 case 'F':
2814 case 'f': goto yy337;
2815 case 'I':
2816 case 'i': goto yy338;
2817 case 'O':
2818 case 'o': goto yy339;
2819 case 'S':
2820 case 's': goto yy340;
2821 default: goto yy62;
2822 }
2823 yy258:
2824 yyaccept = 3;
2825 yych = *(mrk = ++cur);
2826 switch (yych) {
2827 case 'E':
2828 case 'e': goto yy341;
2829 default: goto yy62;
2830 }
2831 yy259:
2832 yyaccept = 3;
2833 yych = *(mrk = ++cur);
2834 switch (yych) {
2835 case 'E':
2836 case 'e': goto yy343;
2837 default: goto yy62;
2838 }
2839 yy260:
2840 yyaccept = 3;
2841 yych = *(mrk = ++cur);
2842 switch (yych) {
2843 case 'N':
2844 case 'n': goto yy344;
2845 default: goto yy62;
2846 }
2847 yy261:
2848 yyaccept = 3;
2849 yych = *(mrk = ++cur);
2850 switch (yych) {
2851 case 'L':
2852 case 'l': goto yy345;
2853 default: goto yy62;
2854 }
2855 yy262:
2856 yyaccept = 3;
2857 yych = *(mrk = ++cur);
2858 switch (yych) {
2859 case 's': goto yy347;
2860 case 't': goto yy348;
2861 default: goto yy62;
2862 }
2863 yy263:
2864 yyaccept = 3;
2865 yych = *(mrk = ++cur);
2866 switch (yych) {
2867 case 'x': goto yy349;
2868 default: goto yy62;
2869 }
2870 yy264:
2871 yyaccept = 3;
2872 yych = *(mrk = ++cur);
2873 switch (yych) {
2874 case 'n': goto yy350;
2875 default: goto yy62;
2876 }
2877 yy265:
2878 yyaccept = 3;
2879 yych = *(mrk = ++cur);
2880 switch (yych) {
2881 case 'e': goto yy351;
2882 default: goto yy62;
2883 }
2884 yy266:
2885 yyaccept = 3;
2886 yych = *(mrk = ++cur);
2887 switch (yych) {
2888 case 'L': goto yy301;
2889 case 'l': goto yy352;
2890 default: goto yy62;
2891 }
2892 yy267:
2893 yyaccept = 3;
2894 yych = *(mrk = ++cur);
2895 switch (yych) {
2896 case 'r': goto yy354;
2897 default: goto yy62;
2898 }
2899 yy268:
2900 yyaccept = 3;
2901 yych = *(mrk = ++cur);
2902 switch (yych) {
2903 case 's': goto yy356;
2904 default: goto yy62;
2905 }
2906 yy269:
2907 yyaccept = 3;
2908 yych = *(mrk = ++cur);
2909 switch (yych) {
2910 case 'b': goto yy357;
2911 default: goto yy62;
2912 }
2913 yy270:
2914 yyaccept = 3;
2915 yych = *(mrk = ++cur);
2916 switch (yych) {
2917 case 'm': goto yy358;
2918 default: goto yy62;
2919 }
2920 yy271:
2921 yyaccept = 3;
2922 yych = *(mrk = ++cur);
2923 switch (yych) {
2924 case 'A': goto yy312;
2925 case 'a': goto yy360;
2926 default: goto yy62;
2927 }
2928 yy272:
2929 yyaccept = 3;
2930 yych = *(mrk = ++cur);
2931 switch (yych) {
2932 case 'i': goto yy361;
2933 default: goto yy62;
2934 }
2935 yy273:
2936 yyaccept = 12;
2937 yych = *(mrk = ++cur);
2938 switch (yych) {
2939 case 0x00:
2940 case 0x01:
2941 case 0x02:
2942 case 0x03:
2943 case 0x04:
2944 case 0x05:
2945 case 0x06:
2946 case 0x07:
2947 case 0x08:
2948 case '\t':
2949 case '\n':
2950 case '\v':
2951 case '\f':
2952 case '\r':
2953 case 0x0E:
2954 case 0x0F:
2955 case 0x10:
2956 case 0x11:
2957 case 0x12:
2958 case 0x13:
2959 case 0x14:
2960 case 0x15:
2961 case 0x16:
2962 case 0x17:
2963 case 0x18:
2964 case 0x19:
2965 case 0x1A:
2966 case 0x1B:
2967 case 0x1C:
2968 case 0x1D:
2969 case 0x1E:
2970 case 0x1F:
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 '}':
3001 case '~':
3002 case 0x7F: goto yy274;
3003 case 'V':
3004 case 'v': goto yy319;
3005 case '\\': goto yy147;
3006 default: goto yy61;
3007 }
3008 yy274:
3009 #line 193 "src/parser_scan.re"
3010 { NEWTOKEN(PSI_T_INT); goto start; }
3011 #line 3012 "src/parser_scan.c"
3012 yy275:
3013 yyaccept = 3;
3014 yych = *(mrk = ++cur);
3015 switch (yych) {
3016 case 'e': goto yy362;
3017 default: goto yy62;
3018 }
3019 yy276:
3020 yyaccept = 3;
3021 yych = *(mrk = ++cur);
3022 switch (yych) {
3023 case 'g': goto yy364;
3024 default: goto yy62;
3025 }
3026 yy277:
3027 yyaccept = 3;
3028 yych = *(mrk = ++cur);
3029 switch (yych) {
3030 case 'g': goto yy366;
3031 default: goto yy62;
3032 }
3033 yy278:
3034 yyaccept = 3;
3035 yych = *(mrk = ++cur);
3036 switch (yych) {
3037 case 'r': goto yy367;
3038 default: goto yy62;
3039 }
3040 yy279:
3041 yyaccept = 3;
3042 yych = *(mrk = ++cur);
3043 switch (yych) {
3044 case 'n': goto yy368;
3045 default: goto yy62;
3046 }
3047 yy280:
3048 yyaccept = 3;
3049 yych = *(mrk = ++cur);
3050 switch (yych) {
3051 case 'e': goto yy369;
3052 default: goto yy62;
3053 }
3054 yy281:
3055 yyaccept = 3;
3056 yych = *(mrk = ++cur);
3057 switch (yych) {
3058 case 'I':
3059 case 'i': goto yy330;
3060 case 'L':
3061 case 'l': goto yy331;
3062 case 'V':
3063 case 'v': goto yy332;
3064 case 'u': goto yy370;
3065 default: goto yy62;
3066 }
3067 yy282:
3068 yyaccept = 3;
3069 yych = *(mrk = ++cur);
3070 switch (yych) {
3071 case 'e': goto yy371;
3072 default: goto yy62;
3073 }
3074 yy283:
3075 ++cur;
3076 cur -= 1;
3077 #line 131 "src/parser_scan.re"
3078 { char_width = 1; }
3079 #line 3080 "src/parser_scan.c"
3080 yy285:
3081 yyaccept = 3;
3082 yych = *(mrk = ++cur);
3083 switch (yych) {
3084 case 'o': goto yy372;
3085 default: goto yy62;
3086 }
3087 yy286:
3088 yyaccept = 3;
3089 yych = *(mrk = ++cur);
3090 switch (yych) {
3091 case 'i': goto yy373;
3092 default: goto yy62;
3093 }
3094 yy287:
3095 yyaccept = 3;
3096 yych = *(mrk = ++cur);
3097 switch (yych) {
3098 case 'd': goto yy374;
3099 default: goto yy62;
3100 }
3101 yy288:
3102 yyaccept = 3;
3103 yych = *(mrk = ++cur);
3104 switch (yych) {
3105 case 'a': goto yy376;
3106 default: goto yy62;
3107 }
3108 yy289:
3109 ++cur;
3110 cur -= 2;
3111 #line 126 "src/parser_scan.re"
3112 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
3113 #line 3114 "src/parser_scan.c"
3114 yy291:
3115 ++cur;
3116 cur -= 2;
3117 #line 125 "src/parser_scan.re"
3118 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
3119 #line 3120 "src/parser_scan.c"
3120 yy293:
3121 ++cur;
3122 cur -= 2;
3123 #line 127 "src/parser_scan.re"
3124 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
3125 #line 3126 "src/parser_scan.c"
3126 yy295:
3127 ++cur;
3128 cur -= 3;
3129 #line 120 "src/parser_scan.re"
3130 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
3131 #line 3132 "src/parser_scan.c"
3132 yy297:
3133 ++cur;
3134 if ((lim - cur) < 3) CHECKEOF();;
3135 yych = *cur;
3136 switch (yych) {
3137 case '0':
3138 case '1':
3139 case '2':
3140 case '3':
3141 case '4':
3142 case '5':
3143 case '6':
3144 case '7':
3145 case '8':
3146 case '9':
3147 case 'A':
3148 case 'B':
3149 case 'C':
3150 case 'D':
3151 case 'E':
3152 case 'F':
3153 case 'a':
3154 case 'b':
3155 case 'c':
3156 case 'd':
3157 case 'e':
3158 case 'f': goto yy297;
3159 case 'P':
3160 case 'p': goto yy126;
3161 default: goto yy114;
3162 }
3163 yy299:
3164 yyaccept = 3;
3165 yych = *(mrk = ++cur);
3166 switch (yych) {
3167 case 'Y':
3168 case 'y': goto yy377;
3169 default: goto yy62;
3170 }
3171 yy300:
3172 yyaccept = 3;
3173 yych = *(mrk = ++cur);
3174 switch (yych) {
3175 case 'A':
3176 case 'a': goto yy379;
3177 default: goto yy62;
3178 }
3179 yy301:
3180 yyaccept = 3;
3181 yych = *(mrk = ++cur);
3182 switch (yych) {
3183 case 'V':
3184 case 'v': goto yy380;
3185 default: goto yy62;
3186 }
3187 yy302:
3188 yyaccept = 3;
3189 yych = *(mrk = ++cur);
3190 switch (yych) {
3191 case 'A':
3192 case 'a': goto yy381;
3193 case 'B':
3194 case 'b': goto yy382;
3195 case 'O':
3196 case 'o': goto yy383;
3197 default: goto yy62;
3198 }
3199 yy303:
3200 yyaccept = 3;
3201 yych = *(mrk = ++cur);
3202 switch (yych) {
3203 case 'T':
3204 case 't': goto yy384;
3205 default: goto yy62;
3206 }
3207 yy304:
3208 yyaccept = 3;
3209 yych = *(mrk = ++cur);
3210 switch (yych) {
3211 case 'N':
3212 case 'n': goto yy386;
3213 default: goto yy62;
3214 }
3215 yy305:
3216 yyaccept = 13;
3217 yych = *(mrk = ++cur);
3218 switch (yych) {
3219 case 0x00:
3220 case 0x01:
3221 case 0x02:
3222 case 0x03:
3223 case 0x04:
3224 case 0x05:
3225 case 0x06:
3226 case 0x07:
3227 case 0x08:
3228 case '\t':
3229 case '\n':
3230 case '\v':
3231 case '\f':
3232 case '\r':
3233 case 0x0E:
3234 case 0x0F:
3235 case 0x10:
3236 case 0x11:
3237 case 0x12:
3238 case 0x13:
3239 case 0x14:
3240 case 0x15:
3241 case 0x16:
3242 case 0x17:
3243 case 0x18:
3244 case 0x19:
3245 case 0x1A:
3246 case 0x1B:
3247 case 0x1C:
3248 case 0x1D:
3249 case 0x1E:
3250 case 0x1F:
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 '}':
3281 case '~':
3282 case 0x7F: goto yy306;
3283 case '\\': goto yy147;
3284 default: goto yy61;
3285 }
3286 yy306:
3287 #line 203 "src/parser_scan.re"
3288 { NEWTOKEN(PSI_T_ELIF); goto start; }
3289 #line 3290 "src/parser_scan.c"
3290 yy307:
3291 yyaccept = 14;
3292 yych = *(mrk = ++cur);
3293 switch (yych) {
3294 case 0x00:
3295 case 0x01:
3296 case 0x02:
3297 case 0x03:
3298 case 0x04:
3299 case 0x05:
3300 case 0x06:
3301 case 0x07:
3302 case 0x08:
3303 case '\t':
3304 case '\n':
3305 case '\v':
3306 case '\f':
3307 case '\r':
3308 case 0x0E:
3309 case 0x0F:
3310 case 0x10:
3311 case 0x11:
3312 case 0x12:
3313 case 0x13:
3314 case 0x14:
3315 case 0x15:
3316 case 0x16:
3317 case 0x17:
3318 case 0x18:
3319 case 0x19:
3320 case 0x1A:
3321 case 0x1B:
3322 case 0x1C:
3323 case 0x1D:
3324 case 0x1E:
3325 case 0x1F:
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 '}':
3356 case '~':
3357 case 0x7F: goto yy308;
3358 case '\\': goto yy147;
3359 default: goto yy61;
3360 }
3361 yy308:
3362 #line 202 "src/parser_scan.re"
3363 { NEWTOKEN(PSI_T_ELSE); goto start; }
3364 #line 3365 "src/parser_scan.c"
3365 yy309:
3366 yyaccept = 3;
3367 yych = *(mrk = ++cur);
3368 switch (yych) {
3369 case 'F':
3370 case 'f': goto yy387;
3371 default: goto yy62;
3372 }
3373 yy310:
3374 yyaccept = 3;
3375 yych = *(mrk = ++cur);
3376 switch (yych) {
3377 case 'R':
3378 case 'r': goto yy389;
3379 default: goto yy62;
3380 }
3381 yy311:
3382 yyaccept = 3;
3383 yych = *(mrk = ++cur);
3384 switch (yych) {
3385 case 'E':
3386 case 'e': goto yy391;
3387 default: goto yy62;
3388 }
3389 yy312:
3390 yyaccept = 3;
3391 yych = *(mrk = ++cur);
3392 switch (yych) {
3393 case 'T':
3394 case 't': goto yy393;
3395 default: goto yy62;
3396 }
3397 yy313:
3398 yyaccept = 15;
3399 yych = *(mrk = ++cur);
3400 switch (yych) {
3401 case 0x00:
3402 case 0x01:
3403 case 0x02:
3404 case 0x03:
3405 case 0x04:
3406 case 0x05:
3407 case 0x06:
3408 case 0x07:
3409 case 0x08:
3410 case '\t':
3411 case '\n':
3412 case '\v':
3413 case '\f':
3414 case '\r':
3415 case 0x0E:
3416 case 0x0F:
3417 case 0x10:
3418 case 0x11:
3419 case 0x12:
3420 case 0x13:
3421 case 0x14:
3422 case 0x15:
3423 case 0x16:
3424 case 0x17:
3425 case 0x18:
3426 case 0x19:
3427 case 0x1A:
3428 case 0x1B:
3429 case 0x1C:
3430 case 0x1D:
3431 case 0x1E:
3432 case 0x1F:
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 '}':
3463 case '~':
3464 case 0x7F: goto yy314;
3465 case '\\': goto yy147;
3466 default: goto yy61;
3467 }
3468 yy314:
3469 #line 230 "src/parser_scan.re"
3470 { NEWTOKEN(PSI_T_FREE); goto start; }
3471 #line 3472 "src/parser_scan.c"
3472 yy315:
3473 yyaccept = 3;
3474 yych = *(mrk = ++cur);
3475 switch (yych) {
3476 case 'T':
3477 case 't': goto yy394;
3478 default: goto yy62;
3479 }
3480 yy316:
3481 yyaccept = 3;
3482 yych = *(mrk = ++cur);
3483 switch (yych) {
3484 case 'F':
3485 case 'f': goto yy395;
3486 default: goto yy62;
3487 }
3488 yy317:
3489 yyaccept = 3;
3490 yych = *(mrk = ++cur);
3491 switch (yych) {
3492 case 'E':
3493 case 'e': goto yy397;
3494 default: goto yy62;
3495 }
3496 yy318:
3497 yyaccept = 3;
3498 yych = *(mrk = ++cur);
3499 switch (yych) {
3500 case 'U':
3501 case 'u': goto yy398;
3502 default: goto yy62;
3503 }
3504 yy319:
3505 yyaccept = 3;
3506 yych = *(mrk = ++cur);
3507 switch (yych) {
3508 case 'A':
3509 case 'a': goto yy399;
3510 default: goto yy62;
3511 }
3512 yy320:
3513 yyaccept = 3;
3514 yych = *(mrk = ++cur);
3515 switch (yych) {
3516 case 'D':
3517 case 'd': goto yy400;
3518 default: goto yy62;
3519 }
3520 yy321:
3521 yyaccept = 16;
3522 yych = *(mrk = ++cur);
3523 switch (yych) {
3524 case 0x00:
3525 case 0x01:
3526 case 0x02:
3527 case 0x03:
3528 case 0x04:
3529 case 0x05:
3530 case 0x06:
3531 case 0x07:
3532 case 0x08:
3533 case '\t':
3534 case '\n':
3535 case '\v':
3536 case '\f':
3537 case '\r':
3538 case 0x0E:
3539 case 0x0F:
3540 case 0x10:
3541 case 0x11:
3542 case 0x12:
3543 case 0x13:
3544 case 0x14:
3545 case 0x15:
3546 case 0x16:
3547 case 0x17:
3548 case 0x18:
3549 case 0x19:
3550 case 0x1A:
3551 case 0x1B:
3552 case 0x1C:
3553 case 0x1D:
3554 case 0x1E:
3555 case 0x1F:
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 '}':
3586 case '~':
3587 case 0x7F: goto yy322;
3588 case '\\': goto yy147;
3589 default: goto yy61;
3590 }
3591 yy322:
3592 #line 214 "src/parser_scan.re"
3593 { NEWTOKEN(PSI_T_NULL); goto start; }
3594 #line 3595 "src/parser_scan.c"
3595 yy323:
3596 yyaccept = 3;
3597 yych = *(mrk = ++cur);
3598 switch (yych) {
3599 case 'C':
3600 case 'c': goto yy402;
3601 default: goto yy62;
3602 }
3603 yy324:
3604 yyaccept = 3;
3605 yych = *(mrk = ++cur);
3606 switch (yych) {
3607 case 'A':
3608 case 'a': goto yy403;
3609 default: goto yy62;
3610 }
3611 yy325:
3612 yyaccept = 3;
3613 yych = *(mrk = ++cur);
3614 switch (yych) {
3615 case 'V':
3616 case 'v': goto yy404;
3617 default: goto yy62;
3618 }
3619 yy326:
3620 yyaccept = 3;
3621 yych = *(mrk = ++cur);
3622 switch (yych) {
3623 case '_': goto yy405;
3624 default: goto yy62;
3625 }
3626 yy327:
3627 yyaccept = 3;
3628 yych = *(mrk = ++cur);
3629 switch (yych) {
3630 case 'A':
3631 case 'a': goto yy406;
3632 default: goto yy62;
3633 }
3634 yy328:
3635 yyaccept = 3;
3636 yych = *(mrk = ++cur);
3637 switch (yych) {
3638 case 'R':
3639 case 'r': goto yy407;
3640 default: goto yy62;
3641 }
3642 yy329:
3643 yyaccept = 3;
3644 yych = *(mrk = ++cur);
3645 switch (yych) {
3646 case 'I':
3647 case 'i': goto yy408;
3648 default: goto yy62;
3649 }
3650 yy330:
3651 yyaccept = 3;
3652 yych = *(mrk = ++cur);
3653 switch (yych) {
3654 case 'N':
3655 case 'n': goto yy409;
3656 default: goto yy62;
3657 }
3658 yy331:
3659 yyaccept = 3;
3660 yych = *(mrk = ++cur);
3661 switch (yych) {
3662 case 'E':
3663 case 'e': goto yy410;
3664 default: goto yy62;
3665 }
3666 yy332:
3667 yyaccept = 3;
3668 yych = *(mrk = ++cur);
3669 switch (yych) {
3670 case 'A':
3671 case 'a': goto yy411;
3672 default: goto yy62;
3673 }
3674 yy333:
3675 yyaccept = 17;
3676 yych = *(mrk = ++cur);
3677 switch (yych) {
3678 case 0x00:
3679 case 0x01:
3680 case 0x02:
3681 case 0x03:
3682 case 0x04:
3683 case 0x05:
3684 case 0x06:
3685 case 0x07:
3686 case 0x08:
3687 case '\t':
3688 case '\n':
3689 case '\v':
3690 case '\f':
3691 case '\r':
3692 case 0x0E:
3693 case 0x0F:
3694 case 0x10:
3695 case 0x11:
3696 case 0x12:
3697 case 0x13:
3698 case 0x14:
3699 case 0x15:
3700 case 0x16:
3701 case 0x17:
3702 case 0x18:
3703 case 0x19:
3704 case 0x1A:
3705 case 0x1B:
3706 case 0x1C:
3707 case 0x1D:
3708 case 0x1E:
3709 case 0x1F:
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 '}':
3740 case '~':
3741 case 0x7F: goto yy334;
3742 case '\\': goto yy147;
3743 default: goto yy61;
3744 }
3745 yy334:
3746 #line 231 "src/parser_scan.re"
3747 { NEWTOKEN(PSI_T_TEMP); goto start; }
3748 #line 3749 "src/parser_scan.c"
3749 yy335:
3750 yyaccept = 3;
3751 yych = *(mrk = ++cur);
3752 switch (yych) {
3753 case 'R':
3754 case 'r': goto yy412;
3755 default: goto yy62;
3756 }
3757 yy336:
3758 yyaccept = 3;
3759 yych = *(mrk = ++cur);
3760 switch (yych) {
3761 case 'O':
3762 case 'o': goto yy413;
3763 default: goto yy62;
3764 }
3765 yy337:
3766 yyaccept = 3;
3767 yych = *(mrk = ++cur);
3768 switch (yych) {
3769 case 'L':
3770 case 'l': goto yy414;
3771 default: goto yy62;
3772 }
3773 yy338:
3774 yyaccept = 3;
3775 yych = *(mrk = ++cur);
3776 switch (yych) {
3777 case 'N':
3778 case 'n': goto yy415;
3779 default: goto yy62;
3780 }
3781 yy339:
3782 yyaccept = 3;
3783 yych = *(mrk = ++cur);
3784 switch (yych) {
3785 case 'B':
3786 case 'b': goto yy416;
3787 default: goto yy62;
3788 }
3789 yy340:
3790 yyaccept = 3;
3791 yych = *(mrk = ++cur);
3792 switch (yych) {
3793 case 'T':
3794 case 't': goto yy417;
3795 default: goto yy62;
3796 }
3797 yy341:
3798 yyaccept = 18;
3799 yych = *(mrk = ++cur);
3800 switch (yych) {
3801 case 0x00:
3802 case 0x01:
3803 case 0x02:
3804 case 0x03:
3805 case 0x04:
3806 case 0x05:
3807 case 0x06:
3808 case 0x07:
3809 case 0x08:
3810 case '\t':
3811 case '\n':
3812 case '\v':
3813 case '\f':
3814 case '\r':
3815 case 0x0E:
3816 case 0x0F:
3817 case 0x10:
3818 case 0x11:
3819 case 0x12:
3820 case 0x13:
3821 case 0x14:
3822 case 0x15:
3823 case 0x16:
3824 case 0x17:
3825 case 0x18:
3826 case 0x19:
3827 case 0x1A:
3828 case 0x1B:
3829 case 0x1C:
3830 case 0x1D:
3831 case 0x1E:
3832 case 0x1F:
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 '}':
3863 case '~':
3864 case 0x7F: goto yy342;
3865 case '\\': goto yy147;
3866 default: goto yy61;
3867 }
3868 yy342:
3869 #line 212 "src/parser_scan.re"
3870 { NEWTOKEN(PSI_T_TRUE); goto start; }
3871 #line 3872 "src/parser_scan.c"
3872 yy343:
3873 yyaccept = 3;
3874 yych = *(mrk = ++cur);
3875 switch (yych) {
3876 case 'F':
3877 case 'f': goto yy418;
3878 default: goto yy62;
3879 }
3880 yy344:
3881 yyaccept = 3;
3882 yych = *(mrk = ++cur);
3883 switch (yych) {
3884 case 'I':
3885 case 'i': goto yy420;
3886 default: goto yy62;
3887 }
3888 yy345:
3889 yyaccept = 19;
3890 yych = *(mrk = ++cur);
3891 switch (yych) {
3892 case 0x00:
3893 case 0x01:
3894 case 0x02:
3895 case 0x03:
3896 case 0x04:
3897 case 0x05:
3898 case 0x06:
3899 case 0x07:
3900 case 0x08:
3901 case '\t':
3902 case '\n':
3903 case '\v':
3904 case '\f':
3905 case '\r':
3906 case 0x0E:
3907 case 0x0F:
3908 case 0x10:
3909 case 0x11:
3910 case 0x12:
3911 case 0x13:
3912 case 0x14:
3913 case 0x15:
3914 case 0x16:
3915 case 0x17:
3916 case 0x18:
3917 case 0x19:
3918 case 0x1A:
3919 case 0x1B:
3920 case 0x1C:
3921 case 0x1D:
3922 case 0x1E:
3923 case 0x1F:
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 '}':
3954 case '~':
3955 case 0x7F: goto yy346;
3956 case '\\': goto yy147;
3957 default: goto yy61;
3958 }
3959 yy346:
3960 #line 240 "src/parser_scan.re"
3961 { NEWTOKEN(PSI_T_ZVAL); goto start; }
3962 #line 3963 "src/parser_scan.c"
3963 yy347:
3964 yyaccept = 3;
3965 yych = *(mrk = ++cur);
3966 switch (yych) {
3967 case 'm': goto yy421;
3968 default: goto yy62;
3969 }
3970 yy348:
3971 yyaccept = 3;
3972 yych = *(mrk = ++cur);
3973 switch (yych) {
3974 case 't': goto yy423;
3975 default: goto yy62;
3976 }
3977 yy349:
3978 yyaccept = 3;
3979 yych = *(mrk = ++cur);
3980 switch (yych) {
3981 case 't': goto yy424;
3982 default: goto yy62;
3983 }
3984 yy350:
3985 yyaccept = 3;
3986 yych = *(mrk = ++cur);
3987 switch (yych) {
3988 case 'l': goto yy272;
3989 default: goto yy62;
3990 }
3991 yy351:
3992 yyaccept = 3;
3993 yych = *(mrk = ++cur);
3994 switch (yych) {
3995 case 's': goto yy425;
3996 default: goto yy62;
3997 }
3998 yy352:
3999 yyaccept = 20;
4000 yych = *(mrk = ++cur);
4001 switch (yych) {
4002 case 0x00:
4003 case 0x01:
4004 case 0x02:
4005 case 0x03:
4006 case 0x04:
4007 case 0x05:
4008 case 0x06:
4009 case 0x07:
4010 case 0x08:
4011 case '\t':
4012 case '\n':
4013 case '\v':
4014 case '\f':
4015 case '\r':
4016 case 0x0E:
4017 case 0x0F:
4018 case 0x10:
4019 case 0x11:
4020 case 0x12:
4021 case 0x13:
4022 case 0x14:
4023 case 0x15:
4024 case 0x16:
4025 case 0x17:
4026 case 0x18:
4027 case 0x19:
4028 case 0x1A:
4029 case 0x1B:
4030 case 0x1C:
4031 case 0x1D:
4032 case 0x1E:
4033 case 0x1F:
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 '}':
4064 case '~':
4065 case 0x7F: goto yy353;
4066 case 'V':
4067 case 'v': goto yy380;
4068 case '\\': goto yy147;
4069 default: goto yy61;
4070 }
4071 yy353:
4072 #line 190 "src/parser_scan.re"
4073 { NEWTOKEN(PSI_T_BOOL); goto start; }
4074 #line 4075 "src/parser_scan.c"
4075 yy354:
4076 yyaccept = 21;
4077 yych = *(mrk = ++cur);
4078 switch (yych) {
4079 case 0x00:
4080 case 0x01:
4081 case 0x02:
4082 case 0x03:
4083 case 0x04:
4084 case 0x05:
4085 case 0x06:
4086 case 0x07:
4087 case 0x08:
4088 case '\t':
4089 case '\n':
4090 case '\v':
4091 case '\f':
4092 case '\r':
4093 case 0x0E:
4094 case 0x0F:
4095 case 0x10:
4096 case 0x11:
4097 case 0x12:
4098 case 0x13:
4099 case 0x14:
4100 case 0x15:
4101 case 0x16:
4102 case 0x17:
4103 case 0x18:
4104 case 0x19:
4105 case 0x1A:
4106 case 0x1B:
4107 case 0x1C:
4108 case 0x1D:
4109 case 0x1E:
4110 case 0x1F:
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 '}':
4141 case '~':
4142 case 0x7F: goto yy355;
4143 case '\\': goto yy147;
4144 default: goto yy61;
4145 }
4146 yy355:
4147 #line 191 "src/parser_scan.re"
4148 { NEWTOKEN(PSI_T_CHAR); goto start; }
4149 #line 4150 "src/parser_scan.c"
4150 yy356:
4151 yyaccept = 3;
4152 yych = *(mrk = ++cur);
4153 switch (yych) {
4154 case 't': goto yy426;
4155 default: goto yy62;
4156 }
4157 yy357:
4158 yyaccept = 3;
4159 yych = *(mrk = ++cur);
4160 switch (yych) {
4161 case 'l': goto yy428;
4162 default: goto yy62;
4163 }
4164 yy358:
4165 yyaccept = 22;
4166 yych = *(mrk = ++cur);
4167 switch (yych) {
4168 case 0x00:
4169 case 0x01:
4170 case 0x02:
4171 case 0x03:
4172 case 0x04:
4173 case 0x05:
4174 case 0x06:
4175 case 0x07:
4176 case 0x08:
4177 case '\t':
4178 case '\n':
4179 case '\v':
4180 case '\f':
4181 case '\r':
4182 case 0x0E:
4183 case 0x0F:
4184 case 0x10:
4185 case 0x11:
4186 case 0x12:
4187 case 0x13:
4188 case 0x14:
4189 case 0x15:
4190 case 0x16:
4191 case 0x17:
4192 case 0x18:
4193 case 0x19:
4194 case 0x1A:
4195 case 0x1B:
4196 case 0x1C:
4197 case 0x1D:
4198 case 0x1E:
4199 case 0x1F:
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 '}':
4230 case '~':
4231 case 0x7F: goto yy359;
4232 case '\\': goto yy147;
4233 default: goto yy61;
4234 }
4235 yy359:
4236 #line 187 "src/parser_scan.re"
4237 { NEWTOKEN(PSI_T_ENUM); goto start; }
4238 #line 4239 "src/parser_scan.c"
4239 yy360:
4240 yyaccept = 3;
4241 yych = *(mrk = ++cur);
4242 switch (yych) {
4243 case 'T': goto yy393;
4244 case 't': goto yy429;
4245 default: goto yy62;
4246 }
4247 yy361:
4248 yyaccept = 3;
4249 yych = *(mrk = ++cur);
4250 switch (yych) {
4251 case 'n': goto yy431;
4252 default: goto yy62;
4253 }
4254 yy362:
4255 yyaccept = 23;
4256 yych = *(mrk = ++cur);
4257 switch (yych) {
4258 case 0x00:
4259 case 0x01:
4260 case 0x02:
4261 case 0x03:
4262 case 0x04:
4263 case 0x05:
4264 case 0x06:
4265 case 0x07:
4266 case 0x08:
4267 case '\t':
4268 case '\n':
4269 case '\v':
4270 case '\f':
4271 case '\r':
4272 case 0x0E:
4273 case 0x0F:
4274 case 0x10:
4275 case 0x11:
4276 case 0x12:
4277 case 0x13:
4278 case 0x14:
4279 case 0x15:
4280 case 0x16:
4281 case 0x17:
4282 case 0x18:
4283 case 0x19:
4284 case 0x1A:
4285 case 0x1B:
4286 case 0x1C:
4287 case 0x1D:
4288 case 0x1E:
4289 case 0x1F:
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 '}':
4320 case '~':
4321 case 0x7F: goto yy363;
4322 case '\\': goto yy147;
4323 default: goto yy61;
4324 }
4325 yy363:
4326 #line 183 "src/parser_scan.re"
4327 { NEWTOKEN(PSI_T_LINE); goto start; }
4328 #line 4329 "src/parser_scan.c"
4329 yy364:
4330 yyaccept = 24;
4331 yych = *(mrk = ++cur);
4332 switch (yych) {
4333 case 0x00:
4334 case 0x01:
4335 case 0x02:
4336 case 0x03:
4337 case 0x04:
4338 case 0x05:
4339 case 0x06:
4340 case 0x07:
4341 case 0x08:
4342 case '\t':
4343 case '\n':
4344 case '\v':
4345 case '\f':
4346 case '\r':
4347 case 0x0E:
4348 case 0x0F:
4349 case 0x10:
4350 case 0x11:
4351 case 0x12:
4352 case 0x13:
4353 case 0x14:
4354 case 0x15:
4355 case 0x16:
4356 case 0x17:
4357 case 0x18:
4358 case 0x19:
4359 case 0x1A:
4360 case 0x1B:
4361 case 0x1C:
4362 case 0x1D:
4363 case 0x1E:
4364 case 0x1F:
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 '}':
4395 case '~':
4396 case 0x7F: goto yy365;
4397 case '\\': goto yy147;
4398 default: goto yy61;
4399 }
4400 yy365:
4401 #line 194 "src/parser_scan.re"
4402 { NEWTOKEN(PSI_T_LONG); goto start; }
4403 #line 4404 "src/parser_scan.c"
4404 yy366:
4405 yyaccept = 3;
4406 yych = *(mrk = ++cur);
4407 switch (yych) {
4408 case 'm': goto yy432;
4409 default: goto yy62;
4410 }
4411 yy367:
4412 yyaccept = 3;
4413 yych = *(mrk = ++cur);
4414 switch (yych) {
4415 case 't': goto yy433;
4416 default: goto yy62;
4417 }
4418 yy368:
4419 yyaccept = 3;
4420 yych = *(mrk = ++cur);
4421 switch (yych) {
4422 case 'e': goto yy435;
4423 default: goto yy62;
4424 }
4425 yy369:
4426 yyaccept = 3;
4427 yych = *(mrk = ++cur);
4428 switch (yych) {
4429 case 'o': goto yy436;
4430 default: goto yy62;
4431 }
4432 yy370:
4433 yyaccept = 3;
4434 yych = *(mrk = ++cur);
4435 switch (yych) {
4436 case 'c': goto yy437;
4437 default: goto yy62;
4438 }
4439 yy371:
4440 yyaccept = 3;
4441 yych = *(mrk = ++cur);
4442 switch (yych) {
4443 case 'd': goto yy438;
4444 default: goto yy62;
4445 }
4446 yy372:
4447 yyaccept = 3;
4448 yych = *(mrk = ++cur);
4449 switch (yych) {
4450 case 'n': goto yy439;
4451 default: goto yy62;
4452 }
4453 yy373:
4454 yyaccept = 3;
4455 yych = *(mrk = ++cur);
4456 switch (yych) {
4457 case 'g': goto yy441;
4458 default: goto yy62;
4459 }
4460 yy374:
4461 yyaccept = 25;
4462 yych = *(mrk = ++cur);
4463 switch (yych) {
4464 case 0x00:
4465 case 0x01:
4466 case 0x02:
4467 case 0x03:
4468 case 0x04:
4469 case 0x05:
4470 case 0x06:
4471 case 0x07:
4472 case 0x08:
4473 case '\t':
4474 case '\n':
4475 case '\v':
4476 case '\f':
4477 case '\r':
4478 case 0x0E:
4479 case 0x0F:
4480 case 0x10:
4481 case 0x11:
4482 case 0x12:
4483 case 0x13:
4484 case 0x14:
4485 case 0x15:
4486 case 0x16:
4487 case 0x17:
4488 case 0x18:
4489 case 0x19:
4490 case 0x1A:
4491 case 0x1B:
4492 case 0x1C:
4493 case 0x1D:
4494 case 0x1E:
4495 case 0x1F:
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 '}':
4526 case '~':
4527 case 0x7F: goto yy375;
4528 case '\\': goto yy147;
4529 default: goto yy61;
4530 }
4531 yy375:
4532 #line 189 "src/parser_scan.re"
4533 { NEWTOKEN(PSI_T_VOID); goto start; }
4534 #line 4535 "src/parser_scan.c"
4535 yy376:
4536 yyaccept = 3;
4537 yych = *(mrk = ++cur);
4538 switch (yych) {
4539 case 't': goto yy442;
4540 default: goto yy62;
4541 }
4542 yy377:
4543 yyaccept = 26;
4544 yych = *(mrk = ++cur);
4545 switch (yych) {
4546 case 0x00:
4547 case 0x01:
4548 case 0x02:
4549 case 0x03:
4550 case 0x04:
4551 case 0x05:
4552 case 0x06:
4553 case 0x07:
4554 case 0x08:
4555 case '\t':
4556 case '\n':
4557 case '\v':
4558 case '\f':
4559 case '\r':
4560 case 0x0E:
4561 case 0x0F:
4562 case 0x10:
4563 case 0x11:
4564 case 0x12:
4565 case 0x13:
4566 case 0x14:
4567 case 0x15:
4568 case 0x16:
4569 case 0x17:
4570 case 0x18:
4571 case 0x19:
4572 case 0x1A:
4573 case 0x1B:
4574 case 0x1C:
4575 case 0x1D:
4576 case 0x1E:
4577 case 0x1F:
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 '}':
4608 case '~':
4609 case 0x7F: goto yy378;
4610 case '\\': goto yy147;
4611 default: goto yy61;
4612 }
4613 yy378:
4614 #line 218 "src/parser_scan.re"
4615 { NEWTOKEN(PSI_T_ARRAY); goto start; }
4616 #line 4617 "src/parser_scan.c"
4617 yy379:
4618 yyaccept = 3;
4619 yych = *(mrk = ++cur);
4620 switch (yych) {
4621 case 'L':
4622 case 'l': goto yy443;
4623 default: goto yy62;
4624 }
4625 yy380:
4626 yyaccept = 3;
4627 yych = *(mrk = ++cur);
4628 switch (yych) {
4629 case 'A':
4630 case 'a': goto yy445;
4631 default: goto yy62;
4632 }
4633 yy381:
4634 yyaccept = 3;
4635 yych = *(mrk = ++cur);
4636 switch (yych) {
4637 case 'B':
4638 case 'b': goto yy446;
4639 default: goto yy62;
4640 }
4641 yy382:
4642 yyaccept = 3;
4643 yych = *(mrk = ++cur);
4644 switch (yych) {
4645 case 'A':
4646 case 'a': goto yy447;
4647 default: goto yy62;
4648 }
4649 yy383:
4650 yyaccept = 3;
4651 yych = *(mrk = ++cur);
4652 switch (yych) {
4653 case 'C':
4654 case 'c': goto yy448;
4655 default: goto yy62;
4656 }
4657 yy384:
4658 yyaccept = 27;
4659 yych = *(mrk = ++cur);
4660 switch (yych) {
4661 case 0x00:
4662 case 0x01:
4663 case 0x02:
4664 case 0x03:
4665 case 0x04:
4666 case 0x05:
4667 case 0x06:
4668 case 0x07:
4669 case 0x08:
4670 case '\t':
4671 case '\n':
4672 case '\v':
4673 case '\f':
4674 case '\r':
4675 case 0x0E:
4676 case 0x0F:
4677 case 0x10:
4678 case 0x11:
4679 case 0x12:
4680 case 0x13:
4681 case 0x14:
4682 case 0x15:
4683 case 0x16:
4684 case 0x17:
4685 case 0x18:
4686 case 0x19:
4687 case 0x1A:
4688 case 0x1B:
4689 case 0x1C:
4690 case 0x1D:
4691 case 0x1E:
4692 case 0x1F:
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 '}':
4723 case '~':
4724 case 0x7F: goto yy385;
4725 case '\\': goto yy147;
4726 default: goto yy61;
4727 }
4728 yy385:
4729 #line 241 "src/parser_scan.re"
4730 { NEWTOKEN(PSI_T_COUNT); goto start; }
4731 #line 4732 "src/parser_scan.c"
4732 yy386:
4733 yyaccept = 3;
4734 yych = *(mrk = ++cur);
4735 switch (yych) {
4736 case 'E':
4737 case 'e': goto yy450;
4738 default: goto yy62;
4739 }
4740 yy387:
4741 yyaccept = 28;
4742 yych = *(mrk = ++cur);
4743 switch (yych) {
4744 case 0x00:
4745 case 0x01:
4746 case 0x02:
4747 case 0x03:
4748 case 0x04:
4749 case 0x05:
4750 case 0x06:
4751 case 0x07:
4752 case 0x08:
4753 case '\t':
4754 case '\n':
4755 case '\v':
4756 case '\f':
4757 case '\r':
4758 case 0x0E:
4759 case 0x0F:
4760 case 0x10:
4761 case 0x11:
4762 case 0x12:
4763 case 0x13:
4764 case 0x14:
4765 case 0x15:
4766 case 0x16:
4767 case 0x17:
4768 case 0x18:
4769 case 0x19:
4770 case 0x1A:
4771 case 0x1B:
4772 case 0x1C:
4773 case 0x1D:
4774 case 0x1E:
4775 case 0x1F:
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 '}':
4806 case '~':
4807 case 0x7F: goto yy388;
4808 case '\\': goto yy147;
4809 default: goto yy61;
4810 }
4811 yy388:
4812 #line 204 "src/parser_scan.re"
4813 { NEWTOKEN(PSI_T_ENDIF); goto start; }
4814 #line 4815 "src/parser_scan.c"
4815 yy389:
4816 yyaccept = 29;
4817 yych = *(mrk = ++cur);
4818 switch (yych) {
4819 case 0x00:
4820 case 0x01:
4821 case 0x02:
4822 case 0x03:
4823 case 0x04:
4824 case 0x05:
4825 case 0x06:
4826 case 0x07:
4827 case 0x08:
4828 case '\t':
4829 case '\n':
4830 case '\v':
4831 case '\f':
4832 case '\r':
4833 case 0x0E:
4834 case 0x0F:
4835 case 0x10:
4836 case 0x11:
4837 case 0x12:
4838 case 0x13:
4839 case 0x14:
4840 case 0x15:
4841 case 0x16:
4842 case 0x17:
4843 case 0x18:
4844 case 0x19:
4845 case 0x1A:
4846 case 0x1B:
4847 case 0x1C:
4848 case 0x1D:
4849 case 0x1E:
4850 case 0x1F:
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 '}':
4881 case '~':
4882 case 0x7F: goto yy390;
4883 case '\\': goto yy147;
4884 default: goto yy61;
4885 }
4886 yy390:
4887 #line 209 "src/parser_scan.re"
4888 { NEWTOKEN(PSI_T_ERROR); goto start; }
4889 #line 4890 "src/parser_scan.c"
4890 yy391:
4891 yyaccept = 30;
4892 yych = *(mrk = ++cur);
4893 switch (yych) {
4894 case 0x00:
4895 case 0x01:
4896 case 0x02:
4897 case 0x03:
4898 case 0x04:
4899 case 0x05:
4900 case 0x06:
4901 case 0x07:
4902 case 0x08:
4903 case '\t':
4904 case '\n':
4905 case '\v':
4906 case '\f':
4907 case '\r':
4908 case 0x0E:
4909 case 0x0F:
4910 case 0x10:
4911 case 0x11:
4912 case 0x12:
4913 case 0x13:
4914 case 0x14:
4915 case 0x15:
4916 case 0x16:
4917 case 0x17:
4918 case 0x18:
4919 case 0x19:
4920 case 0x1A:
4921 case 0x1B:
4922 case 0x1C:
4923 case 0x1D:
4924 case 0x1E:
4925 case 0x1F:
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 '}':
4956 case '~':
4957 case 0x7F: goto yy392;
4958 case '\\': goto yy147;
4959 default: goto yy61;
4960 }
4961 yy392:
4962 #line 213 "src/parser_scan.re"
4963 { NEWTOKEN(PSI_T_FALSE); goto start; }
4964 #line 4965 "src/parser_scan.c"
4965 yy393:
4966 yyaccept = 3;
4967 yych = *(mrk = ++cur);
4968 switch (yych) {
4969 case 'V':
4970 case 'v': goto yy452;
4971 default: goto yy62;
4972 }
4973 yy394:
4974 yyaccept = 3;
4975 yych = *(mrk = ++cur);
4976 switch (yych) {
4977 case 'I':
4978 case 'i': goto yy453;
4979 default: goto yy62;
4980 }
4981 yy395:
4982 yyaccept = 31;
4983 yych = *(mrk = ++cur);
4984 switch (yych) {
4985 case 0x00:
4986 case 0x01:
4987 case 0x02:
4988 case 0x03:
4989 case 0x04:
4990 case 0x05:
4991 case 0x06:
4992 case 0x07:
4993 case 0x08:
4994 case '\t':
4995 case '\n':
4996 case '\v':
4997 case '\f':
4998 case '\r':
4999 case 0x0E:
5000 case 0x0F:
5001 case 0x10:
5002 case 0x11:
5003 case 0x12:
5004 case 0x13:
5005 case 0x14:
5006 case 0x15:
5007 case 0x16:
5008 case 0x17:
5009 case 0x18:
5010 case 0x19:
5011 case 0x1A:
5012 case 0x1B:
5013 case 0x1C:
5014 case 0x1D:
5015 case 0x1E:
5016 case 0x1F:
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 '}':
5047 case '~':
5048 case 0x7F: goto yy396;
5049 case '\\': goto yy147;
5050 default: goto yy61;
5051 }
5052 yy396:
5053 #line 200 "src/parser_scan.re"
5054 { NEWTOKEN(PSI_T_IFDEF); goto start; }
5055 #line 5056 "src/parser_scan.c"
5056 yy397:
5057 yyaccept = 3;
5058 yych = *(mrk = ++cur);
5059 switch (yych) {
5060 case 'F':
5061 case 'f': goto yy454;
5062 default: goto yy62;
5063 }
5064 yy398:
5065 yyaccept = 3;
5066 yych = *(mrk = ++cur);
5067 switch (yych) {
5068 case 'D':
5069 case 'd': goto yy456;
5070 default: goto yy62;
5071 }
5072 yy399:
5073 yyaccept = 3;
5074 yych = *(mrk = ++cur);
5075 switch (yych) {
5076 case 'L':
5077 case 'l': goto yy457;
5078 default: goto yy62;
5079 }
5080 yy400:
5081 yyaccept = 32;
5082 yych = *(mrk = ++cur);
5083 switch (yych) {
5084 case 0x00:
5085 case 0x01:
5086 case 0x02:
5087 case 0x03:
5088 case 0x04:
5089 case 0x05:
5090 case 0x06:
5091 case 0x07:
5092 case 0x08:
5093 case '\t':
5094 case '\n':
5095 case '\v':
5096 case '\f':
5097 case '\r':
5098 case 0x0E:
5099 case 0x0F:
5100 case 0x10:
5101 case 0x11:
5102 case 0x12:
5103 case 0x13:
5104 case 0x14:
5105 case 0x15:
5106 case 0x16:
5107 case 0x17:
5108 case 0x18:
5109 case 0x19:
5110 case 0x1A:
5111 case 0x1B:
5112 case 0x1C:
5113 case 0x1D:
5114 case 0x1E:
5115 case 0x1F:
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 '}':
5146 case '~':
5147 case 0x7F: goto yy401;
5148 case '\\': goto yy147;
5149 default: goto yy61;
5150 }
5151 yy401:
5152 #line 215 "src/parser_scan.re"
5153 { NEWTOKEN(PSI_T_MIXED); goto start; }
5154 #line 5155 "src/parser_scan.c"
5155 yy402:
5156 yyaccept = 3;
5157 yych = *(mrk = ++cur);
5158 switch (yych) {
5159 case 'T':
5160 case 't': goto yy459;
5161 default: goto yy62;
5162 }
5163 yy403:
5164 yyaccept = 3;
5165 yych = *(mrk = ++cur);
5166 switch (yych) {
5167 case 'L':
5168 case 'l': goto yy461;
5169 default: goto yy62;
5170 }
5171 yy404:
5172 yyaccept = 3;
5173 yych = *(mrk = ++cur);
5174 switch (yych) {
5175 case 'A':
5176 case 'a': goto yy463;
5177 default: goto yy62;
5178 }
5179 yy405:
5180 yyaccept = 3;
5181 yych = *(mrk = ++cur);
5182 switch (yych) {
5183 case 'A':
5184 case 'a': goto yy464;
5185 default: goto yy62;
5186 }
5187 yy406:
5188 yyaccept = 3;
5189 yych = *(mrk = ++cur);
5190 switch (yych) {
5191 case 'S':
5192 case 's': goto yy465;
5193 default: goto yy62;
5194 }
5195 yy407:
5196 yyaccept = 3;
5197 yych = *(mrk = ++cur);
5198 switch (yych) {
5199 case 'N':
5200 case 'n': goto yy466;
5201 default: goto yy62;
5202 }
5203 yy408:
5204 yyaccept = 3;
5205 yych = *(mrk = ++cur);
5206 switch (yych) {
5207 case 'C':
5208 case 'c': goto yy468;
5209 default: goto yy62;
5210 }
5211 yy409:
5212 yyaccept = 3;
5213 yych = *(mrk = ++cur);
5214 switch (yych) {
5215 case 'G':
5216 case 'g': goto yy470;
5217 default: goto yy62;
5218 }
5219 yy410:
5220 yyaccept = 3;
5221 yych = *(mrk = ++cur);
5222 switch (yych) {
5223 case 'N':
5224 case 'n': goto yy472;
5225 default: goto yy62;
5226 }
5227 yy411:
5228 yyaccept = 3;
5229 yych = *(mrk = ++cur);
5230 switch (yych) {
5231 case 'L':
5232 case 'l': goto yy474;
5233 default: goto yy62;
5234 }
5235 yy412:
5236 yyaccept = 3;
5237 yych = *(mrk = ++cur);
5238 switch (yych) {
5239 case 'R':
5240 case 'r': goto yy476;
5241 default: goto yy62;
5242 }
5243 yy413:
5244 yyaccept = 3;
5245 yych = *(mrk = ++cur);
5246 switch (yych) {
5247 case 'O':
5248 case 'o': goto yy477;
5249 default: goto yy62;
5250 }
5251 yy414:
5252 yyaccept = 3;
5253 yych = *(mrk = ++cur);
5254 switch (yych) {
5255 case 'O':
5256 case 'o': goto yy478;
5257 default: goto yy62;
5258 }
5259 yy415:
5260 yyaccept = 3;
5261 yych = *(mrk = ++cur);
5262 switch (yych) {
5263 case 'T':
5264 case 't': goto yy479;
5265 default: goto yy62;
5266 }
5267 yy416:
5268 yyaccept = 3;
5269 yych = *(mrk = ++cur);
5270 switch (yych) {
5271 case 'J':
5272 case 'j': goto yy481;
5273 default: goto yy62;
5274 }
5275 yy417:
5276 yyaccept = 3;
5277 yych = *(mrk = ++cur);
5278 switch (yych) {
5279 case 'R':
5280 case 'r': goto yy482;
5281 default: goto yy62;
5282 }
5283 yy418:
5284 yyaccept = 33;
5285 yych = *(mrk = ++cur);
5286 switch (yych) {
5287 case 0x00:
5288 case 0x01:
5289 case 0x02:
5290 case 0x03:
5291 case 0x04:
5292 case 0x05:
5293 case 0x06:
5294 case 0x07:
5295 case 0x08:
5296 case '\t':
5297 case '\n':
5298 case '\v':
5299 case '\f':
5300 case '\r':
5301 case 0x0E:
5302 case 0x0F:
5303 case 0x10:
5304 case 0x11:
5305 case 0x12:
5306 case 0x13:
5307 case 0x14:
5308 case 0x15:
5309 case 0x16:
5310 case 0x17:
5311 case 0x18:
5312 case 0x19:
5313 case 0x1A:
5314 case 0x1B:
5315 case 0x1C:
5316 case 0x1D:
5317 case 0x1E:
5318 case 0x1F:
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 '}':
5349 case '~':
5350 case 0x7F: goto yy419;
5351 case '\\': goto yy147;
5352 default: goto yy61;
5353 }
5354 yy419:
5355 #line 207 "src/parser_scan.re"
5356 { NEWTOKEN(PSI_T_UNDEF); goto start; }
5357 #line 5358 "src/parser_scan.c"
5358 yy420:
5359 yyaccept = 3;
5360 yych = *(mrk = ++cur);
5361 switch (yych) {
5362 case 'N':
5363 case 'n': goto yy483;
5364 default: goto yy62;
5365 }
5366 yy421:
5367 yyaccept = 34;
5368 yych = *(mrk = ++cur);
5369 switch (yych) {
5370 case 0x00:
5371 case 0x01:
5372 case 0x02:
5373 case 0x03:
5374 case 0x04:
5375 case 0x05:
5376 case 0x06:
5377 case 0x07:
5378 case 0x08:
5379 case '\t':
5380 case '\n':
5381 case '\v':
5382 case '\f':
5383 case '\r':
5384 case 0x0E:
5385 case 0x0F:
5386 case 0x10:
5387 case 0x11:
5388 case 0x12:
5389 case 0x13:
5390 case 0x14:
5391 case 0x15:
5392 case 0x16:
5393 case 0x17:
5394 case 0x18:
5395 case 0x19:
5396 case 0x1A:
5397 case 0x1B:
5398 case 0x1C:
5399 case 0x1D:
5400 case 0x1E:
5401 case 0x1F:
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 '}':
5432 case '~':
5433 case 0x7F: goto yy422;
5434 case '\\': goto yy147;
5435 case '_': goto yy484;
5436 default: goto yy61;
5437 }
5438 yy422:
5439 #line 180 "src/parser_scan.re"
5440 { NEWTOKEN(PSI_T_CPP_ASM); goto start; }
5441 #line 5442 "src/parser_scan.c"
5442 yy423:
5443 yyaccept = 3;
5444 yych = *(mrk = ++cur);
5445 switch (yych) {
5446 case 'r': goto yy485;
5447 default: goto yy62;
5448 }
5449 yy424:
5450 yyaccept = 3;
5451 yych = *(mrk = ++cur);
5452 switch (yych) {
5453 case 'e': goto yy486;
5454 default: goto yy62;
5455 }
5456 yy425:
5457 yyaccept = 3;
5458 yych = *(mrk = ++cur);
5459 switch (yych) {
5460 case 't': goto yy487;
5461 default: goto yy62;
5462 }
5463 yy426:
5464 yyaccept = 35;
5465 yych = *(mrk = ++cur);
5466 switch (yych) {
5467 case 0x00:
5468 case 0x01:
5469 case 0x02:
5470 case 0x03:
5471 case 0x04:
5472 case 0x05:
5473 case 0x06:
5474 case 0x07:
5475 case 0x08:
5476 case '\t':
5477 case '\n':
5478 case '\v':
5479 case '\f':
5480 case '\r':
5481 case 0x0E:
5482 case 0x0F:
5483 case 0x10:
5484 case 0x11:
5485 case 0x12:
5486 case 0x13:
5487 case 0x14:
5488 case 0x15:
5489 case 0x16:
5490 case 0x17:
5491 case 0x18:
5492 case 0x19:
5493 case 0x1A:
5494 case 0x1B:
5495 case 0x1C:
5496 case 0x1D:
5497 case 0x1E:
5498 case 0x1F:
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 '}':
5529 case '~':
5530 case 0x7F: goto yy427;
5531 case '\\': goto yy147;
5532 default: goto yy61;
5533 }
5534 yy427:
5535 #line 188 "src/parser_scan.re"
5536 { NEWTOKEN(PSI_T_CONST); goto start; }
5537 #line 5538 "src/parser_scan.c"
5538 yy428:
5539 yyaccept = 3;
5540 yych = *(mrk = ++cur);
5541 switch (yych) {
5542 case 'e': goto yy488;
5543 default: goto yy62;
5544 }
5545 yy429:
5546 yyaccept = 36;
5547 yych = *(mrk = ++cur);
5548 switch (yych) {
5549 case 0x00:
5550 case 0x01:
5551 case 0x02:
5552 case 0x03:
5553 case 0x04:
5554 case 0x05:
5555 case 0x06:
5556 case 0x07:
5557 case 0x08:
5558 case '\t':
5559 case '\n':
5560 case '\v':
5561 case '\f':
5562 case '\r':
5563 case 0x0E:
5564 case 0x0F:
5565 case 0x10:
5566 case 0x11:
5567 case 0x12:
5568 case 0x13:
5569 case 0x14:
5570 case 0x15:
5571 case 0x16:
5572 case 0x17:
5573 case 0x18:
5574 case 0x19:
5575 case 0x1A:
5576 case 0x1B:
5577 case 0x1C:
5578 case 0x1D:
5579 case 0x1E:
5580 case 0x1F:
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 '}':
5611 case '~':
5612 case 0x7F: goto yy430;
5613 case 'V':
5614 case 'v': goto yy452;
5615 case '\\': goto yy147;
5616 default: goto yy61;
5617 }
5618 yy430:
5619 #line 195 "src/parser_scan.re"
5620 { NEWTOKEN(PSI_T_FLOAT); goto start; }
5621 #line 5622 "src/parser_scan.c"
5622 yy431:
5623 yyaccept = 3;
5624 yych = *(mrk = ++cur);
5625 switch (yych) {
5626 case 'e': goto yy490;
5627 default: goto yy62;
5628 }
5629 yy432:
5630 yyaccept = 3;
5631 yych = *(mrk = ++cur);
5632 switch (yych) {
5633 case 'a': goto yy492;
5634 default: goto yy62;
5635 }
5636 yy433:
5637 yyaccept = 37;
5638 yych = *(mrk = ++cur);
5639 switch (yych) {
5640 case 0x00:
5641 case 0x01:
5642 case 0x02:
5643 case 0x03:
5644 case 0x04:
5645 case 0x05:
5646 case 0x06:
5647 case 0x07:
5648 case 0x08:
5649 case '\t':
5650 case '\n':
5651 case '\v':
5652 case '\f':
5653 case '\r':
5654 case 0x0E:
5655 case 0x0F:
5656 case 0x10:
5657 case 0x11:
5658 case 0x12:
5659 case 0x13:
5660 case 0x14:
5661 case 0x15:
5662 case 0x16:
5663 case 0x17:
5664 case 0x18:
5665 case 0x19:
5666 case 0x1A:
5667 case 0x1B:
5668 case 0x1C:
5669 case 0x1D:
5670 case 0x1E:
5671 case 0x1F:
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 '}':
5702 case '~':
5703 case 0x7F: goto yy434;
5704 case '\\': goto yy147;
5705 default: goto yy61;
5706 }
5707 yy434:
5708 #line 192 "src/parser_scan.re"
5709 { NEWTOKEN(PSI_T_SHORT); goto start; }
5710 #line 5711 "src/parser_scan.c"
5711 yy435:
5712 yyaccept = 3;
5713 yych = *(mrk = ++cur);
5714 switch (yych) {
5715 case 'd': goto yy494;
5716 default: goto yy62;
5717 }
5718 yy436:
5719 yyaccept = 3;
5720 yych = *(mrk = ++cur);
5721 switch (yych) {
5722 case 'f': goto yy496;
5723 default: goto yy62;
5724 }
5725 yy437:
5726 yyaccept = 3;
5727 yych = *(mrk = ++cur);
5728 switch (yych) {
5729 case 't': goto yy498;
5730 default: goto yy62;
5731 }
5732 yy438:
5733 yyaccept = 3;
5734 yych = *(mrk = ++cur);
5735 switch (yych) {
5736 case 'e': goto yy500;
5737 default: goto yy62;
5738 }
5739 yy439:
5740 yyaccept = 38;
5741 yych = *(mrk = ++cur);
5742 switch (yych) {
5743 case 0x00:
5744 case 0x01:
5745 case 0x02:
5746 case 0x03:
5747 case 0x04:
5748 case 0x05:
5749 case 0x06:
5750 case 0x07:
5751 case 0x08:
5752 case '\t':
5753 case '\n':
5754 case '\v':
5755 case '\f':
5756 case '\r':
5757 case 0x0E:
5758 case 0x0F:
5759 case 0x10:
5760 case 0x11:
5761 case 0x12:
5762 case 0x13:
5763 case 0x14:
5764 case 0x15:
5765 case 0x16:
5766 case 0x17:
5767 case 0x18:
5768 case 0x19:
5769 case 0x1A:
5770 case 0x1B:
5771 case 0x1C:
5772 case 0x1D:
5773 case 0x1E:
5774 case 0x1F:
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 '}':
5805 case '~':
5806 case 0x7F: goto yy440;
5807 case '\\': goto yy147;
5808 default: goto yy61;
5809 }
5810 yy440:
5811 #line 186 "src/parser_scan.re"
5812 { NEWTOKEN(PSI_T_UNION); goto start; }
5813 #line 5814 "src/parser_scan.c"
5814 yy441:
5815 yyaccept = 3;
5816 yych = *(mrk = ++cur);
5817 switch (yych) {
5818 case 'n': goto yy501;
5819 default: goto yy62;
5820 }
5821 yy442:
5822 yyaccept = 3;
5823 yych = *(mrk = ++cur);
5824 switch (yych) {
5825 case 'i': goto yy502;
5826 default: goto yy62;
5827 }
5828 yy443:
5829 yyaccept = 39;
5830 yych = *(mrk = ++cur);
5831 switch (yych) {
5832 case 0x00:
5833 case 0x01:
5834 case 0x02:
5835 case 0x03:
5836 case 0x04:
5837 case 0x05:
5838 case 0x06:
5839 case 0x07:
5840 case 0x08:
5841 case '\t':
5842 case '\n':
5843 case '\v':
5844 case '\f':
5845 case '\r':
5846 case 0x0E:
5847 case 0x0F:
5848 case 0x10:
5849 case 0x11:
5850 case 0x12:
5851 case 0x13:
5852 case 0x14:
5853 case 0x15:
5854 case 0x16:
5855 case 0x17:
5856 case 0x18:
5857 case 0x19:
5858 case 0x1A:
5859 case 0x1B:
5860 case 0x1C:
5861 case 0x1D:
5862 case 0x1E:
5863 case 0x1F:
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 '}':
5894 case '~':
5895 case 0x7F: goto yy444;
5896 case '\\': goto yy147;
5897 default: goto yy61;
5898 }
5899 yy444:
5900 #line 238 "src/parser_scan.re"
5901 { NEWTOKEN(PSI_T_ARRVAL); goto start; }
5902 #line 5903 "src/parser_scan.c"
5903 yy445:
5904 yyaccept = 3;
5905 yych = *(mrk = ++cur);
5906 switch (yych) {
5907 case 'L':
5908 case 'l': goto yy503;
5909 default: goto yy62;
5910 }
5911 yy446:
5912 yyaccept = 3;
5913 yych = *(mrk = ++cur);
5914 switch (yych) {
5915 case 'L':
5916 case 'l': goto yy505;
5917 default: goto yy62;
5918 }
5919 yy447:
5920 yyaccept = 3;
5921 yych = *(mrk = ++cur);
5922 switch (yych) {
5923 case 'C':
5924 case 'c': goto yy506;
5925 default: goto yy62;
5926 }
5927 yy448:
5928 yyaccept = 40;
5929 yych = *(mrk = ++cur);
5930 switch (yych) {
5931 case 0x00:
5932 case 0x01:
5933 case 0x02:
5934 case 0x03:
5935 case 0x04:
5936 case 0x05:
5937 case 0x06:
5938 case 0x07:
5939 case 0x08:
5940 case '\t':
5941 case '\n':
5942 case '\v':
5943 case '\f':
5944 case '\r':
5945 case 0x0E:
5946 case 0x0F:
5947 case 0x10:
5948 case 0x11:
5949 case 0x12:
5950 case 0x13:
5951 case 0x14:
5952 case 0x15:
5953 case 0x16:
5954 case 0x17:
5955 case 0x18:
5956 case 0x19:
5957 case 0x1A:
5958 case 0x1B:
5959 case 0x1C:
5960 case 0x1D:
5961 case 0x1E:
5962 case 0x1F:
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 '}':
5993 case '~':
5994 case 0x7F: goto yy449;
5995 case '\\': goto yy147;
5996 default: goto yy61;
5997 }
5998 yy449:
5999 #line 242 "src/parser_scan.re"
6000 { NEWTOKEN(PSI_T_CALLOC); goto start; }
6001 #line 6002 "src/parser_scan.c"
6002 yy450:
6003 yyaccept = 41;
6004 yych = *(mrk = ++cur);
6005 switch (yych) {
6006 case 0x00:
6007 case 0x01:
6008 case 0x02:
6009 case 0x03:
6010 case 0x04:
6011 case 0x05:
6012 case 0x06:
6013 case 0x07:
6014 case 0x08:
6015 case '\t':
6016 case '\n':
6017 case '\v':
6018 case '\f':
6019 case '\r':
6020 case 0x0E:
6021 case 0x0F:
6022 case 0x10:
6023 case 0x11:
6024 case 0x12:
6025 case 0x13:
6026 case 0x14:
6027 case 0x15:
6028 case 0x16:
6029 case 0x17:
6030 case 0x18:
6031 case 0x19:
6032 case 0x1A:
6033 case 0x1B:
6034 case 0x1C:
6035 case 0x1D:
6036 case 0x1E:
6037 case 0x1F:
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 '}':
6068 case '~':
6069 case 0x7F: goto yy451;
6070 case 'D':
6071 case 'd': goto yy507;
6072 case '\\': goto yy147;
6073 default: goto yy61;
6074 }
6075 yy451:
6076 #line 205 "src/parser_scan.re"
6077 { NEWTOKEN(PSI_T_DEFINE); goto start; }
6078 #line 6079 "src/parser_scan.c"
6079 yy452:
6080 yyaccept = 3;
6081 yych = *(mrk = ++cur);
6082 switch (yych) {
6083 case 'A':
6084 case 'a': goto yy509;
6085 default: goto yy62;
6086 }
6087 yy453:
6088 yyaccept = 3;
6089 yych = *(mrk = ++cur);
6090 switch (yych) {
6091 case 'O':
6092 case 'o': goto yy510;
6093 default: goto yy62;
6094 }
6095 yy454:
6096 yyaccept = 42;
6097 yych = *(mrk = ++cur);
6098 switch (yych) {
6099 case 0x00:
6100 case 0x01:
6101 case 0x02:
6102 case 0x03:
6103 case 0x04:
6104 case 0x05:
6105 case 0x06:
6106 case 0x07:
6107 case 0x08:
6108 case '\t':
6109 case '\n':
6110 case '\v':
6111 case '\f':
6112 case '\r':
6113 case 0x0E:
6114 case 0x0F:
6115 case 0x10:
6116 case 0x11:
6117 case 0x12:
6118 case 0x13:
6119 case 0x14:
6120 case 0x15:
6121 case 0x16:
6122 case 0x17:
6123 case 0x18:
6124 case 0x19:
6125 case 0x1A:
6126 case 0x1B:
6127 case 0x1C:
6128 case 0x1D:
6129 case 0x1E:
6130 case 0x1F:
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 '}':
6161 case '~':
6162 case 0x7F: goto yy455;
6163 case '\\': goto yy147;
6164 default: goto yy61;
6165 }
6166 yy455:
6167 #line 201 "src/parser_scan.re"
6168 { NEWTOKEN(PSI_T_IFNDEF); goto start; }
6169 #line 6170 "src/parser_scan.c"
6170 yy456:
6171 yyaccept = 3;
6172 yych = *(mrk = ++cur);
6173 switch (yych) {
6174 case 'E':
6175 case 'e': goto yy511;
6176 default: goto yy62;
6177 }
6178 yy457:
6179 yyaccept = 43;
6180 yych = *(mrk = ++cur);
6181 switch (yych) {
6182 case 0x00:
6183 case 0x01:
6184 case 0x02:
6185 case 0x03:
6186 case 0x04:
6187 case 0x05:
6188 case 0x06:
6189 case 0x07:
6190 case 0x08:
6191 case '\t':
6192 case '\n':
6193 case '\v':
6194 case '\f':
6195 case '\r':
6196 case 0x0E:
6197 case 0x0F:
6198 case 0x10:
6199 case 0x11:
6200 case 0x12:
6201 case 0x13:
6202 case 0x14:
6203 case 0x15:
6204 case 0x16:
6205 case 0x17:
6206 case 0x18:
6207 case 0x19:
6208 case 0x1A:
6209 case 0x1B:
6210 case 0x1C:
6211 case 0x1D:
6212 case 0x1E:
6213 case 0x1F:
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 '}':
6244 case '~':
6245 case 0x7F: goto yy458;
6246 case '\\': goto yy147;
6247 default: goto yy61;
6248 }
6249 yy458:
6250 #line 235 "src/parser_scan.re"
6251 { NEWTOKEN(PSI_T_INTVAL); goto start; }
6252 #line 6253 "src/parser_scan.c"
6253 yy459:
6254 yyaccept = 44;
6255 yych = *(mrk = ++cur);
6256 switch (yych) {
6257 case 0x00:
6258 case 0x01:
6259 case 0x02:
6260 case 0x03:
6261 case 0x04:
6262 case 0x05:
6263 case 0x06:
6264 case 0x07:
6265 case 0x08:
6266 case '\t':
6267 case '\n':
6268 case '\v':
6269 case '\f':
6270 case '\r':
6271 case 0x0E:
6272 case 0x0F:
6273 case 0x10:
6274 case 0x11:
6275 case 0x12:
6276 case 0x13:
6277 case 0x14:
6278 case 0x15:
6279 case 0x16:
6280 case 0x17:
6281 case 0x18:
6282 case 0x19:
6283 case 0x1A:
6284 case 0x1B:
6285 case 0x1C:
6286 case 0x1D:
6287 case 0x1E:
6288 case 0x1F:
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 '}':
6319 case '~':
6320 case 0x7F: goto yy460;
6321 case '\\': goto yy147;
6322 default: goto yy61;
6323 }
6324 yy460:
6325 #line 219 "src/parser_scan.re"
6326 { NEWTOKEN(PSI_T_OBJECT); goto start; }
6327 #line 6328 "src/parser_scan.c"
6328 yy461:
6329 yyaccept = 45;
6330 yych = *(mrk = ++cur);
6331 switch (yych) {
6332 case 0x00:
6333 case 0x01:
6334 case 0x02:
6335 case 0x03:
6336 case 0x04:
6337 case 0x05:
6338 case 0x06:
6339 case 0x07:
6340 case 0x08:
6341 case '\t':
6342 case '\n':
6343 case '\v':
6344 case '\f':
6345 case '\r':
6346 case 0x0E:
6347 case 0x0F:
6348 case 0x10:
6349 case 0x11:
6350 case 0x12:
6351 case 0x13:
6352 case 0x14:
6353 case 0x15:
6354 case 0x16:
6355 case 0x17:
6356 case 0x18:
6357 case 0x19:
6358 case 0x1A:
6359 case 0x1B:
6360 case 0x1C:
6361 case 0x1D:
6362 case 0x1E:
6363 case 0x1F:
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 '}':
6394 case '~':
6395 case 0x7F: goto yy462;
6396 case '\\': goto yy147;
6397 default: goto yy61;
6398 }
6399 yy462:
6400 #line 239 "src/parser_scan.re"
6401 { NEWTOKEN(PSI_T_OBJVAL); goto start; }
6402 #line 6403 "src/parser_scan.c"
6403 yy463:
6404 yyaccept = 3;
6405 yych = *(mrk = ++cur);
6406 switch (yych) {
6407 case 'L':
6408 case 'l': goto yy513;
6409 default: goto yy62;
6410 }
6411 yy464:
6412 yyaccept = 3;
6413 yych = *(mrk = ++cur);
6414 switch (yych) {
6415 case 'S':
6416 case 's': goto yy515;
6417 default: goto yy62;
6418 }
6419 yy465:
6420 yyaccept = 3;
6421 yych = *(mrk = ++cur);
6422 switch (yych) {
6423 case 'S':
6424 case 's': goto yy516;
6425 default: goto yy62;
6426 }
6427 yy466:
6428 yyaccept = 46;
6429 yych = *(mrk = ++cur);
6430 switch (yych) {
6431 case 0x00:
6432 case 0x01:
6433 case 0x02:
6434 case 0x03:
6435 case 0x04:
6436 case 0x05:
6437 case 0x06:
6438 case 0x07:
6439 case 0x08:
6440 case '\t':
6441 case '\n':
6442 case '\v':
6443 case '\f':
6444 case '\r':
6445 case 0x0E:
6446 case 0x0F:
6447 case 0x10:
6448 case 0x11:
6449 case 0x12:
6450 case 0x13:
6451 case 0x14:
6452 case 0x15:
6453 case 0x16:
6454 case 0x17:
6455 case 0x18:
6456 case 0x19:
6457 case 0x1A:
6458 case 0x1B:
6459 case 0x1C:
6460 case 0x1D:
6461 case 0x1E:
6462 case 0x1F:
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 '}':
6493 case '~':
6494 case 0x7F: goto yy467;
6495 case '\\': goto yy147;
6496 default: goto yy61;
6497 }
6498 yy467:
6499 #line 228 "src/parser_scan.re"
6500 { NEWTOKEN(PSI_T_RETURN); goto start; }
6501 #line 6502 "src/parser_scan.c"
6502 yy468:
6503 yyaccept = 47;
6504 yych = *(mrk = ++cur);
6505 switch (yych) {
6506 case 0x00:
6507 case 0x01:
6508 case 0x02:
6509 case 0x03:
6510 case 0x04:
6511 case 0x05:
6512 case 0x06:
6513 case 0x07:
6514 case 0x08:
6515 case '\t':
6516 case '\n':
6517 case '\v':
6518 case '\f':
6519 case '\r':
6520 case 0x0E:
6521 case 0x0F:
6522 case 0x10:
6523 case 0x11:
6524 case 0x12:
6525 case 0x13:
6526 case 0x14:
6527 case 0x15:
6528 case 0x16:
6529 case 0x17:
6530 case 0x18:
6531 case 0x19:
6532 case 0x1A:
6533 case 0x1B:
6534 case 0x1C:
6535 case 0x1D:
6536 case 0x1E:
6537 case 0x1F:
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 '}':
6568 case '~':
6569 case 0x7F: goto yy469;
6570 case '\\': goto yy147;
6571 default: goto yy61;
6572 }
6573 yy469:
6574 #line 221 "src/parser_scan.re"
6575 { NEWTOKEN(PSI_T_STATIC); goto start; }
6576 #line 6577 "src/parser_scan.c"
6577 yy470:
6578 yyaccept = 48;
6579 yych = *(mrk = ++cur);
6580 switch (yych) {
6581 case 0x00:
6582 case 0x01:
6583 case 0x02:
6584 case 0x03:
6585 case 0x04:
6586 case 0x05:
6587 case 0x06:
6588 case 0x07:
6589 case 0x08:
6590 case '\t':
6591 case '\n':
6592 case '\v':
6593 case '\f':
6594 case '\r':
6595 case 0x0E:
6596 case 0x0F:
6597 case 0x10:
6598 case 0x11:
6599 case 0x12:
6600 case 0x13:
6601 case 0x14:
6602 case 0x15:
6603 case 0x16:
6604 case 0x17:
6605 case 0x18:
6606 case 0x19:
6607 case 0x1A:
6608 case 0x1B:
6609 case 0x1C:
6610 case 0x1D:
6611 case 0x1E:
6612 case 0x1F:
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 '}':
6643 case '~':
6644 case 0x7F: goto yy471;
6645 case '\\': goto yy147;
6646 default: goto yy61;
6647 }
6648 yy471:
6649 #line 217 "src/parser_scan.re"
6650 { NEWTOKEN(PSI_T_STRING); goto start; }
6651 #line 6652 "src/parser_scan.c"
6652 yy472:
6653 yyaccept = 49;
6654 yych = *(mrk = ++cur);
6655 switch (yych) {
6656 case 0x00:
6657 case 0x01:
6658 case 0x02:
6659 case 0x03:
6660 case 0x04:
6661 case 0x05:
6662 case 0x06:
6663 case 0x07:
6664 case 0x08:
6665 case '\t':
6666 case '\n':
6667 case '\v':
6668 case '\f':
6669 case '\r':
6670 case 0x0E:
6671 case 0x0F:
6672 case 0x10:
6673 case 0x11:
6674 case 0x12:
6675 case 0x13:
6676 case 0x14:
6677 case 0x15:
6678 case 0x16:
6679 case 0x17:
6680 case 0x18:
6681 case 0x19:
6682 case 0x1A:
6683 case 0x1B:
6684 case 0x1C:
6685 case 0x1D:
6686 case 0x1E:
6687 case 0x1F:
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 '}':
6718 case '~':
6719 case 0x7F: goto yy473;
6720 case '\\': goto yy147;
6721 default: goto yy61;
6722 }
6723 yy473:
6724 #line 232 "src/parser_scan.re"
6725 { NEWTOKEN(PSI_T_STRLEN); goto start; }
6726 #line 6727 "src/parser_scan.c"
6727 yy474:
6728 yyaccept = 50;
6729 yych = *(mrk = ++cur);
6730 switch (yych) {
6731 case 0x00:
6732 case 0x01:
6733 case 0x02:
6734 case 0x03:
6735 case 0x04:
6736 case 0x05:
6737 case 0x06:
6738 case 0x07:
6739 case 0x08:
6740 case '\t':
6741 case '\n':
6742 case '\v':
6743 case '\f':
6744 case '\r':
6745 case 0x0E:
6746 case 0x0F:
6747 case 0x10:
6748 case 0x11:
6749 case 0x12:
6750 case 0x13:
6751 case 0x14:
6752 case 0x15:
6753 case 0x16:
6754 case 0x17:
6755 case 0x18:
6756 case 0x19:
6757 case 0x1A:
6758 case 0x1B:
6759 case 0x1C:
6760 case 0x1D:
6761 case 0x1E:
6762 case 0x1F:
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 '}':
6793 case '~':
6794 case 0x7F: goto yy475;
6795 case '\\': goto yy147;
6796 default: goto yy61;
6797 }
6798 yy475:
6799 #line 233 "src/parser_scan.re"
6800 { NEWTOKEN(PSI_T_STRVAL); goto start; }
6801 #line 6802 "src/parser_scan.c"
6802 yy476:
6803 yyaccept = 3;
6804 yych = *(mrk = ++cur);
6805 switch (yych) {
6806 case 'A':
6807 case 'a': goto yy517;
6808 default: goto yy62;
6809 }
6810 yy477:
6811 yyaccept = 3;
6812 yych = *(mrk = ++cur);
6813 switch (yych) {
6814 case 'L':
6815 case 'l': goto yy518;
6816 default: goto yy62;
6817 }
6818 yy478:
6819 yyaccept = 3;
6820 yych = *(mrk = ++cur);
6821 switch (yych) {
6822 case 'A':
6823 case 'a': goto yy520;
6824 default: goto yy62;
6825 }
6826 yy479:
6827 yyaccept = 51;
6828 yych = *(mrk = ++cur);
6829 switch (yych) {
6830 case 0x00:
6831 case 0x01:
6832 case 0x02:
6833 case 0x03:
6834 case 0x04:
6835 case 0x05:
6836 case 0x06:
6837 case 0x07:
6838 case 0x08:
6839 case '\t':
6840 case '\n':
6841 case '\v':
6842 case '\f':
6843 case '\r':
6844 case 0x0E:
6845 case 0x0F:
6846 case 0x10:
6847 case 0x11:
6848 case 0x12:
6849 case 0x13:
6850 case 0x14:
6851 case 0x15:
6852 case 0x16:
6853 case 0x17:
6854 case 0x18:
6855 case 0x19:
6856 case 0x1A:
6857 case 0x1B:
6858 case 0x1C:
6859 case 0x1D:
6860 case 0x1E:
6861 case 0x1F:
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 '}':
6892 case '~':
6893 case 0x7F: goto yy480;
6894 case '\\': goto yy147;
6895 default: goto yy61;
6896 }
6897 yy480:
6898 #line 246 "src/parser_scan.re"
6899 { NEWTOKEN(PSI_T_TO_INT); goto start; }
6900 #line 6901 "src/parser_scan.c"
6901 yy481:
6902 yyaccept = 3;
6903 yych = *(mrk = ++cur);
6904 switch (yych) {
6905 case 'E':
6906 case 'e': goto yy521;
6907 default: goto yy62;
6908 }
6909 yy482:
6910 yyaccept = 3;
6911 yych = *(mrk = ++cur);
6912 switch (yych) {
6913 case 'I':
6914 case 'i': goto yy522;
6915 default: goto yy62;
6916 }
6917 yy483:
6918 yyaccept = 3;
6919 yych = *(mrk = ++cur);
6920 switch (yych) {
6921 case 'G':
6922 case 'g': goto yy523;
6923 default: goto yy62;
6924 }
6925 yy484:
6926 yyaccept = 3;
6927 yych = *(mrk = ++cur);
6928 switch (yych) {
6929 case '_': goto yy525;
6930 default: goto yy62;
6931 }
6932 yy485:
6933 yyaccept = 3;
6934 yych = *(mrk = ++cur);
6935 switch (yych) {
6936 case 'i': goto yy526;
6937 default: goto yy62;
6938 }
6939 yy486:
6940 yyaccept = 3;
6941 yych = *(mrk = ++cur);
6942 switch (yych) {
6943 case 'n': goto yy527;
6944 default: goto yy62;
6945 }
6946 yy487:
6947 yyaccept = 3;
6948 yych = *(mrk = ++cur);
6949 switch (yych) {
6950 case 'r': goto yy528;
6951 default: goto yy62;
6952 }
6953 yy488:
6954 yyaccept = 52;
6955 yych = *(mrk = ++cur);
6956 switch (yych) {
6957 case 0x00:
6958 case 0x01:
6959 case 0x02:
6960 case 0x03:
6961 case 0x04:
6962 case 0x05:
6963 case 0x06:
6964 case 0x07:
6965 case 0x08:
6966 case '\t':
6967 case '\n':
6968 case '\v':
6969 case '\f':
6970 case '\r':
6971 case 0x0E:
6972 case 0x0F:
6973 case 0x10:
6974 case 0x11:
6975 case 0x12:
6976 case 0x13:
6977 case 0x14:
6978 case 0x15:
6979 case 0x16:
6980 case 0x17:
6981 case 0x18:
6982 case 0x19:
6983 case 0x1A:
6984 case 0x1B:
6985 case 0x1C:
6986 case 0x1D:
6987 case 0x1E:
6988 case 0x1F:
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 '}':
7019 case '~':
7020 case 0x7F: goto yy489;
7021 case '\\': goto yy147;
7022 default: goto yy61;
7023 }
7024 yy489:
7025 #line 196 "src/parser_scan.re"
7026 { NEWTOKEN(PSI_T_DOUBLE); goto start; }
7027 #line 7028 "src/parser_scan.c"
7028 yy490:
7029 yyaccept = 53;
7030 yych = *(mrk = ++cur);
7031 switch (yych) {
7032 case 0x00:
7033 case 0x01:
7034 case 0x02:
7035 case 0x03:
7036 case 0x04:
7037 case 0x05:
7038 case 0x06:
7039 case 0x07:
7040 case 0x08:
7041 case '\t':
7042 case '\n':
7043 case '\v':
7044 case '\f':
7045 case '\r':
7046 case 0x0E:
7047 case 0x0F:
7048 case 0x10:
7049 case 0x11:
7050 case 0x12:
7051 case 0x13:
7052 case 0x14:
7053 case 0x15:
7054 case 0x16:
7055 case 0x17:
7056 case 0x18:
7057 case 0x19:
7058 case 0x1A:
7059 case 0x1B:
7060 case 0x1C:
7061 case 0x1D:
7062 case 0x1E:
7063 case 0x1F:
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 '}':
7094 case '~':
7095 case 0x7F: goto yy491;
7096 case '\\': goto yy147;
7097 default: goto yy61;
7098 }
7099 yy491:
7100 #line 177 "src/parser_scan.re"
7101 { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
7102 #line 7103 "src/parser_scan.c"
7103 yy492:
7104 yyaccept = 54;
7105 yych = *(mrk = ++cur);
7106 switch (yych) {
7107 case 0x00:
7108 case 0x01:
7109 case 0x02:
7110 case 0x03:
7111 case 0x04:
7112 case 0x05:
7113 case 0x06:
7114 case 0x07:
7115 case 0x08:
7116 case '\t':
7117 case '\n':
7118 case '\v':
7119 case '\f':
7120 case '\r':
7121 case 0x0E:
7122 case 0x0F:
7123 case 0x10:
7124 case 0x11:
7125 case 0x12:
7126 case 0x13:
7127 case 0x14:
7128 case 0x15:
7129 case 0x16:
7130 case 0x17:
7131 case 0x18:
7132 case 0x19:
7133 case 0x1A:
7134 case 0x1B:
7135 case 0x1C:
7136 case 0x1D:
7137 case 0x1E:
7138 case 0x1F:
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 '}':
7169 case '~':
7170 case 0x7F: goto yy493;
7171 case '\\': goto yy147;
7172 default: goto yy529;
7173 }
7174 yy493:
7175 #line 175 "src/parser_scan.re"
7176 { NEWTOKEN(PSI_T_PRAGMA); goto start; }
7177 #line 7178 "src/parser_scan.c"
7178 yy494:
7179 yyaccept = 55;
7180 yych = *(mrk = ++cur);
7181 switch (yych) {
7182 case 0x00:
7183 case 0x01:
7184 case 0x02:
7185 case 0x03:
7186 case 0x04:
7187 case 0x05:
7188 case 0x06:
7189 case 0x07:
7190 case 0x08:
7191 case '\t':
7192 case '\n':
7193 case '\v':
7194 case '\f':
7195 case '\r':
7196 case 0x0E:
7197 case 0x0F:
7198 case 0x10:
7199 case 0x11:
7200 case 0x12:
7201 case 0x13:
7202 case 0x14:
7203 case 0x15:
7204 case 0x16:
7205 case 0x17:
7206 case 0x18:
7207 case 0x19:
7208 case 0x1A:
7209 case 0x1B:
7210 case 0x1C:
7211 case 0x1D:
7212 case 0x1E:
7213 case 0x1F:
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 '}':
7244 case '~':
7245 case 0x7F: goto yy495;
7246 case '\\': goto yy147;
7247 default: goto yy61;
7248 }
7249 yy495:
7250 #line 198 "src/parser_scan.re"
7251 { NEWTOKEN(PSI_T_SIGNED); goto start; }
7252 #line 7253 "src/parser_scan.c"
7253 yy496:
7254 yyaccept = 56;
7255 yych = *(mrk = ++cur);
7256 switch (yych) {
7257 case 0x00:
7258 case 0x01:
7259 case 0x02:
7260 case 0x03:
7261 case 0x04:
7262 case 0x05:
7263 case 0x06:
7264 case 0x07:
7265 case 0x08:
7266 case '\t':
7267 case '\n':
7268 case '\v':
7269 case '\f':
7270 case '\r':
7271 case 0x0E:
7272 case 0x0F:
7273 case 0x10:
7274 case 0x11:
7275 case 0x12:
7276 case 0x13:
7277 case 0x14:
7278 case 0x15:
7279 case 0x16:
7280 case 0x17:
7281 case 0x18:
7282 case 0x19:
7283 case 0x1A:
7284 case 0x1B:
7285 case 0x1C:
7286 case 0x1D:
7287 case 0x1E:
7288 case 0x1F:
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 '}':
7319 case '~':
7320 case 0x7F: goto yy497;
7321 case '\\': goto yy147;
7322 default: goto yy61;
7323 }
7324 yy497:
7325 #line 182 "src/parser_scan.re"
7326 { NEWTOKEN(PSI_T_SIZEOF); goto start; }
7327 #line 7328 "src/parser_scan.c"
7328 yy498:
7329 yyaccept = 57;
7330 yych = *(mrk = ++cur);
7331 switch (yych) {
7332 case 0x00:
7333 case 0x01:
7334 case 0x02:
7335 case 0x03:
7336 case 0x04:
7337 case 0x05:
7338 case 0x06:
7339 case 0x07:
7340 case 0x08:
7341 case '\t':
7342 case '\n':
7343 case '\v':
7344 case '\f':
7345 case '\r':
7346 case 0x0E:
7347 case 0x0F:
7348 case 0x10:
7349 case 0x11:
7350 case 0x12:
7351 case 0x13:
7352 case 0x14:
7353 case 0x15:
7354 case 0x16:
7355 case 0x17:
7356 case 0x18:
7357 case 0x19:
7358 case 0x1A:
7359 case 0x1B:
7360 case 0x1C:
7361 case 0x1D:
7362 case 0x1E:
7363 case 0x1F:
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 '}':
7394 case '~':
7395 case 0x7F: goto yy499;
7396 case '\\': goto yy147;
7397 default: goto yy61;
7398 }
7399 yy499:
7400 #line 185 "src/parser_scan.re"
7401 { NEWTOKEN(PSI_T_STRUCT); goto start; }
7402 #line 7403 "src/parser_scan.c"
7403 yy500:
7404 yyaccept = 3;
7405 yych = *(mrk = ++cur);
7406 switch (yych) {
7407 case 'f': goto yy531;
7408 default: goto yy62;
7409 }
7410 yy501:
7411 yyaccept = 3;
7412 yych = *(mrk = ++cur);
7413 switch (yych) {
7414 case 'e': goto yy533;
7415 default: goto yy62;
7416 }
7417 yy502:
7418 yyaccept = 3;
7419 yych = *(mrk = ++cur);
7420 switch (yych) {
7421 case 'l': goto yy534;
7422 default: goto yy62;
7423 }
7424 yy503:
7425 yyaccept = 58;
7426 yych = *(mrk = ++cur);
7427 switch (yych) {
7428 case 0x00:
7429 case 0x01:
7430 case 0x02:
7431 case 0x03:
7432 case 0x04:
7433 case 0x05:
7434 case 0x06:
7435 case 0x07:
7436 case 0x08:
7437 case '\t':
7438 case '\n':
7439 case '\v':
7440 case '\f':
7441 case '\r':
7442 case 0x0E:
7443 case 0x0F:
7444 case 0x10:
7445 case 0x11:
7446 case 0x12:
7447 case 0x13:
7448 case 0x14:
7449 case 0x15:
7450 case 0x16:
7451 case 0x17:
7452 case 0x18:
7453 case 0x19:
7454 case 0x1A:
7455 case 0x1B:
7456 case 0x1C:
7457 case 0x1D:
7458 case 0x1E:
7459 case 0x1F:
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 '}':
7490 case '~':
7491 case 0x7F: goto yy504;
7492 case '\\': goto yy147;
7493 default: goto yy61;
7494 }
7495 yy504:
7496 #line 237 "src/parser_scan.re"
7497 { NEWTOKEN(PSI_T_BOOLVAL); goto start; }
7498 #line 7499 "src/parser_scan.c"
7499 yy505:
7500 yyaccept = 3;
7501 yych = *(mrk = ++cur);
7502 switch (yych) {
7503 case 'E':
7504 case 'e': goto yy535;
7505 default: goto yy62;
7506 }
7507 yy506:
7508 yyaccept = 3;
7509 yych = *(mrk = ++cur);
7510 switch (yych) {
7511 case 'K':
7512 case 'k': goto yy537;
7513 default: goto yy62;
7514 }
7515 yy507:
7516 yyaccept = 59;
7517 yych = *(mrk = ++cur);
7518 switch (yych) {
7519 case 0x00:
7520 case 0x01:
7521 case 0x02:
7522 case 0x03:
7523 case 0x04:
7524 case 0x05:
7525 case 0x06:
7526 case 0x07:
7527 case 0x08:
7528 case '\t':
7529 case '\n':
7530 case '\v':
7531 case '\f':
7532 case '\r':
7533 case 0x0E:
7534 case 0x0F:
7535 case 0x10:
7536 case 0x11:
7537 case 0x12:
7538 case 0x13:
7539 case 0x14:
7540 case 0x15:
7541 case 0x16:
7542 case 0x17:
7543 case 0x18:
7544 case 0x19:
7545 case 0x1A:
7546 case 0x1B:
7547 case 0x1C:
7548 case 0x1D:
7549 case 0x1E:
7550 case 0x1F:
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 '}':
7581 case '~':
7582 case 0x7F: goto yy508;
7583 case '\\': goto yy147;
7584 default: goto yy61;
7585 }
7586 yy508:
7587 #line 206 "src/parser_scan.re"
7588 { NEWTOKEN(PSI_T_DEFINED); goto start; }
7589 #line 7590 "src/parser_scan.c"
7590 yy509:
7591 yyaccept = 3;
7592 yych = *(mrk = ++cur);
7593 switch (yych) {
7594 case 'L':
7595 case 'l': goto yy539;
7596 default: goto yy62;
7597 }
7598 yy510:
7599 yyaccept = 3;
7600 yych = *(mrk = ++cur);
7601 switch (yych) {
7602 case 'N':
7603 case 'n': goto yy541;
7604 default: goto yy62;
7605 }
7606 yy511:
7607 yyaccept = 60;
7608 yych = *(mrk = ++cur);
7609 switch (yych) {
7610 case 0x00:
7611 case 0x01:
7612 case 0x02:
7613 case 0x03:
7614 case 0x04:
7615 case 0x05:
7616 case 0x06:
7617 case 0x07:
7618 case 0x08:
7619 case '\t':
7620 case '\n':
7621 case '\v':
7622 case '\f':
7623 case '\r':
7624 case 0x0E:
7625 case 0x0F:
7626 case 0x10:
7627 case 0x11:
7628 case 0x12:
7629 case 0x13:
7630 case 0x14:
7631 case 0x15:
7632 case 0x16:
7633 case 0x17:
7634 case 0x18:
7635 case 0x19:
7636 case 0x1A:
7637 case 0x1B:
7638 case 0x1C:
7639 case 0x1D:
7640 case 0x1E:
7641 case 0x1F:
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 '}':
7672 case '~':
7673 case 0x7F: goto yy512;
7674 case '\\': goto yy147;
7675 case '_': goto yy543;
7676 default: goto yy61;
7677 }
7678 yy512:
7679 #line 210 "src/parser_scan.re"
7680 { NEWTOKEN(PSI_T_INCLUDE); goto start; }
7681 #line 7682 "src/parser_scan.c"
7682 yy513:
7683 yyaccept = 61;
7684 yych = *(mrk = ++cur);
7685 switch (yych) {
7686 case 0x00:
7687 case 0x01:
7688 case 0x02:
7689 case 0x03:
7690 case 0x04:
7691 case 0x05:
7692 case 0x06:
7693 case 0x07:
7694 case 0x08:
7695 case '\t':
7696 case '\n':
7697 case '\v':
7698 case '\f':
7699 case '\r':
7700 case 0x0E:
7701 case 0x0F:
7702 case 0x10:
7703 case 0x11:
7704 case 0x12:
7705 case 0x13:
7706 case 0x14:
7707 case 0x15:
7708 case 0x16:
7709 case 0x17:
7710 case 0x18:
7711 case 0x19:
7712 case 0x1A:
7713 case 0x1B:
7714 case 0x1C:
7715 case 0x1D:
7716 case 0x1E:
7717 case 0x1F:
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 '}':
7748 case '~':
7749 case 0x7F: goto yy514;
7750 case '\\': goto yy147;
7751 default: goto yy61;
7752 }
7753 yy514:
7754 #line 234 "src/parser_scan.re"
7755 { NEWTOKEN(PSI_T_PATHVAL); goto start; }
7756 #line 7757 "src/parser_scan.c"
7757 yy515:
7758 yyaccept = 3;
7759 yych = *(mrk = ++cur);
7760 switch (yych) {
7761 case 'S':
7762 case 's': goto yy544;
7763 default: goto yy62;
7764 }
7765 yy516:
7766 yyaccept = 3;
7767 yych = *(mrk = ++cur);
7768 switch (yych) {
7769 case 'E':
7770 case 'e': goto yy545;
7771 default: goto yy62;
7772 }
7773 yy517:
7774 yyaccept = 3;
7775 yych = *(mrk = ++cur);
7776 switch (yych) {
7777 case 'Y':
7778 case 'y': goto yy546;
7779 default: goto yy62;
7780 }
7781 yy518:
7782 yyaccept = 62;
7783 yych = *(mrk = ++cur);
7784 switch (yych) {
7785 case 0x00:
7786 case 0x01:
7787 case 0x02:
7788 case 0x03:
7789 case 0x04:
7790 case 0x05:
7791 case 0x06:
7792 case 0x07:
7793 case 0x08:
7794 case '\t':
7795 case '\n':
7796 case '\v':
7797 case '\f':
7798 case '\r':
7799 case 0x0E:
7800 case 0x0F:
7801 case 0x10:
7802 case 0x11:
7803 case 0x12:
7804 case 0x13:
7805 case 0x14:
7806 case 0x15:
7807 case 0x16:
7808 case 0x17:
7809 case 0x18:
7810 case 0x19:
7811 case 0x1A:
7812 case 0x1B:
7813 case 0x1C:
7814 case 0x1D:
7815 case 0x1E:
7816 case 0x1F:
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 '}':
7847 case '~':
7848 case 0x7F: goto yy519;
7849 case '\\': goto yy147;
7850 default: goto yy61;
7851 }
7852 yy519:
7853 #line 248 "src/parser_scan.re"
7854 { NEWTOKEN(PSI_T_TO_BOOL); goto start; }
7855 #line 7856 "src/parser_scan.c"
7856 yy520:
7857 yyaccept = 3;
7858 yych = *(mrk = ++cur);
7859 switch (yych) {
7860 case 'T':
7861 case 't': goto yy548;
7862 default: goto yy62;
7863 }
7864 yy521:
7865 yyaccept = 3;
7866 yych = *(mrk = ++cur);
7867 switch (yych) {
7868 case 'C':
7869 case 'c': goto yy550;
7870 default: goto yy62;
7871 }
7872 yy522:
7873 yyaccept = 3;
7874 yych = *(mrk = ++cur);
7875 switch (yych) {
7876 case 'N':
7877 case 'n': goto yy551;
7878 default: goto yy62;
7879 }
7880 yy523:
7881 yyaccept = 63;
7882 yych = *(mrk = ++cur);
7883 switch (yych) {
7884 case 0x00:
7885 case 0x01:
7886 case 0x02:
7887 case 0x03:
7888 case 0x04:
7889 case 0x05:
7890 case 0x06:
7891 case 0x07:
7892 case 0x08:
7893 case '\t':
7894 case '\n':
7895 case '\v':
7896 case '\f':
7897 case '\r':
7898 case 0x0E:
7899 case 0x0F:
7900 case 0x10:
7901 case 0x11:
7902 case 0x12:
7903 case 0x13:
7904 case 0x14:
7905 case 0x15:
7906 case 0x16:
7907 case 0x17:
7908 case 0x18:
7909 case 0x19:
7910 case 0x1A:
7911 case 0x1B:
7912 case 0x1C:
7913 case 0x1D:
7914 case 0x1E:
7915 case 0x1F:
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 '}':
7946 case '~':
7947 case 0x7F: goto yy524;
7948 case '\\': goto yy147;
7949 default: goto yy61;
7950 }
7951 yy524:
7952 #line 208 "src/parser_scan.re"
7953 { NEWTOKEN(PSI_T_WARNING); goto start; }
7954 #line 7955 "src/parser_scan.c"
7955 yy525:
7956 yyaccept = 34;
7957 yych = *(mrk = ++cur);
7958 switch (yych) {
7959 case 0x00:
7960 case 0x01:
7961 case 0x02:
7962 case 0x03:
7963 case 0x04:
7964 case 0x05:
7965 case 0x06:
7966 case 0x07:
7967 case 0x08:
7968 case '\t':
7969 case '\n':
7970 case '\v':
7971 case '\f':
7972 case '\r':
7973 case 0x0E:
7974 case 0x0F:
7975 case 0x10:
7976 case 0x11:
7977 case 0x12:
7978 case 0x13:
7979 case 0x14:
7980 case 0x15:
7981 case 0x16:
7982 case 0x17:
7983 case 0x18:
7984 case 0x19:
7985 case 0x1A:
7986 case 0x1B:
7987 case 0x1C:
7988 case 0x1D:
7989 case 0x1E:
7990 case 0x1F:
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 '}':
8021 case '~':
8022 case 0x7F: goto yy422;
8023 case '\\': goto yy147;
8024 default: goto yy61;
8025 }
8026 yy526:
8027 yyaccept = 3;
8028 yych = *(mrk = ++cur);
8029 switch (yych) {
8030 case 'b': goto yy552;
8031 default: goto yy62;
8032 }
8033 yy527:
8034 yyaccept = 3;
8035 yych = *(mrk = ++cur);
8036 switch (yych) {
8037 case 's': goto yy553;
8038 default: goto yy62;
8039 }
8040 yy528:
8041 yyaccept = 3;
8042 yych = *(mrk = ++cur);
8043 switch (yych) {
8044 case 'i': goto yy554;
8045 default: goto yy62;
8046 }
8047 yy529:
8048 yyaccept = 3;
8049 mrk = ++cur;
8050 if (lim <= cur) CHECKEOF();;
8051 yych = *cur;
8052 switch (yych) {
8053 case 0x00:
8054 case 0x01:
8055 case 0x02:
8056 case 0x03:
8057 case 0x04:
8058 case 0x05:
8059 case 0x06:
8060 case 0x07:
8061 case 0x08:
8062 case '\t':
8063 case '\n':
8064 case '\v':
8065 case '\f':
8066 case '\r':
8067 case 0x0E:
8068 case 0x0F:
8069 case 0x10:
8070 case 0x11:
8071 case 0x12:
8072 case 0x13:
8073 case 0x14:
8074 case 0x15:
8075 case 0x16:
8076 case 0x17:
8077 case 0x18:
8078 case 0x19:
8079 case 0x1A:
8080 case 0x1B:
8081 case 0x1C:
8082 case 0x1D:
8083 case 0x1E:
8084 case 0x1F:
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 '}':
8115 case '~':
8116 case 0x7F: goto yy55;
8117 case '\\': goto yy147;
8118 case 'o': goto yy555;
8119 default: goto yy529;
8120 }
8121 yy531:
8122 yyaccept = 64;
8123 yych = *(mrk = ++cur);
8124 switch (yych) {
8125 case 0x00:
8126 case 0x01:
8127 case 0x02:
8128 case 0x03:
8129 case 0x04:
8130 case 0x05:
8131 case 0x06:
8132 case 0x07:
8133 case 0x08:
8134 case '\t':
8135 case '\n':
8136 case '\v':
8137 case '\f':
8138 case '\r':
8139 case 0x0E:
8140 case 0x0F:
8141 case 0x10:
8142 case 0x11:
8143 case 0x12:
8144 case 0x13:
8145 case 0x14:
8146 case 0x15:
8147 case 0x16:
8148 case 0x17:
8149 case 0x18:
8150 case 0x19:
8151 case 0x1A:
8152 case 0x1B:
8153 case 0x1C:
8154 case 0x1D:
8155 case 0x1E:
8156 case 0x1F:
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 '}':
8187 case '~':
8188 case 0x7F: goto yy532;
8189 case '\\': goto yy147;
8190 default: goto yy61;
8191 }
8192 yy532:
8193 #line 184 "src/parser_scan.re"
8194 { NEWTOKEN(PSI_T_TYPEDEF); goto start; }
8195 #line 8196 "src/parser_scan.c"
8196 yy533:
8197 yyaccept = 3;
8198 yych = *(mrk = ++cur);
8199 switch (yych) {
8200 case 'd': goto yy557;
8201 default: goto yy62;
8202 }
8203 yy534:
8204 yyaccept = 3;
8205 yych = *(mrk = ++cur);
8206 switch (yych) {
8207 case 'e': goto yy559;
8208 default: goto yy62;
8209 }
8210 yy535:
8211 yyaccept = 65;
8212 yych = *(mrk = ++cur);
8213 switch (yych) {
8214 case 0x00:
8215 case 0x01:
8216 case 0x02:
8217 case 0x03:
8218 case 0x04:
8219 case 0x05:
8220 case 0x06:
8221 case 0x07:
8222 case 0x08:
8223 case '\t':
8224 case '\n':
8225 case '\v':
8226 case '\f':
8227 case '\r':
8228 case 0x0E:
8229 case 0x0F:
8230 case 0x10:
8231 case 0x11:
8232 case 0x12:
8233 case 0x13:
8234 case 0x14:
8235 case 0x15:
8236 case 0x16:
8237 case 0x17:
8238 case 0x18:
8239 case 0x19:
8240 case 0x1A:
8241 case 0x1B:
8242 case 0x1C:
8243 case 0x1D:
8244 case 0x1E:
8245 case 0x1F:
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 '}':
8276 case '~':
8277 case 0x7F: goto yy536;
8278 case '\\': goto yy147;
8279 default: goto yy61;
8280 }
8281 yy536:
8282 #line 216 "src/parser_scan.re"
8283 { NEWTOKEN(PSI_T_CALLABLE); goto start; }
8284 #line 8285 "src/parser_scan.c"
8285 yy537:
8286 yyaccept = 66;
8287 yych = *(mrk = ++cur);
8288 switch (yych) {
8289 case 0x00:
8290 case 0x01:
8291 case 0x02:
8292 case 0x03:
8293 case 0x04:
8294 case 0x05:
8295 case 0x06:
8296 case 0x07:
8297 case 0x08:
8298 case '\t':
8299 case '\n':
8300 case '\v':
8301 case '\f':
8302 case '\r':
8303 case 0x0E:
8304 case 0x0F:
8305 case 0x10:
8306 case 0x11:
8307 case 0x12:
8308 case 0x13:
8309 case 0x14:
8310 case 0x15:
8311 case 0x16:
8312 case 0x17:
8313 case 0x18:
8314 case 0x19:
8315 case 0x1A:
8316 case 0x1B:
8317 case 0x1C:
8318 case 0x1D:
8319 case 0x1E:
8320 case 0x1F:
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 '}':
8351 case '~':
8352 case 0x7F: goto yy538;
8353 case '\\': goto yy147;
8354 default: goto yy61;
8355 }
8356 yy538:
8357 #line 220 "src/parser_scan.re"
8358 { NEWTOKEN(PSI_T_CALLBACK); goto start; }
8359 #line 8360 "src/parser_scan.c"
8360 yy539:
8361 yyaccept = 67;
8362 yych = *(mrk = ++cur);
8363 switch (yych) {
8364 case 0x00:
8365 case 0x01:
8366 case 0x02:
8367 case 0x03:
8368 case 0x04:
8369 case 0x05:
8370 case 0x06:
8371 case 0x07:
8372 case 0x08:
8373 case '\t':
8374 case '\n':
8375 case '\v':
8376 case '\f':
8377 case '\r':
8378 case 0x0E:
8379 case 0x0F:
8380 case 0x10:
8381 case 0x11:
8382 case 0x12:
8383 case 0x13:
8384 case 0x14:
8385 case 0x15:
8386 case 0x16:
8387 case 0x17:
8388 case 0x18:
8389 case 0x19:
8390 case 0x1A:
8391 case 0x1B:
8392 case 0x1C:
8393 case 0x1D:
8394 case 0x1E:
8395 case 0x1F:
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 '}':
8426 case '~':
8427 case 0x7F: goto yy540;
8428 case '\\': goto yy147;
8429 default: goto yy61;
8430 }
8431 yy540:
8432 #line 236 "src/parser_scan.re"
8433 { NEWTOKEN(PSI_T_FLOATVAL); goto start; }
8434 #line 8435 "src/parser_scan.c"
8435 yy541:
8436 yyaccept = 68;
8437 yych = *(mrk = ++cur);
8438 switch (yych) {
8439 case 0x00:
8440 case 0x01:
8441 case 0x02:
8442 case 0x03:
8443 case 0x04:
8444 case 0x05:
8445 case 0x06:
8446 case 0x07:
8447 case 0x08:
8448 case '\t':
8449 case '\n':
8450 case '\v':
8451 case '\f':
8452 case '\r':
8453 case 0x0E:
8454 case 0x0F:
8455 case 0x10:
8456 case 0x11:
8457 case 0x12:
8458 case 0x13:
8459 case 0x14:
8460 case 0x15:
8461 case 0x16:
8462 case 0x17:
8463 case 0x18:
8464 case 0x19:
8465 case 0x1A:
8466 case 0x1B:
8467 case 0x1C:
8468 case 0x1D:
8469 case 0x1E:
8470 case 0x1F:
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 '}':
8501 case '~':
8502 case 0x7F: goto yy542;
8503 case '\\': goto yy147;
8504 default: goto yy61;
8505 }
8506 yy542:
8507 #line 222 "src/parser_scan.re"
8508 { NEWTOKEN(PSI_T_FUNCTION); goto start; }
8509 #line 8510 "src/parser_scan.c"
8510 yy543:
8511 yyaccept = 3;
8512 yych = *(mrk = ++cur);
8513 switch (yych) {
8514 case 'N':
8515 case 'n': goto yy561;
8516 default: goto yy62;
8517 }
8518 yy544:
8519 yyaccept = 3;
8520 yych = *(mrk = ++cur);
8521 switch (yych) {
8522 case 'E':
8523 case 'e': goto yy562;
8524 default: goto yy62;
8525 }
8526 yy545:
8527 yyaccept = 3;
8528 yych = *(mrk = ++cur);
8529 switch (yych) {
8530 case 'R':
8531 case 'r': goto yy563;
8532 default: goto yy62;
8533 }
8534 yy546:
8535 yyaccept = 69;
8536 yych = *(mrk = ++cur);
8537 switch (yych) {
8538 case 0x00:
8539 case 0x01:
8540 case 0x02:
8541 case 0x03:
8542 case 0x04:
8543 case 0x05:
8544 case 0x06:
8545 case 0x07:
8546 case 0x08:
8547 case '\t':
8548 case '\n':
8549 case '\v':
8550 case '\f':
8551 case '\r':
8552 case 0x0E:
8553 case 0x0F:
8554 case 0x10:
8555 case 0x11:
8556 case 0x12:
8557 case 0x13:
8558 case 0x14:
8559 case 0x15:
8560 case 0x16:
8561 case 0x17:
8562 case 0x18:
8563 case 0x19:
8564 case 0x1A:
8565 case 0x1B:
8566 case 0x1C:
8567 case 0x1D:
8568 case 0x1E:
8569 case 0x1F:
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 '}':
8600 case '~':
8601 case 0x7F: goto yy547;
8602 case '\\': goto yy147;
8603 default: goto yy61;
8604 }
8605 yy547:
8606 #line 244 "src/parser_scan.re"
8607 { NEWTOKEN(PSI_T_TO_ARRAY); goto start; }
8608 #line 8609 "src/parser_scan.c"
8609 yy548:
8610 yyaccept = 70;
8611 yych = *(mrk = ++cur);
8612 switch (yych) {
8613 case 0x00:
8614 case 0x01:
8615 case 0x02:
8616 case 0x03:
8617 case 0x04:
8618 case 0x05:
8619 case 0x06:
8620 case 0x07:
8621 case 0x08:
8622 case '\t':
8623 case '\n':
8624 case '\v':
8625 case '\f':
8626 case '\r':
8627 case 0x0E:
8628 case 0x0F:
8629 case 0x10:
8630 case 0x11:
8631 case 0x12:
8632 case 0x13:
8633 case 0x14:
8634 case 0x15:
8635 case 0x16:
8636 case 0x17:
8637 case 0x18:
8638 case 0x19:
8639 case 0x1A:
8640 case 0x1B:
8641 case 0x1C:
8642 case 0x1D:
8643 case 0x1E:
8644 case 0x1F:
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 '}':
8675 case '~':
8676 case 0x7F: goto yy549;
8677 case '\\': goto yy147;
8678 default: goto yy61;
8679 }
8680 yy549:
8681 #line 247 "src/parser_scan.re"
8682 { NEWTOKEN(PSI_T_TO_FLOAT); goto start; }
8683 #line 8684 "src/parser_scan.c"
8684 yy550:
8685 yyaccept = 3;
8686 yych = *(mrk = ++cur);
8687 switch (yych) {
8688 case 'T':
8689 case 't': goto yy564;
8690 default: goto yy62;
8691 }
8692 yy551:
8693 yyaccept = 3;
8694 yych = *(mrk = ++cur);
8695 switch (yych) {
8696 case 'G':
8697 case 'g': goto yy566;
8698 default: goto yy62;
8699 }
8700 yy552:
8701 yyaccept = 3;
8702 yych = *(mrk = ++cur);
8703 switch (yych) {
8704 case 'u': goto yy568;
8705 default: goto yy62;
8706 }
8707 yy553:
8708 yyaccept = 3;
8709 yych = *(mrk = ++cur);
8710 switch (yych) {
8711 case 'i': goto yy569;
8712 default: goto yy62;
8713 }
8714 yy554:
8715 yyaccept = 3;
8716 yych = *(mrk = ++cur);
8717 switch (yych) {
8718 case 'c': goto yy570;
8719 default: goto yy62;
8720 }
8721 yy555:
8722 yyaccept = 3;
8723 mrk = ++cur;
8724 if (lim <= cur) CHECKEOF();;
8725 yych = *cur;
8726 switch (yych) {
8727 case 0x00:
8728 case 0x01:
8729 case 0x02:
8730 case 0x03:
8731 case 0x04:
8732 case 0x05:
8733 case 0x06:
8734 case 0x07:
8735 case 0x08:
8736 case '\t':
8737 case '\n':
8738 case '\v':
8739 case '\f':
8740 case '\r':
8741 case 0x0E:
8742 case 0x0F:
8743 case 0x10:
8744 case 0x11:
8745 case 0x12:
8746 case 0x13:
8747 case 0x14:
8748 case 0x15:
8749 case 0x16:
8750 case 0x17:
8751 case 0x18:
8752 case 0x19:
8753 case 0x1A:
8754 case 0x1B:
8755 case 0x1C:
8756 case 0x1D:
8757 case 0x1E:
8758 case 0x1F:
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 '}':
8789 case '~':
8790 case 0x7F: goto yy55;
8791 case '\\': goto yy147;
8792 case 'n': goto yy571;
8793 case 'o': goto yy555;
8794 default: goto yy529;
8795 }
8796 yy557:
8797 yyaccept = 71;
8798 yych = *(mrk = ++cur);
8799 switch (yych) {
8800 case 0x00:
8801 case 0x01:
8802 case 0x02:
8803 case 0x03:
8804 case 0x04:
8805 case 0x05:
8806 case 0x06:
8807 case 0x07:
8808 case 0x08:
8809 case '\t':
8810 case '\n':
8811 case '\v':
8812 case '\f':
8813 case '\r':
8814 case 0x0E:
8815 case 0x0F:
8816 case 0x10:
8817 case 0x11:
8818 case 0x12:
8819 case 0x13:
8820 case 0x14:
8821 case 0x15:
8822 case 0x16:
8823 case 0x17:
8824 case 0x18:
8825 case 0x19:
8826 case 0x1A:
8827 case 0x1B:
8828 case 0x1C:
8829 case 0x1D:
8830 case 0x1E:
8831 case 0x1F:
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 '}':
8862 case '~':
8863 case 0x7F: goto yy558;
8864 case '\\': goto yy147;
8865 default: goto yy61;
8866 }
8867 yy558:
8868 #line 197 "src/parser_scan.re"
8869 { NEWTOKEN(PSI_T_UNSIGNED); goto start; }
8870 #line 8871 "src/parser_scan.c"
8871 yy559:
8872 yyaccept = 72;
8873 yych = *(mrk = ++cur);
8874 switch (yych) {
8875 case 0x00:
8876 case 0x01:
8877 case 0x02:
8878 case 0x03:
8879 case 0x04:
8880 case 0x05:
8881 case 0x06:
8882 case 0x07:
8883 case 0x08:
8884 case '\t':
8885 case '\n':
8886 case '\v':
8887 case '\f':
8888 case '\r':
8889 case 0x0E:
8890 case 0x0F:
8891 case 0x10:
8892 case 0x11:
8893 case 0x12:
8894 case 0x13:
8895 case 0x14:
8896 case 0x15:
8897 case 0x16:
8898 case 0x17:
8899 case 0x18:
8900 case 0x19:
8901 case 0x1A:
8902 case 0x1B:
8903 case 0x1C:
8904 case 0x1D:
8905 case 0x1E:
8906 case 0x1F:
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 '}':
8937 case '~':
8938 case 0x7F: goto yy560;
8939 case '\\': goto yy147;
8940 default: goto yy61;
8941 }
8942 yy560:
8943 #line 181 "src/parser_scan.re"
8944 { NEWTOKEN(PSI_T_VOLATILE); goto start; }
8945 #line 8946 "src/parser_scan.c"
8946 yy561:
8947 yyaccept = 3;
8948 yych = *(mrk = ++cur);
8949 switch (yych) {
8950 case 'E':
8951 case 'e': goto yy572;
8952 default: goto yy62;
8953 }
8954 yy562:
8955 yyaccept = 3;
8956 yych = *(mrk = ++cur);
8957 switch (yych) {
8958 case 'R':
8959 case 'r': goto yy573;
8960 default: goto yy62;
8961 }
8962 yy563:
8963 yyaccept = 3;
8964 yych = *(mrk = ++cur);
8965 switch (yych) {
8966 case 'T':
8967 case 't': goto yy574;
8968 default: goto yy62;
8969 }
8970 yy564:
8971 yyaccept = 73;
8972 yych = *(mrk = ++cur);
8973 switch (yych) {
8974 case 0x00:
8975 case 0x01:
8976 case 0x02:
8977 case 0x03:
8978 case 0x04:
8979 case 0x05:
8980 case 0x06:
8981 case 0x07:
8982 case 0x08:
8983 case '\t':
8984 case '\n':
8985 case '\v':
8986 case '\f':
8987 case '\r':
8988 case 0x0E:
8989 case 0x0F:
8990 case 0x10:
8991 case 0x11:
8992 case 0x12:
8993 case 0x13:
8994 case 0x14:
8995 case 0x15:
8996 case 0x16:
8997 case 0x17:
8998 case 0x18:
8999 case 0x19:
9000 case 0x1A:
9001 case 0x1B:
9002 case 0x1C:
9003 case 0x1D:
9004 case 0x1E:
9005 case 0x1F:
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 '}':
9036 case '~':
9037 case 0x7F: goto yy565;
9038 case '\\': goto yy147;
9039 default: goto yy61;
9040 }
9041 yy565:
9042 #line 243 "src/parser_scan.re"
9043 { NEWTOKEN(PSI_T_TO_OBJECT); goto start; }
9044 #line 9045 "src/parser_scan.c"
9045 yy566:
9046 yyaccept = 74;
9047 yych = *(mrk = ++cur);
9048 switch (yych) {
9049 case 0x00:
9050 case 0x01:
9051 case 0x02:
9052 case 0x03:
9053 case 0x04:
9054 case 0x05:
9055 case 0x06:
9056 case 0x07:
9057 case 0x08:
9058 case '\t':
9059 case '\n':
9060 case '\v':
9061 case '\f':
9062 case '\r':
9063 case 0x0E:
9064 case 0x0F:
9065 case 0x10:
9066 case 0x11:
9067 case 0x12:
9068 case 0x13:
9069 case 0x14:
9070 case 0x15:
9071 case 0x16:
9072 case 0x17:
9073 case 0x18:
9074 case 0x19:
9075 case 0x1A:
9076 case 0x1B:
9077 case 0x1C:
9078 case 0x1D:
9079 case 0x1E:
9080 case 0x1F:
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 '}':
9111 case '~':
9112 case 0x7F: goto yy567;
9113 case '\\': goto yy147;
9114 default: goto yy61;
9115 }
9116 yy567:
9117 #line 245 "src/parser_scan.re"
9118 { NEWTOKEN(PSI_T_TO_STRING); goto start; }
9119 #line 9120 "src/parser_scan.c"
9120 yy568:
9121 yyaccept = 3;
9122 yych = *(mrk = ++cur);
9123 switch (yych) {
9124 case 't': goto yy576;
9125 default: goto yy62;
9126 }
9127 yy569:
9128 yyaccept = 3;
9129 yych = *(mrk = ++cur);
9130 switch (yych) {
9131 case 'o': goto yy577;
9132 default: goto yy62;
9133 }
9134 yy570:
9135 yyaccept = 3;
9136 yych = *(mrk = ++cur);
9137 switch (yych) {
9138 case 't': goto yy578;
9139 default: goto yy62;
9140 }
9141 yy571:
9142 yyaccept = 3;
9143 mrk = ++cur;
9144 if (lim <= cur) CHECKEOF();;
9145 yych = *cur;
9146 switch (yych) {
9147 case 0x00:
9148 case 0x01:
9149 case 0x02:
9150 case 0x03:
9151 case 0x04:
9152 case 0x05:
9153 case 0x06:
9154 case 0x07:
9155 case 0x08:
9156 case '\t':
9157 case '\n':
9158 case '\v':
9159 case '\f':
9160 case '\r':
9161 case 0x0E:
9162 case 0x0F:
9163 case 0x10:
9164 case 0x11:
9165 case 0x12:
9166 case 0x13:
9167 case 0x14:
9168 case 0x15:
9169 case 0x16:
9170 case 0x17:
9171 case 0x18:
9172 case 0x19:
9173 case 0x1A:
9174 case 0x1B:
9175 case 0x1C:
9176 case 0x1D:
9177 case 0x1E:
9178 case 0x1F:
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 '}':
9209 case '~':
9210 case 0x7F: goto yy55;
9211 case '\\': goto yy147;
9212 case 'c': goto yy580;
9213 case 'o': goto yy555;
9214 default: goto yy529;
9215 }
9216 yy572:
9217 yyaccept = 3;
9218 yych = *(mrk = ++cur);
9219 switch (yych) {
9220 case 'X':
9221 case 'x': goto yy581;
9222 default: goto yy62;
9223 }
9224 yy573:
9225 yyaccept = 3;
9226 yych = *(mrk = ++cur);
9227 switch (yych) {
9228 case 'T':
9229 case 't': goto yy582;
9230 default: goto yy62;
9231 }
9232 yy574:
9233 yyaccept = 75;
9234 yych = *(mrk = ++cur);
9235 switch (yych) {
9236 case 0x00:
9237 case 0x01:
9238 case 0x02:
9239 case 0x03:
9240 case 0x04:
9241 case 0x05:
9242 case 0x06:
9243 case 0x07:
9244 case 0x08:
9245 case '\t':
9246 case '\n':
9247 case '\v':
9248 case '\f':
9249 case '\r':
9250 case 0x0E:
9251 case 0x0F:
9252 case 0x10:
9253 case 0x11:
9254 case 0x12:
9255 case 0x13:
9256 case 0x14:
9257 case 0x15:
9258 case 0x16:
9259 case 0x17:
9260 case 0x18:
9261 case 0x19:
9262 case 0x1A:
9263 case 0x1B:
9264 case 0x1C:
9265 case 0x1D:
9266 case 0x1E:
9267 case 0x1F:
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 '}':
9298 case '~':
9299 case 0x7F: goto yy575;
9300 case '\\': goto yy147;
9301 default: goto yy61;
9302 }
9303 yy575:
9304 #line 226 "src/parser_scan.re"
9305 { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
9306 #line 9307 "src/parser_scan.c"
9307 yy576:
9308 yyaccept = 3;
9309 yych = *(mrk = ++cur);
9310 switch (yych) {
9311 case 'e': goto yy584;
9312 default: goto yy62;
9313 }
9314 yy577:
9315 yyaccept = 3;
9316 yych = *(mrk = ++cur);
9317 switch (yych) {
9318 case 'n': goto yy585;
9319 default: goto yy62;
9320 }
9321 yy578:
9322 yyaccept = 76;
9323 yych = *(mrk = ++cur);
9324 switch (yych) {
9325 case 0x00:
9326 case 0x01:
9327 case 0x02:
9328 case 0x03:
9329 case 0x04:
9330 case 0x05:
9331 case 0x06:
9332 case 0x07:
9333 case 0x08:
9334 case '\t':
9335 case '\n':
9336 case '\v':
9337 case '\f':
9338 case '\r':
9339 case 0x0E:
9340 case 0x0F:
9341 case 0x10:
9342 case 0x11:
9343 case 0x12:
9344 case 0x13:
9345 case 0x14:
9346 case 0x15:
9347 case 0x16:
9348 case 0x17:
9349 case 0x18:
9350 case 0x19:
9351 case 0x1A:
9352 case 0x1B:
9353 case 0x1C:
9354 case 0x1D:
9355 case 0x1E:
9356 case 0x1F:
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 '}':
9387 case '~':
9388 case 0x7F: goto yy579;
9389 case '\\': goto yy147;
9390 default: goto yy61;
9391 }
9392 yy579:
9393 #line 178 "src/parser_scan.re"
9394 { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
9395 #line 9396 "src/parser_scan.c"
9396 yy580:
9397 yyaccept = 3;
9398 mrk = ++cur;
9399 if (lim <= cur) CHECKEOF();;
9400 yych = *cur;
9401 switch (yych) {
9402 case 0x00:
9403 case 0x01:
9404 case 0x02:
9405 case 0x03:
9406 case 0x04:
9407 case 0x05:
9408 case 0x06:
9409 case 0x07:
9410 case 0x08:
9411 case '\t':
9412 case '\n':
9413 case '\v':
9414 case '\f':
9415 case '\r':
9416 case 0x0E:
9417 case 0x0F:
9418 case 0x10:
9419 case 0x11:
9420 case 0x12:
9421 case 0x13:
9422 case 0x14:
9423 case 0x15:
9424 case 0x16:
9425 case 0x17:
9426 case 0x18:
9427 case 0x19:
9428 case 0x1A:
9429 case 0x1B:
9430 case 0x1C:
9431 case 0x1D:
9432 case 0x1E:
9433 case 0x1F:
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 '}':
9464 case '~':
9465 case 0x7F: goto yy55;
9466 case '\\': goto yy147;
9467 case 'e': goto yy586;
9468 case 'o': goto yy555;
9469 default: goto yy529;
9470 }
9471 yy581:
9472 yyaccept = 3;
9473 yych = *(mrk = ++cur);
9474 switch (yych) {
9475 case 'T':
9476 case 't': goto yy588;
9477 default: goto yy62;
9478 }
9479 yy582:
9480 yyaccept = 77;
9481 yych = *(mrk = ++cur);
9482 switch (yych) {
9483 case 0x00:
9484 case 0x01:
9485 case 0x02:
9486 case 0x03:
9487 case 0x04:
9488 case 0x05:
9489 case 0x06:
9490 case 0x07:
9491 case 0x08:
9492 case '\t':
9493 case '\n':
9494 case '\v':
9495 case '\f':
9496 case '\r':
9497 case 0x0E:
9498 case 0x0F:
9499 case 0x10:
9500 case 0x11:
9501 case 0x12:
9502 case 0x13:
9503 case 0x14:
9504 case 0x15:
9505 case 0x16:
9506 case 0x17:
9507 case 0x18:
9508 case 0x19:
9509 case 0x1A:
9510 case 0x1B:
9511 case 0x1C:
9512 case 0x1D:
9513 case 0x1E:
9514 case 0x1F:
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 '}':
9545 case '~':
9546 case 0x7F: goto yy583;
9547 case '\\': goto yy147;
9548 default: goto yy61;
9549 }
9550 yy583:
9551 #line 227 "src/parser_scan.re"
9552 { NEWTOKEN(PSI_T_POST_ASSERT); goto start; }
9553 #line 9554 "src/parser_scan.c"
9554 yy584:
9555 yyaccept = 3;
9556 yych = *(mrk = ++cur);
9557 switch (yych) {
9558 case '_': goto yy590;
9559 default: goto yy62;
9560 }
9561 yy585:
9562 yyaccept = 3;
9563 yych = *(mrk = ++cur);
9564 switch (yych) {
9565 case '_': goto yy591;
9566 default: goto yy62;
9567 }
9568 yy586:
9569 yyaccept = 78;
9570 mrk = ++cur;
9571 if (lim <= cur) CHECKEOF();;
9572 yych = *cur;
9573 switch (yych) {
9574 case 0x00:
9575 case 0x01:
9576 case 0x02:
9577 case 0x03:
9578 case 0x04:
9579 case 0x05:
9580 case 0x06:
9581 case 0x07:
9582 case 0x08:
9583 case '\t':
9584 case '\n':
9585 case '\v':
9586 case '\f':
9587 case '\r':
9588 case 0x0E:
9589 case 0x0F:
9590 case 0x10:
9591 case 0x11:
9592 case 0x12:
9593 case 0x13:
9594 case 0x14:
9595 case 0x15:
9596 case 0x16:
9597 case 0x17:
9598 case 0x18:
9599 case 0x19:
9600 case 0x1A:
9601 case 0x1B:
9602 case 0x1C:
9603 case 0x1D:
9604 case 0x1E:
9605 case 0x1F:
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 '}':
9636 case '~':
9637 case 0x7F: goto yy587;
9638 case '\\': goto yy147;
9639 case 'o': goto yy555;
9640 default: goto yy529;
9641 }
9642 yy587:
9643 #line 176 "src/parser_scan.re"
9644 { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; }
9645 #line 9646 "src/parser_scan.c"
9646 yy588:
9647 yyaccept = 79;
9648 yych = *(mrk = ++cur);
9649 switch (yych) {
9650 case 0x00:
9651 case 0x01:
9652 case 0x02:
9653 case 0x03:
9654 case 0x04:
9655 case 0x05:
9656 case 0x06:
9657 case 0x07:
9658 case 0x08:
9659 case '\t':
9660 case '\n':
9661 case '\v':
9662 case '\f':
9663 case '\r':
9664 case 0x0E:
9665 case 0x0F:
9666 case 0x10:
9667 case 0x11:
9668 case 0x12:
9669 case 0x13:
9670 case 0x14:
9671 case 0x15:
9672 case 0x16:
9673 case 0x17:
9674 case 0x18:
9675 case 0x19:
9676 case 0x1A:
9677 case 0x1B:
9678 case 0x1C:
9679 case 0x1D:
9680 case 0x1E:
9681 case 0x1F:
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 '}':
9712 case '~':
9713 case 0x7F: goto yy589;
9714 case '\\': goto yy147;
9715 default: goto yy61;
9716 }
9717 yy589:
9718 #line 211 "src/parser_scan.re"
9719 { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; }
9720 #line 9721 "src/parser_scan.c"
9721 yy590:
9722 yyaccept = 3;
9723 yych = *(mrk = ++cur);
9724 switch (yych) {
9725 case '_': goto yy592;
9726 default: goto yy62;
9727 }
9728 yy591:
9729 yyaccept = 3;
9730 yych = *(mrk = ++cur);
9731 switch (yych) {
9732 case '_': goto yy593;
9733 default: goto yy62;
9734 }
9735 yy592:
9736 yyaccept = 3;
9737 yych = *(mrk = ++cur);
9738 switch (yych) {
9739 case '\t':
9740 case '\f':
9741 case ' ': goto yy595;
9742 case '(': goto yy597;
9743 default: goto yy62;
9744 }
9745 yy593:
9746 yyaccept = 80;
9747 yych = *(mrk = ++cur);
9748 switch (yych) {
9749 case 0x00:
9750 case 0x01:
9751 case 0x02:
9752 case 0x03:
9753 case 0x04:
9754 case 0x05:
9755 case 0x06:
9756 case 0x07:
9757 case 0x08:
9758 case '\t':
9759 case '\n':
9760 case '\v':
9761 case '\f':
9762 case '\r':
9763 case 0x0E:
9764 case 0x0F:
9765 case 0x10:
9766 case 0x11:
9767 case 0x12:
9768 case 0x13:
9769 case 0x14:
9770 case 0x15:
9771 case 0x16:
9772 case 0x17:
9773 case 0x18:
9774 case 0x19:
9775 case 0x1A:
9776 case 0x1B:
9777 case 0x1C:
9778 case 0x1D:
9779 case 0x1E:
9780 case 0x1F:
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 '}':
9811 case '~':
9812 case 0x7F: goto yy594;
9813 case '\\': goto yy147;
9814 default: goto yy61;
9815 }
9816 yy594:
9817 #line 179 "src/parser_scan.re"
9818 { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
9819 #line 9820 "src/parser_scan.c"
9820 yy595:
9821 ++cur;
9822 if ((lim - cur) < 2) CHECKEOF();;
9823 yych = *cur;
9824 switch (yych) {
9825 case '\t':
9826 case '\f':
9827 case ' ': goto yy595;
9828 case '(': goto yy597;
9829 default: goto yy114;
9830 }
9831 yy597:
9832 yych = *++cur;
9833 switch (yych) {
9834 case '(': goto yy598;
9835 default: goto yy114;
9836 }
9837 yy598:
9838 ++cur;
9839 #line 253 "src/parser_scan.re"
9840 { parens = 2; goto cpp_attribute; }
9841 #line 9842 "src/parser_scan.c"
9842 }
9843 #line 259 "src/parser_scan.re"
9844
9845
9846 character: ;
9847
9848 #line 9849 "src/parser_scan.c"
9849 {
9850 unsigned char yych;
9851 if (lim <= cur) CHECKEOF();;
9852 yych = *cur;
9853 switch (yych) {
9854 case '\n':
9855 case '\r': goto yy604;
9856 case '\'': goto yy606;
9857 case '\\': goto yy608;
9858 default: goto yy602;
9859 }
9860 yy602:
9861 ++cur;
9862 #line 277 "src/parser_scan.re"
9863 { escaped = false; goto character; }
9864 #line 9865 "src/parser_scan.c"
9865 yy604:
9866 ++cur;
9867 #line 264 "src/parser_scan.re"
9868 { NEWLINE(); goto character; }
9869 #line 9870 "src/parser_scan.c"
9870 yy606:
9871 ++cur;
9872 #line 266 "src/parser_scan.re"
9873 {
9874 if (escaped) {
9875 escaped = false;
9876 goto character;
9877 }
9878 cur -= 1;
9879 NEWTOKEN(PSI_T_QUOTED_CHAR);
9880 cur += 1;
9881 token->flags = char_width;
9882 goto start;
9883 }
9884 #line 9885 "src/parser_scan.c"
9885 yy608:
9886 ++cur;
9887 #line 265 "src/parser_scan.re"
9888 { escaped = !escaped; goto character; }
9889 #line 9890 "src/parser_scan.c"
9890 }
9891 #line 279 "src/parser_scan.re"
9892
9893
9894 string: ;
9895
9896 #line 9897 "src/parser_scan.c"
9897 {
9898 unsigned char yych;
9899 if (lim <= cur) CHECKEOF();;
9900 yych = *cur;
9901 switch (yych) {
9902 case '\n':
9903 case '\r': goto yy614;
9904 case '"': goto yy616;
9905 case '\\': goto yy618;
9906 default: goto yy612;
9907 }
9908 yy612:
9909 ++cur;
9910 #line 297 "src/parser_scan.re"
9911 { escaped = false; goto string; }
9912 #line 9913 "src/parser_scan.c"
9913 yy614:
9914 ++cur;
9915 #line 284 "src/parser_scan.re"
9916 { NEWLINE(); goto string; }
9917 #line 9918 "src/parser_scan.c"
9918 yy616:
9919 ++cur;
9920 #line 286 "src/parser_scan.re"
9921 {
9922 if (escaped) {
9923 escaped = false;
9924 goto string;
9925 }
9926 cur -= 1;
9927 NEWTOKEN(PSI_T_QUOTED_STRING);
9928 cur += 1;
9929 token->flags = char_width;
9930 goto start;
9931 }
9932 #line 9933 "src/parser_scan.c"
9933 yy618:
9934 ++cur;
9935 #line 285 "src/parser_scan.re"
9936 { escaped = !escaped; goto string; }
9937 #line 9938 "src/parser_scan.c"
9938 }
9939 #line 299 "src/parser_scan.re"
9940
9941
9942 comment: ;
9943
9944 #line 9945 "src/parser_scan.c"
9945 {
9946 unsigned char yych;
9947 if ((lim - cur) < 2) CHECKEOF();;
9948 yych = *cur;
9949 switch (yych) {
9950 case '\n':
9951 case '\r': goto yy624;
9952 case '*': goto yy626;
9953 default: goto yy622;
9954 }
9955 yy622:
9956 ++cur;
9957 yy623:
9958 #line 306 "src/parser_scan.re"
9959 { goto comment; }
9960 #line 9961 "src/parser_scan.c"
9961 yy624:
9962 ++cur;
9963 #line 304 "src/parser_scan.re"
9964 { NEWLINE(); goto comment; }
9965 #line 9966 "src/parser_scan.c"
9966 yy626:
9967 yych = *++cur;
9968 switch (yych) {
9969 case '/': goto yy627;
9970 default: goto yy623;
9971 }
9972 yy627:
9973 ++cur;
9974 #line 305 "src/parser_scan.re"
9975 { NEWTOKEN(PSI_T_COMMENT); goto start; }
9976 #line 9977 "src/parser_scan.c"
9977 }
9978 #line 308 "src/parser_scan.re"
9979
9980
9981 comment_sl: ;
9982
9983 #line 9984 "src/parser_scan.c"
9984 {
9985 unsigned char yych;
9986 if (lim <= cur) CHECKEOF();;
9987 yych = *cur;
9988 switch (yych) {
9989 case '\n':
9990 case '\r': goto yy633;
9991 default: goto yy631;
9992 }
9993 yy631:
9994 ++cur;
9995 #line 314 "src/parser_scan.re"
9996 { goto comment_sl; }
9997 #line 9998 "src/parser_scan.c"
9998 yy633:
9999 ++cur;
10000 #line 313 "src/parser_scan.re"
10001 { NEWTOKEN(PSI_T_COMMENT); tok = cur - 1; NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
10002 #line 10003 "src/parser_scan.c"
10003 }
10004 #line 316 "src/parser_scan.re"
10005
10006
10007 cpp_attribute: ;
10008
10009
10010 #line 10011 "src/parser_scan.c"
10011 {
10012 unsigned char yych;
10013 if (lim <= cur) CHECKEOF();;
10014 yych = *cur;
10015 switch (yych) {
10016 case '\n':
10017 case '\r': goto yy639;
10018 case '(': goto yy641;
10019 case ')': goto yy643;
10020 default: goto yy637;
10021 }
10022 yy637:
10023 ++cur;
10024 #line 325 "src/parser_scan.re"
10025 { goto cpp_attribute; }
10026 #line 10027 "src/parser_scan.c"
10027 yy639:
10028 ++cur;
10029 #line 324 "src/parser_scan.re"
10030 { NEWLINE(); goto cpp_attribute; }
10031 #line 10032 "src/parser_scan.c"
10032 yy641:
10033 ++cur;
10034 #line 322 "src/parser_scan.re"
10035 { ++parens; goto cpp_attribute; }
10036 #line 10037 "src/parser_scan.c"
10037 yy643:
10038 ++cur;
10039 #line 323 "src/parser_scan.re"
10040 { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }
10041 #line 10042 "src/parser_scan.c"
10042 }
10043 #line 327 "src/parser_scan.re"
10044
10045 error: ;
10046
10047 P->error(PSI_DATA(P), token, PSI_WARNING, "PSI syntax error: unexpected input (%d) '%.*s' at col %tu",
10048 token->type, token->text->len, token->text->val, tok - eol + 1);
10049 psi_plist_free(tokens);
10050 return NULL;
10051
10052 done: ;
10053
10054 PSI_DEBUG_PRINT(P, "PSI: EOF cur=%p lim=%p\n", cur, lim);
10055
10056 return tokens;
10057 }