X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Fparser.c;h=2b62a49f31fbef3466ddc8bd2c3ed55ce5e04ffa;hp=2b6c11ef10e8eb9c3172a3fb73b9b0917255c041;hb=a2a2428b6e50787a7f33151275fb5ceabc7c5621;hpb=6509a2053456d0e63b6f383b757289d3016ed1a5 diff --git a/src/parser.c b/src/parser.c index 2b6c11e..2b62a49 100644 --- a/src/parser.c +++ b/src/parser.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.16 on Tue Mar 7 09:49:40 2017 */ +/* Generated by re2c 0.16 on Tue Jul 25 12:21:22 2017 */ #line 1 "src/parser.re" /******************************************************************************* Copyright (c) 2016, Michael Wallner . @@ -32,21 +32,10 @@ #include "parser.h" -#define YYMAXFILL 12 +#define YYMAXFILL 15 #ifndef YYMAXFILL # define YYMAXFILL 256 #endif -#line 57 "src/parser.re" - - -static void free_cpp_def(zval *p) -{ - if (Z_TYPE_P(p) == IS_PTR) { - psi_cpp_macro_decl_free((void *) &Z_PTR_P(p)); - } else if (Z_REFCOUNTED_P(p)) { - zval_ptr_dtor(p); - } -} struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, unsigned flags) { @@ -57,104 +46,85 @@ struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, uns psi_data_ctor_with_dtors(PSI_DATA(P), error, flags); - P->col = 1; - P->line = 1; - P->proc = psi_parser_proc_init(); - - zend_hash_init(&P->cpp.defs, 0, NULL, free_cpp_def, 1); - zval tmp; - ZVAL_ARR(&tmp, &P->cpp.defs); - add_assoc_string(&tmp, "PHP_OS", PHP_OS); + P->preproc = psi_cpp_init(P); - if (flags & PSI_DEBUG) { - psi_parser_proc_trace(stderr, "PSI> "); - } + psi_cpp_load_defaults(P->preproc); return P; } -void psi_parser_reset(struct psi_parser *P) -{ - P->cur = P->tok = P->mrk = P->input.buffer; - P->lim = P->input.buffer + P->input.length; -} - -bool psi_parser_open_file(struct psi_parser *P, const char *filename) +struct psi_parser_input *psi_parser_open_file(struct psi_parser *P, const char *filename, bool report_errors) { struct stat sb; FILE *fp; - char *fb; + struct psi_parser_input *fb; if (stat(filename, &sb)) { - P->error(PSI_DATA(P), NULL, PSI_WARNING, - "Could not stat '%s': %s", - filename, strerror(errno)); - return false; + if (report_errors) { + P->error(PSI_DATA(P), NULL, PSI_WARNING, + "Could not stat '%s': %s", + filename, strerror(errno)); + } + return NULL; } - if (!(fb = malloc(sb.st_size + YYMAXFILL))) { - P->error(PSI_DATA(P), NULL, PSI_WARNING, - "Could not allocate %zu bytes for reading '%s': %s", - sb.st_size + YYMAXFILL, filename, strerror(errno)); - return false; + if (!(fb = malloc(sizeof(*fb) + strlen(filename) + 1 + sb.st_size + YYMAXFILL))) { + if (report_errors) { + P->error(PSI_DATA(P), NULL, PSI_WARNING, + "Could not allocate %zu bytes for reading '%s': %s", + sb.st_size + YYMAXFILL, filename, strerror(errno)); + } + return NULL; } if (!(fp = fopen(filename, "r"))) { free(fb); - P->error(PSI_DATA(P), NULL, PSI_WARNING, - "Could not open '%s' for reading: %s", - filename, strerror(errno)); - return false; + if (report_errors) { + P->error(PSI_DATA(P), NULL, PSI_WARNING, + "Could not open '%s' for reading: %s", + filename, strerror(errno)); + } + return NULL; } - if (sb.st_size != fread(fb, 1, sb.st_size, fp)) { + if (sb.st_size != fread(fb->buffer, 1, sb.st_size, fp)) { free(fb); fclose(fp); - P->error(PSI_DATA(P), NULL, PSI_WARNING, - "Could not read %zu bytes from '%s': %s", - sb.st_size + YYMAXFILL, filename, strerror(errno)); - return false; - } - memset(fb + sb.st_size, 0, YYMAXFILL); - - if (P->input.buffer) { - free(P->input.buffer); + if (report_errors) { + P->error(PSI_DATA(P), NULL, PSI_WARNING, + "Could not read %zu bytes from '%s': %s", + sb.st_size + YYMAXFILL, filename, strerror(errno)); + } + return NULL; } - P->input.buffer = fb; - P->input.length = sb.st_size; - P->file.fn = strdup(filename); + memset(fb->buffer + sb.st_size, 0, YYMAXFILL); + fb->length = sb.st_size; + fb->file = &fb->buffer[sb.st_size + YYMAXFILL]; + memcpy(fb->file, filename, strlen(filename) + 1); - psi_parser_reset(P); - - return true; + return fb; } -bool psi_parser_open_string(struct psi_parser *P, const char *string, size_t length) +struct psi_parser_input *psi_parser_open_string(struct psi_parser *P, const char *string, size_t length) { - char *sb; + struct psi_parser_input *sb; - if (!(sb = malloc(length + YYMAXFILL))) { + if (!(sb = malloc(sizeof(*sb) + sizeof("") + length + YYMAXFILL))) { P->error(PSI_DATA(P), NULL, PSI_WARNING, "Could not allocate %zu bytes: %s", length + YYMAXFILL, strerror(errno)); - return false; - } - - memcpy(sb, string, length); - memset(sb + length, 0, YYMAXFILL); - - if (P->input.buffer) { - free(P->input.buffer); + return NULL; } - P->input.buffer = sb; - P->input.length = length; - P->file.fn = strdup(""); + memcpy(sb->buffer, string, length); + memset(sb->buffer + length, 0, YYMAXFILL); - psi_parser_reset(P); + sb->length = length; + sb->file = &sb->buffer[length + YYMAXFILL]; + memcpy(sb->file, "", sizeof("")); - return true; + return sb; } #if 0 @@ -213,43 +183,50 @@ static void psi_parser_register_constants(struct psi_parser *P) } #endif -void psi_parser_parse(struct psi_parser *P) +struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist **tokens) { - size_t i = 0; - struct psi_token *T; + if (psi_cpp_process(P->preproc, tokens)) { + return *tokens; + } + return NULL; +} - P->cpp.tokens = psi_parser_scan(P); +bool psi_parser_process(struct psi_parser *P, struct psi_plist *tokens, size_t *processed) +{ + if (psi_plist_count(tokens)) { + return 0 == psi_parser_proc_parse(P, tokens, processed); + } + return true; +} - psi_cpp_preprocess(P, &P->cpp); +bool psi_parser_parse(struct psi_parser *P, struct psi_parser_input *I) +{ + struct psi_plist *scanned, *preproc; + size_t processed = 0; - if (psi_plist_count(P->cpp.tokens)) { - while (psi_plist_get(P->cpp.tokens, i++, &T)) { - if (P->flags & PSI_DEBUG) { - fprintf(stderr, "PSI> "); - psi_token_dump(2, T); - } - psi_parser_proc_parse(P->proc, T->type, T, P); - } - psi_parser_proc_parse(P->proc, 0, NULL, P); + if (!(scanned = psi_parser_scan(P, I))) { + return false; + } + + if (!(preproc = psi_parser_preprocess(P, &scanned))) { + psi_plist_free(scanned); + return false; + } + + if (!psi_parser_process(P, preproc, &processed)) { + psi_plist_free(preproc); + return false; } - psi_plist_free(P->cpp.tokens); - P->cpp.tokens = NULL; + psi_plist_free(preproc); + return true; } void psi_parser_dtor(struct psi_parser *P) { - psi_parser_proc_free(&P->proc); - - if (P->input.buffer) { - free(P->input.buffer); - P->input.buffer = NULL; - } - + psi_cpp_free(&P->preproc); psi_data_dtor(PSI_DATA(P)); - zend_hash_destroy(&P->cpp.defs); - memset(P, 0, sizeof(*P)); } @@ -263,62 +240,101 @@ void psi_parser_free(struct psi_parser **P) } #define NEWLINE() \ - P->col = 1; \ - ++P->line + eol = cur; \ + ++I->lines #define NEWTOKEN(t) \ - P->num = t; \ - token = psi_token_alloc(P); \ + token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \ tokens = psi_plist_add(tokens, &token); \ - P->col += P->cur - P->tok; \ if (P->flags & PSI_DEBUG) { \ fprintf(stderr, "PSI< "); \ psi_token_dump(2, token); \ - } \ - token = NULL + } +union int_suffix { + char s[SIZEOF_UINT32_T]; + uint32_t i; +}; -struct psi_plist *psi_parser_scan(struct psi_parser *P) +struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input *I) { struct psi_plist *tokens; struct psi_token *token; + const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk; + unsigned parens; + bool escaped; + token_t char_width; - if (!P->cur) { - return NULL; - } - - tokens = psi_plist_init(NULL); + tok = mrk = eol = cur = I->buffer; + lim = I->buffer + I->length; + I->lines = 1; + tokens = psi_plist_init((psi_plist_dtor) psi_token_free); start: ; - P->tok = P->cur; + char_width = 1; + ctxmrk = NULL; + tok = cur; -#line 297 "src/parser.c" +#line 280 "src/parser.c" { unsigned char yych; unsigned int yyaccept = 0; - if ((P->lim - P->cur) < 12) if (P->cur >= P->lim) goto done;; - yych = *P->cur; - switch (yych) { + if ((lim - cur) < 15) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\v': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case '@': + case '`': + case 0x7F: goto yy2; case '\t': + case '\f': case ' ': goto yy4; case '\n': case '\r': goto yy7; case '!': goto yy9; case '"': goto yy11; - case '#': goto yy12; - case '$': goto yy14; - case '%': goto yy15; - case '&': goto yy17; - case '(': goto yy19; - case ')': goto yy21; - case '*': goto yy23; - case '+': goto yy25; - case ',': goto yy27; - case '-': goto yy29; - case '.': goto yy31; - case '/': goto yy32; - case '0': + case '#': goto yy13; + case '$': goto yy15; + case '%': goto yy16; + case '&': goto yy18; + case '\'': goto yy20; + case '(': goto yy22; + case ')': goto yy24; + case '*': goto yy26; + case '+': goto yy28; + case ',': goto yy30; + case '-': goto yy32; + case '.': goto yy34; + case '/': goto yy36; + case '0': goto yy38; case '1': case '2': case '3': @@ -327,124 +343,367 @@ struct psi_plist *psi_parser_scan(struct psi_parser *P) case '6': case '7': case '8': - case '9': goto yy34; - case ':': goto yy37; - case ';': goto yy39; - case '<': goto yy41; - case '=': goto yy43; - case '>': goto yy45; + case '9': goto yy40; + case ':': goto yy42; + case ';': goto yy44; + case '<': goto yy46; + case '=': goto yy48; + case '>': goto yy50; + case '?': goto yy52; case 'A': - case 'a': goto yy47; + case 'a': goto yy54; case 'B': - case 'b': goto yy49; + case 'b': goto yy56; case 'C': - case 'c': goto yy50; + case 'c': goto yy57; case 'D': - case 'd': goto yy51; + case 'd': goto yy58; case 'E': - case 'e': goto yy52; + case 'e': goto yy59; case 'F': - case 'f': goto yy53; - case 'G': - case 'H': - case 'J': - case 'K': - case 'Q': - case 'X': - case 'Y': - case '_': - case 'g': - case 'h': - case 'j': - case 'k': - case 'q': - case 'x': - case 'y': goto yy54; + case 'f': goto yy60; case 'I': - case 'i': goto yy56; - case 'L': - case 'l': goto yy57; + case 'i': goto yy63; + case 'L': goto yy64; case 'M': - case 'm': goto yy58; + case 'm': goto yy65; case 'N': - case 'n': goto yy59; + case 'n': goto yy66; case 'O': - case 'o': goto yy60; - case 'P': - case 'p': goto yy61; + case 'o': goto yy67; + case 'P': goto yy68; case 'R': - case 'r': goto yy62; + case 'r': goto yy69; case 'S': - case 's': goto yy63; + case 's': goto yy70; case 'T': - case 't': goto yy64; - case 'U': - case 'u': goto yy65; + case 't': goto yy71; + case 'U': goto yy72; case 'V': - case 'v': goto yy66; + case 'v': goto yy73; case 'W': - case 'w': goto yy67; + case 'w': goto yy74; case 'Z': - case 'z': goto yy68; - case '[': goto yy69; - case '\\': goto yy71; - case ']': goto yy73; - case '^': goto yy75; - case '{': goto yy77; - case '|': goto yy79; - case '}': goto yy81; - case '~': goto yy83; - default: goto yy2; + case 'z': goto yy75; + case '[': goto yy76; + case '\\': goto yy78; + case ']': goto yy80; + case '^': goto yy82; + case '_': goto yy84; + case 'l': goto yy85; + case 'p': goto yy86; + case 'u': goto yy87; + case '{': goto yy88; + case '|': goto yy90; + case '}': goto yy92; + case '~': goto yy94; + default: goto yy61; } yy2: - ++P->cur; + ++cur; yy3: -#line 426 "src/parser.re" - { goto error; } -#line 405 "src/parser.c" +#line 450 "src/parser.re" + { NEWTOKEN(-2); goto error; } +#line 408 "src/parser.c" yy4: - ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; + ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case '\t': + case '\f': case ' ': goto yy4; default: goto yy6; } yy6: -#line 425 "src/parser.re" +#line 449 "src/parser.re" { NEWTOKEN(PSI_T_WHITESPACE); goto start; } -#line 418 "src/parser.c" +#line 422 "src/parser.c" yy7: - ++P->cur; -#line 424 "src/parser.re" + ++cur; +#line 448 "src/parser.re" { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; } -#line 423 "src/parser.c" +#line 427 "src/parser.c" yy9: - ++P->cur; - switch ((yych = *P->cur)) { - case '=': goto yy85; + ++cur; + switch ((yych = *cur)) { + case '=': goto yy96; default: goto yy10; } yy10: -#line 333 "src/parser.re" +#line 347 "src/parser.re" { NEWTOKEN(PSI_T_NOT); goto start; } -#line 433 "src/parser.c" +#line 437 "src/parser.c" yy11: + ++cur; +#line 320 "src/parser.re" + { escaped = false; tok += 1; goto string; } +#line 442 "src/parser.c" +yy13: + ++cur; + switch ((yych = *cur)) { + case '#': goto yy98; + default: goto yy14; + } +yy14: +#line 330 "src/parser.re" + { NEWTOKEN(PSI_T_HASH); goto start; } +#line 452 "src/parser.c" +yy15: + yych = *++cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case '\\': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy3; + default: goto yy100; + } +yy16: + ++cur; +#line 348 "src/parser.re" + { NEWTOKEN(PSI_T_MODULO); goto start; } +#line 527 "src/parser.c" +yy18: + ++cur; + switch ((yych = *cur)) { + case '&': goto yy103; + default: goto yy19; + } +yy19: +#line 349 "src/parser.re" + { NEWTOKEN(PSI_T_AMPERSAND); goto start; } +#line 537 "src/parser.c" +yy20: + ++cur; +#line 319 "src/parser.re" + { escaped = false; tok += 1; goto character; } +#line 542 "src/parser.c" +yy22: + ++cur; +#line 331 "src/parser.re" + { NEWTOKEN(PSI_T_LPAREN); goto start; } +#line 547 "src/parser.c" +yy24: + ++cur; +#line 332 "src/parser.re" + { NEWTOKEN(PSI_T_RPAREN); goto start; } +#line 552 "src/parser.c" +yy26: + ++cur; +#line 345 "src/parser.re" + { NEWTOKEN(PSI_T_ASTERISK); goto start; } +#line 557 "src/parser.c" +yy28: yyaccept = 0; - yych = *(P->mrk = ++P->cur); + yych = *(mrk = ++cur); switch (yych) { - case '"': goto yy3; - default: goto yy87; + case '.': goto yy105; + case '0': goto yy38; + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy40; + default: goto yy29; } -yy12: - ++P->cur; -#line 316 "src/parser.re" - { NEWTOKEN(PSI_T_HASH); goto start; } -#line 445 "src/parser.c" -yy14: - yych = *++P->cur; +yy29: +#line 350 "src/parser.re" + { NEWTOKEN(PSI_T_PLUS); goto start; } +#line 578 "src/parser.c" +yy30: + ++cur; +#line 334 "src/parser.re" + { NEWTOKEN(PSI_T_COMMA); goto start; } +#line 583 "src/parser.c" +yy32: + yyaccept = 1; + yych = *(mrk = ++cur); + switch (yych) { + case '.': goto yy105; + case '0': goto yy38; + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy40; + default: goto yy33; + } +yy33: +#line 351 "src/parser.re" + { NEWTOKEN(PSI_T_MINUS); goto start; } +#line 604 "src/parser.c" +yy34: + yyaccept = 2; + yych = *(mrk = ++cur); + switch (yych) { + case '.': goto yy107; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy108; + default: goto yy35; + } +yy35: +#line 362 "src/parser.re" + { NEWTOKEN(PSI_T_PERIOD); goto start; } +#line 625 "src/parser.c" +yy36: + ++cur; + switch ((yych = *cur)) { + case '*': goto yy111; + case '/': goto yy113; + default: goto yy37; + } +yy37: +#line 352 "src/parser.re" + { NEWTOKEN(PSI_T_SLASH); goto start; } +#line 636 "src/parser.c" +yy38: + yyaccept = 3; + yych = *(mrk = ++cur); + ctxmrk = cur; + switch (yych) { + case '.': goto yy115; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': goto yy117; + case 'E': + case 'e': goto yy119; + case 'L': + case 'l': goto yy120; + case 'U': + case 'u': goto yy122; + case 'X': + case 'x': goto yy124; + default: goto yy39; + } +yy39: +#line 306 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; } +#line 664 "src/parser.c" +yy40: + yyaccept = 3; + mrk = ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; + ctxmrk = cur; + switch (yych) { + case '.': goto yy115; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy40; + case 'E': + case 'e': goto yy119; + case 'L': + case 'l': goto yy120; + case 'U': + case 'u': goto yy122; + default: goto yy39; + } +yy42: + ++cur; +#line 335 "src/parser.re" + { NEWTOKEN(PSI_T_COLON); goto start; } +#line 695 "src/parser.c" +yy44: + ++cur; +#line 333 "src/parser.re" + { NEWTOKEN(PSI_T_EOS); goto start; } +#line 700 "src/parser.c" +yy46: + yyaccept = 4; + yych = *(mrk = ++cur); switch (yych) { + case '-': + case '.': + case '/': case '0': case '1': case '2': @@ -507,569 +766,695 @@ yy14: case 'w': case 'x': case 'y': - case 'z': goto yy89; - default: goto yy3; + case 'z': goto yy125; + case '<': goto yy127; + case '=': goto yy129; + default: goto yy47; } -yy15: - ++P->cur; -#line 334 "src/parser.re" - { NEWTOKEN(PSI_T_MODULO); goto start; } -#line 518 "src/parser.c" -yy17: - ++P->cur; - switch ((yych = *P->cur)) { - case '&': goto yy92; - default: goto yy18; +yy47: +#line 360 "src/parser.re" + { NEWTOKEN(PSI_T_LCHEVR); goto start; } +#line 778 "src/parser.c" +yy48: + ++cur; + switch ((yych = *cur)) { + case '=': goto yy131; + default: goto yy49; } -yy18: -#line 335 "src/parser.re" - { NEWTOKEN(PSI_T_AMPERSAND); goto start; } -#line 528 "src/parser.c" -yy19: - ++P->cur; -#line 317 "src/parser.re" - { NEWTOKEN(PSI_T_LPAREN); goto start; } -#line 533 "src/parser.c" -yy21: - ++P->cur; -#line 318 "src/parser.re" - { NEWTOKEN(PSI_T_RPAREN); goto start; } -#line 538 "src/parser.c" -yy23: - ++P->cur; -#line 331 "src/parser.re" - { NEWTOKEN(PSI_T_ASTERISK); goto start; } -#line 543 "src/parser.c" -yy25: - yyaccept = 1; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '.': goto yy94; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy34; - default: goto yy26; +yy49: +#line 344 "src/parser.re" + { NEWTOKEN(PSI_T_EQUALS); goto start; } +#line 788 "src/parser.c" +yy50: + ++cur; + switch ((yych = *cur)) { + case '=': goto yy133; + case '>': goto yy135; + default: goto yy51; } -yy26: -#line 336 "src/parser.re" - { NEWTOKEN(PSI_T_PLUS); goto start; } -#line 564 "src/parser.c" -yy27: - ++P->cur; -#line 320 "src/parser.re" - { NEWTOKEN(PSI_T_COMMA); goto start; } -#line 569 "src/parser.c" -yy29: - yyaccept = 2; - yych = *(P->mrk = ++P->cur); +yy51: +#line 361 "src/parser.re" + { NEWTOKEN(PSI_T_RCHEVR); goto start; } +#line 799 "src/parser.c" +yy52: + ++cur; +#line 364 "src/parser.re" + { NEWTOKEN(PSI_T_IIF); goto start; } +#line 804 "src/parser.c" +yy54: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy94; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy34; - default: goto yy30; + case 'R': + case 'r': goto yy137; + default: goto yy62; } -yy30: -#line 337 "src/parser.re" - { NEWTOKEN(PSI_T_MINUS); goto start; } -#line 590 "src/parser.c" -yy31: - yyaccept = 0; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '.': goto yy96; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy97; - default: goto yy3; - } -yy32: - ++P->cur; - switch ((yych = *P->cur)) { - case '*': goto yy99; - case '/': goto yy101; - default: goto yy33; - } -yy33: -#line 338 "src/parser.re" - { NEWTOKEN(PSI_T_SLASH); goto start; } -#line 618 "src/parser.c" -yy34: - yyaccept = 3; - P->mrk = ++P->cur; - if ((P->lim - P->cur) < 3) if (P->cur >= P->lim) goto done;; - yych = *P->cur; - switch (yych) { - case '.': goto yy94; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy34; - case 'E': - case 'e': goto yy103; - default: goto yy36; - } -yy36: -#line 419 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); goto start; } -#line 643 "src/parser.c" -yy37: - ++P->cur; -#line 321 "src/parser.re" - { NEWTOKEN(PSI_T_COLON); goto start; } -#line 648 "src/parser.c" -yy39: - ++P->cur; -#line 319 "src/parser.re" - { NEWTOKEN(PSI_T_EOS); goto start; } -#line 653 "src/parser.c" -yy41: - ++P->cur; - switch ((yych = *P->cur)) { - case '<': goto yy104; - case '=': goto yy106; - default: goto yy42; - } -yy42: -#line 346 "src/parser.re" - { NEWTOKEN(PSI_T_LCHEVR); goto start; } -#line 664 "src/parser.c" -yy43: - ++P->cur; - switch ((yych = *P->cur)) { - case '=': goto yy108; - default: goto yy44; - } -yy44: -#line 330 "src/parser.re" - { NEWTOKEN(PSI_T_EQUALS); goto start; } -#line 674 "src/parser.c" -yy45: - ++P->cur; - switch ((yych = *P->cur)) { - case '=': goto yy110; - case '>': goto yy112; - default: goto yy46; - } -yy46: -#line 347 "src/parser.re" - { NEWTOKEN(PSI_T_RCHEVR); goto start; } -#line 685 "src/parser.c" -yy47: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy114; - default: goto yy55; - } -yy48: -#line 420 "src/parser.re" +yy55: +#line 443 "src/parser.re" { NEWTOKEN(PSI_T_NAME); goto start; } -#line 697 "src/parser.c" -yy49: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +#line 816 "src/parser.c" +yy56: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy116; - default: goto yy55; + case 'o': goto yy139; + default: goto yy62; } -yy50: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy57: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy117; + case 'a': goto yy140; case 'H': - case 'h': goto yy118; + case 'h': goto yy141; case 'O': - case 'o': goto yy119; - default: goto yy55; + case 'o': goto yy142; + default: goto yy62; } -yy51: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy58: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy120; + case 'e': goto yy143; case 'O': - case 'o': goto yy121; - default: goto yy55; + case 'o': goto yy144; + default: goto yy62; } -yy52: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy59: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy122; + case 'l': goto yy145; case 'N': - case 'n': goto yy123; + case 'n': goto yy146; case 'R': - case 'r': goto yy124; - default: goto yy55; + case 'r': goto yy147; + default: goto yy62; } -yy53: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy60: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy125; + case 'a': goto yy148; case 'L': - case 'l': goto yy126; + case 'l': goto yy149; case 'R': - case 'r': goto yy127; + case 'r': goto yy150; case 'U': - case 'u': goto yy128; - default: goto yy55; + case 'u': goto yy151; + default: goto yy62; } -yy54: - yyaccept = 4; - P->mrk = ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; -yy55: +yy61: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; +yy62: switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy48; + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\\': goto yy138; + default: goto yy61; } -yy56: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy63: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy129; + case 'f': goto yy152; case 'N': - case 'n': goto yy131; - default: goto yy55; + case 'n': goto yy154; + default: goto yy62; } -yy57: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy64: + yyaccept = 5; + yych = *(mrk = ++cur); + ctxmrk = cur; switch (yych) { + case '"': + case '\'': goto yy155; case 'E': - case 'e': goto yy132; + case 'e': goto yy157; case 'I': - case 'i': goto yy133; + case 'i': goto yy158; case 'O': - case 'o': goto yy134; - default: goto yy55; + case 'o': goto yy159; + default: goto yy62; } -yy58: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy65: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy135; - default: goto yy55; + case 'i': goto yy160; + default: goto yy62; } -yy59: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy66: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy136; - default: goto yy55; + case 'u': goto yy161; + default: goto yy62; } -yy60: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy67: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'B': - case 'b': goto yy137; - default: goto yy55; + case 'b': goto yy162; + default: goto yy62; } -yy61: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy68: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy138; + case 'a': goto yy163; case 'O': - case 'o': goto yy139; + case 'o': goto yy164; case 'R': - case 'r': goto yy140; - default: goto yy55; + case 'r': goto yy165; + default: goto yy62; } -yy62: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy69: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy141; - default: goto yy55; + case 'e': goto yy166; + default: goto yy62; } -yy63: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy70: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy142; + case 'e': goto yy167; case 'H': - case 'h': goto yy143; + case 'h': goto yy168; case 'I': - case 'i': goto yy144; + case 'i': goto yy169; case 'T': - case 't': goto yy145; - default: goto yy55; + case 't': goto yy170; + default: goto yy62; } -yy64: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy71: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy146; + case 'e': goto yy171; case 'O': - case 'o': goto yy147; + case 'o': goto yy172; case 'R': - case 'r': goto yy148; + case 'r': goto yy173; case 'Y': - case 'y': goto yy149; - default: goto yy55; + case 'y': goto yy174; + default: goto yy62; } -yy65: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy72: + yyaccept = 5; + yych = *(mrk = ++cur); + ctxmrk = cur; switch (yych) { + case '"': + case '\'': goto yy175; case 'I': - case 'i': goto yy150; + case 'i': goto yy177; case 'N': - case 'n': goto yy151; - default: goto yy55; + case 'n': goto yy178; + default: goto yy62; } -yy66: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy73: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy152; - default: goto yy55; + case 'o': goto yy179; + default: goto yy62; } -yy67: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy74: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy153; - default: goto yy55; + case 'a': goto yy180; + default: goto yy62; } -yy68: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy75: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'V': - case 'v': goto yy154; - default: goto yy55; + case 'v': goto yy181; + default: goto yy62; } -yy69: - ++P->cur; -#line 324 "src/parser.re" +yy76: + ++cur; +#line 338 "src/parser.re" { NEWTOKEN(PSI_T_LBRACKET); goto start; } -#line 959 "src/parser.c" -yy71: - ++P->cur; - switch ((yych = *P->cur)) { - case 'A': - case 'B': - case 'C': - case 'D': +#line 1085 "src/parser.c" +yy78: + ++cur; + switch ((yych = *cur)) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case '\\': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy79; + default: goto yy182; + } +yy79: +#line 353 "src/parser.re" + { NEWTOKEN(PSI_T_BSLASH); goto start; } +#line 1169 "src/parser.c" +yy80: + ++cur; +#line 339 "src/parser.re" + { NEWTOKEN(PSI_T_RBRACKET); goto start; } +#line 1174 "src/parser.c" +yy82: + ++cur; +#line 355 "src/parser.re" + { NEWTOKEN(PSI_T_CARET); goto start; } +#line 1179 "src/parser.c" +yy84: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy185; + default: goto yy62; + } +yy85: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': + case 'e': goto yy157; + case 'I': goto yy158; case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy155; - default: goto yy72; + case 'o': goto yy159; + case 'i': goto yy186; + default: goto yy62; } -yy72: -#line 339 "src/parser.re" - { NEWTOKEN(PSI_T_BSLASH); goto start; } -#line 1021 "src/parser.c" -yy73: - ++P->cur; -#line 325 "src/parser.re" - { NEWTOKEN(PSI_T_RBRACKET); goto start; } -#line 1026 "src/parser.c" -yy75: - ++P->cur; -#line 341 "src/parser.re" - { NEWTOKEN(PSI_T_CARET); goto start; } -#line 1031 "src/parser.c" -yy77: - ++P->cur; -#line 322 "src/parser.re" +yy86: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy163; + case 'O': + case 'o': goto yy164; + case 'R': goto yy165; + case 'r': goto yy187; + default: goto yy62; + } +yy87: + yyaccept = 5; + yych = *(mrk = ++cur); + ctxmrk = cur; + switch (yych) { + case '"': + case '\'': goto yy188; + case '8': goto yy190; + case 'I': + case 'i': goto yy177; + case 'N': + case 'n': goto yy178; + default: goto yy62; + } +yy88: + ++cur; +#line 336 "src/parser.re" { NEWTOKEN(PSI_T_LBRACE); goto start; } -#line 1036 "src/parser.c" -yy79: - ++P->cur; - switch ((yych = *P->cur)) { - case '|': goto yy158; - default: goto yy80; +#line 1229 "src/parser.c" +yy90: + ++cur; + switch ((yych = *cur)) { + case '|': goto yy191; + default: goto yy91; } -yy80: -#line 340 "src/parser.re" +yy91: +#line 354 "src/parser.re" { NEWTOKEN(PSI_T_PIPE); goto start; } -#line 1046 "src/parser.c" -yy81: - ++P->cur; -#line 323 "src/parser.re" +#line 1239 "src/parser.c" +yy92: + ++cur; +#line 337 "src/parser.re" { NEWTOKEN(PSI_T_RBRACE); goto start; } -#line 1051 "src/parser.c" -yy83: - ++P->cur; -#line 332 "src/parser.re" +#line 1244 "src/parser.c" +yy94: + ++cur; +#line 346 "src/parser.re" { NEWTOKEN(PSI_T_TILDE); goto start; } -#line 1056 "src/parser.c" -yy85: - ++P->cur; -#line 326 "src/parser.re" +#line 1249 "src/parser.c" +yy96: + ++cur; +#line 340 "src/parser.re" { NEWTOKEN(PSI_T_CMP_NE); goto start; } -#line 1061 "src/parser.c" -yy87: - ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; +#line 1254 "src/parser.c" +yy98: + ++cur; +#line 329 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_PASTE); goto start; } +#line 1259 "src/parser.c" +yy100: + ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case '\\': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy102; + default: goto yy100; + } +yy102: +#line 445 "src/parser.re" + { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; } +#line 1335 "src/parser.c" +yy103: + ++cur; +#line 342 "src/parser.re" + { NEWTOKEN(PSI_T_AND); goto start; } +#line 1340 "src/parser.c" +yy105: + yych = *++cur; switch (yych) { - case '"': goto yy160; - default: goto yy87; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy108; + default: goto yy106; + } +yy106: + cur = mrk; + switch (yyaccept) { + case 0: goto yy29; + case 1: goto yy33; + case 2: goto yy35; + case 3: goto yy39; + case 4: goto yy47; + case 5: goto yy55; + case 6: goto yy110; + case 7: goto yy121; + case 8: goto yy153; + case 9: goto yy184; + case 10: goto yy229; + case 11: goto yy231; + case 12: goto yy233; + case 13: goto yy243; + case 14: goto yy279; + case 15: goto yy282; + case 16: goto yy288; + case 17: goto yy290; + case 18: goto yy293; + case 19: goto yy298; + case 20: goto yy309; + case 21: goto yy312; + case 22: goto yy327; + case 23: goto yy335; + case 24: goto yy342; + case 25: goto yy345; + case 26: goto yy351; + case 27: goto yy354; + case 28: goto yy361; + case 29: goto yy363; + case 30: goto yy367; + case 31: goto yy369; + case 32: goto yy371; + case 33: goto yy373; + case 34: goto yy376; + case 35: goto yy385; + case 36: goto yy393; + case 37: goto yy412; + case 38: goto yy414; + case 39: goto yy423; + case 40: goto yy428; + case 41: goto yy430; + case 42: goto yy432; + case 43: goto yy436; + case 44: goto yy442; + case 45: goto yy444; + case 46: goto yy446; + case 47: goto yy448; + case 48: goto yy453; + case 49: goto yy455; + case 50: goto yy457; + case 51: goto yy459; + case 52: goto yy461; + case 53: goto yy463; + case 54: goto yy465; + case 55: goto yy470; + case 56: goto yy485; + case 57: goto yy487; + case 58: goto yy491; + case 59: goto yy495; + case 60: goto yy497; + case 61: goto yy499; + case 62: goto yy501; + case 63: goto yy503; + case 64: goto yy508; + case 65: goto yy513; + case 66: goto yy518; + case 67: goto yy521; + case 68: goto yy523; + case 69: goto yy530; + case 70: goto yy532; + case 71: goto yy534; + case 72: goto yy536; + case 73: goto yy541; + case 74: goto yy543; + case 75: goto yy547; + case 76: goto yy549; + case 77: goto yy551; + case 78: goto yy553; + case 79: goto yy563; + case 80: goto yy565; + case 81: goto yy573; + case 82: goto yy577; + case 83: goto yy581; + case 84: goto yy585; + case 85: goto yy587; + default: goto yy592; + } +yy107: + yych = *++cur; + switch (yych) { + case '.': goto yy193; + default: goto yy106; } -yy89: - ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; +yy108: + yyaccept = 6; + mrk = ++cur; + if ((lim - cur) < 2) if (cur >= lim) goto done;; + yych = *cur; + ctxmrk = cur; switch (yych) { case '0': case '1': @@ -1080,74 +1465,81 @@ yy89: case '6': case '7': case '8': - case '9': - case 'A': - case 'B': - case 'C': + case '9': goto yy108; + case 'D': + case 'd': goto yy195; + case 'F': + case 'f': goto yy196; + case 'L': + case 'l': goto yy198; + default: goto yy110; + } +yy110: +#line 312 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; } +#line 1481 "src/parser.c" +yy111: + ++cur; +#line 326 "src/parser.re" + { goto comment; } +#line 1486 "src/parser.c" +yy113: + ++cur; +#line 327 "src/parser.re" + { goto comment_sl; } +#line 1491 "src/parser.c" +yy115: + yyaccept = 6; + mrk = ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; + ctxmrk = cur; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy115; case 'D': + case 'd': goto yy195; case 'E': + case 'e': goto yy119; case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': + case 'f': goto yy196; case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': + case 'l': goto yy198; + default: goto yy110; + } +yy117: + ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; + ctxmrk = cur; + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': goto yy117; + case 'L': + case 'l': goto yy120; case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy89; - default: goto yy91; + case 'u': goto yy122; + default: goto yy39; } -yy91: -#line 422 "src/parser.re" - { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; } -#line 1143 "src/parser.c" -yy92: - ++P->cur; -#line 328 "src/parser.re" - { NEWTOKEN(PSI_T_AND); goto start; } -#line 1148 "src/parser.c" -yy94: - yych = *++P->cur; +yy119: + yych = *++cur; switch (yych) { + case '+': + case '-': goto yy105; case '0': case '1': case '2': @@ -1157,100 +1549,38 @@ yy94: case '6': case '7': case '8': - case '9': goto yy97; - default: goto yy95; - } -yy95: - P->cur = P->mrk; - switch (yyaccept) { - case 0: goto yy3; - case 1: goto yy26; - case 2: goto yy30; - case 3: goto yy36; - case 4: goto yy48; - case 5: goto yy130; - case 6: goto yy157; - case 7: goto yy187; - case 8: goto yy189; - case 9: goto yy191; - case 10: goto yy201; - case 11: goto yy220; - case 12: goto yy223; - case 13: goto yy229; - case 14: goto yy231; - case 15: goto yy234; - case 16: goto yy239; - case 17: goto yy249; - case 18: goto yy252; - case 19: goto yy267; - case 20: goto yy275; - case 21: goto yy282; - case 22: goto yy285; - case 23: goto yy287; - case 24: goto yy294; - case 25: goto yy296; - case 26: goto yy300; - case 27: goto yy302; - case 28: goto yy304; - case 29: goto yy306; - case 30: goto yy309; - case 31: goto yy317; - case 32: goto yy325; - case 33: goto yy344; - case 34: goto yy346; - case 35: goto yy350; - case 36: goto yy355; - case 37: goto yy357; - case 38: goto yy359; - case 39: goto yy363; - case 40: goto yy368; - case 41: goto yy370; - case 42: goto yy372; - case 43: goto yy374; - case 44: goto yy379; - case 45: goto yy381; - case 46: goto yy383; - case 47: goto yy385; - case 48: goto yy387; - case 49: goto yy389; - case 50: goto yy391; - case 51: goto yy396; - case 52: goto yy407; - case 53: goto yy411; - case 54: goto yy415; - case 55: goto yy417; - case 56: goto yy419; - case 57: goto yy421; - case 58: goto yy426; - case 59: goto yy431; - case 60: goto yy436; - case 61: goto yy439; - case 62: goto yy441; - case 63: goto yy443; - case 64: goto yy445; - case 65: goto yy447; - case 66: goto yy451; - case 67: goto yy453; - case 68: goto yy457; - case 69: goto yy459; - case 70: goto yy461; - case 71: goto yy463; - case 72: goto yy467; - case 73: goto yy469; - case 74: goto yy472; - default: goto yy474; + case '9': goto yy108; + default: goto yy106; } -yy96: - yych = *++P->cur; +yy120: + yyaccept = 7; + yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy162; - default: goto yy95; + case 'L': + case 'l': goto yy200; + case 'U': + case 'u': goto yy201; + default: goto yy121; } -yy97: - yyaccept = 3; - P->mrk = ++P->cur; - if ((P->lim - P->cur) < 3) if (P->cur >= P->lim) goto done;; - yych = *P->cur; +yy121: + cur = ctxmrk; +#line 308 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; } +#line 1570 "src/parser.c" +yy122: + ++cur; + switch ((yych = *cur)) { + case 'L': + case 'l': goto yy203; + default: goto yy123; + } +yy123: + cur = ctxmrk; +#line 307 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; } +#line 1582 "src/parser.c" +yy124: + yych = *++cur; switch (yych) { case '0': case '1': @@ -1261,26 +1591,29 @@ yy97: case '6': case '7': case '8': - case '9': goto yy97; + case '9': + case 'A': + case 'B': + case 'C': + case 'D': case 'E': - case 'e': goto yy103; - default: goto yy36; + case 'F': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy204; + default: goto yy106; } -yy99: - ++P->cur; -#line 314 "src/parser.re" - { goto comment; } -#line 1274 "src/parser.c" -yy101: - ++P->cur; -#line 315 "src/parser.re" - { goto comment_sl; } -#line 1279 "src/parser.c" -yy103: - yych = *++P->cur; +yy125: + ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { - case '+': - case '-': goto yy164; + case '-': + case '.': + case '/': case '0': case '1': case '2': @@ -1290,47 +1623,7 @@ yy103: case '6': case '7': case '8': - case '9': goto yy165; - default: goto yy95; - } -yy104: - ++P->cur; -#line 342 "src/parser.re" - { NEWTOKEN(PSI_T_LSHIFT); goto start; } -#line 1301 "src/parser.c" -yy106: - ++P->cur; -#line 344 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_LE); goto start; } -#line 1306 "src/parser.c" -yy108: - ++P->cur; -#line 327 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_EQ); goto start; } -#line 1311 "src/parser.c" -yy110: - ++P->cur; -#line 345 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_GE); goto start; } -#line 1316 "src/parser.c" -yy112: - ++P->cur; -#line 343 "src/parser.re" - { NEWTOKEN(PSI_T_RSHIFT); goto start; } -#line 1321 "src/parser.c" -yy114: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy167; - default: goto yy55; - } -yy115: - ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; - switch (yych) { + case '9': case 'A': case 'B': case 'C': @@ -1383,501 +1676,705 @@ yy115: case 'w': case 'x': case 'y': - case 'z': goto yy155; - default: goto yy95; + case 'z': goto yy125; + case '>': goto yy206; + default: goto yy106; } -yy116: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy127: + ++cur; +#line 356 "src/parser.re" + { NEWTOKEN(PSI_T_LSHIFT); goto start; } +#line 1688 "src/parser.c" +yy129: + ++cur; +#line 358 "src/parser.re" + { NEWTOKEN(PSI_T_CMP_LE); goto start; } +#line 1693 "src/parser.c" +yy131: + ++cur; +#line 341 "src/parser.re" + { NEWTOKEN(PSI_T_CMP_EQ); goto start; } +#line 1698 "src/parser.c" +yy133: + ++cur; +#line 359 "src/parser.re" + { NEWTOKEN(PSI_T_CMP_GE); goto start; } +#line 1703 "src/parser.c" +yy135: + ++cur; +#line 357 "src/parser.re" + { NEWTOKEN(PSI_T_RSHIFT); goto start; } +#line 1708 "src/parser.c" +yy137: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy168; - default: goto yy55; + case 'R': + case 'r': goto yy208; + default: goto yy62; } -yy117: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy138: + ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case '\\': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy106; + default: goto yy182; + } +yy139: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'O': + case 'o': goto yy209; + default: goto yy62; + } +yy140: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy169; - default: goto yy55; + case 'l': goto yy210; + default: goto yy62; } -yy118: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy141: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy170; - default: goto yy55; + case 'a': goto yy211; + default: goto yy62; } -yy119: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy142: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy171; + case 'n': goto yy212; case 'U': - case 'u': goto yy172; - default: goto yy55; + case 'u': goto yy213; + default: goto yy62; } -yy120: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy143: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy173; - default: goto yy55; + case 'f': goto yy214; + default: goto yy62; } -yy121: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy144: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy174; - default: goto yy55; + case 'u': goto yy215; + default: goto yy62; } -yy122: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy145: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy175; + case 'i': goto yy216; case 'S': - case 's': goto yy176; - default: goto yy55; + case 's': goto yy217; + default: goto yy62; } -yy123: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy146: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy177; + case 'd': goto yy218; case 'U': - case 'u': goto yy178; - default: goto yy55; + case 'u': goto yy219; + default: goto yy62; } -yy124: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy147: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy179; - default: goto yy55; + case 'r': goto yy220; + default: goto yy62; } -yy125: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy148: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy180; - default: goto yy55; + case 'l': goto yy221; + default: goto yy62; } -yy126: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy149: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy181; - default: goto yy55; + case 'o': goto yy222; + default: goto yy62; } -yy127: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy150: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy182; - default: goto yy55; + case 'e': goto yy223; + default: goto yy62; } -yy128: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy151: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy183; - default: goto yy55; + case 'n': goto yy224; + default: goto yy62; } -yy129: - yyaccept = 5; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; +yy152: + yyaccept = 8; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy153; case 'D': - case 'd': goto yy184; + case 'd': goto yy225; case 'N': - case 'n': goto yy185; - case '\\': goto yy115; - default: goto yy130; + case 'n': goto yy226; + case '\\': goto yy138; + default: goto yy61; } -yy130: -#line 349 "src/parser.re" +yy153: +#line 371 "src/parser.re" { NEWTOKEN(PSI_T_IF); goto start; } -#line 1573 "src/parser.c" -yy131: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +#line 1987 "src/parser.c" +yy154: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { + case 'C': + case 'c': goto yy227; case 'T': - case 't': goto yy186; - default: goto yy55; + case 't': goto yy228; + default: goto yy62; } -yy132: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy155: + ++cur; + cur = ctxmrk; +#line 324 "src/parser.re" + { char_width = SIZEOF_WCHAR_T/8; } +#line 2003 "src/parser.c" +yy157: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy188; - default: goto yy55; + case 't': goto yy230; + default: goto yy62; } -yy133: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy158: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'B': - case 'b': goto yy190; - default: goto yy55; + case 'b': goto yy232; + default: goto yy62; } -yy134: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy159: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy192; - default: goto yy55; + case 'n': goto yy234; + default: goto yy62; } -yy135: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy160: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'X': - case 'x': goto yy193; - default: goto yy55; + case 'x': goto yy235; + default: goto yy62; } -yy136: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy161: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy194; - default: goto yy55; + case 'l': goto yy236; + default: goto yy62; } -yy137: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy162: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'J': - case 'j': goto yy195; - default: goto yy55; + case 'j': goto yy237; + default: goto yy62; } -yy138: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy163: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy196; - default: goto yy55; + case 't': goto yy238; + default: goto yy62; } -yy139: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy164: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'S': - case 's': goto yy197; - default: goto yy55; + case 's': goto yy239; + default: goto yy62; } -yy140: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy165: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy198; - default: goto yy55; + case 'e': goto yy240; + default: goto yy62; } -yy141: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy166: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy199; - default: goto yy55; + case 't': goto yy241; + default: goto yy62; } -yy142: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy167: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy200; - default: goto yy55; + case 't': goto yy242; + default: goto yy62; } -yy143: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy168: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy202; - default: goto yy55; + case 'o': goto yy244; + default: goto yy62; } -yy144: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy169: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'G': - case 'g': goto yy203; - default: goto yy55; + case 'g': goto yy245; + default: goto yy62; } -yy145: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy170: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy204; + case 'a': goto yy246; case 'R': - case 'r': goto yy205; - default: goto yy55; + case 'r': goto yy247; + default: goto yy62; } -yy146: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy171: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'M': - case 'm': goto yy206; - default: goto yy55; + case 'm': goto yy248; + default: goto yy62; } -yy147: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy172: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy207; - default: goto yy55; + case '_': goto yy249; + default: goto yy62; } -yy148: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy173: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy208; - default: goto yy55; + case 'u': goto yy250; + default: goto yy62; } -yy149: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy174: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'P': - case 'p': goto yy209; - default: goto yy55; + case 'p': goto yy251; + default: goto yy62; } -yy150: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy175: + ++cur; + cur = ctxmrk; +#line 323 "src/parser.re" + { char_width = 4; } +#line 2154 "src/parser.c" +yy177: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy210; - default: goto yy55; + case 'n': goto yy252; + default: goto yy62; } -yy151: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy178: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy211; + case 'd': goto yy253; case 'I': - case 'i': goto yy212; + case 'i': goto yy254; case 'S': - case 's': goto yy213; - default: goto yy55; + case 's': goto yy255; + default: goto yy62; } -yy152: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy179: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy214; - default: goto yy55; + case 'i': goto yy256; + default: goto yy62; } -yy153: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy180: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy215; - default: goto yy55; + case 'r': goto yy257; + default: goto yy62; } -yy154: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy181: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy216; - default: goto yy55; + case 'a': goto yy258; + default: goto yy62; } -yy155: - yyaccept = 6; - P->mrk = ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; +yy182: + yyaccept = 9; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy184; + case '\\': goto yy138; + default: goto yy182; + } +yy184: +#line 444 "src/parser.re" + { NEWTOKEN(PSI_T_NSNAME); goto start; } +#line 2275 "src/parser.c" +yy185: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'a': goto yy259; + case 'e': goto yy260; + case 'r': goto yy261; + default: goto yy62; + } +yy186: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': case 'B': - case 'C': - case 'D': + case 'b': goto yy232; + case 'n': goto yy262; + default: goto yy62; + } +yy187: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'E': + case 'e': goto yy240; + case 'a': goto yy263; + default: goto yy62; + } +yy188: + ++cur; + cur = ctxmrk; +#line 322 "src/parser.re" + { char_width = 2; } +#line 2308 "src/parser.c" +yy190: + yyaccept = 5; + yych = *(mrk = ++cur); + ctxmrk = cur; + switch (yych) { + case '"': goto yy264; + default: goto yy62; + } +yy191: + ++cur; +#line 343 "src/parser.re" + { NEWTOKEN(PSI_T_OR); goto start; } +#line 2321 "src/parser.c" +yy193: + ++cur; +#line 363 "src/parser.re" + { NEWTOKEN(PSI_T_ELLIPSIS); goto start; } +#line 2326 "src/parser.c" +yy195: + yych = *++cur; + switch (yych) { + case 'D': + case 'd': goto yy266; case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': + case 'f': goto yy268; case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': + case 'l': goto yy270; + default: goto yy106; + } +yy196: + ++cur; + cur = ctxmrk; +#line 313 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; } +#line 2343 "src/parser.c" +yy198: + ++cur; + cur = ctxmrk; +#line 314 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; } +#line 2349 "src/parser.c" +yy200: + yych = *++cur; + switch (yych) { case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy155; - case '\\': goto yy115; - default: goto yy157; + case 'u': goto yy272; + default: goto yy106; } -yy157: -#line 421 "src/parser.re" - { NEWTOKEN(PSI_T_NSNAME); goto start; } -#line 1846 "src/parser.c" -yy158: - ++P->cur; -#line 329 "src/parser.re" - { NEWTOKEN(PSI_T_OR); goto start; } -#line 1851 "src/parser.c" -yy160: - ++P->cur; -#line 423 "src/parser.re" - { NEWTOKEN(PSI_T_QUOTED_STRING); goto start; } -#line 1856 "src/parser.c" -yy162: - ++P->cur; -#line 348 "src/parser.re" - { NEWTOKEN(PSI_T_ELLIPSIS); goto start; } -#line 1861 "src/parser.c" -yy164: - yych = *++P->cur; +yy201: + ++cur; +yy202: + cur = ctxmrk; +#line 309 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; } +#line 2363 "src/parser.c" +yy203: + yych = *++cur; switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy165; - default: goto yy95; + case 'L': + case 'l': goto yy272; + default: goto yy202; } -yy165: - ++P->cur; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; +yy204: + yyaccept = 3; + mrk = ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; + ctxmrk = cur; switch (yych) { + case '.': goto yy274; case '0': case '1': case '2': @@ -1887,679 +2384,771 @@ yy165: case '6': case '7': case '8': - case '9': goto yy165; - default: goto yy36; + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy204; + case 'L': + case 'l': goto yy120; + case 'P': + case 'p': goto yy119; + case 'U': + case 'u': goto yy122; + default: goto yy39; } -yy167: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy206: + ++cur; +#line 446 "src/parser.re" + { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; } +#line 2413 "src/parser.c" +yy208: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy217; + case 'a': goto yy276; case 'V': - case 'v': goto yy218; - default: goto yy55; + case 'v': goto yy277; + default: goto yy62; } -yy168: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy209: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy219; - default: goto yy55; + case 'l': goto yy278; + default: goto yy62; } -yy169: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy210: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy221; - default: goto yy55; + case 'l': goto yy280; + default: goto yy62; } -yy170: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy211: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy222; - default: goto yy55; + case 'r': goto yy281; + default: goto yy62; } -yy171: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy212: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'S': - case 's': goto yy224; - default: goto yy55; + case 's': goto yy283; + default: goto yy62; } -yy172: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy213: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy225; - default: goto yy55; + case 'n': goto yy284; + default: goto yy62; } -yy173: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy214: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy226; - default: goto yy55; + case 'i': goto yy285; + default: goto yy62; } -yy174: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy215: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'B': - case 'b': goto yy227; - default: goto yy55; + case 'b': goto yy286; + default: goto yy62; } -yy175: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy216: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy228; - default: goto yy55; + case 'f': goto yy287; + default: goto yy62; } -yy176: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy217: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy230; - default: goto yy55; + case 'e': goto yy289; + default: goto yy62; } -yy177: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy218: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy232; - default: goto yy55; + case 'i': goto yy291; + default: goto yy62; } -yy178: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy219: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'M': - case 'm': goto yy233; - default: goto yy55; + case 'm': goto yy292; + default: goto yy62; } -yy179: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy220: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy235; - default: goto yy55; + case 'o': goto yy294; + default: goto yy62; } -yy180: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy221: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'S': - case 's': goto yy236; - default: goto yy55; + case 's': goto yy295; + default: goto yy62; } -yy181: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy222: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy237; - default: goto yy55; + case 'a': goto yy296; + default: goto yy62; } -yy182: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy223: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy238; - default: goto yy55; + case 'e': goto yy297; + default: goto yy62; } -yy183: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy224: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'C': - case 'c': goto yy240; - default: goto yy55; + case 'c': goto yy299; + default: goto yy62; } -yy184: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy225: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy241; - default: goto yy55; + case 'e': goto yy300; + default: goto yy62; } -yy185: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy226: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy242; - default: goto yy55; + case 'd': goto yy301; + default: goto yy62; } -yy186: - yyaccept = 7; - yych = *(P->mrk = ++P->cur); +yy227: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '2': - case '4': - case '5': - case '7': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '1': goto yy243; - case '3': goto yy244; - case '6': goto yy245; - case '8': goto yy246; + case 'l': goto yy302; + default: goto yy62; + } +yy228: + yyaccept = 10; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy229; + case '1': goto yy303; + case '3': goto yy304; + case '6': goto yy305; + case '8': goto yy306; case 'V': - case 'v': goto yy247; - case '\\': goto yy115; - default: goto yy187; + case 'v': goto yy307; + case '\\': goto yy138; + default: goto yy61; } -yy187: -#line 369 "src/parser.re" +yy229: +#line 393 "src/parser.re" { NEWTOKEN(PSI_T_INT); goto start; } -#line 2121 "src/parser.c" -yy188: - yyaccept = 8; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy189; +#line 2656 "src/parser.c" +yy230: + yyaccept = 11; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy231; + case '\\': goto yy138; + default: goto yy61; } -yy189: -#line 395 "src/parser.re" +yy231: +#line 419 "src/parser.re" { NEWTOKEN(PSI_T_LET); goto start; } -#line 2195 "src/parser.c" -yy190: - yyaccept = 9; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy191; +#line 2731 "src/parser.c" +yy232: + yyaccept = 12; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy233; + case '\\': goto yy138; + default: goto yy61; } -yy191: -#line 394 "src/parser.re" +yy233: +#line 418 "src/parser.re" { NEWTOKEN(PSI_T_LIB); goto start; } -#line 2269 "src/parser.c" -yy192: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +#line 2806 "src/parser.c" +yy234: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'G': - case 'g': goto yy248; - default: goto yy55; + case 'g': goto yy308; + default: goto yy62; } -yy193: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy235: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy250; - default: goto yy55; + case 'e': goto yy310; + default: goto yy62; } -yy194: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy236: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy251; - default: goto yy55; + case 'l': goto yy311; + default: goto yy62; } -yy195: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy237: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy253; + case 'e': goto yy313; case 'V': - case 'v': goto yy254; - default: goto yy55; + case 'v': goto yy314; + default: goto yy62; } -yy196: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy238: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'H': - case 'h': goto yy255; - default: goto yy55; + case 'h': goto yy315; + default: goto yy62; } -yy197: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy239: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy256; - default: goto yy55; + case 't': goto yy316; + default: goto yy62; } -yy198: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy240: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy257; - default: goto yy55; + case '_': goto yy317; + default: goto yy62; } -yy199: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy241: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy258; - default: goto yy55; + case 'u': goto yy318; + default: goto yy62; } -yy200: - yyaccept = 10; - yych = *(P->mrk = ++P->cur); +yy242: + yyaccept = 13; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy243; + case '\\': goto yy138; + default: goto yy61; + } +yy243: +#line 420 "src/parser.re" + { NEWTOKEN(PSI_T_SET); goto start; } +#line 2946 "src/parser.c" +yy244: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy319; + default: goto yy62; + } +yy245: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy320; + default: goto yy62; + } +yy246: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy321; + default: goto yy62; + } +yy247: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy322; + case 'L': + case 'l': goto yy323; + case 'U': + case 'u': goto yy324; + case 'V': + case 'v': goto yy325; + default: goto yy62; + } +yy248: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'P': + case 'p': goto yy326; + default: goto yy62; + } +yy249: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': case 'A': + case 'a': goto yy328; case 'B': - case 'C': - case 'D': - case 'E': + case 'b': goto yy329; case 'F': - case 'G': - case 'H': + case 'f': goto yy330; case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': + case 'i': goto yy331; case 'O': - case 'P': - case 'Q': - case 'R': + case 'o': goto yy332; case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy201; - } -yy201: -#line 396 "src/parser.re" - { NEWTOKEN(PSI_T_SET); goto start; } -#line 2408 "src/parser.c" -yy202: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy259; - default: goto yy55; - } -yy203: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'N': - case 'n': goto yy260; - default: goto yy55; - } -yy204: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy261; - default: goto yy55; - } -yy205: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'I': - case 'i': goto yy262; - case 'L': - case 'l': goto yy263; - case 'U': - case 'u': goto yy264; - case 'V': - case 'v': goto yy265; - default: goto yy55; - } -yy206: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'P': - case 'p': goto yy266; - default: goto yy55; - } -yy207: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy268; - case 'B': - case 'b': goto yy269; - case 'F': - case 'f': goto yy270; - case 'I': - case 'i': goto yy271; - case 'O': - case 'o': goto yy272; - case 'S': - case 's': goto yy273; - default: goto yy55; + case 's': goto yy333; + default: goto yy62; } -yy208: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy250: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy274; - default: goto yy55; + case 'e': goto yy334; + default: goto yy62; } -yy209: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy251: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy276; - default: goto yy55; + case 'e': goto yy336; + default: goto yy62; } -yy210: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy252: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy277; - default: goto yy55; + case 't': goto yy337; + default: goto yy62; } -yy211: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy253: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy278; - default: goto yy55; + case 'e': goto yy338; + default: goto yy62; } -yy212: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy254: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy279; - default: goto yy55; + case 'o': goto yy339; + default: goto yy62; } -yy213: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy255: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy280; - default: goto yy55; + case 'i': goto yy340; + default: goto yy62; } -yy214: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy256: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy281; - default: goto yy55; + case 'd': goto yy341; + default: goto yy62; } -yy215: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy257: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy283; - default: goto yy55; + case 'n': goto yy343; + default: goto yy62; } -yy216: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy258: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy284; - default: goto yy55; + case 'l': goto yy344; + default: goto yy62; } -yy217: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy259: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'Y': - case 'y': goto yy286; - default: goto yy55; + case 's': goto yy346; + case 't': goto yy347; + default: goto yy62; } -yy218: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy260: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy288; - default: goto yy55; + case 'x': goto yy348; + default: goto yy62; } -yy219: - yyaccept = 11; - yych = *(P->mrk = ++P->cur); +yy261: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy349; + default: goto yy62; + } +yy262: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy350; + default: goto yy62; + } +yy263: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'g': goto yy352; + default: goto yy62; + } +yy264: + ++cur; + cur = ctxmrk; +#line 321 "src/parser.re" + { char_width = 1; } +#line 3124 "src/parser.c" +yy266: + ++cur; + cur = ctxmrk; +#line 316 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; } +#line 3130 "src/parser.c" +yy268: + ++cur; + cur = ctxmrk; +#line 315 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; } +#line 3136 "src/parser.c" +yy270: + ++cur; + cur = ctxmrk; +#line 317 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; } +#line 3142 "src/parser.c" +yy272: + ++cur; + cur = ctxmrk; +#line 310 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; } +#line 3148 "src/parser.c" +yy274: + ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case '0': case '1': @@ -2577,5866 +3166,7380 @@ yy219: case 'D': case 'E': case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': case 'a': case 'b': case 'c': case 'd': case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; + case 'f': goto yy274; + case 'P': + case 'p': goto yy119; + default: goto yy106; + } +yy276: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'Y': + case 'y': goto yy353; + default: goto yy62; + } +yy277: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy355; + default: goto yy62; + } +yy278: + yyaccept = 14; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy279; case 'V': - case 'v': goto yy289; - case '\\': goto yy115; - default: goto yy220; + case 'v': goto yy356; + case '\\': goto yy138; + default: goto yy61; } -yy220: -#line 366 "src/parser.re" +yy279: +#line 390 "src/parser.re" { NEWTOKEN(PSI_T_BOOL); goto start; } -#line 2634 "src/parser.c" -yy221: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +#line 3272 "src/parser.c" +yy280: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy290; + case 'a': goto yy357; case 'B': - case 'b': goto yy291; + case 'b': goto yy358; case 'O': - case 'o': goto yy292; - default: goto yy55; + case 'o': goto yy359; + default: goto yy62; } -yy222: - yyaccept = 12; - yych = *(P->mrk = ++P->cur); +yy281: + yyaccept = 15; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy282; + case '\\': goto yy138; + default: goto yy61; + } +yy282: +#line 391 "src/parser.re" + { NEWTOKEN(PSI_T_CHAR); goto start; } +#line 3359 "src/parser.c" +yy283: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy223; - } -yy223: -#line 367 "src/parser.re" - { NEWTOKEN(PSI_T_CHAR); goto start; } -#line 2720 "src/parser.c" -yy224: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy293; - default: goto yy55; + case 't': goto yy360; + default: goto yy62; } -yy225: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy284: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy295; - default: goto yy55; + case 't': goto yy362; + default: goto yy62; } -yy226: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy285: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy297; - default: goto yy55; + case 'n': goto yy364; + default: goto yy62; } -yy227: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy286: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy298; - default: goto yy55; + case 'l': goto yy365; + default: goto yy62; } -yy228: - yyaccept = 13; - yych = *(P->mrk = ++P->cur); +yy287: + yyaccept = 16; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy288; + case '\\': goto yy138; + default: goto yy61; + } +yy288: +#line 375 "src/parser.re" + { NEWTOKEN(PSI_T_ELIF); goto start; } +#line 3466 "src/parser.c" +yy289: + yyaccept = 17; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy290; + case '\\': goto yy138; + default: goto yy61; + } +yy290: +#line 374 "src/parser.re" + { NEWTOKEN(PSI_T_ELSE); goto start; } +#line 3541 "src/parser.c" +yy291: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': + case 'f': goto yy366; + default: goto yy62; + } +yy292: + yyaccept = 18; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy293; + case '\\': goto yy138; + default: goto yy61; + } +yy293: +#line 416 "src/parser.re" + { NEWTOKEN(PSI_T_ENUM); goto start; } +#line 3624 "src/parser.c" +yy294: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy229; + case 'r': goto yy368; + default: goto yy62; } -yy229: -#line 353 "src/parser.re" - { NEWTOKEN(PSI_T_ELIF); goto start; } -#line 2826 "src/parser.c" -yy230: - yyaccept = 14; - yych = *(P->mrk = ++P->cur); +yy295: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': + case 'e': goto yy370; + default: goto yy62; + } +yy296: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy231; + case 't': goto yy372; + default: goto yy62; } -yy231: -#line 352 "src/parser.re" - { NEWTOKEN(PSI_T_ELSE); goto start; } -#line 2900 "src/parser.c" -yy232: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy297: + yyaccept = 19; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy298; + case '\\': goto yy138; + default: goto yy61; + } +yy298: +#line 424 "src/parser.re" + { NEWTOKEN(PSI_T_FREE); goto start; } +#line 3723 "src/parser.c" +yy299: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy374; + default: goto yy62; + } +yy300: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy299; - default: goto yy55; + case 'f': goto yy375; + default: goto yy62; } -yy233: - yyaccept = 15; - yych = *(P->mrk = ++P->cur); +yy301: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy234; + case 'e': goto yy377; + default: goto yy62; } -yy234: -#line 392 "src/parser.re" - { NEWTOKEN(PSI_T_ENUM); goto start; } -#line 2982 "src/parser.c" -yy235: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy302: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy301; - default: goto yy55; + case 'U': + case 'u': goto yy378; + default: goto yy62; } -yy236: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy303: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy303; - default: goto yy55; + case '6': goto yy379; + default: goto yy62; } -yy237: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy304: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy305; - default: goto yy55; + case '2': goto yy380; + default: goto yy62; } -yy238: - yyaccept = 16; - yych = *(P->mrk = ++P->cur); +yy305: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy239; + case '4': goto yy381; + default: goto yy62; } -yy239: -#line 400 "src/parser.re" - { NEWTOKEN(PSI_T_FREE); goto start; } -#line 3080 "src/parser.c" -yy240: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy306: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy307; - default: goto yy55; + case '_': goto yy382; + default: goto yy62; } -yy241: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy307: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'F': - case 'f': goto yy308; - default: goto yy55; + case 'A': + case 'a': goto yy383; + default: goto yy62; } -yy242: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy308: + yyaccept = 20; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy309; + case '\\': goto yy138; + default: goto yy61; + } +yy309: +#line 394 "src/parser.re" + { NEWTOKEN(PSI_T_LONG); goto start; } +#line 3866 "src/parser.c" +yy310: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy310; - default: goto yy55; + case 'D': + case 'd': goto yy384; + default: goto yy62; } -yy243: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy311: + yyaccept = 21; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy312; + case '\\': goto yy138; + default: goto yy61; + } +yy312: +#line 386 "src/parser.re" + { NEWTOKEN(PSI_T_NULL); goto start; } +#line 3949 "src/parser.c" +yy313: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '6': goto yy311; - default: goto yy55; + case 'C': + case 'c': goto yy386; + default: goto yy62; } -yy244: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy314: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '2': goto yy312; - default: goto yy55; + case 'A': + case 'a': goto yy387; + default: goto yy62; } -yy245: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy315: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '4': goto yy313; - default: goto yy55; + case 'V': + case 'v': goto yy388; + default: goto yy62; } -yy246: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy316: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy314; - default: goto yy55; + case '_': goto yy389; + default: goto yy62; } -yy247: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy317: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy315; - default: goto yy55; + case 'a': goto yy390; + default: goto yy62; } -yy248: - yyaccept = 17; - yych = *(P->mrk = ++P->cur); +yy318: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy249; + case 'r': goto yy391; + default: goto yy62; } -yy249: -#line 370 "src/parser.re" - { NEWTOKEN(PSI_T_LONG); goto start; } -#line 3214 "src/parser.c" -yy250: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy319: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'D': - case 'd': goto yy316; - default: goto yy55; + case 'T': + case 't': goto yy392; + default: goto yy62; } -yy251: - yyaccept = 18; - yych = *(P->mrk = ++P->cur); +yy320: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy252; + case 'e': goto yy394; + default: goto yy62; } -yy252: -#line 362 "src/parser.re" - { NEWTOKEN(PSI_T_NULL); goto start; } -#line 3296 "src/parser.c" -yy253: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy321: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy318; - default: goto yy55; + case 'I': + case 'i': goto yy395; + default: goto yy62; } -yy254: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy322: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy319; - default: goto yy55; + case 'N': + case 'n': goto yy396; + default: goto yy62; } -yy255: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy323: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'V': - case 'v': goto yy320; - default: goto yy55; + case 'E': + case 'e': goto yy397; + default: goto yy62; } -yy256: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy324: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy321; - default: goto yy55; + case 'C': + case 'c': goto yy398; + default: goto yy62; } -yy257: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy325: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy322; - default: goto yy55; + case 'a': goto yy399; + default: goto yy62; } -yy258: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy323; - default: goto yy55; +yy326: + yyaccept = 22; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy327; + case '\\': goto yy138; + default: goto yy61; } -yy259: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy327: +#line 425 "src/parser.re" + { NEWTOKEN(PSI_T_TEMP); goto start; } +#line 4127 "src/parser.c" +yy328: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy324; - default: goto yy55; + case 'R': + case 'r': goto yy400; + default: goto yy62; } -yy260: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy329: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy326; - default: goto yy55; + case 'O': + case 'o': goto yy401; + default: goto yy62; } -yy261: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy330: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy327; - default: goto yy55; + case 'L': + case 'l': goto yy402; + default: goto yy62; } -yy262: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy331: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy328; - default: goto yy55; + case 'n': goto yy403; + default: goto yy62; } -yy263: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy332: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy329; - default: goto yy55; + case 'B': + case 'b': goto yy404; + default: goto yy62; } -yy264: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy333: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy330; - default: goto yy55; + case 'T': + case 't': goto yy405; + default: goto yy62; } -yy265: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy331; - default: goto yy55; +yy334: + yyaccept = 23; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy335; + case '\\': goto yy138; + default: goto yy61; } -yy266: - yyaccept = 19; - yych = *(P->mrk = ++P->cur); +yy335: +#line 384 "src/parser.re" + { NEWTOKEN(PSI_T_TRUE); goto start; } +#line 4250 "src/parser.c" +yy336: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy267; - } -yy267: -#line 401 "src/parser.re" - { NEWTOKEN(PSI_T_TEMP); goto start; } -#line 3473 "src/parser.c" -yy268: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy332; - default: goto yy55; + case 'd': goto yy406; + default: goto yy62; } -yy269: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy337: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy333; - default: goto yy55; + case '1': goto yy407; + case '3': goto yy408; + case '6': goto yy409; + case '8': goto yy410; + default: goto yy62; } -yy270: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy338: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy334; - default: goto yy55; + case 'F': + case 'f': goto yy411; + default: goto yy62; } -yy271: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy339: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy335; - default: goto yy55; + case 'n': goto yy413; + default: goto yy62; } -yy272: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy340: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'B': - case 'b': goto yy336; - default: goto yy55; + case 'G': + case 'g': goto yy415; + default: goto yy62; } -yy273: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy337; - default: goto yy55; +yy341: + yyaccept = 24; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy342; + case '\\': goto yy138; + default: goto yy61; } -yy274: - yyaccept = 20; - yych = *(P->mrk = ++P->cur); +yy342: +#line 389 "src/parser.re" + { NEWTOKEN(PSI_T_VOID); goto start; } +#line 4367 "src/parser.c" +yy343: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy275; + case 'i': goto yy416; + default: goto yy62; } -yy275: -#line 360 "src/parser.re" - { NEWTOKEN(PSI_T_TRUE); goto start; } -#line 3595 "src/parser.c" -yy276: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy344: + yyaccept = 25; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy345; + case '\\': goto yy138; + default: goto yy61; + } +yy345: +#line 434 "src/parser.re" + { NEWTOKEN(PSI_T_ZVAL); goto start; } +#line 4450 "src/parser.c" +yy346: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'D': - case 'd': goto yy338; - default: goto yy55; + case 'm': goto yy417; + default: goto yy62; } -yy277: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy347: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '1': goto yy339; - case '3': goto yy340; - case '6': goto yy341; - case '8': goto yy342; - default: goto yy55; + case 't': goto yy418; + default: goto yy62; } -yy278: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy348: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'F': - case 'f': goto yy343; - default: goto yy55; + case 't': goto yy419; + default: goto yy62; } -yy279: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy349: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy345; - default: goto yy55; + case 's': goto yy420; + default: goto yy62; } -yy280: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy350: + yyaccept = 26; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy351; + case '\\': goto yy138; + default: goto yy61; + } +yy351: +#line 370 "src/parser.re" + { NEWTOKEN(PSI_T_LINE); goto start; } +#line 4553 "src/parser.c" +yy352: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'G': - case 'g': goto yy347; - default: goto yy55; + case 'm': goto yy421; + default: goto yy62; } -yy281: - yyaccept = 21; - yych = *(P->mrk = ++P->cur); +yy353: + yyaccept = 27; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy354; + case '\\': goto yy138; + default: goto yy61; + } +yy354: +#line 408 "src/parser.re" + { NEWTOKEN(PSI_T_ARRAY); goto start; } +#line 4635 "src/parser.c" +yy355: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy282; + case 'l': goto yy422; + default: goto yy62; } -yy282: -#line 365 "src/parser.re" - { NEWTOKEN(PSI_T_VOID); goto start; } -#line 3711 "src/parser.c" -yy283: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy356: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy348; - default: goto yy55; + case 'A': + case 'a': goto yy424; + default: goto yy62; } -yy284: - yyaccept = 22; - yych = *(P->mrk = ++P->cur); +yy357: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': case 'B': + case 'b': goto yy425; + default: goto yy62; + } +yy358: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy426; + default: goto yy62; + } +yy359: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'C': - case 'D': + case 'c': goto yy427; + default: goto yy62; + } +yy360: + yyaccept = 28; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy361; + case '\\': goto yy138; + default: goto yy61; + } +yy361: +#line 417 "src/parser.re" + { NEWTOKEN(PSI_T_CONST); goto start; } +#line 4750 "src/parser.c" +yy362: + yyaccept = 29; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy363; + case '\\': goto yy138; + default: goto yy61; + } +yy363: +#line 435 "src/parser.re" + { NEWTOKEN(PSI_T_COUNT); goto start; } +#line 4825 "src/parser.c" +yy364: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy285; + case 'e': goto yy429; + default: goto yy62; } -yy285: -#line 410 "src/parser.re" - { NEWTOKEN(PSI_T_ZVAL); goto start; } -#line 3793 "src/parser.c" -yy286: - yyaccept = 23; - yych = *(P->mrk = ++P->cur); +yy365: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': + case 'e': goto yy431; + default: goto yy62; + } +yy366: + yyaccept = 30; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy367; + case '\\': goto yy138; + default: goto yy61; + } +yy367: +#line 376 "src/parser.re" + { NEWTOKEN(PSI_T_ENDIF); goto start; } +#line 4916 "src/parser.c" +yy368: + yyaccept = 31; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy369; + case '\\': goto yy138; + default: goto yy61; + } +yy369: +#line 381 "src/parser.re" + { NEWTOKEN(PSI_T_ERROR); goto start; } +#line 4991 "src/parser.c" +yy370: + yyaccept = 32; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy371; + case '\\': goto yy138; + default: goto yy61; + } +yy371: +#line 385 "src/parser.re" + { NEWTOKEN(PSI_T_FALSE); goto start; } +#line 5066 "src/parser.c" +yy372: + yyaccept = 33; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy373; + case 'V': + case 'v': goto yy433; + case '\\': goto yy138; + default: goto yy61; + } +yy373: +#line 395 "src/parser.re" + { NEWTOKEN(PSI_T_FLOAT); goto start; } +#line 5143 "src/parser.c" +yy374: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'I': - case 'J': - case 'K': + case 'i': goto yy434; + default: goto yy62; + } +yy375: + yyaccept = 34; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy376; + case '\\': goto yy138; + default: goto yy61; + } +yy376: +#line 372 "src/parser.re" + { NEWTOKEN(PSI_T_IFDEF); goto start; } +#line 5226 "src/parser.c" +yy377: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'F': + case 'f': goto yy435; + default: goto yy62; + } +yy378: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'D': + case 'd': goto yy437; + default: goto yy62; + } +yy379: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy438; + default: goto yy62; + } +yy380: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy439; + default: goto yy62; + } +yy381: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy440; + default: goto yy62; + } +yy382: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy441; + default: goto yy62; + } +yy383: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': + case 'l': goto yy443; + default: goto yy62; + } +yy384: + yyaccept = 35; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy385; + case '\\': goto yy138; + default: goto yy61; + } +yy385: +#line 387 "src/parser.re" + { NEWTOKEN(PSI_T_MIXED); goto start; } +#line 5354 "src/parser.c" +yy386: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy287; + case 't': goto yy445; + default: goto yy62; } -yy287: -#line 384 "src/parser.re" - { NEWTOKEN(PSI_T_ARRAY); goto start; } -#line 3867 "src/parser.c" -yy288: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy387: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy349; - default: goto yy55; + case 'l': goto yy447; + default: goto yy62; } -yy289: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy388: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy351; - default: goto yy55; + case 'a': goto yy449; + default: goto yy62; } -yy290: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy389: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'B': - case 'b': goto yy352; - default: goto yy55; + case 'A': + case 'a': goto yy450; + default: goto yy62; } -yy291: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy390: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy353; - default: goto yy55; + case 'S': + case 's': goto yy451; + default: goto yy62; } -yy292: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy391: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy354; - default: goto yy55; + case 'N': + case 'n': goto yy452; + default: goto yy62; } -yy293: - yyaccept = 24; - yych = *(P->mrk = ++P->cur); +yy392: + yyaccept = 36; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy393; + case '\\': goto yy138; + default: goto yy61; + } +yy393: +#line 392 "src/parser.re" + { NEWTOKEN(PSI_T_SHORT); goto start; } +#line 5477 "src/parser.c" +yy394: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': case 'D': - case 'E': - case 'F': + case 'd': goto yy454; + default: goto yy62; + } +yy395: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy456; + default: goto yy62; + } +yy396: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': + case 'g': goto yy458; + default: goto yy62; + } +yy397: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': + case 'n': goto yy460; + default: goto yy62; + } +yy398: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy294; + case 't': goto yy462; + default: goto yy62; } -yy294: -#line 393 "src/parser.re" - { NEWTOKEN(PSI_T_CONST); goto start; } -#line 3981 "src/parser.c" -yy295: - yyaccept = 25; - yych = *(P->mrk = ++P->cur); +yy399: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy296; + case 'l': goto yy464; + default: goto yy62; } -yy296: -#line 411 "src/parser.re" - { NEWTOKEN(PSI_T_COUNT); goto start; } -#line 4055 "src/parser.c" -yy297: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy400: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy356; - default: goto yy55; + case 'R': + case 'r': goto yy466; + default: goto yy62; } -yy298: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy401: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy358; - default: goto yy55; + case 'O': + case 'o': goto yy467; + default: goto yy62; } -yy299: - yyaccept = 26; - yych = *(P->mrk = ++P->cur); +yy402: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': + case 'o': goto yy468; + default: goto yy62; + } +yy403: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy300; + case 't': goto yy469; + default: goto yy62; } -yy300: -#line 354 "src/parser.re" - { NEWTOKEN(PSI_T_ENDIF); goto start; } -#line 4145 "src/parser.c" -yy301: - yyaccept = 27; - yych = *(P->mrk = ++P->cur); +yy404: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': + case 'j': goto yy471; + default: goto yy62; + } +yy405: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy302; + case 'r': goto yy472; + default: goto yy62; } -yy302: -#line 359 "src/parser.re" - { NEWTOKEN(PSI_T_ERROR); goto start; } -#line 4219 "src/parser.c" -yy303: - yyaccept = 28; - yych = *(P->mrk = ++P->cur); +yy406: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy304; + case 'e': goto yy473; + default: goto yy62; } -yy304: -#line 361 "src/parser.re" - { NEWTOKEN(PSI_T_FALSE); goto start; } -#line 4293 "src/parser.c" -yy305: - yyaccept = 29; - yych = *(P->mrk = ++P->cur); +yy407: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case 'V': - case 'v': goto yy360; - case '\\': goto yy115; - default: goto yy306; + case '6': goto yy474; + default: goto yy62; } -yy306: -#line 371 "src/parser.re" - { NEWTOKEN(PSI_T_FLOAT); goto start; } -#line 4367 "src/parser.c" -yy307: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy408: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy361; - default: goto yy55; + case '2': goto yy475; + default: goto yy62; } -yy308: - yyaccept = 30; - yych = *(P->mrk = ++P->cur); +yy409: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy309; + case '4': goto yy476; + default: goto yy62; } -yy309: -#line 350 "src/parser.re" - { NEWTOKEN(PSI_T_IFDEF); goto start; } -#line 4449 "src/parser.c" -yy310: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy410: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'F': - case 'f': goto yy362; - default: goto yy55; + case '_': goto yy477; + default: goto yy62; } -yy311: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '_': goto yy364; - default: goto yy55; +yy411: + yyaccept = 37; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy412; + case '\\': goto yy138; + default: goto yy61; } -yy312: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '_': goto yy365; - default: goto yy55; +yy412: +#line 379 "src/parser.re" + { NEWTOKEN(PSI_T_UNDEF); goto start; } +#line 5684 "src/parser.c" +yy413: + yyaccept = 38; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy414; + case '\\': goto yy138; + default: goto yy61; } -yy313: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy414: +#line 415 "src/parser.re" + { NEWTOKEN(PSI_T_UNION); goto start; } +#line 5759 "src/parser.c" +yy415: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy366; - default: goto yy55; + case 'N': + case 'n': goto yy478; + default: goto yy62; } -yy314: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy416: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy367; - default: goto yy55; + case 'N': + case 'n': goto yy479; + default: goto yy62; } -yy315: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy417: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy369; - default: goto yy55; + case '_': goto yy480; + default: goto yy62; } -yy316: - yyaccept = 31; - yych = *(P->mrk = ++P->cur); +yy418: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy317; + case 'r': goto yy481; + default: goto yy62; } -yy317: -#line 363 "src/parser.re" - { NEWTOKEN(PSI_T_MIXED); goto start; } -#line 4568 "src/parser.c" -yy318: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy419: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy371; - default: goto yy55; + case 'e': goto yy482; + default: goto yy62; } -yy319: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy420: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy373; - default: goto yy55; + case 't': goto yy483; + default: goto yy62; } -yy320: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy421: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy375; - default: goto yy55; + case 'a': goto yy484; + default: goto yy62; } -yy321: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy376; - default: goto yy55; +yy422: + yyaccept = 39; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy423; + case '\\': goto yy138; + default: goto yy61; } -yy322: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy423: +#line 432 "src/parser.re" + { NEWTOKEN(PSI_T_ARRVAL); goto start; } +#line 5885 "src/parser.c" +yy424: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'S': - case 's': goto yy377; - default: goto yy55; + case 'L': + case 'l': goto yy486; + default: goto yy62; } -yy323: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy425: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy378; - default: goto yy55; + case 'L': + case 'l': goto yy488; + default: goto yy62; } -yy324: - yyaccept = 32; - yych = *(P->mrk = ++P->cur); +yy426: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy325; + case 'c': goto yy489; + default: goto yy62; } -yy325: -#line 368 "src/parser.re" - { NEWTOKEN(PSI_T_SHORT); goto start; } -#line 4690 "src/parser.c" -yy326: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { +yy427: + yyaccept = 40; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy428; + case '\\': goto yy138; + default: goto yy61; + } +yy428: +#line 436 "src/parser.re" + { NEWTOKEN(PSI_T_CALLOC); goto start; } +#line 5984 "src/parser.c" +yy429: + yyaccept = 41; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy430; case 'D': - case 'd': goto yy380; - default: goto yy55; + case 'd': goto yy490; + case '\\': goto yy138; + default: goto yy61; } -yy327: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy430: +#line 377 "src/parser.re" + { NEWTOKEN(PSI_T_DEFINE); goto start; } +#line 6061 "src/parser.c" +yy431: + yyaccept = 42; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy432; + case '\\': goto yy138; + default: goto yy61; + } +yy432: +#line 396 "src/parser.re" + { NEWTOKEN(PSI_T_DOUBLE); goto start; } +#line 6136 "src/parser.c" +yy433: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy382; - default: goto yy55; + case 'A': + case 'a': goto yy492; + default: goto yy62; } -yy328: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy434: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'G': - case 'g': goto yy384; - default: goto yy55; + case 'O': + case 'o': goto yy493; + default: goto yy62; } -yy329: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy435: + yyaccept = 43; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy436; + case '\\': goto yy138; + default: goto yy61; + } +yy436: +#line 373 "src/parser.re" + { NEWTOKEN(PSI_T_IFNDEF); goto start; } +#line 6227 "src/parser.c" +yy437: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy386; - default: goto yy55; + case 'E': + case 'e': goto yy494; + default: goto yy62; } -yy330: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy438: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy388; - default: goto yy55; + case 't': goto yy496; + default: goto yy62; } -yy331: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy439: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy390; - default: goto yy55; + case 'T': + case 't': goto yy498; + default: goto yy62; } -yy332: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy440: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy392; - default: goto yy55; + case 'T': + case 't': goto yy500; + default: goto yy62; } -yy333: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy441: + yyaccept = 44; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy442; + case '\\': goto yy138; + default: goto yy61; + } +yy442: +#line 397 "src/parser.re" + { NEWTOKEN(PSI_T_INT8); goto start; } +#line 6334 "src/parser.c" +yy443: + yyaccept = 45; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy444; + case '\\': goto yy138; + default: goto yy61; + } +yy444: +#line 429 "src/parser.re" + { NEWTOKEN(PSI_T_INTVAL); goto start; } +#line 6409 "src/parser.c" +yy445: + yyaccept = 46; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy446; + case '\\': goto yy138; + default: goto yy61; + } +yy446: +#line 409 "src/parser.re" + { NEWTOKEN(PSI_T_OBJECT); goto start; } +#line 6484 "src/parser.c" +yy447: + yyaccept = 47; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy448; + case '\\': goto yy138; + default: goto yy61; + } +yy448: +#line 433 "src/parser.re" + { NEWTOKEN(PSI_T_OBJVAL); goto start; } +#line 6559 "src/parser.c" +yy449: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy393; - default: goto yy55; + case 'L': + case 'l': goto yy502; + default: goto yy62; } -yy334: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy450: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy394; - default: goto yy55; + case 'S': + case 's': goto yy504; + default: goto yy62; } -yy335: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy451: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy395; - default: goto yy55; + case 'S': + case 's': goto yy505; + default: goto yy62; } -yy336: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy452: + yyaccept = 48; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy453; + case '\\': goto yy138; + default: goto yy61; + } +yy453: +#line 423 "src/parser.re" + { NEWTOKEN(PSI_T_RETURN); goto start; } +#line 6658 "src/parser.c" +yy454: + yyaccept = 49; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy455; + case '\\': goto yy138; + default: goto yy61; + } +yy455: +#line 406 "src/parser.re" + { NEWTOKEN(PSI_T_SIGNED); goto start; } +#line 6733 "src/parser.c" +yy456: + yyaccept = 50; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy457; + case '\\': goto yy138; + default: goto yy61; + } +yy457: +#line 411 "src/parser.re" + { NEWTOKEN(PSI_T_STATIC); goto start; } +#line 6808 "src/parser.c" +yy458: + yyaccept = 51; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy459; + case '\\': goto yy138; + default: goto yy61; + } +yy459: +#line 407 "src/parser.re" + { NEWTOKEN(PSI_T_STRING); goto start; } +#line 6883 "src/parser.c" +yy460: + yyaccept = 52; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy461; + case '\\': goto yy138; + default: goto yy61; + } +yy461: +#line 426 "src/parser.re" + { NEWTOKEN(PSI_T_STRLEN); goto start; } +#line 6958 "src/parser.c" +yy462: + yyaccept = 53; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy463; + case '\\': goto yy138; + default: goto yy61; + } +yy463: +#line 414 "src/parser.re" + { NEWTOKEN(PSI_T_STRUCT); goto start; } +#line 7033 "src/parser.c" +yy464: + yyaccept = 54; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy465; + case '\\': goto yy138; + default: goto yy61; + } +yy465: +#line 427 "src/parser.re" + { NEWTOKEN(PSI_T_STRVAL); goto start; } +#line 7108 "src/parser.c" +yy466: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'J': - case 'j': goto yy397; - default: goto yy55; + case 'A': + case 'a': goto yy506; + default: goto yy62; } -yy337: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy467: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy398; - default: goto yy55; + case 'L': + case 'l': goto yy507; + default: goto yy62; } -yy338: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy468: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy509; + default: goto yy62; + } +yy469: + yyaccept = 55; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy470; + case '\\': goto yy138; + default: goto yy61; + } +yy470: +#line 440 "src/parser.re" + { NEWTOKEN(PSI_T_TO_INT); goto start; } +#line 7207 "src/parser.c" +yy471: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy399; - default: goto yy55; + case 'e': goto yy510; + default: goto yy62; } -yy339: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy472: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '6': goto yy400; - default: goto yy55; + case 'I': + case 'i': goto yy511; + default: goto yy62; } -yy340: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy473: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '2': goto yy401; - default: goto yy55; + case 'F': + case 'f': goto yy512; + default: goto yy62; } -yy341: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy474: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '4': goto yy402; - default: goto yy55; + case '_': goto yy514; + default: goto yy62; } -yy342: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy475: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy403; - default: goto yy55; + case '_': goto yy515; + default: goto yy62; } -yy343: - yyaccept = 33; - yych = *(P->mrk = ++P->cur); +yy476: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy516; + default: goto yy62; + } +yy477: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy517; + default: goto yy62; + } +yy478: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': + case 'e': goto yy519; + default: goto yy62; + } +yy479: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'G': - case 'H': - case 'I': - case 'J': + case 'g': goto yy520; + default: goto yy62; + } +yy480: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy522; + default: goto yy62; + } +yy481: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy524; + default: goto yy62; + } +yy482: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy525; + default: goto yy62; + } +yy483: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'r': goto yy526; + default: goto yy62; + } +yy484: + yyaccept = 56; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy485; + case '\\': goto yy138; + default: goto yy527; + } +yy485: +#line 365 "src/parser.re" + { NEWTOKEN(PSI_T_PRAGMA); goto start; } +#line 7379 "src/parser.c" +yy486: + yyaccept = 57; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy487; + case '\\': goto yy138; + default: goto yy61; + } +yy487: +#line 431 "src/parser.re" + { NEWTOKEN(PSI_T_BOOLVAL); goto start; } +#line 7454 "src/parser.c" +yy488: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy529; + default: goto yy62; + } +yy489: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'K': + case 'k': goto yy531; + default: goto yy62; + } +yy490: + yyaccept = 58; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy491; + case '\\': goto yy138; + default: goto yy61; + } +yy491: +#line 378 "src/parser.re" + { NEWTOKEN(PSI_T_DEFINED); goto start; } +#line 7545 "src/parser.c" +yy492: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'L': - case 'M': + case 'l': goto yy533; + default: goto yy62; + } +yy493: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy344; + case 'n': goto yy535; + default: goto yy62; } -yy344: -#line 357 "src/parser.re" - { NEWTOKEN(PSI_T_UNDEF); goto start; } -#line 4896 "src/parser.c" -yy345: - yyaccept = 34; - yych = *(P->mrk = ++P->cur); +yy494: + yyaccept = 59; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy495; + case '\\': goto yy138; + case '_': goto yy537; + default: goto yy61; + } +yy495: +#line 382 "src/parser.re" + { NEWTOKEN(PSI_T_INCLUDE); goto start; } +#line 7637 "src/parser.c" +yy496: + yyaccept = 60; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy497; + case '\\': goto yy138; + default: goto yy61; + } +yy497: +#line 399 "src/parser.re" + { NEWTOKEN(PSI_T_INT16); goto start; } +#line 7712 "src/parser.c" +yy498: + yyaccept = 61; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy499; + case '\\': goto yy138; + default: goto yy61; + } +yy499: +#line 401 "src/parser.re" + { NEWTOKEN(PSI_T_INT32); goto start; } +#line 7787 "src/parser.c" +yy500: + yyaccept = 62; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy501; + case '\\': goto yy138; + default: goto yy61; + } +yy501: +#line 403 "src/parser.re" + { NEWTOKEN(PSI_T_INT64); goto start; } +#line 7862 "src/parser.c" +yy502: + yyaccept = 63; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy503; + case '\\': goto yy138; + default: goto yy61; + } +yy503: +#line 428 "src/parser.re" + { NEWTOKEN(PSI_T_PATHVAL); goto start; } +#line 7937 "src/parser.c" +yy504: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy346; + case 's': goto yy538; + default: goto yy62; } -yy346: -#line 391 "src/parser.re" - { NEWTOKEN(PSI_T_UNION); goto start; } -#line 4970 "src/parser.c" -yy347: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy505: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy404; - default: goto yy55; + case 'E': + case 'e': goto yy539; + default: goto yy62; } -yy348: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy506: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy405; - default: goto yy55; + case 'Y': + case 'y': goto yy540; + default: goto yy62; } -yy349: - yyaccept = 35; - yych = *(P->mrk = ++P->cur); +yy507: + yyaccept = 64; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy508; + case '\\': goto yy138; + default: goto yy61; + } +yy508: +#line 442 "src/parser.re" + { NEWTOKEN(PSI_T_TO_BOOL); goto start; } +#line 8036 "src/parser.c" +yy509: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy542; + default: goto yy62; + } +yy510: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': + case 'c': goto yy544; + default: goto yy62; + } +yy511: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy350; + case 'n': goto yy545; + default: goto yy62; } -yy350: -#line 408 "src/parser.re" - { NEWTOKEN(PSI_T_ARRVAL); goto start; } -#line 5060 "src/parser.c" -yy351: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy512: + yyaccept = 65; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy513; + case '\\': goto yy138; + default: goto yy61; + } +yy513: +#line 413 "src/parser.re" + { NEWTOKEN(PSI_T_TYPEDEF); goto start; } +#line 8135 "src/parser.c" +yy514: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy406; - default: goto yy55; + case 'T': + case 't': goto yy546; + default: goto yy62; } -yy352: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy515: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy408; - default: goto yy55; + case 'T': + case 't': goto yy548; + default: goto yy62; } -yy353: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy516: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy409; - default: goto yy55; + case 'T': + case 't': goto yy550; + default: goto yy62; } -yy354: - yyaccept = 36; - yych = *(P->mrk = ++P->cur); +yy517: + yyaccept = 66; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy518; + case '\\': goto yy138; + default: goto yy61; + } +yy518: +#line 398 "src/parser.re" + { NEWTOKEN(PSI_T_UINT8); goto start; } +#line 8234 "src/parser.c" +yy519: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy355; - } -yy355: -#line 412 "src/parser.re" - { NEWTOKEN(PSI_T_CALLOC); goto start; } -#line 5158 "src/parser.c" -yy356: - yyaccept = 37; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case 'D': - case 'd': goto yy410; - case '\\': goto yy115; - default: goto yy357; - } -yy357: -#line 355 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINE); goto start; } -#line 5232 "src/parser.c" -yy358: - yyaccept = 38; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy359; - } -yy359: -#line 372 "src/parser.re" - { NEWTOKEN(PSI_T_DOUBLE); goto start; } -#line 5306 "src/parser.c" -yy360: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy412; - default: goto yy55; - } -yy361: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'O': - case 'o': goto yy413; - default: goto yy55; - } -yy362: - yyaccept = 39; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy363; - } -yy363: -#line 351 "src/parser.re" - { NEWTOKEN(PSI_T_IFNDEF); goto start; } -#line 5396 "src/parser.c" -yy364: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy414; - default: goto yy55; - } -yy365: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy416; - default: goto yy55; - } -yy366: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy418; - default: goto yy55; - } -yy367: - yyaccept = 40; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy368; - } -yy368: -#line 373 "src/parser.re" - { NEWTOKEN(PSI_T_INT8); goto start; } -#line 5494 "src/parser.c" -yy369: - yyaccept = 41; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy370; - } -yy370: -#line 405 "src/parser.re" - { NEWTOKEN(PSI_T_INTVAL); goto start; } -#line 5568 "src/parser.c" -yy371: - yyaccept = 42; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy372; - } -yy372: -#line 385 "src/parser.re" - { NEWTOKEN(PSI_T_OBJECT); goto start; } -#line 5642 "src/parser.c" -yy373: - yyaccept = 43; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy374; - } -yy374: -#line 409 "src/parser.re" - { NEWTOKEN(PSI_T_OBJVAL); goto start; } -#line 5716 "src/parser.c" -yy375: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'L': - case 'l': goto yy420; - default: goto yy55; - } -yy376: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'S': - case 's': goto yy422; - default: goto yy55; - } -yy377: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'S': - case 's': goto yy423; - default: goto yy55; - } -yy378: - yyaccept = 44; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy379; - } -yy379: -#line 399 "src/parser.re" - { NEWTOKEN(PSI_T_RETURN); goto start; } -#line 5814 "src/parser.c" -yy380: - yyaccept = 45; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy381; - } -yy381: -#line 382 "src/parser.re" - { NEWTOKEN(PSI_T_SIGNED); goto start; } -#line 5888 "src/parser.c" -yy382: - yyaccept = 46; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy383; - } -yy383: -#line 387 "src/parser.re" - { NEWTOKEN(PSI_T_STATIC); goto start; } -#line 5962 "src/parser.c" -yy384: - yyaccept = 47; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy385; - } -yy385: -#line 383 "src/parser.re" - { NEWTOKEN(PSI_T_STRING); goto start; } -#line 6036 "src/parser.c" -yy386: - yyaccept = 48; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy387; - } -yy387: -#line 402 "src/parser.re" - { NEWTOKEN(PSI_T_STRLEN); goto start; } -#line 6110 "src/parser.c" -yy388: - yyaccept = 49; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy389; - } -yy389: -#line 390 "src/parser.re" - { NEWTOKEN(PSI_T_STRUCT); goto start; } -#line 6184 "src/parser.c" -yy390: - yyaccept = 50; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy391; - } -yy391: -#line 403 "src/parser.re" - { NEWTOKEN(PSI_T_STRVAL); goto start; } -#line 6258 "src/parser.c" -yy392: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy424; - default: goto yy55; - } -yy393: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'L': - case 'l': goto yy425; - default: goto yy55; - } -yy394: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'A': - case 'a': goto yy427; - default: goto yy55; - } -yy395: - yyaccept = 51; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy396; - } -yy396: -#line 416 "src/parser.re" - { NEWTOKEN(PSI_T_TO_INT); goto start; } -#line 6356 "src/parser.c" -yy397: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'E': - case 'e': goto yy428; - default: goto yy55; - } -yy398: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'I': - case 'i': goto yy429; - default: goto yy55; - } -yy399: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'F': - case 'f': goto yy430; - default: goto yy55; - } -yy400: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '_': goto yy432; - default: goto yy55; - } -yy401: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '_': goto yy433; - default: goto yy55; - } -yy402: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '_': goto yy434; - default: goto yy55; - } -yy403: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy435; - default: goto yy55; - } -yy404: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'E': - case 'e': goto yy437; - default: goto yy55; - } -yy405: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'G': - case 'g': goto yy438; - default: goto yy55; - } -yy406: - yyaccept = 52; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy407; - } -yy407: -#line 407 "src/parser.re" - { NEWTOKEN(PSI_T_BOOLVAL); goto start; } -#line 6499 "src/parser.c" -yy408: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'E': - case 'e': goto yy440; - default: goto yy55; - } -yy409: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'K': - case 'k': goto yy442; - default: goto yy55; - } -yy410: - yyaccept = 53; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy411; - } -yy411: -#line 356 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINED); goto start; } -#line 6589 "src/parser.c" -yy412: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'L': - case 'l': goto yy444; - default: goto yy55; - } -yy413: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'N': - case 'n': goto yy446; - default: goto yy55; - } -yy414: - yyaccept = 54; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy415; - } -yy415: -#line 375 "src/parser.re" - { NEWTOKEN(PSI_T_INT16); goto start; } -#line 6679 "src/parser.c" -yy416: - yyaccept = 55; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy417; - } -yy417: -#line 377 "src/parser.re" - { NEWTOKEN(PSI_T_INT32); goto start; } -#line 6753 "src/parser.c" -yy418: - yyaccept = 56; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy419; - } -yy419: -#line 379 "src/parser.re" - { NEWTOKEN(PSI_T_INT64); goto start; } -#line 6827 "src/parser.c" -yy420: - yyaccept = 57; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy421; - } -yy421: -#line 404 "src/parser.re" - { NEWTOKEN(PSI_T_PATHVAL); goto start; } -#line 6901 "src/parser.c" -yy422: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'S': - case 's': goto yy448; - default: goto yy55; - } -yy423: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'E': - case 'e': goto yy449; - default: goto yy55; - } -yy424: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'Y': - case 'y': goto yy450; - default: goto yy55; - } -yy425: - yyaccept = 58; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy426; - } -yy426: -#line 418 "src/parser.re" - { NEWTOKEN(PSI_T_TO_BOOL); goto start; } -#line 6999 "src/parser.c" -yy427: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy452; - default: goto yy55; - } -yy428: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'C': - case 'c': goto yy454; - default: goto yy55; - } -yy429: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'N': - case 'n': goto yy455; - default: goto yy55; - } -yy430: - yyaccept = 59; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy431; - } -yy431: -#line 389 "src/parser.re" - { NEWTOKEN(PSI_T_TYPEDEF); goto start; } -#line 7097 "src/parser.c" -yy432: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy456; - default: goto yy55; - } -yy433: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy458; - default: goto yy55; - } -yy434: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'T': - case 't': goto yy460; - default: goto yy55; - } -yy435: - yyaccept = 60; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy436; - } -yy436: -#line 374 "src/parser.re" - { NEWTOKEN(PSI_T_UINT8); goto start; } -#line 7195 "src/parser.c" -yy437: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'D': - case 'd': goto yy462; - default: goto yy55; - } -yy438: - yyaccept = 61; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy439; - } -yy439: -#line 358 "src/parser.re" - { NEWTOKEN(PSI_T_WARNING); goto start; } -#line 7277 "src/parser.c" -yy440: - yyaccept = 62; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy441; - } -yy441: -#line 364 "src/parser.re" - { NEWTOKEN(PSI_T_CALLABLE); goto start; } -#line 7351 "src/parser.c" -yy442: - yyaccept = 63; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy443; - } -yy443: -#line 386 "src/parser.re" - { NEWTOKEN(PSI_T_CALLBACK); goto start; } -#line 7425 "src/parser.c" -yy444: - yyaccept = 64; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy445; - } -yy445: -#line 406 "src/parser.re" - { NEWTOKEN(PSI_T_FLOATVAL); goto start; } -#line 7499 "src/parser.c" -yy446: - yyaccept = 65; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy447; - } -yy447: -#line 388 "src/parser.re" - { NEWTOKEN(PSI_T_FUNCTION); goto start; } -#line 7573 "src/parser.c" -yy448: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'E': - case 'e': goto yy464; - default: goto yy55; - } -yy449: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case 'R': - case 'r': goto yy465; - default: goto yy55; - } -yy450: - yyaccept = 66; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy451; - } -yy451: -#line 414 "src/parser.re" - { NEWTOKEN(PSI_T_TO_ARRAY); goto start; } -#line 7663 "src/parser.c" -yy452: - yyaccept = 67; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy453; + case 'd': goto yy552; + default: goto yy62; } -yy453: -#line 417 "src/parser.re" - { NEWTOKEN(PSI_T_TO_FLOAT); goto start; } -#line 7737 "src/parser.c" -yy454: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy520: + yyaccept = 67; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy521; + case '\\': goto yy138; + default: goto yy61; + } +yy521: +#line 380 "src/parser.re" + { NEWTOKEN(PSI_T_WARNING); goto start; } +#line 8317 "src/parser.c" +yy522: + yyaccept = 68; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy523; + case '\\': goto yy138; + default: goto yy61; + } +yy523: +#line 369 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_ASM); goto start; } +#line 8392 "src/parser.c" +yy524: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy466; - default: goto yy55; + case 'b': goto yy554; + default: goto yy62; } -yy455: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy525: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'G': - case 'g': goto yy468; - default: goto yy55; + case 's': goto yy555; + default: goto yy62; } -yy456: - yyaccept = 68; - yych = *(P->mrk = ++P->cur); +yy526: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy457; + case 'i': goto yy556; + default: goto yy62; } -yy457: -#line 376 "src/parser.re" - { NEWTOKEN(PSI_T_UINT16); goto start; } -#line 7827 "src/parser.c" -yy458: +yy527: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\\': goto yy138; + case 'o': goto yy557; + default: goto yy527; + } +yy529: yyaccept = 69; - yych = *(P->mrk = ++P->cur); - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy459; - } -yy459: -#line 378 "src/parser.re" - { NEWTOKEN(PSI_T_UINT32); goto start; } -#line 7901 "src/parser.c" -yy460: + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy530; + case '\\': goto yy138; + default: goto yy61; + } +yy530: +#line 388 "src/parser.re" + { NEWTOKEN(PSI_T_CALLABLE); goto start; } +#line 8562 "src/parser.c" +yy531: yyaccept = 70; - yych = *(P->mrk = ++P->cur); + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy532; + case '\\': goto yy138; + default: goto yy61; + } +yy532: +#line 410 "src/parser.re" + { NEWTOKEN(PSI_T_CALLBACK); goto start; } +#line 8637 "src/parser.c" +yy533: + yyaccept = 71; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy534; + case '\\': goto yy138; + default: goto yy61; + } +yy534: +#line 430 "src/parser.re" + { NEWTOKEN(PSI_T_FLOATVAL); goto start; } +#line 8712 "src/parser.c" +yy535: + yyaccept = 72; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy536; + case '\\': goto yy138; + default: goto yy61; + } +yy536: +#line 412 "src/parser.re" + { NEWTOKEN(PSI_T_FUNCTION); goto start; } +#line 8787 "src/parser.c" +yy537: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy461; + case 'n': goto yy559; + default: goto yy62; } -yy461: -#line 380 "src/parser.re" - { NEWTOKEN(PSI_T_UINT64); goto start; } -#line 7975 "src/parser.c" -yy462: - yyaccept = 71; - yych = *(P->mrk = ++P->cur); +yy538: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy463; + case 'e': goto yy560; + default: goto yy62; } -yy463: -#line 381 "src/parser.re" - { NEWTOKEN(PSI_T_UNSIGNED); goto start; } -#line 8049 "src/parser.c" -yy464: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy539: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy470; - default: goto yy55; + case 'r': goto yy561; + default: goto yy62; } -yy465: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy540: + yyaccept = 73; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy541; + case '\\': goto yy138; + default: goto yy61; + } +yy541: +#line 438 "src/parser.re" + { NEWTOKEN(PSI_T_TO_ARRAY); goto start; } +#line 8886 "src/parser.c" +yy542: + yyaccept = 74; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy543; + case '\\': goto yy138; + default: goto yy61; + } +yy543: +#line 441 "src/parser.re" + { NEWTOKEN(PSI_T_TO_FLOAT); goto start; } +#line 8961 "src/parser.c" +yy544: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy471; - default: goto yy55; + case 't': goto yy562; + default: goto yy62; } -yy466: - yyaccept = 72; - yych = *(P->mrk = ++P->cur); +yy545: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy467; + case 'g': goto yy564; + default: goto yy62; } -yy467: -#line 413 "src/parser.re" - { NEWTOKEN(PSI_T_TO_OBJECT); goto start; } -#line 8139 "src/parser.c" -yy468: - yyaccept = 73; - yych = *(P->mrk = ++P->cur); +yy546: + yyaccept = 75; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy547; + case '\\': goto yy138; + default: goto yy61; + } +yy547: +#line 400 "src/parser.re" + { NEWTOKEN(PSI_T_UINT16); goto start; } +#line 9052 "src/parser.c" +yy548: + yyaccept = 76; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy549; + case '\\': goto yy138; + default: goto yy61; + } +yy549: +#line 402 "src/parser.re" + { NEWTOKEN(PSI_T_UINT32); goto start; } +#line 9127 "src/parser.c" +yy550: + yyaccept = 77; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy551; + case '\\': goto yy138; + default: goto yy61; + } +yy551: +#line 404 "src/parser.re" + { NEWTOKEN(PSI_T_UINT64); goto start; } +#line 9202 "src/parser.c" +yy552: + yyaccept = 78; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy553; + case '\\': goto yy138; + default: goto yy61; + } +yy553: +#line 405 "src/parser.re" + { NEWTOKEN(PSI_T_UNSIGNED); goto start; } +#line 9277 "src/parser.c" +yy554: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy469; + case 'u': goto yy566; + default: goto yy62; } -yy469: -#line 415 "src/parser.re" - { NEWTOKEN(PSI_T_TO_STRING); goto start; } -#line 8213 "src/parser.c" -yy470: - yyaccept = 4; - yych = *(P->mrk = ++P->cur); +yy555: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy473; - default: goto yy55; + case 'i': goto yy567; + default: goto yy62; } -yy471: - yyaccept = 74; - yych = *(P->mrk = ++P->cur); +yy556: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'c': goto yy568; + default: goto yy62; + } +yy557: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\\': goto yy138; + case 'n': goto yy569; + case 'o': goto yy557; + default: goto yy527; + } +yy559: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': + case 'e': goto yy570; + default: goto yy62; + } +yy560: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'R': - case 'S': + case 'r': goto yy571; + default: goto yy62; + } +yy561: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'T': - case 'U': - case 'V': - case 'W': + case 't': goto yy572; + default: goto yy62; + } +yy562: + yyaccept = 79; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy563; + case '\\': goto yy138; + default: goto yy61; + } +yy563: +#line 437 "src/parser.re" + { NEWTOKEN(PSI_T_TO_OBJECT); goto start; } +#line 9472 "src/parser.c" +yy564: + yyaccept = 80; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy565; + case '\\': goto yy138; + default: goto yy61; + } +yy565: +#line 439 "src/parser.re" + { NEWTOKEN(PSI_T_TO_STRING); goto start; } +#line 9547 "src/parser.c" +yy566: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy574; + default: goto yy62; + } +yy567: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'o': goto yy575; + default: goto yy62; + } +yy568: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy576; + default: goto yy62; + } +yy569: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\\': goto yy138; + case 'c': goto yy578; + case 'o': goto yy557; + default: goto yy527; + } +yy570: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy472; + case 'x': goto yy579; + default: goto yy62; } -yy472: -#line 397 "src/parser.re" - { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; } -#line 8295 "src/parser.c" -yy473: - yyaccept = 75; - yych = *(P->mrk = ++P->cur); +yy571: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy54; - case '\\': goto yy115; - default: goto yy474; + case 't': goto yy580; + default: goto yy62; + } +yy572: + yyaccept = 81; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy573; + case '\\': goto yy138; + default: goto yy61; + } +yy573: +#line 421 "src/parser.re" + { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; } +#line 9734 "src/parser.c" +yy574: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy582; + default: goto yy62; } -yy474: -#line 398 "src/parser.re" +yy575: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy583; + default: goto yy62; + } +yy576: + yyaccept = 82; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy577; + case '\\': goto yy138; + default: goto yy61; + } +yy577: +#line 367 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; } +#line 9823 "src/parser.c" +yy578: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\\': goto yy138; + case 'e': goto yy584; + case 'o': goto yy557; + default: goto yy527; + } +yy579: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy586; + default: goto yy62; + } +yy580: + yyaccept = 83; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy581; + case '\\': goto yy138; + default: goto yy61; + } +yy581: +#line 422 "src/parser.re" { NEWTOKEN(PSI_T_POST_ASSERT); goto start; } -#line 8369 "src/parser.c" +#line 9981 "src/parser.c" +yy582: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy588; + default: goto yy62; + } +yy583: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy589; + default: goto yy62; + } +yy584: + yyaccept = 84; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy585; + case '\\': goto yy138; + case 'o': goto yy557; + default: goto yy527; + } +yy585: +#line 366 "src/parser.re" + { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; } +#line 10073 "src/parser.c" +yy586: + yyaccept = 85; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy587; + case '\\': goto yy138; + default: goto yy61; + } +yy587: +#line 383 "src/parser.re" + { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; } +#line 10148 "src/parser.c" +yy588: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy590; + default: goto yy62; + } +yy589: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy591; + default: goto yy62; + } +yy590: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\n': + case '\v': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy55; + case '\t': + case '\f': + case ' ': goto yy593; + case '(': goto yy595; + case '\\': goto yy138; + default: goto yy61; + } +yy591: + yyaccept = 86; + yych = *(mrk = ++cur); + switch (yych) { + case 0x00: + case 0x01: + case 0x02: + case 0x03: + case 0x04: + case 0x05: + case 0x06: + case 0x07: + case 0x08: + case '\t': + case '\n': + case '\v': + case '\f': + case '\r': + case 0x0E: + case 0x0F: + case 0x10: + case 0x11: + case 0x12: + case 0x13: + case 0x14: + case 0x15: + case 0x16: + case 0x17: + case 0x18: + case 0x19: + case 0x1A: + case 0x1B: + case 0x1C: + case 0x1D: + case 0x1E: + case 0x1F: + case ' ': + case '!': + case '"': + case '#': + case '$': + case '%': + case '&': + case '\'': + case '(': + case ')': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case ';': + case '<': + case '=': + case '>': + case '?': + case '@': + case '[': + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy592; + case '\\': goto yy138; + default: goto yy61; + } +yy592: +#line 368 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; } +#line 10308 "src/parser.c" +yy593: + ++cur; + if ((lim - cur) < 2) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\t': + case '\f': + case ' ': goto yy593; + case '(': goto yy595; + default: goto yy106; + } +yy595: + yych = *++cur; + switch (yych) { + case '(': goto yy596; + default: goto yy106; + } +yy596: + ++cur; +#line 447 "src/parser.re" + { parens = 2; goto cpp_attribute; } +#line 10330 "src/parser.c" } -#line 428 "src/parser.re" +#line 453 "src/parser.re" + + + character: ; + +#line 10337 "src/parser.c" + { + unsigned char yych; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\n': + case '\r': goto yy602; + case '\'': goto yy604; + case '\\': goto yy606; + default: goto yy600; + } +yy600: + ++cur; +#line 471 "src/parser.re" + { escaped = false; goto character; } +#line 10353 "src/parser.c" +yy602: + ++cur; +#line 458 "src/parser.re" + { NEWLINE(); goto character; } +#line 10358 "src/parser.c" +yy604: + ++cur; +#line 460 "src/parser.re" + { + if (escaped) { + escaped = false; + goto character; + } + cur -= 1; + NEWTOKEN(PSI_T_QUOTED_CHAR); + cur += 1; + token->flags = char_width; + goto start; + } +#line 10373 "src/parser.c" +yy606: + ++cur; +#line 459 "src/parser.re" + { escaped = !escaped; goto character; } +#line 10378 "src/parser.c" + } +#line 473 "src/parser.re" + + + string: ; + +#line 10385 "src/parser.c" + { + unsigned char yych; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\n': + case '\r': goto yy612; + case '"': goto yy614; + case '\\': goto yy616; + default: goto yy610; + } +yy610: + ++cur; +#line 491 "src/parser.re" + { escaped = false; goto string; } +#line 10401 "src/parser.c" +yy612: + ++cur; +#line 478 "src/parser.re" + { NEWLINE(); goto string; } +#line 10406 "src/parser.c" +yy614: + ++cur; +#line 480 "src/parser.re" + { + if (escaped) { + escaped = false; + goto string; + } + cur -= 1; + NEWTOKEN(PSI_T_QUOTED_STRING); + cur += 1; + token->flags = char_width; + goto start; + } +#line 10421 "src/parser.c" +yy616: + ++cur; +#line 479 "src/parser.re" + { escaped = !escaped; goto string; } +#line 10426 "src/parser.c" + } +#line 493 "src/parser.re" comment: ; -#line 8376 "src/parser.c" +#line 10433 "src/parser.c" { unsigned char yych; - if ((P->lim - P->cur) < 2) if (P->cur >= P->lim) goto done;; - yych = *P->cur; + if ((lim - cur) < 2) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case '\n': - case '\r': goto yy479; - case '*': goto yy481; - default: goto yy477; - } -yy477: - ++P->cur; -yy478: -#line 435 "src/parser.re" + case '\r': goto yy622; + case '*': goto yy624; + default: goto yy620; + } +yy620: + ++cur; +yy621: +#line 500 "src/parser.re" { goto comment; } -#line 8392 "src/parser.c" -yy479: - ++P->cur; -#line 433 "src/parser.re" +#line 10449 "src/parser.c" +yy622: + ++cur; +#line 498 "src/parser.re" { NEWLINE(); goto comment; } -#line 8397 "src/parser.c" -yy481: - yych = *++P->cur; +#line 10454 "src/parser.c" +yy624: + yych = *++cur; switch (yych) { - case '/': goto yy482; - default: goto yy478; + case '/': goto yy625; + default: goto yy621; } -yy482: - ++P->cur; -#line 434 "src/parser.re" +yy625: + ++cur; +#line 499 "src/parser.re" { NEWTOKEN(PSI_T_COMMENT); goto start; } -#line 8408 "src/parser.c" +#line 10465 "src/parser.c" } -#line 437 "src/parser.re" +#line 502 "src/parser.re" comment_sl: ; -#line 8415 "src/parser.c" +#line 10472 "src/parser.c" { unsigned char yych; - if (P->lim <= P->cur) if (P->cur >= P->lim) goto done;; - yych = *P->cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case '\n': - case '\r': goto yy488; - default: goto yy486; + case '\r': goto yy631; + default: goto yy629; } -yy486: - ++P->cur; -#line 443 "src/parser.re" +yy629: + ++cur; +#line 508 "src/parser.re" { goto comment_sl; } -#line 8429 "src/parser.c" -yy488: - ++P->cur; -#line 442 "src/parser.re" +#line 10486 "src/parser.c" +yy631: + ++cur; +#line 507 "src/parser.re" { NEWTOKEN(PSI_T_COMMENT); NEWLINE(); goto start; } -#line 8434 "src/parser.c" +#line 10491 "src/parser.c" } -#line 445 "src/parser.re" +#line 510 "src/parser.re" + + + cpp_attribute: ; + + +#line 10499 "src/parser.c" + { + unsigned char yych; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\n': + case '\r': goto yy637; + case '(': goto yy639; + case ')': goto yy641; + default: goto yy635; + } +yy635: + ++cur; +#line 519 "src/parser.re" + { goto cpp_attribute; } +#line 10515 "src/parser.c" +yy637: + ++cur; +#line 518 "src/parser.re" + { NEWLINE(); goto cpp_attribute; } +#line 10520 "src/parser.c" +yy639: + ++cur; +#line 516 "src/parser.re" + { ++parens; goto cpp_attribute; } +#line 10525 "src/parser.c" +yy641: + ++cur; +#line 517 "src/parser.re" + { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } } +#line 10530 "src/parser.c" + } +#line 521 "src/parser.re" -error: +error: ; + + P->error(PSI_DATA(P), token, PSI_WARNING, "PSI syntax error: unexpected input (%d) '%.*s' at col %tu", + token->type, token->size, token->text, tok - eol + 1); psi_plist_free(tokens); return NULL; + done: + + PSI_DEBUG_PRINT(P, "PSI: EOF cur=%p lim=%p\n", cur, lim); + return tokens; }