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