X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Fparser.c;h=2a89068e74d2ca6ed65ccf2b7d35a32c4f5c2e89;hp=ace7900dfcbebd5f6ebbd9c8440c99e6ecf7585e;hb=cd0567b4052ee24259bc6b8a9858af9d26f3de48;hpb=440ff658995f1378fd74c0101ff6c2b4951ffdf9 diff --git a/src/parser.c b/src/parser.c index ace7900..2a89068 100644 --- a/src/parser.c +++ b/src/parser.c @@ -1,5 +1,3 @@ -/* Generated by re2c 1.0.2 on Fri Sep 8 10:30:56 2017 */ -#line 1 "src/parser.re" /******************************************************************************* Copyright (c) 2016, Michael Wallner . All rights reserved. @@ -25,23 +23,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *******************************************************************************/ -#include "php_psi_stdinc.h" +#ifdef HAVE_CONFIG_H +# include "config.h" +#else +# include "php_config.h" +#endif #include #include +#include #include -#include "parser.h" - -#define YYMAXFILL 15 +#include -#ifndef YYMAXFILL -# define YYMAXFILL 256 -#endif +#include "parser.h" -struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, unsigned flags) +struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, + unsigned flags) { if (!P) { - P = malloc(sizeof(*P)); + P = pemalloc(sizeof(*P), 1); } memset(P, 0, sizeof(*P)); @@ -49,12 +49,11 @@ struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, uns P->preproc = psi_cpp_init(P); - psi_cpp_load_defaults(P->preproc); - return P; } -struct psi_parser_input *psi_parser_open_file(struct psi_parser *P, const char *filename, bool report_errors) +struct psi_parser_input *psi_parser_open_file(struct psi_parser *P, + const char *filename, bool report_errors) { struct stat sb; FILE *fp; @@ -69,11 +68,11 @@ struct psi_parser_input *psi_parser_open_file(struct psi_parser *P, const char * return NULL; } - if (!(fb = malloc(sizeof(*fb) + strlen(filename) + 1 + sb.st_size + YYMAXFILL))) { + if (!(fb = pemalloc(sizeof(*fb) + sb.st_size + psi_parser_maxfill(), 1))) { if (report_errors) { P->error(PSI_DATA(P), NULL, PSI_WARNING, "Could not allocate %zu bytes for reading '%s': %s", - sb.st_size + YYMAXFILL, filename, strerror(errno)); + sb.st_size + psi_parser_maxfill(), filename, strerror(errno)); } return NULL; } @@ -94,110 +93,176 @@ struct psi_parser_input *psi_parser_open_file(struct psi_parser *P, const char * if (report_errors) { P->error(PSI_DATA(P), NULL, PSI_WARNING, "Could not read %zu bytes from '%s': %s", - sb.st_size + YYMAXFILL, filename, strerror(errno)); + sb.st_size + psi_parser_maxfill(), filename, strerror(errno)); } return NULL; } + fclose(fp); + + memset(fb->buffer + sb.st_size, 0, psi_parser_maxfill()); - memset(fb->buffer + sb.st_size, 0, YYMAXFILL); fb->length = sb.st_size; - fb->file = &fb->buffer[sb.st_size + YYMAXFILL]; - memcpy(fb->file, filename, strlen(filename) + 1); + fb->file = psi_string_init_interned(filename, strlen(filename), 1); return fb; } -struct psi_parser_input *psi_parser_open_string(struct psi_parser *P, const char *string, size_t length) +struct psi_parser_input *psi_parser_open_string(struct psi_parser *P, + const char *string, size_t length) { struct psi_parser_input *sb; - if (!(sb = malloc(sizeof(*sb) + sizeof("") + length + YYMAXFILL))) { + if (!(sb = pemalloc(sizeof(*sb) + length + psi_parser_maxfill(), 1))) { P->error(PSI_DATA(P), NULL, PSI_WARNING, "Could not allocate %zu bytes: %s", - length + YYMAXFILL, strerror(errno)); + length + psi_parser_maxfill(), strerror(errno)); return NULL; } memcpy(sb->buffer, string, length); - memset(sb->buffer + length, 0, YYMAXFILL); + memset(sb->buffer + length, 0, psi_parser_maxfill()); sb->length = length; - sb->file = &sb->buffer[length + YYMAXFILL]; - memcpy(sb->file, "", sizeof("")); + sb->file = psi_string_init_interned("", strlen(""), 1); return sb; } -#if 0 -static void psi_parser_register_constants(struct psi_parser *P) +struct psi_plist *psi_parser_preprocess(struct psi_parser *P, + struct psi_plist **tokens) { - zend_string *key; - zval *val; + if (psi_cpp_process(P->preproc, tokens, NULL)) { + return *tokens; + } + return NULL; +} - ZEND_HASH_FOREACH_STR_KEY_VAL(&P->cpp.defs, key, val) - { - struct psi_impl_def_val *iv; - struct psi_const_type *ct; - struct psi_const *c; - const char *ctn; - token_t ctt; - impl_val tmp; - zend_string *str; +bool psi_parser_process(struct psi_parser *P, struct psi_plist *tokens, + size_t *processed) +{ + if (psi_plist_count(tokens)) { + return 0 == psi_parser_proc_parse(P, tokens, processed); + } + return true; +} - ZVAL_DEREF(val); - switch (Z_TYPE_P(val)) { - case IS_TRUE: - case IS_FALSE: - ctt = PSI_T_BOOL; - ctn = "bool"; - tmp.zend.bval = Z_TYPE_P(val) == IS_TRUE; - break; - case IS_LONG: - ctt = PSI_T_INT; - ctn = "int"; - tmp.zend.lval = Z_LVAL_P(val); - break; - case IS_DOUBLE: - ctt = PSI_T_FLOAT; - ctn = "float"; - tmp.dval = Z_DVAL_P(val); - break; - default: - ctt = PSI_T_STRING; - ctn = "string"; - str = zval_get_string(val); - tmp.zend.str = zend_string_dup(str, 1); - zend_string_release(str); - break; - } +#if PSI_THREADED_PARSER +static void psi_smart_str_printf(smart_str *ss, const char *fmt, ...) +{ + va_list argv; + char *buf; + int len; - iv = psi_impl_def_val_init(ctt, NULL); - iv->ival = tmp; - ct = psi_const_type_init(ctt, ctn); - c = psi_const_init(ct, key->val, iv); - if (!P->consts) { - P->consts = psi_plist_init((psi_plist_dtor) psi_const_free); - } - P->consts = psi_plist_add(P->consts, &c); + va_start(argv, fmt); + len = vasprintf(&buf, fmt, argv); + va_end(argv); + + if (len != -1) { + smart_str_appendl_ex(ss, buf, len, 1); + free(buf); } - ZEND_HASH_FOREACH_END(); } +#else +# define psi_smart_str_printf smart_str_append_printf #endif -struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist **tokens) +static inline zend_string *macro_to_constant(struct psi_parser *parser, + zend_string *name, struct psi_validate_scope *scope) { - if (psi_cpp_process(P->preproc, tokens)) { - return *tokens; + smart_str str = {0}; + size_t i = 0; + struct psi_token *tok; +#if PSI_THREADED_PARSER + int persistent = 1; +#else + int persistent = 0; +#endif + + psi_smart_str_printf(&str, "const psi\\%s = ", name->val); + if (scope->macro->exp) { + struct psi_dump dump = {{.hn = &str}, + .fun = (psi_dump_cb) psi_smart_str_printf}; + + psi_num_exp_dump(&dump, scope->macro->exp); + + } else while (psi_plist_get(scope->macro->tokens, i++, &tok)) { + if (tok->type == PSI_T_QUOTED_STRING) { + smart_str_appendc_ex(&str, '"', persistent); + } + smart_str_append_ex(&str, tok->text, persistent); + if (tok->type == PSI_T_QUOTED_STRING) { + smart_str_appendc_ex(&str, '"', persistent); + } + smart_str_appendc_ex(&str, ' ', persistent); } - return NULL; + smart_str_appendl_ex(&str, ";\n", 2, persistent); + return smart_str_extract(&str); } -bool psi_parser_process(struct psi_parser *P, struct psi_plist *tokens, size_t *processed) +void psi_parser_postprocess(struct psi_parser *P) { - if (psi_plist_count(tokens)) { - return 0 == psi_parser_proc_parse(P, tokens, processed); + unsigned flags; + zend_string *name; + struct psi_validate_scope scope = {0}; + + psi_validate_scope_ctor(&scope); + scope.cpp = P->preproc; + + flags = P->flags; + P->flags |= PSI_SILENT; + + ZEND_HASH_FOREACH_STR_KEY_PTR(&P->preproc->defs, name, scope.macro) + { + bool parsed; + size_t processed = 0; + struct psi_plist *scanned, *preproc; + struct psi_parser_input *I; + zend_string *cnst; + + if (scope.macro->sig) { + continue; + } else if (!scope.macro->exp) { + struct psi_token *tok; + if (psi_plist_count(scope.macro->tokens) != 1) { + continue; + } else if (!psi_plist_get(scope.macro->tokens, 0, &tok)) { + continue; + } else if (tok->type != PSI_T_QUOTED_STRING) { + continue; + } + } else if (!psi_num_exp_validate(PSI_DATA(P), scope.macro->exp, &scope)) { + continue; + } + + cnst = macro_to_constant(P, name, &scope); + if (!cnst) { + continue; + } + + I = psi_parser_open_string(P, ZSTR_VAL(cnst), ZSTR_LEN(cnst)); + zend_string_release(cnst); + + if (!(scanned = psi_parser_scan(P, I))) { + psi_parser_input_free(&I); + continue; + } + psi_parser_input_free(&I); + + if (!(preproc = psi_parser_preprocess(P, &scanned))) { + psi_plist_free(scanned); + continue; + } + + parsed = psi_parser_process(P, preproc, &processed); + PSI_DEBUG_PRINT(PSI_DATA(P), "PSI: processed=%zu success=%d\n", + processed, (int) parsed); + psi_plist_free(preproc); } - return true; + ZEND_HASH_FOREACH_END(); + + P->flags = flags; + + psi_validate_scope_dtor(&scope); } bool psi_parser_parse(struct psi_parser *P, struct psi_parser_input *I) @@ -219,6 +284,8 @@ bool psi_parser_parse(struct psi_parser *P, struct psi_parser_input *I) return false; } + psi_parser_postprocess(P); + psi_plist_free(preproc); return true; } @@ -240,9900 +307,3 @@ void psi_parser_free(struct psi_parser **P) } } -#define NEWLINE() \ - eol = cur; \ - ++I->lines - -#define NEWTOKEN(t) \ - token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \ - tokens = psi_plist_add(tokens, &token); \ - if (P->flags & PSI_DEBUG) { \ - fprintf(stderr, "PSI< "); \ - psi_token_dump(2, token); \ - } - -union int_suffix { - char s[SIZEOF_UINT32_T]; - uint32_t i; -}; - -struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input *I) -{ - struct psi_plist *tokens; - struct psi_token *token; - const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk; - unsigned parens; - bool escaped; - token_t char_width; - - 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((psi_plist_dtor) psi_token_free); - - start: ; - char_width = 1; - ctxmrk = NULL; - tok = cur; - - -#line 283 "src/parser.c" - { - unsigned char yych; - unsigned int yyaccept = 0; - if ((lim - cur) < 15) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\v': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case '@': - case '`': - case 0x7F: goto yy2; - case '\t': - case '\f': - case ' ': goto yy4; - case '\n': - case '\r': goto yy7; - case '!': goto yy9; - case '"': goto yy11; - case '#': goto 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': - case '4': - case '5': - case '6': - case '7': - case '8': - 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 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 yy65; - case 'N': - case 'n': goto yy66; - case 'O': - case 'o': goto yy67; - case 'P': goto yy68; - case 'R': - case 'r': goto yy69; - case 'S': goto yy70; - case 'T': goto yy71; - case 'U': goto yy72; - case 'W': - case 'w': goto yy73; - case 'Z': - 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 447 "src/parser.re" - { NEWTOKEN(-2); goto error; } -#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 446 "src/parser.re" - { NEWTOKEN(PSI_T_WHITESPACE); goto start; } -#line 424 "src/parser.c" -yy7: - ++cur; -#line 445 "src/parser.re" - { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; } -#line 429 "src/parser.c" -yy9: - yych = *++cur; - switch (yych) { - case '=': goto yy104; - default: goto yy10; - } -yy10: -#line 349 "src/parser.re" - { NEWTOKEN(PSI_T_NOT); goto start; } -#line 439 "src/parser.c" -yy11: - ++cur; -#line 322 "src/parser.re" - { escaped = false; tok += 1; goto string; } -#line 444 "src/parser.c" -yy13: - yych = *++cur; - switch (yych) { - case '#': goto yy106; - default: goto yy14; - } -yy14: -#line 332 "src/parser.re" - { NEWTOKEN(PSI_T_HASH); goto start; } -#line 454 "src/parser.c" -yy15: - yych = *++cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case '\\': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy3; - default: goto yy108; - } -yy16: - ++cur; -#line 350 "src/parser.re" - { NEWTOKEN(PSI_T_MODULO); goto start; } -#line 529 "src/parser.c" -yy18: - yych = *++cur; - switch (yych) { - 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 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_LPAREN); goto start; } -#line 549 "src/parser.c" -yy24: - ++cur; -#line 334 "src/parser.re" - { NEWTOKEN(PSI_T_RPAREN); goto start; } -#line 554 "src/parser.c" -yy26: - ++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 yy113; - case '0': goto yy38; - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy40; - default: goto yy29; - } -yy29: -#line 352 "src/parser.re" - { NEWTOKEN(PSI_T_PLUS); goto start; } -#line 580 "src/parser.c" -yy30: - ++cur; -#line 336 "src/parser.re" - { NEWTOKEN(PSI_T_COMMA); goto start; } -#line 585 "src/parser.c" -yy32: - yyaccept = 1; - yych = *(mrk = ++cur); - switch (yych) { - case '.': goto yy113; - case '0': goto yy38; - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy40; - default: goto yy33; - } -yy33: -#line 353 "src/parser.re" - { NEWTOKEN(PSI_T_MINUS); goto start; } -#line 606 "src/parser.c" -yy34: - yyaccept = 2; - yych = *(mrk = ++cur); - switch (yych) { - case '.': goto yy115; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy116; - default: goto yy35; - } -yy35: -#line 364 "src/parser.re" - { NEWTOKEN(PSI_T_PERIOD); goto start; } -#line 627 "src/parser.c" -yy36: - 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); - switch (yych) { - case '.': goto yy123; - case 'E': - case 'e': goto yy127; - case 'X': - case 'x': goto yy132; - default: goto yy126; - } -yy39: -#line 308 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; } -#line 653 "src/parser.c" -yy40: - yyaccept = 3; - mrk = ++cur; - if ((lim - cur) < 3) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '.': goto yy123; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy40; - case 'E': - case 'e': goto yy127; - case 'L': - case 'l': goto yy128; - case 'U': - case 'u': goto yy130; - default: goto yy39; - } -yy42: - ++cur; -#line 337 "src/parser.re" - { NEWTOKEN(PSI_T_COLON); goto start; } -#line 683 "src/parser.c" -yy44: - ++cur; -#line 335 "src/parser.re" - { NEWTOKEN(PSI_T_EOS); goto start; } -#line 688 "src/parser.c" -yy46: - yyaccept = 4; - yych = *(mrk = ++cur); - switch (yych) { - case '-': - case '.': - case '/': - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy133; - case '<': goto yy135; - case '=': goto yy137; - default: goto yy47; - } -yy47: -#line 362 "src/parser.re" - { NEWTOKEN(PSI_T_LCHEVR); goto start; } -#line 766 "src/parser.c" -yy48: - yych = *++cur; - switch (yych) { - case '=': goto yy139; - default: goto yy49; - } -yy49: -#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 366 "src/parser.re" - { NEWTOKEN(PSI_T_IIF); goto start; } -#line 792 "src/parser.c" -yy54: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy145; - default: goto yy62; - } -yy55: -#line 440 "src/parser.re" - { NEWTOKEN(PSI_T_NAME); goto start; } -#line 804 "src/parser.c" -yy56: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy147; - default: goto yy62; - } -yy57: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy148; - case 'O': - case 'o': goto yy149; - default: goto yy62; - } -yy58: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy150; - default: goto yy62; - } -yy59: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy151; - case 'N': - case 'n': goto yy152; - case 'R': - case 'r': goto yy153; - default: goto yy62; - } -yy60: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy154; - case 'L': - case 'l': goto yy155; - case 'R': - case 'r': goto yy156; - case 'U': - case 'u': goto yy157; - default: goto yy62; - } -yy61: - yyaccept = 5; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; -yy62: - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy55; - case '\\': goto yy146; - default: goto yy61; - } -yy63: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy158; - case 'N': - case 'n': goto yy160; - default: goto yy62; - } -yy64: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '"': - case '\'': goto yy161; - case 'E': - case 'e': goto yy163; - case 'I': - case 'i': goto yy164; - default: goto yy62; - } -yy65: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy165; - default: goto yy62; - } -yy66: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy166; - default: goto yy62; - } -yy67: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy167; - default: goto yy62; - } -yy68: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy168; - case 'O': - case 'o': goto yy169; - case 'R': - case 'r': goto yy170; - default: goto yy62; - } -yy69: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy171; - default: goto yy62; - } -yy70: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy172; - case 'T': - case 't': goto yy173; - default: goto yy62; - } -yy71: - 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; - default: goto yy62; - } -yy72: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '"': - case '\'': goto yy177; - case 'N': - case 'n': goto yy179; - default: goto yy62; - } -yy73: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy180; - default: goto yy62; - } -yy74: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy181; - default: goto yy62; - } -yy75: - ++cur; -#line 340 "src/parser.re" - { NEWTOKEN(PSI_T_LBRACKET); goto start; } -#line 1049 "src/parser.c" -yy77: - yych = *++cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case '\\': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy78; - default: goto yy182; - } -yy78: -#line 355 "src/parser.re" - { NEWTOKEN(PSI_T_BSLASH); goto start; } -#line 1133 "src/parser.c" -yy79: - ++cur; -#line 341 "src/parser.re" - { NEWTOKEN(PSI_T_RBRACKET); goto start; } -#line 1138 "src/parser.c" -yy81: - ++cur; -#line 357 "src/parser.re" - { NEWTOKEN(PSI_T_CARET); goto start; } -#line 1143 "src/parser.c" -yy83: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy185; - default: goto yy62; - } -yy84: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': goto yy147; - case 'o': goto yy186; - default: goto yy62; - } -yy85: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy148; - case 'O': goto yy149; - case 'h': goto yy187; - case 'o': goto yy188; - default: goto yy62; - } -yy86: - 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: - 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: - 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 'n': goto yy203; - default: goto yy62; - } -yy95: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'o': goto yy204; - default: goto yy62; - } -yy96: - ++cur; -#line 338 "src/parser.re" - { NEWTOKEN(PSI_T_LBRACE); goto start; } -#line 1285 "src/parser.c" -yy98: - yych = *++cur; - switch (yych) { - case '|': goto yy205; - default: goto yy99; - } -yy99: -#line 356 "src/parser.re" - { NEWTOKEN(PSI_T_PIPE); goto start; } -#line 1295 "src/parser.c" -yy100: - ++cur; -#line 339 "src/parser.re" - { NEWTOKEN(PSI_T_RBRACE); goto start; } -#line 1300 "src/parser.c" -yy102: - ++cur; -#line 348 "src/parser.re" - { NEWTOKEN(PSI_T_TILDE); goto start; } -#line 1305 "src/parser.c" -yy104: - ++cur; -#line 342 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_NE); goto start; } -#line 1310 "src/parser.c" -yy106: - ++cur; -#line 331 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_PASTE); goto start; } -#line 1315 "src/parser.c" -yy108: - ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case '\\': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy110; - default: goto yy108; - } -yy110: -#line 442 "src/parser.re" - { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; } -#line 1391 "src/parser.c" -yy111: - ++cur; -#line 344 "src/parser.re" - { NEWTOKEN(PSI_T_AND); goto start; } -#line 1396 "src/parser.c" -yy113: - yych = *++cur; - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy116; - default: goto yy114; - } -yy114: - cur = mrk; - switch (yyaccept) { - case 0: goto yy29; - case 1: goto yy33; - case 2: goto yy35; - case 3: goto yy39; - case 4: goto yy47; - case 5: goto yy55; - case 6: goto yy118; - case 7: goto yy129; - case 8: goto yy159; - case 9: goto yy184; - case 10: goto yy240; - case 11: goto yy242; - case 12: goto yy251; - case 13: goto yy271; - case 14: goto yy303; - case 15: goto yy305; - case 16: goto yy311; - case 17: goto yy319; - case 18: goto yy331; - case 19: goto yy339; - case 20: goto yy343; - case 21: goto yy350; - case 22: goto yy352; - case 23: goto yy356; - case 24: goto yy359; - case 25: goto yy361; - case 26: goto yy371; - case 27: goto yy374; - case 28: goto yy381; - case 29: goto yy384; - case 30: goto yy386; - case 31: goto yy388; - case 32: goto yy392; - case 33: goto yy397; - case 34: goto yy415; - case 35: goto yy423; - case 36: goto yy426; - case 37: goto yy429; - case 38: goto yy435; - case 39: goto yy439; - case 40: goto yy444; - case 41: goto yy446; - case 42: goto yy450; - case 43: goto yy453; - case 44: goto yy455; - case 45: goto yy457; - case 46: goto yy462; - case 47: goto yy464; - case 48: goto yy466; - case 49: goto yy468; - case 50: goto yy470; - case 51: goto yy475; - case 52: goto yy485; - case 53: goto yy487; - case 54: goto yy489; - case 55: goto yy491; - case 56: goto yy493; - case 57: goto yy498; - case 58: goto yy502; - case 59: goto yy506; - case 60: goto yy508; - case 61: goto yy513; - case 62: goto yy518; - case 63: goto yy520; - case 64: goto yy528; - case 65: goto yy532; - case 66: goto yy534; - case 67: goto yy536; - case 68: goto yy538; - case 69: goto yy543; - case 70: goto yy545; - case 71: goto yy551; - case 72: goto yy556; - case 73: goto yy558; - case 74: goto yy563; - case 75: goto yy565; - case 76: goto yy573; - case 77: goto yy577; - case 78: goto yy581; - case 79: goto yy585; - case 80: goto yy587; - default: goto yy592; - } -yy115: - yych = *++cur; - switch (yych) { - case '.': goto yy207; - default: goto yy114; - } -yy116: - yyaccept = 6; - mrk = ++cur; - if ((lim - cur) < 2) 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': goto yy116; - case 'D': - case 'd': goto yy209; - case 'F': - case 'f': goto yy210; - case 'L': - case 'l': goto yy212; - default: goto yy118; - } -yy118: -#line 314 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; } -#line 1531 "src/parser.c" -yy119: - ++cur; -#line 328 "src/parser.re" - { goto comment; } -#line 1536 "src/parser.c" -yy121: - ++cur; -#line 329 "src/parser.re" - { goto comment_sl; } -#line 1541 "src/parser.c" -yy123: - yyaccept = 6; - mrk = ++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': goto yy123; - case 'D': - case 'd': goto yy209; - case 'E': - case 'e': goto yy127; - case 'F': - case 'f': goto yy210; - case 'L': - case 'l': goto yy212; - default: goto yy118; - } -yy125: - ++cur; - if ((lim - cur) < 3) if (cur >= lim) goto done;; - yych = *cur; -yy126: - switch (yych) { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': goto yy125; - case 'L': - case 'l': goto yy128; - case 'U': - case 'u': goto yy130; - default: goto yy39; - } -yy127: - yych = *++cur; - switch (yych) { - case '+': - case '-': goto yy113; - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': goto yy116; - default: goto yy114; - } -yy128: - yyaccept = 7; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy214; - case 'U': - case 'u': goto yy215; - default: goto yy129; - } -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 1619 "src/parser.c" -yy130: - yych = *++cur; - switch (yych) { - case 'L': - case 'l': goto yy217; - default: goto yy131; - } -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 1631 "src/parser.c" -yy132: - 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 yy218; - default: goto yy114; - } -yy133: - ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '-': - case '.': - case '/': - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case 'A': - case 'B': - case 'C': - case 'D': - case 'E': - case 'F': - case 'G': - case 'H': - case 'I': - case 'J': - case 'K': - case 'L': - case 'M': - case 'N': - case 'O': - case 'P': - case 'Q': - case 'R': - case 'S': - case 'T': - case 'U': - case 'V': - case 'W': - case 'X': - case 'Y': - case 'Z': - case '_': - case 'a': - case 'b': - case 'c': - case 'd': - case 'e': - case 'f': - case 'g': - case 'h': - case 'i': - case 'j': - case 'k': - case 'l': - case 'm': - case 'n': - case 'o': - case 'p': - case 'q': - case 'r': - case 's': - case 't': - case 'u': - case 'v': - case 'w': - case 'x': - case 'y': - case 'z': goto yy133; - case '>': goto yy220; - default: goto yy114; - } -yy135: - ++cur; -#line 358 "src/parser.re" - { NEWTOKEN(PSI_T_LSHIFT); goto start; } -#line 1737 "src/parser.c" -yy137: - ++cur; -#line 360 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_LE); goto start; } -#line 1742 "src/parser.c" -yy139: - ++cur; -#line 343 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_EQ); goto start; } -#line 1747 "src/parser.c" -yy141: - ++cur; -#line 361 "src/parser.re" - { NEWTOKEN(PSI_T_CMP_GE); goto start; } -#line 1752 "src/parser.c" -yy143: - ++cur; -#line 359 "src/parser.re" - { NEWTOKEN(PSI_T_RSHIFT); goto start; } -#line 1757 "src/parser.c" -yy145: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy222; - default: goto yy62; - } -yy146: - ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case '\\': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy114; - default: goto yy182; - } -yy147: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy223; - default: goto yy62; - } -yy148: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy224; - default: goto yy62; - } -yy149: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy225; - default: goto yy62; - } -yy150: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy226; - default: goto yy62; - } -yy151: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy227; - case 'S': - case 's': goto yy228; - default: goto yy62; - } -yy152: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy229; - default: goto yy62; - } -yy153: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy230; - default: goto yy62; - } -yy154: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy231; - default: goto yy62; - } -yy155: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy232; - default: goto yy62; - } -yy156: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy233; - default: goto yy62; - } -yy157: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy234; - default: goto yy62; - } -yy158: - yyaccept = 8; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy159; - case 'D': - case 'd': goto yy235; - case 'N': - case 'n': goto yy236; - case '\\': goto yy146; - default: goto yy61; - } -yy159: -#line 391 "src/parser.re" - { NEWTOKEN(PSI_T_IF); goto start; } -#line 2016 "src/parser.c" -yy160: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy237; - case 'T': - case 't': goto yy238; - default: goto yy62; - } -yy161: - ++cur; - cur -= 1; -#line 326 "src/parser.re" - { char_width = SIZEOF_WCHAR_T/8; } -#line 2032 "src/parser.c" -yy163: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy239; - default: goto yy62; - } -yy164: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy241; - default: goto yy62; - } -yy165: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'X': - case 'x': goto yy243; - default: goto yy62; - } -yy166: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy244; - default: goto yy62; - } -yy167: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'J': - case 'j': goto yy245; - default: goto yy62; - } -yy168: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy246; - default: goto yy62; - } -yy169: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy247; - default: goto yy62; - } -yy170: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy248; - default: goto yy62; - } -yy171: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy249; - default: goto yy62; - } -yy172: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy250; - default: goto yy62; - } -yy173: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy252; - case 'R': - case 'r': goto yy253; - default: goto yy62; - } -yy174: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'M': - case 'm': goto yy254; - default: goto yy62; - } -yy175: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy255; - default: goto yy62; - } -yy176: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy256; - default: goto yy62; - } -yy177: - ++cur; - cur -= 1; -#line 325 "src/parser.re" - { char_width = 4; } -#line 2151 "src/parser.c" -yy179: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy257; - default: goto yy62; - } -yy180: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy258; - default: goto yy62; - } -yy181: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy259; - default: goto yy62; - } -yy182: - yyaccept = 9; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy184; - case '\\': goto yy146; - default: goto yy182; - } -yy184: -#line 441 "src/parser.re" - { NEWTOKEN(PSI_T_NSNAME); goto start; } -#line 2252 "src/parser.c" -yy185: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'a': goto yy260; - case 'e': goto yy261; - case 'i': goto yy262; - case 'r': goto yy263; - default: goto yy62; - } -yy186: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': goto yy223; - case 'o': goto yy264; - default: goto yy62; - } -yy187: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'a': goto yy265; - default: goto yy62; - } -yy188: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy225; - case 'n': goto yy266; - default: goto yy62; - } -yy189: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'u': goto yy267; - default: goto yy62; - } -yy190: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy229; - case 'u': goto yy268; - default: goto yy62; - } -yy191: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': goto yy232; - case 'o': goto yy269; - default: goto yy62; - } -yy192: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy237; - case 'T': goto yy238; - case 't': goto yy270; - default: goto yy62; - } -yy193: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy241; - case 'n': goto yy272; - default: goto yy62; - } -yy194: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy273; - default: goto yy62; - } -yy195: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy248; - case 'a': goto yy274; - default: goto yy62; - } -yy196: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'o': goto yy275; - default: goto yy62; - } -yy197: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'g': goto yy276; - case 'z': goto yy277; - default: goto yy62; - } -yy198: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy252; - case 'R': goto yy253; - case 'r': goto yy278; - default: goto yy62; - } -yy199: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'p': goto yy279; - default: goto yy62; - } -yy200: - ++cur; - cur -= 1; -#line 324 "src/parser.re" - { char_width = 2; } -#line 2383 "src/parser.c" -yy202: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '"': goto yy280; - default: goto yy62; - } -yy203: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy257; - case 'i': goto yy282; - case 's': goto yy283; - default: goto yy62; - } -yy204: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy284; - case 'l': goto yy285; - default: goto yy62; - } -yy205: - ++cur; -#line 345 "src/parser.re" - { NEWTOKEN(PSI_T_OR); goto start; } -#line 2413 "src/parser.c" -yy207: - ++cur; -#line 365 "src/parser.re" - { NEWTOKEN(PSI_T_ELLIPSIS); goto start; } -#line 2418 "src/parser.c" -yy209: - yych = *++cur; - switch (yych) { - case 'D': - case 'd': goto yy286; - case 'F': - case 'f': goto yy288; - case 'L': - case 'l': goto yy290; - default: goto yy114; - } -yy210: - ++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 2435 "src/parser.c" -yy212: - ++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 2441 "src/parser.c" -yy214: - yych = *++cur; - switch (yych) { - case 'U': - case 'u': goto yy292; - default: goto yy114; - } -yy215: - ++cur; -yy216: - cur -= 2; -#line 311 "src/parser.re" - { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; } -#line 2455 "src/parser.c" -yy217: - yych = *++cur; - switch (yych) { - case 'L': - case 'l': goto yy292; - default: goto yy216; - } -yy218: - yyaccept = 3; - mrk = ++cur; - if ((lim - cur) < 3) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '.': goto yy294; - 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 yy218; - case 'L': - case 'l': goto yy128; - case 'P': - case 'p': goto yy127; - case 'U': - case 'u': goto yy130; - default: goto yy39; - } -yy220: - ++cur; -#line 443 "src/parser.re" - { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; } -#line 2504 "src/parser.c" -yy222: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy296; - case 'V': - case 'v': goto yy297; - default: goto yy62; - } -yy223: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy298; - default: goto yy62; - } -yy224: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy299; - default: goto yy62; - } -yy225: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy300; - default: goto yy62; - } -yy226: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy301; - default: goto yy62; - } -yy227: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy302; - default: goto yy62; - } -yy228: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy304; - default: goto yy62; - } -yy229: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy306; - default: goto yy62; - } -yy230: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy307; - default: goto yy62; - } -yy231: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy308; - default: goto yy62; - } -yy232: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy309; - default: goto yy62; - } -yy233: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy310; - default: goto yy62; - } -yy234: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy312; - default: goto yy62; - } -yy235: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy313; - default: goto yy62; - } -yy236: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy314; - default: goto yy62; - } -yy237: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy315; - default: goto yy62; - } -yy238: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy316; - default: goto yy62; - } -yy239: - 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 yy240; - case '\\': goto yy146; - default: goto yy61; - } -yy240: -#line 416 "src/parser.re" - { NEWTOKEN(PSI_T_LET); goto start; } -#line 2717 "src/parser.c" -yy241: - 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 yy242; - case '\\': goto yy146; - default: goto yy61; - } -yy242: -#line 415 "src/parser.re" - { NEWTOKEN(PSI_T_LIB); goto start; } -#line 2792 "src/parser.c" -yy243: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy317; - default: goto yy62; - } -yy244: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy318; - default: goto yy62; - } -yy245: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy320; - case 'V': - case 'v': goto yy321; - default: goto yy62; - } -yy246: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'H': - case 'h': goto yy322; - default: goto yy62; - } -yy247: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy323; - default: goto yy62; - } -yy248: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy324; - default: goto yy62; - } -yy249: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy325; - default: goto yy62; - } -yy250: - 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 yy251; - case '\\': goto yy146; - default: goto yy61; - } -yy251: -#line 417 "src/parser.re" - { NEWTOKEN(PSI_T_SET); goto start; } -#line 2924 "src/parser.c" -yy252: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy326; - default: goto yy62; - } -yy253: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy327; - case 'L': - case 'l': goto yy328; - case 'V': - case 'v': goto yy329; - default: goto yy62; - } -yy254: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'P': - case 'p': goto yy330; - default: goto yy62; - } -yy255: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy332; - case 'B': - case 'b': goto yy333; - case 'F': - case 'f': goto yy334; - case 'I': - case 'i': goto yy335; - case 'O': - case 'o': goto yy336; - case 'S': - case 's': goto yy337; - default: goto yy62; - } -yy256: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy338; - 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 'N': - case 'n': goto yy341; - default: goto yy62; - } -yy259: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy342; - default: goto yy62; - } -yy260: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 's': goto yy344; - case 't': goto yy345; - default: goto yy62; - } -yy261: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'x': goto yy346; - default: goto yy62; - } -yy262: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy347; - default: goto yy62; - } -yy263: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy348; - default: goto yy62; - } -yy264: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': goto yy298; - case 'l': goto yy349; - default: goto yy62; - } -yy265: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'r': goto yy351; - default: goto yy62; - } -yy266: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 's': goto yy353; - default: goto yy62; - } -yy267: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'b': goto yy354; - default: goto yy62; - } -yy268: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'm': goto yy355; - default: goto yy62; - } -yy269: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': goto yy309; - case 'a': goto yy357; - default: goto yy62; - } -yy270: - 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 yy271; - case 'V': - case 'v': goto yy316; - case '\\': goto yy146; - default: goto yy61; - } -yy271: -#line 385 "src/parser.re" - { NEWTOKEN(PSI_T_INT); goto start; } -#line 3152 "src/parser.c" -yy272: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy358; - default: goto yy62; - } -yy273: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'g': goto yy360; - default: goto yy62; - } -yy274: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'g': goto yy362; - default: goto yy62; - } -yy275: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'r': goto yy363; - default: goto yy62; - } -yy276: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy364; - default: goto yy62; - } -yy277: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy365; - default: goto yy62; - } -yy278: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy327; - case 'L': - case 'l': goto yy328; - case 'V': - case 'v': goto yy329; - case 'u': goto yy366; - default: goto yy62; - } -yy279: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy367; - default: goto yy62; - } -yy280: - ++cur; - cur -= 1; -#line 323 "src/parser.re" - { char_width = 1; } -#line 3220 "src/parser.c" -yy282: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'o': goto yy368; - default: goto yy62; - } -yy283: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy369; - default: goto yy62; - } -yy284: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'd': goto yy370; - default: goto yy62; - } -yy285: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'a': goto yy372; - default: goto yy62; - } -yy286: - ++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 3254 "src/parser.c" -yy288: - ++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 3260 "src/parser.c" -yy290: - ++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 3266 "src/parser.c" -yy292: - ++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 3272 "src/parser.c" -yy294: - ++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 yy294; - case 'P': - case 'p': goto yy127; - default: goto yy114; - } -yy296: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'Y': - case 'y': goto yy373; - default: goto yy62; - } -yy297: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy375; - default: goto yy62; - } -yy298: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy376; - default: goto yy62; - } -yy299: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy377; - case 'B': - case 'b': goto yy378; - case 'O': - case 'o': goto yy379; - default: goto yy62; - } -yy300: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy380; - default: goto yy62; - } -yy301: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy382; - default: goto yy62; - } -yy302: - 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 yy303; - case '\\': goto yy146; - default: goto yy61; - } -yy303: -#line 395 "src/parser.re" - { NEWTOKEN(PSI_T_ELIF); goto start; } -#line 3430 "src/parser.c" -yy304: - 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 yy305; - case '\\': goto yy146; - default: goto yy61; - } -yy305: -#line 394 "src/parser.re" - { NEWTOKEN(PSI_T_ELSE); goto start; } -#line 3505 "src/parser.c" -yy306: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy383; - default: goto yy62; - } -yy307: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy385; - default: goto yy62; - } -yy308: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy387; - default: goto yy62; - } -yy309: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy389; - default: goto yy62; - } -yy310: - 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 yy311; - case '\\': goto yy146; - default: goto yy61; - } -yy311: -#line 421 "src/parser.re" - { NEWTOKEN(PSI_T_FREE); goto start; } -#line 3612 "src/parser.c" -yy312: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy390; - default: goto yy62; - } -yy313: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy391; - default: goto yy62; - } -yy314: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy393; - default: goto yy62; - } -yy315: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'U': - case 'u': goto yy394; - default: goto yy62; - } -yy316: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy395; - default: goto yy62; - } -yy317: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy396; - default: goto yy62; - } -yy318: - 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 yy319; - case '\\': goto yy146; - default: goto yy61; - } -yy319: -#line 406 "src/parser.re" - { NEWTOKEN(PSI_T_NULL); goto start; } -#line 3735 "src/parser.c" -yy320: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy398; - default: goto yy62; - } -yy321: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy399; - default: goto yy62; - } -yy322: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy400; - default: goto yy62; - } -yy323: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy401; - default: goto yy62; - } -yy324: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy402; - default: goto yy62; - } -yy325: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy403; - default: goto yy62; - } -yy326: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy404; - default: goto yy62; - } -yy327: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy405; - default: goto yy62; - } -yy328: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy406; - default: goto yy62; - } -yy329: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy407; - default: goto yy62; - } -yy330: - 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 yy331; - case '\\': goto yy146; - default: goto yy61; - } -yy331: -#line 422 "src/parser.re" - { NEWTOKEN(PSI_T_TEMP); goto start; } -#line 3889 "src/parser.c" -yy332: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy408; - default: goto yy62; - } -yy333: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy409; - default: goto yy62; - } -yy334: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy410; - default: goto yy62; - } -yy335: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy411; - default: goto yy62; - } -yy336: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy412; - default: goto yy62; - } -yy337: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy413; - default: goto yy62; - } -yy338: - 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 yy339; - case '\\': goto yy146; - default: goto yy61; - } -yy339: -#line 404 "src/parser.re" - { NEWTOKEN(PSI_T_TRUE); goto start; } -#line 4012 "src/parser.c" -yy340: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy414; - default: goto yy62; - } -yy341: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy416; - default: goto yy62; - } -yy342: - yyaccept = 20; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy343; - case '\\': goto yy146; - default: goto yy61; - } -yy343: -#line 431 "src/parser.re" - { NEWTOKEN(PSI_T_ZVAL); goto start; } -#line 4103 "src/parser.c" -yy344: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'm': goto yy417; - default: goto yy62; - } -yy345: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy418; - default: goto yy62; - } -yy346: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy419; - default: goto yy62; - } -yy347: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'l': goto yy420; - default: goto yy62; - } -yy348: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 's': goto yy421; - default: goto yy62; - } -yy349: - yyaccept = 21; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy350; - case 'V': - case 'v': goto yy376; - case '\\': goto yy146; - default: goto yy61; - } -yy350: -#line 382 "src/parser.re" - { NEWTOKEN(PSI_T_BOOL); goto start; } -#line 4215 "src/parser.c" -yy351: - yyaccept = 22; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy352; - case '\\': goto yy146; - default: goto yy61; - } -yy352: -#line 383 "src/parser.re" - { NEWTOKEN(PSI_T_CHAR); goto start; } -#line 4290 "src/parser.c" -yy353: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy422; - default: goto yy62; - } -yy354: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'l': goto yy424; - default: goto yy62; - } -yy355: - yyaccept = 23; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy356; - case '\\': goto yy146; - default: goto yy61; - } -yy356: -#line 379 "src/parser.re" - { NEWTOKEN(PSI_T_ENUM); goto start; } -#line 4379 "src/parser.c" -yy357: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': goto yy389; - case 't': goto yy425; - default: goto yy62; - } -yy358: - yyaccept = 24; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy359; - case '\\': goto yy146; - default: goto yy61; - } -yy359: -#line 375 "src/parser.re" - { NEWTOKEN(PSI_T_LINE); goto start; } -#line 4462 "src/parser.c" -yy360: - yyaccept = 25; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy361; - case '\\': goto yy146; - default: goto yy61; - } -yy361: -#line 386 "src/parser.re" - { NEWTOKEN(PSI_T_LONG); goto start; } -#line 4537 "src/parser.c" -yy362: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'm': goto yy427; - default: goto yy62; - } -yy363: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy428; - default: goto yy62; - } -yy364: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy430; - default: goto yy62; - } -yy365: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'o': goto yy431; - default: goto yy62; - } -yy366: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'c': goto yy432; - default: goto yy62; - } -yy367: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'd': goto yy433; - default: goto yy62; - } -yy368: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy434; - default: goto yy62; - } -yy369: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'g': goto yy436; - default: goto yy62; - } -yy370: - yyaccept = 26; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy371; - case '\\': goto yy146; - default: goto yy61; - } -yy371: -#line 381 "src/parser.re" - { NEWTOKEN(PSI_T_VOID); goto start; } -#line 4668 "src/parser.c" -yy372: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy437; - default: goto yy62; - } -yy373: - yyaccept = 27; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy374; - case '\\': goto yy146; - default: goto yy61; - } -yy374: -#line 410 "src/parser.re" - { NEWTOKEN(PSI_T_ARRAY); goto start; } -#line 4750 "src/parser.c" -yy375: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy438; - default: goto yy62; - } -yy376: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy440; - default: goto yy62; - } -yy377: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'B': - case 'b': goto yy441; - default: goto yy62; - } -yy378: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy442; - default: goto yy62; - } -yy379: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy443; - default: goto yy62; - } -yy380: - yyaccept = 28; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy381; - case '\\': goto yy146; - default: goto yy61; - } -yy381: -#line 432 "src/parser.re" - { NEWTOKEN(PSI_T_COUNT); goto start; } -#line 4865 "src/parser.c" -yy382: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy445; - default: goto yy62; - } -yy383: - yyaccept = 29; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy384; - case '\\': goto yy146; - default: goto yy61; - } -yy384: -#line 396 "src/parser.re" - { NEWTOKEN(PSI_T_ENDIF); goto start; } -#line 4948 "src/parser.c" -yy385: - yyaccept = 30; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy386; - case '\\': goto yy146; - default: goto yy61; - } -yy386: -#line 401 "src/parser.re" - { NEWTOKEN(PSI_T_ERROR); goto start; } -#line 5023 "src/parser.c" -yy387: - yyaccept = 31; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy388; - case '\\': goto yy146; - default: goto yy61; - } -yy388: -#line 405 "src/parser.re" - { NEWTOKEN(PSI_T_FALSE); goto start; } -#line 5098 "src/parser.c" -yy389: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'V': - case 'v': goto yy447; - default: goto yy62; - } -yy390: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy448; - default: goto yy62; - } -yy391: - yyaccept = 32; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy392; - case '\\': goto yy146; - default: goto yy61; - } -yy392: -#line 392 "src/parser.re" - { NEWTOKEN(PSI_T_IFDEF); goto start; } -#line 5189 "src/parser.c" -yy393: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'F': - case 'f': goto yy449; - default: goto yy62; - } -yy394: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'D': - case 'd': goto yy451; - default: goto yy62; - } -yy395: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy452; - default: goto yy62; - } -yy396: - yyaccept = 33; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy397; - case '\\': goto yy146; - default: goto yy61; - } -yy397: -#line 407 "src/parser.re" - { NEWTOKEN(PSI_T_MIXED); goto start; } -#line 5288 "src/parser.c" -yy398: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy454; - default: goto yy62; - } -yy399: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy456; - default: goto yy62; - } -yy400: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy458; - default: goto yy62; - } -yy401: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy459; - default: goto yy62; - } -yy402: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy460; - default: goto yy62; - } -yy403: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy461; - default: goto yy62; - } -yy404: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy463; - default: goto yy62; - } -yy405: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy465; - default: goto yy62; - } -yy406: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy467; - default: goto yy62; - } -yy407: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy469; - default: goto yy62; - } -yy408: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy471; - default: goto yy62; - } -yy409: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy472; - default: goto yy62; - } -yy410: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy473; - default: goto yy62; - } -yy411: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy474; - default: goto yy62; - } -yy412: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'J': - case 'j': goto yy476; - default: goto yy62; - } -yy413: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy477; - default: goto yy62; - } -yy414: - yyaccept = 34; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy415; - case '\\': goto yy146; - default: goto yy61; - } -yy415: -#line 399 "src/parser.re" - { NEWTOKEN(PSI_T_UNDEF); goto start; } -#line 5491 "src/parser.c" -yy416: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy478; - default: goto yy62; - } -yy417: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy479; - default: goto yy62; - } -yy418: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'r': goto yy480; - default: goto yy62; - } -yy419: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy481; - default: goto yy62; - } -yy420: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy482; - default: goto yy62; - } -yy421: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy483; - default: goto yy62; - } -yy422: - yyaccept = 35; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy423; - case '\\': goto yy146; - default: goto yy61; - } -yy423: -#line 380 "src/parser.re" - { NEWTOKEN(PSI_T_CONST); goto start; } -#line 5609 "src/parser.c" -yy424: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy484; - default: goto yy62; - } -yy425: - yyaccept = 36; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy426; - case 'V': - case 'v': goto yy447; - case '\\': goto yy146; - default: goto yy61; - } -yy426: -#line 387 "src/parser.re" - { NEWTOKEN(PSI_T_FLOAT); goto start; } -#line 5693 "src/parser.c" -yy427: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'a': goto yy486; - default: goto yy62; - } -yy428: - yyaccept = 37; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy429; - case '\\': goto yy146; - default: goto yy61; - } -yy429: -#line 384 "src/parser.re" - { NEWTOKEN(PSI_T_SHORT); goto start; } -#line 5775 "src/parser.c" -yy430: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'd': goto yy488; - default: goto yy62; - } -yy431: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'f': goto yy490; - default: goto yy62; - } -yy432: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy492; - default: goto yy62; - } -yy433: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy494; - default: goto yy62; - } -yy434: - yyaccept = 38; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy435; - case '\\': goto yy146; - default: goto yy61; - } -yy435: -#line 378 "src/parser.re" - { NEWTOKEN(PSI_T_UNION); goto start; } -#line 5878 "src/parser.c" -yy436: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy495; - default: goto yy62; - } -yy437: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy496; - default: goto yy62; - } -yy438: - yyaccept = 39; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy439; - case '\\': goto yy146; - default: goto yy61; - } -yy439: -#line 429 "src/parser.re" - { NEWTOKEN(PSI_T_ARRVAL); goto start; } -#line 5967 "src/parser.c" -yy440: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy497; - default: goto yy62; - } -yy441: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy499; - default: goto yy62; - } -yy442: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy500; - default: goto yy62; - } -yy443: - yyaccept = 40; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy444; - case '\\': goto yy146; - default: goto yy61; - } -yy444: -#line 433 "src/parser.re" - { NEWTOKEN(PSI_T_CALLOC); goto start; } -#line 6066 "src/parser.c" -yy445: - yyaccept = 41; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy446; - case 'D': - case 'd': goto yy501; - case '\\': goto yy146; - default: goto yy61; - } -yy446: -#line 397 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINE); goto start; } -#line 6143 "src/parser.c" -yy447: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy503; - default: goto yy62; - } -yy448: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'O': - case 'o': goto yy504; - default: goto yy62; - } -yy449: - yyaccept = 42; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy450; - case '\\': goto yy146; - default: goto yy61; - } -yy450: -#line 393 "src/parser.re" - { NEWTOKEN(PSI_T_IFNDEF); goto start; } -#line 6234 "src/parser.c" -yy451: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy505; - default: goto yy62; - } -yy452: - yyaccept = 43; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy453; - case '\\': goto yy146; - default: goto yy61; - } -yy453: -#line 426 "src/parser.re" - { NEWTOKEN(PSI_T_INTVAL); goto start; } -#line 6317 "src/parser.c" -yy454: - yyaccept = 44; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy455; - case '\\': goto yy146; - default: goto yy61; - } -yy455: -#line 411 "src/parser.re" - { NEWTOKEN(PSI_T_OBJECT); goto start; } -#line 6392 "src/parser.c" -yy456: - yyaccept = 45; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy457; - case '\\': goto yy146; - default: goto yy61; - } -yy457: -#line 430 "src/parser.re" - { NEWTOKEN(PSI_T_OBJVAL); goto start; } -#line 6467 "src/parser.c" -yy458: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy507; - default: goto yy62; - } -yy459: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy509; - default: goto yy62; - } -yy460: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy510; - default: goto yy62; - } -yy461: - yyaccept = 46; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy462; - case '\\': goto yy146; - default: goto yy61; - } -yy462: -#line 420 "src/parser.re" - { NEWTOKEN(PSI_T_RETURN); goto start; } -#line 6566 "src/parser.c" -yy463: - yyaccept = 47; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy464; - case '\\': goto yy146; - default: goto yy61; - } -yy464: -#line 413 "src/parser.re" - { NEWTOKEN(PSI_T_STATIC); goto start; } -#line 6641 "src/parser.c" -yy465: - yyaccept = 48; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy466; - case '\\': goto yy146; - default: goto yy61; - } -yy466: -#line 409 "src/parser.re" - { NEWTOKEN(PSI_T_STRING); goto start; } -#line 6716 "src/parser.c" -yy467: - yyaccept = 49; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy468; - case '\\': goto yy146; - default: goto yy61; - } -yy468: -#line 423 "src/parser.re" - { NEWTOKEN(PSI_T_STRLEN); goto start; } -#line 6791 "src/parser.c" -yy469: - yyaccept = 50; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy470; - case '\\': goto yy146; - default: goto yy61; - } -yy470: -#line 424 "src/parser.re" - { NEWTOKEN(PSI_T_STRVAL); goto start; } -#line 6866 "src/parser.c" -yy471: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy511; - default: goto yy62; - } -yy472: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy512; - default: goto yy62; - } -yy473: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'A': - case 'a': goto yy514; - default: goto yy62; - } -yy474: - yyaccept = 51; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy475; - case '\\': goto yy146; - default: goto yy61; - } -yy475: -#line 437 "src/parser.re" - { NEWTOKEN(PSI_T_TO_INT); goto start; } -#line 6965 "src/parser.c" -yy476: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy515; - default: goto yy62; - } -yy477: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'I': - case 'i': goto yy516; - default: goto yy62; - } -yy478: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy517; - default: goto yy62; - } -yy479: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy519; - default: goto yy62; - } -yy480: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy521; - default: goto yy62; - } -yy481: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy522; - default: goto yy62; - } -yy482: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy523; - default: goto yy62; - } -yy483: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'r': goto yy524; - default: goto yy62; - } -yy484: - yyaccept = 52; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy485; - case '\\': goto yy146; - default: goto yy61; - } -yy485: -#line 388 "src/parser.re" - { NEWTOKEN(PSI_T_DOUBLE); goto start; } -#line 7099 "src/parser.c" -yy486: - yyaccept = 53; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy487; - case '\\': goto yy146; - default: goto yy525; - } -yy487: -#line 367 "src/parser.re" - { NEWTOKEN(PSI_T_PRAGMA); goto start; } -#line 7174 "src/parser.c" -yy488: - yyaccept = 54; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy489; - case '\\': goto yy146; - default: goto yy61; - } -yy489: -#line 390 "src/parser.re" - { NEWTOKEN(PSI_T_SIGNED); goto start; } -#line 7249 "src/parser.c" -yy490: - yyaccept = 55; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy491; - case '\\': goto yy146; - default: goto yy61; - } -yy491: -#line 374 "src/parser.re" - { NEWTOKEN(PSI_T_SIZEOF); goto start; } -#line 7324 "src/parser.c" -yy492: - yyaccept = 56; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy493; - case '\\': goto yy146; - default: goto yy61; - } -yy493: -#line 377 "src/parser.re" - { NEWTOKEN(PSI_T_STRUCT); goto start; } -#line 7399 "src/parser.c" -yy494: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'f': goto yy527; - default: goto yy62; - } -yy495: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy529; - default: goto yy62; - } -yy496: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'l': goto yy530; - default: goto yy62; - } -yy497: - yyaccept = 57; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy498; - case '\\': goto yy146; - default: goto yy61; - } -yy498: -#line 428 "src/parser.re" - { NEWTOKEN(PSI_T_BOOLVAL); goto start; } -#line 7495 "src/parser.c" -yy499: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy531; - default: goto yy62; - } -yy500: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'K': - case 'k': goto yy533; - default: goto yy62; - } -yy501: - yyaccept = 58; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy502; - case '\\': goto yy146; - default: goto yy61; - } -yy502: -#line 398 "src/parser.re" - { NEWTOKEN(PSI_T_DEFINED); goto start; } -#line 7586 "src/parser.c" -yy503: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'L': - case 'l': goto yy535; - default: goto yy62; - } -yy504: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy537; - default: goto yy62; - } -yy505: - yyaccept = 59; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy506; - case '\\': goto yy146; - case '_': goto yy539; - default: goto yy61; - } -yy506: -#line 402 "src/parser.re" - { NEWTOKEN(PSI_T_INCLUDE); goto start; } -#line 7678 "src/parser.c" -yy507: - yyaccept = 60; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy508; - case '\\': goto yy146; - default: goto yy61; - } -yy508: -#line 425 "src/parser.re" - { NEWTOKEN(PSI_T_PATHVAL); goto start; } -#line 7753 "src/parser.c" -yy509: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'S': - case 's': goto yy540; - default: goto yy62; - } -yy510: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy541; - default: goto yy62; - } -yy511: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'Y': - case 'y': goto yy542; - default: goto yy62; - } -yy512: - yyaccept = 61; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy513; - case '\\': goto yy146; - default: goto yy61; - } -yy513: -#line 439 "src/parser.re" - { NEWTOKEN(PSI_T_TO_BOOL); goto start; } -#line 7852 "src/parser.c" -yy514: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy544; - default: goto yy62; - } -yy515: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'C': - case 'c': goto yy546; - default: goto yy62; - } -yy516: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy547; - default: goto yy62; - } -yy517: - yyaccept = 62; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy518; - case '\\': goto yy146; - default: goto yy61; - } -yy518: -#line 400 "src/parser.re" - { NEWTOKEN(PSI_T_WARNING); goto start; } -#line 7951 "src/parser.c" -yy519: - yyaccept = 63; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy520; - case '\\': goto yy146; - default: goto yy61; - } -yy520: -#line 372 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_ASM); goto start; } -#line 8026 "src/parser.c" -yy521: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'b': goto yy548; - default: goto yy62; - } -yy522: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 's': goto yy549; - default: goto yy62; - } -yy523: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy550; - default: goto yy62; - } -yy524: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy552; - default: goto yy62; - } -yy525: - yyaccept = 5; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy55; - case '\\': goto yy146; - case 'o': goto yy553; - default: goto yy525; - } -yy527: - yyaccept = 64; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy528; - case '\\': goto yy146; - default: goto yy61; - } -yy528: -#line 376 "src/parser.re" - { NEWTOKEN(PSI_T_TYPEDEF); goto start; } -#line 8203 "src/parser.c" -yy529: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'd': goto yy555; - default: goto yy62; - } -yy530: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy557; - default: goto yy62; - } -yy531: - yyaccept = 65; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy532; - case '\\': goto yy146; - default: goto yy61; - } -yy532: -#line 408 "src/parser.re" - { NEWTOKEN(PSI_T_CALLABLE); goto start; } -#line 8292 "src/parser.c" -yy533: - yyaccept = 66; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy534; - case '\\': goto yy146; - default: goto yy61; - } -yy534: -#line 412 "src/parser.re" - { NEWTOKEN(PSI_T_CALLBACK); goto start; } -#line 8367 "src/parser.c" -yy535: - yyaccept = 67; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy536; - case '\\': goto yy146; - default: goto yy61; - } -yy536: -#line 427 "src/parser.re" - { NEWTOKEN(PSI_T_FLOATVAL); goto start; } -#line 8442 "src/parser.c" -yy537: - yyaccept = 68; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy538; - case '\\': goto yy146; - default: goto yy61; - } -yy538: -#line 414 "src/parser.re" - { NEWTOKEN(PSI_T_FUNCTION); goto start; } -#line 8517 "src/parser.c" -yy539: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'N': - case 'n': goto yy559; - default: goto yy62; - } -yy540: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy560; - default: goto yy62; - } -yy541: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy561; - default: goto yy62; - } -yy542: - yyaccept = 69; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy543; - case '\\': goto yy146; - default: goto yy61; - } -yy543: -#line 435 "src/parser.re" - { NEWTOKEN(PSI_T_TO_ARRAY); goto start; } -#line 8616 "src/parser.c" -yy544: - yyaccept = 70; - 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 yy545; - case '\\': goto yy146; - default: goto yy61; - } -yy545: -#line 438 "src/parser.re" - { NEWTOKEN(PSI_T_TO_FLOAT); goto start; } -#line 8691 "src/parser.c" -yy546: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy562; - default: goto yy62; - } -yy547: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'G': - case 'g': goto yy564; - default: goto yy62; - } -yy548: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'u': goto yy566; - default: goto yy62; - } -yy549: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'i': goto yy567; - default: goto yy62; - } -yy550: - yyaccept = 71; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy551; - case '\\': goto yy146; - default: goto yy61; - } -yy551: -#line 369 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_INLINE); goto start; } -#line 8796 "src/parser.c" -yy552: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'c': goto yy568; - default: goto yy62; - } -yy553: - yyaccept = 5; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy55; - case '\\': goto yy146; - case 'n': goto yy569; - case 'o': goto yy553; - default: goto yy525; - } -yy555: - yyaccept = 72; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy556; - case '\\': goto yy146; - default: goto yy61; - } -yy556: -#line 389 "src/parser.re" - { NEWTOKEN(PSI_T_UNSIGNED); goto start; } -#line 8953 "src/parser.c" -yy557: - yyaccept = 73; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy558; - case '\\': goto yy146; - default: goto yy61; - } -yy558: -#line 373 "src/parser.re" - { NEWTOKEN(PSI_T_VOLATILE); goto start; } -#line 9028 "src/parser.c" -yy559: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'E': - case 'e': goto yy570; - default: goto yy62; - } -yy560: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'R': - case 'r': goto yy571; - default: goto yy62; - } -yy561: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy572; - default: goto yy62; - } -yy562: - yyaccept = 74; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy563; - case '\\': goto yy146; - default: goto yy61; - } -yy563: -#line 434 "src/parser.re" - { NEWTOKEN(PSI_T_TO_OBJECT); goto start; } -#line 9127 "src/parser.c" -yy564: - yyaccept = 75; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy565; - case '\\': goto yy146; - default: goto yy61; - } -yy565: -#line 436 "src/parser.re" - { NEWTOKEN(PSI_T_TO_STRING); goto start; } -#line 9202 "src/parser.c" -yy566: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy574; - default: goto yy62; - } -yy567: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'o': goto yy575; - default: goto yy62; - } -yy568: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 't': goto yy576; - default: goto yy62; - } -yy569: - yyaccept = 5; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy55; - case '\\': goto yy146; - case 'c': goto yy578; - case 'o': goto yy553; - default: goto yy525; - } -yy570: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'X': - case 'x': goto yy579; - default: goto yy62; - } -yy571: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy580; - default: goto yy62; - } -yy572: - yyaccept = 76; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy573; - case '\\': goto yy146; - default: goto yy61; - } -yy573: -#line 418 "src/parser.re" - { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; } -#line 9389 "src/parser.c" -yy574: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'e': goto yy582; - default: goto yy62; - } -yy575: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'n': goto yy583; - default: goto yy62; - } -yy576: - yyaccept = 77; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy577; - case '\\': goto yy146; - default: goto yy61; - } -yy577: -#line 370 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; } -#line 9478 "src/parser.c" -yy578: - yyaccept = 5; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy55; - case '\\': goto yy146; - case 'e': goto yy584; - case 'o': goto yy553; - default: goto yy525; - } -yy579: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case 'T': - case 't': goto yy586; - default: goto yy62; - } -yy580: - yyaccept = 78; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy581; - case '\\': goto yy146; - default: goto yy61; - } -yy581: -#line 419 "src/parser.re" - { NEWTOKEN(PSI_T_POST_ASSERT); goto start; } -#line 9636 "src/parser.c" -yy582: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy588; - default: goto yy62; - } -yy583: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy589; - default: goto yy62; - } -yy584: - yyaccept = 79; - mrk = ++cur; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy585; - case '\\': goto yy146; - case 'o': goto yy553; - default: goto yy525; - } -yy585: -#line 368 "src/parser.re" - { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; } -#line 9728 "src/parser.c" -yy586: - yyaccept = 80; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy587; - case '\\': goto yy146; - default: goto yy61; - } -yy587: -#line 403 "src/parser.re" - { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; } -#line 9803 "src/parser.c" -yy588: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy590; - default: goto yy62; - } -yy589: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '_': goto yy591; - default: goto yy62; - } -yy590: - yyaccept = 5; - yych = *(mrk = ++cur); - switch (yych) { - case '\t': - case '\f': - case ' ': goto yy593; - case '(': goto yy595; - default: goto yy62; - } -yy591: - yyaccept = 81; - yych = *(mrk = ++cur); - switch (yych) { - case 0x00: - case 0x01: - case 0x02: - case 0x03: - case 0x04: - case 0x05: - case 0x06: - case 0x07: - case 0x08: - case '\t': - case '\n': - case '\v': - case '\f': - case '\r': - case 0x0E: - case 0x0F: - case 0x10: - case 0x11: - case 0x12: - case 0x13: - case 0x14: - case 0x15: - case 0x16: - case 0x17: - case 0x18: - case 0x19: - case 0x1A: - case 0x1B: - case 0x1C: - case 0x1D: - case 0x1E: - case 0x1F: - case ' ': - case '!': - case '"': - case '#': - case '$': - case '%': - case '&': - case '\'': - case '(': - case ')': - case '*': - case '+': - case ',': - case '-': - case '.': - case '/': - case ':': - case ';': - case '<': - case '=': - case '>': - case '?': - case '@': - case '[': - case ']': - case '^': - case '`': - case '{': - case '|': - case '}': - case '~': - case 0x7F: goto yy592; - case '\\': goto yy146; - default: goto yy61; - } -yy592: -#line 371 "src/parser.re" - { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; } -#line 9902 "src/parser.c" -yy593: - ++cur; - if ((lim - cur) < 2) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\t': - case '\f': - case ' ': goto yy593; - case '(': goto yy595; - default: goto yy114; - } -yy595: - yych = *++cur; - switch (yych) { - case '(': goto yy596; - default: goto yy114; - } -yy596: - ++cur; -#line 444 "src/parser.re" - { parens = 2; goto cpp_attribute; } -#line 9924 "src/parser.c" - } -#line 450 "src/parser.re" - - - character: ; - -#line 9931 "src/parser.c" - { - unsigned char yych; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\n': - case '\r': goto yy602; - case '\'': goto yy604; - case '\\': goto yy606; - default: goto yy600; - } -yy600: - ++cur; -#line 468 "src/parser.re" - { escaped = false; goto character; } -#line 9947 "src/parser.c" -yy602: - ++cur; -#line 455 "src/parser.re" - { NEWLINE(); goto character; } -#line 9952 "src/parser.c" -yy604: - ++cur; -#line 457 "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 9967 "src/parser.c" -yy606: - ++cur; -#line 456 "src/parser.re" - { escaped = !escaped; goto character; } -#line 9972 "src/parser.c" - } -#line 470 "src/parser.re" - - - string: ; - -#line 9979 "src/parser.c" - { - unsigned char yych; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\n': - case '\r': goto yy612; - case '"': goto yy614; - case '\\': goto yy616; - default: goto yy610; - } -yy610: - ++cur; -#line 488 "src/parser.re" - { escaped = false; goto string; } -#line 9995 "src/parser.c" -yy612: - ++cur; -#line 475 "src/parser.re" - { NEWLINE(); goto string; } -#line 10000 "src/parser.c" -yy614: - ++cur; -#line 477 "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 10015 "src/parser.c" -yy616: - ++cur; -#line 476 "src/parser.re" - { escaped = !escaped; goto string; } -#line 10020 "src/parser.c" - } -#line 490 "src/parser.re" - - - comment: ; - -#line 10027 "src/parser.c" - { - unsigned char yych; - if ((lim - cur) < 2) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\n': - case '\r': goto yy622; - case '*': goto yy624; - default: goto yy620; - } -yy620: - ++cur; -yy621: -#line 497 "src/parser.re" - { goto comment; } -#line 10043 "src/parser.c" -yy622: - ++cur; -#line 495 "src/parser.re" - { NEWLINE(); goto comment; } -#line 10048 "src/parser.c" -yy624: - yych = *++cur; - switch (yych) { - case '/': goto yy625; - default: goto yy621; - } -yy625: - ++cur; -#line 496 "src/parser.re" - { NEWTOKEN(PSI_T_COMMENT); goto start; } -#line 10059 "src/parser.c" - } -#line 499 "src/parser.re" - - - comment_sl: ; - -#line 10066 "src/parser.c" - { - unsigned char yych; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\n': - case '\r': goto yy631; - default: goto yy629; - } -yy629: - ++cur; -#line 505 "src/parser.re" - { goto comment_sl; } -#line 10080 "src/parser.c" -yy631: - ++cur; -#line 504 "src/parser.re" - { NEWTOKEN(PSI_T_COMMENT); NEWLINE(); goto start; } -#line 10085 "src/parser.c" - } -#line 507 "src/parser.re" - - - cpp_attribute: ; - - -#line 10093 "src/parser.c" - { - unsigned char yych; - if (lim <= cur) if (cur >= lim) goto done;; - yych = *cur; - switch (yych) { - case '\n': - case '\r': goto yy637; - case '(': goto yy639; - case ')': goto yy641; - default: goto yy635; - } -yy635: - ++cur; -#line 516 "src/parser.re" - { goto cpp_attribute; } -#line 10109 "src/parser.c" -yy637: - ++cur; -#line 515 "src/parser.re" - { NEWLINE(); goto cpp_attribute; } -#line 10114 "src/parser.c" -yy639: - ++cur; -#line 513 "src/parser.re" - { ++parens; goto cpp_attribute; } -#line 10119 "src/parser.c" -yy641: - ++cur; -#line 514 "src/parser.re" - { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } } -#line 10124 "src/parser.c" - } -#line 518 "src/parser.re" - -error: ; - - P->error(PSI_DATA(P), token, PSI_WARNING, "PSI syntax error: unexpected input (%d) '%.*s' at col %tu", - token->type, token->size, token->text, tok - eol + 1); - psi_plist_free(tokens); - return NULL; - -done: - - PSI_DEBUG_PRINT(P, "PSI: EOF cur=%p lim=%p\n", cur, lim); - - return tokens; -}