X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Fparser.c;h=74cfe6c2aa69cc98638c6177cde6eefdde0489e9;hp=947eea7bb21a29334657c60b1e366fb72c323009;hb=79dffa25e63ac38244a7425b02e58aaf0c631624;hpb=ba906e039ffe9e57842ce5135aa43efa00b8a4c6 diff --git a/src/parser.c b/src/parser.c index 947eea7..74cfe6c 100644 --- a/src/parser.c +++ b/src/parser.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.16 on Tue Mar 28 16:36:22 2017 */ +/* Generated by re2c 1.0.2 on Thu Sep 7 14:09:09 2017 */ #line 1 "src/parser.re" /******************************************************************************* Copyright (c) 2016, Michael Wallner . @@ -32,7 +32,8 @@ #include "parser.h" -#define YYMAXFILL 13 +#define YYMAXFILL 15 + #ifndef YYMAXFILL # define YYMAXFILL 256 #endif @@ -183,10 +184,10 @@ static void psi_parser_register_constants(struct psi_parser *P) } #endif -struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist *tokens) +struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist **tokens) { - if (psi_cpp_process(P->preproc, &tokens)) { - return tokens; + if (psi_cpp_process(P->preproc, tokens)) { + return *tokens; } return NULL; } @@ -208,7 +209,7 @@ bool psi_parser_parse(struct psi_parser *P, struct psi_parser_input *I) return false; } - if (!(preproc = psi_parser_preprocess(P, scanned))) { + if (!(preproc = psi_parser_preprocess(P, &scanned))) { psi_plist_free(scanned); return false; } @@ -262,22 +263,27 @@ struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input struct psi_token *token; const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk; unsigned parens; + bool escaped; + token_t char_width; + + PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file); tok = mrk = eol = cur = I->buffer; lim = I->buffer + I->length; I->lines = 1; - tokens = psi_plist_init((void (*)(void *)) psi_token_free); + tokens = psi_plist_init((psi_plist_dtor) psi_token_free); start: ; + char_width = 1; ctxmrk = NULL; tok = cur; -#line 277 "src/parser.c" +#line 283 "src/parser.c" { unsigned char yych; unsigned int yyaccept = 0; - if ((lim - cur) < 13) if (cur >= lim) goto done;; + if ((lim - cur) < 15) if (cur >= lim) goto done;; yych = *cur; switch (yych) { case 0x00: @@ -290,7 +296,6 @@ struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input case 0x07: case 0x08: case '\v': - case '\f': case 0x0E: case 0x0F: case 0x10: @@ -313,25 +318,26 @@ struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input 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 yy20; - case ')': goto yy22; - case '*': goto yy24; - case '+': goto yy26; - case ',': goto yy28; - case '-': goto yy30; - case '.': goto yy32; - case '/': goto yy34; - case '0': goto yy36; + 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': @@ -340,109 +346,112 @@ struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input case '6': case '7': case '8': - case '9': goto yy38; - case ':': goto yy40; - case ';': goto yy42; - case '<': goto yy44; - case '=': goto yy46; - case '>': goto yy48; - case '?': goto yy50; + 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 yy52; - case 'B': - case 'b': goto yy54; - case 'C': - case 'c': goto yy55; - case 'D': - case 'd': goto yy56; - case 'E': - case 'e': goto yy57; - case 'F': - case 'f': goto yy58; - case 'I': - case 'i': goto yy61; - case 'L': goto yy62; + case 'a': goto yy54; + case 'B': goto yy56; + case 'C': goto yy57; + case 'D': goto yy58; + case 'E': goto yy59; + case 'F': goto yy60; + case 'I': goto yy63; + case 'L': goto yy64; case 'M': - case 'm': goto yy63; + case 'm': goto yy65; case 'N': - case 'n': goto yy64; - case 'O': goto yy65; - case 'P': goto yy66; + case 'n': goto yy66; + case 'O': + case 'o': goto yy67; + case 'P': goto yy68; case 'R': - case 'r': goto yy67; - case 'S': - case 's': goto yy68; - case 'T': - case 't': goto yy69; - case 'U': - case 'u': goto yy70; - case 'V': - case 'v': goto yy71; + case 'r': goto yy69; + case 'S': goto yy70; + case 'T': goto yy71; + case 'U': goto yy72; case 'W': - case 'w': goto yy72; + case 'w': goto yy73; case 'Z': - case 'z': goto yy73; - case '[': goto yy74; - case '\\': goto yy76; - case ']': goto yy78; - case '^': goto yy80; - case '_': goto yy82; - case 'l': goto yy83; - case 'o': goto yy84; - case 'p': goto yy85; - case '{': goto yy86; - case '|': goto yy88; - case '}': goto yy90; - case '~': goto yy92; - default: goto yy59; + case 'z': goto yy74; + case '[': goto yy75; + case '\\': goto yy77; + case ']': goto yy79; + case '^': goto yy81; + case '_': goto yy83; + case 'b': goto yy84; + case 'c': goto yy85; + case 'd': goto yy86; + case 'e': goto yy87; + case 'f': goto yy88; + case 'i': goto yy89; + case 'l': goto yy90; + case 'p': goto yy91; + case 's': goto yy92; + case 't': goto yy93; + case 'u': goto yy94; + case 'v': goto yy95; + case '{': goto yy96; + case '|': goto yy98; + case '}': goto yy100; + case '~': goto yy102; + default: goto yy61; } yy2: ++cur; yy3: -#line 449 "src/parser.re" +#line 455 "src/parser.re" { NEWTOKEN(-2); goto error; } -#line 405 "src/parser.c" +#line 410 "src/parser.c" yy4: ++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 448 "src/parser.re" +#line 454 "src/parser.re" { NEWTOKEN(PSI_T_WHITESPACE); goto start; } -#line 418 "src/parser.c" +#line 424 "src/parser.c" yy7: ++cur; -#line 447 "src/parser.re" +#line 453 "src/parser.re" { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; } -#line 423 "src/parser.c" +#line 429 "src/parser.c" yy9: - ++cur; - switch ((yych = *cur)) { - case '=': goto yy94; + yych = *++cur; + switch (yych) { + case '=': goto yy104; default: goto yy10; } yy10: -#line 348 "src/parser.re" +#line 349 "src/parser.re" { NEWTOKEN(PSI_T_NOT); goto start; } -#line 433 "src/parser.c" +#line 439 "src/parser.c" yy11: - yyaccept = 0; - yych = *(mrk = ++cur); + ++cur; +#line 322 "src/parser.re" + { escaped = false; tok += 1; goto string; } +#line 444 "src/parser.c" +yy13: + yych = *++cur; switch (yych) { - case '"': goto yy3; - default: goto yy96; + case '#': goto yy106; + default: goto yy14; } -yy12: - ++cur; -#line 331 "src/parser.re" - { NEWTOKEN(PSI_T_HASH); goto start; } -#line 445 "src/parser.c" yy14: +#line 332 "src/parser.re" + { NEWTOKEN(PSI_T_HASH); goto start; } +#line 454 "src/parser.c" +yy15: yych = *++cur; switch (yych) { case 0x00: @@ -510,51 +519,49 @@ yy14: case '}': case '~': case 0x7F: goto yy3; - default: goto yy98; + default: goto yy108; } -yy15: +yy16: ++cur; -#line 349 "src/parser.re" +#line 350 "src/parser.re" { NEWTOKEN(PSI_T_MODULO); goto start; } -#line 520 "src/parser.c" -yy17: - ++cur; - switch ((yych = *cur)) { - case '&': goto yy101; - default: goto yy18; - } +#line 529 "src/parser.c" yy18: -#line 350 "src/parser.re" - { NEWTOKEN(PSI_T_AMPERSAND); goto start; } -#line 530 "src/parser.c" -yy19: - yyaccept = 0; - yych = *(mrk = ++cur); + yych = *++cur; switch (yych) { - case '\'': goto yy3; - default: goto yy103; + case '&': goto yy111; + default: goto yy19; } +yy19: +#line 351 "src/parser.re" + { NEWTOKEN(PSI_T_AMPERSAND); goto start; } +#line 539 "src/parser.c" yy20: ++cur; -#line 332 "src/parser.re" - { NEWTOKEN(PSI_T_LPAREN); goto start; } -#line 542 "src/parser.c" +#line 321 "src/parser.re" + { escaped = false; tok += 1; goto character; } +#line 544 "src/parser.c" yy22: ++cur; #line 333 "src/parser.re" - { NEWTOKEN(PSI_T_RPAREN); goto start; } -#line 547 "src/parser.c" + { NEWTOKEN(PSI_T_LPAREN); goto start; } +#line 549 "src/parser.c" yy24: ++cur; -#line 346 "src/parser.re" - { NEWTOKEN(PSI_T_ASTERISK); goto start; } -#line 552 "src/parser.c" +#line 334 "src/parser.re" + { NEWTOKEN(PSI_T_RPAREN); goto start; } +#line 554 "src/parser.c" yy26: - yyaccept = 1; + ++cur; +#line 347 "src/parser.re" + { NEWTOKEN(PSI_T_ASTERISK); goto start; } +#line 559 "src/parser.c" +yy28: + yyaccept = 0; yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy105; - case '0': goto yy36; + case '.': goto yy113; + case '0': goto yy38; case '1': case '2': case '3': @@ -563,24 +570,24 @@ yy26: case '6': case '7': case '8': - case '9': goto yy38; - default: goto yy27; + case '9': goto yy40; + default: goto yy29; } -yy27: -#line 351 "src/parser.re" +yy29: +#line 352 "src/parser.re" { NEWTOKEN(PSI_T_PLUS); goto start; } -#line 573 "src/parser.c" -yy28: +#line 580 "src/parser.c" +yy30: ++cur; -#line 335 "src/parser.re" +#line 336 "src/parser.re" { NEWTOKEN(PSI_T_COMMA); goto start; } -#line 578 "src/parser.c" -yy30: - yyaccept = 2; +#line 585 "src/parser.c" +yy32: + yyaccept = 1; yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy105; - case '0': goto yy36; + case '.': goto yy113; + case '0': goto yy38; case '1': case '2': case '3': @@ -589,18 +596,18 @@ yy30: case '6': case '7': case '8': - case '9': goto yy38; - default: goto yy31; + case '9': goto yy40; + default: goto yy33; } -yy31: -#line 352 "src/parser.re" +yy33: +#line 353 "src/parser.re" { NEWTOKEN(PSI_T_MINUS); goto start; } -#line 599 "src/parser.c" -yy32: - yyaccept = 3; +#line 606 "src/parser.c" +yy34: + yyaccept = 2; yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy107; + case '.': goto yy115; case '0': case '1': case '2': @@ -610,60 +617,46 @@ yy32: case '6': case '7': case '8': - case '9': goto yy108; - default: goto yy33; - } -yy33: -#line 363 "src/parser.re" - { NEWTOKEN(PSI_T_PERIOD); goto start; } -#line 620 "src/parser.c" -yy34: - ++cur; - switch ((yych = *cur)) { - case '*': goto yy111; - case '/': goto yy113; + case '9': goto yy116; default: goto yy35; } yy35: -#line 353 "src/parser.re" - { NEWTOKEN(PSI_T_SLASH); goto start; } -#line 631 "src/parser.c" +#line 364 "src/parser.re" + { NEWTOKEN(PSI_T_PERIOD); goto start; } +#line 627 "src/parser.c" yy36: - yyaccept = 4; + yych = *++cur; + switch (yych) { + case '*': goto yy119; + case '/': goto yy121; + default: goto yy37; + } +yy37: +#line 354 "src/parser.re" + { NEWTOKEN(PSI_T_SLASH); goto start; } +#line 638 "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 '.': goto yy123; case 'E': - case 'e': goto yy119; - case 'L': - case 'l': goto yy120; - case 'U': - case 'u': goto yy122; + case 'e': goto yy127; case 'X': - case 'x': goto yy124; - default: goto yy37; + case 'x': goto yy132; + default: goto yy126; } -yy37: -#line 316 "src/parser.re" +yy39: +#line 308 "src/parser.re" { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; } -#line 659 "src/parser.c" -yy38: - yyaccept = 4; +#line 653 "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 '.': goto yy123; case '0': case '1': case '2': @@ -673,27 +666,27 @@ yy38: case '6': case '7': case '8': - case '9': goto yy38; + case '9': goto yy40; case 'E': - case 'e': goto yy119; + case 'e': goto yy127; case 'L': - case 'l': goto yy120; + case 'l': goto yy128; case 'U': - case 'u': goto yy122; - default: goto yy37; + case 'u': goto yy130; + default: goto yy39; } -yy40: +yy42: ++cur; -#line 336 "src/parser.re" +#line 337 "src/parser.re" { NEWTOKEN(PSI_T_COLON); goto start; } -#line 690 "src/parser.c" -yy42: +#line 683 "src/parser.c" +yy44: ++cur; -#line 334 "src/parser.re" +#line 335 "src/parser.re" { NEWTOKEN(PSI_T_EOS); goto start; } -#line 695 "src/parser.c" -yy44: - yyaccept = 5; +#line 688 "src/parser.c" +yy46: + yyaccept = 4; yych = *(mrk = ++cur); switch (yych) { case '-': @@ -761,115 +754,111 @@ yy44: case 'w': case 'x': case 'y': - case 'z': goto yy125; - case '<': goto yy127; - case '=': goto yy129; - default: goto yy45; - } -yy45: -#line 361 "src/parser.re" - { NEWTOKEN(PSI_T_LCHEVR); goto start; } -#line 773 "src/parser.c" -yy46: - ++cur; - switch ((yych = *cur)) { - case '=': goto yy131; + case 'z': goto yy133; + case '<': goto yy135; + case '=': goto yy137; default: goto yy47; } yy47: -#line 345 "src/parser.re" - { NEWTOKEN(PSI_T_EQUALS); goto start; } -#line 783 "src/parser.c" +#line 362 "src/parser.re" + { NEWTOKEN(PSI_T_LCHEVR); goto start; } +#line 766 "src/parser.c" yy48: - ++cur; - switch ((yych = *cur)) { - case '=': goto yy133; - case '>': goto yy135; + yych = *++cur; + switch (yych) { + case '=': goto yy139; default: goto yy49; } yy49: -#line 362 "src/parser.re" - { NEWTOKEN(PSI_T_RCHEVR); goto start; } -#line 794 "src/parser.c" +#line 346 "src/parser.re" + { NEWTOKEN(PSI_T_EQUALS); goto start; } +#line 776 "src/parser.c" yy50: + yych = *++cur; + switch (yych) { + case '=': goto yy141; + case '>': goto yy143; + default: goto yy51; + } +yy51: +#line 363 "src/parser.re" + { NEWTOKEN(PSI_T_RCHEVR); goto start; } +#line 787 "src/parser.c" +yy52: ++cur; -#line 365 "src/parser.re" +#line 366 "src/parser.re" { NEWTOKEN(PSI_T_IIF); goto start; } -#line 799 "src/parser.c" -yy52: - yyaccept = 6; +#line 792 "src/parser.c" +yy54: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy137; - default: goto yy60; + case 'r': goto yy145; + default: goto yy62; } -yy53: -#line 440 "src/parser.re" +yy55: +#line 448 "src/parser.re" { NEWTOKEN(PSI_T_NAME); goto start; } -#line 811 "src/parser.c" -yy54: - yyaccept = 6; +#line 804 "src/parser.c" +yy56: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy139; - default: goto yy60; + case 'o': goto yy147; + default: goto yy62; } -yy55: - yyaccept = 6; +yy57: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy140; - case 'H': - case 'h': goto yy141; + case 'a': goto yy148; case 'O': - case 'o': goto yy142; - default: goto yy60; + case 'o': goto yy149; + default: goto yy62; } -yy56: - yyaccept = 6; +yy58: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy143; - case 'O': - case 'o': goto yy144; - default: goto yy60; + case 'e': goto yy150; + default: goto yy62; } -yy57: - yyaccept = 6; +yy59: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy145; + case 'l': goto yy151; case 'N': - case 'n': goto yy146; + case 'n': goto yy152; case 'R': - case 'r': goto yy147; - default: goto yy60; + case 'r': goto yy153; + default: goto yy62; } -yy58: - yyaccept = 6; +yy60: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy148; + case 'a': goto yy154; case 'L': - case 'l': goto yy149; + case 'l': goto yy155; case 'R': - case 'r': goto yy150; + case 'r': goto yy156; case 'U': - case 'u': goto yy151; - default: goto yy60; + case 'u': goto yy157; + default: goto yy62; } -yy59: - yyaccept = 6; +yy61: + yyaccept = 5; mrk = ++cur; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; -yy60: +yy62: switch (yych) { case 0x00: case 0x01: @@ -934,148 +923,132 @@ yy60: case '|': case '}': case '~': - case 0x7F: goto yy53; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy55; + case '\\': goto yy146; + default: goto yy61; } -yy61: - yyaccept = 6; +yy63: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy152; + case 'f': goto yy158; case 'N': - case 'n': goto yy154; - default: goto yy60; + case 'n': goto yy160; + default: goto yy62; } -yy62: - yyaccept = 6; +yy64: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case '"': goto yy155; - case '\'': goto yy156; + case '"': + case '\'': goto yy161; case 'E': - case 'e': goto yy157; + case 'e': goto yy163; case 'I': - case 'i': goto yy158; - case 'O': - case 'o': goto yy159; - default: goto yy60; + case 'i': goto yy164; + default: goto yy62; } -yy63: - yyaccept = 6; +yy65: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy160; - default: goto yy60; + case 'i': goto yy165; + default: goto yy62; } -yy64: - yyaccept = 6; +yy66: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy161; - default: goto yy60; + case 'u': goto yy166; + default: goto yy62; } -yy65: - yyaccept = 6; +yy67: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'B': - case 'b': goto yy162; - default: goto yy60; + case 'b': goto yy167; + default: goto yy62; } -yy66: - yyaccept = 6; +yy68: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy163; + case 'a': goto yy168; case 'O': - case 'o': goto yy164; + case 'o': goto yy169; case 'R': - case 'r': goto yy165; - default: goto yy60; + case 'r': goto yy170; + default: goto yy62; } -yy67: - yyaccept = 6; +yy69: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy166; - default: goto yy60; + case 'e': goto yy171; + default: goto yy62; } -yy68: - yyaccept = 6; +yy70: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy167; - case 'H': - case 'h': goto yy168; - case 'I': - case 'i': goto yy169; + case 'e': goto yy172; case 'T': - case 't': goto yy170; - default: goto yy60; + case 't': goto yy173; + default: goto yy62; } -yy69: - yyaccept = 6; +yy71: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy171; + case 'e': goto yy174; case 'O': - case 'o': goto yy172; + case 'o': goto yy175; case 'R': - case 'r': goto yy173; - case 'Y': - case 'y': goto yy174; - default: goto yy60; + case 'r': goto yy176; + default: goto yy62; } -yy70: - yyaccept = 6; +yy72: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy175; + case '"': + case '\'': goto yy177; case 'N': - case 'n': goto yy176; - default: goto yy60; + case 'n': goto yy179; + default: goto yy62; } -yy71: - yyaccept = 6; +yy73: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy177; - default: goto yy60; + case 'A': + case 'a': goto yy180; + default: goto yy62; } -yy72: - yyaccept = 6; +yy74: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy178; - default: goto yy60; + case 'V': + case 'v': goto yy181; + default: goto yy62; } -yy73: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy179; - default: goto yy60; - } -yy74: +yy75: ++cur; -#line 339 "src/parser.re" +#line 340 "src/parser.re" { NEWTOKEN(PSI_T_LBRACKET); goto start; } -#line 1076 "src/parser.c" -yy76: - ++cur; - switch ((yych = *cur)) { +#line 1049 "src/parser.c" +yy77: + yych = *++cur; + switch (yych) { case 0x00: case 0x01: case 0x02: @@ -1150,102 +1123,197 @@ yy76: case '|': case '}': case '~': - case 0x7F: goto yy77; - default: goto yy180; + case 0x7F: goto yy78; + default: goto yy182; } -yy77: -#line 354 "src/parser.re" - { NEWTOKEN(PSI_T_BSLASH); goto start; } -#line 1160 "src/parser.c" yy78: +#line 355 "src/parser.re" + { NEWTOKEN(PSI_T_BSLASH); goto start; } +#line 1133 "src/parser.c" +yy79: ++cur; -#line 340 "src/parser.re" +#line 341 "src/parser.re" { NEWTOKEN(PSI_T_RBRACKET); goto start; } -#line 1165 "src/parser.c" -yy80: +#line 1138 "src/parser.c" +yy81: ++cur; -#line 356 "src/parser.re" +#line 357 "src/parser.re" { NEWTOKEN(PSI_T_CARET); goto start; } -#line 1170 "src/parser.c" -yy82: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy183; - default: goto yy60; - } +#line 1143 "src/parser.c" yy83: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy157; - case 'I': - case 'i': goto yy158; - case 'O': - case 'o': goto yy159; - default: goto yy60; + case '_': goto yy185; + default: goto yy62; } yy84: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'B': - case 'b': goto yy162; - case 'n': goto yy184; - default: goto yy60; + case 'O': goto yy147; + case 'o': goto yy186; + default: goto yy62; } yy85: - yyaccept = 6; + 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 yy185; - default: goto yy60; + case 'a': goto yy148; + case 'O': goto yy149; + case 'h': goto yy187; + case 'o': goto yy188; + default: goto yy62; } yy86: - ++cur; -#line 337 "src/parser.re" - { NEWTOKEN(PSI_T_LBRACE); goto start; } -#line 1215 "src/parser.c" + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy150; + case 'o': goto yy189; + default: goto yy62; + } +yy87: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy151; + case 'N': goto yy152; + case 'R': + case 'r': goto yy153; + case 'n': goto yy190; + default: goto yy62; + } yy88: - ++cur; - switch ((yych = *cur)) { - case '|': goto yy186; - default: goto yy89; + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy154; + case 'L': goto yy155; + case 'R': + case 'r': goto yy156; + case 'U': + case 'u': goto yy157; + case 'l': goto yy191; + default: goto yy62; } yy89: -#line 355 "src/parser.re" - { NEWTOKEN(PSI_T_PIPE); goto start; } -#line 1225 "src/parser.c" + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'F': + case 'f': goto yy158; + case 'N': goto yy160; + case 'n': goto yy192; + default: goto yy62; + } yy90: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy163; + case 'I': goto yy164; + case 'i': goto yy193; + case 'o': goto yy194; + default: goto yy62; + } +yy91: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy168; + case 'O': + case 'o': goto yy169; + case 'R': goto yy170; + case 'r': goto yy195; + default: goto yy62; + } +yy92: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy172; + case 'T': goto yy173; + case 'h': goto yy196; + case 'i': goto yy197; + case 't': goto yy198; + default: goto yy62; + } +yy93: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy174; + case 'O': + case 'o': goto yy175; + case 'R': + case 'r': goto yy176; + case 'y': goto yy199; + default: goto yy62; + } +yy94: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '"': + case '\'': goto yy200; + case '8': goto yy202; + case 'N': goto yy179; + case 'i': goto yy203; + case 'n': goto yy204; + default: goto yy62; + } +yy95: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'o': goto yy205; + default: goto yy62; + } +yy96: ++cur; #line 338 "src/parser.re" + { NEWTOKEN(PSI_T_LBRACE); goto start; } +#line 1286 "src/parser.c" +yy98: + yych = *++cur; + switch (yych) { + case '|': goto yy206; + default: goto yy99; + } +yy99: +#line 356 "src/parser.re" + { NEWTOKEN(PSI_T_PIPE); goto start; } +#line 1296 "src/parser.c" +yy100: + ++cur; +#line 339 "src/parser.re" { NEWTOKEN(PSI_T_RBRACE); goto start; } -#line 1230 "src/parser.c" -yy92: +#line 1301 "src/parser.c" +yy102: ++cur; -#line 347 "src/parser.re" +#line 348 "src/parser.re" { NEWTOKEN(PSI_T_TILDE); goto start; } -#line 1235 "src/parser.c" -yy94: +#line 1306 "src/parser.c" +yy104: ++cur; -#line 341 "src/parser.re" +#line 342 "src/parser.re" { NEWTOKEN(PSI_T_CMP_NE); goto start; } -#line 1240 "src/parser.c" -yy96: +#line 1311 "src/parser.c" +yy106: ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '"': goto yy188; - default: goto yy96; - } -yy98: +#line 331 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_PASTE); goto start; } +#line 1316 "src/parser.c" +yy108: ++cur; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; @@ -1314,28 +1382,19 @@ yy98: case '|': case '}': case '~': - case 0x7F: goto yy100; - default: goto yy98; + case 0x7F: goto yy110; + default: goto yy108; } -yy100: -#line 442 "src/parser.re" +yy110: +#line 450 "src/parser.re" { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; } -#line 1324 "src/parser.c" -yy101: +#line 1392 "src/parser.c" +yy111: ++cur; -#line 343 "src/parser.re" +#line 344 "src/parser.re" { NEWTOKEN(PSI_T_AND); goto start; } -#line 1329 "src/parser.c" -yy103: - ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\'': goto yy190; - case '\\': goto yy192; - default: goto yy103; - } -yy105: +#line 1397 "src/parser.c" +yy113: yych = *++cur; switch (yych) { case '0': @@ -1347,110 +1406,114 @@ yy105: case '6': case '7': case '8': - case '9': goto yy108; - default: goto yy106; + case '9': goto yy116; + default: goto yy114; } -yy106: +yy114: cur = mrk; switch (yyaccept) { - case 0: goto yy3; - case 1: goto yy27; - case 2: goto yy31; - case 3: goto yy33; - case 4: goto yy37; - case 5: goto yy45; - case 6: goto yy53; - case 7: goto yy110; - case 8: goto yy121; - case 9: goto yy153; - case 10: goto yy182; - case 11: goto yy230; - case 12: goto yy232; - case 13: goto yy234; - case 14: goto yy244; - case 15: goto yy191; - case 16: goto yy277; - case 17: goto yy280; - case 18: goto yy286; - case 19: goto yy288; - case 20: goto yy291; - case 21: goto yy296; - case 22: goto yy307; - case 23: goto yy310; - case 24: goto yy325; - case 25: goto yy333; - case 26: goto yy340; - case 27: goto yy343; - case 28: goto yy346; - case 29: goto yy349; - case 30: goto yy356; - case 31: goto yy358; - case 32: goto yy362; - case 33: goto yy364; - case 34: goto yy366; - case 35: goto yy368; - case 36: goto yy371; - case 37: goto yy380; - case 38: goto yy388; - case 39: goto yy407; - case 40: goto yy409; - case 41: goto yy415; - case 42: goto yy420; - case 43: goto yy422; - case 44: goto yy424; - case 45: goto yy428; - case 46: goto yy434; - case 47: goto yy436; - case 48: goto yy438; - case 49: goto yy440; - case 50: goto yy445; - case 51: goto yy447; - case 52: goto yy449; - case 53: goto yy451; - case 54: goto yy453; - case 55: goto yy455; - case 56: goto yy457; - case 57: goto yy462; - case 58: goto yy474; - case 59: goto yy476; - case 60: goto yy480; - case 61: goto yy484; - case 62: goto yy486; - case 63: goto yy488; - case 64: goto yy490; - case 65: goto yy492; - case 66: goto yy497; - case 67: goto yy502; - case 68: goto yy507; - case 69: goto yy510; - case 70: goto yy513; - case 71: goto yy515; - case 72: goto yy517; - case 73: goto yy519; - case 74: goto yy524; - case 75: goto yy526; - case 76: goto yy530; - case 77: goto yy532; - case 78: goto yy534; - case 79: goto yy536; - case 80: goto yy542; - case 81: goto yy544; - case 82: goto yy549; - case 83: goto yy553; - default: goto yy556; - } -yy107: + 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 yy118; + case 7: goto yy129; + case 8: goto yy159; + case 9: goto yy184; + case 10: goto yy241; + case 11: goto yy243; + case 12: goto yy252; + case 13: goto yy272; + case 14: goto yy305; + case 15: goto yy307; + case 16: goto yy313; + case 17: goto yy321; + case 18: goto yy333; + case 19: goto yy341; + case 20: goto yy345; + case 21: goto yy352; + case 22: goto yy354; + case 23: goto yy358; + case 24: goto yy365; + case 25: goto yy367; + case 26: goto yy378; + case 27: goto yy381; + case 28: goto yy388; + case 29: goto yy391; + case 30: goto yy393; + case 31: goto yy395; + case 32: goto yy399; + case 33: goto yy404; + case 34: goto yy422; + case 35: goto yy430; + case 36: goto yy433; + case 37: goto yy440; + case 38: goto yy450; + case 39: goto yy454; + case 40: goto yy459; + case 41: goto yy461; + case 42: goto yy465; + case 43: goto yy468; + case 44: goto yy470; + case 45: goto yy472; + case 46: goto yy477; + case 47: goto yy479; + case 48: goto yy481; + case 49: goto yy483; + case 50: goto yy485; + case 51: goto yy490; + case 52: goto yy500; + case 53: goto yy505; + case 54: goto yy507; + case 55: goto yy509; + case 56: goto yy511; + case 57: goto yy513; + case 58: goto yy522; + case 59: goto yy526; + case 60: goto yy530; + case 61: goto yy532; + case 62: goto yy537; + case 63: goto yy542; + case 64: goto yy544; + case 65: goto yy550; + case 66: goto yy552; + case 67: goto yy554; + case 68: goto yy558; + case 69: goto yy563; + case 70: goto yy567; + case 71: goto yy569; + case 72: goto yy571; + case 73: goto yy573; + case 74: goto yy578; + case 75: goto yy580; + case 76: goto yy586; + case 77: goto yy591; + case 78: goto yy593; + case 79: goto yy595; + case 80: goto yy597; + case 81: goto yy599; + case 82: goto yy604; + case 83: goto yy606; + case 84: goto yy614; + case 85: goto yy618; + case 86: goto yy622; + case 87: goto yy626; + case 88: goto yy628; + default: goto yy633; + } +yy115: yych = *++cur; switch (yych) { - case '.': goto yy194; - default: goto yy106; + case '.': goto yy208; + default: goto yy114; } -yy108: - yyaccept = 7; +yy116: + yyaccept = 6; mrk = ++cur; if ((lim - cur) < 2) if (cur >= lim) goto done;; yych = *cur; - ctxmrk = cur; switch (yych) { case '0': case '1': @@ -1461,35 +1524,34 @@ yy108: case '6': case '7': case '8': - case '9': goto yy108; + case '9': goto yy116; case 'D': - case 'd': goto yy196; + case 'd': goto yy210; case 'F': - case 'f': goto yy197; + case 'f': goto yy211; case 'L': - case 'l': goto yy199; - default: goto yy110; + case 'l': goto yy213; + default: goto yy118; } -yy110: -#line 322 "src/parser.re" +yy118: +#line 314 "src/parser.re" { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; } -#line 1477 "src/parser.c" -yy111: +#line 1540 "src/parser.c" +yy119: ++cur; -#line 329 "src/parser.re" +#line 328 "src/parser.re" { goto comment; } -#line 1482 "src/parser.c" -yy113: +#line 1545 "src/parser.c" +yy121: ++cur; -#line 330 "src/parser.re" +#line 329 "src/parser.re" { goto comment_sl; } -#line 1487 "src/parser.c" -yy115: - yyaccept = 7; +#line 1550 "src/parser.c" +yy123: + yyaccept = 6; mrk = ++cur; if ((lim - cur) < 3) if (cur >= lim) goto done;; yych = *cur; - ctxmrk = cur; switch (yych) { case '0': case '1': @@ -1500,22 +1562,22 @@ yy115: case '6': case '7': case '8': - case '9': goto yy115; + case '9': goto yy123; case 'D': - case 'd': goto yy196; + case 'd': goto yy210; case 'E': - case 'e': goto yy119; + case 'e': goto yy127; case 'F': - case 'f': goto yy197; + case 'f': goto yy211; case 'L': - case 'l': goto yy199; - default: goto yy110; + case 'l': goto yy213; + default: goto yy118; } -yy117: +yy125: ++cur; if ((lim - cur) < 3) if (cur >= lim) goto done;; yych = *cur; - ctxmrk = cur; +yy126: switch (yych) { case '0': case '1': @@ -1524,18 +1586,18 @@ yy117: case '4': case '5': case '6': - case '7': goto yy117; + case '7': goto yy125; case 'L': - case 'l': goto yy120; + case 'l': goto yy128; case 'U': - case 'u': goto yy122; - default: goto yy37; + case 'u': goto yy130; + default: goto yy39; } -yy119: +yy127: yych = *++cur; switch (yych) { case '+': - case '-': goto yy105; + case '-': goto yy113; case '0': case '1': case '2': @@ -1545,37 +1607,37 @@ yy119: case '6': case '7': case '8': - case '9': goto yy108; - default: goto yy106; + case '9': goto yy116; + default: goto yy114; } -yy120: - yyaccept = 8; +yy128: + yyaccept = 7; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy201; + case 'l': goto yy215; case 'U': - case 'u': goto yy202; - default: goto yy121; + case 'u': goto yy216; + default: goto yy129; } -yy121: - cur = ctxmrk; -#line 318 "src/parser.re" +yy129: + cur -= 1; +#line 310 "src/parser.re" { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; } -#line 1566 "src/parser.c" -yy122: - ++cur; - switch ((yych = *cur)) { +#line 1628 "src/parser.c" +yy130: + yych = *++cur; + switch (yych) { case 'L': - case 'l': goto yy204; - default: goto yy123; + case 'l': goto yy218; + default: goto yy131; } -yy123: - cur = ctxmrk; -#line 317 "src/parser.re" +yy131: + cur -= 1; +#line 309 "src/parser.re" { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; } -#line 1578 "src/parser.c" -yy124: +#line 1640 "src/parser.c" +yy132: yych = *++cur; switch (yych) { case '0': @@ -1599,10 +1661,10 @@ yy124: case 'c': case 'd': case 'e': - case 'f': goto yy205; - default: goto yy106; + case 'f': goto yy219; + default: goto yy114; } -yy125: +yy133: ++cur; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; @@ -1672,44 +1734,44 @@ yy125: case 'w': case 'x': case 'y': - case 'z': goto yy125; - case '>': goto yy207; - default: goto yy106; + case 'z': goto yy133; + case '>': goto yy221; + default: goto yy114; } -yy127: +yy135: ++cur; -#line 357 "src/parser.re" +#line 358 "src/parser.re" { NEWTOKEN(PSI_T_LSHIFT); goto start; } -#line 1684 "src/parser.c" -yy129: +#line 1746 "src/parser.c" +yy137: ++cur; -#line 359 "src/parser.re" +#line 360 "src/parser.re" { NEWTOKEN(PSI_T_CMP_LE); goto start; } -#line 1689 "src/parser.c" -yy131: +#line 1751 "src/parser.c" +yy139: ++cur; -#line 342 "src/parser.re" +#line 343 "src/parser.re" { NEWTOKEN(PSI_T_CMP_EQ); goto start; } -#line 1694 "src/parser.c" -yy133: +#line 1756 "src/parser.c" +yy141: ++cur; -#line 360 "src/parser.re" +#line 361 "src/parser.re" { NEWTOKEN(PSI_T_CMP_GE); goto start; } -#line 1699 "src/parser.c" -yy135: +#line 1761 "src/parser.c" +yy143: ++cur; -#line 358 "src/parser.re" +#line 359 "src/parser.re" { NEWTOKEN(PSI_T_RSHIFT); goto start; } -#line 1704 "src/parser.c" -yy137: - yyaccept = 6; +#line 1766 "src/parser.c" +yy145: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy209; - default: goto yy60; + case 'r': goto yy223; + default: goto yy62; } -yy138: +yy146: ++cur; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; @@ -1788,121 +1850,101 @@ yy138: case '|': case '}': case '~': - case 0x7F: goto yy106; - default: goto yy180; + case 0x7F: goto yy114; + default: goto yy182; } -yy139: - yyaccept = 6; +yy147: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy210; - default: goto yy60; + case 'o': goto yy224; + default: goto yy62; } -yy140: - yyaccept = 6; +yy148: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy211; - default: goto yy60; - } -yy141: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy212; - default: goto yy60; + case 'l': goto yy225; + default: goto yy62; } -yy142: - yyaccept = 6; +yy149: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy213; case 'U': - case 'u': goto yy214; - default: goto yy60; + case 'u': goto yy226; + default: goto yy62; } -yy143: - yyaccept = 6; +yy150: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'F': - case 'f': goto yy215; - default: goto yy60; - } -yy144: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy216; - default: goto yy60; + case 'f': goto yy227; + default: goto yy62; } -yy145: - yyaccept = 6; +yy151: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy217; + case 'i': goto yy228; case 'S': - case 's': goto yy218; - default: goto yy60; + case 's': goto yy229; + default: goto yy62; } -yy146: - yyaccept = 6; +yy152: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy219; - case 'U': - case 'u': goto yy220; - default: goto yy60; + case 'd': goto yy230; + default: goto yy62; } -yy147: - yyaccept = 6; +yy153: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy221; - default: goto yy60; + case 'r': goto yy231; + default: goto yy62; } -yy148: - yyaccept = 6; +yy154: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy222; - default: goto yy60; + case 'l': goto yy232; + default: goto yy62; } -yy149: - yyaccept = 6; +yy155: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy223; - default: goto yy60; + case 'o': goto yy233; + default: goto yy62; } -yy150: - yyaccept = 6; +yy156: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy224; - default: goto yy60; + case 'e': goto yy234; + default: goto yy62; } -yy151: - yyaccept = 6; +yy157: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy225; - default: goto yy60; + case 'n': goto yy235; + default: goto yy62; } -yy152: - yyaccept = 9; +yy158: + yyaccept = 8; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -1968,231 +2010,179 @@ yy152: case '|': case '}': case '~': - case 0x7F: goto yy153; + case 0x7F: goto yy159; case 'D': - case 'd': goto yy226; + case 'd': goto yy236; case 'N': - case 'n': goto yy227; - case '\\': goto yy138; - default: goto yy59; + case 'n': goto yy237; + case '\\': goto yy146; + default: goto yy61; } -yy153: -#line 368 "src/parser.re" +yy159: +#line 399 "src/parser.re" { NEWTOKEN(PSI_T_IF); goto start; } -#line 1983 "src/parser.c" -yy154: - yyaccept = 6; +#line 2025 "src/parser.c" +yy160: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'C': - case 'c': goto yy228; - case 'T': - case 't': goto yy229; - default: goto yy60; - } -yy155: - yych = *++cur; - switch (yych) { - case '"': goto yy106; - default: goto yy96; - } -yy156: - yych = *++cur; - switch (yych) { - case '\'': goto yy106; - default: goto yy103; - } -yy157: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { + case 'c': goto yy238; case 'T': - case 't': goto yy231; - default: goto yy60; - } -yy158: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy233; - default: goto yy60; - } -yy159: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy235; - default: goto yy60; - } -yy160: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'X': - case 'x': goto yy236; - default: goto yy60; + case 't': goto yy239; + default: goto yy62; } yy161: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy237; - default: goto yy60; - } -yy162: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'J': - case 'j': goto yy238; - default: goto yy60; - } + ++cur; + cur -= 1; +#line 326 "src/parser.re" + { char_width = SIZEOF_WCHAR_T/8; } +#line 2041 "src/parser.c" yy163: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy239; - default: goto yy60; + case 't': goto yy240; + default: goto yy62; } yy164: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'S': - case 's': goto yy240; - default: goto yy60; + case 'B': + case 'b': goto yy242; + default: goto yy62; } yy165: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy241; - default: goto yy60; + case 'X': + case 'x': goto yy244; + default: goto yy62; } yy166: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy242; - default: goto yy60; + case 'L': + case 'l': goto yy245; + default: goto yy62; } yy167: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy243; - default: goto yy60; + case 'J': + case 'j': goto yy246; + default: goto yy62; } yy168: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy245; - default: goto yy60; + case 'T': + case 't': goto yy247; + default: goto yy62; } yy169: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'G': - case 'g': goto yy246; - default: goto yy60; + case 'S': + case 's': goto yy248; + default: goto yy62; } yy170: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy247; - case 'R': - case 'r': goto yy248; - default: goto yy60; + case 'E': + case 'e': goto yy249; + default: goto yy62; } yy171: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'M': - case 'm': goto yy249; - default: goto yy60; + case 'T': + case 't': goto yy250; + default: goto yy62; } yy172: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy250; - default: goto yy60; + case 'T': + case 't': goto yy251; + default: goto yy62; } yy173: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'U': - case 'u': goto yy251; - default: goto yy60; + case 'A': + case 'a': goto yy253; + case 'R': + case 'r': goto yy254; + default: goto yy62; } yy174: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'P': - case 'p': goto yy252; - default: goto yy60; + case 'M': + case 'm': goto yy255; + default: goto yy62; } yy175: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy253; - default: goto yy60; + case '_': goto yy256; + default: goto yy62; } yy176: - yyaccept = 6; + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'D': - case 'd': goto yy254; - case 'I': - case 'i': goto yy255; - case 'S': - case 's': goto yy256; - default: goto yy60; + case 'U': + case 'u': goto yy257; + default: goto yy62; } yy177: - yyaccept = 6; + ++cur; + cur -= 1; +#line 325 "src/parser.re" + { char_width = 4; } +#line 2160 "src/parser.c" +yy179: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy257; - default: goto yy60; + case 'D': + case 'd': goto yy258; + default: goto yy62; } -yy178: - yyaccept = 6; +yy180: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'R': - case 'r': goto yy258; - default: goto yy60; + case 'r': goto yy259; + default: goto yy62; } -yy179: - yyaccept = 6; +yy181: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy259; - default: goto yy60; + case 'a': goto yy260; + default: goto yy62; } -yy180: - yyaccept = 10; +yy182: + yyaccept = 9; mrk = ++cur; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; @@ -2260,318 +2250,1810 @@ yy180: case '|': case '}': case '~': - case 0x7F: goto yy182; - case '\\': goto yy138; - default: goto yy180; + case 0x7F: goto yy184; + case '\\': goto yy146; + default: goto yy182; } -yy182: -#line 441 "src/parser.re" +yy184: +#line 449 "src/parser.re" { NEWTOKEN(PSI_T_NSNAME); goto start; } -#line 2271 "src/parser.c" -yy183: - yyaccept = 6; +#line 2261 "src/parser.c" +yy185: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'a': goto yy260; - default: goto yy60; + case 'a': goto yy261; + case 'e': goto yy262; + case 'i': goto yy263; + case 'r': goto yy264; + default: goto yy62; } -yy184: - yyaccept = 6; +yy186: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'c': goto yy261; - default: goto yy60; + case 'O': goto yy224; + case 'o': goto yy265; + default: goto yy62; } -yy185: - yyaccept = 6; +yy187: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy241; - case 'a': goto yy262; - default: goto yy60; + case 'a': goto yy266; + default: goto yy62; } -yy186: - ++cur; -#line 344 "src/parser.re" - { NEWTOKEN(PSI_T_OR); goto start; } -#line 2299 "src/parser.c" yy188: - ++cur; -#line 443 "src/parser.re" - { NEWTOKEN(PSI_T_QUOTED_STRING); goto start; } -#line 2304 "src/parser.c" -yy190: - ++cur; -yy191: -#line 444 "src/parser.re" - { NEWTOKEN(PSI_T_QUOTED_CHAR); goto start; } -#line 2310 "src/parser.c" -yy192: - ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\'': goto yy263; - case '\\': goto yy192; - default: goto yy103; - } -yy194: - ++cur; -#line 364 "src/parser.re" - { NEWTOKEN(PSI_T_ELLIPSIS); goto start; } -#line 2324 "src/parser.c" -yy196: - yych = *++cur; - switch (yych) { - case 'D': - case 'd': goto yy264; - case 'F': - case 'f': goto yy266; - case 'L': - case 'l': goto yy268; - default: goto yy106; - } -yy197: - ++cur; - cur = ctxmrk; -#line 323 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; } -#line 2341 "src/parser.c" -yy199: - ++cur; - cur = ctxmrk; -#line 324 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; } -#line 2347 "src/parser.c" -yy201: - yych = *++cur; + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { case 'U': - case 'u': goto yy270; - default: goto yy106; + case 'u': goto yy226; + case 'n': goto yy267; + default: goto yy62; } -yy202: - ++cur; -yy203: - cur = ctxmrk; -#line 319 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; } -#line 2361 "src/parser.c" -yy204: - yych = *++cur; +yy189: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy270; - default: goto yy203; + case 'u': goto yy268; + default: goto yy62; } -yy205: - yyaccept = 4; - mrk = ++cur; - if ((lim - cur) < 3) if (cur >= lim) goto done;; - yych = *cur; - ctxmrk = cur; +yy190: + yyaccept = 5; + yych = *(mrk = ++cur); switch (yych) { - case '.': goto yy272; - 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 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': goto yy205; - case 'L': - case 'l': goto yy120; - case 'P': - case 'p': goto yy119; - case 'U': - case 'u': goto yy122; - default: goto yy37; + case 'd': goto yy230; + case 'u': goto yy269; + default: goto yy62; } -yy207: - ++cur; -#line 445 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_HEADER); goto start; } -#line 2411 "src/parser.c" -yy209: - yyaccept = 6; +yy191: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy274; - case 'V': - case 'v': goto yy275; - default: goto yy60; + case 'O': goto yy233; + case 'o': goto yy270; + default: goto yy62; } -yy210: - yyaccept = 6; +yy192: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy276; - default: goto yy60; + case 'C': + case 'c': goto yy238; + case 'T': goto yy239; + case 't': goto yy271; + default: goto yy62; } -yy211: - yyaccept = 6; +yy193: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy278; - default: goto yy60; + case 'B': + case 'b': goto yy242; + case 'n': goto yy273; + default: goto yy62; } -yy212: - yyaccept = 6; +yy194: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy279; - default: goto yy60; + case 'n': goto yy274; + default: goto yy62; } -yy213: - yyaccept = 6; +yy195: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'S': - case 's': goto yy281; - default: goto yy60; + case 'E': + case 'e': goto yy249; + case 'a': goto yy275; + default: goto yy62; } -yy214: - yyaccept = 6; +yy196: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy282; - default: goto yy60; + case 'o': goto yy276; + default: goto yy62; } -yy215: - yyaccept = 6; +yy197: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy283; - default: goto yy60; + case 'g': goto yy277; + case 'z': goto yy278; + default: goto yy62; } -yy216: - yyaccept = 6; +yy198: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'B': - case 'b': goto yy284; - default: goto yy60; + case 'A': + case 'a': goto yy253; + case 'R': goto yy254; + case 'r': goto yy279; + default: goto yy62; } -yy217: - yyaccept = 6; +yy199: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'p': goto yy280; + default: goto yy62; + } +yy200: + ++cur; + cur -= 1; +#line 324 "src/parser.re" + { char_width = 2; } +#line 2392 "src/parser.c" +yy202: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '"': goto yy281; + default: goto yy62; + } +yy203: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy283; + default: goto yy62; + } +yy204: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'D': + case 'd': goto yy258; + case 'i': goto yy284; + case 's': goto yy285; + default: goto yy62; + } +yy205: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { + case 'i': goto yy286; + case 'l': goto yy287; + default: goto yy62; + } +yy206: + ++cur; +#line 345 "src/parser.re" + { NEWTOKEN(PSI_T_OR); goto start; } +#line 2429 "src/parser.c" +yy208: + ++cur; +#line 365 "src/parser.re" + { NEWTOKEN(PSI_T_ELLIPSIS); goto start; } +#line 2434 "src/parser.c" +yy210: + yych = *++cur; + switch (yych) { + case 'D': + case 'd': goto yy288; case 'F': - case 'f': goto yy285; - default: goto yy60; + case 'f': goto yy290; + case 'L': + case 'l': goto yy292; + default: goto yy114; + } +yy211: + ++cur; + cur -= 1; +#line 315 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; } +#line 2451 "src/parser.c" +yy213: + ++cur; + cur -= 1; +#line 316 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; } +#line 2457 "src/parser.c" +yy215: + yych = *++cur; + switch (yych) { + case 'U': + case 'u': goto yy294; + default: goto yy114; } +yy216: + ++cur; +yy217: + cur -= 2; +#line 311 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; } +#line 2471 "src/parser.c" yy218: - yyaccept = 6; - yych = *(mrk = ++cur); + yych = *++cur; switch (yych) { - case 'E': - case 'e': goto yy287; - default: goto yy60; + case 'L': + case 'l': goto yy294; + default: goto yy217; } yy219: - yyaccept = 6; + yyaccept = 3; + mrk = ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '.': goto yy296; + 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 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy219; + case 'L': + case 'l': goto yy128; + case 'P': + case 'p': goto yy127; + case 'U': + case 'u': goto yy130; + default: goto yy39; + } +yy221: + ++cur; +#line 451 "src/parser.re" + { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; } +#line 2520 "src/parser.c" +yy223: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy298; + case 'V': + case 'v': goto yy299; + default: goto yy62; + } +yy224: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy300; + default: goto yy62; + } +yy225: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy301; + default: goto yy62; + } +yy226: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy302; + default: goto yy62; + } +yy227: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy289; - default: goto yy60; + case 'i': goto yy303; + default: goto yy62; } -yy220: - yyaccept = 6; +yy228: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'M': - case 'm': goto yy290; - default: goto yy60; + case 'F': + case 'f': goto yy304; + default: goto yy62; } -yy221: - yyaccept = 6; +yy229: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy306; + default: goto yy62; + } +yy230: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy308; + default: goto yy62; + } +yy231: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'O': - case 'o': goto yy292; - default: goto yy60; + case 'o': goto yy309; + default: goto yy62; } -yy222: - yyaccept = 6; +yy232: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'S': - case 's': goto yy293; - default: goto yy60; + case 's': goto yy310; + default: goto yy62; } -yy223: - yyaccept = 6; +yy233: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'A': - case 'a': goto yy294; - default: goto yy60; + case 'a': goto yy311; + default: goto yy62; } -yy224: - yyaccept = 6; +yy234: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy295; - default: goto yy60; + case 'e': goto yy312; + default: goto yy62; } -yy225: - yyaccept = 6; +yy235: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'C': - case 'c': goto yy297; - default: goto yy60; + case 'c': goto yy314; + default: goto yy62; } -yy226: - yyaccept = 6; +yy236: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy298; - default: goto yy60; + case 'e': goto yy315; + default: goto yy62; } -yy227: - yyaccept = 6; +yy237: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'D': - case 'd': goto yy299; - default: goto yy60; + case 'd': goto yy316; + default: goto yy62; } -yy228: - yyaccept = 6; +yy238: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy300; - default: goto yy60; + case 'l': goto yy317; + default: goto yy62; + } +yy239: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'V': + case 'v': goto yy318; + default: goto yy62; + } +yy240: + 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 yy241; + case '\\': goto yy146; + default: goto yy61; + } +yy241: +#line 424 "src/parser.re" + { NEWTOKEN(PSI_T_LET); goto start; } +#line 2733 "src/parser.c" +yy242: + 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 yy243; + case '\\': goto yy146; + default: goto yy61; + } +yy243: +#line 423 "src/parser.re" + { NEWTOKEN(PSI_T_LIB); goto start; } +#line 2808 "src/parser.c" +yy244: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy319; + default: goto yy62; + } +yy245: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy320; + default: goto yy62; + } +yy246: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy322; + case 'V': + case 'v': goto yy323; + default: goto yy62; + } +yy247: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'H': + case 'h': goto yy324; + default: goto yy62; + } +yy248: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy325; + default: goto yy62; + } +yy249: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy326; + default: goto yy62; + } +yy250: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'U': + case 'u': goto yy327; + default: goto yy62; + } +yy251: + 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 yy252; + case '\\': goto yy146; + default: goto yy61; + } +yy252: +#line 425 "src/parser.re" + { NEWTOKEN(PSI_T_SET); goto start; } +#line 2940 "src/parser.c" +yy253: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy328; + default: goto yy62; + } +yy254: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy329; + case 'L': + case 'l': goto yy330; + case 'V': + case 'v': goto yy331; + default: goto yy62; + } +yy255: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'P': + case 'p': goto yy332; + default: goto yy62; + } +yy256: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy334; + case 'B': + case 'b': goto yy335; + case 'F': + case 'f': goto yy336; + case 'I': + case 'i': goto yy337; + case 'O': + case 'o': goto yy338; + case 'S': + case 's': goto yy339; + default: goto yy62; + } +yy257: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy340; + default: goto yy62; + } +yy258: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy342; + default: goto yy62; + } +yy259: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy343; + default: goto yy62; + } +yy260: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy344; + default: goto yy62; + } +yy261: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 's': goto yy346; + case 't': goto yy347; + default: goto yy62; + } +yy262: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'x': goto yy348; + default: goto yy62; + } +yy263: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy349; + default: goto yy62; + } +yy264: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy350; + default: goto yy62; + } +yy265: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': goto yy300; + case 'l': goto yy351; + default: goto yy62; + } +yy266: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'r': goto yy353; + default: goto yy62; + } +yy267: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 's': goto yy355; + default: goto yy62; + } +yy268: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'b': goto yy356; + default: goto yy62; + } +yy269: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'm': goto yy357; + default: goto yy62; + } +yy270: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': goto yy311; + case 'a': goto yy359; + default: goto yy62; + } +yy271: + 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 yy272; + case '1': goto yy360; + case '3': goto yy361; + case '6': goto yy362; + case '8': goto yy363; + case 'V': + case 'v': goto yy318; + case '\\': goto yy146; + default: goto yy61; + } +yy272: +#line 385 "src/parser.re" + { NEWTOKEN(PSI_T_INT); goto start; } +#line 3172 "src/parser.c" +yy273: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy364; + default: goto yy62; + } +yy274: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'g': goto yy366; + default: goto yy62; + } +yy275: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'g': goto yy368; + default: goto yy62; + } +yy276: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'r': goto yy369; + default: goto yy62; + } +yy277: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy370; + default: goto yy62; + } +yy278: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy371; + default: goto yy62; + } +yy279: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy329; + case 'L': + case 'l': goto yy330; + case 'V': + case 'v': goto yy331; + case 'u': goto yy372; + default: goto yy62; + } +yy280: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy373; + default: goto yy62; + } +yy281: + ++cur; + cur -= 1; +#line 323 "src/parser.re" + { char_width = 1; } +#line 3240 "src/parser.c" +yy283: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy374; + default: goto yy62; + } +yy284: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'o': goto yy375; + default: goto yy62; + } +yy285: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy376; + default: goto yy62; + } +yy286: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'd': goto yy377; + default: goto yy62; + } +yy287: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'a': goto yy379; + default: goto yy62; + } +yy288: + ++cur; + cur -= 2; +#line 318 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; } +#line 3281 "src/parser.c" +yy290: + ++cur; + cur -= 2; +#line 317 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; } +#line 3287 "src/parser.c" +yy292: + ++cur; + cur -= 2; +#line 319 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; } +#line 3293 "src/parser.c" +yy294: + ++cur; + cur -= 3; +#line 312 "src/parser.re" + { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; } +#line 3299 "src/parser.c" +yy296: + ++cur; + if ((lim - cur) < 3) if (cur >= lim) goto done;; + yych = *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 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': goto yy296; + case 'P': + case 'p': goto yy127; + default: goto yy114; + } +yy298: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'Y': + case 'y': goto yy380; + default: goto yy62; + } +yy299: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy382; + default: goto yy62; + } +yy300: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'V': + case 'v': goto yy383; + default: goto yy62; + } +yy301: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy384; + case 'B': + case 'b': goto yy385; + case 'O': + case 'o': goto yy386; + default: goto yy62; + } +yy302: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy387; + default: goto yy62; + } +yy303: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy389; + default: goto yy62; + } +yy304: + 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 yy305; + case '\\': goto yy146; + default: goto yy61; + } +yy305: +#line 403 "src/parser.re" + { NEWTOKEN(PSI_T_ELIF); goto start; } +#line 3457 "src/parser.c" +yy306: + 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 yy307; + case '\\': goto yy146; + default: goto yy61; + } +yy307: +#line 402 "src/parser.re" + { NEWTOKEN(PSI_T_ELSE); goto start; } +#line 3532 "src/parser.c" +yy308: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'F': + case 'f': goto yy390; + default: goto yy62; + } +yy309: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy392; + default: goto yy62; + } +yy310: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy394; + default: goto yy62; + } +yy311: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy396; + default: goto yy62; + } +yy312: + 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 yy313; + case '\\': goto yy146; + default: goto yy61; + } +yy313: +#line 429 "src/parser.re" + { NEWTOKEN(PSI_T_FREE); goto start; } +#line 3639 "src/parser.c" +yy314: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy397; + default: goto yy62; + } +yy315: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'F': + case 'f': goto yy398; + default: goto yy62; + } +yy316: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy400; + default: goto yy62; + } +yy317: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'U': + case 'u': goto yy401; + default: goto yy62; + } +yy318: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy402; + default: goto yy62; + } +yy319: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'D': + case 'd': goto yy403; + default: goto yy62; + } +yy320: + 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 yy321; + case '\\': goto yy146; + default: goto yy61; + } +yy321: +#line 414 "src/parser.re" + { NEWTOKEN(PSI_T_NULL); goto start; } +#line 3762 "src/parser.c" +yy322: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy405; + default: goto yy62; + } +yy323: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy406; + default: goto yy62; + } +yy324: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'V': + case 'v': goto yy407; + default: goto yy62; + } +yy325: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy408; + default: goto yy62; + } +yy326: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy409; + default: goto yy62; + } +yy327: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy410; + default: goto yy62; + } +yy328: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy411; + default: goto yy62; + } +yy329: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy412; + default: goto yy62; + } +yy330: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy413; + default: goto yy62; + } +yy331: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy414; + default: goto yy62; + } +yy332: + 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 yy333; + case '\\': goto yy146; + default: goto yy61; + } +yy333: +#line 430 "src/parser.re" + { NEWTOKEN(PSI_T_TEMP); goto start; } +#line 3916 "src/parser.c" +yy334: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy415; + default: goto yy62; + } +yy335: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'O': + case 'o': goto yy416; + default: goto yy62; + } +yy336: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy417; + default: goto yy62; + } +yy337: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy418; + default: goto yy62; + } +yy338: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'B': + case 'b': goto yy419; + default: goto yy62; + } +yy339: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy420; + default: goto yy62; + } +yy340: + 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 yy341; + case '\\': goto yy146; + default: goto yy61; + } +yy341: +#line 412 "src/parser.re" + { NEWTOKEN(PSI_T_TRUE); goto start; } +#line 4039 "src/parser.c" +yy342: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'F': + case 'f': goto yy421; + default: goto yy62; + } +yy343: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy423; + default: goto yy62; } -yy229: - yyaccept = 11; +yy344: + yyaccept = 20; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -2637,22 +4119,51 @@ yy229: case '|': case '}': case '~': - case 0x7F: goto yy230; - case '1': goto yy301; - case '3': goto yy302; - case '6': goto yy303; - case '8': goto yy304; - case 'V': - case 'v': goto yy305; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy345; + case '\\': goto yy146; + default: goto yy61; } -yy230: -#line 390 "src/parser.re" - { NEWTOKEN(PSI_T_INT); goto start; } -#line 2654 "src/parser.c" -yy231: - yyaccept = 12; +yy345: +#line 439 "src/parser.re" + { NEWTOKEN(PSI_T_ZVAL); goto start; } +#line 4130 "src/parser.c" +yy346: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'm': goto yy424; + default: goto yy62; + } +yy347: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy425; + default: goto yy62; + } +yy348: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy426; + default: goto yy62; + } +yy349: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'l': goto yy427; + default: goto yy62; + } +yy350: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 's': goto yy428; + default: goto yy62; + } +yy351: + yyaccept = 21; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -2718,16 +4229,18 @@ yy231: case '|': case '}': case '~': - case 0x7F: goto yy232; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy352; + case 'V': + case 'v': goto yy383; + case '\\': goto yy146; + default: goto yy61; } -yy232: -#line 416 "src/parser.re" - { NEWTOKEN(PSI_T_LET); goto start; } -#line 2729 "src/parser.c" -yy233: - yyaccept = 13; +yy352: +#line 382 "src/parser.re" + { NEWTOKEN(PSI_T_BOOL); goto start; } +#line 4242 "src/parser.c" +yy353: + yyaccept = 22; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -2793,81 +4306,30 @@ yy233: case '|': case '}': case '~': - case 0x7F: goto yy234; - case '\\': goto yy138; - default: goto yy59; - } -yy234: -#line 415 "src/parser.re" - { NEWTOKEN(PSI_T_LIB); goto start; } -#line 2804 "src/parser.c" -yy235: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy306; - default: goto yy60; - } -yy236: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy308; - default: goto yy60; - } -yy237: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy309; - default: goto yy60; - } -yy238: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy311; - case 'V': - case 'v': goto yy312; - default: goto yy60; + case 0x7F: goto yy354; + case '\\': goto yy146; + default: goto yy61; } -yy239: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'H': - case 'h': goto yy313; - default: goto yy60; - } -yy240: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy314; - default: goto yy60; - } -yy241: - yyaccept = 6; +yy354: +#line 383 "src/parser.re" + { NEWTOKEN(PSI_T_CHAR); goto start; } +#line 4317 "src/parser.c" +yy355: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy315; - default: goto yy60; + case 't': goto yy429; + default: goto yy62; } -yy242: - yyaccept = 6; +yy356: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'U': - case 'u': goto yy316; - default: goto yy60; + case 'l': goto yy431; + default: goto yy62; } -yy243: - yyaccept = 14; +yy357: + yyaccept = 23; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -2933,253 +4395,52 @@ yy243: case '|': case '}': case '~': - case 0x7F: goto yy244; - case '\\': goto yy138; - default: goto yy59; - } -yy244: -#line 417 "src/parser.re" - { NEWTOKEN(PSI_T_SET); goto start; } -#line 2944 "src/parser.c" -yy245: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy317; - default: goto yy60; - } -yy246: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy318; - default: goto yy60; - } -yy247: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy319; - default: goto yy60; - } -yy248: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy320; - case 'L': - case 'l': goto yy321; - case 'U': - case 'u': goto yy322; - case 'V': - case 'v': goto yy323; - default: goto yy60; - } -yy249: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'P': - case 'p': goto yy324; - default: goto yy60; - } -yy250: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy326; - case 'B': - case 'b': goto yy327; - case 'F': - case 'f': goto yy328; - case 'I': - case 'i': goto yy329; - case 'O': - case 'o': goto yy330; - case 'S': - case 's': goto yy331; - default: goto yy60; - } -yy251: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy332; - default: goto yy60; - } -yy252: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy334; - default: goto yy60; - } -yy253: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy335; - default: goto yy60; - } -yy254: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy336; - default: goto yy60; - } -yy255: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy337; - default: goto yy60; - } -yy256: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy338; - default: goto yy60; - } -yy257: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy339; - default: goto yy60; - } -yy258: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy341; - default: goto yy60; - } -yy259: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy342; - default: goto yy60; - } -yy260: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy344; - default: goto yy60; - } -yy261: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy345; - default: goto yy60; - } -yy262: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'g': goto yy347; - default: goto yy60; - } -yy263: - yyaccept = 15; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\'': goto yy190; - default: goto yy103; + case 0x7F: goto yy358; + case '\\': goto yy146; + default: goto yy61; } -yy264: - ++cur; - cur = ctxmrk; -#line 326 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; } -#line 3116 "src/parser.c" -yy266: - ++cur; - cur = ctxmrk; -#line 325 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; } -#line 3122 "src/parser.c" -yy268: - ++cur; - cur = ctxmrk; -#line 327 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; } -#line 3128 "src/parser.c" -yy270: - ++cur; - cur = ctxmrk; -#line 320 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; } -#line 3134 "src/parser.c" -yy272: - ++cur; - if ((lim - cur) < 3) if (cur >= lim) goto done;; - yych = *cur; +yy358: +#line 379 "src/parser.re" + { NEWTOKEN(PSI_T_ENUM); goto start; } +#line 4406 "src/parser.c" +yy359: + 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 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': goto yy272; - case 'P': - case 'p': goto yy119; - default: goto yy106; + case 'T': goto yy396; + case 't': goto yy432; + default: goto yy62; } -yy274: - yyaccept = 6; +yy360: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'Y': - case 'y': goto yy348; - default: goto yy60; + case '6': goto yy434; + default: goto yy62; } -yy275: - yyaccept = 6; +yy361: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy350; - default: goto yy60; + case '2': goto yy435; + default: goto yy62; } -yy276: - yyaccept = 16; +yy362: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '4': goto yy436; + default: goto yy62; + } +yy363: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy437; + default: goto yy62; + } +yy364: + yyaccept = 24; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3245,30 +4506,16 @@ yy276: case '|': case '}': case '~': - case 0x7F: goto yy277; - case 'V': - case 'v': goto yy351; - case '\\': goto yy138; - default: goto yy59; - } -yy277: -#line 387 "src/parser.re" - { NEWTOKEN(PSI_T_BOOL); goto start; } -#line 3258 "src/parser.c" -yy278: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy352; - case 'B': - case 'b': goto yy353; - case 'O': - case 'o': goto yy354; - default: goto yy60; + case 0x7F: goto yy365; + case '\\': goto yy146; + default: goto yy61; } -yy279: - yyaccept = 17; +yy365: +#line 375 "src/parser.re" + { NEWTOKEN(PSI_T_LINE); goto start; } +#line 4517 "src/parser.c" +yy366: + yyaccept = 25; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3334,48 +4581,82 @@ yy279: case '|': case '}': case '~': - case 0x7F: goto yy280; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy367; + case '\\': goto yy146; + default: goto yy61; } -yy280: -#line 388 "src/parser.re" - { NEWTOKEN(PSI_T_CHAR); goto start; } -#line 3345 "src/parser.c" -yy281: - yyaccept = 6; +yy367: +#line 386 "src/parser.re" + { NEWTOKEN(PSI_T_LONG); goto start; } +#line 4592 "src/parser.c" +yy368: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy355; - default: goto yy60; + case 'm': goto yy438; + default: goto yy62; } -yy282: - yyaccept = 6; +yy369: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy357; - default: goto yy60; + case 't': goto yy439; + default: goto yy62; } -yy283: - yyaccept = 6; +yy370: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy359; - default: goto yy60; + case 'e': goto yy441; + default: goto yy62; } -yy284: - yyaccept = 6; +yy371: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy360; - default: goto yy60; + case 'o': goto yy442; + default: goto yy62; } -yy285: - yyaccept = 18; +yy372: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'c': goto yy443; + default: goto yy62; + } +yy373: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'd': goto yy444; + default: goto yy62; + } +yy374: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '1': goto yy445; + case '3': goto yy446; + case '6': goto yy447; + case '8': goto yy448; + default: goto yy62; + } +yy375: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy449; + default: goto yy62; + } +yy376: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'g': goto yy451; + default: goto yy62; + } +yy377: + yyaccept = 26; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3441,16 +4722,23 @@ yy285: case '|': case '}': case '~': - case 0x7F: goto yy286; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy378; + case '\\': goto yy146; + default: goto yy61; } -yy286: -#line 372 "src/parser.re" - { NEWTOKEN(PSI_T_ELIF); goto start; } -#line 3452 "src/parser.c" -yy287: - yyaccept = 19; +yy378: +#line 381 "src/parser.re" + { NEWTOKEN(PSI_T_VOID); goto start; } +#line 4733 "src/parser.c" +yy379: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy452; + default: goto yy62; + } +yy380: + yyaccept = 27; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3516,24 +4804,56 @@ yy287: case '|': case '}': case '~': - case 0x7F: goto yy288; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy381; + case '\\': goto yy146; + default: goto yy61; } -yy288: -#line 371 "src/parser.re" - { NEWTOKEN(PSI_T_ELSE); goto start; } -#line 3527 "src/parser.c" -yy289: - yyaccept = 6; +yy381: +#line 418 "src/parser.re" + { NEWTOKEN(PSI_T_ARRAY); goto start; } +#line 4815 "src/parser.c" +yy382: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'F': - case 'f': goto yy361; - default: goto yy60; + case 'L': + case 'l': goto yy453; + default: goto yy62; } -yy290: - yyaccept = 20; +yy383: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy455; + default: goto yy62; + } +yy384: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'B': + case 'b': goto yy456; + default: goto yy62; + } +yy385: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy457; + default: goto yy62; + } +yy386: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy458; + default: goto yy62; + } +yy387: + yyaccept = 28; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3599,40 +4919,24 @@ yy290: case '|': case '}': case '~': - case 0x7F: goto yy291; - case '\\': goto yy138; - default: goto yy59; - } -yy291: -#line 413 "src/parser.re" - { NEWTOKEN(PSI_T_ENUM); goto start; } -#line 3610 "src/parser.c" -yy292: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy363; - default: goto yy60; + case 0x7F: goto yy388; + case '\\': goto yy146; + default: goto yy61; } -yy293: - yyaccept = 6; +yy388: +#line 440 "src/parser.re" + { NEWTOKEN(PSI_T_COUNT); goto start; } +#line 4930 "src/parser.c" +yy389: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'E': - case 'e': goto yy365; - default: goto yy60; - } -yy294: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy367; - default: goto yy60; + case 'e': goto yy460; + default: goto yy62; } -yy295: - yyaccept = 21; +yy390: + yyaccept = 29; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3698,84 +5002,16 @@ yy295: case '|': case '}': case '~': - case 0x7F: goto yy296; - case '\\': goto yy138; - default: goto yy59; - } -yy296: -#line 421 "src/parser.re" - { NEWTOKEN(PSI_T_FREE); goto start; } -#line 3709 "src/parser.c" -yy297: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy369; - default: goto yy60; - } -yy298: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy370; - default: goto yy60; - } -yy299: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy372; - default: goto yy60; - } -yy300: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy373; - default: goto yy60; + case 0x7F: goto yy391; + case '\\': goto yy146; + default: goto yy61; } -yy301: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '6': goto yy374; - default: goto yy60; - } -yy302: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '2': goto yy375; - default: goto yy60; - } -yy303: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '4': goto yy376; - default: goto yy60; - } -yy304: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy377; - default: goto yy60; - } -yy305: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy378; - default: goto yy60; - } -yy306: - yyaccept = 22; +yy391: +#line 404 "src/parser.re" + { NEWTOKEN(PSI_T_ENDIF); goto start; } +#line 5013 "src/parser.c" +yy392: + yyaccept = 30; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3841,24 +5077,16 @@ yy306: case '|': case '}': case '~': - case 0x7F: goto yy307; - case '\\': goto yy138; - default: goto yy59; - } -yy307: -#line 391 "src/parser.re" - { NEWTOKEN(PSI_T_LONG); goto start; } -#line 3852 "src/parser.c" -yy308: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy379; - default: goto yy60; + case 0x7F: goto yy393; + case '\\': goto yy146; + default: goto yy61; } -yy309: - yyaccept = 23; +yy393: +#line 409 "src/parser.re" + { NEWTOKEN(PSI_T_ERROR); goto start; } +#line 5088 "src/parser.c" +yy394: + yyaccept = 31; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -3924,119 +5152,32 @@ yy309: case '|': case '}': case '~': - case 0x7F: goto yy310; - case '\\': goto yy138; - default: goto yy59; - } -yy310: -#line 383 "src/parser.re" - { NEWTOKEN(PSI_T_NULL); goto start; } -#line 3935 "src/parser.c" -yy311: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy381; - default: goto yy60; - } -yy312: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy382; - default: goto yy60; + case 0x7F: goto yy395; + case '\\': goto yy146; + default: goto yy61; } -yy313: - yyaccept = 6; +yy395: +#line 413 "src/parser.re" + { NEWTOKEN(PSI_T_FALSE); goto start; } +#line 5163 "src/parser.c" +yy396: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'V': - case 'v': goto yy383; - default: goto yy60; - } -yy314: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy384; - default: goto yy60; - } -yy315: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy385; - default: goto yy60; - } -yy316: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy386; - default: goto yy60; - } -yy317: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy387; - default: goto yy60; - } -yy318: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy389; - default: goto yy60; + case 'v': goto yy462; + default: goto yy62; } -yy319: - yyaccept = 6; +yy397: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'I': - case 'i': goto yy390; - default: goto yy60; - } -yy320: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy391; - default: goto yy60; - } -yy321: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy392; - default: goto yy60; - } -yy322: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy393; - default: goto yy60; - } -yy323: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy394; - default: goto yy60; + case 'i': goto yy463; + default: goto yy62; } -yy324: - yyaccept = 24; +yy398: + yyaccept = 32; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4102,64 +5243,40 @@ yy324: case '|': case '}': case '~': - case 0x7F: goto yy325; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy399; + case '\\': goto yy146; + default: goto yy61; } -yy325: -#line 422 "src/parser.re" - { NEWTOKEN(PSI_T_TEMP); goto start; } -#line 4113 "src/parser.c" -yy326: - yyaccept = 6; +yy399: +#line 400 "src/parser.re" + { NEWTOKEN(PSI_T_IFDEF); goto start; } +#line 5254 "src/parser.c" +yy400: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy395; - default: goto yy60; + case 'F': + case 'f': goto yy464; + default: goto yy62; } -yy327: - yyaccept = 6; +yy401: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy396; - default: goto yy60; + case 'D': + case 'd': goto yy466; + default: goto yy62; } -yy328: - yyaccept = 6; +yy402: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy397; - default: goto yy60; - } -yy329: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy398; - default: goto yy60; - } -yy330: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy399; - default: goto yy60; - } -yy331: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy400; - default: goto yy60; + case 'l': goto yy467; + default: goto yy62; } -yy332: - yyaccept = 25; +yy403: + yyaccept = 33; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4225,58 +5342,144 @@ yy332: case '|': case '}': case '~': - case 0x7F: goto yy333; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy404; + case '\\': goto yy146; + default: goto yy61; } -yy333: -#line 381 "src/parser.re" - { NEWTOKEN(PSI_T_TRUE); goto start; } -#line 4236 "src/parser.c" -yy334: - yyaccept = 6; +yy404: +#line 415 "src/parser.re" + { NEWTOKEN(PSI_T_MIXED); goto start; } +#line 5353 "src/parser.c" +yy405: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'D': - case 'd': goto yy401; - default: goto yy60; + case 'T': + case 't': goto yy469; + default: goto yy62; } -yy335: - yyaccept = 6; +yy406: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case '1': goto yy402; - case '3': goto yy403; - case '6': goto yy404; - case '8': goto yy405; - default: goto yy60; + case 'L': + case 'l': goto yy471; + default: goto yy62; } -yy336: - yyaccept = 6; +yy407: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'F': - case 'f': goto yy406; - default: goto yy60; + case 'A': + case 'a': goto yy473; + default: goto yy62; } -yy337: - yyaccept = 6; +yy408: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy474; + default: goto yy62; + } +yy409: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'S': + case 's': goto yy475; + default: goto yy62; + } +yy410: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'N': - case 'n': goto yy408; - default: goto yy60; + case 'n': goto yy476; + default: goto yy62; } -yy338: - yyaccept = 6; +yy411: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy478; + default: goto yy62; + } +yy412: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'G': - case 'g': goto yy410; - default: goto yy60; + case 'g': goto yy480; + default: goto yy62; } -yy339: - yyaccept = 26; +yy413: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy482; + default: goto yy62; + } +yy414: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy484; + default: goto yy62; + } +yy415: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy486; + default: goto yy62; + } +yy416: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'O': + case 'o': goto yy487; + default: goto yy62; + } +yy417: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'O': + case 'o': goto yy488; + default: goto yy62; + } +yy418: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy489; + default: goto yy62; + } +yy419: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'J': + case 'j': goto yy491; + default: goto yy62; + } +yy420: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'R': + case 'r': goto yy492; + default: goto yy62; + } +yy421: + yyaccept = 34; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4342,24 +5545,59 @@ yy339: case '|': case '}': case '~': - case 0x7F: goto yy340; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy422; + case '\\': goto yy146; + default: goto yy61; + } +yy422: +#line 407 "src/parser.re" + { NEWTOKEN(PSI_T_UNDEF); goto start; } +#line 5556 "src/parser.c" +yy423: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy493; + default: goto yy62; } -yy340: -#line 386 "src/parser.re" - { NEWTOKEN(PSI_T_VOID); goto start; } -#line 4353 "src/parser.c" -yy341: - yyaccept = 6; +yy424: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'I': - case 'i': goto yy411; - default: goto yy60; + case '_': goto yy494; + default: goto yy62; } -yy342: - yyaccept = 27; +yy425: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'r': goto yy495; + default: goto yy62; + } +yy426: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy496; + default: goto yy62; + } +yy427: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy497; + default: goto yy62; + } +yy428: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy498; + default: goto yy62; + } +yy429: + yyaccept = 35; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4425,23 +5663,23 @@ yy342: case '|': case '}': case '~': - case 0x7F: goto yy343; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy430; + case '\\': goto yy146; + default: goto yy61; } -yy343: -#line 431 "src/parser.re" - { NEWTOKEN(PSI_T_ZVAL); goto start; } -#line 4436 "src/parser.c" -yy344: - yyaccept = 6; +yy430: +#line 380 "src/parser.re" + { NEWTOKEN(PSI_T_CONST); goto start; } +#line 5674 "src/parser.c" +yy431: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 't': goto yy412; - default: goto yy60; + case 'e': goto yy499; + default: goto yy62; } -yy345: - yyaccept = 28; +yy432: + yyaccept = 36; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4507,23 +5745,53 @@ yy345: case '|': case '}': case '~': - case 0x7F: goto yy346; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy433; + case 'V': + case 'v': goto yy462; + case '\\': goto yy146; + default: goto yy61; } -yy346: -#line 367 "src/parser.re" - { NEWTOKEN(PSI_T_ONCE); goto start; } -#line 4518 "src/parser.c" -yy347: - yyaccept = 6; +yy433: +#line 387 "src/parser.re" + { NEWTOKEN(PSI_T_FLOAT); goto start; } +#line 5758 "src/parser.c" +yy434: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'm': goto yy413; - default: goto yy60; + case '_': goto yy501; + default: goto yy62; } -yy348: - yyaccept = 29; +yy435: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy502; + default: goto yy62; + } +yy436: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy503; + default: goto yy62; + } +yy437: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy504; + default: goto yy62; + } +yy438: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'a': goto yy506; + default: goto yy62; + } +yy439: + yyaccept = 37; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4589,56 +5857,72 @@ yy348: case '|': case '}': case '~': - case 0x7F: goto yy349; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy440; + case '\\': goto yy146; + default: goto yy61; } -yy349: -#line 405 "src/parser.re" - { NEWTOKEN(PSI_T_ARRAY); goto start; } -#line 4600 "src/parser.c" -yy350: - yyaccept = 6; +yy440: +#line 384 "src/parser.re" + { NEWTOKEN(PSI_T_SHORT); goto start; } +#line 5868 "src/parser.c" +yy441: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy414; - default: goto yy60; + case 'd': goto yy508; + default: goto yy62; } -yy351: - yyaccept = 6; +yy442: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy416; - default: goto yy60; + case 'f': goto yy510; + default: goto yy62; } -yy352: - yyaccept = 6; +yy443: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'B': - case 'b': goto yy417; - default: goto yy60; + case 't': goto yy512; + default: goto yy62; } -yy353: - yyaccept = 6; +yy444: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy418; - default: goto yy60; + case 'e': goto yy514; + default: goto yy62; } -yy354: - yyaccept = 6; +yy445: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy419; - default: goto yy60; + case '6': goto yy515; + default: goto yy62; } -yy355: - yyaccept = 30; +yy446: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '2': goto yy516; + default: goto yy62; + } +yy447: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '4': goto yy517; + default: goto yy62; + } +yy448: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy518; + default: goto yy62; + } +yy449: + yyaccept = 38; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4704,16 +5988,30 @@ yy355: case '|': case '}': case '~': - case 0x7F: goto yy356; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy450; + case '\\': goto yy146; + default: goto yy61; } -yy356: -#line 414 "src/parser.re" - { NEWTOKEN(PSI_T_CONST); goto start; } -#line 4715 "src/parser.c" -yy357: - yyaccept = 31; +yy450: +#line 378 "src/parser.re" + { NEWTOKEN(PSI_T_UNION); goto start; } +#line 5999 "src/parser.c" +yy451: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy519; + default: goto yy62; + } +yy452: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy520; + default: goto yy62; + } +yy453: + yyaccept = 39; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4779,32 +6077,40 @@ yy357: case '|': case '}': case '~': - case 0x7F: goto yy358; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy454; + case '\\': goto yy146; + default: goto yy61; } -yy358: -#line 432 "src/parser.re" - { NEWTOKEN(PSI_T_COUNT); goto start; } -#line 4790 "src/parser.c" -yy359: - yyaccept = 6; +yy454: +#line 437 "src/parser.re" + { NEWTOKEN(PSI_T_ARRVAL); goto start; } +#line 6088 "src/parser.c" +yy455: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy421; - default: goto yy60; + case 'L': + case 'l': goto yy521; + default: goto yy62; } -yy360: - yyaccept = 6; +yy456: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'E': - case 'e': goto yy423; - default: goto yy60; + case 'L': + case 'l': goto yy523; + default: goto yy62; } -yy361: - yyaccept = 32; +yy457: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy524; + default: goto yy62; + } +yy458: + yyaccept = 40; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4870,16 +6176,16 @@ yy361: case '|': case '}': case '~': - case 0x7F: goto yy362; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy459; + case '\\': goto yy146; + default: goto yy61; } -yy362: -#line 373 "src/parser.re" - { NEWTOKEN(PSI_T_ENDIF); goto start; } -#line 4881 "src/parser.c" -yy363: - yyaccept = 33; +yy459: +#line 441 "src/parser.re" + { NEWTOKEN(PSI_T_CALLOC); goto start; } +#line 6187 "src/parser.c" +yy460: + yyaccept = 41; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -4945,16 +6251,34 @@ yy363: case '|': case '}': case '~': - case 0x7F: goto yy364; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy461; + case 'D': + case 'd': goto yy525; + case '\\': goto yy146; + default: goto yy61; } -yy364: -#line 378 "src/parser.re" - { NEWTOKEN(PSI_T_ERROR); goto start; } -#line 4956 "src/parser.c" -yy365: - yyaccept = 34; +yy461: +#line 405 "src/parser.re" + { NEWTOKEN(PSI_T_DEFINE); goto start; } +#line 6264 "src/parser.c" +yy462: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy527; + default: goto yy62; + } +yy463: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'O': + case 'o': goto yy528; + default: goto yy62; + } +yy464: + yyaccept = 42; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5020,16 +6344,24 @@ yy365: case '|': case '}': case '~': - case 0x7F: goto yy366; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy465; + case '\\': goto yy146; + default: goto yy61; } -yy366: -#line 382 "src/parser.re" - { NEWTOKEN(PSI_T_FALSE); goto start; } -#line 5031 "src/parser.c" -yy367: - yyaccept = 35; +yy465: +#line 401 "src/parser.re" + { NEWTOKEN(PSI_T_IFNDEF); goto start; } +#line 6355 "src/parser.c" +yy466: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy529; + default: goto yy62; + } +yy467: + yyaccept = 43; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5088,33 +6420,23 @@ yy367: case '?': case '@': case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy368; - case 'V': - case 'v': goto yy425; - case '\\': goto yy138; - default: goto yy59; - } -yy368: -#line 392 "src/parser.re" - { NEWTOKEN(PSI_T_FLOAT); goto start; } -#line 5108 "src/parser.c" -yy369: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy426; - default: goto yy60; + case ']': + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy468; + case '\\': goto yy146; + default: goto yy61; } -yy370: - yyaccept = 36; +yy468: +#line 434 "src/parser.re" + { NEWTOKEN(PSI_T_INTVAL); goto start; } +#line 6438 "src/parser.c" +yy469: + yyaccept = 44; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5180,69 +6502,16 @@ yy370: case '|': case '}': case '~': - case 0x7F: goto yy371; - case '\\': goto yy138; - default: goto yy59; - } -yy371: -#line 369 "src/parser.re" - { NEWTOKEN(PSI_T_IFDEF); goto start; } -#line 5191 "src/parser.c" -yy372: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy427; - default: goto yy60; - } -yy373: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy429; - default: goto yy60; - } -yy374: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy430; - default: goto yy60; - } -yy375: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy431; - default: goto yy60; - } -yy376: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy432; - default: goto yy60; - } -yy377: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy433; - default: goto yy60; - } -yy378: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy435; - default: goto yy60; + case 0x7F: goto yy470; + case '\\': goto yy146; + default: goto yy61; } -yy379: - yyaccept = 37; +yy470: +#line 419 "src/parser.re" + { NEWTOKEN(PSI_T_OBJECT); goto start; } +#line 6513 "src/parser.c" +yy471: + yyaccept = 45; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5308,64 +6577,40 @@ yy379: case '|': case '}': case '~': - case 0x7F: goto yy380; - case '\\': goto yy138; - default: goto yy59; - } -yy380: -#line 384 "src/parser.re" - { NEWTOKEN(PSI_T_MIXED); goto start; } -#line 5319 "src/parser.c" -yy381: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy437; - default: goto yy60; + case 0x7F: goto yy472; + case '\\': goto yy146; + default: goto yy61; } -yy382: - yyaccept = 6; +yy472: +#line 438 "src/parser.re" + { NEWTOKEN(PSI_T_OBJVAL); goto start; } +#line 6588 "src/parser.c" +yy473: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'L': - case 'l': goto yy439; - default: goto yy60; - } -yy383: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy441; - default: goto yy60; - } -yy384: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy442; - default: goto yy60; + case 'l': goto yy531; + default: goto yy62; } -yy385: - yyaccept = 6; +yy474: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'S': - case 's': goto yy443; - default: goto yy60; + case 's': goto yy533; + default: goto yy62; } -yy386: - yyaccept = 6; +yy475: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy444; - default: goto yy60; + case 'S': + case 's': goto yy534; + default: goto yy62; } -yy387: - yyaccept = 38; +yy476: + yyaccept = 46; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5431,148 +6676,16 @@ yy387: case '|': case '}': case '~': - case 0x7F: goto yy388; - case '\\': goto yy138; - default: goto yy59; - } -yy388: -#line 389 "src/parser.re" - { NEWTOKEN(PSI_T_SHORT); goto start; } -#line 5442 "src/parser.c" -yy389: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy446; - default: goto yy60; - } -yy390: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy448; - default: goto yy60; - } -yy391: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy450; - default: goto yy60; - } -yy392: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy452; - default: goto yy60; - } -yy393: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy454; - default: goto yy60; - } -yy394: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy456; - default: goto yy60; - } -yy395: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy458; - default: goto yy60; - } -yy396: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy459; - default: goto yy60; - } -yy397: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy460; - default: goto yy60; - } -yy398: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy461; - default: goto yy60; - } -yy399: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'J': - case 'j': goto yy463; - default: goto yy60; - } -yy400: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy464; - default: goto yy60; - } -yy401: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy465; - default: goto yy60; - } -yy402: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '6': goto yy466; - default: goto yy60; + case 0x7F: goto yy477; + case '\\': goto yy146; + default: goto yy61; } -yy403: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '2': goto yy467; - default: goto yy60; - } -yy404: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '4': goto yy468; - default: goto yy60; - } -yy405: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy469; - default: goto yy60; - } -yy406: - yyaccept = 39; +yy477: +#line 428 "src/parser.re" + { NEWTOKEN(PSI_T_RETURN); goto start; } +#line 6687 "src/parser.c" +yy478: + yyaccept = 47; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5638,16 +6751,16 @@ yy406: case '|': case '}': case '~': - case 0x7F: goto yy407; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy479; + case '\\': goto yy146; + default: goto yy61; } -yy407: -#line 376 "src/parser.re" - { NEWTOKEN(PSI_T_UNDEF); goto start; } -#line 5649 "src/parser.c" -yy408: - yyaccept = 40; +yy479: +#line 421 "src/parser.re" + { NEWTOKEN(PSI_T_STATIC); goto start; } +#line 6762 "src/parser.c" +yy480: + yyaccept = 48; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5707,52 +6820,22 @@ yy408: case '@': case '[': case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy409; - case '\\': goto yy138; - default: goto yy59; - } -yy409: -#line 412 "src/parser.re" - { NEWTOKEN(PSI_T_UNION); goto start; } -#line 5724 "src/parser.c" -yy410: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy470; - default: goto yy60; - } -yy411: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy471; - default: goto yy60; - } -yy412: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'r': goto yy472; - default: goto yy60; - } -yy413: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'a': goto yy473; - default: goto yy60; + case '^': + case '`': + case '{': + case '|': + case '}': + case '~': + case 0x7F: goto yy481; + case '\\': goto yy146; + default: goto yy61; } -yy414: - yyaccept = 41; +yy481: +#line 417 "src/parser.re" + { NEWTOKEN(PSI_T_STRING); goto start; } +#line 6837 "src/parser.c" +yy482: + yyaccept = 49; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5818,40 +6901,16 @@ yy414: case '|': case '}': case '~': - case 0x7F: goto yy415; - case '\\': goto yy138; - default: goto yy59; - } -yy415: -#line 429 "src/parser.re" - { NEWTOKEN(PSI_T_ARRVAL); goto start; } -#line 5829 "src/parser.c" -yy416: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy475; - default: goto yy60; - } -yy417: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy477; - default: goto yy60; - } -yy418: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy478; - default: goto yy60; + case 0x7F: goto yy483; + case '\\': goto yy146; + default: goto yy61; } -yy419: - yyaccept = 42; +yy483: +#line 431 "src/parser.re" + { NEWTOKEN(PSI_T_STRLEN); goto start; } +#line 6912 "src/parser.c" +yy484: + yyaccept = 50; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5917,16 +6976,40 @@ yy419: case '|': case '}': case '~': - case 0x7F: goto yy420; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy485; + case '\\': goto yy146; + default: goto yy61; } -yy420: -#line 433 "src/parser.re" - { NEWTOKEN(PSI_T_CALLOC); goto start; } -#line 5928 "src/parser.c" -yy421: - yyaccept = 43; +yy485: +#line 432 "src/parser.re" + { NEWTOKEN(PSI_T_STRVAL); goto start; } +#line 6987 "src/parser.c" +yy486: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy535; + default: goto yy62; + } +yy487: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy536; + default: goto yy62; + } +yy488: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'A': + case 'a': goto yy538; + default: goto yy62; + } +yy489: + yyaccept = 51; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -5992,18 +7075,75 @@ yy421: case '|': case '}': case '~': - case 0x7F: goto yy422; - case 'D': - case 'd': goto yy479; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy490; + case '\\': goto yy146; + default: goto yy61; } -yy422: -#line 374 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINE); goto start; } -#line 6005 "src/parser.c" -yy423: - yyaccept = 44; +yy490: +#line 445 "src/parser.re" + { NEWTOKEN(PSI_T_TO_INT); goto start; } +#line 7086 "src/parser.c" +yy491: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy539; + default: goto yy62; + } +yy492: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'I': + case 'i': goto yy540; + default: goto yy62; + } +yy493: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'G': + case 'g': goto yy541; + default: goto yy62; + } +yy494: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy543; + default: goto yy62; + } +yy495: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy545; + default: goto yy62; + } +yy496: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy546; + default: goto yy62; + } +yy497: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'n': goto yy547; + default: goto yy62; + } +yy498: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'r': goto yy548; + default: goto yy62; + } +yy499: + yyaccept = 52; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6069,32 +7209,37 @@ yy423: case '|': case '}': case '~': - case 0x7F: goto yy424; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy500; + case '\\': goto yy146; + default: goto yy61; } -yy424: -#line 393 "src/parser.re" +yy500: +#line 388 "src/parser.re" { NEWTOKEN(PSI_T_DOUBLE); goto start; } -#line 6080 "src/parser.c" -yy425: - yyaccept = 6; +#line 7220 "src/parser.c" +yy501: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy481; - default: goto yy60; + case 't': goto yy549; + default: goto yy62; } -yy426: - yyaccept = 6; +yy502: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'O': - case 'o': goto yy482; - default: goto yy60; + case 't': goto yy551; + default: goto yy62; } -yy427: - yyaccept = 45; +yy503: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy553; + default: goto yy62; + } +yy504: + yyaccept = 53; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6160,48 +7305,16 @@ yy427: case '|': case '}': case '~': - case 0x7F: goto yy428; - case '\\': goto yy138; - default: goto yy59; - } -yy428: -#line 370 "src/parser.re" - { NEWTOKEN(PSI_T_IFNDEF); goto start; } -#line 6171 "src/parser.c" -yy429: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy483; - default: goto yy60; - } -yy430: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy485; - default: goto yy60; - } -yy431: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy487; - default: goto yy60; - } -yy432: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy489; - default: goto yy60; + case 0x7F: goto yy505; + case '\\': goto yy146; + default: goto yy61; } -yy433: - yyaccept = 46; +yy505: +#line 389 "src/parser.re" + { NEWTOKEN(PSI_T_INT8); goto start; } +#line 7316 "src/parser.c" +yy506: + yyaccept = 54; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6267,16 +7380,16 @@ yy433: case '|': case '}': case '~': - case 0x7F: goto yy434; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy507; + case '\\': goto yy146; + default: goto yy555; } -yy434: -#line 394 "src/parser.re" - { NEWTOKEN(PSI_T_INT8); goto start; } -#line 6278 "src/parser.c" -yy435: - yyaccept = 47; +yy507: +#line 367 "src/parser.re" + { NEWTOKEN(PSI_T_PRAGMA); goto start; } +#line 7391 "src/parser.c" +yy508: + yyaccept = 55; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6342,16 +7455,16 @@ yy435: case '|': case '}': case '~': - case 0x7F: goto yy436; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy509; + case '\\': goto yy146; + default: goto yy61; } -yy436: -#line 426 "src/parser.re" - { NEWTOKEN(PSI_T_INTVAL); goto start; } -#line 6353 "src/parser.c" -yy437: - yyaccept = 48; +yy509: +#line 398 "src/parser.re" + { NEWTOKEN(PSI_T_SIGNED); goto start; } +#line 7466 "src/parser.c" +yy510: + yyaccept = 56; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6417,16 +7530,16 @@ yy437: case '|': case '}': case '~': - case 0x7F: goto yy438; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy511; + case '\\': goto yy146; + default: goto yy61; } -yy438: -#line 406 "src/parser.re" - { NEWTOKEN(PSI_T_OBJECT); goto start; } -#line 6428 "src/parser.c" -yy439: - yyaccept = 49; +yy511: +#line 374 "src/parser.re" + { NEWTOKEN(PSI_T_SIZEOF); goto start; } +#line 7541 "src/parser.c" +yy512: + yyaccept = 57; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6492,40 +7605,65 @@ yy439: case '|': case '}': case '~': - case 0x7F: goto yy440; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy513; + case '\\': goto yy146; + default: goto yy61; } -yy440: -#line 430 "src/parser.re" - { NEWTOKEN(PSI_T_OBJVAL); goto start; } -#line 6503 "src/parser.c" -yy441: - yyaccept = 6; +yy513: +#line 377 "src/parser.re" + { NEWTOKEN(PSI_T_STRUCT); goto start; } +#line 7616 "src/parser.c" +yy514: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy491; - default: goto yy60; + case 'f': goto yy557; + default: goto yy62; } -yy442: - yyaccept = 6; +yy515: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'S': - case 's': goto yy493; - default: goto yy60; + case '_': goto yy559; + default: goto yy62; } -yy443: - yyaccept = 6; +yy516: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy560; + default: goto yy62; + } +yy517: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy561; + default: goto yy62; + } +yy518: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy562; + default: goto yy62; + } +yy519: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy564; + default: goto yy62; + } +yy520: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'S': - case 's': goto yy494; - default: goto yy60; + case 'l': goto yy565; + default: goto yy62; } -yy444: - yyaccept = 50; +yy521: + yyaccept = 58; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6591,16 +7729,32 @@ yy444: case '|': case '}': case '~': - case 0x7F: goto yy445; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy522; + case '\\': goto yy146; + default: goto yy61; } -yy445: -#line 420 "src/parser.re" - { NEWTOKEN(PSI_T_RETURN); goto start; } -#line 6602 "src/parser.c" -yy446: - yyaccept = 51; +yy522: +#line 436 "src/parser.re" + { NEWTOKEN(PSI_T_BOOLVAL); goto start; } +#line 7740 "src/parser.c" +yy523: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy566; + default: goto yy62; + } +yy524: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'K': + case 'k': goto yy568; + default: goto yy62; + } +yy525: + yyaccept = 59; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6666,16 +7820,32 @@ yy446: case '|': case '}': case '~': - case 0x7F: goto yy447; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy526; + case '\\': goto yy146; + default: goto yy61; } -yy447: -#line 403 "src/parser.re" - { NEWTOKEN(PSI_T_SIGNED); goto start; } -#line 6677 "src/parser.c" -yy448: - yyaccept = 52; +yy526: +#line 406 "src/parser.re" + { NEWTOKEN(PSI_T_DEFINED); goto start; } +#line 7831 "src/parser.c" +yy527: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'L': + case 'l': goto yy570; + default: goto yy62; + } +yy528: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy572; + default: goto yy62; + } +yy529: + yyaccept = 60; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6741,16 +7911,17 @@ yy448: case '|': case '}': case '~': - case 0x7F: goto yy449; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy530; + case '\\': goto yy146; + case '_': goto yy574; + default: goto yy61; } -yy449: -#line 408 "src/parser.re" - { NEWTOKEN(PSI_T_STATIC); goto start; } -#line 6752 "src/parser.c" -yy450: - yyaccept = 53; +yy530: +#line 410 "src/parser.re" + { NEWTOKEN(PSI_T_INCLUDE); goto start; } +#line 7923 "src/parser.c" +yy531: + yyaccept = 61; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6816,16 +7987,40 @@ yy450: case '|': case '}': case '~': - case 0x7F: goto yy451; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy532; + case '\\': goto yy146; + default: goto yy61; } -yy451: -#line 404 "src/parser.re" - { NEWTOKEN(PSI_T_STRING); goto start; } -#line 6827 "src/parser.c" -yy452: - yyaccept = 54; +yy532: +#line 433 "src/parser.re" + { NEWTOKEN(PSI_T_PATHVAL); goto start; } +#line 7998 "src/parser.c" +yy533: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'S': + case 's': goto yy575; + default: goto yy62; + } +yy534: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'E': + case 'e': goto yy576; + default: goto yy62; + } +yy535: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'Y': + case 'y': goto yy577; + default: goto yy62; + } +yy536: + yyaccept = 62; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6891,16 +8086,40 @@ yy452: case '|': case '}': case '~': - case 0x7F: goto yy453; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy537; + case '\\': goto yy146; + default: goto yy61; } -yy453: -#line 423 "src/parser.re" - { NEWTOKEN(PSI_T_STRLEN); goto start; } -#line 6902 "src/parser.c" -yy454: - yyaccept = 55; +yy537: +#line 447 "src/parser.re" + { NEWTOKEN(PSI_T_TO_BOOL); goto start; } +#line 8097 "src/parser.c" +yy538: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy579; + default: goto yy62; + } +yy539: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'C': + case 'c': goto yy581; + default: goto yy62; + } +yy540: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'N': + case 'n': goto yy582; + default: goto yy62; + } +yy541: + yyaccept = 63; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -6966,16 +8185,16 @@ yy454: case '|': case '}': case '~': - case 0x7F: goto yy455; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy542; + case '\\': goto yy146; + default: goto yy61; } -yy455: -#line 411 "src/parser.re" - { NEWTOKEN(PSI_T_STRUCT); goto start; } -#line 6977 "src/parser.c" -yy456: - yyaccept = 56; +yy542: +#line 408 "src/parser.re" + { NEWTOKEN(PSI_T_WARNING); goto start; } +#line 8196 "src/parser.c" +yy543: + yyaccept = 64; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7041,40 +8260,44 @@ yy456: case '|': case '}': case '~': - case 0x7F: goto yy457; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy544; + case '\\': goto yy146; + default: goto yy61; } -yy457: -#line 424 "src/parser.re" - { NEWTOKEN(PSI_T_STRVAL); goto start; } -#line 7052 "src/parser.c" -yy458: - yyaccept = 6; +yy544: +#line 372 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_ASM); goto start; } +#line 8271 "src/parser.c" +yy545: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy495; - default: goto yy60; + case 'b': goto yy583; + default: goto yy62; } -yy459: - yyaccept = 6; +yy546: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'L': - case 'l': goto yy496; - default: goto yy60; + case 's': goto yy584; + default: goto yy62; } -yy460: - yyaccept = 6; +yy547: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'A': - case 'a': goto yy498; - default: goto yy60; + case 'e': goto yy585; + default: goto yy62; } -yy461: - yyaccept = 57; +yy548: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy587; + default: goto yy62; + } +yy549: + yyaccept = 65; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7140,92 +8363,16 @@ yy461: case '|': case '}': case '~': - case 0x7F: goto yy462; - case '\\': goto yy138; - default: goto yy59; - } -yy462: -#line 437 "src/parser.re" - { NEWTOKEN(PSI_T_TO_INT); goto start; } -#line 7151 "src/parser.c" -yy463: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy499; - default: goto yy60; - } -yy464: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy500; - default: goto yy60; - } -yy465: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy501; - default: goto yy60; - } -yy466: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy503; - default: goto yy60; - } -yy467: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy504; - default: goto yy60; - } -yy468: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy505; - default: goto yy60; - } -yy469: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy506; - default: goto yy60; - } -yy470: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy508; - default: goto yy60; - } -yy471: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy509; - default: goto yy60; + case 0x7F: goto yy550; + case '\\': goto yy146; + default: goto yy61; } -yy472: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy511; - default: goto yy60; - } -yy473: - yyaccept = 58; +yy550: +#line 391 "src/parser.re" + { NEWTOKEN(PSI_T_INT16); goto start; } +#line 8374 "src/parser.c" +yy551: + yyaccept = 66; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7291,16 +8438,16 @@ yy473: case '|': case '}': case '~': - case 0x7F: goto yy474; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy552; + case '\\': goto yy146; + default: goto yy61; } -yy474: -#line 366 "src/parser.re" - { NEWTOKEN(PSI_T_PRAGMA); goto start; } -#line 7302 "src/parser.c" -yy475: - yyaccept = 59; +yy552: +#line 393 "src/parser.re" + { NEWTOKEN(PSI_T_INT32); goto start; } +#line 8449 "src/parser.c" +yy553: + yyaccept = 67; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7366,33 +8513,19 @@ yy475: case '|': case '}': case '~': - case 0x7F: goto yy476; - case '\\': goto yy138; - default: goto yy59; - } -yy476: -#line 428 "src/parser.re" - { NEWTOKEN(PSI_T_BOOLVAL); goto start; } -#line 7377 "src/parser.c" -yy477: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy512; - default: goto yy60; - } -yy478: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'K': - case 'k': goto yy514; - default: goto yy60; + case 0x7F: goto yy554; + case '\\': goto yy146; + default: goto yy61; } -yy479: - yyaccept = 60; - yych = *(mrk = ++cur); +yy554: +#line 395 "src/parser.re" + { NEWTOKEN(PSI_T_INT64); goto start; } +#line 8524 "src/parser.c" +yy555: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case 0x00: case 0x01: @@ -7457,32 +8590,13 @@ yy479: case '|': case '}': case '~': - case 0x7F: goto yy480; - case '\\': goto yy138; - default: goto yy59; - } -yy480: -#line 375 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINED); goto start; } -#line 7468 "src/parser.c" -yy481: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy516; - default: goto yy60; - } -yy482: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy518; - default: goto yy60; + case 0x7F: goto yy55; + case '\\': goto yy146; + case 'o': goto yy588; + default: goto yy555; } -yy483: - yyaccept = 61; +yy557: + yyaccept = 68; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7548,17 +8662,37 @@ yy483: case '|': case '}': case '~': - case 0x7F: goto yy484; - case '\\': goto yy138; - case '_': goto yy520; - default: goto yy59; + case 0x7F: goto yy558; + case '\\': goto yy146; + default: goto yy61; } -yy484: -#line 379 "src/parser.re" - { NEWTOKEN(PSI_T_INCLUDE); goto start; } -#line 7560 "src/parser.c" -yy485: - yyaccept = 62; +yy558: +#line 376 "src/parser.re" + { NEWTOKEN(PSI_T_TYPEDEF); goto start; } +#line 8673 "src/parser.c" +yy559: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy590; + default: goto yy62; + } +yy560: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy592; + default: goto yy62; + } +yy561: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy594; + default: goto yy62; + } +yy562: + yyaccept = 69; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7624,16 +8758,30 @@ yy485: case '|': case '}': case '~': - case 0x7F: goto yy486; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy563; + case '\\': goto yy146; + default: goto yy61; } -yy486: -#line 396 "src/parser.re" - { NEWTOKEN(PSI_T_INT16); goto start; } -#line 7635 "src/parser.c" -yy487: - yyaccept = 63; +yy563: +#line 390 "src/parser.re" + { NEWTOKEN(PSI_T_UINT8); goto start; } +#line 8769 "src/parser.c" +yy564: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'd': goto yy596; + default: goto yy62; + } +yy565: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'e': goto yy598; + default: goto yy62; + } +yy566: + yyaccept = 70; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7699,16 +8847,16 @@ yy487: case '|': case '}': case '~': - case 0x7F: goto yy488; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy567; + case '\\': goto yy146; + default: goto yy61; } -yy488: -#line 398 "src/parser.re" - { NEWTOKEN(PSI_T_INT32); goto start; } -#line 7710 "src/parser.c" -yy489: - yyaccept = 64; +yy567: +#line 416 "src/parser.re" + { NEWTOKEN(PSI_T_CALLABLE); goto start; } +#line 8858 "src/parser.c" +yy568: + yyaccept = 71; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7774,16 +8922,16 @@ yy489: case '|': case '}': case '~': - case 0x7F: goto yy490; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy569; + case '\\': goto yy146; + default: goto yy61; } -yy490: -#line 400 "src/parser.re" - { NEWTOKEN(PSI_T_INT64); goto start; } -#line 7785 "src/parser.c" -yy491: - yyaccept = 65; +yy569: +#line 420 "src/parser.re" + { NEWTOKEN(PSI_T_CALLBACK); goto start; } +#line 8933 "src/parser.c" +yy570: + yyaccept = 72; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7849,40 +8997,16 @@ yy491: case '|': case '}': case '~': - case 0x7F: goto yy492; - case '\\': goto yy138; - default: goto yy59; - } -yy492: -#line 425 "src/parser.re" - { NEWTOKEN(PSI_T_PATHVAL); goto start; } -#line 7860 "src/parser.c" -yy493: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy521; - default: goto yy60; - } -yy494: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy522; - default: goto yy60; - } -yy495: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'Y': - case 'y': goto yy523; - default: goto yy60; + case 0x7F: goto yy571; + case '\\': goto yy146; + default: goto yy61; } -yy496: - yyaccept = 66; +yy571: +#line 435 "src/parser.re" + { NEWTOKEN(PSI_T_FLOATVAL); goto start; } +#line 9008 "src/parser.c" +yy572: + yyaccept = 73; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -7948,40 +9072,40 @@ yy496: case '|': case '}': case '~': - case 0x7F: goto yy497; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy573; + case '\\': goto yy146; + default: goto yy61; } -yy497: -#line 439 "src/parser.re" - { NEWTOKEN(PSI_T_TO_BOOL); goto start; } -#line 7959 "src/parser.c" -yy498: - yyaccept = 6; +yy573: +#line 422 "src/parser.re" + { NEWTOKEN(PSI_T_FUNCTION); goto start; } +#line 9083 "src/parser.c" +yy574: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy525; - default: goto yy60; + case 'N': + case 'n': goto yy600; + default: goto yy62; } -yy499: - yyaccept = 6; +yy575: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'C': - case 'c': goto yy527; - default: goto yy60; + case 'E': + case 'e': goto yy601; + default: goto yy62; } -yy500: - yyaccept = 6; +yy576: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'N': - case 'n': goto yy528; - default: goto yy60; + case 'R': + case 'r': goto yy602; + default: goto yy62; } -yy501: - yyaccept = 67; +yy577: + yyaccept = 74; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8047,40 +9171,16 @@ yy501: case '|': case '}': case '~': - case 0x7F: goto yy502; - case '\\': goto yy138; - default: goto yy59; - } -yy502: -#line 410 "src/parser.re" - { NEWTOKEN(PSI_T_TYPEDEF); goto start; } -#line 8058 "src/parser.c" -yy503: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy529; - default: goto yy60; - } -yy504: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy531; - default: goto yy60; - } -yy505: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy533; - default: goto yy60; + case 0x7F: goto yy578; + case '\\': goto yy146; + default: goto yy61; } -yy506: - yyaccept = 68; +yy578: +#line 443 "src/parser.re" + { NEWTOKEN(PSI_T_TO_ARRAY); goto start; } +#line 9182 "src/parser.c" +yy579: + yyaccept = 75; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8146,24 +9246,46 @@ yy506: case '|': case '}': case '~': - case 0x7F: goto yy507; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy580; + case '\\': goto yy146; + default: goto yy61; } -yy507: -#line 395 "src/parser.re" - { NEWTOKEN(PSI_T_UINT8); goto start; } -#line 8157 "src/parser.c" -yy508: - yyaccept = 6; +yy580: +#line 446 "src/parser.re" + { NEWTOKEN(PSI_T_TO_FLOAT); goto start; } +#line 9257 "src/parser.c" +yy581: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'D': - case 'd': goto yy535; - default: goto yy60; + case 'T': + case 't': goto yy603; + default: goto yy62; } -yy509: - yyaccept = 69; +yy582: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'G': + case 'g': goto yy605; + default: goto yy62; + } +yy583: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'u': goto yy607; + default: goto yy62; + } +yy584: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'i': goto yy608; + default: goto yy62; + } +yy585: + yyaccept = 76; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8229,24 +9351,26 @@ yy509: case '|': case '}': case '~': - case 0x7F: goto yy510; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy586; + case '\\': goto yy146; + default: goto yy61; } -yy510: -#line 377 "src/parser.re" - { NEWTOKEN(PSI_T_WARNING); goto start; } -#line 8240 "src/parser.c" -yy511: - yyaccept = 6; +yy586: +#line 369 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_INLINE); goto start; } +#line 9362 "src/parser.c" +yy587: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'b': goto yy537; - default: goto yy60; + case 'c': goto yy609; + default: goto yy62; } -yy512: - yyaccept = 70; - yych = *(mrk = ++cur); +yy588: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case 0x00: case 0x01: @@ -8311,16 +9435,14 @@ yy512: case '|': case '}': case '~': - case 0x7F: goto yy513; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy55; + case '\\': goto yy146; + case 'n': goto yy610; + case 'o': goto yy588; + default: goto yy555; } -yy513: -#line 385 "src/parser.re" - { NEWTOKEN(PSI_T_CALLABLE); goto start; } -#line 8322 "src/parser.c" -yy514: - yyaccept = 71; +yy590: + yyaccept = 77; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8386,16 +9508,16 @@ yy514: case '|': case '}': case '~': - case 0x7F: goto yy515; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy591; + case '\\': goto yy146; + default: goto yy61; } -yy515: -#line 407 "src/parser.re" - { NEWTOKEN(PSI_T_CALLBACK); goto start; } -#line 8397 "src/parser.c" -yy516: - yyaccept = 72; +yy591: +#line 392 "src/parser.re" + { NEWTOKEN(PSI_T_UINT16); goto start; } +#line 9519 "src/parser.c" +yy592: + yyaccept = 78; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8461,16 +9583,16 @@ yy516: case '|': case '}': case '~': - case 0x7F: goto yy517; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy593; + case '\\': goto yy146; + default: goto yy61; } -yy517: -#line 427 "src/parser.re" - { NEWTOKEN(PSI_T_FLOATVAL); goto start; } -#line 8472 "src/parser.c" -yy518: - yyaccept = 73; +yy593: +#line 394 "src/parser.re" + { NEWTOKEN(PSI_T_UINT32); goto start; } +#line 9594 "src/parser.c" +yy594: + yyaccept = 79; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8535,41 +9657,17 @@ yy518: case '{': case '|': case '}': - case '~': - case 0x7F: goto yy519; - case '\\': goto yy138; - default: goto yy59; - } -yy519: -#line 409 "src/parser.re" - { NEWTOKEN(PSI_T_FUNCTION); goto start; } -#line 8547 "src/parser.c" -yy520: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy538; - default: goto yy60; - } -yy521: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy539; - default: goto yy60; - } -yy522: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy540; - default: goto yy60; + case '~': + case 0x7F: goto yy595; + case '\\': goto yy146; + default: goto yy61; } -yy523: - yyaccept = 74; +yy595: +#line 396 "src/parser.re" + { NEWTOKEN(PSI_T_UINT64); goto start; } +#line 9669 "src/parser.c" +yy596: + yyaccept = 80; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8635,16 +9733,16 @@ yy523: case '|': case '}': case '~': - case 0x7F: goto yy524; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy597; + case '\\': goto yy146; + default: goto yy61; } -yy524: -#line 435 "src/parser.re" - { NEWTOKEN(PSI_T_TO_ARRAY); goto start; } -#line 8646 "src/parser.c" -yy525: - yyaccept = 75; +yy597: +#line 397 "src/parser.re" + { NEWTOKEN(PSI_T_UNSIGNED); goto start; } +#line 9744 "src/parser.c" +yy598: + yyaccept = 81; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8710,32 +9808,40 @@ yy525: case '|': case '}': case '~': - case 0x7F: goto yy526; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy599; + case '\\': goto yy146; + default: goto yy61; } -yy526: -#line 438 "src/parser.re" - { NEWTOKEN(PSI_T_TO_FLOAT); goto start; } -#line 8721 "src/parser.c" -yy527: - yyaccept = 6; +yy599: +#line 373 "src/parser.re" + { NEWTOKEN(PSI_T_VOLATILE); goto start; } +#line 9819 "src/parser.c" +yy600: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy541; - default: goto yy60; + case 'E': + case 'e': goto yy611; + default: goto yy62; } -yy528: - yyaccept = 6; +yy601: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'G': - case 'g': goto yy543; - default: goto yy60; + case 'R': + case 'r': goto yy612; + default: goto yy62; } -yy529: - yyaccept = 76; +yy602: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy613; + default: goto yy62; + } +yy603: + yyaccept = 82; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8801,16 +9907,16 @@ yy529: case '|': case '}': case '~': - case 0x7F: goto yy530; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy604; + case '\\': goto yy146; + default: goto yy61; } -yy530: -#line 397 "src/parser.re" - { NEWTOKEN(PSI_T_UINT16); goto start; } -#line 8812 "src/parser.c" -yy531: - yyaccept = 77; +yy604: +#line 442 "src/parser.re" + { NEWTOKEN(PSI_T_TO_OBJECT); goto start; } +#line 9918 "src/parser.c" +yy605: + yyaccept = 83; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -8876,18 +9982,41 @@ yy531: case '|': case '}': case '~': - case 0x7F: goto yy532; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy606; + case '\\': goto yy146; + default: goto yy61; } -yy532: -#line 399 "src/parser.re" - { NEWTOKEN(PSI_T_UINT32); goto start; } -#line 8887 "src/parser.c" -yy533: - yyaccept = 78; +yy606: +#line 444 "src/parser.re" + { NEWTOKEN(PSI_T_TO_STRING); goto start; } +#line 9993 "src/parser.c" +yy607: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 't': goto yy615; + default: goto yy62; + } +yy608: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'o': goto yy616; + default: goto yy62; + } +yy609: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { + case 't': goto yy617; + default: goto yy62; + } +yy610: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { case 0x00: case 0x01: case 0x02: @@ -8951,16 +10080,30 @@ yy533: case '|': case '}': case '~': - case 0x7F: goto yy534; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy55; + case '\\': goto yy146; + case 'c': goto yy619; + case 'o': goto yy588; + default: goto yy555; } -yy534: -#line 401 "src/parser.re" - { NEWTOKEN(PSI_T_UINT64); goto start; } -#line 8962 "src/parser.c" -yy535: - yyaccept = 79; +yy611: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'X': + case 'x': goto yy620; + default: goto yy62; + } +yy612: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case 'T': + case 't': goto yy621; + default: goto yy62; + } +yy613: + yyaccept = 84; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -9026,47 +10169,30 @@ yy535: case '|': case '}': case '~': - case 0x7F: goto yy536; - case '\\': goto yy138; - default: goto yy59; - } -yy536: -#line 402 "src/parser.re" - { NEWTOKEN(PSI_T_UNSIGNED); goto start; } -#line 9037 "src/parser.c" -yy537: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'u': goto yy545; - default: goto yy60; - } -yy538: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy546; - default: goto yy60; + case 0x7F: goto yy614; + case '\\': goto yy146; + default: goto yy61; } -yy539: - yyaccept = 6; +yy614: +#line 426 "src/parser.re" + { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; } +#line 10180 "src/parser.c" +yy615: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'R': - case 'r': goto yy547; - default: goto yy60; + case 'e': goto yy623; + default: goto yy62; } -yy540: - yyaccept = 6; +yy616: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy548; - default: goto yy60; + case 'n': goto yy624; + default: goto yy62; } -yy541: - yyaccept = 80; +yy617: + yyaccept = 85; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -9132,17 +10258,19 @@ yy541: case '|': case '}': case '~': - case 0x7F: goto yy542; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy618; + case '\\': goto yy146; + default: goto yy61; } -yy542: -#line 434 "src/parser.re" - { NEWTOKEN(PSI_T_TO_OBJECT); goto start; } -#line 9143 "src/parser.c" -yy543: - yyaccept = 81; - yych = *(mrk = ++cur); +yy618: +#line 370 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; } +#line 10269 "src/parser.c" +yy619: + yyaccept = 5; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case 0x00: case 0x01: @@ -9207,39 +10335,22 @@ yy543: case '|': case '}': case '~': - case 0x7F: goto yy544; - case '\\': goto yy138; - default: goto yy59; - } -yy544: -#line 436 "src/parser.re" - { NEWTOKEN(PSI_T_TO_STRING); goto start; } -#line 9218 "src/parser.c" -yy545: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy550; - default: goto yy60; - } -yy546: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case 'X': - case 'x': goto yy551; - default: goto yy60; + case 0x7F: goto yy55; + case '\\': goto yy146; + case 'e': goto yy625; + case 'o': goto yy588; + default: goto yy555; } -yy547: - yyaccept = 6; +yy620: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { case 'T': - case 't': goto yy552; - default: goto yy60; + case 't': goto yy627; + default: goto yy62; } -yy548: - yyaccept = 82; +yy621: + yyaccept = 86; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -9305,32 +10416,33 @@ yy548: case '|': case '}': case '~': - case 0x7F: goto yy549; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy622; + case '\\': goto yy146; + default: goto yy61; } -yy549: -#line 418 "src/parser.re" - { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; } -#line 9316 "src/parser.c" -yy550: - yyaccept = 6; +yy622: +#line 427 "src/parser.re" + { NEWTOKEN(PSI_T_POST_ASSERT); goto start; } +#line 10427 "src/parser.c" +yy623: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'e': goto yy554; - default: goto yy60; + case '_': goto yy629; + default: goto yy62; } -yy551: - yyaccept = 6; +yy624: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case 'T': - case 't': goto yy555; - default: goto yy60; + case '_': goto yy630; + default: goto yy62; } -yy552: - yyaccept = 83; - yych = *(mrk = ++cur); +yy625: + yyaccept = 87; + mrk = ++cur; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; switch (yych) { case 0x00: case 0x01: @@ -9395,23 +10507,17 @@ yy552: case '|': case '}': case '~': - case 0x7F: goto yy553; - case '\\': goto yy138; - default: goto yy59; - } -yy553: -#line 419 "src/parser.re" - { NEWTOKEN(PSI_T_POST_ASSERT); goto start; } -#line 9406 "src/parser.c" -yy554: - yyaccept = 6; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy557; - default: goto yy60; + case 0x7F: goto yy626; + case '\\': goto yy146; + case 'o': goto yy588; + default: goto yy555; } -yy555: - yyaccept = 84; +yy626: +#line 368 "src/parser.re" + { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; } +#line 10519 "src/parser.c" +yy627: + yyaccept = 88; yych = *(mrk = ++cur); switch (yych) { case 0x00: @@ -9477,26 +10583,41 @@ yy555: case '|': case '}': case '~': - case 0x7F: goto yy556; - case '\\': goto yy138; - default: goto yy59; + case 0x7F: goto yy628; + case '\\': goto yy146; + default: goto yy61; } -yy556: -#line 380 "src/parser.re" +yy628: +#line 411 "src/parser.re" { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; } -#line 9488 "src/parser.c" -yy557: - yyaccept = 6; +#line 10594 "src/parser.c" +yy629: + yyaccept = 5; yych = *(mrk = ++cur); switch (yych) { - case '_': goto yy558; - default: goto yy60; + case '_': goto yy631; + default: goto yy62; } -yy558: - yyaccept = 6; - mrk = ++cur; - if ((lim - cur) < 2) if (cur >= lim) goto done;; - yych = *cur; +yy630: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '_': goto yy632; + default: goto yy62; + } +yy631: + yyaccept = 5; + yych = *(mrk = ++cur); + switch (yych) { + case '\t': + case '\f': + case ' ': goto yy634; + case '(': goto yy636; + default: goto yy62; + } +yy632: + yyaccept = 89; + yych = *(mrk = ++cur); switch (yych) { case 0x00: case 0x01: @@ -9538,6 +10659,7 @@ yy558: case '%': case '&': case '\'': + case '(': case ')': case '*': case '+': @@ -9560,128 +10682,238 @@ yy558: case '|': case '}': case '~': - case 0x7F: goto yy53; - case '(': goto yy560; - case '\\': goto yy138; - default: goto yy558; + case 0x7F: goto yy633; + case '\\': goto yy146; + default: goto yy61; } -yy560: +yy633: +#line 371 "src/parser.re" + { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; } +#line 10693 "src/parser.c" +yy634: + ++cur; + if ((lim - cur) < 2) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\t': + case '\f': + case ' ': goto yy634; + case '(': goto yy636; + default: goto yy114; + } +yy636: yych = *++cur; switch (yych) { - case '(': goto yy561; - default: goto yy106; + case '(': goto yy637; + default: goto yy114; } -yy561: +yy637: ++cur; -#line 446 "src/parser.re" +#line 452 "src/parser.re" { parens = 2; goto cpp_attribute; } -#line 9579 "src/parser.c" +#line 10715 "src/parser.c" } -#line 452 "src/parser.re" +#line 458 "src/parser.re" + + + character: ; + +#line 10722 "src/parser.c" + { + unsigned char yych; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\n': + case '\r': goto yy643; + case '\'': goto yy645; + case '\\': goto yy647; + default: goto yy641; + } +yy641: + ++cur; +#line 476 "src/parser.re" + { escaped = false; goto character; } +#line 10738 "src/parser.c" +yy643: + ++cur; +#line 463 "src/parser.re" + { NEWLINE(); goto character; } +#line 10743 "src/parser.c" +yy645: + ++cur; +#line 465 "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 10758 "src/parser.c" +yy647: + ++cur; +#line 464 "src/parser.re" + { escaped = !escaped; goto character; } +#line 10763 "src/parser.c" + } +#line 478 "src/parser.re" + + + string: ; + +#line 10770 "src/parser.c" + { + unsigned char yych; + if (lim <= cur) if (cur >= lim) goto done;; + yych = *cur; + switch (yych) { + case '\n': + case '\r': goto yy653; + case '"': goto yy655; + case '\\': goto yy657; + default: goto yy651; + } +yy651: + ++cur; +#line 496 "src/parser.re" + { escaped = false; goto string; } +#line 10786 "src/parser.c" +yy653: + ++cur; +#line 483 "src/parser.re" + { NEWLINE(); goto string; } +#line 10791 "src/parser.c" +yy655: + ++cur; +#line 485 "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 10806 "src/parser.c" +yy657: + ++cur; +#line 484 "src/parser.re" + { escaped = !escaped; goto string; } +#line 10811 "src/parser.c" + } +#line 498 "src/parser.re" comment: ; -#line 9586 "src/parser.c" +#line 10818 "src/parser.c" { unsigned char yych; if ((lim - cur) < 2) if (cur >= lim) goto done;; yych = *cur; switch (yych) { case '\n': - case '\r': goto yy567; - case '*': goto yy569; - default: goto yy565; + case '\r': goto yy663; + case '*': goto yy665; + default: goto yy661; } -yy565: +yy661: ++cur; -yy566: -#line 459 "src/parser.re" +yy662: +#line 505 "src/parser.re" { goto comment; } -#line 9602 "src/parser.c" -yy567: +#line 10834 "src/parser.c" +yy663: ++cur; -#line 457 "src/parser.re" +#line 503 "src/parser.re" { NEWLINE(); goto comment; } -#line 9607 "src/parser.c" -yy569: +#line 10839 "src/parser.c" +yy665: yych = *++cur; switch (yych) { - case '/': goto yy570; - default: goto yy566; + case '/': goto yy666; + default: goto yy662; } -yy570: +yy666: ++cur; -#line 458 "src/parser.re" +#line 504 "src/parser.re" { NEWTOKEN(PSI_T_COMMENT); goto start; } -#line 9618 "src/parser.c" +#line 10850 "src/parser.c" } -#line 461 "src/parser.re" +#line 507 "src/parser.re" comment_sl: ; -#line 9625 "src/parser.c" +#line 10857 "src/parser.c" { unsigned char yych; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; switch (yych) { case '\n': - case '\r': goto yy576; - default: goto yy574; + case '\r': goto yy672; + default: goto yy670; } -yy574: +yy670: ++cur; -#line 467 "src/parser.re" +#line 513 "src/parser.re" { goto comment_sl; } -#line 9639 "src/parser.c" -yy576: +#line 10871 "src/parser.c" +yy672: ++cur; -#line 466 "src/parser.re" +#line 512 "src/parser.re" { NEWTOKEN(PSI_T_COMMENT); NEWLINE(); goto start; } -#line 9644 "src/parser.c" +#line 10876 "src/parser.c" } -#line 469 "src/parser.re" +#line 515 "src/parser.re" cpp_attribute: ; -#line 9652 "src/parser.c" +#line 10884 "src/parser.c" { unsigned char yych; if (lim <= cur) if (cur >= lim) goto done;; yych = *cur; switch (yych) { case '\n': - case '\r': goto yy582; - case '(': goto yy584; - case ')': goto yy586; - default: goto yy580; + case '\r': goto yy678; + case '(': goto yy680; + case ')': goto yy682; + default: goto yy676; } -yy580: +yy676: ++cur; -#line 478 "src/parser.re" +#line 524 "src/parser.re" { goto cpp_attribute; } -#line 9668 "src/parser.c" -yy582: +#line 10900 "src/parser.c" +yy678: ++cur; -#line 477 "src/parser.re" +#line 523 "src/parser.re" { NEWLINE(); goto cpp_attribute; } -#line 9673 "src/parser.c" -yy584: +#line 10905 "src/parser.c" +yy680: ++cur; -#line 475 "src/parser.re" +#line 521 "src/parser.re" { ++parens; goto cpp_attribute; } -#line 9678 "src/parser.c" -yy586: +#line 10910 "src/parser.c" +yy682: ++cur; -#line 476 "src/parser.re" +#line 522 "src/parser.re" { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } } -#line 9683 "src/parser.c" +#line 10915 "src/parser.c" } -#line 480 "src/parser.re" +#line 526 "src/parser.re" error: ;