-/* Generated by re2c 0.16 on Tue Mar 28 16:36:22 2017 */
+/* Generated by re2c 1.0.3 on Mon Apr 16 13:22:16 2018 */
#line 1 "src/parser.re"
/*******************************************************************************
Copyright (c) 2016, Michael Wallner <mike@php.net>.
#include "php_psi_stdinc.h"
#include <sys/mman.h>
#include <assert.h>
+#include <errno.h>
#include <stdarg.h>
#include "parser.h"
-#define YYMAXFILL 13
+#define YYMAXFILL 15
+
#ifndef YYMAXFILL
# define YYMAXFILL 256
#endif
}
#endif
-struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist *tokens)
+struct psi_plist *psi_parser_preprocess(struct psi_parser *P, struct psi_plist **tokens)
{
- if (psi_cpp_process(P->preproc, &tokens)) {
- return tokens;
+ if (psi_cpp_process(P->preproc, tokens)) {
+ return *tokens;
}
return NULL;
}
return true;
}
+void psi_parser_postprocess(struct psi_parser *P)
+{
+ unsigned flags;
+ zend_string *name;
+ struct psi_validate_scope scope = {0};
+
+ psi_validate_scope_ctor(&scope);
+ scope.defs = &P->preproc->defs;
+
+ flags = P->flags;
+ P->flags |= PSI_SILENT;
+
+ /* register const macros */
+ ZEND_HASH_FOREACH_STR_KEY_PTR(&P->preproc->defs, name, scope.macro)
+ {
+ if (scope.macro->sig) {
+ } else if (scope.macro->exp) {
+ if (psi_num_exp_validate(PSI_DATA(P), scope.macro->exp, &scope)) {
+ struct psi_impl_type *type;
+ struct psi_impl_def_val *def;
+ struct psi_const *cnst;
+ struct psi_num_exp *num;
+ char *name_str = malloc(name->len + sizeof("psi\\"));
+
+ strcat(strcpy(name_str, "psi\\"), name->val);
+ num = psi_num_exp_copy(scope.macro->exp);
+ def = psi_impl_def_val_init(PSI_T_NUMBER, num);
+ type = psi_impl_type_init(PSI_T_NUMBER, "<eval number>");
+ cnst = psi_const_init(type, name_str, def);
+ P->consts = psi_plist_add(P->consts, &cnst);
+ free(name_str);
+ }
+ } else {
+ if (psi_plist_count(scope.macro->tokens) == 1) {
+ struct psi_token *t;
+
+ if (psi_plist_get(scope.macro->tokens, 0, &t)) {
+ if (t->type == PSI_T_QUOTED_STRING) {
+ struct psi_impl_type *type;
+ struct psi_impl_def_val *def;
+ struct psi_const *cnst;
+ char *name_str = malloc(name->len + sizeof("psi\\"));
+
+ strcat(strcpy(name_str, "psi\\"), name->val);
+ type = psi_impl_type_init(PSI_T_STRING, "string");
+ def = psi_impl_def_val_init(PSI_T_QUOTED_STRING, t->text);
+ cnst = psi_const_init(type, name_str, def);
+ P->consts = psi_plist_add(P->consts, &cnst);
+ free(name_str);
+ }
+ }
+ }
+ }
+ }
+ 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)
{
struct psi_plist *scanned, *preproc;
return false;
}
- if (!(preproc = psi_parser_preprocess(P, scanned))) {
+ if (!(preproc = psi_parser_preprocess(P, &scanned))) {
psi_plist_free(scanned);
return false;
}
return false;
}
+ psi_parser_postprocess(P);
+
psi_plist_free(preproc);
return true;
}
}
union int_suffix {
- char s[SIZEOF_UINT32_T];
+ char s[4];
uint32_t i;
};
struct psi_token *token;
const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
unsigned parens;
+ bool escaped;
+ token_t char_width;
+
+ PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file);
tok = mrk = eol = cur = I->buffer;
lim = I->buffer + I->length;
I->lines = 1;
- tokens = psi_plist_init((void (*)(void *)) psi_token_free);
+ tokens = psi_plist_init((psi_plist_dtor) psi_token_free);
start: ;
+ char_width = 1;
ctxmrk = NULL;
tok = cur;
+ (void) ctxmrk;
+
-#line 277 "src/parser.c"
+#line 349 "src/parser.c"
{
unsigned char yych;
unsigned int yyaccept = 0;
- if ((lim - cur) < 13) if (cur >= lim) goto done;;
+ if ((lim - cur) < 15) if (cur >= lim) goto done;;
yych = *cur;
switch (yych) {
case 0x00:
case 0x07:
case 0x08:
case '\v':
- case '\f':
case 0x0E:
case 0x0F:
case 0x10:
case '`':
case 0x7F: goto yy2;
case '\t':
+ case '\f':
case ' ': goto yy4;
case '\n':
case '\r': goto yy7;
case '!': goto yy9;
case '"': goto yy11;
- case '#': goto yy12;
- case '$': goto yy14;
- case '%': goto yy15;
- case '&': goto yy17;
- case '\'': goto yy19;
- case '(': goto yy20;
- case ')': goto yy22;
- case '*': goto yy24;
- case '+': goto yy26;
- case ',': goto yy28;
- case '-': goto yy30;
- case '.': goto yy32;
- case '/': goto yy34;
- case '0': goto yy36;
+ case '#': goto yy13;
+ case '$': goto yy15;
+ case '%': goto yy16;
+ case '&': goto yy18;
+ case '\'': goto yy20;
+ case '(': goto yy22;
+ case ')': goto yy24;
+ case '*': goto yy26;
+ case '+': goto yy28;
+ case ',': goto yy30;
+ case '-': goto yy32;
+ case '.': goto yy34;
+ case '/': goto yy36;
+ case '0': goto yy38;
case '1':
case '2':
case '3':
case '6':
case '7':
case '8':
- case '9': goto yy38;
- case ':': goto yy40;
- case ';': goto yy42;
- case '<': goto yy44;
- case '=': goto yy46;
- case '>': goto yy48;
- case '?': goto yy50;
+ case '9': goto yy40;
+ case ':': goto yy42;
+ case ';': goto yy44;
+ case '<': goto yy46;
+ case '=': goto yy48;
+ case '>': goto yy50;
+ case '?': goto yy52;
case 'A':
- case 'a': goto yy52;
- case 'B':
- case 'b': goto yy54;
- case 'C':
- case 'c': goto yy55;
- case 'D':
- case 'd': goto yy56;
- case 'E':
- case 'e': goto yy57;
- case 'F':
- case 'f': goto yy58;
- case 'I':
- case 'i': goto yy61;
- case 'L': goto yy62;
+ case 'a': goto yy54;
+ case 'B': goto yy56;
+ case 'C': goto yy57;
+ case 'D': goto yy58;
+ case 'E': goto yy59;
+ case 'F': goto yy60;
+ case 'I': goto yy63;
+ case 'L': goto yy64;
case 'M':
- case 'm': goto yy63;
+ case 'm': goto yy65;
case 'N':
- case 'n': goto yy64;
- case 'O': goto yy65;
- case 'P': goto yy66;
+ case 'n': goto yy66;
+ case 'O':
+ case 'o': goto yy67;
+ case 'P': goto yy68;
case 'R':
- case 'r': goto yy67;
- case 'S':
- case 's': goto yy68;
- case 'T':
- case 't': goto yy69;
- case 'U':
- case 'u': goto yy70;
- case 'V':
- case 'v': goto yy71;
+ case 'r': goto yy69;
+ case 'S': goto yy70;
+ case 'T': goto yy71;
+ case 'U': goto yy72;
case 'W':
- case 'w': goto yy72;
+ case 'w': goto yy73;
case 'Z':
- case 'z': goto yy73;
- case '[': goto yy74;
- case '\\': goto yy76;
- case ']': goto yy78;
- case '^': goto yy80;
- case '_': goto yy82;
- case 'l': goto yy83;
- case 'o': goto yy84;
- case 'p': goto yy85;
- case '{': goto yy86;
- case '|': goto yy88;
- case '}': goto yy90;
- case '~': goto yy92;
- default: goto yy59;
+ case 'z': goto yy74;
+ case '[': goto yy75;
+ case '\\': goto yy77;
+ case ']': goto yy79;
+ case '^': goto yy81;
+ case '_': goto yy83;
+ case 'b': goto yy84;
+ case 'c': goto yy85;
+ case 'd': goto yy86;
+ case 'e': goto yy87;
+ case 'f': goto yy88;
+ case 'i': goto yy89;
+ case 'l': goto yy90;
+ case 'p': goto yy91;
+ case 's': goto yy92;
+ case 't': goto yy93;
+ case 'u': goto yy94;
+ case 'v': goto yy95;
+ case '{': goto yy96;
+ case '|': goto yy98;
+ case '}': goto yy100;
+ case '~': goto yy102;
+ default: goto yy61;
}
yy2:
++cur;
yy3:
-#line 449 "src/parser.re"
+#line 514 "src/parser.re"
{ NEWTOKEN(-2); goto error; }
-#line 405 "src/parser.c"
+#line 476 "src/parser.c"
yy4:
++cur;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
switch (yych) {
case '\t':
+ case '\f':
case ' ': goto yy4;
default: goto yy6;
}
yy6:
-#line 448 "src/parser.re"
+#line 513 "src/parser.re"
{ NEWTOKEN(PSI_T_WHITESPACE); goto start; }
-#line 418 "src/parser.c"
+#line 490 "src/parser.c"
yy7:
++cur;
-#line 447 "src/parser.re"
+#line 512 "src/parser.re"
{ NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
-#line 423 "src/parser.c"
+#line 495 "src/parser.c"
yy9:
- ++cur;
- switch ((yych = *cur)) {
- case '=': goto yy94;
+ yych = *++cur;
+ switch (yych) {
+ case '=': goto yy104;
default: goto yy10;
}
yy10:
-#line 348 "src/parser.re"
+#line 415 "src/parser.re"
{ NEWTOKEN(PSI_T_NOT); goto start; }
-#line 433 "src/parser.c"
+#line 505 "src/parser.c"
yy11:
- yyaccept = 0;
- yych = *(mrk = ++cur);
+ ++cur;
+#line 388 "src/parser.re"
+ { escaped = false; tok += 1; goto string; }
+#line 510 "src/parser.c"
+yy13:
+ yych = *++cur;
switch (yych) {
- case '"': goto yy3;
- default: goto yy96;
+ case '#': goto yy106;
+ default: goto yy14;
}
-yy12:
- ++cur;
-#line 331 "src/parser.re"
- { NEWTOKEN(PSI_T_HASH); goto start; }
-#line 445 "src/parser.c"
yy14:
+#line 398 "src/parser.re"
+ { NEWTOKEN(PSI_T_HASH); goto start; }
+#line 520 "src/parser.c"
+yy15:
yych = *++cur;
switch (yych) {
case 0x00:
case '}':
case '~':
case 0x7F: goto yy3;
- default: goto yy98;
+ default: goto yy108;
}
-yy15:
+yy16:
++cur;
-#line 349 "src/parser.re"
+#line 416 "src/parser.re"
{ NEWTOKEN(PSI_T_MODULO); goto start; }
-#line 520 "src/parser.c"
-yy17:
- ++cur;
- switch ((yych = *cur)) {
- case '&': goto yy101;
- default: goto yy18;
- }
+#line 595 "src/parser.c"
yy18:
-#line 350 "src/parser.re"
- { NEWTOKEN(PSI_T_AMPERSAND); goto start; }
-#line 530 "src/parser.c"
-yy19:
- yyaccept = 0;
- yych = *(mrk = ++cur);
+ yych = *++cur;
switch (yych) {
- case '\'': goto yy3;
- default: goto yy103;
+ case '&': goto yy111;
+ default: goto yy19;
}
+yy19:
+#line 417 "src/parser.re"
+ { NEWTOKEN(PSI_T_AMPERSAND); goto start; }
+#line 605 "src/parser.c"
yy20:
++cur;
-#line 332 "src/parser.re"
- { NEWTOKEN(PSI_T_LPAREN); goto start; }
-#line 542 "src/parser.c"
+#line 387 "src/parser.re"
+ { escaped = false; tok += 1; goto character; }
+#line 610 "src/parser.c"
yy22:
++cur;
-#line 333 "src/parser.re"
- { NEWTOKEN(PSI_T_RPAREN); goto start; }
-#line 547 "src/parser.c"
+#line 399 "src/parser.re"
+ { NEWTOKEN(PSI_T_LPAREN); goto start; }
+#line 615 "src/parser.c"
yy24:
++cur;
-#line 346 "src/parser.re"
- { NEWTOKEN(PSI_T_ASTERISK); goto start; }
-#line 552 "src/parser.c"
+#line 400 "src/parser.re"
+ { NEWTOKEN(PSI_T_RPAREN); goto start; }
+#line 620 "src/parser.c"
yy26:
- yyaccept = 1;
+ ++cur;
+#line 413 "src/parser.re"
+ { NEWTOKEN(PSI_T_ASTERISK); goto start; }
+#line 625 "src/parser.c"
+yy28:
+ yyaccept = 0;
yych = *(mrk = ++cur);
switch (yych) {
- case '.': goto yy105;
- case '0': goto yy36;
+ case '.': goto yy113;
+ case '0': goto yy38;
case '1':
case '2':
case '3':
case '6':
case '7':
case '8':
- case '9': goto yy38;
- default: goto yy27;
+ case '9': goto yy40;
+ default: goto yy29;
}
-yy27:
-#line 351 "src/parser.re"
+yy29:
+#line 418 "src/parser.re"
{ NEWTOKEN(PSI_T_PLUS); goto start; }
-#line 573 "src/parser.c"
-yy28:
+#line 646 "src/parser.c"
+yy30:
++cur;
-#line 335 "src/parser.re"
+#line 402 "src/parser.re"
{ NEWTOKEN(PSI_T_COMMA); goto start; }
-#line 578 "src/parser.c"
-yy30:
- yyaccept = 2;
+#line 651 "src/parser.c"
+yy32:
+ yyaccept = 1;
yych = *(mrk = ++cur);
switch (yych) {
- case '.': goto yy105;
- case '0': goto yy36;
+ case '.': goto yy113;
+ case '0': goto yy38;
case '1':
case '2':
case '3':
case '6':
case '7':
case '8':
- case '9': goto yy38;
- default: goto yy31;
+ case '9': goto yy40;
+ default: goto yy33;
}
-yy31:
-#line 352 "src/parser.re"
+yy33:
+#line 419 "src/parser.re"
{ NEWTOKEN(PSI_T_MINUS); goto start; }
-#line 599 "src/parser.c"
-yy32:
- yyaccept = 3;
+#line 672 "src/parser.c"
+yy34:
+ yyaccept = 2;
yych = *(mrk = ++cur);
switch (yych) {
- case '.': goto yy107;
+ case '.': goto yy115;
case '0':
case '1':
case '2':
case '6':
case '7':
case '8':
- case '9': goto yy108;
- default: goto yy33;
- }
-yy33:
-#line 363 "src/parser.re"
- { NEWTOKEN(PSI_T_PERIOD); goto start; }
-#line 620 "src/parser.c"
-yy34:
- ++cur;
- switch ((yych = *cur)) {
- case '*': goto yy111;
- case '/': goto yy113;
+ case '9': goto yy116;
default: goto yy35;
}
yy35:
-#line 353 "src/parser.re"
- { NEWTOKEN(PSI_T_SLASH); goto start; }
-#line 631 "src/parser.c"
+#line 430 "src/parser.re"
+ { NEWTOKEN(PSI_T_PERIOD); goto start; }
+#line 693 "src/parser.c"
yy36:
- yyaccept = 4;
+ yych = *++cur;
+ switch (yych) {
+ case '*': goto yy119;
+ case '/': goto yy121;
+ default: goto yy37;
+ }
+yy37:
+#line 420 "src/parser.re"
+ { NEWTOKEN(PSI_T_SLASH); goto start; }
+#line 704 "src/parser.c"
+yy38:
+ yyaccept = 3;
yych = *(mrk = ++cur);
- ctxmrk = cur;
switch (yych) {
- case '.': goto yy115;
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7': goto yy117;
+ case '.': goto yy123;
case 'E':
- case 'e': goto yy119;
- case 'L':
- case 'l': goto yy120;
- case 'U':
- case 'u': goto yy122;
+ case 'e': goto yy127;
case 'X':
- case 'x': goto yy124;
- default: goto yy37;
+ case 'x': goto yy132;
+ default: goto yy126;
}
-yy37:
-#line 316 "src/parser.re"
+yy39:
+#line 374 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; }
-#line 659 "src/parser.c"
-yy38:
- yyaccept = 4;
+#line 719 "src/parser.c"
+yy40:
+ yyaccept = 3;
mrk = ++cur;
if ((lim - cur) < 3) if (cur >= lim) goto done;;
yych = *cur;
- ctxmrk = cur;
switch (yych) {
- case '.': goto yy115;
+ case '.': goto yy123;
case '0':
case '1':
case '2':
case '6':
case '7':
case '8':
- case '9': goto yy38;
+ case '9': goto yy40;
case 'E':
- case 'e': goto yy119;
+ case 'e': goto yy127;
case 'L':
- case 'l': goto yy120;
+ case 'l': goto yy128;
case 'U':
- case 'u': goto yy122;
- default: goto yy37;
+ case 'u': goto yy130;
+ default: goto yy39;
}
-yy40:
+yy42:
++cur;
-#line 336 "src/parser.re"
+#line 403 "src/parser.re"
{ NEWTOKEN(PSI_T_COLON); goto start; }
-#line 690 "src/parser.c"
-yy42:
+#line 749 "src/parser.c"
+yy44:
++cur;
-#line 334 "src/parser.re"
+#line 401 "src/parser.re"
{ NEWTOKEN(PSI_T_EOS); goto start; }
-#line 695 "src/parser.c"
-yy44:
- yyaccept = 5;
+#line 754 "src/parser.c"
+yy46:
+ yyaccept = 4;
yych = *(mrk = ++cur);
switch (yych) {
case '-':
case 'w':
case 'x':
case 'y':
- case 'z': goto yy125;
- case '<': goto yy127;
- case '=': goto yy129;
- default: goto yy45;
- }
-yy45:
-#line 361 "src/parser.re"
- { NEWTOKEN(PSI_T_LCHEVR); goto start; }
-#line 773 "src/parser.c"
-yy46:
- ++cur;
- switch ((yych = *cur)) {
- case '=': goto yy131;
+ case 'z': goto yy133;
+ case '<': goto yy135;
+ case '=': goto yy137;
default: goto yy47;
}
yy47:
-#line 345 "src/parser.re"
- { NEWTOKEN(PSI_T_EQUALS); goto start; }
-#line 783 "src/parser.c"
+#line 428 "src/parser.re"
+ { NEWTOKEN(PSI_T_LCHEVR); goto start; }
+#line 832 "src/parser.c"
yy48:
- ++cur;
- switch ((yych = *cur)) {
- case '=': goto yy133;
- case '>': goto yy135;
+ yych = *++cur;
+ switch (yych) {
+ case '=': goto yy139;
default: goto yy49;
}
yy49:
-#line 362 "src/parser.re"
- { NEWTOKEN(PSI_T_RCHEVR); goto start; }
-#line 794 "src/parser.c"
+#line 412 "src/parser.re"
+ { NEWTOKEN(PSI_T_EQUALS); goto start; }
+#line 842 "src/parser.c"
yy50:
+ yych = *++cur;
+ switch (yych) {
+ case '=': goto yy141;
+ case '>': goto yy143;
+ default: goto yy51;
+ }
+yy51:
+#line 429 "src/parser.re"
+ { NEWTOKEN(PSI_T_RCHEVR); goto start; }
+#line 853 "src/parser.c"
+yy52:
++cur;
-#line 365 "src/parser.re"
+#line 432 "src/parser.re"
{ NEWTOKEN(PSI_T_IIF); goto start; }
-#line 799 "src/parser.c"
-yy52:
- yyaccept = 6;
+#line 858 "src/parser.c"
+yy54:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'R':
- case 'r': goto yy137;
- default: goto yy60;
+ case 'r': goto yy145;
+ case 'S':
+ case 's': goto yy146;
+ default: goto yy62;
}
-yy53:
-#line 440 "src/parser.re"
+yy55:
+#line 507 "src/parser.re"
{ NEWTOKEN(PSI_T_NAME); goto start; }
-#line 811 "src/parser.c"
-yy54:
- yyaccept = 6;
+#line 872 "src/parser.c"
+yy56:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'O':
- case 'o': goto yy139;
- default: goto yy60;
+ case 'o': goto yy149;
+ default: goto yy62;
}
-yy55:
- yyaccept = 6;
+yy57:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy140;
- case 'H':
- case 'h': goto yy141;
+ case 'a': goto yy150;
case 'O':
- case 'o': goto yy142;
- default: goto yy60;
+ case 'o': goto yy151;
+ default: goto yy62;
}
-yy56:
- yyaccept = 6;
+yy58:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy143;
- case 'O':
- case 'o': goto yy144;
- default: goto yy60;
+ case 'e': goto yy152;
+ default: goto yy62;
}
-yy57:
- yyaccept = 6;
+yy59:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy145;
+ case 'l': goto yy153;
case 'N':
- case 'n': goto yy146;
+ case 'n': goto yy154;
case 'R':
- case 'r': goto yy147;
- default: goto yy60;
+ case 'r': goto yy155;
+ default: goto yy62;
}
-yy58:
- yyaccept = 6;
+yy60:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy148;
+ case 'a': goto yy156;
case 'L':
- case 'l': goto yy149;
+ case 'l': goto yy157;
case 'R':
- case 'r': goto yy150;
+ case 'r': goto yy158;
case 'U':
- case 'u': goto yy151;
- default: goto yy60;
+ case 'u': goto yy159;
+ default: goto yy62;
}
-yy59:
- yyaccept = 6;
+yy61:
+ yyaccept = 5;
mrk = ++cur;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
-yy60:
+yy62:
switch (yych) {
case 0x00:
case 0x01:
case '|':
case '}':
case '~':
- case 0x7F: goto yy53;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy55;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy61:
- yyaccept = 6;
+yy63:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'F':
- case 'f': goto yy152;
+ case 'f': goto yy160;
case 'N':
- case 'n': goto yy154;
- default: goto yy60;
+ case 'n': goto yy162;
+ default: goto yy62;
}
-yy62:
- yyaccept = 6;
+yy64:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '"': goto yy155;
- case '\'': goto yy156;
+ case '"':
+ case '\'': goto yy163;
case 'E':
- case 'e': goto yy157;
+ case 'e': goto yy165;
case 'I':
- case 'i': goto yy158;
- case 'O':
- case 'o': goto yy159;
- default: goto yy60;
+ case 'i': goto yy166;
+ default: goto yy62;
}
-yy63:
- yyaccept = 6;
+yy65:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'I':
- case 'i': goto yy160;
- default: goto yy60;
+ case 'i': goto yy167;
+ default: goto yy62;
}
-yy64:
- yyaccept = 6;
+yy66:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'U':
- case 'u': goto yy161;
- default: goto yy60;
+ case 'u': goto yy168;
+ default: goto yy62;
}
-yy65:
- yyaccept = 6;
+yy67:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'B':
- case 'b': goto yy162;
- default: goto yy60;
+ case 'b': goto yy169;
+ default: goto yy62;
}
-yy66:
- yyaccept = 6;
+yy68:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy163;
+ case 'a': goto yy170;
case 'O':
- case 'o': goto yy164;
+ case 'o': goto yy171;
case 'R':
- case 'r': goto yy165;
- default: goto yy60;
+ case 'r': goto yy172;
+ default: goto yy62;
}
-yy67:
- yyaccept = 6;
+yy69:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy166;
- default: goto yy60;
+ case 'e': goto yy173;
+ default: goto yy62;
}
-yy68:
- yyaccept = 6;
+yy70:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy167;
- case 'H':
- case 'h': goto yy168;
- case 'I':
- case 'i': goto yy169;
+ case 'e': goto yy174;
case 'T':
- case 't': goto yy170;
- default: goto yy60;
+ case 't': goto yy175;
+ default: goto yy62;
}
-yy69:
- yyaccept = 6;
+yy71:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy171;
+ case 'e': goto yy176;
case 'O':
- case 'o': goto yy172;
+ case 'o': goto yy177;
case 'R':
- case 'r': goto yy173;
- case 'Y':
- case 'y': goto yy174;
- default: goto yy60;
+ case 'r': goto yy178;
+ default: goto yy62;
}
-yy70:
- yyaccept = 6;
+yy72:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'I':
- case 'i': goto yy175;
+ case '"':
+ case '\'': goto yy179;
case 'N':
- case 'n': goto yy176;
- default: goto yy60;
+ case 'n': goto yy181;
+ default: goto yy62;
}
-yy71:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy177;
- default: goto yy60;
- }
-yy72:
- yyaccept = 6;
+yy73:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy178;
- default: goto yy60;
+ case 'a': goto yy182;
+ default: goto yy62;
}
-yy73:
- yyaccept = 6;
+yy74:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'V':
- case 'v': goto yy179;
- default: goto yy60;
+ case 'v': goto yy183;
+ default: goto yy62;
}
-yy74:
+yy75:
++cur;
-#line 339 "src/parser.re"
+#line 406 "src/parser.re"
{ NEWTOKEN(PSI_T_LBRACKET); goto start; }
-#line 1076 "src/parser.c"
-yy76:
- ++cur;
- switch ((yych = *cur)) {
+#line 1117 "src/parser.c"
+yy77:
+ yych = *++cur;
+ switch (yych) {
case 0x00:
case 0x01:
case 0x02:
case '|':
case '}':
case '~':
- case 0x7F: goto yy77;
- default: goto yy180;
+ case 0x7F: goto yy78;
+ default: goto yy184;
}
-yy77:
-#line 354 "src/parser.re"
- { NEWTOKEN(PSI_T_BSLASH); goto start; }
-#line 1160 "src/parser.c"
yy78:
+#line 421 "src/parser.re"
+ { NEWTOKEN(PSI_T_BSLASH); goto start; }
+#line 1201 "src/parser.c"
+yy79:
++cur;
-#line 340 "src/parser.re"
+#line 407 "src/parser.re"
{ NEWTOKEN(PSI_T_RBRACKET); goto start; }
-#line 1165 "src/parser.c"
-yy80:
+#line 1206 "src/parser.c"
+yy81:
++cur;
-#line 356 "src/parser.re"
+#line 423 "src/parser.re"
{ NEWTOKEN(PSI_T_CARET); goto start; }
-#line 1170 "src/parser.c"
-yy82:
- yyaccept = 6;
+#line 1211 "src/parser.c"
+yy83:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy183;
- default: goto yy60;
+ case '_': goto yy187;
+ default: goto yy62;
}
-yy83:
- yyaccept = 6;
+yy84:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'O': goto yy149;
+ case 'o': goto yy188;
+ default: goto yy62;
+ }
+yy85:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy150;
+ case 'O': goto yy151;
+ case 'h': goto yy189;
+ case 'o': goto yy190;
+ default: goto yy62;
+ }
+yy86:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy157;
- case 'I':
- case 'i': goto yy158;
- case 'O':
- case 'o': goto yy159;
- default: goto yy60;
+ case 'e': goto yy152;
+ case 'o': goto yy191;
+ default: goto yy62;
}
-yy84:
- yyaccept = 6;
+yy87:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'B':
- case 'b': goto yy162;
- case 'n': goto yy184;
- default: goto yy60;
+ case 'L':
+ case 'l': goto yy153;
+ case 'N': goto yy154;
+ case 'R':
+ case 'r': goto yy155;
+ case 'n': goto yy192;
+ default: goto yy62;
}
-yy85:
- yyaccept = 6;
+yy88:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy156;
+ case 'L': goto yy157;
+ case 'R':
+ case 'r': goto yy158;
+ case 'U':
+ case 'u': goto yy159;
+ case 'l': goto yy193;
+ default: goto yy62;
+ }
+yy89:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy160;
+ case 'N': goto yy162;
+ case 'n': goto yy194;
+ default: goto yy62;
+ }
+yy90:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy165;
+ case 'I': goto yy166;
+ case 'i': goto yy195;
+ case 'o': goto yy196;
+ default: goto yy62;
+ }
+yy91:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy163;
+ case 'a': goto yy170;
case 'O':
- case 'o': goto yy164;
- case 'R': goto yy165;
- case 'r': goto yy185;
- default: goto yy60;
+ case 'o': goto yy171;
+ case 'R': goto yy172;
+ case 'r': goto yy197;
+ default: goto yy62;
}
-yy86:
+yy92:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy174;
+ case 'T': goto yy175;
+ case 'h': goto yy198;
+ case 'i': goto yy199;
+ case 't': goto yy200;
+ default: goto yy62;
+ }
+yy93:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy176;
+ case 'O':
+ case 'o': goto yy177;
+ case 'R':
+ case 'r': goto yy178;
+ case 'y': goto yy201;
+ default: goto yy62;
+ }
+yy94:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '"':
+ case '\'': goto yy202;
+ case '8': goto yy204;
+ case 'N': goto yy181;
+ case 'n': goto yy205;
+ default: goto yy62;
+ }
+yy95:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'o': goto yy206;
+ default: goto yy62;
+ }
+yy96:
++cur;
-#line 337 "src/parser.re"
+#line 404 "src/parser.re"
{ NEWTOKEN(PSI_T_LBRACE); goto start; }
-#line 1215 "src/parser.c"
-yy88:
- ++cur;
- switch ((yych = *cur)) {
- case '|': goto yy186;
- default: goto yy89;
+#line 1353 "src/parser.c"
+yy98:
+ yych = *++cur;
+ switch (yych) {
+ case '|': goto yy207;
+ default: goto yy99;
}
-yy89:
-#line 355 "src/parser.re"
+yy99:
+#line 422 "src/parser.re"
{ NEWTOKEN(PSI_T_PIPE); goto start; }
-#line 1225 "src/parser.c"
-yy90:
+#line 1363 "src/parser.c"
+yy100:
++cur;
-#line 338 "src/parser.re"
+#line 405 "src/parser.re"
{ NEWTOKEN(PSI_T_RBRACE); goto start; }
-#line 1230 "src/parser.c"
-yy92:
+#line 1368 "src/parser.c"
+yy102:
++cur;
-#line 347 "src/parser.re"
+#line 414 "src/parser.re"
{ NEWTOKEN(PSI_T_TILDE); goto start; }
-#line 1235 "src/parser.c"
-yy94:
+#line 1373 "src/parser.c"
+yy104:
++cur;
-#line 341 "src/parser.re"
+#line 408 "src/parser.re"
{ NEWTOKEN(PSI_T_CMP_NE); goto start; }
-#line 1240 "src/parser.c"
-yy96:
+#line 1378 "src/parser.c"
+yy106:
++cur;
- if (lim <= cur) if (cur >= lim) goto done;;
- yych = *cur;
- switch (yych) {
- case '"': goto yy188;
- default: goto yy96;
- }
-yy98:
+#line 397 "src/parser.re"
+ { NEWTOKEN(PSI_T_CPP_PASTE); goto start; }
+#line 1383 "src/parser.c"
+yy108:
++cur;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
case '|':
case '}':
case '~':
- case 0x7F: goto yy100;
- default: goto yy98;
+ case 0x7F: goto yy110;
+ default: goto yy108;
}
-yy100:
-#line 442 "src/parser.re"
+yy110:
+#line 509 "src/parser.re"
{ NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; }
-#line 1324 "src/parser.c"
-yy101:
+#line 1459 "src/parser.c"
+yy111:
++cur;
-#line 343 "src/parser.re"
+#line 410 "src/parser.re"
{ NEWTOKEN(PSI_T_AND); goto start; }
-#line 1329 "src/parser.c"
-yy103:
- ++cur;
- if (lim <= cur) if (cur >= lim) goto done;;
- yych = *cur;
- switch (yych) {
- case '\'': goto yy190;
- case '\\': goto yy192;
- default: goto yy103;
- }
-yy105:
+#line 1464 "src/parser.c"
+yy113:
yych = *++cur;
switch (yych) {
case '0':
case '6':
case '7':
case '8':
- case '9': goto yy108;
- default: goto yy106;
+ case '9': goto yy116;
+ default: goto yy114;
}
-yy106:
+yy114:
cur = mrk;
switch (yyaccept) {
- case 0: goto yy3;
- case 1: goto yy27;
- case 2: goto yy31;
- case 3: goto yy33;
- case 4: goto yy37;
- case 5: goto yy45;
- case 6: goto yy53;
- case 7: goto yy110;
- case 8: goto yy121;
- case 9: goto yy153;
- case 10: goto yy182;
- case 11: goto yy230;
- case 12: goto yy232;
- case 13: goto yy234;
- case 14: goto yy244;
- case 15: goto yy191;
- case 16: goto yy277;
- case 17: goto yy280;
- case 18: goto yy286;
- case 19: goto yy288;
- case 20: goto yy291;
- case 21: goto yy296;
- case 22: goto yy307;
- case 23: goto yy310;
- case 24: goto yy325;
- case 25: goto yy333;
- case 26: goto yy340;
- case 27: goto yy343;
- case 28: goto yy346;
- case 29: goto yy349;
- case 30: goto yy356;
- case 31: goto yy358;
- case 32: goto yy362;
- case 33: goto yy364;
- case 34: goto yy366;
- case 35: goto yy368;
- case 36: goto yy371;
- case 37: goto yy380;
- case 38: goto yy388;
- case 39: goto yy407;
- case 40: goto yy409;
- case 41: goto yy415;
- case 42: goto yy420;
- case 43: goto yy422;
- case 44: goto yy424;
- case 45: goto yy428;
- case 46: goto yy434;
- case 47: goto yy436;
- case 48: goto yy438;
- case 49: goto yy440;
- case 50: goto yy445;
- case 51: goto yy447;
- case 52: goto yy449;
- case 53: goto yy451;
- case 54: goto yy453;
- case 55: goto yy455;
- case 56: goto yy457;
- case 57: goto yy462;
- case 58: goto yy474;
- case 59: goto yy476;
- case 60: goto yy480;
- case 61: goto yy484;
- case 62: goto yy486;
- case 63: goto yy488;
- case 64: goto yy490;
- case 65: goto yy492;
- case 66: goto yy497;
- case 67: goto yy502;
- case 68: goto yy507;
- case 69: goto yy510;
- case 70: goto yy513;
- case 71: goto yy515;
- case 72: goto yy517;
- case 73: goto yy519;
- case 74: goto yy524;
- case 75: goto yy526;
- case 76: goto yy530;
- case 77: goto yy532;
- case 78: goto yy534;
- case 79: goto yy536;
- case 80: goto yy542;
- case 81: goto yy544;
- case 82: goto yy549;
- case 83: goto yy553;
- default: goto yy556;
- }
-yy107:
+ case 0: goto yy29;
+ case 1: goto yy33;
+ case 2: goto yy35;
+ case 3: goto yy39;
+ case 4: goto yy47;
+ case 5: goto yy55;
+ case 6: goto yy118;
+ case 7: goto yy129;
+ case 8: goto yy147;
+ case 9: goto yy161;
+ case 10: goto yy186;
+ case 11: goto yy242;
+ case 12: goto yy244;
+ case 13: goto yy253;
+ case 14: goto yy273;
+ case 15: goto yy305;
+ case 16: goto yy307;
+ case 17: goto yy313;
+ case 18: goto yy321;
+ case 19: goto yy333;
+ case 20: goto yy341;
+ case 21: goto yy345;
+ case 22: goto yy352;
+ case 23: goto yy354;
+ case 24: goto yy358;
+ case 25: goto yy361;
+ case 26: goto yy363;
+ case 27: goto yy373;
+ case 28: goto yy376;
+ case 29: goto yy383;
+ case 30: goto yy386;
+ case 31: goto yy388;
+ case 32: goto yy390;
+ case 33: goto yy394;
+ case 34: goto yy399;
+ case 35: goto yy417;
+ case 36: goto yy425;
+ case 37: goto yy428;
+ case 38: goto yy431;
+ case 39: goto yy437;
+ case 40: goto yy441;
+ case 41: goto yy446;
+ case 42: goto yy448;
+ case 43: goto yy452;
+ case 44: goto yy455;
+ case 45: goto yy457;
+ case 46: goto yy459;
+ case 47: goto yy464;
+ case 48: goto yy466;
+ case 49: goto yy468;
+ case 50: goto yy470;
+ case 51: goto yy472;
+ case 52: goto yy477;
+ case 53: goto yy487;
+ case 54: goto yy489;
+ case 55: goto yy491;
+ case 56: goto yy493;
+ case 57: goto yy495;
+ case 58: goto yy500;
+ case 59: goto yy504;
+ case 60: goto yy508;
+ case 61: goto yy510;
+ case 62: goto yy515;
+ case 63: goto yy520;
+ case 64: goto yy522;
+ case 65: goto yy530;
+ case 66: goto yy534;
+ case 67: goto yy536;
+ case 68: goto yy538;
+ case 69: goto yy540;
+ case 70: goto yy545;
+ case 71: goto yy547;
+ case 72: goto yy553;
+ case 73: goto yy558;
+ case 74: goto yy560;
+ case 75: goto yy565;
+ case 76: goto yy567;
+ case 77: goto yy575;
+ case 78: goto yy579;
+ case 79: goto yy583;
+ case 80: goto yy587;
+ case 81: goto yy589;
+ default: goto yy594;
+ }
+yy115:
yych = *++cur;
switch (yych) {
- case '.': goto yy194;
- default: goto yy106;
+ case '.': goto yy209;
+ default: goto yy114;
}
-yy108:
- yyaccept = 7;
+yy116:
+ yyaccept = 6;
mrk = ++cur;
if ((lim - cur) < 2) if (cur >= lim) goto done;;
yych = *cur;
- ctxmrk = cur;
switch (yych) {
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy108;
+ case '9': goto yy116;
case 'D':
- case 'd': goto yy196;
+ case 'd': goto yy211;
case 'F':
- case 'f': goto yy197;
+ case 'f': goto yy212;
case 'L':
- case 'l': goto yy199;
- default: goto yy110;
+ case 'l': goto yy214;
+ default: goto yy118;
}
-yy110:
-#line 322 "src/parser.re"
+yy118:
+#line 380 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
-#line 1477 "src/parser.c"
-yy111:
+#line 1600 "src/parser.c"
+yy119:
++cur;
-#line 329 "src/parser.re"
+#line 394 "src/parser.re"
{ goto comment; }
-#line 1482 "src/parser.c"
-yy113:
+#line 1605 "src/parser.c"
+yy121:
++cur;
-#line 330 "src/parser.re"
+#line 395 "src/parser.re"
{ goto comment_sl; }
-#line 1487 "src/parser.c"
-yy115:
- yyaccept = 7;
+#line 1610 "src/parser.c"
+yy123:
+ yyaccept = 6;
mrk = ++cur;
if ((lim - cur) < 3) if (cur >= lim) goto done;;
yych = *cur;
- ctxmrk = cur;
switch (yych) {
case '0':
case '1':
case '6':
case '7':
case '8':
- case '9': goto yy115;
+ case '9': goto yy123;
case 'D':
- case 'd': goto yy196;
+ case 'd': goto yy211;
case 'E':
- case 'e': goto yy119;
+ case 'e': goto yy127;
case 'F':
- case 'f': goto yy197;
+ case 'f': goto yy212;
case 'L':
- case 'l': goto yy199;
- default: goto yy110;
+ case 'l': goto yy214;
+ default: goto yy118;
}
-yy117:
+yy125:
++cur;
if ((lim - cur) < 3) if (cur >= lim) goto done;;
yych = *cur;
- ctxmrk = cur;
+yy126:
switch (yych) {
case '0':
case '1':
case '4':
case '5':
case '6':
- case '7': goto yy117;
+ case '7': goto yy125;
case 'L':
- case 'l': goto yy120;
+ case 'l': goto yy128;
case 'U':
- case 'u': goto yy122;
- default: goto yy37;
+ case 'u': goto yy130;
+ default: goto yy39;
}
-yy119:
+yy127:
yych = *++cur;
switch (yych) {
case '+':
- case '-': goto yy105;
+ case '-': goto yy113;
case '0':
case '1':
case '2':
case '6':
case '7':
case '8':
- case '9': goto yy108;
- default: goto yy106;
+ case '9': goto yy116;
+ default: goto yy114;
}
-yy120:
- yyaccept = 8;
+yy128:
+ yyaccept = 7;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy201;
+ case 'l': goto yy216;
case 'U':
- case 'u': goto yy202;
- default: goto yy121;
+ case 'u': goto yy217;
+ default: goto yy129;
}
-yy121:
- cur = ctxmrk;
-#line 318 "src/parser.re"
+yy129:
+ cur -= 1;
+#line 376 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
-#line 1566 "src/parser.c"
-yy122:
- ++cur;
- switch ((yych = *cur)) {
+#line 1688 "src/parser.c"
+yy130:
+ yych = *++cur;
+ switch (yych) {
case 'L':
- case 'l': goto yy204;
- default: goto yy123;
+ case 'l': goto yy219;
+ default: goto yy131;
}
-yy123:
- cur = ctxmrk;
-#line 317 "src/parser.re"
+yy131:
+ cur -= 1;
+#line 375 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
-#line 1578 "src/parser.c"
-yy124:
+#line 1700 "src/parser.c"
+yy132:
yych = *++cur;
switch (yych) {
case '0':
case 'c':
case 'd':
case 'e':
- case 'f': goto yy205;
- default: goto yy106;
+ case 'f': goto yy220;
+ default: goto yy114;
}
-yy125:
+yy133:
++cur;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
case 'w':
case 'x':
case 'y':
- case 'z': goto yy125;
- case '>': goto yy207;
- default: goto yy106;
+ case 'z': goto yy133;
+ case '>': goto yy222;
+ default: goto yy114;
}
-yy127:
+yy135:
++cur;
-#line 357 "src/parser.re"
+#line 424 "src/parser.re"
{ NEWTOKEN(PSI_T_LSHIFT); goto start; }
-#line 1684 "src/parser.c"
-yy129:
+#line 1806 "src/parser.c"
+yy137:
++cur;
-#line 359 "src/parser.re"
+#line 426 "src/parser.re"
{ NEWTOKEN(PSI_T_CMP_LE); goto start; }
-#line 1689 "src/parser.c"
-yy131:
+#line 1811 "src/parser.c"
+yy139:
++cur;
-#line 342 "src/parser.re"
+#line 409 "src/parser.re"
{ NEWTOKEN(PSI_T_CMP_EQ); goto start; }
-#line 1694 "src/parser.c"
-yy133:
+#line 1816 "src/parser.c"
+yy141:
++cur;
-#line 360 "src/parser.re"
+#line 427 "src/parser.re"
{ NEWTOKEN(PSI_T_CMP_GE); goto start; }
-#line 1699 "src/parser.c"
-yy135:
+#line 1821 "src/parser.c"
+yy143:
++cur;
-#line 358 "src/parser.re"
+#line 425 "src/parser.re"
{ NEWTOKEN(PSI_T_RSHIFT); goto start; }
-#line 1704 "src/parser.c"
-yy137:
- yyaccept = 6;
+#line 1826 "src/parser.c"
+yy145:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'R':
- case 'r': goto yy209;
- default: goto yy60;
+ case 'r': goto yy224;
+ default: goto yy62;
+ }
+yy146:
+ 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 yy147;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy138:
+yy147:
+#line 487 "src/parser.re"
+ { NEWTOKEN(PSI_T_AS); goto start; }
+#line 1909 "src/parser.c"
+yy148:
++cur;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
case '|':
case '}':
case '~':
- case 0x7F: goto yy106;
- default: goto yy180;
+ case 0x7F: goto yy114;
+ default: goto yy184;
}
-yy139:
- yyaccept = 6;
+yy149:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'O':
- case 'o': goto yy210;
- default: goto yy60;
+ case 'o': goto yy225;
+ default: goto yy62;
}
-yy140:
- yyaccept = 6;
+yy150:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy211;
- default: goto yy60;
- }
-yy141:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy212;
- default: goto yy60;
+ case 'l': goto yy226;
+ default: goto yy62;
}
-yy142:
- yyaccept = 6;
+yy151:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy213;
case 'U':
- case 'u': goto yy214;
- default: goto yy60;
+ case 'u': goto yy227;
+ default: goto yy62;
}
-yy143:
- yyaccept = 6;
+yy152:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'F':
- case 'f': goto yy215;
- default: goto yy60;
- }
-yy144:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'U':
- case 'u': goto yy216;
- default: goto yy60;
+ case 'f': goto yy228;
+ default: goto yy62;
}
-yy145:
- yyaccept = 6;
+yy153:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'I':
- case 'i': goto yy217;
+ case 'i': goto yy229;
case 'S':
- case 's': goto yy218;
- default: goto yy60;
+ case 's': goto yy230;
+ default: goto yy62;
}
-yy146:
- yyaccept = 6;
+yy154:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'D':
- case 'd': goto yy219;
- case 'U':
- case 'u': goto yy220;
- default: goto yy60;
+ case 'd': goto yy231;
+ default: goto yy62;
}
-yy147:
- yyaccept = 6;
+yy155:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'R':
- case 'r': goto yy221;
- default: goto yy60;
+ case 'r': goto yy232;
+ default: goto yy62;
}
-yy148:
- yyaccept = 6;
+yy156:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy222;
- default: goto yy60;
+ case 'l': goto yy233;
+ default: goto yy62;
}
-yy149:
- yyaccept = 6;
+yy157:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'O':
- case 'o': goto yy223;
- default: goto yy60;
+ case 'o': goto yy234;
+ default: goto yy62;
}
-yy150:
- yyaccept = 6;
+yy158:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy224;
- default: goto yy60;
+ case 'e': goto yy235;
+ default: goto yy62;
}
-yy151:
- yyaccept = 6;
+yy159:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'N':
- case 'n': goto yy225;
- default: goto yy60;
+ case 'n': goto yy236;
+ default: goto yy62;
}
-yy152:
+yy160:
yyaccept = 9;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy153;
+ case 0x7F: goto yy161;
case 'D':
- case 'd': goto yy226;
+ case 'd': goto yy237;
case 'N':
- case 'n': goto yy227;
- case '\\': goto yy138;
- default: goto yy59;
+ case 'n': goto yy238;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy153:
-#line 368 "src/parser.re"
+yy161:
+#line 457 "src/parser.re"
{ NEWTOKEN(PSI_T_IF); goto start; }
-#line 1983 "src/parser.c"
-yy154:
- yyaccept = 6;
+#line 2160 "src/parser.c"
+yy162:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'C':
- case 'c': goto yy228;
+ case 'c': goto yy239;
case 'T':
- case 't': goto yy229;
- default: goto yy60;
- }
-yy155:
- yych = *++cur;
- switch (yych) {
- case '"': goto yy106;
- default: goto yy96;
- }
-yy156:
- yych = *++cur;
- switch (yych) {
- case '\'': goto yy106;
- default: goto yy103;
+ case 't': goto yy240;
+ default: goto yy62;
}
-yy157:
- yyaccept = 6;
+yy163:
+ ++cur;
+ cur -= 1;
+#line 392 "src/parser.re"
+ { char_width = sizeof(wchar_t)/8; }
+#line 2176 "src/parser.c"
+yy165:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy231;
- default: goto yy60;
+ case 't': goto yy241;
+ default: goto yy62;
}
-yy158:
- yyaccept = 6;
+yy166:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'B':
- case 'b': goto yy233;
- default: goto yy60;
- }
-yy159:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy235;
- default: goto yy60;
+ case 'b': goto yy243;
+ default: goto yy62;
}
-yy160:
- yyaccept = 6;
+yy167:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'X':
- case 'x': goto yy236;
- default: goto yy60;
+ case 'x': goto yy245;
+ default: goto yy62;
}
-yy161:
- yyaccept = 6;
+yy168:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy237;
- default: goto yy60;
+ case 'l': goto yy246;
+ default: goto yy62;
}
-yy162:
- yyaccept = 6;
+yy169:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'J':
- case 'j': goto yy238;
- default: goto yy60;
+ case 'j': goto yy247;
+ default: goto yy62;
}
-yy163:
- yyaccept = 6;
+yy170:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy239;
- default: goto yy60;
+ case 't': goto yy248;
+ default: goto yy62;
}
-yy164:
- yyaccept = 6;
+yy171:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'S':
- case 's': goto yy240;
- default: goto yy60;
+ case 's': goto yy249;
+ default: goto yy62;
}
-yy165:
- yyaccept = 6;
+yy172:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy241;
- default: goto yy60;
+ case 'e': goto yy250;
+ default: goto yy62;
}
-yy166:
- yyaccept = 6;
+yy173:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy242;
- default: goto yy60;
+ case 't': goto yy251;
+ default: goto yy62;
}
-yy167:
- yyaccept = 6;
+yy174:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy243;
- default: goto yy60;
- }
-yy168:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy245;
- default: goto yy60;
- }
-yy169:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'G':
- case 'g': goto yy246;
- default: goto yy60;
+ case 't': goto yy252;
+ default: goto yy62;
}
-yy170:
- yyaccept = 6;
+yy175:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy247;
+ case 'a': goto yy254;
case 'R':
- case 'r': goto yy248;
- default: goto yy60;
+ case 'r': goto yy255;
+ default: goto yy62;
}
-yy171:
- yyaccept = 6;
+yy176:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'M':
- case 'm': goto yy249;
- default: goto yy60;
+ case 'm': goto yy256;
+ default: goto yy62;
}
-yy172:
- yyaccept = 6;
+yy177:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy250;
- default: goto yy60;
+ case '_': goto yy257;
+ default: goto yy62;
}
-yy173:
- yyaccept = 6;
+yy178:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'U':
- case 'u': goto yy251;
- default: goto yy60;
- }
-yy174:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'P':
- case 'p': goto yy252;
- default: goto yy60;
+ case 'u': goto yy258;
+ default: goto yy62;
}
-yy175:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy253;
- default: goto yy60;
- }
-yy176:
- yyaccept = 6;
+yy179:
+ ++cur;
+ cur -= 1;
+#line 391 "src/parser.re"
+ { char_width = 4; }
+#line 2295 "src/parser.c"
+yy181:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'D':
- case 'd': goto yy254;
- case 'I':
- case 'i': goto yy255;
- case 'S':
- case 's': goto yy256;
- default: goto yy60;
- }
-yy177:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'I':
- case 'i': goto yy257;
- default: goto yy60;
+ case 'd': goto yy259;
+ default: goto yy62;
}
-yy178:
- yyaccept = 6;
+yy182:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'R':
- case 'r': goto yy258;
- default: goto yy60;
+ case 'r': goto yy260;
+ default: goto yy62;
}
-yy179:
- yyaccept = 6;
+yy183:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy259;
- default: goto yy60;
+ case 'a': goto yy261;
+ default: goto yy62;
}
-yy180:
+yy184:
yyaccept = 10;
mrk = ++cur;
if (lim <= cur) if (cur >= lim) goto done;;
case '|':
case '}':
case '~':
- case 0x7F: goto yy182;
- case '\\': goto yy138;
- default: goto yy180;
+ case 0x7F: goto yy186;
+ case '\\': goto yy148;
+ default: goto yy184;
}
-yy182:
-#line 441 "src/parser.re"
+yy186:
+#line 508 "src/parser.re"
{ NEWTOKEN(PSI_T_NSNAME); goto start; }
-#line 2271 "src/parser.c"
-yy183:
- yyaccept = 6;
+#line 2396 "src/parser.c"
+yy187:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'a': goto yy260;
- default: goto yy60;
+ case 'a': goto yy262;
+ case 'e': goto yy263;
+ case 'i': goto yy264;
+ case 'r': goto yy265;
+ default: goto yy62;
}
-yy184:
- yyaccept = 6;
+yy188:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'c': goto yy261;
- default: goto yy60;
+ case 'O': goto yy225;
+ case 'o': goto yy266;
+ default: goto yy62;
}
-yy185:
- yyaccept = 6;
+yy189:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy241;
- case 'a': goto yy262;
- default: goto yy60;
+ case 'a': goto yy267;
+ default: goto yy62;
}
-yy186:
- ++cur;
-#line 344 "src/parser.re"
- { NEWTOKEN(PSI_T_OR); goto start; }
-#line 2299 "src/parser.c"
-yy188:
- ++cur;
-#line 443 "src/parser.re"
- { NEWTOKEN(PSI_T_QUOTED_STRING); goto start; }
-#line 2304 "src/parser.c"
yy190:
- ++cur;
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'U':
+ case 'u': goto yy227;
+ case 'n': goto yy268;
+ default: goto yy62;
+ }
yy191:
-#line 444 "src/parser.re"
- { NEWTOKEN(PSI_T_QUOTED_CHAR); goto start; }
-#line 2310 "src/parser.c"
-yy192:
- ++cur;
- if (lim <= cur) if (cur >= lim) goto done;;
- yych = *cur;
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
switch (yych) {
- case '\'': goto yy263;
- case '\\': goto yy192;
- default: goto yy103;
+ case 'u': goto yy269;
+ default: goto yy62;
}
-yy194:
- ++cur;
-#line 364 "src/parser.re"
- { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
-#line 2324 "src/parser.c"
-yy196:
- yych = *++cur;
+yy192:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
switch (yych) {
case 'D':
- case 'd': goto yy264;
- case 'F':
- case 'f': goto yy266;
- case 'L':
- case 'l': goto yy268;
- default: goto yy106;
+ case 'd': goto yy231;
+ case 'u': goto yy270;
+ default: goto yy62;
}
-yy197:
- ++cur;
- cur = ctxmrk;
-#line 323 "src/parser.re"
- { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
-#line 2341 "src/parser.c"
-yy199:
- ++cur;
- cur = ctxmrk;
-#line 324 "src/parser.re"
- { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
-#line 2347 "src/parser.c"
-yy201:
- yych = *++cur;
+yy193:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
switch (yych) {
- case 'U':
- case 'u': goto yy270;
- default: goto yy106;
+ case 'O': goto yy234;
+ case 'o': goto yy271;
+ default: goto yy62;
}
-yy202:
- ++cur;
-yy203:
- cur = ctxmrk;
-#line 319 "src/parser.re"
- { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
-#line 2361 "src/parser.c"
-yy204:
- yych = *++cur;
+yy194:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy270;
- default: goto yy203;
+ case 'C':
+ case 'c': goto yy239;
+ case 'T': goto yy240;
+ case 't': goto yy272;
+ default: goto yy62;
}
-yy205:
- yyaccept = 4;
- mrk = ++cur;
- if ((lim - cur) < 3) if (cur >= lim) goto done;;
- yych = *cur;
- ctxmrk = cur;
+yy195:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
switch (yych) {
- case '.': goto yy272;
- case '0':
+ case 'B':
+ case 'b': goto yy243;
+ case 'n': goto yy274;
+ default: goto yy62;
+ }
+yy196:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy275;
+ default: goto yy62;
+ }
+yy197:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy250;
+ case 'a': goto yy276;
+ default: goto yy62;
+ }
+yy198:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'o': goto yy277;
+ default: goto yy62;
+ }
+yy199:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'g': goto yy278;
+ case 'z': goto yy279;
+ default: goto yy62;
+ }
+yy200:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy254;
+ case 'R': goto yy255;
+ case 'r': goto yy280;
+ default: goto yy62;
+ }
+yy201:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'p': goto yy281;
+ default: goto yy62;
+ }
+yy202:
+ ++cur;
+ cur -= 1;
+#line 390 "src/parser.re"
+ { char_width = 2; }
+#line 2527 "src/parser.c"
+yy204:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '"': goto yy282;
+ default: goto yy62;
+ }
+yy205:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy259;
+ case 'i': goto yy284;
+ case 's': goto yy285;
+ default: goto yy62;
+ }
+yy206:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'i': goto yy286;
+ case 'l': goto yy287;
+ default: goto yy62;
+ }
+yy207:
+ ++cur;
+#line 411 "src/parser.re"
+ { NEWTOKEN(PSI_T_OR); goto start; }
+#line 2557 "src/parser.c"
+yy209:
+ ++cur;
+#line 431 "src/parser.re"
+ { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
+#line 2562 "src/parser.c"
+yy211:
+ yych = *++cur;
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy288;
+ case 'F':
+ case 'f': goto yy290;
+ case 'L':
+ case 'l': goto yy292;
+ default: goto yy114;
+ }
+yy212:
+ ++cur;
+ cur -= 1;
+#line 381 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
+#line 2579 "src/parser.c"
+yy214:
+ ++cur;
+ cur -= 1;
+#line 382 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
+#line 2585 "src/parser.c"
+yy216:
+ yych = *++cur;
+ switch (yych) {
+ case 'U':
+ case 'u': goto yy294;
+ default: goto yy114;
+ }
+yy217:
+ ++cur;
+yy218:
+ cur -= 2;
+#line 377 "src/parser.re"
+ { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
+#line 2599 "src/parser.c"
+yy219:
+ yych = *++cur;
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy294;
+ default: goto yy218;
+ }
+yy220:
+ yyaccept = 3;
+ mrk = ++cur;
+ if ((lim - cur) < 3) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
+ case '.': goto yy296;
+ case '0':
case '1':
case '2':
case '3':
case 'c':
case 'd':
case 'e':
- case 'f': goto yy205;
+ case 'f': goto yy220;
case 'L':
- case 'l': goto yy120;
+ case 'l': goto yy128;
case 'P':
- case 'p': goto yy119;
+ case 'p': goto yy127;
case 'U':
- case 'u': goto yy122;
- default: goto yy37;
+ case 'u': goto yy130;
+ default: goto yy39;
}
-yy207:
+yy222:
++cur;
-#line 445 "src/parser.re"
- { NEWTOKEN(PSI_T_CPP_HEADER); goto start; }
-#line 2411 "src/parser.c"
-yy209:
- yyaccept = 6;
+#line 510 "src/parser.re"
+ { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; }
+#line 2648 "src/parser.c"
+yy224:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy274;
+ case 'a': goto yy298;
case 'V':
- case 'v': goto yy275;
- default: goto yy60;
+ case 'v': goto yy299;
+ default: goto yy62;
}
-yy210:
- yyaccept = 6;
+yy225:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy276;
- default: goto yy60;
+ case 'l': goto yy300;
+ default: goto yy62;
}
-yy211:
- yyaccept = 6;
+yy226:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy278;
- default: goto yy60;
- }
-yy212:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy279;
- default: goto yy60;
- }
-yy213:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'S':
- case 's': goto yy281;
- default: goto yy60;
+ case 'l': goto yy301;
+ default: goto yy62;
}
-yy214:
- yyaccept = 6;
+yy227:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'N':
- case 'n': goto yy282;
- default: goto yy60;
+ case 'n': goto yy302;
+ default: goto yy62;
}
-yy215:
- yyaccept = 6;
+yy228:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'I':
- case 'i': goto yy283;
- default: goto yy60;
- }
-yy216:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'B':
- case 'b': goto yy284;
- default: goto yy60;
+ case 'i': goto yy303;
+ default: goto yy62;
}
-yy217:
- yyaccept = 6;
+yy229:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'F':
- case 'f': goto yy285;
- default: goto yy60;
+ case 'f': goto yy304;
+ default: goto yy62;
}
-yy218:
- yyaccept = 6;
+yy230:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy287;
- default: goto yy60;
+ case 'e': goto yy306;
+ default: goto yy62;
}
-yy219:
- yyaccept = 6;
+yy231:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'I':
- case 'i': goto yy289;
- default: goto yy60;
- }
-yy220:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'M':
- case 'm': goto yy290;
- default: goto yy60;
+ case 'i': goto yy308;
+ default: goto yy62;
}
-yy221:
- yyaccept = 6;
+yy232:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'O':
- case 'o': goto yy292;
- default: goto yy60;
+ case 'o': goto yy309;
+ default: goto yy62;
}
-yy222:
- yyaccept = 6;
+yy233:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'S':
- case 's': goto yy293;
- default: goto yy60;
+ case 's': goto yy310;
+ default: goto yy62;
}
-yy223:
- yyaccept = 6;
+yy234:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy294;
- default: goto yy60;
+ case 'a': goto yy311;
+ default: goto yy62;
}
-yy224:
- yyaccept = 6;
+yy235:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy295;
- default: goto yy60;
+ case 'e': goto yy312;
+ default: goto yy62;
}
-yy225:
- yyaccept = 6;
+yy236:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'C':
- case 'c': goto yy297;
- default: goto yy60;
+ case 'c': goto yy314;
+ default: goto yy62;
}
-yy226:
- yyaccept = 6;
+yy237:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy298;
- default: goto yy60;
+ case 'e': goto yy315;
+ default: goto yy62;
}
-yy227:
- yyaccept = 6;
+yy238:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'D':
- case 'd': goto yy299;
- default: goto yy60;
+ case 'd': goto yy316;
+ default: goto yy62;
}
-yy228:
- yyaccept = 6;
+yy239:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy300;
- default: goto yy60;
+ case 'l': goto yy317;
+ default: goto yy62;
}
-yy229:
+yy240:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy318;
+ default: goto yy62;
+ }
+yy241:
yyaccept = 11;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy230;
- case '1': goto yy301;
- case '3': goto yy302;
- case '6': goto yy303;
- case '8': goto yy304;
- case 'V':
- case 'v': goto yy305;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy242;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy230:
-#line 390 "src/parser.re"
- { NEWTOKEN(PSI_T_INT); goto start; }
-#line 2654 "src/parser.c"
-yy231:
+yy242:
+#line 482 "src/parser.re"
+ { NEWTOKEN(PSI_T_LET); goto start; }
+#line 2861 "src/parser.c"
+yy243:
yyaccept = 12;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy232;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy244;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy232:
-#line 416 "src/parser.re"
- { NEWTOKEN(PSI_T_LET); goto start; }
-#line 2729 "src/parser.c"
-yy233:
+yy244:
+#line 481 "src/parser.re"
+ { NEWTOKEN(PSI_T_LIB); goto start; }
+#line 2936 "src/parser.c"
+yy245:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy319;
+ default: goto yy62;
+ }
+yy246:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy320;
+ default: goto yy62;
+ }
+yy247:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy322;
+ case 'V':
+ case 'v': goto yy323;
+ default: goto yy62;
+ }
+yy248:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'H':
+ case 'h': goto yy324;
+ default: goto yy62;
+ }
+yy249:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy325;
+ default: goto yy62;
+ }
+yy250:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy326;
+ default: goto yy62;
+ }
+yy251:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'U':
+ case 'u': goto yy327;
+ default: goto yy62;
+ }
+yy252:
yyaccept = 13;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy234;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy253;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy234:
-#line 415 "src/parser.re"
- { NEWTOKEN(PSI_T_LIB); goto start; }
-#line 2804 "src/parser.c"
-yy235:
- yyaccept = 6;
+yy253:
+#line 483 "src/parser.re"
+ { NEWTOKEN(PSI_T_SET); goto start; }
+#line 3068 "src/parser.c"
+yy254:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'G':
- case 'g': goto yy306;
- default: goto yy60;
+ case 'T':
+ case 't': goto yy328;
+ default: goto yy62;
}
-yy236:
- yyaccept = 6;
+yy255:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy329;
+ case 'L':
+ case 'l': goto yy330;
+ case 'V':
+ case 'v': goto yy331;
+ default: goto yy62;
+ }
+yy256:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'P':
+ case 'p': goto yy332;
+ default: goto yy62;
+ }
+yy257:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy334;
+ case 'B':
+ case 'b': goto yy335;
+ case 'F':
+ case 'f': goto yy336;
+ case 'I':
+ case 'i': goto yy337;
+ case 'O':
+ case 'o': goto yy338;
+ case 'S':
+ case 's': goto yy339;
+ default: goto yy62;
+ }
+yy258:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy308;
- default: goto yy60;
+ case 'e': goto yy340;
+ default: goto yy62;
}
-yy237:
- yyaccept = 6;
+yy259:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy342;
+ default: goto yy62;
+ }
+yy260:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy343;
+ default: goto yy62;
+ }
+yy261:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'L':
- case 'l': goto yy309;
- default: goto yy60;
+ case 'l': goto yy344;
+ default: goto yy62;
}
-yy238:
- yyaccept = 6;
+yy262:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy311;
- case 'V':
- case 'v': goto yy312;
- default: goto yy60;
+ case 's': goto yy346;
+ case 't': goto yy347;
+ default: goto yy62;
}
-yy239:
- yyaccept = 6;
+yy263:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'H':
- case 'h': goto yy313;
- default: goto yy60;
+ case 'x': goto yy348;
+ default: goto yy62;
}
-yy240:
- yyaccept = 6;
+yy264:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy314;
- default: goto yy60;
+ case 'n': goto yy349;
+ default: goto yy62;
}
-yy241:
- yyaccept = 6;
+yy265:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy315;
- default: goto yy60;
+ case 'e': goto yy350;
+ default: goto yy62;
}
-yy242:
- yyaccept = 6;
+yy266:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'U':
- case 'u': goto yy316;
- default: goto yy60;
+ case 'L': goto yy300;
+ case 'l': goto yy351;
+ default: goto yy62;
}
-yy243:
+yy267:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'r': goto yy353;
+ default: goto yy62;
+ }
+yy268:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 's': goto yy355;
+ default: goto yy62;
+ }
+yy269:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'b': goto yy356;
+ default: goto yy62;
+ }
+yy270:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'm': goto yy357;
+ default: goto yy62;
+ }
+yy271:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A': goto yy311;
+ case 'a': goto yy359;
+ default: goto yy62;
+ }
+yy272:
yyaccept = 14;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy244;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy244:
-#line 417 "src/parser.re"
- { NEWTOKEN(PSI_T_SET); goto start; }
-#line 2944 "src/parser.c"
-yy245:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy317;
- default: goto yy60;
- }
-yy246:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy318;
- default: goto yy60;
- }
-yy247:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy319;
- default: goto yy60;
- }
-yy248:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'I':
- case 'i': goto yy320;
- case 'L':
- case 'l': goto yy321;
- case 'U':
- case 'u': goto yy322;
+ case 0x7F: goto yy273;
case 'V':
- case 'v': goto yy323;
- default: goto yy60;
+ case 'v': goto yy318;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy249:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'P':
- case 'p': goto yy324;
- default: goto yy60;
- }
-yy250:
- yyaccept = 6;
+yy273:
+#line 451 "src/parser.re"
+ { NEWTOKEN(PSI_T_INT); goto start; }
+#line 3296 "src/parser.c"
+yy274:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy326;
- case 'B':
- case 'b': goto yy327;
- case 'F':
- case 'f': goto yy328;
- case 'I':
- case 'i': goto yy329;
- case 'O':
- case 'o': goto yy330;
- case 'S':
- case 's': goto yy331;
- default: goto yy60;
+ case 'e': goto yy360;
+ default: goto yy62;
}
-yy251:
- yyaccept = 6;
+yy275:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy332;
- default: goto yy60;
+ case 'g': goto yy362;
+ default: goto yy62;
}
-yy252:
- yyaccept = 6;
+yy276:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy334;
- default: goto yy60;
+ case 'g': goto yy364;
+ default: goto yy62;
}
-yy253:
- yyaccept = 6;
+yy277:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy335;
- default: goto yy60;
+ case 'r': goto yy365;
+ default: goto yy62;
}
-yy254:
- yyaccept = 6;
+yy278:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy336;
- default: goto yy60;
+ case 'n': goto yy366;
+ default: goto yy62;
}
-yy255:
- yyaccept = 6;
+yy279:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'O':
- case 'o': goto yy337;
- default: goto yy60;
+ case 'e': goto yy367;
+ default: goto yy62;
}
-yy256:
- yyaccept = 6;
+yy280:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'I':
- case 'i': goto yy338;
- default: goto yy60;
- }
-yy257:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'D':
- case 'd': goto yy339;
- default: goto yy60;
+ case 'i': goto yy329;
+ case 'L':
+ case 'l': goto yy330;
+ case 'V':
+ case 'v': goto yy331;
+ case 'u': goto yy368;
+ default: goto yy62;
}
-yy258:
- yyaccept = 6;
+yy281:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy341;
- default: goto yy60;
+ case 'e': goto yy369;
+ default: goto yy62;
}
-yy259:
- yyaccept = 6;
+yy282:
+ ++cur;
+ cur -= 1;
+#line 389 "src/parser.re"
+ { char_width = 1; }
+#line 3364 "src/parser.c"
+yy284:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy342;
- default: goto yy60;
+ case 'o': goto yy370;
+ default: goto yy62;
}
-yy260:
- yyaccept = 6;
+yy285:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 't': goto yy344;
- default: goto yy60;
+ case 'i': goto yy371;
+ default: goto yy62;
}
-yy261:
- yyaccept = 6;
+yy286:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'e': goto yy345;
- default: goto yy60;
+ case 'd': goto yy372;
+ default: goto yy62;
}
-yy262:
- yyaccept = 6;
+yy287:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'g': goto yy347;
- default: goto yy60;
- }
-yy263:
- yyaccept = 15;
- mrk = ++cur;
- if (lim <= cur) if (cur >= lim) goto done;;
- yych = *cur;
- switch (yych) {
- case '\'': goto yy190;
- default: goto yy103;
+ case 'a': goto yy374;
+ default: goto yy62;
}
-yy264:
+yy288:
++cur;
- cur = ctxmrk;
-#line 326 "src/parser.re"
+ cur -= 2;
+#line 384 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
-#line 3116 "src/parser.c"
-yy266:
+#line 3398 "src/parser.c"
+yy290:
++cur;
- cur = ctxmrk;
-#line 325 "src/parser.re"
+ cur -= 2;
+#line 383 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
-#line 3122 "src/parser.c"
-yy268:
+#line 3404 "src/parser.c"
+yy292:
++cur;
- cur = ctxmrk;
-#line 327 "src/parser.re"
+ cur -= 2;
+#line 385 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
-#line 3128 "src/parser.c"
-yy270:
+#line 3410 "src/parser.c"
+yy294:
++cur;
- cur = ctxmrk;
-#line 320 "src/parser.re"
+ cur -= 3;
+#line 378 "src/parser.re"
{ NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
-#line 3134 "src/parser.c"
-yy272:
+#line 3416 "src/parser.c"
+yy296:
++cur;
if ((lim - cur) < 3) if (cur >= lim) goto done;;
yych = *cur;
case 'c':
case 'd':
case 'e':
- case 'f': goto yy272;
+ case 'f': goto yy296;
case 'P':
- case 'p': goto yy119;
- default: goto yy106;
+ case 'p': goto yy127;
+ default: goto yy114;
}
-yy274:
- yyaccept = 6;
+yy298:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'Y':
- case 'y': goto yy348;
- default: goto yy60;
+ case 'y': goto yy375;
+ default: goto yy62;
}
-yy275:
- yyaccept = 6;
+yy299:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'A':
- case 'a': goto yy350;
- default: goto yy60;
+ case 'a': goto yy377;
+ default: goto yy62;
}
-yy276:
+yy300:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy378;
+ default: goto yy62;
+ }
+yy301:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy379;
+ case 'B':
+ case 'b': goto yy380;
+ case 'O':
+ case 'o': goto yy381;
+ default: goto yy62;
+ }
+yy302:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy382;
+ default: goto yy62;
+ }
+yy303:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy384;
+ default: goto yy62;
+ }
+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 yy148;
+ default: goto yy61;
+ }
+yy305:
+#line 461 "src/parser.re"
+ { NEWTOKEN(PSI_T_ELIF); goto start; }
+#line 3574 "src/parser.c"
+yy306:
yyaccept = 16;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy277;
- case 'V':
- case 'v': goto yy351;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy307;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy277:
-#line 387 "src/parser.re"
- { NEWTOKEN(PSI_T_BOOL); goto start; }
-#line 3258 "src/parser.c"
-yy278:
- yyaccept = 6;
+yy307:
+#line 460 "src/parser.re"
+ { NEWTOKEN(PSI_T_ELSE); goto start; }
+#line 3649 "src/parser.c"
+yy308:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy385;
+ default: goto yy62;
+ }
+yy309:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy387;
+ default: goto yy62;
+ }
+yy310:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy389;
+ default: goto yy62;
+ }
+yy311:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy352;
- case 'B':
- case 'b': goto yy353;
- case 'O':
- case 'o': goto yy354;
- default: goto yy60;
+ case 'T':
+ case 't': goto yy391;
+ default: goto yy62;
}
-yy279:
+yy312:
yyaccept = 17;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy280;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy313;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy280:
-#line 388 "src/parser.re"
- { NEWTOKEN(PSI_T_CHAR); goto start; }
-#line 3345 "src/parser.c"
-yy281:
- yyaccept = 6;
+yy313:
+#line 488 "src/parser.re"
+ { NEWTOKEN(PSI_T_FREE); goto start; }
+#line 3756 "src/parser.c"
+yy314:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy355;
- default: goto yy60;
+ case 't': goto yy392;
+ default: goto yy62;
}
-yy282:
- yyaccept = 6;
+yy315:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy357;
- default: goto yy60;
+ case 'F':
+ case 'f': goto yy393;
+ default: goto yy62;
}
-yy283:
- yyaccept = 6;
+yy316:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy359;
- default: goto yy60;
+ case 'E':
+ case 'e': goto yy395;
+ default: goto yy62;
}
-yy284:
- yyaccept = 6;
+yy317:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy360;
- default: goto yy60;
+ case 'U':
+ case 'u': goto yy396;
+ default: goto yy62;
}
-yy285:
+yy318:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy397;
+ default: goto yy62;
+ }
+yy319:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy398;
+ default: goto yy62;
+ }
+yy320:
yyaccept = 18;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy286;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy321;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy286:
-#line 372 "src/parser.re"
- { NEWTOKEN(PSI_T_ELIF); goto start; }
-#line 3452 "src/parser.c"
-yy287:
+yy321:
+#line 472 "src/parser.re"
+ { NEWTOKEN(PSI_T_NULL); goto start; }
+#line 3879 "src/parser.c"
+yy322:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy400;
+ default: goto yy62;
+ }
+yy323:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy401;
+ default: goto yy62;
+ }
+yy324:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'V':
+ case 'v': goto yy402;
+ default: goto yy62;
+ }
+yy325:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy403;
+ default: goto yy62;
+ }
+yy326:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy404;
+ default: goto yy62;
+ }
+yy327:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy405;
+ default: goto yy62;
+ }
+yy328:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy406;
+ default: goto yy62;
+ }
+yy329:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy407;
+ default: goto yy62;
+ }
+yy330:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy408;
+ default: goto yy62;
+ }
+yy331:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy409;
+ default: goto yy62;
+ }
+yy332:
yyaccept = 19;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy288;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy333;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy288:
-#line 371 "src/parser.re"
- { NEWTOKEN(PSI_T_ELSE); goto start; }
-#line 3527 "src/parser.c"
-yy289:
- yyaccept = 6;
+yy333:
+#line 489 "src/parser.re"
+ { NEWTOKEN(PSI_T_TEMP); goto start; }
+#line 4033 "src/parser.c"
+yy334:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'F':
- case 'f': goto yy361;
- default: goto yy60;
+ case 'R':
+ case 'r': goto yy410;
+ default: goto yy62;
}
-yy290:
+yy335:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'O':
+ case 'o': goto yy411;
+ default: goto yy62;
+ }
+yy336:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy412;
+ default: goto yy62;
+ }
+yy337:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy413;
+ default: goto yy62;
+ }
+yy338:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'B':
+ case 'b': goto yy414;
+ default: goto yy62;
+ }
+yy339:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy415;
+ default: goto yy62;
+ }
+yy340:
yyaccept = 20;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy291;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy291:
-#line 413 "src/parser.re"
- { NEWTOKEN(PSI_T_ENUM); goto start; }
-#line 3610 "src/parser.c"
-yy292:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy363;
- default: goto yy60;
+ case 0x7F: goto yy341;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy293:
- yyaccept = 6;
+yy341:
+#line 470 "src/parser.re"
+ { NEWTOKEN(PSI_T_TRUE); goto start; }
+#line 4156 "src/parser.c"
+yy342:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy365;
- default: goto yy60;
+ case 'F':
+ case 'f': goto yy416;
+ default: goto yy62;
}
-yy294:
- yyaccept = 6;
+yy343:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy367;
- default: goto yy60;
+ case 'I':
+ case 'i': goto yy418;
+ default: goto yy62;
}
-yy295:
+yy344:
yyaccept = 21;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy296;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy296:
-#line 421 "src/parser.re"
- { NEWTOKEN(PSI_T_FREE); goto start; }
-#line 3709 "src/parser.c"
-yy297:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy369;
- default: goto yy60;
- }
-yy298:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'F':
- case 'f': goto yy370;
- default: goto yy60;
- }
-yy299:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy372;
- default: goto yy60;
+ case 0x7F: goto yy345;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy300:
- yyaccept = 6;
+yy345:
+#line 498 "src/parser.re"
+ { NEWTOKEN(PSI_T_ZVAL); goto start; }
+#line 4247 "src/parser.c"
+yy346:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'U':
- case 'u': goto yy373;
- default: goto yy60;
+ case 'm': goto yy419;
+ default: goto yy62;
}
-yy301:
- yyaccept = 6;
+yy347:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '6': goto yy374;
- default: goto yy60;
+ case 't': goto yy420;
+ default: goto yy62;
}
-yy302:
- yyaccept = 6;
+yy348:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '2': goto yy375;
- default: goto yy60;
+ case 't': goto yy421;
+ default: goto yy62;
}
-yy303:
- yyaccept = 6;
+yy349:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '4': goto yy376;
- default: goto yy60;
+ case 'l': goto yy422;
+ default: goto yy62;
}
-yy304:
- yyaccept = 6;
+yy350:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy377;
- default: goto yy60;
+ case 's': goto yy423;
+ default: goto yy62;
}
-yy305:
- yyaccept = 6;
+yy351:
+ yyaccept = 22;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy378;
- default: goto yy60;
+ 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 'V':
+ case 'v': goto yy378;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy306:
- yyaccept = 22;
+yy352:
+#line 448 "src/parser.re"
+ { NEWTOKEN(PSI_T_BOOL); goto start; }
+#line 4359 "src/parser.c"
+yy353:
+ yyaccept = 23;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy307;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy354;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy307:
-#line 391 "src/parser.re"
- { NEWTOKEN(PSI_T_LONG); goto start; }
-#line 3852 "src/parser.c"
-yy308:
- yyaccept = 6;
+yy354:
+#line 449 "src/parser.re"
+ { NEWTOKEN(PSI_T_CHAR); goto start; }
+#line 4434 "src/parser.c"
+yy355:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'D':
- case 'd': goto yy379;
- default: goto yy60;
+ case 't': goto yy424;
+ default: goto yy62;
}
-yy309:
- yyaccept = 23;
+yy356:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'l': goto yy426;
+ default: goto yy62;
+ }
+yy357:
+ yyaccept = 24;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy310;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy310:
-#line 383 "src/parser.re"
- { NEWTOKEN(PSI_T_NULL); goto start; }
-#line 3935 "src/parser.c"
-yy311:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'C':
- case 'c': goto yy381;
- default: goto yy60;
- }
-yy312:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy382;
- default: goto yy60;
- }
-yy313:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'V':
- case 'v': goto yy383;
- default: goto yy60;
- }
-yy314:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy384;
- default: goto yy60;
- }
-yy315:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy385;
- default: goto yy60;
- }
-yy316:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy386;
- default: goto yy60;
- }
-yy317:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy387;
- default: goto yy60;
- }
-yy318:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy389;
- default: goto yy60;
- }
-yy319:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'I':
- case 'i': goto yy390;
- default: goto yy60;
- }
-yy320:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy391;
- default: goto yy60;
- }
-yy321:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy392;
- default: goto yy60;
- }
-yy322:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'C':
- case 'c': goto yy393;
- default: goto yy60;
+ case 0x7F: goto yy358;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy323:
- yyaccept = 6;
+yy358:
+#line 445 "src/parser.re"
+ { NEWTOKEN(PSI_T_ENUM); goto start; }
+#line 4523 "src/parser.c"
+yy359:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy394;
- default: goto yy60;
+ case 'T': goto yy391;
+ case 't': goto yy427;
+ default: goto yy62;
}
-yy324:
- yyaccept = 24;
+yy360:
+ yyaccept = 25;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy325;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy325:
-#line 422 "src/parser.re"
- { NEWTOKEN(PSI_T_TEMP); goto start; }
-#line 4113 "src/parser.c"
-yy326:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy395;
- default: goto yy60;
- }
-yy327:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy396;
- default: goto yy60;
- }
-yy328:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy397;
- default: goto yy60;
- }
-yy329:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy398;
- default: goto yy60;
- }
-yy330:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'B':
- case 'b': goto yy399;
- default: goto yy60;
- }
-yy331:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy400;
- default: goto yy60;
+ case 0x7F: goto yy361;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy332:
- yyaccept = 25;
+yy361:
+#line 441 "src/parser.re"
+ { NEWTOKEN(PSI_T_LINE); goto start; }
+#line 4606 "src/parser.c"
+yy362:
+ yyaccept = 26;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy333;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy363;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy333:
-#line 381 "src/parser.re"
- { NEWTOKEN(PSI_T_TRUE); goto start; }
-#line 4236 "src/parser.c"
-yy334:
- yyaccept = 6;
+yy363:
+#line 452 "src/parser.re"
+ { NEWTOKEN(PSI_T_LONG); goto start; }
+#line 4681 "src/parser.c"
+yy364:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'D':
- case 'd': goto yy401;
- default: goto yy60;
+ case 'm': goto yy429;
+ default: goto yy62;
}
-yy335:
- yyaccept = 6;
+yy365:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '1': goto yy402;
- case '3': goto yy403;
- case '6': goto yy404;
- case '8': goto yy405;
- default: goto yy60;
+ case 't': goto yy430;
+ default: goto yy62;
}
-yy336:
- yyaccept = 6;
+yy366:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'F':
- case 'f': goto yy406;
- default: goto yy60;
+ case 'e': goto yy432;
+ default: goto yy62;
}
-yy337:
- yyaccept = 6;
+yy367:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy408;
- default: goto yy60;
+ case 'o': goto yy433;
+ default: goto yy62;
}
-yy338:
- yyaccept = 6;
+yy368:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'G':
- case 'g': goto yy410;
- default: goto yy60;
+ case 'c': goto yy434;
+ default: goto yy62;
}
-yy339:
- yyaccept = 26;
+yy369:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'd': goto yy435;
+ default: goto yy62;
+ }
+yy370:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy436;
+ default: goto yy62;
+ }
+yy371:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'g': goto yy438;
+ default: goto yy62;
+ }
+yy372:
+ yyaccept = 27;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy340;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy373;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy340:
-#line 386 "src/parser.re"
+yy373:
+#line 447 "src/parser.re"
{ NEWTOKEN(PSI_T_VOID); goto start; }
-#line 4353 "src/parser.c"
-yy341:
- yyaccept = 6;
+#line 4812 "src/parser.c"
+yy374:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'I':
- case 'i': goto yy411;
- default: goto yy60;
+ case 't': goto yy439;
+ default: goto yy62;
}
-yy342:
- yyaccept = 27;
+yy375:
+ yyaccept = 28;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy343;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy376;
+ case '\\': goto yy148;
+ default: goto yy61;
+ }
+yy376:
+#line 476 "src/parser.re"
+ { NEWTOKEN(PSI_T_ARRAY); goto start; }
+#line 4894 "src/parser.c"
+yy377:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy440;
+ default: goto yy62;
}
-yy343:
-#line 431 "src/parser.re"
- { NEWTOKEN(PSI_T_ZVAL); goto start; }
-#line 4436 "src/parser.c"
-yy344:
- yyaccept = 6;
+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 't': goto yy412;
- default: goto yy60;
+ case 'B':
+ case 'b': goto yy443;
+ default: goto yy62;
}
-yy345:
- yyaccept = 28;
+yy380:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy444;
+ default: goto yy62;
+ }
+yy381:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy445;
+ default: goto yy62;
+ }
+yy382:
+ yyaccept = 29;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy346;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy383;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy346:
-#line 367 "src/parser.re"
- { NEWTOKEN(PSI_T_ONCE); goto start; }
-#line 4518 "src/parser.c"
-yy347:
- yyaccept = 6;
+yy383:
+#line 499 "src/parser.re"
+ { NEWTOKEN(PSI_T_COUNT); goto start; }
+#line 5009 "src/parser.c"
+yy384:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'm': goto yy413;
- default: goto yy60;
+ case 'E':
+ case 'e': goto yy447;
+ default: goto yy62;
}
-yy348:
- yyaccept = 29;
+yy385:
+ yyaccept = 30;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy349;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy349:
-#line 405 "src/parser.re"
- { NEWTOKEN(PSI_T_ARRAY); goto start; }
-#line 4600 "src/parser.c"
-yy350:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy414;
- default: goto yy60;
- }
-yy351:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy416;
- default: goto yy60;
- }
-yy352:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'B':
- case 'b': goto yy417;
- default: goto yy60;
- }
-yy353:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy418;
- default: goto yy60;
- }
-yy354:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'C':
- case 'c': goto yy419;
- default: goto yy60;
+ case 0x7F: goto yy386;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy355:
- yyaccept = 30;
+yy386:
+#line 462 "src/parser.re"
+ { NEWTOKEN(PSI_T_ENDIF); goto start; }
+#line 5092 "src/parser.c"
+yy387:
+ yyaccept = 31;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy356;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy388;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy356:
-#line 414 "src/parser.re"
- { NEWTOKEN(PSI_T_CONST); goto start; }
-#line 4715 "src/parser.c"
-yy357:
- yyaccept = 31;
+yy388:
+#line 467 "src/parser.re"
+ { NEWTOKEN(PSI_T_ERROR); goto start; }
+#line 5167 "src/parser.c"
+yy389:
+ yyaccept = 32;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy358;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy390;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy358:
-#line 432 "src/parser.re"
- { NEWTOKEN(PSI_T_COUNT); goto start; }
-#line 4790 "src/parser.c"
-yy359:
- yyaccept = 6;
+yy390:
+#line 471 "src/parser.re"
+ { NEWTOKEN(PSI_T_FALSE); goto start; }
+#line 5242 "src/parser.c"
+yy391:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy421;
- default: goto yy60;
+ case 'V':
+ case 'v': goto yy449;
+ default: goto yy62;
}
-yy360:
- yyaccept = 6;
+yy392:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy423;
- default: goto yy60;
+ case 'I':
+ case 'i': goto yy450;
+ default: goto yy62;
}
-yy361:
- yyaccept = 32;
+yy393:
+ yyaccept = 33;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy362;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy394;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy362:
-#line 373 "src/parser.re"
- { NEWTOKEN(PSI_T_ENDIF); goto start; }
-#line 4881 "src/parser.c"
-yy363:
- yyaccept = 33;
+yy394:
+#line 458 "src/parser.re"
+ { NEWTOKEN(PSI_T_IFDEF); goto start; }
+#line 5333 "src/parser.c"
+yy395:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'F':
+ case 'f': goto yy451;
+ default: goto yy62;
+ }
+yy396:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'D':
+ case 'd': goto yy453;
+ default: goto yy62;
+ }
+yy397:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy454;
+ default: goto yy62;
+ }
+yy398:
+ yyaccept = 34;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy364;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy399;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy364:
-#line 378 "src/parser.re"
- { NEWTOKEN(PSI_T_ERROR); goto start; }
-#line 4956 "src/parser.c"
-yy365:
- yyaccept = 34;
+yy399:
+#line 473 "src/parser.re"
+ { NEWTOKEN(PSI_T_MIXED); goto start; }
+#line 5432 "src/parser.c"
+yy400:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy456;
+ default: goto yy62;
+ }
+yy401:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy458;
+ default: goto yy62;
+ }
+yy402:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy460;
+ default: goto yy62;
+ }
+yy403:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy461;
+ default: goto yy62;
+ }
+yy404:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'S':
+ case 's': goto yy462;
+ default: goto yy62;
+ }
+yy405:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy463;
+ default: goto yy62;
+ }
+yy406:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy465;
+ default: goto yy62;
+ }
+yy407:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'G':
+ case 'g': goto yy467;
+ default: goto yy62;
+ }
+yy408:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy469;
+ default: goto yy62;
+ }
+yy409:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy471;
+ default: goto yy62;
+ }
+yy410:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy473;
+ default: goto yy62;
+ }
+yy411:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'O':
+ case 'o': goto yy474;
+ default: goto yy62;
+ }
+yy412:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'O':
+ case 'o': goto yy475;
+ default: goto yy62;
+ }
+yy413:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy476;
+ default: goto yy62;
+ }
+yy414:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'J':
+ case 'j': goto yy478;
+ default: goto yy62;
+ }
+yy415:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy479;
+ default: goto yy62;
+ }
+yy416:
+ yyaccept = 35;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy366;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy417;
+ case '\\': goto yy148;
+ default: goto yy61;
+ }
+yy417:
+#line 465 "src/parser.re"
+ { NEWTOKEN(PSI_T_UNDEF); goto start; }
+#line 5635 "src/parser.c"
+yy418:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy480;
+ default: goto yy62;
}
-yy366:
-#line 382 "src/parser.re"
- { NEWTOKEN(PSI_T_FALSE); goto start; }
-#line 5031 "src/parser.c"
-yy367:
- yyaccept = 35;
+yy419:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy481;
+ default: goto yy62;
+ }
+yy420:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'r': goto yy482;
+ default: goto yy62;
+ }
+yy421:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy483;
+ default: goto yy62;
+ }
+yy422:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'i': goto yy484;
+ default: goto yy62;
+ }
+yy423:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 't': goto yy485;
+ default: goto yy62;
+ }
+yy424:
+ yyaccept = 36;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy368;
- case 'V':
- case 'v': goto yy425;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy425;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy368:
-#line 392 "src/parser.re"
- { NEWTOKEN(PSI_T_FLOAT); goto start; }
-#line 5108 "src/parser.c"
-yy369:
- yyaccept = 6;
+yy425:
+#line 446 "src/parser.re"
+ { NEWTOKEN(PSI_T_CONST); goto start; }
+#line 5753 "src/parser.c"
+yy426:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'I':
- case 'i': goto yy426;
- default: goto yy60;
+ case 'e': goto yy486;
+ default: goto yy62;
}
-yy370:
- yyaccept = 36;
+yy427:
+ yyaccept = 37;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy371;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy371:
-#line 369 "src/parser.re"
- { NEWTOKEN(PSI_T_IFDEF); goto start; }
-#line 5191 "src/parser.c"
-yy372:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'F':
- case 'f': goto yy427;
- default: goto yy60;
- }
-yy373:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'D':
- case 'd': goto yy429;
- default: goto yy60;
- }
-yy374:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy430;
- default: goto yy60;
- }
-yy375:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy431;
- default: goto yy60;
- }
-yy376:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy432;
- default: goto yy60;
- }
-yy377:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy433;
- default: goto yy60;
+ case 0x7F: goto yy428;
+ case 'V':
+ case 'v': goto yy449;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy378:
- yyaccept = 6;
+yy428:
+#line 453 "src/parser.re"
+ { NEWTOKEN(PSI_T_FLOAT); goto start; }
+#line 5837 "src/parser.c"
+yy429:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy435;
- default: goto yy60;
+ case 'a': goto yy488;
+ default: goto yy62;
}
-yy379:
- yyaccept = 37;
+yy430:
+ yyaccept = 38;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy380;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy380:
-#line 384 "src/parser.re"
- { NEWTOKEN(PSI_T_MIXED); goto start; }
-#line 5319 "src/parser.c"
-yy381:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy437;
- default: goto yy60;
- }
-yy382:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy439;
- default: goto yy60;
+ case 0x7F: goto yy431;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy383:
- yyaccept = 6;
+yy431:
+#line 450 "src/parser.re"
+ { NEWTOKEN(PSI_T_SHORT); goto start; }
+#line 5919 "src/parser.c"
+yy432:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy441;
- default: goto yy60;
+ case 'd': goto yy490;
+ default: goto yy62;
}
-yy384:
- yyaccept = 6;
+yy433:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy442;
- default: goto yy60;
+ case 'f': goto yy492;
+ default: goto yy62;
}
-yy385:
- yyaccept = 6;
+yy434:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'S':
- case 's': goto yy443;
- default: goto yy60;
+ case 't': goto yy494;
+ default: goto yy62;
}
-yy386:
- yyaccept = 6;
+yy435:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy444;
- default: goto yy60;
+ case 'e': goto yy496;
+ default: goto yy62;
}
-yy387:
- yyaccept = 38;
+yy436:
+ yyaccept = 39;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy388;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy388:
-#line 389 "src/parser.re"
- { NEWTOKEN(PSI_T_SHORT); goto start; }
-#line 5442 "src/parser.c"
-yy389:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'D':
- case 'd': goto yy446;
- default: goto yy60;
- }
-yy390:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'C':
- case 'c': goto yy448;
- default: goto yy60;
- }
-yy391:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'G':
- case 'g': goto yy450;
- default: goto yy60;
- }
-yy392:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy452;
- default: goto yy60;
- }
-yy393:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy454;
- default: goto yy60;
- }
-yy394:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy456;
- default: goto yy60;
- }
-yy395:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy458;
- default: goto yy60;
+ case 0x7F: goto yy437;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy396:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy459;
- default: goto yy60;
- }
-yy397:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy460;
- default: goto yy60;
- }
-yy398:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy461;
- default: goto yy60;
- }
-yy399:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'J':
- case 'j': goto yy463;
- default: goto yy60;
- }
-yy400:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy464;
- default: goto yy60;
- }
-yy401:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy465;
- default: goto yy60;
- }
-yy402:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '6': goto yy466;
- default: goto yy60;
- }
-yy403:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '2': goto yy467;
- default: goto yy60;
- }
-yy404:
- yyaccept = 6;
+yy437:
+#line 444 "src/parser.re"
+ { NEWTOKEN(PSI_T_UNION); goto start; }
+#line 6022 "src/parser.c"
+yy438:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '4': goto yy468;
- default: goto yy60;
+ case 'n': goto yy497;
+ default: goto yy62;
}
-yy405:
- yyaccept = 6;
+yy439:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy469;
- default: goto yy60;
+ case 'i': goto yy498;
+ default: goto yy62;
}
-yy406:
- yyaccept = 39;
+yy440:
+ yyaccept = 40;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy407;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy441;
+ case '\\': goto yy148;
+ default: goto yy61;
+ }
+yy441:
+#line 496 "src/parser.re"
+ { NEWTOKEN(PSI_T_ARRVAL); goto start; }
+#line 6111 "src/parser.c"
+yy442:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy499;
+ default: goto yy62;
}
-yy407:
-#line 376 "src/parser.re"
- { NEWTOKEN(PSI_T_UNDEF); goto start; }
-#line 5649 "src/parser.c"
-yy408:
- yyaccept = 40;
+yy443:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy501;
+ default: goto yy62;
+ }
+yy444:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy502;
+ default: goto yy62;
+ }
+yy445:
+ yyaccept = 41;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy409;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy409:
-#line 412 "src/parser.re"
- { NEWTOKEN(PSI_T_UNION); goto start; }
-#line 5724 "src/parser.c"
-yy410:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy470;
- default: goto yy60;
- }
-yy411:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy471;
- default: goto yy60;
- }
-yy412:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'r': goto yy472;
- default: goto yy60;
- }
-yy413:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'a': goto yy473;
- default: goto yy60;
+ case 0x7F: goto yy446;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy414:
- yyaccept = 41;
+yy446:
+#line 500 "src/parser.re"
+ { NEWTOKEN(PSI_T_CALLOC); goto start; }
+#line 6210 "src/parser.c"
+yy447:
+ yyaccept = 42;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy415;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy415:
-#line 429 "src/parser.re"
- { NEWTOKEN(PSI_T_ARRVAL); goto start; }
-#line 5829 "src/parser.c"
-yy416:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy475;
- default: goto yy60;
+ case 0x7F: goto yy448;
+ case 'D':
+ case 'd': goto yy503;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy417:
- yyaccept = 6;
+yy448:
+#line 463 "src/parser.re"
+ { NEWTOKEN(PSI_T_DEFINE); goto start; }
+#line 6287 "src/parser.c"
+yy449:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy477;
- default: goto yy60;
+ case 'A':
+ case 'a': goto yy505;
+ default: goto yy62;
}
-yy418:
- yyaccept = 6;
+yy450:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'C':
- case 'c': goto yy478;
- default: goto yy60;
+ case 'O':
+ case 'o': goto yy506;
+ default: goto yy62;
}
-yy419:
- yyaccept = 42;
+yy451:
+ yyaccept = 43;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy420;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy452;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy420:
-#line 433 "src/parser.re"
- { NEWTOKEN(PSI_T_CALLOC); goto start; }
-#line 5928 "src/parser.c"
-yy421:
- yyaccept = 43;
+yy452:
+#line 459 "src/parser.re"
+ { NEWTOKEN(PSI_T_IFNDEF); goto start; }
+#line 6378 "src/parser.c"
+yy453:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy507;
+ default: goto yy62;
+ }
+yy454:
+ yyaccept = 44;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy422;
- case 'D':
- case 'd': goto yy479;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy455;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy422:
-#line 374 "src/parser.re"
- { NEWTOKEN(PSI_T_DEFINE); goto start; }
-#line 6005 "src/parser.c"
-yy423:
- yyaccept = 44;
+yy455:
+#line 493 "src/parser.re"
+ { NEWTOKEN(PSI_T_INTVAL); goto start; }
+#line 6461 "src/parser.c"
+yy456:
+ yyaccept = 45;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy424;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy424:
-#line 393 "src/parser.re"
- { NEWTOKEN(PSI_T_DOUBLE); goto start; }
-#line 6080 "src/parser.c"
-yy425:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'A':
- case 'a': goto yy481;
- default: goto yy60;
- }
-yy426:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'O':
- case 'o': goto yy482;
- default: goto yy60;
+ case 0x7F: goto yy457;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy427:
- yyaccept = 45;
+yy457:
+#line 477 "src/parser.re"
+ { NEWTOKEN(PSI_T_OBJECT); goto start; }
+#line 6536 "src/parser.c"
+yy458:
+ yyaccept = 46;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy428;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy428:
-#line 370 "src/parser.re"
- { NEWTOKEN(PSI_T_IFNDEF); goto start; }
-#line 6171 "src/parser.c"
-yy429:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy483;
- default: goto yy60;
+ case 0x7F: goto yy459;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy430:
- yyaccept = 6;
+yy459:
+#line 497 "src/parser.re"
+ { NEWTOKEN(PSI_T_OBJVAL); goto start; }
+#line 6611 "src/parser.c"
+yy460:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy485;
- default: goto yy60;
+ case 'L':
+ case 'l': goto yy509;
+ default: goto yy62;
}
-yy431:
- yyaccept = 6;
+yy461:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy487;
- default: goto yy60;
+ case 'S':
+ case 's': goto yy511;
+ default: goto yy62;
}
-yy432:
- yyaccept = 6;
+yy462:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy489;
- default: goto yy60;
+ case 'S':
+ case 's': goto yy512;
+ default: goto yy62;
}
-yy433:
- yyaccept = 46;
+yy463:
+ yyaccept = 47;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy434;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy464;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy434:
-#line 394 "src/parser.re"
- { NEWTOKEN(PSI_T_INT8); goto start; }
-#line 6278 "src/parser.c"
-yy435:
- yyaccept = 47;
+yy464:
+#line 486 "src/parser.re"
+ { NEWTOKEN(PSI_T_RETURN); goto start; }
+#line 6710 "src/parser.c"
+yy465:
+ yyaccept = 48;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy436;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy466;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy436:
-#line 426 "src/parser.re"
- { NEWTOKEN(PSI_T_INTVAL); goto start; }
-#line 6353 "src/parser.c"
-yy437:
- yyaccept = 48;
+yy466:
+#line 479 "src/parser.re"
+ { NEWTOKEN(PSI_T_STATIC); goto start; }
+#line 6785 "src/parser.c"
+yy467:
+ yyaccept = 49;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy438;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy468;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy438:
-#line 406 "src/parser.re"
- { NEWTOKEN(PSI_T_OBJECT); goto start; }
-#line 6428 "src/parser.c"
-yy439:
- yyaccept = 49;
+yy468:
+#line 475 "src/parser.re"
+ { NEWTOKEN(PSI_T_STRING); goto start; }
+#line 6860 "src/parser.c"
+yy469:
+ yyaccept = 50;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy440;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy440:
-#line 430 "src/parser.re"
- { NEWTOKEN(PSI_T_OBJVAL); goto start; }
-#line 6503 "src/parser.c"
-yy441:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'L':
- case 'l': goto yy491;
- default: goto yy60;
- }
-yy442:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'S':
- case 's': goto yy493;
- default: goto yy60;
- }
-yy443:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'S':
- case 's': goto yy494;
- default: goto yy60;
+ case 0x7F: goto yy470;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy444:
- yyaccept = 50;
+yy470:
+#line 490 "src/parser.re"
+ { NEWTOKEN(PSI_T_STRLEN); goto start; }
+#line 6935 "src/parser.c"
+yy471:
+ yyaccept = 51;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy445;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy472;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy445:
-#line 420 "src/parser.re"
- { NEWTOKEN(PSI_T_RETURN); goto start; }
-#line 6602 "src/parser.c"
-yy446:
- yyaccept = 51;
+yy472:
+#line 491 "src/parser.re"
+ { NEWTOKEN(PSI_T_STRVAL); goto start; }
+#line 7010 "src/parser.c"
+yy473:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy513;
+ default: goto yy62;
+ }
+yy474:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy514;
+ default: goto yy62;
+ }
+yy475:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'A':
+ case 'a': goto yy516;
+ default: goto yy62;
+ }
+yy476:
+ yyaccept = 52;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy447;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy477;
+ case '\\': goto yy148;
+ default: goto yy61;
+ }
+yy477:
+#line 504 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_INT); goto start; }
+#line 7109 "src/parser.c"
+yy478:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy517;
+ default: goto yy62;
}
-yy447:
-#line 403 "src/parser.re"
- { NEWTOKEN(PSI_T_SIGNED); goto start; }
-#line 6677 "src/parser.c"
-yy448:
- yyaccept = 52;
+yy479:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'I':
+ case 'i': goto yy518;
+ default: goto yy62;
+ }
+yy480:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'G':
+ case 'g': goto yy519;
+ default: goto yy62;
+ }
+yy481:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy521;
+ default: goto yy62;
+ }
+yy482:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'i': goto yy523;
+ default: goto yy62;
+ }
+yy483:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy524;
+ default: goto yy62;
+ }
+yy484:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'n': goto yy525;
+ default: goto yy62;
+ }
+yy485:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'r': goto yy526;
+ default: goto yy62;
+ }
+yy486:
+ yyaccept = 53;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy449;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy487;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy449:
-#line 408 "src/parser.re"
- { NEWTOKEN(PSI_T_STATIC); goto start; }
-#line 6752 "src/parser.c"
-yy450:
- yyaccept = 53;
+yy487:
+#line 454 "src/parser.re"
+ { NEWTOKEN(PSI_T_DOUBLE); goto start; }
+#line 7243 "src/parser.c"
+yy488:
+ yyaccept = 54;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy451;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy489;
+ case '\\': goto yy148;
+ default: goto yy527;
}
-yy451:
-#line 404 "src/parser.re"
- { NEWTOKEN(PSI_T_STRING); goto start; }
-#line 6827 "src/parser.c"
-yy452:
- yyaccept = 54;
+yy489:
+#line 433 "src/parser.re"
+ { NEWTOKEN(PSI_T_PRAGMA); goto start; }
+#line 7318 "src/parser.c"
+yy490:
+ yyaccept = 55;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy453;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy491;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy453:
-#line 423 "src/parser.re"
- { NEWTOKEN(PSI_T_STRLEN); goto start; }
-#line 6902 "src/parser.c"
-yy454:
- yyaccept = 55;
+yy491:
+#line 456 "src/parser.re"
+ { NEWTOKEN(PSI_T_SIGNED); goto start; }
+#line 7393 "src/parser.c"
+yy492:
+ yyaccept = 56;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy455;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy493;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy455:
-#line 411 "src/parser.re"
- { NEWTOKEN(PSI_T_STRUCT); goto start; }
-#line 6977 "src/parser.c"
-yy456:
- yyaccept = 56;
+yy493:
+#line 440 "src/parser.re"
+ { NEWTOKEN(PSI_T_SIZEOF); goto start; }
+#line 7468 "src/parser.c"
+yy494:
+ yyaccept = 57;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy457;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy495;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy457:
-#line 424 "src/parser.re"
- { NEWTOKEN(PSI_T_STRVAL); goto start; }
-#line 7052 "src/parser.c"
-yy458:
- yyaccept = 6;
+yy495:
+#line 443 "src/parser.re"
+ { NEWTOKEN(PSI_T_STRUCT); goto start; }
+#line 7543 "src/parser.c"
+yy496:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy495;
- default: goto yy60;
+ case 'f': goto yy529;
+ default: goto yy62;
}
-yy459:
- yyaccept = 6;
+yy497:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy496;
- default: goto yy60;
+ case 'e': goto yy531;
+ default: goto yy62;
}
-yy460:
- yyaccept = 6;
+yy498:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'A':
- case 'a': goto yy498;
- default: goto yy60;
+ case 'l': goto yy532;
+ default: goto yy62;
}
-yy461:
- yyaccept = 57;
+yy499:
+ yyaccept = 58;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy462;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy462:
-#line 437 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_INT); goto start; }
-#line 7151 "src/parser.c"
-yy463:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy499;
- default: goto yy60;
- }
-yy464:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'I':
- case 'i': goto yy500;
- default: goto yy60;
- }
-yy465:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'F':
- case 'f': goto yy501;
- default: goto yy60;
- }
-yy466:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy503;
- default: goto yy60;
- }
-yy467:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy504;
- default: goto yy60;
- }
-yy468:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy505;
- default: goto yy60;
- }
-yy469:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy506;
- default: goto yy60;
+ case 0x7F: goto yy500;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy470:
- yyaccept = 6;
+yy500:
+#line 495 "src/parser.re"
+ { NEWTOKEN(PSI_T_BOOLVAL); goto start; }
+#line 7639 "src/parser.c"
+yy501:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'E':
- case 'e': goto yy508;
- default: goto yy60;
- }
-yy471:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'G':
- case 'g': goto yy509;
- default: goto yy60;
+ case 'e': goto yy533;
+ default: goto yy62;
}
-yy472:
- yyaccept = 6;
+yy502:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'i': goto yy511;
- default: goto yy60;
+ case 'K':
+ case 'k': goto yy535;
+ default: goto yy62;
}
-yy473:
- yyaccept = 58;
+yy503:
+ yyaccept = 59;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy474;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy504;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy474:
-#line 366 "src/parser.re"
- { NEWTOKEN(PSI_T_PRAGMA); goto start; }
-#line 7302 "src/parser.c"
-yy475:
- yyaccept = 59;
+yy504:
+#line 464 "src/parser.re"
+ { NEWTOKEN(PSI_T_DEFINED); goto start; }
+#line 7730 "src/parser.c"
+yy505:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'L':
+ case 'l': goto yy537;
+ default: goto yy62;
+ }
+yy506:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy539;
+ default: goto yy62;
+ }
+yy507:
+ yyaccept = 60;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy476;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy508;
+ case '\\': goto yy148;
+ case '_': goto yy541;
+ default: goto yy61;
}
-yy476:
-#line 428 "src/parser.re"
- { NEWTOKEN(PSI_T_BOOLVAL); goto start; }
-#line 7377 "src/parser.c"
-yy477:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy512;
- default: goto yy60;
- }
-yy478:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'K':
- case 'k': goto yy514;
- default: goto yy60;
- }
-yy479:
- yyaccept = 60;
+yy508:
+#line 468 "src/parser.re"
+ { NEWTOKEN(PSI_T_INCLUDE); goto start; }
+#line 7822 "src/parser.c"
+yy509:
+ yyaccept = 61;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy480;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy510;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy480:
-#line 375 "src/parser.re"
- { NEWTOKEN(PSI_T_DEFINED); goto start; }
-#line 7468 "src/parser.c"
-yy481:
- yyaccept = 6;
+yy510:
+#line 492 "src/parser.re"
+ { NEWTOKEN(PSI_T_PATHVAL); goto start; }
+#line 7897 "src/parser.c"
+yy511:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'L':
- case 'l': goto yy516;
- default: goto yy60;
+ case 'S':
+ case 's': goto yy542;
+ default: goto yy62;
}
-yy482:
- yyaccept = 6;
+yy512:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'N':
- case 'n': goto yy518;
- default: goto yy60;
+ case 'E':
+ case 'e': goto yy543;
+ default: goto yy62;
}
-yy483:
- yyaccept = 61;
+yy513:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'Y':
+ case 'y': goto yy544;
+ default: goto yy62;
+ }
+yy514:
+ yyaccept = 62;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy484;
- case '\\': goto yy138;
- case '_': goto yy520;
- default: goto yy59;
+ case 0x7F: goto yy515;
+ case '\\': goto yy148;
+ default: goto yy61;
+ }
+yy515:
+#line 506 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_BOOL); goto start; }
+#line 7996 "src/parser.c"
+yy516:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy546;
+ default: goto yy62;
+ }
+yy517:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'C':
+ case 'c': goto yy548;
+ default: goto yy62;
}
-yy484:
-#line 379 "src/parser.re"
- { NEWTOKEN(PSI_T_INCLUDE); goto start; }
-#line 7560 "src/parser.c"
-yy485:
- yyaccept = 62;
+yy518:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'N':
+ case 'n': goto yy549;
+ default: goto yy62;
+ }
+yy519:
+ yyaccept = 63;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy486;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy520;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy486:
-#line 396 "src/parser.re"
- { NEWTOKEN(PSI_T_INT16); goto start; }
-#line 7635 "src/parser.c"
-yy487:
- yyaccept = 63;
+yy520:
+#line 466 "src/parser.re"
+ { NEWTOKEN(PSI_T_WARNING); goto start; }
+#line 8095 "src/parser.c"
+yy521:
+ yyaccept = 64;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy488;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy522;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy488:
-#line 398 "src/parser.re"
- { NEWTOKEN(PSI_T_INT32); goto start; }
-#line 7710 "src/parser.c"
-yy489:
- yyaccept = 64;
+yy522:
+#line 438 "src/parser.re"
+ { NEWTOKEN(PSI_T_CPP_ASM); goto start; }
+#line 8170 "src/parser.c"
+yy523:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'b': goto yy550;
+ default: goto yy62;
+ }
+yy524:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 's': goto yy551;
+ default: goto yy62;
+ }
+yy525:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'e': goto yy552;
+ default: goto yy62;
+ }
+yy526:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
+ case 'i': goto yy554;
+ default: goto yy62;
+ }
+yy527:
+ yyaccept = 5;
+ mrk = ++cur;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
case 0x00:
case 0x01:
case 0x02:
case '|':
case '}':
case '~':
- case 0x7F: goto yy490;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy55;
+ case '\\': goto yy148;
+ case 'o': goto yy555;
+ default: goto yy527;
}
-yy490:
-#line 400 "src/parser.re"
- { NEWTOKEN(PSI_T_INT64); goto start; }
-#line 7785 "src/parser.c"
-yy491:
+yy529:
yyaccept = 65;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy492;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy492:
-#line 425 "src/parser.re"
- { NEWTOKEN(PSI_T_PATHVAL); goto start; }
-#line 7860 "src/parser.c"
-yy493:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'S':
- case 's': goto yy521;
- default: goto yy60;
+ case 0x7F: goto yy530;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy494:
- yyaccept = 6;
+yy530:
+#line 442 "src/parser.re"
+ { NEWTOKEN(PSI_T_TYPEDEF); goto start; }
+#line 8347 "src/parser.c"
+yy531:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'E':
- case 'e': goto yy522;
- default: goto yy60;
+ case 'd': goto yy557;
+ default: goto yy62;
}
-yy495:
- yyaccept = 6;
+yy532:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'Y':
- case 'y': goto yy523;
- default: goto yy60;
+ case 'e': goto yy559;
+ default: goto yy62;
}
-yy496:
+yy533:
yyaccept = 66;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy497;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy497:
-#line 439 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_BOOL); goto start; }
-#line 7959 "src/parser.c"
-yy498:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy525;
- default: goto yy60;
- }
-yy499:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'C':
- case 'c': goto yy527;
- default: goto yy60;
- }
-yy500:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy528;
- default: goto yy60;
+ case 0x7F: goto yy534;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy501:
+yy534:
+#line 474 "src/parser.re"
+ { NEWTOKEN(PSI_T_CALLABLE); goto start; }
+#line 8436 "src/parser.c"
+yy535:
yyaccept = 67;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy502;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy502:
-#line 410 "src/parser.re"
- { NEWTOKEN(PSI_T_TYPEDEF); goto start; }
-#line 8058 "src/parser.c"
-yy503:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy529;
- default: goto yy60;
- }
-yy504:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy531;
- default: goto yy60;
- }
-yy505:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'T':
- case 't': goto yy533;
- default: goto yy60;
+ case 0x7F: goto yy536;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy506:
+yy536:
+#line 478 "src/parser.re"
+ { NEWTOKEN(PSI_T_CALLBACK); goto start; }
+#line 8511 "src/parser.c"
+yy537:
yyaccept = 68;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy507;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy507:
-#line 395 "src/parser.re"
- { NEWTOKEN(PSI_T_UINT8); goto start; }
-#line 8157 "src/parser.c"
-yy508:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'D':
- case 'd': goto yy535;
- default: goto yy60;
+ case 0x7F: goto yy538;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy509:
+yy538:
+#line 494 "src/parser.re"
+ { NEWTOKEN(PSI_T_FLOATVAL); goto start; }
+#line 8586 "src/parser.c"
+yy539:
yyaccept = 69;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy510;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy540;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy510:
-#line 377 "src/parser.re"
- { NEWTOKEN(PSI_T_WARNING); goto start; }
-#line 8240 "src/parser.c"
-yy511:
- yyaccept = 6;
+yy540:
+#line 480 "src/parser.re"
+ { NEWTOKEN(PSI_T_FUNCTION); goto start; }
+#line 8661 "src/parser.c"
+yy541:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'b': goto yy537;
- default: goto yy60;
+ case 'N':
+ case 'n': goto yy561;
+ default: goto yy62;
}
-yy512:
+yy542:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'E':
+ case 'e': goto yy562;
+ default: goto yy62;
+ }
+yy543:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'R':
+ case 'r': goto yy563;
+ default: goto yy62;
+ }
+yy544:
yyaccept = 70;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy513;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy545;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy513:
-#line 385 "src/parser.re"
- { NEWTOKEN(PSI_T_CALLABLE); goto start; }
-#line 8322 "src/parser.c"
-yy514:
+yy545:
+#line 502 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_ARRAY); goto start; }
+#line 8760 "src/parser.c"
+yy546:
yyaccept = 71;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy515;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy547;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy515:
-#line 407 "src/parser.re"
- { NEWTOKEN(PSI_T_CALLBACK); goto start; }
-#line 8397 "src/parser.c"
-yy516:
+yy547:
+#line 505 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_FLOAT); goto start; }
+#line 8835 "src/parser.c"
+yy548:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy564;
+ default: goto yy62;
+ }
+yy549:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'G':
+ case 'g': goto yy566;
+ default: goto yy62;
+ }
+yy550:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'u': goto yy568;
+ default: goto yy62;
+ }
+yy551:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'i': goto yy569;
+ default: goto yy62;
+ }
+yy552:
yyaccept = 72;
yych = *(mrk = ++cur);
switch (yych) {
case '|':
case '}':
case '~':
- case 0x7F: goto yy517;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy553;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy517:
-#line 427 "src/parser.re"
- { NEWTOKEN(PSI_T_FLOATVAL); goto start; }
-#line 8472 "src/parser.c"
-yy518:
- yyaccept = 73;
+yy553:
+#line 435 "src/parser.re"
+ { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
+#line 8940 "src/parser.c"
+yy554:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
+ case 'c': goto yy570;
+ default: goto yy62;
+ }
+yy555:
+ yyaccept = 5;
+ mrk = ++cur;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
case 0x00:
case 0x01:
case 0x02:
case '|':
case '}':
case '~':
- case 0x7F: goto yy519;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy519:
-#line 409 "src/parser.re"
- { NEWTOKEN(PSI_T_FUNCTION); goto start; }
-#line 8547 "src/parser.c"
-yy520:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'N':
- case 'n': goto yy538;
- default: goto yy60;
- }
-yy521:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy539;
- default: goto yy60;
+ case 0x7F: goto yy55;
+ case '\\': goto yy148;
+ case 'n': goto yy571;
+ case 'o': goto yy555;
+ default: goto yy527;
}
-yy522:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'R':
- case 'r': goto yy540;
- default: goto yy60;
- }
-yy523:
- yyaccept = 74;
+yy557:
+ yyaccept = 73;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy524;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy558;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy524:
-#line 435 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_ARRAY); goto start; }
-#line 8646 "src/parser.c"
-yy525:
- yyaccept = 75;
+yy558:
+#line 455 "src/parser.re"
+ { NEWTOKEN(PSI_T_UNSIGNED); goto start; }
+#line 9097 "src/parser.c"
+yy559:
+ yyaccept = 74;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy526;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy560;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy526:
-#line 438 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_FLOAT); goto start; }
-#line 8721 "src/parser.c"
-yy527:
- yyaccept = 6;
+yy560:
+#line 439 "src/parser.re"
+ { NEWTOKEN(PSI_T_VOLATILE); goto start; }
+#line 9172 "src/parser.c"
+yy561:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy541;
- default: goto yy60;
+ case 'E':
+ case 'e': goto yy572;
+ default: goto yy62;
}
-yy528:
- yyaccept = 6;
+yy562:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'G':
- case 'g': goto yy543;
- default: goto yy60;
+ case 'R':
+ case 'r': goto yy573;
+ default: goto yy62;
}
-yy529:
- yyaccept = 76;
+yy563:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy574;
+ default: goto yy62;
+ }
+yy564:
+ yyaccept = 75;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy530;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy565;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy530:
-#line 397 "src/parser.re"
- { NEWTOKEN(PSI_T_UINT16); goto start; }
-#line 8812 "src/parser.c"
-yy531:
- yyaccept = 77;
+yy565:
+#line 501 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_OBJECT); goto start; }
+#line 9271 "src/parser.c"
+yy566:
+ yyaccept = 76;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy532;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy567;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy532:
-#line 399 "src/parser.re"
- { NEWTOKEN(PSI_T_UINT32); goto start; }
-#line 8887 "src/parser.c"
-yy533:
- yyaccept = 78;
+yy567:
+#line 503 "src/parser.re"
+ { NEWTOKEN(PSI_T_TO_STRING); goto start; }
+#line 9346 "src/parser.c"
+yy568:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 't': goto yy576;
+ default: goto yy62;
+ }
+yy569:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'o': goto yy577;
+ default: goto yy62;
+ }
+yy570:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
+ case 't': goto yy578;
+ default: goto yy62;
+ }
+yy571:
+ yyaccept = 5;
+ mrk = ++cur;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
case 0x00:
case 0x01:
case 0x02:
case '|':
case '}':
case '~':
- case 0x7F: goto yy534;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy55;
+ case '\\': goto yy148;
+ case 'c': goto yy580;
+ case 'o': goto yy555;
+ default: goto yy527;
}
-yy534:
-#line 401 "src/parser.re"
- { NEWTOKEN(PSI_T_UINT64); goto start; }
-#line 8962 "src/parser.c"
-yy535:
- yyaccept = 79;
+yy572:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'X':
+ case 'x': goto yy581;
+ default: goto yy62;
+ }
+yy573:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case 'T':
+ case 't': goto yy582;
+ default: goto yy62;
+ }
+yy574:
+ yyaccept = 77;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy536;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy536:
-#line 402 "src/parser.re"
- { NEWTOKEN(PSI_T_UNSIGNED); goto start; }
-#line 9037 "src/parser.c"
-yy537:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'u': goto yy545;
- default: goto yy60;
- }
-yy538:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'E':
- case 'e': goto yy546;
- default: goto yy60;
+ case 0x7F: goto yy575;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy539:
- yyaccept = 6;
+yy575:
+#line 484 "src/parser.re"
+ { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
+#line 9533 "src/parser.c"
+yy576:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'R':
- case 'r': goto yy547;
- default: goto yy60;
+ case 'e': goto yy584;
+ default: goto yy62;
}
-yy540:
- yyaccept = 6;
+yy577:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy548;
- default: goto yy60;
+ case 'n': goto yy585;
+ default: goto yy62;
}
-yy541:
- yyaccept = 80;
+yy578:
+ yyaccept = 78;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy542;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy579;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy542:
-#line 434 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_OBJECT); goto start; }
-#line 9143 "src/parser.c"
-yy543:
- yyaccept = 81;
- yych = *(mrk = ++cur);
+yy579:
+#line 436 "src/parser.re"
+ { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
+#line 9622 "src/parser.c"
+yy580:
+ yyaccept = 5;
+ mrk = ++cur;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
switch (yych) {
case 0x00:
case 0x01:
case '|':
case '}':
case '~':
- case 0x7F: goto yy544;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy544:
-#line 436 "src/parser.re"
- { NEWTOKEN(PSI_T_TO_STRING); goto start; }
-#line 9218 "src/parser.c"
-yy545:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 't': goto yy550;
- default: goto yy60;
- }
-yy546:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case 'X':
- case 'x': goto yy551;
- default: goto yy60;
+ case 0x7F: goto yy55;
+ case '\\': goto yy148;
+ case 'e': goto yy586;
+ case 'o': goto yy555;
+ default: goto yy527;
}
-yy547:
- yyaccept = 6;
+yy581:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
case 'T':
- case 't': goto yy552;
- default: goto yy60;
+ case 't': goto yy588;
+ default: goto yy62;
}
-yy548:
- yyaccept = 82;
+yy582:
+ yyaccept = 79;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy549;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy583;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy549:
-#line 418 "src/parser.re"
- { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
-#line 9316 "src/parser.c"
-yy550:
- yyaccept = 6;
+yy583:
+#line 485 "src/parser.re"
+ { NEWTOKEN(PSI_T_POST_ASSERT); goto start; }
+#line 9780 "src/parser.c"
+yy584:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'e': goto yy554;
- default: goto yy60;
+ case '_': goto yy590;
+ default: goto yy62;
}
-yy551:
- yyaccept = 6;
+yy585:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case 'T':
- case 't': goto yy555;
- default: goto yy60;
+ case '_': goto yy591;
+ default: goto yy62;
}
-yy552:
- yyaccept = 83;
- yych = *(mrk = ++cur);
+yy586:
+ yyaccept = 80;
+ mrk = ++cur;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
switch (yych) {
case 0x00:
case 0x01:
case '|':
case '}':
case '~':
- case 0x7F: goto yy553;
- case '\\': goto yy138;
- default: goto yy59;
- }
-yy553:
-#line 419 "src/parser.re"
- { NEWTOKEN(PSI_T_POST_ASSERT); goto start; }
-#line 9406 "src/parser.c"
-yy554:
- yyaccept = 6;
- yych = *(mrk = ++cur);
- switch (yych) {
- case '_': goto yy557;
- default: goto yy60;
+ case 0x7F: goto yy587;
+ case '\\': goto yy148;
+ case 'o': goto yy555;
+ default: goto yy527;
}
-yy555:
- yyaccept = 84;
+yy587:
+#line 434 "src/parser.re"
+ { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; }
+#line 9872 "src/parser.c"
+yy588:
+ yyaccept = 81;
yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case '|':
case '}':
case '~':
- case 0x7F: goto yy556;
- case '\\': goto yy138;
- default: goto yy59;
+ case 0x7F: goto yy589;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy556:
-#line 380 "src/parser.re"
+yy589:
+#line 469 "src/parser.re"
{ NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; }
-#line 9488 "src/parser.c"
-yy557:
- yyaccept = 6;
+#line 9947 "src/parser.c"
+yy590:
+ yyaccept = 5;
yych = *(mrk = ++cur);
switch (yych) {
- case '_': goto yy558;
- default: goto yy60;
+ case '_': goto yy592;
+ default: goto yy62;
}
-yy558:
- yyaccept = 6;
- mrk = ++cur;
- if ((lim - cur) < 2) if (cur >= lim) goto done;;
- yych = *cur;
+yy591:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '_': goto yy593;
+ default: goto yy62;
+ }
+yy592:
+ yyaccept = 5;
+ yych = *(mrk = ++cur);
+ switch (yych) {
+ case '\t':
+ case '\f':
+ case ' ': goto yy595;
+ case '(': goto yy597;
+ default: goto yy62;
+ }
+yy593:
+ yyaccept = 82;
+ yych = *(mrk = ++cur);
switch (yych) {
case 0x00:
case 0x01:
case '%':
case '&':
case '\'':
+ case '(':
case ')':
case '*':
case '+':
case '|':
case '}':
case '~':
- case 0x7F: goto yy53;
- case '(': goto yy560;
- case '\\': goto yy138;
- default: goto yy558;
+ case 0x7F: goto yy594;
+ case '\\': goto yy148;
+ default: goto yy61;
}
-yy560:
+yy594:
+#line 437 "src/parser.re"
+ { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
+#line 10046 "src/parser.c"
+yy595:
+ ++cur;
+ if ((lim - cur) < 2) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
+ case '\t':
+ case '\f':
+ case ' ': goto yy595;
+ case '(': goto yy597;
+ default: goto yy114;
+ }
+yy597:
yych = *++cur;
switch (yych) {
- case '(': goto yy561;
- default: goto yy106;
+ case '(': goto yy598;
+ default: goto yy114;
}
-yy561:
+yy598:
++cur;
-#line 446 "src/parser.re"
+#line 511 "src/parser.re"
{ parens = 2; goto cpp_attribute; }
-#line 9579 "src/parser.c"
+#line 10068 "src/parser.c"
}
-#line 452 "src/parser.re"
+#line 517 "src/parser.re"
+
+
+ character: ;
+
+#line 10075 "src/parser.c"
+ {
+ unsigned char yych;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
+ case '\n':
+ case '\r': goto yy604;
+ case '\'': goto yy606;
+ case '\\': goto yy608;
+ default: goto yy602;
+ }
+yy602:
+ ++cur;
+#line 535 "src/parser.re"
+ { escaped = false; goto character; }
+#line 10091 "src/parser.c"
+yy604:
+ ++cur;
+#line 522 "src/parser.re"
+ { NEWLINE(); goto character; }
+#line 10096 "src/parser.c"
+yy606:
+ ++cur;
+#line 524 "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 10111 "src/parser.c"
+yy608:
+ ++cur;
+#line 523 "src/parser.re"
+ { escaped = !escaped; goto character; }
+#line 10116 "src/parser.c"
+ }
+#line 537 "src/parser.re"
+
+
+ string: ;
+
+#line 10123 "src/parser.c"
+ {
+ unsigned char yych;
+ if (lim <= cur) if (cur >= lim) goto done;;
+ yych = *cur;
+ switch (yych) {
+ case '\n':
+ case '\r': goto yy614;
+ case '"': goto yy616;
+ case '\\': goto yy618;
+ default: goto yy612;
+ }
+yy612:
+ ++cur;
+#line 555 "src/parser.re"
+ { escaped = false; goto string; }
+#line 10139 "src/parser.c"
+yy614:
+ ++cur;
+#line 542 "src/parser.re"
+ { NEWLINE(); goto string; }
+#line 10144 "src/parser.c"
+yy616:
+ ++cur;
+#line 544 "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 10159 "src/parser.c"
+yy618:
+ ++cur;
+#line 543 "src/parser.re"
+ { escaped = !escaped; goto string; }
+#line 10164 "src/parser.c"
+ }
+#line 557 "src/parser.re"
comment: ;
-#line 9586 "src/parser.c"
+#line 10171 "src/parser.c"
{
unsigned char yych;
if ((lim - cur) < 2) if (cur >= lim) goto done;;
yych = *cur;
switch (yych) {
case '\n':
- case '\r': goto yy567;
- case '*': goto yy569;
- default: goto yy565;
+ case '\r': goto yy624;
+ case '*': goto yy626;
+ default: goto yy622;
}
-yy565:
+yy622:
++cur;
-yy566:
-#line 459 "src/parser.re"
+yy623:
+#line 564 "src/parser.re"
{ goto comment; }
-#line 9602 "src/parser.c"
-yy567:
+#line 10187 "src/parser.c"
+yy624:
++cur;
-#line 457 "src/parser.re"
+#line 562 "src/parser.re"
{ NEWLINE(); goto comment; }
-#line 9607 "src/parser.c"
-yy569:
+#line 10192 "src/parser.c"
+yy626:
yych = *++cur;
switch (yych) {
- case '/': goto yy570;
- default: goto yy566;
+ case '/': goto yy627;
+ default: goto yy623;
}
-yy570:
+yy627:
++cur;
-#line 458 "src/parser.re"
+#line 563 "src/parser.re"
{ NEWTOKEN(PSI_T_COMMENT); goto start; }
-#line 9618 "src/parser.c"
+#line 10203 "src/parser.c"
}
-#line 461 "src/parser.re"
+#line 566 "src/parser.re"
comment_sl: ;
-#line 9625 "src/parser.c"
+#line 10210 "src/parser.c"
{
unsigned char yych;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
switch (yych) {
case '\n':
- case '\r': goto yy576;
- default: goto yy574;
+ case '\r': goto yy633;
+ default: goto yy631;
}
-yy574:
+yy631:
++cur;
-#line 467 "src/parser.re"
+#line 572 "src/parser.re"
{ goto comment_sl; }
-#line 9639 "src/parser.c"
-yy576:
+#line 10224 "src/parser.c"
+yy633:
++cur;
-#line 466 "src/parser.re"
+#line 571 "src/parser.re"
{ NEWTOKEN(PSI_T_COMMENT); NEWLINE(); goto start; }
-#line 9644 "src/parser.c"
+#line 10229 "src/parser.c"
}
-#line 469 "src/parser.re"
+#line 574 "src/parser.re"
cpp_attribute: ;
-#line 9652 "src/parser.c"
+#line 10237 "src/parser.c"
{
unsigned char yych;
if (lim <= cur) if (cur >= lim) goto done;;
yych = *cur;
switch (yych) {
case '\n':
- case '\r': goto yy582;
- case '(': goto yy584;
- case ')': goto yy586;
- default: goto yy580;
+ case '\r': goto yy639;
+ case '(': goto yy641;
+ case ')': goto yy643;
+ default: goto yy637;
}
-yy580:
+yy637:
++cur;
-#line 478 "src/parser.re"
+#line 583 "src/parser.re"
{ goto cpp_attribute; }
-#line 9668 "src/parser.c"
-yy582:
+#line 10253 "src/parser.c"
+yy639:
++cur;
-#line 477 "src/parser.re"
+#line 582 "src/parser.re"
{ NEWLINE(); goto cpp_attribute; }
-#line 9673 "src/parser.c"
-yy584:
+#line 10258 "src/parser.c"
+yy641:
++cur;
-#line 475 "src/parser.re"
+#line 580 "src/parser.re"
{ ++parens; goto cpp_attribute; }
-#line 9678 "src/parser.c"
-yy586:
+#line 10263 "src/parser.c"
+yy643:
++cur;
-#line 476 "src/parser.re"
+#line 581 "src/parser.re"
{ if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }
-#line 9683 "src/parser.c"
+#line 10268 "src/parser.c"
}
-#line 480 "src/parser.re"
+#line 585 "src/parser.re"
error: ;