From: Ulya Trofimovich Date: Wed, 12 Aug 2015 12:52:57 +0000 (+0100) Subject: Added tests for occasionally fixed bug in code generation. X-Git-Tag: 0.15~128 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=79411974da8e39514ab53bad9987f878100fa795;p=re2c Added tests for occasionally fixed bug in code generation. The bug was triggered by the following conditions: '-b' (or any flag that implies '-b') and encoding with code units wider than 1 byte (that is, UTF-16, UTF-32 and UCS-2). The bug itself: re2c omitted 'goto ;' when it should have been generated. The absense of goto caused incorrect control flow. One cas verify it in two ways using the minimal test added by this commit: - manually compare the code generated before and after fix and ensure that newer version generates correct code; - run the test with --skeleton, then try to add/remove the goto statement, compile and run: the code without goto will fail, the code with goto will not; git-bisected commit which fixed bug: commit e42003d80529ab53413459c41a51114c7d437822 Author: Ulya Trofimovich Date: Wed Mar 11 12:46:58 2015 +0000 Pass limited span instead of checking range all the time. Also gound commit that introduced bug: commit d10fb601f3ba257bae0845945daf1dfa754d6146 Author: helly Date: Fri Dec 30 16:24:07 2005 +0000 - Allow to use -w with -b # Still quite some work to do but it is possible --- diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.c b/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.c new file mode 100644 index 00000000..90dc61aa --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.c @@ -0,0 +1,4150 @@ +/* Generated by re2c */ + +{ + YYCTYPE yych; + unsigned int yyaccept = 0; + switch (YYGETCONDITION()) { + case yycINITIAL: goto yyc_INITIAL; + case yycST_DOUBLE_QUOTES: goto yyc_ST_DOUBLE_QUOTES; + case yycST_OFFSET: goto yyc_ST_OFFSET; + case yycST_RAW: goto yyc_ST_RAW; + case yycST_SECTION_RAW: goto yyc_ST_SECTION_RAW; + case yycST_SECTION_VALUE: goto yyc_ST_SECTION_VALUE; + case yycST_VALUE: goto yyc_ST_VALUE; + case yycST_VARNAME: goto yyc_ST_VARNAME; + } +/* *********************************** */ +yyc_INITIAL: + YYFILL(5); + yych = *YYCURSOR; + switch (yych) { + case '\t': goto yy5; + case '\n': goto yy7; + case '\r': goto yy9; + case ' ': goto yy10; + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy11; + case '%': + case '\'': + case '*': + case '+': + case ',': + case '-': + case '.': + case '/': + case ':': + case '<': + case '>': + case '?': + case '@': + case ']': goto yy13; + case ';': goto yy14; + case '=': goto yy16; + case '[': goto yy18; + case 'f': goto yy20; + case 'n': goto yy21; + case 'o': goto yy22; + case 't': goto yy23; + case 'y': goto yy24; + default: goto yy3; + } +yy3: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy26; +yy4: + {} +yy5: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy64; +yy6: + {} +yy7: + ++YYCURSOR; +yy8: + {} +yy9: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy67; + default: goto yy8; + } +yy10: + yych = *++YYCURSOR; + switch (yych) { + case '\t': goto yy63; + case '\n': goto yy67; + case '\r': goto yy68; + case ' ': goto yy65; + case ';': goto yy58; + case '=': goto yy56; + default: goto yy26; + } +yy11: + ++YYCURSOR; + {} +yy13: + yych = *++YYCURSOR; + goto yy26; +yy14: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy59; + {} +yy16: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy57; +yy17: + {} +yy18: + ++YYCURSOR; + {} +yy20: + yych = *++YYCURSOR; + switch (yych) { + case 'a': goto yy53; + default: goto yy26; + } +yy21: + yych = *++YYCURSOR; + switch (yych) { + case 'o': goto yy44; + case 'u': goto yy45; + default: goto yy26; + } +yy22: + yych = *++YYCURSOR; + switch (yych) { + case 'f': goto yy38; + case 'n': goto yy31; + default: goto yy26; + } +yy23: + yych = *++YYCURSOR; + switch (yych) { + case 'r': goto yy36; + default: goto yy26; + } +yy24: + yych = *++YYCURSOR; + switch (yych) { + case 'e': goto yy27; + default: goto yy26; + } +yy25: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy26: + switch (yych) { + case '\t': + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy4; + case '[': goto yy28; + default: goto yy25; + } +yy27: + yych = *++YYCURSOR; + switch (yych) { + case 's': goto yy31; + default: goto yy26; + } +yy28: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy28; + default: goto yy30; + } +yy30: + {} +yy31: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': goto yy34; + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy33; + case ' ': goto yy31; + case '[': goto yy28; + default: goto yy25; + } +yy33: + {} +yy34: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy34; + default: goto yy33; + } +yy36: + yych = *++YYCURSOR; + switch (yych) { + case 'u': goto yy37; + default: goto yy26; + } +yy37: + yych = *++YYCURSOR; + switch (yych) { + case 'e': goto yy31; + default: goto yy26; + } +yy38: + yych = *++YYCURSOR; + switch (yych) { + case 'f': goto yy39; + default: goto yy26; + } +yy39: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': goto yy42; + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy41; + case ' ': goto yy39; + case '[': goto yy28; + default: goto yy25; + } +yy41: + {} +yy42: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy42; + default: goto yy41; + } +yy44: + yych = *++YYCURSOR; + switch (yych) { + case '\t': goto yy42; + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy41; + case ' ': goto yy39; + case 'n': goto yy52; + default: goto yy26; + } +yy45: + yych = *++YYCURSOR; + switch (yych) { + case 'l': goto yy46; + default: goto yy26; + } +yy46: + yych = *++YYCURSOR; + switch (yych) { + case 'l': goto yy47; + default: goto yy26; + } +yy47: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': goto yy50; + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy49; + case ' ': goto yy47; + case '[': goto yy28; + default: goto yy25; + } +yy49: + {} +yy50: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy50; + default: goto yy49; + } +yy52: + yych = *++YYCURSOR; + switch (yych) { + case 'e': goto yy39; + default: goto yy26; + } +yy53: + yych = *++YYCURSOR; + switch (yych) { + case 'l': goto yy54; + default: goto yy26; + } +yy54: + yych = *++YYCURSOR; + switch (yych) { + case 's': goto yy55; + default: goto yy26; + } +yy55: + yych = *++YYCURSOR; + switch (yych) { + case 'e': goto yy39; + default: goto yy26; + } +yy56: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy57: + switch (yych) { + case '\t': + case ' ': goto yy56; + default: goto yy17; + } +yy58: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy59: + switch (yych) { + case '\n': goto yy60; + case '\r': goto yy62; + default: goto yy58; + } +yy60: + ++YYCURSOR; +yy61: + {} +yy62: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy60; + default: goto yy61; + } +yy63: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy64: + switch (yych) { + case '\t': + case ' ': goto yy63; + case '\n': goto yy67; + case '\r': goto yy68; + case ';': goto yy58; + case '=': goto yy56; + default: goto yy6; + } +yy65: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; + switch (yych) { + case '\t': goto yy63; + case '\n': goto yy67; + case '\r': goto yy68; + case ' ': goto yy65; + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy4; + case ';': goto yy58; + case '=': goto yy56; + case '[': goto yy28; + default: goto yy25; + } +yy67: + yych = *++YYCURSOR; + goto yy8; +yy68: + ++YYCURSOR; + switch ((yych = *YYCURSOR)) { + case '\n': goto yy67; + default: goto yy8; + } +/* *********************************** */ +yyc_ST_DOUBLE_QUOTES: + YYFILL(2); + yych = *YYCURSOR; + switch (yych) { + case '"': goto yy73; + case '$': goto yy75; + default: goto yy71; + } +yy71: + ++YYCURSOR; +yy72: + {} +yy73: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy79; +yy74: + {} +yy75: + yych = *++YYCURSOR; + switch (yych) { + case '{': goto yy76; + default: goto yy72; + } +yy76: + ++YYCURSOR; + {} +yy78: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy79: + switch (yych) { + case '\t': + case ' ': goto yy78; + default: goto yy74; + } +/* *********************************** */ +yyc_ST_OFFSET: + YYFILL(2); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy84; + case '\n': + case '\r': + case ';': goto yy85; + case '"': goto yy87; + case '$': goto yy89; + case '\'': goto yy90; + case '-': goto yy91; + case '.': goto yy92; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy93; + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy95; + case '\\': goto yy97; + case ']': goto yy98; + default: goto yy82; + } +yy82: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy101; +yy83: + {} +yy84: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\t': + case ' ': goto yy127; + case '"': goto yy129; + case ']': goto yy130; + default: goto yy101; + } +yy85: + ++YYCURSOR; +yy86: + {} +yy87: + ++YYCURSOR; +yy88: + {} +yy89: + yych = *++YYCURSOR; + switch (yych) { + case 0x00: goto yy86; + case '\\': goto yy105; + case '{': goto yy125; + default: goto yy100; + } +yy90: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\'': goto yy86; + default: goto yy121; + } +yy91: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy119; + default: goto yy101; + } +yy92: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy117; + default: goto yy101; + } +yy93: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy94; + case '.': goto yy113; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy115; + default: goto yy101; + } +yy94: + {} +yy95: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy96; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy111; + default: goto yy101; + } +yy96: + {} +yy97: + yych = *++YYCURSOR; + goto yy100; +yy98: + ++YYCURSOR; +yy99: + {} +yy100: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy101: + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy83; + case '$': goto yy103; + case '\\': goto yy102; + default: goto yy100; + } +yy102: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + goto yy100; +yy103: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '{': goto yy104; + case '\\': goto yy105; + default: goto yy100; + } +yy104: + YYCURSOR = YYMARKER; + switch (yyaccept) { + case 0: goto yy83; + case 1: goto yy86; + case 2: goto yy94; + default: goto yy96; + } +yy105: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy106; + case '\\': goto yy108; + default: goto yy100; + } +yy106: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy106; + case '\\': goto yy110; + default: goto yy100; + } +yy108: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy106; + case '\\': goto yy108; + default: goto yy100; + } +yy110: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy106; + case '\\': goto yy108; + default: goto yy100; + } +yy111: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy96; + case '$': goto yy103; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy111; + case '\\': goto yy102; + default: goto yy100; + } +yy113: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy94; + case '$': goto yy103; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy113; + case '\\': goto yy102; + default: goto yy100; + } +yy115: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy94; + case '$': goto yy103; + case '.': goto yy113; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy115; + case '\\': goto yy102; + default: goto yy100; + } +yy117: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy94; + case '$': goto yy103; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy117; + case '\\': goto yy102; + default: goto yy100; + } +yy119: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy94; + case '$': goto yy103; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy119; + case '\\': goto yy102; + default: goto yy100; + } +yy121: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\'': goto yy123; + default: goto yy121; + } +yy123: + ++YYCURSOR; + {} +yy125: + ++YYCURSOR; + {} +yy127: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy127; + case '\n': + case '\r': + case '\'': + case ';': goto yy83; + case '"': goto yy129; + case '$': goto yy103; + case '\\': goto yy102; + case ']': goto yy130; + default: goto yy100; + } +yy129: + yych = *++YYCURSOR; + goto yy88; +yy130: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy99; +/* *********************************** */ +yyc_ST_RAW: + YYFILL(3); + yych = *YYCURSOR; + switch (yych) { + case 0x00: goto yy133; + case '\t': + case ' ': goto yy137; + case '\n': goto yy138; + case '\r': goto yy140; + case ';': goto yy141; + default: goto yy135; + } +yy133: + ++YYCURSOR; + {} +yy135: + ++YYCURSOR; +yy136: + {} +yy137: + yych = *++YYCURSOR; + switch (yych) { + case '\t': + case '\n': + case '\r': + case ' ': + case ';': goto yy149; + default: goto yy136; + } +yy138: + ++YYCURSOR; +yy139: + {} +yy140: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy147; + default: goto yy139; + } +yy141: + yych = *++YYCURSOR; + goto yy143; +yy142: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy143: + switch (yych) { + case '\n': goto yy144; + case '\r': goto yy146; + default: goto yy142; + } +yy144: + ++YYCURSOR; +yy145: + {} +yy146: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy144; + default: goto yy145; + } +yy147: + yych = *++YYCURSOR; + goto yy139; +yy148: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy149: + switch (yych) { + case '\t': + case ' ': goto yy148; + case '\n': goto yy147; + case '\r': goto yy151; + case ';': goto yy142; + default: goto yy150; + } +yy150: + {} +yy151: + ++YYCURSOR; + switch ((yych = *YYCURSOR)) { + case '\n': goto yy147; + default: goto yy139; + } +/* *********************************** */ +yyc_ST_SECTION_RAW: + YYFILL(3); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': goto yy156; + case ']': goto yy158; + default: goto yy154; + } +yy154: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy165; +yy155: + {} +yy156: + ++YYCURSOR; + {} +yy158: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy161; +yy159: + {} +yy160: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy161: + switch (yych) { + case '\t': + case ' ': goto yy160; + case '\n': goto yy162; + case '\r': goto yy163; + default: goto yy159; + } +yy162: + yych = *++YYCURSOR; + goto yy159; +yy163: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy162; + default: goto yy159; + } +yy164: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy165: + switch (yych) { + case '\n': + case '\r': + case ']': goto yy155; + default: goto yy164; + } +/* *********************************** */ +yyc_ST_SECTION_VALUE: + YYFILL(3); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy170; + case '\n': + case '\r': + case ';': goto yy171; + case '"': goto yy173; + case '$': goto yy175; + case '\'': goto yy176; + case '-': goto yy177; + case '.': goto yy178; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy179; + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy181; + case '\\': goto yy183; + case ']': goto yy184; + default: goto yy168; + } +yy168: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy191; +yy169: + {} +yy170: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\t': + case ' ': goto yy217; + case '"': goto yy219; + default: goto yy191; + } +yy171: + ++YYCURSOR; +yy172: + {} +yy173: + ++YYCURSOR; +yy174: + {} +yy175: + yych = *++YYCURSOR; + switch (yych) { + case 0x00: goto yy172; + case '\\': goto yy195; + case '{': goto yy215; + default: goto yy190; + } +yy176: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\'': goto yy172; + default: goto yy211; + } +yy177: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy209; + default: goto yy191; + } +yy178: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy207; + default: goto yy191; + } +yy179: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy180; + case '.': goto yy203; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy205; + default: goto yy191; + } +yy180: + {} +yy181: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy182; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy201; + default: goto yy191; + } +yy182: + {} +yy183: + yych = *++YYCURSOR; + goto yy190; +yy184: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy187; +yy185: + {} +yy186: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy187: + switch (yych) { + case '\t': + case ' ': goto yy186; + case '\n': goto yy188; + case '\r': goto yy189; + default: goto yy185; + } +yy188: + yych = *++YYCURSOR; + goto yy185; +yy189: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy188; + default: goto yy185; + } +yy190: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy191: + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy169; + case '$': goto yy193; + case '\\': goto yy192; + default: goto yy190; + } +yy192: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + goto yy190; +yy193: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '{': goto yy194; + case '\\': goto yy195; + default: goto yy190; + } +yy194: + YYCURSOR = YYMARKER; + switch (yyaccept) { + case 0: goto yy169; + case 1: goto yy172; + case 2: goto yy180; + default: goto yy182; + } +yy195: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy196; + case '\\': goto yy198; + default: goto yy190; + } +yy196: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy196; + case '\\': goto yy200; + default: goto yy190; + } +yy198: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy196; + case '\\': goto yy198; + default: goto yy190; + } +yy200: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy196; + case '\\': goto yy198; + default: goto yy190; + } +yy201: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy182; + case '$': goto yy193; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy201; + case '\\': goto yy192; + default: goto yy190; + } +yy203: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy180; + case '$': goto yy193; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy203; + case '\\': goto yy192; + default: goto yy190; + } +yy205: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy180; + case '$': goto yy193; + case '.': goto yy203; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy205; + case '\\': goto yy192; + default: goto yy190; + } +yy207: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy180; + case '$': goto yy193; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy207; + case '\\': goto yy192; + default: goto yy190; + } +yy209: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\n': + case '\r': + case '"': + case '\'': + case ';': + case ']': goto yy180; + case '$': goto yy193; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy209; + case '\\': goto yy192; + default: goto yy190; + } +yy211: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\'': goto yy213; + default: goto yy211; + } +yy213: + ++YYCURSOR; + {} +yy215: + ++YYCURSOR; + {} +yy217: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy217; + case '\n': + case '\r': + case '\'': + case ';': + case ']': goto yy169; + case '"': goto yy219; + case '$': goto yy193; + case '\\': goto yy192; + default: goto yy190; + } +yy219: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy174; +/* *********************************** */ +yyc_ST_VALUE: + YYFILL(6); + yych = *YYCURSOR; + switch (yych) { + case 0x00: goto yy222; + case '\t': + case ' ': goto yy226; + case '\n': goto yy228; + case '\r': goto yy230; + case '!': + case '&': + case '(': + case ')': + case '^': + case '|': + case '~': goto yy231; + case '"': goto yy233; + case '$': goto yy235; + case '\'': goto yy236; + case '-': goto yy237; + case '.': goto yy238; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy239; + case ';': goto yy241; + case '=': goto yy242; + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'p': + case 'q': + case 'r': + case 's': + case 'u': + case 'v': + case 'w': + case 'x': + case 'z': goto yy244; + case 'f': goto yy246; + case 'n': goto yy247; + case 'o': goto yy248; + case 't': goto yy249; + case 'y': goto yy250; + default: goto yy224; + } +yy222: + ++YYCURSOR; +yy223: + {} +yy224: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy252; +yy225: + {} +yy226: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + goto yy306; +yy227: + {} +yy228: + ++YYCURSOR; +yy229: + {} +yy230: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy304; + default: goto yy229; + } +yy231: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy303; +yy232: + {} +yy233: + ++YYCURSOR; +yy234: + {} +yy235: + yych = *++YYCURSOR; + switch (yych) { + case 0x00: goto yy223; + case '\\': goto yy258; + case '{': goto yy300; + default: goto yy251; + } +yy236: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '\'': goto yy223; + default: goto yy296; + } +yy237: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy294; + default: goto yy252; + } +yy238: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy292; + default: goto yy252; + } +yy239: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy240; + case '.': goto yy288; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy290; + default: goto yy252; + } +yy240: + {} +yy241: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + goto yy284; +yy242: + ++YYCURSOR; + {} +yy244: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + default: goto yy252; + } +yy245: + {} +yy246: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'a': goto yy280; + default: goto yy252; + } +yy247: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'o': goto yy272; + case 'u': goto yy273; + default: goto yy252; + } +yy248: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'f': goto yy267; + case 'n': goto yy261; + default: goto yy252; + } +yy249: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'r': goto yy265; + default: goto yy252; + } +yy250: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'e': goto yy255; + default: goto yy252; + } +yy251: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy252: + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy225; + case '$': goto yy256; + default: goto yy251; + } +yy253: + yyaccept = 4; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '$': goto yy256; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + default: goto yy251; + } +yy255: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 's': goto yy261; + default: goto yy252; + } +yy256: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '{': goto yy257; + case '\\': goto yy258; + default: goto yy251; + } +yy257: + YYCURSOR = YYMARKER; + switch (yyaccept) { + case 0: goto yy225; + case 1: goto yy227; + case 2: goto yy223; + case 3: goto yy240; + case 4: goto yy245; + case 5: goto yy262; + case 6: goto yy269; + default: goto yy276; + } +yy258: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '$': goto yy259; + default: goto yy251; + } +yy259: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: goto yy225; + case '$': goto yy259; + case '\\': goto yy258; + default: goto yy251; + } +yy261: + yyaccept = 5; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\n': + case '\r': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy262; + case '\t': + case ' ': goto yy263; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + default: goto yy252; + } +yy262: + {} +yy263: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy263; + default: goto yy262; + } +yy265: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'u': goto yy266; + default: goto yy252; + } +yy266: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'e': goto yy261; + default: goto yy252; + } +yy267: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'f': goto yy268; + default: goto yy252; + } +yy268: + yyaccept = 6; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\n': + case '\r': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy269; + case '\t': + case ' ': goto yy270; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + default: goto yy252; + } +yy269: + {} +yy270: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy270; + default: goto yy269; + } +yy272: + yyaccept = 6; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\n': + case '\r': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy269; + case '\t': + case ' ': goto yy270; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'n': goto yy279; + default: goto yy252; + } +yy273: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'l': goto yy274; + default: goto yy252; + } +yy274: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'l': goto yy275; + default: goto yy252; + } +yy275: + yyaccept = 7; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\n': + case '\r': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy276; + case '\t': + case ' ': goto yy277; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + default: goto yy252; + } +yy276: + {} +yy277: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case ' ': goto yy277; + default: goto yy276; + } +yy279: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'e': goto yy268; + default: goto yy252; + } +yy280: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'l': goto yy281; + default: goto yy252; + } +yy281: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 's': goto yy282; + default: goto yy252; + } +yy282: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy245; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'n': + case 'o': + case 'p': + case 'q': + case 'r': + case 's': + case 't': + case 'u': + case 'v': + case 'w': + case 'x': + case 'y': + case 'z': goto yy253; + case 'e': goto yy268; + default: goto yy252; + } +yy283: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy284: + switch (yych) { + case '\n': goto yy285; + case '\r': goto yy287; + default: goto yy283; + } +yy285: + ++YYCURSOR; +yy286: + {} +yy287: + yych = *++YYCURSOR; + switch (yych) { + case '\n': goto yy285; + default: goto yy286; + } +yy288: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy240; + case '$': goto yy256; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy288; + default: goto yy251; + } +yy290: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy240; + case '$': goto yy256; + case '.': goto yy288; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy290; + default: goto yy251; + } +yy292: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy240; + case '$': goto yy256; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy292; + default: goto yy251; + } +yy294: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case 0x00: + case '\t': + case '\n': + case '\r': + case ' ': + case '!': + case '"': + case '&': + case '\'': + case '(': + case ')': + case ';': + case '=': + case '^': + case '|': + case '~': goto yy240; + case '$': goto yy256; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy294; + default: goto yy251; + } +yy296: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + switch (yych) { + case '\'': goto yy298; + default: goto yy296; + } +yy298: + ++YYCURSOR; + {} +yy300: + ++YYCURSOR; + {} +yy302: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy303: + switch (yych) { + case '\t': + case ' ': goto yy302; + default: goto yy232; + } +yy304: + yych = *++YYCURSOR; + goto yy229; +yy305: + yyaccept = 1; + YYMARKER = ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy306: + switch (yych) { + case '\t': + case ' ': goto yy305; + case '\n': goto yy304; + case '\r': goto yy308; + case '"': goto yy307; + case ';': goto yy283; + default: goto yy227; + } +yy307: + yych = *++YYCURSOR; + goto yy234; +yy308: + ++YYCURSOR; + switch ((yych = *YYCURSOR)) { + case '\n': goto yy304; + default: goto yy229; + } +/* *********************************** */ +yyc_ST_VARNAME: + YYFILL(2); + yych = *YYCURSOR; + switch (yych) { + case '\t': + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '[': + case '^': + case '{': + case '|': + case '~': goto yy313; + case '}': goto yy315; + default: goto yy311; + } +yy311: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy318; +yy312: + {} +yy313: + ++YYCURSOR; + {} +yy315: + ++YYCURSOR; + {} +yy317: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy318: + switch (yych) { + case '\t': + case '\n': + case '\r': + case '!': + case '"': + case '$': + case '&': + case '(': + case ')': + case ';': + case '=': + case '[': + case '^': + case '{': + case '|': + case '}': + case '~': goto yy312; + default: goto yy317; + } +} + diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.re b/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.re new file mode 100644 index 00000000..fa5fae2e --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed.icF.re @@ -0,0 +1,56 @@ +/*!re2c +re2c:yyfill:check = 0; +LNUM [0-9]+ +DNUM ([0-9]*[\.][0-9]+)|([0-9]+[\.][0-9]*) +NUMBER [-]?{LNUM}|{DNUM} +ANY_CHAR (.|[\n\t]) +NEWLINE ("\r"|"\n"|"\r\n") +TABS_AND_SPACES [ \t] +WHITESPACE [ \t]+ +CONSTANT [a-zA-Z_][a-zA-Z0-9_]* +LABEL [^=\n\r\t;&|^$~(){}!"\[]+ +TOKENS [:,.\[\]"'()&|^+-/*=%$!~<>?@{}] +OPERATORS [&|^~()!] +DOLLAR_CURLY "${" + +SECTION_RAW_CHARS [^\]\n\r] +SINGLE_QUOTED_CHARS [^'] +RAW_VALUE_CHARS [^\n\r;\000] + +LITERAL_DOLLAR ("$"([^{\000]|("\\"{ANY_CHAR}))) +VALUE_CHARS ([^$= \t\n\r;&|^~()!"'\000]|{LITERAL_DOLLAR}) +SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) + +"[" {} +"'"{SINGLE_QUOTED_CHARS}+"'" {} +"]"{TABS_AND_SPACES}*{NEWLINE}? {} +{LABEL}"["{TABS_AND_SPACES}* {} +{TABS_AND_SPACES}*"]" {} +{DOLLAR_CURLY} {} +{LABEL} {} +"}" {} +("true"|"on"|"yes"){TABS_AND_SPACES}* {} +("false"|"off"|"no"|"none"){TABS_AND_SPACES}* {} +("null"){TABS_AND_SPACES}* {} +{LABEL} {} +{TABS_AND_SPACES}*[=]{TABS_AND_SPACES}* {} +{RAW_VALUE_CHARS} {} +{SECTION_RAW_CHARS}+ {} +{TABS_AND_SPACES}*{NEWLINE} {} +{CONSTANT} {} +{NUMBER} {} +{TOKENS} {} +{OPERATORS}{TABS_AND_SPACES}* {} +[=] {} +{VALUE_CHARS}+ {} +{SECTION_VALUE_CHARS}+ {} +{TABS_AND_SPACES}*["] {} +["]{TABS_AND_SPACES}* {} +[^] {} +{WHITESPACE} {} +{TABS_AND_SPACES}+ {} +{TABS_AND_SPACES}*{NEWLINE} {} +{TABS_AND_SPACES}*[;][^\r\n]*{NEWLINE} {} +[^] {} +<*>[^] {} +*/ diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.c b/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.c new file mode 100644 index 00000000..b015b38f --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.c @@ -0,0 +1,3645 @@ +/* Generated by re2c */ + +{ + YYCTYPE yych; + unsigned int yyaccept = 0; + if (YYGETCONDITION() < 4) { + if (YYGETCONDITION() < 2) { + if (YYGETCONDITION() < 1) { + goto yyc_INITIAL; + } else { + goto yyc_ST_OFFSET; + } + } else { + if (YYGETCONDITION() < 3) { + goto yyc_ST_SECTION_VALUE; + } else { + goto yyc_ST_VALUE; + } + } + } else { + if (YYGETCONDITION() < 6) { + if (YYGETCONDITION() < 5) { + goto yyc_ST_SECTION_RAW; + } else { + goto yyc_ST_DOUBLE_QUOTES; + } + } else { + if (YYGETCONDITION() < 7) { + goto yyc_ST_VARNAME; + } else { + goto yyc_ST_RAW; + } + } + } +/* *********************************** */ +yyc_INITIAL: + { + static const unsigned char yybm[] = { + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 160, 0, 144, 144, 0, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 240, 128, 128, 144, 128, 144, 128, 144, + 128, 128, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 128, 144, 128, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 128, 144, 144, 128, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 128, 128, 128, 128, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + 144, 144, 144, 144, 144, 144, 144, 144, + }; + YYFILL(5); + yych = *YYCURSOR; + if (yych <= '<') { + if (yych <= '#') { + if (yych <= '\f') { + if (yych <= 0x0008) goto yy3; + if (yych <= '\t') goto yy5; + if (yych <= '\n') goto yy7; + } else { + if (yych <= 0x001F) { + if (yych <= '\r') goto yy9; + } else { + if (yych <= ' ') goto yy10; + if (yych <= '"') goto yy11; + } + } + } else { + if (yych <= ')') { + if (yych <= '%') { + if (yych <= '$') goto yy11; + goto yy13; + } else { + if (yych == '\'') goto yy13; + goto yy11; + } + } else { + if (yych <= '9') { + if (yych <= '/') goto yy13; + } else { + if (yych == ';') goto yy14; + goto yy13; + } + } + } + } else { + if (yych <= 'f') { + if (yych <= '[') { + if (yych <= '=') goto yy16; + if (yych <= '@') goto yy13; + if (yych >= '[') goto yy18; + } else { + if (yych <= ']') { + if (yych >= ']') goto yy13; + } else { + if (yych <= '^') goto yy11; + if (yych >= 'f') goto yy20; + } + } + } else { + if (yych <= 't') { + if (yych <= 'n') { + if (yych >= 'n') goto yy21; + } else { + if (yych <= 'o') goto yy22; + if (yych >= 't') goto yy23; + } + } else { + if (yych <= 'y') { + if (yych >= 'y') goto yy24; + } else { + if (yych <= 'z') goto yy3; + if (yych <= '~') goto yy11; + } + } + } + } +yy3: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy26; +yy4: + {} +yy5: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy64; +yy6: + {} +yy7: + ++YYCURSOR; +yy8: + {} +yy9: + yych = *++YYCURSOR; + if (yych == '\n') goto yy67; + goto yy8; +yy10: + yych = *++YYCURSOR; + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy26; + if (yych <= '\t') goto yy63; + goto yy67; + } else { + if (yych == '\r') goto yy68; + goto yy26; + } + } else { + if (yych <= ';') { + if (yych <= ' ') goto yy65; + if (yych <= ':') goto yy26; + goto yy58; + } else { + if (yych == '=') goto yy56; + goto yy26; + } + } +yy11: + ++YYCURSOR; + {} +yy13: + yych = *++YYCURSOR; + goto yy26; +yy14: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy59; + {} +yy16: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy57; +yy17: + {} +yy18: + ++YYCURSOR; + {} +yy20: + yych = *++YYCURSOR; + if (yych == 'a') goto yy53; + goto yy26; +yy21: + yych = *++YYCURSOR; + if (yych == 'o') goto yy44; + if (yych == 'u') goto yy45; + goto yy26; +yy22: + yych = *++YYCURSOR; + if (yych == 'f') goto yy38; + if (yych == 'n') goto yy31; + goto yy26; +yy23: + yych = *++YYCURSOR; + if (yych == 'r') goto yy36; + goto yy26; +yy24: + yych = *++YYCURSOR; + if (yych == 'e') goto yy27; + goto yy26; +yy25: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy26: + if (yych & ~0xFF) { + goto yy25; + } else if (yybm[0+yych] & 16) { + goto yy25; + } + if (yych <= '=') goto yy4; + if (yych <= '[') goto yy28; + goto yy4; +yy27: + yych = *++YYCURSOR; + if (yych == 's') goto yy31; + goto yy26; +yy28: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + } else if (yybm[0+yych] & 32) { + goto yy28; + } + {} +yy31: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy25; + } else if (yybm[0+yych] & 64) { + goto yy31; + } + if (yych <= '\'') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy25; + if (yych <= '\t') goto yy34; + } else { + if (yych != '\r') goto yy25; + } + } else { + if (yych <= '$') { + if (yych == '#') goto yy25; + } else { + if (yych != '&') goto yy25; + } + } + } else { + if (yych <= 'Z') { + if (yych <= ';') { + if (yych <= ')') goto yy33; + if (yych <= ':') goto yy25; + } else { + if (yych != '=') goto yy25; + } + } else { + if (yych <= '^') { + if (yych <= '[') goto yy28; + if (yych <= ']') goto yy25; + } else { + if (yych <= 'z') goto yy25; + if (yych >= 0x007F) goto yy25; + } + } + } +yy33: + {} +yy34: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych == '\t') goto yy34; + if (yych == ' ') goto yy34; + goto yy33; +yy36: + yych = *++YYCURSOR; + if (yych != 'u') goto yy26; + yych = *++YYCURSOR; + if (yych == 'e') goto yy31; + goto yy26; +yy38: + yych = *++YYCURSOR; + if (yych != 'f') goto yy26; +yy39: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy25; + if (yych <= '\t') goto yy42; + } else { + if (yych != '\r') goto yy25; + } + } else { + if (yych <= '#') { + if (yych <= ' ') goto yy39; + if (yych >= '#') goto yy25; + } else { + if (yych == '%') goto yy25; + } + } + } else { + if (yych <= '=') { + if (yych <= ':') { + if (yych <= '\'') goto yy25; + if (yych >= '*') goto yy25; + } else { + if (yych == '<') goto yy25; + } + } else { + if (yych <= ']') { + if (yych == '[') goto yy28; + goto yy25; + } else { + if (yych <= '^') goto yy41; + if (yych <= 'z') goto yy25; + if (yych >= 0x007F) goto yy25; + } + } + } +yy41: + {} +yy42: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych == '\t') goto yy42; + if (yych == ' ') goto yy42; + goto yy41; +yy44: + yych = *++YYCURSOR; + if (yych <= '&') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy26; + if (yych <= '\t') goto yy42; + goto yy41; + } else { + if (yych == '\r') goto yy41; + goto yy26; + } + } else { + if (yych <= '#') { + if (yych <= ' ') goto yy39; + if (yych <= '"') goto yy41; + goto yy26; + } else { + if (yych == '%') goto yy26; + goto yy41; + } + } + } else { + if (yych <= '=') { + if (yych <= ':') { + if (yych <= '\'') goto yy26; + if (yych <= ')') goto yy41; + goto yy26; + } else { + if (yych == '<') goto yy26; + goto yy41; + } + } else { + if (yych <= 'm') { + if (yych == '^') goto yy41; + goto yy26; + } else { + if (yych <= 'n') goto yy52; + if (yych <= 'z') goto yy26; + if (yych <= '~') goto yy41; + goto yy26; + } + } + } +yy45: + yych = *++YYCURSOR; + if (yych != 'l') goto yy26; + yych = *++YYCURSOR; + if (yych != 'l') goto yy26; +yy47: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy25; + if (yych <= '\t') goto yy50; + } else { + if (yych != '\r') goto yy25; + } + } else { + if (yych <= '#') { + if (yych <= ' ') goto yy47; + if (yych >= '#') goto yy25; + } else { + if (yych == '%') goto yy25; + } + } + } else { + if (yych <= '=') { + if (yych <= ':') { + if (yych <= '\'') goto yy25; + if (yych >= '*') goto yy25; + } else { + if (yych == '<') goto yy25; + } + } else { + if (yych <= ']') { + if (yych == '[') goto yy28; + goto yy25; + } else { + if (yych <= '^') goto yy49; + if (yych <= 'z') goto yy25; + if (yych >= 0x007F) goto yy25; + } + } + } +yy49: + {} +yy50: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych == '\t') goto yy50; + if (yych == ' ') goto yy50; + goto yy49; +yy52: + yych = *++YYCURSOR; + if (yych == 'e') goto yy39; + goto yy26; +yy53: + yych = *++YYCURSOR; + if (yych != 'l') goto yy26; + yych = *++YYCURSOR; + if (yych != 's') goto yy26; + yych = *++YYCURSOR; + if (yych == 'e') goto yy39; + goto yy26; +yy56: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy57: + if (yych == '\t') goto yy56; + if (yych == ' ') goto yy56; + goto yy17; +yy58: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy59: + if (yych & ~0xFF) { + goto yy58; + } else if (yybm[0+yych] & 128) { + goto yy58; + } + if (yych >= '\v') goto yy62; +yy60: + ++YYCURSOR; +yy61: + {} +yy62: + yych = *++YYCURSOR; + if (yych == '\n') goto yy60; + goto yy61; +yy63: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy64: + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy6; + if (yych <= '\t') goto yy63; + goto yy67; + } else { + if (yych == '\r') goto yy68; + goto yy6; + } + } else { + if (yych <= ';') { + if (yych <= ' ') goto yy63; + if (yych <= ':') goto yy6; + goto yy58; + } else { + if (yych == '=') goto yy56; + goto yy6; + } + } +yy65: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy25; + if (yych <= '\t') goto yy63; + } else { + if (yych == '\r') goto yy68; + goto yy25; + } + } else { + if (yych <= '#') { + if (yych <= ' ') goto yy65; + if (yych <= '"') goto yy4; + goto yy25; + } else { + if (yych == '%') goto yy25; + goto yy4; + } + } + } else { + if (yych <= '=') { + if (yych <= ':') { + if (yych <= '\'') goto yy25; + if (yych <= ')') goto yy4; + goto yy25; + } else { + if (yych <= ';') goto yy58; + if (yych <= '<') goto yy25; + goto yy56; + } + } else { + if (yych <= ']') { + if (yych == '[') goto yy28; + goto yy25; + } else { + if (yych <= '^') goto yy4; + if (yych <= 'z') goto yy25; + if (yych <= '~') goto yy4; + goto yy25; + } + } + } +yy67: + yych = *++YYCURSOR; + goto yy8; +yy68: + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy67; + goto yy8; + } +/* *********************************** */ +yyc_ST_DOUBLE_QUOTES: + { + static const unsigned char yybm[] = { + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }; + YYFILL(2); + yych = *YYCURSOR; + if (yych == '"') goto yy73; + if (yych == '$') goto yy75; + ++YYCURSOR; +yy72: + {} +yy73: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy79; +yy74: + {} +yy75: + yych = *++YYCURSOR; + if (yych != '{') goto yy72; + ++YYCURSOR; + {} +yy78: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy79: + if (yych & ~0xFF) { + goto yy74; + } else if (yybm[0+yych] & 128) { + goto yy78; + } + goto yy74; + } +/* *********************************** */ +yyc_ST_OFFSET: + { + static const unsigned char yybm[] = { + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 194, 64, 66, 66, 64, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 194, 66, 64, 66, 68, 66, 66, 0, + 66, 66, 66, 66, 66, 66, 66, 66, + 114, 114, 114, 114, 114, 114, 114, 114, + 114, 114, 66, 64, 66, 66, 66, 66, + 66, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 66, 72, 64, 66, 82, + 66, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 82, 82, 82, 82, 82, + 82, 82, 82, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + 66, 66, 66, 66, 66, 66, 66, 66, + }; + YYFILL(2); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych <= ' ') { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy82; + if (yych <= '\t') goto yy84; + goto yy85; + } else { + if (yych == '\r') goto yy85; + if (yych >= ' ') goto yy84; + } + } else { + if (yych <= '$') { + if (yych == '"') goto yy87; + if (yych >= '$') goto yy89; + } else { + if (yych == '\'') goto yy90; + if (yych >= '-') goto yy91; + } + } + } else { + if (yych <= 'Z') { + if (yych <= '9') { + if (yych <= '.') goto yy92; + if (yych >= '0') goto yy93; + } else { + if (yych == ';') goto yy85; + if (yych >= 'A') goto yy95; + } + } else { + if (yych <= '^') { + if (yych <= '[') goto yy82; + if (yych <= '\\') goto yy97; + if (yych <= ']') goto yy98; + } else { + if (yych == '`') goto yy82; + if (yych <= 'z') goto yy95; + } + } + } +yy82: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy101; +yy83: + {} +yy84: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy101; + } else if (yybm[0+yych] & 128) { + goto yy127; + } + if (yych == '"') goto yy129; + if (yych == ']') goto yy130; + goto yy101; +yy85: + ++YYCURSOR; +yy86: + {} +yy87: + ++YYCURSOR; +yy88: + {} +yy89: + yych = *++YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy86; + if (yych <= '[') goto yy100; + goto yy105; + } else { + if (yych == '{') goto yy125; + goto yy100; + } +yy90: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy121; + } else if (yybm[0+yych] & 64) { + goto yy121; + } + goto yy86; +yy91: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy101; + if (yych <= '9') goto yy119; + goto yy101; +yy92: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy101; + if (yych <= '9') goto yy117; + goto yy101; +yy93: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '\'') { + if (yych <= '\r') { + if (yych == '\n') goto yy94; + if (yych <= '\f') goto yy101; + } else { + if (yych == '"') goto yy94; + if (yych <= '&') goto yy101; + } + } else { + if (yych <= '9') { + if (yych == '.') goto yy113; + if (yych <= '/') goto yy101; + goto yy115; + } else { + if (yych <= ';') { + if (yych <= ':') goto yy101; + } else { + if (yych != ']') goto yy101; + } + } + } +yy94: + {} +yy95: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy101; + } else if (yybm[0+yych] & 16) { + goto yy111; + } + if (yych <= '"') { + if (yych <= '\f') { + if (yych != '\n') goto yy101; + } else { + if (yych <= '\r') goto yy96; + if (yych <= '!') goto yy101; + } + } else { + if (yych <= ':') { + if (yych != '\'') goto yy101; + } else { + if (yych <= ';') goto yy96; + if (yych != ']') goto yy101; + } + } +yy96: + {} +yy97: + yych = *++YYCURSOR; + goto yy100; +yy98: + ++YYCURSOR; +yy99: + {} +yy100: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy101: + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 2) { + goto yy100; + } + if (yych <= '"') goto yy83; + if (yych <= '$') goto yy103; + if (yych <= ';') goto yy83; + if (yych >= ']') goto yy83; +yy102: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + goto yy100; +yy103: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy104; + if (yych <= '[') goto yy100; + goto yy105; + } else { + if (yych != '{') goto yy100; + } +yy104: + YYCURSOR = YYMARKER; + if (yyaccept <= 1) { + if (yyaccept == 0) { + goto yy83; + } else { + goto yy86; + } + } else { + if (yyaccept == 2) { + goto yy94; + } else { + goto yy96; + } + } +yy105: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 4) { + goto yy106; + } + if (yych == '\\') goto yy108; + goto yy100; +yy106: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 4) { + goto yy106; + } + if (yych == '\\') goto yy110; + goto yy100; +yy108: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 4) { + goto yy106; + } + if (yych == '\\') goto yy108; + goto yy100; +yy110: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 4) { + goto yy106; + } + if (yych == '\\') goto yy108; + goto yy100; +yy111: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 16) { + goto yy111; + } + if (yych <= '$') { + if (yych <= '\r') { + if (yych == '\n') goto yy96; + if (yych <= '\f') goto yy100; + goto yy96; + } else { + if (yych == '"') goto yy96; + if (yych <= '#') goto yy100; + goto yy103; + } + } else { + if (yych <= ';') { + if (yych == '\'') goto yy96; + if (yych <= ':') goto yy100; + goto yy96; + } else { + if (yych <= '[') goto yy100; + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy96; + goto yy100; + } + } +yy113: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 32) { + goto yy113; + } + if (yych <= '$') { + if (yych <= '\r') { + if (yych == '\n') goto yy94; + if (yych <= '\f') goto yy100; + goto yy94; + } else { + if (yych == '"') goto yy94; + if (yych <= '#') goto yy100; + goto yy103; + } + } else { + if (yych <= ';') { + if (yych == '\'') goto yy94; + if (yych <= ':') goto yy100; + goto yy94; + } else { + if (yych <= '[') goto yy100; + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy94; + goto yy100; + } + } +yy115: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '\'') { + if (yych <= '!') { + if (yych <= '\n') { + if (yych <= '\t') goto yy100; + goto yy94; + } else { + if (yych == '\r') goto yy94; + goto yy100; + } + } else { + if (yych <= '#') { + if (yych <= '"') goto yy94; + goto yy100; + } else { + if (yych <= '$') goto yy103; + if (yych <= '&') goto yy100; + goto yy94; + } + } + } else { + if (yych <= ':') { + if (yych <= '.') { + if (yych <= '-') goto yy100; + goto yy113; + } else { + if (yych <= '/') goto yy100; + if (yych <= '9') goto yy115; + goto yy100; + } + } else { + if (yych <= '[') { + if (yych <= ';') goto yy94; + goto yy100; + } else { + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy94; + goto yy100; + } + } + } +yy117: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= '\r') { + if (yych == '\n') goto yy94; + if (yych <= '\f') goto yy100; + goto yy94; + } else { + if (yych <= '"') { + if (yych <= '!') goto yy100; + goto yy94; + } else { + if (yych == '$') goto yy103; + goto yy100; + } + } + } else { + if (yych <= ':') { + if (yych <= '\'') goto yy94; + if (yych <= '/') goto yy100; + if (yych <= '9') goto yy117; + goto yy100; + } else { + if (yych <= '[') { + if (yych <= ';') goto yy94; + goto yy100; + } else { + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy94; + goto yy100; + } + } + } +yy119: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= '\r') { + if (yych == '\n') goto yy94; + if (yych <= '\f') goto yy100; + goto yy94; + } else { + if (yych <= '"') { + if (yych <= '!') goto yy100; + goto yy94; + } else { + if (yych == '$') goto yy103; + goto yy100; + } + } + } else { + if (yych <= ':') { + if (yych <= '\'') goto yy94; + if (yych <= '/') goto yy100; + if (yych <= '9') goto yy119; + goto yy100; + } else { + if (yych <= '[') { + if (yych <= ';') goto yy94; + goto yy100; + } else { + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy94; + goto yy100; + } + } + } +yy121: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy121; + } else if (yybm[0+yych] & 64) { + goto yy121; + } + ++YYCURSOR; + {} +yy125: + ++YYCURSOR; + {} +yy127: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy100; + } else if (yybm[0+yych] & 128) { + goto yy127; + } + if (yych <= '$') { + if (yych <= '\r') { + if (yych <= 0x0008) goto yy100; + if (yych <= '\n') goto yy83; + if (yych <= '\f') goto yy100; + goto yy83; + } else { + if (yych == '"') goto yy129; + if (yych <= '#') goto yy100; + goto yy103; + } + } else { + if (yych <= ';') { + if (yych == '\'') goto yy83; + if (yych <= ':') goto yy100; + goto yy83; + } else { + if (yych <= '[') goto yy100; + if (yych <= '\\') goto yy102; + if (yych <= ']') goto yy130; + goto yy100; + } + } +yy129: + yych = *++YYCURSOR; + goto yy88; +yy130: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy99; + } +/* *********************************** */ +yyc_ST_RAW: + { + static const unsigned char yybm[] = { + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 192, 0, 64, 64, 0, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 192, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + 64, 64, 64, 64, 64, 64, 64, 64, + }; + YYFILL(3); + yych = *YYCURSOR; + if (yych <= '\f') { + if (yych <= 0x0008) { + if (yych >= 0x0001) goto yy135; + } else { + if (yych <= '\t') goto yy137; + if (yych <= '\n') goto yy138; + goto yy135; + } + } else { + if (yych <= ' ') { + if (yych <= '\r') goto yy140; + if (yych <= 0x001F) goto yy135; + goto yy137; + } else { + if (yych == ';') goto yy141; + goto yy135; + } + } + ++YYCURSOR; + {} +yy135: + ++YYCURSOR; +yy136: + {} +yy137: + yych = *++YYCURSOR; + if (yych <= '\r') { + if (yych <= 0x0008) goto yy136; + if (yych <= '\n') goto yy149; + if (yych <= '\f') goto yy136; + goto yy149; + } else { + if (yych <= ' ') { + if (yych <= 0x001F) goto yy136; + goto yy149; + } else { + if (yych == ';') goto yy149; + goto yy136; + } + } +yy138: + ++YYCURSOR; +yy139: + {} +yy140: + yych = *++YYCURSOR; + if (yych == '\n') goto yy147; + goto yy139; +yy141: + yych = *++YYCURSOR; + goto yy143; +yy142: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy143: + if (yych & ~0xFF) { + goto yy142; + } else if (yybm[0+yych] & 64) { + goto yy142; + } + if (yych >= '\v') goto yy146; +yy144: + ++YYCURSOR; +yy145: + {} +yy146: + yych = *++YYCURSOR; + if (yych == '\n') goto yy144; + goto yy145; +yy147: + yych = *++YYCURSOR; + goto yy139; +yy148: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy149: + if (yych & ~0xFF) { + } else if (yybm[0+yych] & 128) { + goto yy148; + } + if (yych <= '\f') { + if (yych <= 0x0008) goto yy150; + if (yych <= '\n') goto yy147; + } else { + if (yych <= '\r') goto yy151; + if (yych == ';') goto yy142; + } +yy150: + {} +yy151: + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy147; + goto yy139; + } +/* *********************************** */ +yyc_ST_SECTION_RAW: + { + static const unsigned char yybm[] = { + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 192, 0, 128, 128, 0, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 192, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 0, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + }; + YYFILL(3); + yych = *YYCURSOR; + if (yych <= '\f') { + if (yych == '\n') goto yy156; + } else { + if (yych <= '\r') goto yy156; + if (yych == ']') goto yy158; + } + ++YYCURSOR; + yych = *YYCURSOR; + goto yy165; +yy155: + {} +yy156: + ++YYCURSOR; + {} +yy158: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy161; +yy159: + {} +yy160: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy161: + if (yych & ~0xFF) { + goto yy159; + } else if (yybm[0+yych] & 64) { + goto yy160; + } + if (yych <= 0x0008) goto yy159; + if (yych <= '\n') goto yy162; + if (yych == '\r') goto yy163; + goto yy159; +yy162: + yych = *++YYCURSOR; + goto yy159; +yy163: + yych = *++YYCURSOR; + if (yych == '\n') goto yy162; + goto yy159; +yy164: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy165: + if (yych & ~0xFF) { + goto yy164; + } else if (yybm[0+yych] & 128) { + goto yy164; + } + goto yy155; + } +/* *********************************** */ +yyc_ST_SECTION_VALUE: + { + static const unsigned char yybm[] = { + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 134, 128, 132, 132, 128, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 134, 132, 128, 132, 136, 132, 132, 0, + 132, 132, 132, 132, 132, 132, 132, 132, + 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 132, 128, 132, 132, 132, 132, + 132, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 132, 144, 128, 132, 164, + 132, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + 132, 132, 132, 132, 132, 132, 132, 132, + }; + YYFILL(3); + yych = *YYCURSOR; + if (yych <= '-') { + if (yych <= ' ') { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy168; + if (yych <= '\t') goto yy170; + goto yy171; + } else { + if (yych == '\r') goto yy171; + if (yych >= ' ') goto yy170; + } + } else { + if (yych <= '$') { + if (yych == '"') goto yy173; + if (yych >= '$') goto yy175; + } else { + if (yych == '\'') goto yy176; + if (yych >= '-') goto yy177; + } + } + } else { + if (yych <= 'Z') { + if (yych <= '9') { + if (yych <= '.') goto yy178; + if (yych >= '0') goto yy179; + } else { + if (yych == ';') goto yy171; + if (yych >= 'A') goto yy181; + } + } else { + if (yych <= '^') { + if (yych <= '[') goto yy168; + if (yych <= '\\') goto yy183; + if (yych <= ']') goto yy184; + } else { + if (yych == '`') goto yy168; + if (yych <= 'z') goto yy181; + } + } + } +yy168: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy191; +yy169: + {} +yy170: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= 0x001F) { + if (yych == '\t') goto yy217; + goto yy191; + } else { + if (yych <= ' ') goto yy217; + if (yych == '"') goto yy219; + goto yy191; + } +yy171: + ++YYCURSOR; +yy172: + {} +yy173: + ++YYCURSOR; +yy174: + {} +yy175: + yych = *++YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy172; + if (yych <= '[') goto yy190; + goto yy195; + } else { + if (yych == '{') goto yy215; + goto yy190; + } +yy176: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy211; + } else if (yybm[0+yych] & 128) { + goto yy211; + } + goto yy172; +yy177: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy191; + if (yych <= '9') goto yy209; + goto yy191; +yy178: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy191; + if (yych <= '9') goto yy207; + goto yy191; +yy179: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '\'') { + if (yych <= '\r') { + if (yych == '\n') goto yy180; + if (yych <= '\f') goto yy191; + } else { + if (yych == '"') goto yy180; + if (yych <= '&') goto yy191; + } + } else { + if (yych <= '9') { + if (yych == '.') goto yy203; + if (yych <= '/') goto yy191; + goto yy205; + } else { + if (yych <= ';') { + if (yych <= ':') goto yy191; + } else { + if (yych != ']') goto yy191; + } + } + } +yy180: + {} +yy181: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy191; + } else if (yybm[0+yych] & 32) { + goto yy201; + } + if (yych <= '"') { + if (yych <= '\f') { + if (yych != '\n') goto yy191; + } else { + if (yych <= '\r') goto yy182; + if (yych <= '!') goto yy191; + } + } else { + if (yych <= ':') { + if (yych != '\'') goto yy191; + } else { + if (yych <= ';') goto yy182; + if (yych != ']') goto yy191; + } + } +yy182: + {} +yy183: + yych = *++YYCURSOR; + goto yy190; +yy184: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy187; +yy185: + {} +yy186: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy187: + if (yych & ~0xFF) { + goto yy185; + } else if (yybm[0+yych] & 2) { + goto yy186; + } + if (yych <= 0x0008) goto yy185; + if (yych <= '\n') goto yy188; + if (yych == '\r') goto yy189; + goto yy185; +yy188: + yych = *++YYCURSOR; + goto yy185; +yy189: + yych = *++YYCURSOR; + if (yych == '\n') goto yy188; + goto yy185; +yy190: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy191: + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 4) { + goto yy190; + } + if (yych <= '"') goto yy169; + if (yych <= '$') goto yy193; + if (yych <= ';') goto yy169; + if (yych >= ']') goto yy169; +yy192: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + goto yy190; +yy193: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy194; + if (yych <= '[') goto yy190; + goto yy195; + } else { + if (yych != '{') goto yy190; + } +yy194: + YYCURSOR = YYMARKER; + if (yyaccept <= 1) { + if (yyaccept == 0) { + goto yy169; + } else { + goto yy172; + } + } else { + if (yyaccept == 2) { + goto yy180; + } else { + goto yy182; + } + } +yy195: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 8) { + goto yy196; + } + if (yych == '\\') goto yy198; + goto yy190; +yy196: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 8) { + goto yy196; + } + if (yych == '\\') goto yy200; + goto yy190; +yy198: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 8) { + goto yy196; + } + if (yych == '\\') goto yy198; + goto yy190; +yy200: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 8) { + goto yy196; + } + if (yych == '\\') goto yy198; + goto yy190; +yy201: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 32) { + goto yy201; + } + if (yych <= '$') { + if (yych <= '\r') { + if (yych == '\n') goto yy182; + if (yych <= '\f') goto yy190; + goto yy182; + } else { + if (yych == '"') goto yy182; + if (yych <= '#') goto yy190; + goto yy193; + } + } else { + if (yych <= ';') { + if (yych == '\'') goto yy182; + if (yych <= ':') goto yy190; + goto yy182; + } else { + if (yych <= '[') goto yy190; + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy182; + goto yy190; + } + } +yy203: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy190; + } else if (yybm[0+yych] & 64) { + goto yy203; + } + if (yych <= '$') { + if (yych <= '\r') { + if (yych == '\n') goto yy180; + if (yych <= '\f') goto yy190; + goto yy180; + } else { + if (yych == '"') goto yy180; + if (yych <= '#') goto yy190; + goto yy193; + } + } else { + if (yych <= ';') { + if (yych == '\'') goto yy180; + if (yych <= ':') goto yy190; + goto yy180; + } else { + if (yych <= '[') goto yy190; + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy180; + goto yy190; + } + } +yy205: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '\'') { + if (yych <= '!') { + if (yych <= '\n') { + if (yych <= '\t') goto yy190; + goto yy180; + } else { + if (yych == '\r') goto yy180; + goto yy190; + } + } else { + if (yych <= '#') { + if (yych <= '"') goto yy180; + goto yy190; + } else { + if (yych <= '$') goto yy193; + if (yych <= '&') goto yy190; + goto yy180; + } + } + } else { + if (yych <= ':') { + if (yych <= '.') { + if (yych <= '-') goto yy190; + goto yy203; + } else { + if (yych <= '/') goto yy190; + if (yych <= '9') goto yy205; + goto yy190; + } + } else { + if (yych <= '[') { + if (yych <= ';') goto yy180; + goto yy190; + } else { + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy180; + goto yy190; + } + } + } +yy207: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= '\r') { + if (yych == '\n') goto yy180; + if (yych <= '\f') goto yy190; + goto yy180; + } else { + if (yych <= '"') { + if (yych <= '!') goto yy190; + goto yy180; + } else { + if (yych == '$') goto yy193; + goto yy190; + } + } + } else { + if (yych <= ':') { + if (yych <= '\'') goto yy180; + if (yych <= '/') goto yy190; + if (yych <= '9') goto yy207; + goto yy190; + } else { + if (yych <= '[') { + if (yych <= ';') goto yy180; + goto yy190; + } else { + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy180; + goto yy190; + } + } + } +yy209: + yyaccept = 2; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '&') { + if (yych <= '\r') { + if (yych == '\n') goto yy180; + if (yych <= '\f') goto yy190; + goto yy180; + } else { + if (yych <= '"') { + if (yych <= '!') goto yy190; + goto yy180; + } else { + if (yych == '$') goto yy193; + goto yy190; + } + } + } else { + if (yych <= ':') { + if (yych <= '\'') goto yy180; + if (yych <= '/') goto yy190; + if (yych <= '9') goto yy209; + goto yy190; + } else { + if (yych <= '[') { + if (yych <= ';') goto yy180; + goto yy190; + } else { + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy180; + goto yy190; + } + } + } +yy211: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy211; + } else if (yybm[0+yych] & 128) { + goto yy211; + } + ++YYCURSOR; + {} +yy215: + ++YYCURSOR; + {} +yy217: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '"') { + if (yych <= '\f') { + if (yych <= 0x0008) goto yy190; + if (yych <= '\t') goto yy217; + if (yych <= '\n') goto yy169; + goto yy190; + } else { + if (yych <= 0x001F) { + if (yych <= '\r') goto yy169; + goto yy190; + } else { + if (yych <= ' ') goto yy217; + if (yych <= '!') goto yy190; + } + } + } else { + if (yych <= ':') { + if (yych <= '$') { + if (yych <= '#') goto yy190; + goto yy193; + } else { + if (yych == '\'') goto yy169; + goto yy190; + } + } else { + if (yych <= '[') { + if (yych <= ';') goto yy169; + goto yy190; + } else { + if (yych <= '\\') goto yy192; + if (yych <= ']') goto yy169; + goto yy190; + } + } + } +yy219: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy174; + } +/* *********************************** */ +yyc_ST_VALUE: + { + static const unsigned char yybm[] = { + 160, 162, 162, 162, 162, 162, 162, 162, + 162, 176, 128, 162, 162, 128, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 176, 160, 160, 162, 168, 162, 160, 32, + 160, 160, 162, 162, 162, 162, 162, 162, + 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 162, 160, 162, 160, 162, 162, + 162, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 162, 162, 162, 160, 166, + 162, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 166, 166, 166, 166, 166, + 166, 166, 166, 162, 160, 162, 160, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, + }; + YYFILL(6); + yych = *YYCURSOR; + switch (yych) { + case 0x0000: goto yy222; + case '\t': + case ' ': goto yy226; + case '\n': goto yy228; + case '\r': goto yy230; + case '!': + case '&': + case '(': + case ')': + case '^': + case '|': + case '~': goto yy231; + case '"': goto yy233; + case '$': goto yy235; + case '\'': goto yy236; + case '-': goto yy237; + case '.': goto yy238; + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': goto yy239; + case ';': goto yy241; + case '=': goto yy242; + case 'A': + case 'B': + case 'C': + case 'D': + case 'E': + case 'F': + case 'G': + case 'H': + case 'I': + case 'J': + case 'K': + case 'L': + case 'M': + case 'N': + case 'O': + case 'P': + case 'Q': + case 'R': + case 'S': + case 'T': + case 'U': + case 'V': + case 'W': + case 'X': + case 'Y': + case 'Z': + case '_': + case 'a': + case 'b': + case 'c': + case 'd': + case 'e': + case 'g': + case 'h': + case 'i': + case 'j': + case 'k': + case 'l': + case 'm': + case 'p': + case 'q': + case 'r': + case 's': + case 'u': + case 'v': + case 'w': + case 'x': + case 'z': goto yy244; + case 'f': goto yy246; + case 'n': goto yy247; + case 'o': goto yy248; + case 't': goto yy249; + case 'y': goto yy250; + default: goto yy224; + } +yy222: + ++YYCURSOR; +yy223: + {} +yy224: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + goto yy252; +yy225: + {} +yy226: + yyaccept = 1; + yych = *(YYMARKER = ++YYCURSOR); + goto yy306; +yy227: + {} +yy228: + ++YYCURSOR; +yy229: + {} +yy230: + yych = *++YYCURSOR; + if (yych == '\n') goto yy304; + goto yy229; +yy231: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy303; +yy232: + {} +yy233: + ++YYCURSOR; +yy234: + {} +yy235: + yych = *++YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy223; + if (yych <= '[') goto yy251; + goto yy258; + } else { + if (yych == '{') goto yy300; + goto yy251; + } +yy236: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy296; + } else if (yybm[0+yych] & 128) { + goto yy296; + } + goto yy223; +yy237: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy252; + if (yych <= '9') goto yy294; + goto yy252; +yy238: + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') goto yy252; + if (yych <= '9') goto yy292; + goto yy252; +yy239: + yyaccept = 3; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '/') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy240; + if (yych <= 0x0008) goto yy252; + } else { + if (yych != '\r') goto yy252; + } + } else { + if (yych <= ')') { + if (yych <= '"') goto yy240; + if (yych <= '%') goto yy252; + } else { + if (yych == '.') goto yy288; + goto yy252; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= '9') goto yy290; + if (yych <= ':') goto yy252; + } else { + if (yych != '=') goto yy252; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy240; + if (yych <= '{') goto yy252; + } else { + if (yych != '~') goto yy252; + } + } + } +yy240: + {} +yy241: + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + goto yy284; +yy242: + ++YYCURSOR; + {} +yy244: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy252; + } else if (yybm[0+yych] & 4) { + goto yy253; + } + if (yych <= ':') { + if (yych <= '\r') { + if (yych <= 0x0008) { + if (yych >= 0x0001) goto yy252; + } else { + if (yych <= '\n') goto yy245; + if (yych <= '\f') goto yy252; + } + } else { + if (yych <= '"') { + if (yych <= 0x001F) goto yy252; + } else { + if (yych <= '%') goto yy252; + if (yych >= '*') goto yy252; + } + } + } else { + if (yych <= '^') { + if (yych <= '<') { + if (yych >= '<') goto yy252; + } else { + if (yych <= '=') goto yy245; + if (yych <= ']') goto yy252; + } + } else { + if (yych <= '|') { + if (yych <= '{') goto yy252; + } else { + if (yych != '~') goto yy252; + } + } + } +yy245: + {} +yy246: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych <= 'a') goto yy280; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy247: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '=') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '9') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + if (yych <= '/') goto yy252; + goto yy253; + } else { + if (yych == ';') goto yy245; + if (yych <= '<') goto yy252; + goto yy245; + } + } + } else { + if (yych <= 'o') { + if (yych <= '^') { + if (yych <= '@') goto yy252; + if (yych <= 'Z') goto yy253; + if (yych <= ']') goto yy252; + goto yy245; + } else { + if (yych == '`') goto yy252; + if (yych <= 'n') goto yy253; + goto yy272; + } + } else { + if (yych <= '{') { + if (yych == 'u') goto yy273; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy248: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '=') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '9') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + if (yych <= '/') goto yy252; + goto yy253; + } else { + if (yych == ';') goto yy245; + if (yych <= '<') goto yy252; + goto yy245; + } + } + } else { + if (yych <= 'f') { + if (yych <= '^') { + if (yych <= '@') goto yy252; + if (yych <= 'Z') goto yy253; + if (yych <= ']') goto yy252; + goto yy245; + } else { + if (yych == '`') goto yy252; + if (yych <= 'e') goto yy253; + goto yy267; + } + } else { + if (yych <= '{') { + if (yych == 'n') goto yy261; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy249: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'r') goto yy265; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy250: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'e') goto yy255; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy251: + yyaccept = 0; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy252: + if (yych & ~0xFF) { + goto yy251; + } else if (yybm[0+yych] & 2) { + goto yy251; + } + if (yych <= '"') goto yy225; + if (yych <= '$') goto yy256; + goto yy225; +yy253: + yyaccept = 4; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy251; + } else if (yybm[0+yych] & 4) { + goto yy253; + } + if (yych <= ')') { + if (yych <= '\r') { + if (yych <= 0x0008) { + if (yych <= 0x0000) goto yy245; + goto yy251; + } else { + if (yych <= '\n') goto yy245; + if (yych <= '\f') goto yy251; + goto yy245; + } + } else { + if (yych <= '#') { + if (yych <= 0x001F) goto yy251; + if (yych <= '"') goto yy245; + goto yy251; + } else { + if (yych <= '$') goto yy256; + if (yych <= '%') goto yy251; + goto yy245; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= ':') goto yy251; + goto yy245; + } else { + if (yych == '=') goto yy245; + goto yy251; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy245; + if (yych <= '{') goto yy251; + goto yy245; + } else { + if (yych == '~') goto yy245; + goto yy251; + } + } + } +yy255: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 's') goto yy261; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy256: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '\\') { + if (yych <= 0x0000) goto yy257; + if (yych <= '[') goto yy251; + goto yy258; + } else { + if (yych != '{') goto yy251; + } +yy257: + YYCURSOR = YYMARKER; + if (yyaccept <= 3) { + if (yyaccept <= 1) { + if (yyaccept == 0) { + goto yy225; + } else { + goto yy227; + } + } else { + if (yyaccept == 2) { + goto yy223; + } else { + goto yy240; + } + } + } else { + if (yyaccept <= 5) { + if (yyaccept == 4) { + goto yy245; + } else { + goto yy262; + } + } else { + if (yyaccept == 6) { + goto yy269; + } else { + goto yy276; + } + } + } +yy258: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy251; + } else if (yybm[0+yych] & 8) { + goto yy259; + } + goto yy251; +yy259: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy251; + } else if (yybm[0+yych] & 8) { + goto yy259; + } + if (yych <= 0x0000) goto yy225; + if (yych == '\\') goto yy258; + goto yy251; +yy261: + yyaccept = 5; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy252; + } else if (yybm[0+yych] & 16) { + goto yy263; + } + if (yych <= ';') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy262; + if (yych <= 0x0008) goto yy252; + } else { + if (yych != '\r') goto yy252; + } + } else { + if (yych <= ')') { + if (yych <= '"') goto yy262; + if (yych <= '%') goto yy252; + } else { + if (yych <= '/') goto yy252; + if (yych <= '9') goto yy253; + if (yych <= ':') goto yy252; + } + } + } else { + if (yych <= '_') { + if (yych <= '@') { + if (yych != '=') goto yy252; + } else { + if (yych <= 'Z') goto yy253; + if (yych <= ']') goto yy252; + if (yych >= '_') goto yy253; + } + } else { + if (yych <= '{') { + if (yych <= '`') goto yy252; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych >= 0x007F) goto yy252; + } + } + } +yy262: + {} +yy263: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy262; + } else if (yybm[0+yych] & 16) { + goto yy263; + } + goto yy262; +yy265: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'u') goto yy266; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy266: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'e') goto yy261; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy267: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'f') goto yy268; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy268: + yyaccept = 6; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy252; + } else if (yybm[0+yych] & 4) { + goto yy253; + } + if (yych <= ')') { + if (yych <= '\f') { + if (yych <= 0x0008) { + if (yych >= 0x0001) goto yy252; + } else { + if (yych <= '\t') goto yy270; + if (yych >= '\v') goto yy252; + } + } else { + if (yych <= ' ') { + if (yych <= '\r') goto yy269; + if (yych <= 0x001F) goto yy252; + goto yy270; + } else { + if (yych <= '"') goto yy269; + if (yych <= '%') goto yy252; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= ':') goto yy252; + } else { + if (yych != '=') goto yy252; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy269; + if (yych <= '{') goto yy252; + } else { + if (yych != '~') goto yy252; + } + } + } +yy269: + {} +yy270: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych == '\t') goto yy270; + if (yych == ' ') goto yy270; + goto yy269; +yy272: + yyaccept = 6; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= ';') { + if (yych <= 0x001F) { + if (yych <= '\t') { + if (yych <= 0x0000) goto yy269; + if (yych <= 0x0008) goto yy252; + goto yy270; + } else { + if (yych <= '\n') goto yy269; + if (yych == '\r') goto yy269; + goto yy252; + } + } else { + if (yych <= ')') { + if (yych <= ' ') goto yy270; + if (yych <= '"') goto yy269; + if (yych <= '%') goto yy252; + goto yy269; + } else { + if (yych <= '/') goto yy252; + if (yych <= '9') goto yy253; + if (yych <= ':') goto yy252; + goto yy269; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych == '=') goto yy269; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy269; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'n') goto yy279; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy269; + goto yy252; + } + } + } +yy273: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'l') goto yy274; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy274: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'l') goto yy275; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy275: + yyaccept = 7; + yych = *(YYMARKER = ++YYCURSOR); + if (yych & ~0xFF) { + goto yy252; + } else if (yybm[0+yych] & 4) { + goto yy253; + } + if (yych <= ')') { + if (yych <= '\f') { + if (yych <= 0x0008) { + if (yych >= 0x0001) goto yy252; + } else { + if (yych <= '\t') goto yy277; + if (yych >= '\v') goto yy252; + } + } else { + if (yych <= ' ') { + if (yych <= '\r') goto yy276; + if (yych <= 0x001F) goto yy252; + goto yy277; + } else { + if (yych <= '"') goto yy276; + if (yych <= '%') goto yy252; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= ':') goto yy252; + } else { + if (yych != '=') goto yy252; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy276; + if (yych <= '{') goto yy252; + } else { + if (yych != '~') goto yy252; + } + } + } +yy276: + {} +yy277: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych == '\t') goto yy277; + if (yych == ' ') goto yy277; + goto yy276; +yy279: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'e') goto yy268; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy280: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'l') goto yy281; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy281: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 's') goto yy282; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy282: + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= '<') { + if (yych <= '"') { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy245; + if (yych <= 0x0008) goto yy252; + goto yy245; + } else { + if (yych == '\r') goto yy245; + if (yych <= 0x001F) goto yy252; + goto yy245; + } + } else { + if (yych <= '/') { + if (yych <= '%') goto yy252; + if (yych <= ')') goto yy245; + goto yy252; + } else { + if (yych <= '9') goto yy253; + if (yych == ';') goto yy245; + goto yy252; + } + } + } else { + if (yych <= '`') { + if (yych <= 'Z') { + if (yych <= '=') goto yy245; + if (yych <= '@') goto yy252; + goto yy253; + } else { + if (yych <= ']') goto yy252; + if (yych <= '^') goto yy245; + if (yych <= '_') goto yy253; + goto yy252; + } + } else { + if (yych <= '{') { + if (yych == 'e') goto yy268; + if (yych <= 'z') goto yy253; + goto yy252; + } else { + if (yych == '}') goto yy252; + if (yych <= '~') goto yy245; + goto yy252; + } + } + } +yy283: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy284: + if (yych & ~0xFF) { + goto yy283; + } else if (yybm[0+yych] & 32) { + goto yy283; + } + if (yych >= '\v') goto yy287; +yy285: + ++YYCURSOR; +yy286: + {} +yy287: + yych = *++YYCURSOR; + if (yych == '\n') goto yy285; + goto yy286; +yy288: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy251; + } else if (yybm[0+yych] & 64) { + goto yy288; + } + if (yych <= ')') { + if (yych <= '\r') { + if (yych <= 0x0008) { + if (yych <= 0x0000) goto yy240; + goto yy251; + } else { + if (yych <= '\n') goto yy240; + if (yych <= '\f') goto yy251; + goto yy240; + } + } else { + if (yych <= '#') { + if (yych <= 0x001F) goto yy251; + if (yych <= '"') goto yy240; + goto yy251; + } else { + if (yych <= '$') goto yy256; + if (yych <= '%') goto yy251; + goto yy240; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= ':') goto yy251; + goto yy240; + } else { + if (yych == '=') goto yy240; + goto yy251; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy240; + if (yych <= '{') goto yy251; + goto yy240; + } else { + if (yych == '~') goto yy240; + goto yy251; + } + } + } +yy290: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '.') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy240; + if (yych <= 0x0008) goto yy251; + goto yy240; + } else { + if (yych == '\r') goto yy240; + goto yy251; + } + } else { + if (yych <= '$') { + if (yych <= '"') goto yy240; + if (yych <= '#') goto yy251; + goto yy256; + } else { + if (yych <= '%') goto yy251; + if (yych <= ')') goto yy240; + if (yych <= '-') goto yy251; + goto yy288; + } + } + } else { + if (yych <= '=') { + if (yych <= ':') { + if (yych <= '/') goto yy251; + if (yych <= '9') goto yy290; + goto yy251; + } else { + if (yych == '<') goto yy251; + goto yy240; + } + } else { + if (yych <= '{') { + if (yych == '^') goto yy240; + goto yy251; + } else { + if (yych == '}') goto yy251; + if (yych <= '~') goto yy240; + goto yy251; + } + } + } +yy292: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy240; + if (yych <= 0x0008) goto yy251; + goto yy240; + } else { + if (yych == '\r') goto yy240; + goto yy251; + } + } else { + if (yych <= '$') { + if (yych <= '"') goto yy240; + if (yych <= '#') goto yy251; + goto yy256; + } else { + if (yych <= '%') goto yy251; + if (yych <= ')') goto yy240; + goto yy251; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= '9') goto yy292; + if (yych <= ':') goto yy251; + goto yy240; + } else { + if (yych == '=') goto yy240; + goto yy251; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy240; + if (yych <= '{') goto yy251; + goto yy240; + } else { + if (yych == '~') goto yy240; + goto yy251; + } + } + } +yy294: + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych <= '/') { + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0000) goto yy240; + if (yych <= 0x0008) goto yy251; + goto yy240; + } else { + if (yych == '\r') goto yy240; + goto yy251; + } + } else { + if (yych <= '$') { + if (yych <= '"') goto yy240; + if (yych <= '#') goto yy251; + goto yy256; + } else { + if (yych <= '%') goto yy251; + if (yych <= ')') goto yy240; + goto yy251; + } + } + } else { + if (yych <= ']') { + if (yych <= ';') { + if (yych <= '9') goto yy294; + if (yych <= ':') goto yy251; + goto yy240; + } else { + if (yych == '=') goto yy240; + goto yy251; + } + } else { + if (yych <= '|') { + if (yych <= '^') goto yy240; + if (yych <= '{') goto yy251; + goto yy240; + } else { + if (yych == '~') goto yy240; + goto yy251; + } + } + } +yy296: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy296; + } else if (yybm[0+yych] & 128) { + goto yy296; + } + ++YYCURSOR; + {} +yy300: + ++YYCURSOR; + {} +yy302: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy303: + if (yych == '\t') goto yy302; + if (yych == ' ') goto yy302; + goto yy232; +yy304: + yych = *++YYCURSOR; + goto yy229; +yy305: + yyaccept = 1; + YYMARKER = ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; +yy306: + if (yych <= 0x001F) { + if (yych <= '\n') { + if (yych <= 0x0008) goto yy227; + if (yych <= '\t') goto yy305; + goto yy304; + } else { + if (yych == '\r') goto yy308; + goto yy227; + } + } else { + if (yych <= '"') { + if (yych <= ' ') goto yy305; + if (yych <= '!') goto yy227; + } else { + if (yych == ';') goto yy283; + goto yy227; + } + } + yych = *++YYCURSOR; + goto yy234; +yy308: + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy304; + goto yy229; + } +/* *********************************** */ +yyc_ST_VARNAME: + { + static const unsigned char yybm[] = { + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 0, 0, 128, 128, 0, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 0, 0, 128, 0, 128, 0, 128, + 0, 0, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 0, 128, 0, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 0, 128, 128, 0, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 0, 0, 0, 0, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + }; + YYFILL(2); + yych = *YYCURSOR; + if (yych <= ')') { + if (yych <= '"') { + if (yych <= '\f') { + if (yych <= 0x0008) goto yy311; + if (yych <= '\n') goto yy313; + } else { + if (yych <= '\r') goto yy313; + if (yych >= '!') goto yy313; + } + } else { + if (yych <= '%') { + if (yych == '$') goto yy313; + } else { + if (yych != '\'') goto yy313; + } + } + } else { + if (yych <= '[') { + if (yych <= '<') { + if (yych == ';') goto yy313; + } else { + if (yych <= '=') goto yy313; + if (yych >= '[') goto yy313; + } + } else { + if (yych <= 'z') { + if (yych == '^') goto yy313; + } else { + if (yych == '}') goto yy315; + if (yych <= '~') goto yy313; + } + } + } +yy311: + ++YYCURSOR; + yych = *YYCURSOR; + goto yy318; +yy312: + {} +yy313: + ++YYCURSOR; + {} +yy315: + ++YYCURSOR; + {} +yy317: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy318: + if (yych & ~0xFF) { + goto yy317; + } else if (yybm[0+yych] & 128) { + goto yy317; + } + goto yy312; + } +} + diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.re b/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.re new file mode 100644 index 00000000..fa5fae2e --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed.icFwb.re @@ -0,0 +1,56 @@ +/*!re2c +re2c:yyfill:check = 0; +LNUM [0-9]+ +DNUM ([0-9]*[\.][0-9]+)|([0-9]+[\.][0-9]*) +NUMBER [-]?{LNUM}|{DNUM} +ANY_CHAR (.|[\n\t]) +NEWLINE ("\r"|"\n"|"\r\n") +TABS_AND_SPACES [ \t] +WHITESPACE [ \t]+ +CONSTANT [a-zA-Z_][a-zA-Z0-9_]* +LABEL [^=\n\r\t;&|^$~(){}!"\[]+ +TOKENS [:,.\[\]"'()&|^+-/*=%$!~<>?@{}] +OPERATORS [&|^~()!] +DOLLAR_CURLY "${" + +SECTION_RAW_CHARS [^\]\n\r] +SINGLE_QUOTED_CHARS [^'] +RAW_VALUE_CHARS [^\n\r;\000] + +LITERAL_DOLLAR ("$"([^{\000]|("\\"{ANY_CHAR}))) +VALUE_CHARS ([^$= \t\n\r;&|^~()!"'\000]|{LITERAL_DOLLAR}) +SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) + +"[" {} +"'"{SINGLE_QUOTED_CHARS}+"'" {} +"]"{TABS_AND_SPACES}*{NEWLINE}? {} +{LABEL}"["{TABS_AND_SPACES}* {} +{TABS_AND_SPACES}*"]" {} +{DOLLAR_CURLY} {} +{LABEL} {} +"}" {} +("true"|"on"|"yes"){TABS_AND_SPACES}* {} +("false"|"off"|"no"|"none"){TABS_AND_SPACES}* {} +("null"){TABS_AND_SPACES}* {} +{LABEL} {} +{TABS_AND_SPACES}*[=]{TABS_AND_SPACES}* {} +{RAW_VALUE_CHARS} {} +{SECTION_RAW_CHARS}+ {} +{TABS_AND_SPACES}*{NEWLINE} {} +{CONSTANT} {} +{NUMBER} {} +{TOKENS} {} +{OPERATORS}{TABS_AND_SPACES}* {} +[=] {} +{VALUE_CHARS}+ {} +{SECTION_VALUE_CHARS}+ {} +{TABS_AND_SPACES}*["] {} +["]{TABS_AND_SPACES}* {} +[^] {} +{WHITESPACE} {} +{TABS_AND_SPACES}+ {} +{TABS_AND_SPACES}*{NEWLINE} {} +{TABS_AND_SPACES}*[;][^\r\n]*{NEWLINE} {} +[^] {} +<*>[^] {} +*/ diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.c b/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.c new file mode 100644 index 00000000..0e5e607c --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.c @@ -0,0 +1,82 @@ +/* Generated by re2c */ + +{ + YYCTYPE yych; + unsigned int yyaccept = 0; + static const unsigned char yybm[] = { + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 64, 0, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 128, 128, 128, 128, 128, + }; + if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); + yych = *YYCURSOR; + if (yych == '1') goto yy4; + yyaccept = 0; + yych = *(YYMARKER = ++YYCURSOR); + if (yych != '1') goto yy9; +yy3: + { default action } +yy4: + yych = *++YYCURSOR; + goto yy3; +yy5: + yyaccept = 1; + YYMARKER = ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; + if (yych & ~0xFF) { + goto yy8; + } else if (yybm[0+yych] & 128) { + goto yy8; + } + if (yych <= '0') goto yy5; +yy7: + { action } +yy8: + ++YYCURSOR; + if (YYLIMIT <= YYCURSOR) YYFILL(1); + yych = *YYCURSOR; +yy9: + if (yych & ~0xFF) { + goto yy8; + } else if (yybm[0+yych] & 128) { + goto yy8; + } + if (yych <= '0') goto yy5; + YYCURSOR = YYMARKER; + if (yyaccept == 0) { + goto yy3; + } else { + goto yy7; + } +} + diff --git a/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.re b/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.re new file mode 100644 index 00000000..57c07ace --- /dev/null +++ b/re2c/test/php20150211_zend_ini_scanner_trimmed_minimal_wb_bug.iwb.re @@ -0,0 +1,6 @@ +/*!re2c + + [^1]+ "0" { action } + [^] { default action } + +*/