From: Nikita Popov Date: Thu, 23 Mar 2017 21:49:51 +0000 (+0100) Subject: Merge branch 'PHP-7.0' into PHP-7.1 X-Git-Tag: php-7.1.4RC1~14 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e3e35476273881c6b60ee280f58a7ce2b41b6ab6;p=php Merge branch 'PHP-7.0' into PHP-7.1 --- e3e35476273881c6b60ee280f58a7ce2b41b6ab6 diff --cc Zend/zend_language_scanner.c index 52583560da,d5b41a1ef5..99372f0f2d --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@@ -1151,18 -1164,16 +1151,16 @@@ restart } /* *********************************** */ yyc_INITIAL: - - YYDEBUG(0, *YYCURSOR); + YYDEBUG(1, *YYCURSOR); YYFILL(7); yych = *YYCURSOR; - if (yych != '<') goto yy4; - YYDEBUG(2, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '?') goto yy5; - yy3: + if (yych == '<') goto yy5; YYDEBUG(3, *YYCURSOR); + ++YYCURSOR; + yy4: + YYDEBUG(4, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1804 "Zend/zend_language_scanner.l" -#line 1818 "Zend/zend_language_scanner.l" ++#line 1805 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { RETURN_TOKEN(END); @@@ -1207,25 -1218,23 +1205,23 @@@ inline_char_handler HANDLE_NEWLINES(yytext, yyleng); RETURN_TOKEN(T_INLINE_HTML); } - #line 1211 "Zend/zend_language_scanner.c" - yy4: - YYDEBUG(4, *YYCURSOR); - yych = *++YYCURSOR; - goto yy3; -#line 1222 "Zend/zend_language_scanner.c" ++#line 1209 "Zend/zend_language_scanner.c" yy5: YYDEBUG(5, *YYCURSOR); - yyaccept = 0; + yych = *++YYCURSOR; + if (yych != '?') goto yy4; + YYDEBUG(6, *YYCURSOR); yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'O') { - if (yych == '=') goto yy7; + if (yych == '=') goto yy8; } else { - if (yych <= 'P') goto yy9; - if (yych == 'p') goto yy9; + if (yych <= 'P') goto yy10; + if (yych == 'p') goto yy10; } - yy6: - YYDEBUG(6, *YYCURSOR); + yy7: + YYDEBUG(7, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1795 "Zend/zend_language_scanner.l" -#line 1809 "Zend/zend_language_scanner.l" ++#line 1796 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { BEGIN(ST_IN_SCRIPTING); @@@ -1234,60 -1243,60 +1230,60 @@@ goto inline_char_handler; } } - #line 1238 "Zend/zend_language_scanner.c" - yy7: - YYDEBUG(7, *YYCURSOR); - ++YYCURSOR; -#line 1247 "Zend/zend_language_scanner.c" ++#line 1234 "Zend/zend_language_scanner.c" + yy8: YYDEBUG(8, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(9, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1782 "Zend/zend_language_scanner.l" -#line 1796 "Zend/zend_language_scanner.l" ++#line 1783 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); RETURN_TOKEN(T_OPEN_TAG_WITH_ECHO); } - #line 1249 "Zend/zend_language_scanner.c" - yy9: - YYDEBUG(9, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy11; - if (yych == 'h') goto yy11; -#line 1258 "Zend/zend_language_scanner.c" ++#line 1245 "Zend/zend_language_scanner.c" yy10: YYDEBUG(10, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy6; + yych = *++YYCURSOR; + if (yych == 'H') goto yy12; + if (yych == 'h') goto yy12; yy11: YYDEBUG(11, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy12; - if (yych != 'p') goto yy10; + YYCURSOR = YYMARKER; + goto yy7; yy12: YYDEBUG(12, *YYCURSOR); yych = *++YYCURSOR; + if (yych == 'P') goto yy13; + if (yych != 'p') goto yy11; + yy13: + YYDEBUG(13, *YYCURSOR); + yych = *++YYCURSOR; if (yych <= '\f') { - if (yych <= 0x08) goto yy10; - if (yych >= '\v') goto yy10; + if (yych <= 0x08) goto yy11; + if (yych >= '\v') goto yy11; } else { - if (yych <= '\r') goto yy15; - if (yych != ' ') goto yy10; + if (yych <= '\r') goto yy16; + if (yych != ' ') goto yy11; } - yy13: - YYDEBUG(13, *YYCURSOR); - ++YYCURSOR; yy14: YYDEBUG(14, *YYCURSOR); + ++YYCURSOR; + yy15: + YYDEBUG(15, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1788 "Zend/zend_language_scanner.l" -#line 1802 "Zend/zend_language_scanner.l" ++#line 1789 "Zend/zend_language_scanner.l" { HANDLE_NEWLINE(yytext[yyleng-1]); BEGIN(ST_IN_SCRIPTING); RETURN_TOKEN(T_OPEN_TAG); } - #line 1286 "Zend/zend_language_scanner.c" - yy15: - YYDEBUG(15, *YYCURSOR); -#line 1295 "Zend/zend_language_scanner.c" ++#line 1282 "Zend/zend_language_scanner.c" + yy16: + YYDEBUG(16, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy13; - goto yy14; + if ((yych = *YYCURSOR) == '\n') goto yy14; + goto yy15; /* *********************************** */ yyc_ST_BACKQUOTE: { @@@ -1329,30 -1338,17 +1325,17 @@@ YYFILL(2); yych = *YYCURSOR; if (yych <= '_') { - if (yych != '$') goto yy23; - } else { - if (yych <= '`') goto yy21; - if (yych == '{') goto yy20; - goto yy23; - } - YYDEBUG(18, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy19; - if (yych <= 'Z') goto yy26; - if (yych >= '_') goto yy26; + if (yych == '$') goto yy21; } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy26; - } else { - if (yych <= '{') goto yy29; - if (yych >= 0x80) goto yy26; - } + if (yych <= '`') goto yy22; + if (yych == '{') goto yy24; } - yy19: YYDEBUG(19, *YYCURSOR); + ++YYCURSOR; + yy20: + YYDEBUG(20, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2214 "Zend/zend_language_scanner.l" -#line 2228 "Zend/zend_language_scanner.l" ++#line 2215 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { RETURN_TOKEN(END); @@@ -1393,118 -1389,132 +1376,132 @@@ zend_scan_escape_string(zendlval, yytext, yyleng, '`'); RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); } - #line 1397 "Zend/zend_language_scanner.c" - yy20: - YYDEBUG(20, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy24; - goto yy19; -#line 1393 "Zend/zend_language_scanner.c" ++#line 1380 "Zend/zend_language_scanner.c" yy21: YYDEBUG(21, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych <= '_') { + if (yych <= '@') goto yy20; + if (yych <= 'Z') goto yy25; + if (yych <= '^') goto yy20; + goto yy25; + } else { + if (yych <= 'z') { + if (yych <= '`') goto yy20; + goto yy25; + } else { + if (yych <= '{') goto yy28; - if (yych <= '~') goto yy20; ++ if (yych <= 0x7F) goto yy20; + goto yy25; + } + } + yy22: YYDEBUG(22, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(23, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2158 "Zend/zend_language_scanner.l" -#line 2172 "Zend/zend_language_scanner.l" ++#line 2159 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); RETURN_TOKEN('`'); } - #line 1413 "Zend/zend_language_scanner.c" - yy23: - YYDEBUG(23, *YYCURSOR); - yych = *++YYCURSOR; - goto yy19; -#line 1422 "Zend/zend_language_scanner.c" ++#line 1409 "Zend/zend_language_scanner.c" yy24: YYDEBUG(24, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '$') goto yy30; + goto yy20; + yy25: YYDEBUG(25, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 2145 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (zend_long) '{'; - yy_push_state(ST_IN_SCRIPTING); - yyless(1); - RETURN_TOKEN(T_CURLY_OPEN); - } - #line 1430 "Zend/zend_language_scanner.c" - yy26: - YYDEBUG(26, *YYCURSOR); - yyaccept = 0; YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(27, *YYCURSOR); + YYDEBUG(26, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy26; + goto yy25; } - if (yych == '-') goto yy31; - if (yych == '[') goto yy33; - yy28: - YYDEBUG(28, *YYCURSOR); + if (yych == '-') goto yy32; + if (yych <= '@') goto yy27; + if (yych <= '[') goto yy34; + yy27: + YYDEBUG(27, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1869 "Zend/zend_language_scanner.l" -#line 1883 "Zend/zend_language_scanner.l" ++#line 1870 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1451 "Zend/zend_language_scanner.c" - yy29: - YYDEBUG(29, *YYCURSOR); -#line 1448 "Zend/zend_language_scanner.c" ++#line 1435 "Zend/zend_language_scanner.c" + yy28: + YYDEBUG(28, *YYCURSOR); ++YYCURSOR; - YYDEBUG(30, *YYCURSOR); + YYDEBUG(29, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1587 "Zend/zend_language_scanner.l" -#line 1601 "Zend/zend_language_scanner.l" ++#line 1588 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME); RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES); } - #line 1462 "Zend/zend_language_scanner.c" - yy31: -#line 1459 "Zend/zend_language_scanner.c" ++#line 1446 "Zend/zend_language_scanner.c" + yy30: + YYDEBUG(30, *YYCURSOR); + ++YYCURSOR; YYDEBUG(31, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy35; + yyleng = YYCURSOR - SCNG(yy_text); -#line 2159 "Zend/zend_language_scanner.l" ++#line 2146 "Zend/zend_language_scanner.l" + { + Z_LVAL_P(zendlval) = (zend_long) '{'; + yy_push_state(ST_IN_SCRIPTING); + yyless(1); + RETURN_TOKEN(T_CURLY_OPEN); + } -#line 1472 "Zend/zend_language_scanner.c" ++#line 1459 "Zend/zend_language_scanner.c" yy32: YYDEBUG(32, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy28; + yych = *++YYCURSOR; + if (yych == '>') goto yy36; yy33: YYDEBUG(33, *YYCURSOR); - ++YYCURSOR; + YYCURSOR = YYMARKER; + goto yy27; + yy34: YYDEBUG(34, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(35, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1862 "Zend/zend_language_scanner.l" -#line 1876 "Zend/zend_language_scanner.l" ++#line 1863 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1483 "Zend/zend_language_scanner.c" - yy35: - YYDEBUG(35, *YYCURSOR); -#line 1493 "Zend/zend_language_scanner.c" ++#line 1480 "Zend/zend_language_scanner.c" + yy36: + YYDEBUG(36, *YYCURSOR); yych = *++YYCURSOR; if (yych <= '_') { - if (yych <= '@') goto yy32; - if (yych <= 'Z') goto yy36; - if (yych <= '^') goto yy32; + if (yych <= '@') goto yy33; + if (yych <= 'Z') goto yy37; + if (yych <= '^') goto yy33; } else { - if (yych <= '`') goto yy32; - if (yych <= 'z') goto yy36; - if (yych <= 0x7F) goto yy32; + if (yych <= '`') goto yy33; + if (yych <= 'z') goto yy37; - if (yych <= '~') goto yy33; ++ if (yych <= 0x7F) goto yy33; } - yy36: - YYDEBUG(36, *YYCURSOR); - ++YYCURSOR; + yy37: YYDEBUG(37, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(38, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1853 "Zend/zend_language_scanner.l" -#line 1867 "Zend/zend_language_scanner.l" ++#line 1854 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1508 "Zend/zend_language_scanner.c" -#line 1518 "Zend/zend_language_scanner.c" ++#line 1505 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOUBLE_QUOTES: @@@ -1548,31 -1558,16 +1545,16 @@@ yych = *YYCURSOR; if (yych <= '#') { if (yych == '"') goto yy43; - goto yy45; - } else { - if (yych <= '$') goto yy40; - if (yych == '{') goto yy42; - goto yy45; - } - yy40: - YYDEBUG(40, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy41; - if (yych <= 'Z') goto yy48; - if (yych >= '_') goto yy48; } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy48; - } else { - if (yych <= '{') goto yy51; - if (yych >= 0x80) goto yy48; - } + if (yych <= '$') goto yy45; + if (yych == '{') goto yy46; } - yy41: YYDEBUG(41, *YYCURSOR); + ++YYCURSOR; + yy42: + YYDEBUG(42, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2164 "Zend/zend_language_scanner.l" -#line 2178 "Zend/zend_language_scanner.l" ++#line 2165 "Zend/zend_language_scanner.l" { if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; @@@ -1621,129 -1616,143 +1603,143 @@@ double_quotes_scan_done zend_scan_escape_string(zendlval, yytext, yyleng, '"'); RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); } - #line 1625 "Zend/zend_language_scanner.c" - yy42: - YYDEBUG(42, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy46; - goto yy41; -#line 1620 "Zend/zend_language_scanner.c" ++#line 1607 "Zend/zend_language_scanner.c" yy43: YYDEBUG(43, *YYCURSOR); ++YYCURSOR; YYDEBUG(44, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2153 "Zend/zend_language_scanner.l" -#line 2167 "Zend/zend_language_scanner.l" ++#line 2154 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); RETURN_TOKEN('"'); } - #line 1641 "Zend/zend_language_scanner.c" -#line 1631 "Zend/zend_language_scanner.c" ++#line 1618 "Zend/zend_language_scanner.c" yy45: YYDEBUG(45, *YYCURSOR); yych = *++YYCURSOR; - goto yy41; + if (yych <= '_') { + if (yych <= '@') goto yy42; + if (yych <= 'Z') goto yy47; + if (yych <= '^') goto yy42; + goto yy47; + } else { + if (yych <= 'z') { + if (yych <= '`') goto yy42; + goto yy47; + } else { + if (yych <= '{') goto yy50; - if (yych <= '~') goto yy42; ++ if (yych <= 0x7F) goto yy42; + goto yy47; + } + } yy46: YYDEBUG(46, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '$') goto yy52; + goto yy42; + yy47: YYDEBUG(47, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 2145 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (zend_long) '{'; - yy_push_state(ST_IN_SCRIPTING); - yyless(1); - RETURN_TOKEN(T_CURLY_OPEN); - } - #line 1658 "Zend/zend_language_scanner.c" - yy48: - YYDEBUG(48, *YYCURSOR); - yyaccept = 0; YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(49, *YYCURSOR); + YYDEBUG(48, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy48; + goto yy47; } - if (yych == '-') goto yy53; - if (yych == '[') goto yy55; - yy50: - YYDEBUG(50, *YYCURSOR); + if (yych == '-') goto yy54; + if (yych <= '@') goto yy49; + if (yych <= '[') goto yy56; + yy49: + YYDEBUG(49, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1869 "Zend/zend_language_scanner.l" -#line 1883 "Zend/zend_language_scanner.l" ++#line 1870 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1679 "Zend/zend_language_scanner.c" - yy51: - YYDEBUG(51, *YYCURSOR); -#line 1675 "Zend/zend_language_scanner.c" ++#line 1662 "Zend/zend_language_scanner.c" + yy50: + YYDEBUG(50, *YYCURSOR); ++YYCURSOR; - YYDEBUG(52, *YYCURSOR); + YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1587 "Zend/zend_language_scanner.l" -#line 1601 "Zend/zend_language_scanner.l" ++#line 1588 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME); RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES); } - #line 1690 "Zend/zend_language_scanner.c" - yy53: -#line 1686 "Zend/zend_language_scanner.c" ++#line 1673 "Zend/zend_language_scanner.c" + yy52: + YYDEBUG(52, *YYCURSOR); + ++YYCURSOR; YYDEBUG(53, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy57; + yyleng = YYCURSOR - SCNG(yy_text); -#line 2159 "Zend/zend_language_scanner.l" ++#line 2146 "Zend/zend_language_scanner.l" + { + Z_LVAL_P(zendlval) = (zend_long) '{'; + yy_push_state(ST_IN_SCRIPTING); + yyless(1); + RETURN_TOKEN(T_CURLY_OPEN); + } -#line 1699 "Zend/zend_language_scanner.c" ++#line 1686 "Zend/zend_language_scanner.c" yy54: YYDEBUG(54, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy50; + yych = *++YYCURSOR; + if (yych == '>') goto yy58; yy55: YYDEBUG(55, *YYCURSOR); - ++YYCURSOR; + YYCURSOR = YYMARKER; + goto yy49; + yy56: YYDEBUG(56, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(57, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1862 "Zend/zend_language_scanner.l" -#line 1876 "Zend/zend_language_scanner.l" ++#line 1863 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1711 "Zend/zend_language_scanner.c" - yy57: - YYDEBUG(57, *YYCURSOR); -#line 1720 "Zend/zend_language_scanner.c" ++#line 1707 "Zend/zend_language_scanner.c" + yy58: + YYDEBUG(58, *YYCURSOR); yych = *++YYCURSOR; if (yych <= '_') { - if (yych <= '@') goto yy54; - if (yych <= 'Z') goto yy58; - if (yych <= '^') goto yy54; + if (yych <= '@') goto yy55; + if (yych <= 'Z') goto yy59; + if (yych <= '^') goto yy55; } else { - if (yych <= '`') goto yy54; - if (yych <= 'z') goto yy58; - if (yych <= 0x7F) goto yy54; + if (yych <= '`') goto yy55; + if (yych <= 'z') goto yy59; - if (yych <= '~') goto yy55; ++ if (yych <= 0x7F) goto yy55; } - yy58: - YYDEBUG(58, *YYCURSOR); - ++YYCURSOR; + yy59: YYDEBUG(59, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(60, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1853 "Zend/zend_language_scanner.l" -#line 1867 "Zend/zend_language_scanner.l" ++#line 1854 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1736 "Zend/zend_language_scanner.c" -#line 1745 "Zend/zend_language_scanner.c" ++#line 1732 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_END_HEREDOC: - YYDEBUG(60, *YYCURSOR); + YYDEBUG(61, *YYCURSOR); YYFILL(1); yych = *YYCURSOR; - YYDEBUG(62, *YYCURSOR); - ++YYCURSOR; YYDEBUG(63, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(64, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2131 "Zend/zend_language_scanner.l" -#line 2145 "Zend/zend_language_scanner.l" ++#line 2132 "Zend/zend_language_scanner.l" { zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack)); @@@ -1756,7 -1765,7 +1752,7 @@@ BEGIN(ST_IN_SCRIPTING); RETURN_TOKEN(T_END_HEREDOC); } - #line 1760 "Zend/zend_language_scanner.c" -#line 1769 "Zend/zend_language_scanner.c" ++#line 1756 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_HEREDOC: { @@@ -1794,31 -1803,17 +1790,17 @@@ 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, }; - YYDEBUG(64, *YYCURSOR); + YYDEBUG(65, *YYCURSOR); YYFILL(2); yych = *YYCURSOR; - if (yych == '$') goto yy66; - if (yych == '{') goto yy68; - goto yy69; - yy66: - YYDEBUG(66, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy67; - if (yych <= 'Z') goto yy72; - if (yych >= '_') goto yy72; - } else { - if (yych <= 'z') { - if (yych >= 'a') goto yy72; - } else { - if (yych <= '{') goto yy75; - if (yych >= 0x80) goto yy72; - } - } - yy67: + if (yych == '$') goto yy69; + if (yych == '{') goto yy70; YYDEBUG(67, *YYCURSOR); + ++YYCURSOR; + yy68: + YYDEBUG(68, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2256 "Zend/zend_language_scanner.l" -#line 2270 "Zend/zend_language_scanner.l" ++#line 2257 "Zend/zend_language_scanner.l" { int newline = 0; @@@ -1891,149 -1886,165 +1873,165 @@@ heredoc_scan_done zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0); RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); } - #line 1895 "Zend/zend_language_scanner.c" - yy68: - YYDEBUG(68, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '$') goto yy70; - goto yy67; -#line 1890 "Zend/zend_language_scanner.c" ++#line 1877 "Zend/zend_language_scanner.c" yy69: YYDEBUG(69, *YYCURSOR); yych = *++YYCURSOR; - goto yy67; + if (yych <= '_') { + if (yych <= '@') goto yy68; + if (yych <= 'Z') goto yy71; + if (yych <= '^') goto yy68; + goto yy71; + } else { + if (yych <= 'z') { + if (yych <= '`') goto yy68; + goto yy71; + } else { + if (yych <= '{') goto yy74; - if (yych <= '~') goto yy68; ++ if (yych <= 0x7F) goto yy68; + goto yy71; + } + } yy70: YYDEBUG(70, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '$') goto yy76; + goto yy68; + yy71: YYDEBUG(71, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 2145 "Zend/zend_language_scanner.l" - { - Z_LVAL_P(zendlval) = (zend_long) '{'; - yy_push_state(ST_IN_SCRIPTING); - yyless(1); - RETURN_TOKEN(T_CURLY_OPEN); - } - #line 1917 "Zend/zend_language_scanner.c" - yy72: - YYDEBUG(72, *YYCURSOR); - yyaccept = 0; YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(73, *YYCURSOR); + YYDEBUG(72, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy72; + goto yy71; } - if (yych == '-') goto yy77; - if (yych == '[') goto yy79; - yy74: - YYDEBUG(74, *YYCURSOR); + if (yych == '-') goto yy78; + if (yych <= '@') goto yy73; + if (yych <= '[') goto yy80; + yy73: + YYDEBUG(73, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1869 "Zend/zend_language_scanner.l" -#line 1883 "Zend/zend_language_scanner.l" ++#line 1870 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1938 "Zend/zend_language_scanner.c" - yy75: - YYDEBUG(75, *YYCURSOR); -#line 1934 "Zend/zend_language_scanner.c" ++#line 1921 "Zend/zend_language_scanner.c" + yy74: + YYDEBUG(74, *YYCURSOR); ++YYCURSOR; - YYDEBUG(76, *YYCURSOR); + YYDEBUG(75, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1587 "Zend/zend_language_scanner.l" -#line 1601 "Zend/zend_language_scanner.l" ++#line 1588 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME); RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES); } - #line 1949 "Zend/zend_language_scanner.c" - yy77: -#line 1945 "Zend/zend_language_scanner.c" ++#line 1932 "Zend/zend_language_scanner.c" + yy76: + YYDEBUG(76, *YYCURSOR); + ++YYCURSOR; YYDEBUG(77, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '>') goto yy81; + yyleng = YYCURSOR - SCNG(yy_text); -#line 2159 "Zend/zend_language_scanner.l" ++#line 2146 "Zend/zend_language_scanner.l" + { + Z_LVAL_P(zendlval) = (zend_long) '{'; + yy_push_state(ST_IN_SCRIPTING); + yyless(1); + RETURN_TOKEN(T_CURLY_OPEN); + } -#line 1958 "Zend/zend_language_scanner.c" ++#line 1945 "Zend/zend_language_scanner.c" yy78: YYDEBUG(78, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy74; + yych = *++YYCURSOR; + if (yych == '>') goto yy82; yy79: YYDEBUG(79, *YYCURSOR); - ++YYCURSOR; + YYCURSOR = YYMARKER; + goto yy73; + yy80: YYDEBUG(80, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1862 "Zend/zend_language_scanner.l" -#line 1876 "Zend/zend_language_scanner.l" ++#line 1863 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1970 "Zend/zend_language_scanner.c" - yy81: - YYDEBUG(81, *YYCURSOR); -#line 1979 "Zend/zend_language_scanner.c" ++#line 1966 "Zend/zend_language_scanner.c" + yy82: + YYDEBUG(82, *YYCURSOR); yych = *++YYCURSOR; if (yych <= '_') { - if (yych <= '@') goto yy78; - if (yych <= 'Z') goto yy82; - if (yych <= '^') goto yy78; + if (yych <= '@') goto yy79; + if (yych <= 'Z') goto yy83; + if (yych <= '^') goto yy79; } else { - if (yych <= '`') goto yy78; - if (yych <= 'z') goto yy82; - if (yych <= 0x7F) goto yy78; + if (yych <= '`') goto yy79; + if (yych <= 'z') goto yy83; - if (yych <= '~') goto yy79; ++ if (yych <= 0x7F) goto yy79; } - yy82: - YYDEBUG(82, *YYCURSOR); - ++YYCURSOR; + yy83: YYDEBUG(83, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1853 "Zend/zend_language_scanner.l" -#line 1867 "Zend/zend_language_scanner.l" ++#line 1854 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY); zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 1995 "Zend/zend_language_scanner.c" -#line 2004 "Zend/zend_language_scanner.c" ++#line 1991 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_IN_SCRIPTING: { static const unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, - 0, 192, 64, 0, 0, 64, 0, 0, + 0, 36, 4, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 192, 0, 0, 0, 0, 0, 0, 0, + 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 60, 60, 44, 44, 44, 44, 44, 44, - 44, 44, 0, 0, 0, 0, 0, 0, - 0, 36, 36, 36, 36, 36, 36, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 4, - 0, 36, 36, 36, 36, 36, 36, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 0, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, + 216, 216, 152, 152, 152, 152, 152, 152, + 152, 152, 0, 0, 0, 0, 0, 0, + 0, 144, 144, 144, 144, 144, 144, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 0, 0, 0, 0, 16, + 0, 144, 144, 144, 144, 144, 144, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 0, 0, 0, 0, 16, ++ 16, 16, 16, 0, 0, 0, 0, 0, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, }; - YYDEBUG(84, *YYCURSOR); + YYDEBUG(85, *YYCURSOR); YYFILL(16); yych = *YYCURSOR; - YYDEBUG(-1, yych); + if (yybm[0+yych] & 4) { + goto yy89; + } switch (yych) { case 0x00: case 0x01: @@@ -2063,20 -2077,16 +2064,17 @@@ case 0x1C: case 0x1D: case 0x1E: - case 0x1F: goto yy87; + case 0x1F: - case 0x7F: goto yy147; - case '\t': - case '\n': - case '\r': - case ' ': goto yy103; - case '!': goto yy118; - case '"': goto yy143; - case '#': goto yy139; - case '$': goto yy129; - case '%': goto yy123; - case '&': goto yy124; - case '\'': goto yy141; - case '(': goto yy112; ++ case 0x7F: goto yy87; + case ' ': + case '!': goto yy92; + case '"': goto yy94; + case '#': goto yy96; + case '$': goto yy98; + case '%': goto yy99; + case '&': goto yy100; + case '\'': goto yy101; + case '(': goto yy103; case ')': case ',': case ';': @@@ -2174,199 -2165,143 +2153,143 @@@ } yy87: YYDEBUG(87, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(88, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1892 "Zend/zend_language_scanner.l" -#line 2401 "Zend/zend_language_scanner.l" ++#line 2388 "Zend/zend_language_scanner.l" { - zend_copy_value(zendlval, yytext, yyleng); - RETURN_TOKEN(T_STRING); + if (YYCURSOR > YYLIMIT) { + RETURN_TOKEN(END); + } + + zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); + goto restart; } - #line 2184 "Zend/zend_language_scanner.c" - yy88: - YYDEBUG(88, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych <= 'H') { - if (yych == 'E') goto yy686; - goto yy150; - } else { - if (yych <= 'I') goto yy687; - if (yych <= 'N') goto yy150; - goto yy688; - } - } else { - if (yych <= 'h') { - if (yych == 'e') goto yy686; - goto yy150; - } else { - if (yych <= 'i') goto yy687; - if (yych == 'o') goto yy688; - goto yy150; - } - } -#line 2181 "Zend/zend_language_scanner.c" ++#line 2169 "Zend/zend_language_scanner.c" yy89: YYDEBUG(89, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych <= 'N') { - if (yych == 'I') goto yy662; - goto yy150; - } else { - if (yych <= 'O') goto yy663; - if (yych <= 'T') goto yy150; - goto yy664; - } - } else { - if (yych <= 'n') { - if (yych == 'i') goto yy662; - goto yy150; - } else { - if (yych <= 'o') goto yy663; - if (yych == 'u') goto yy664; - goto yy150; - } - } - yy90: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(90, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych <= 'K') { - if (yych == 'A') goto yy627; - goto yy150; - } else { - if (yych <= 'L') goto yy628; - if (yych <= 'N') goto yy150; - goto yy629; - } - } else { - if (yych <= 'k') { - if (yych == 'a') goto yy627; - goto yy150; - } else { - if (yych <= 'l') goto yy628; - if (yych == 'o') goto yy629; - goto yy150; - } + if (yybm[0+yych] & 4) { + goto yy89; } - yy91: YYDEBUG(91, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy609; - if (yych == 'e') goto yy609; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1305 "Zend/zend_language_scanner.l" ++#line 1292 "Zend/zend_language_scanner.l" + { + HANDLE_NEWLINES(yytext, yyleng); + RETURN_TOKEN(T_WHITESPACE); + } -#line 2198 "Zend/zend_language_scanner.c" ++#line 2186 "Zend/zend_language_scanner.c" yy92: YYDEBUG(92, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy597; - if (yych == 'i') goto yy597; - goto yy150; + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy153; yy93: YYDEBUG(93, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'R') { - if (yych == 'H') goto yy585; - if (yych <= 'Q') goto yy150; - goto yy586; - } else { - if (yych <= 'h') { - if (yych <= 'g') goto yy150; - goto yy585; - } else { - if (yych == 'r') goto yy586; - goto yy150; - } - } + yyleng = YYCURSOR - SCNG(yy_text); -#line 1590 "Zend/zend_language_scanner.l" ++#line 1577 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(yytext[0]); + } -#line 2210 "Zend/zend_language_scanner.c" ++#line 2198 "Zend/zend_language_scanner.c" yy94: YYDEBUG(94, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'S') { - if (yych <= 'L') { - if (yych == 'F') goto yy532; - goto yy150; - } else { - if (yych <= 'M') goto yy534; - if (yych <= 'N') goto yy535; - if (yych <= 'R') goto yy150; - goto yy536; - } - } else { - if (yych <= 'm') { - if (yych == 'f') goto yy532; - if (yych <= 'l') goto yy150; - goto yy534; - } else { - if (yych <= 'n') goto yy535; - if (yych == 's') goto yy536; - goto yy150; - } - } - yy95: + ++YYCURSOR; YYDEBUG(95, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy527; - if (yych == 'h') goto yy527; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 2049 "Zend/zend_language_scanner.l" ++#line 2036 "Zend/zend_language_scanner.l" + { + int bprefix = (yytext[0] != '"') ? 1 : 0; + + while (YYCURSOR < YYLIMIT) { + switch (*YYCURSOR++) { + case '"': + yyleng = YYCURSOR - SCNG(yy_text); + zend_scan_escape_string(zendlval, yytext+bprefix+1, yyleng-bprefix-2, '"'); + RETURN_TOKEN(T_CONSTANT_ENCAPSED_STRING); + case '$': + if (IS_LABEL_START(*YYCURSOR) || *YYCURSOR == '{') { + break; + } + continue; + case '{': + if (*YYCURSOR == '$') { + break; + } + continue; + case '\\': + if (YYCURSOR < YYLIMIT) { + YYCURSOR++; + } + /* fall through */ + default: + continue; + } + + YYCURSOR--; + break; + } + + /* Remember how much was scanned to save rescanning */ + SET_DOUBLE_QUOTES_SCANNED_LENGTH(YYCURSOR - SCNG(yy_text) - yyleng); + + YYCURSOR = SCNG(yy_text) + yyleng; + + BEGIN(ST_DOUBLE_QUOTES); + RETURN_TOKEN('"'); + } -#line 2257 "Zend/zend_language_scanner.c" ++#line 2245 "Zend/zend_language_scanner.c" yy96: YYDEBUG(96, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'S') { - if (yych <= 'M') { - if (yych == 'B') goto yy509; - goto yy150; - } else { - if (yych <= 'N') goto yy510; - if (yych <= 'Q') goto yy150; - if (yych <= 'R') goto yy511; - goto yy512; - } - } else { - if (yych <= 'n') { - if (yych == 'b') goto yy509; - if (yych <= 'm') goto yy150; - goto yy510; - } else { - if (yych <= 'q') goto yy150; - if (yych <= 'r') goto yy511; - if (yych <= 's') goto yy512; - goto yy150; - } - } - yy97: + ++YYCURSOR; YYDEBUG(97, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'W') { - if (yych == 'T') goto yy497; - if (yych <= 'V') goto yy150; - goto yy498; - } else { - if (yych <= 't') { - if (yych <= 's') goto yy150; - goto yy497; - } else { - if (yych == 'w') goto yy498; - goto yy150; - } + yyleng = YYCURSOR - SCNG(yy_text); -#line 1912 "Zend/zend_language_scanner.l" ++#line 1899 "Zend/zend_language_scanner.l" + { + while (YYCURSOR < YYLIMIT) { + switch (*YYCURSOR++) { + case '\r': + if (*YYCURSOR == '\n') { + YYCURSOR++; + } + /* fall through */ + case '\n': + CG(zend_lineno)++; + break; + case '?': + if (*YYCURSOR == '>') { + YYCURSOR--; + break; + } + /* fall through */ + default: + continue; } + + break; + } + + yyleng = YYCURSOR - SCNG(yy_text); + + RETURN_TOKEN(T_COMMENT); + } -#line 2292 "Zend/zend_language_scanner.c" ++#line 2280 "Zend/zend_language_scanner.c" yy98: YYDEBUG(98, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') { - if (yych <= '"') { - if (yych <= '!') goto yy150; - goto yy489; - } else { - if (yych == '\'') goto yy490; - goto yy150; - } + yych = *++YYCURSOR; + if (yych <= '_') { + if (yych <= '@') goto yy93; + if (yych <= 'Z') goto yy155; + if (yych <= '^') goto yy93; + goto yy155; } else { - if (yych <= 'R') { - if (yych <= '<') goto yy488; - if (yych <= 'Q') goto yy150; - goto yy491; - } else { - if (yych == 'r') goto yy491; - goto yy150; - } + if (yych <= '`') goto yy93; + if (yych <= 'z') goto yy155; - if (yych <= '~') goto yy93; ++ if (yych <= 0x7F) goto yy93; + goto yy155; } yy99: YYDEBUG(99, *YYCURSOR); @@@ -2403,93 -2317,80 +2305,80 @@@ yy100 yy101: YYDEBUG(101, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '<') { - if (yych == '-') goto yy450; - } else { - if (yych <= '=') goto yy448; - if (yych <= '>') goto yy452; - } - yy102: YYDEBUG(102, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1576 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(yytext[0]); - } - #line 2420 "Zend/zend_language_scanner.c" - yy103: - YYDEBUG(103, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy447; - yy104: - YYDEBUG(104, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1291 "Zend/zend_language_scanner.l" - { - HANDLE_NEWLINES(yytext, yyleng); - RETURN_TOKEN(T_WHITESPACE); - } - #line 2434 "Zend/zend_language_scanner.c" - yy105: - YYDEBUG(105, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == ':') goto yy444; - goto yy102; - yy106: - YYDEBUG(106, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(107, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1316 "Zend/zend_language_scanner.l" -#line 1980 "Zend/zend_language_scanner.l" ++#line 1967 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_NS_SEPARATOR); - } - #line 2449 "Zend/zend_language_scanner.c" - yy108: - YYDEBUG(108, *YYCURSOR); - yyaccept = 1; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '/') { - if (yych == '.') goto yy441; - goto yy102; + register char *s, *t; + char *end; + int bprefix = (yytext[0] != '\'') ? 1 : 0; + + while (1) { + if (YYCURSOR < YYLIMIT) { + if (*YYCURSOR == '\'') { + YYCURSOR++; + yyleng = YYCURSOR - SCNG(yy_text); + + break; + } else if (*YYCURSOR++ == '\\' && YYCURSOR < YYLIMIT) { + YYCURSOR++; + } } else { - if (yych <= '9') goto yy437; - if (yych == '=') goto yy439; - goto yy102; + yyleng = YYLIMIT - SCNG(yy_text); + + /* Unclosed single quotes; treat similar to double quotes, but without a separate token + * for ' (unrecognized by parser), instead of old flex fallback to "Unexpected character..." + * rule, which continued in ST_IN_SCRIPTING state after the quote */ + ZVAL_NULL(zendlval); + RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); } - yy109: - YYDEBUG(109, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= '=') goto yy102; - if (yych <= '>') goto yy431; - if (yych <= '?') goto yy433; - goto yy102; - yy110: - YYDEBUG(110, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'E') { - if (yych == 'A') goto yy419; - if (yych <= 'D') goto yy150; - goto yy420; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy150; - goto yy419; - } else { - if (yych == 'e') goto yy420; - goto yy150; + } + + ZVAL_STRINGL(zendlval, yytext+bprefix+1, yyleng-bprefix-2); + + /* convert escape sequences */ + s = t = Z_STRVAL_P(zendlval); + end = s+Z_STRLEN_P(zendlval); + while (s= '0') goto yy154; + if (yybm[0+yych] & 8) { + goto yy112; + } + if (yych <= 'W') { + if (yych <= 'A') { + if (yych == '.') goto yy191; } else { - if (yych == 'B') goto yy162; - if (yych >= 'E') goto yy156; + if (yych <= 'B') goto yy200; + if (yych == 'E') goto yy201; } } else { - if (yych <= 'b') { - if (yych == 'X') goto yy161; - if (yych >= 'b') goto yy162; + if (yych <= 'd') { + if (yych <= 'X') goto yy202; + if (yych == 'b') goto yy200; } else { - if (yych <= 'e') { - if (yych >= 'e') goto yy156; - } else { - if (yych == 'x') goto yy161; - } + if (yych <= 'e') goto yy201; + if (yych == 'x') goto yy202; } } - yy136: - YYDEBUG(136, *YYCURSOR); + yy111: + YYDEBUG(111, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1646 "Zend/zend_language_scanner.l" -#line 1660 "Zend/zend_language_scanner.l" ++#line 1647 "Zend/zend_language_scanner.l" { char *end; if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ @@@ -2766,279 -2562,539 +2550,539 @@@ ZEND_ASSERT(!errno); RETURN_TOKEN(T_LNUMBER); } - #line 2770 "Zend/zend_language_scanner.c" - yy137: - YYDEBUG(137, *YYCURSOR); - yyaccept = 2; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '9') { - if (yych == '.') goto yy151; - if (yych <= '/') goto yy136; - goto yy154; -#line 2566 "Zend/zend_language_scanner.c" ++#line 2554 "Zend/zend_language_scanner.c" + yy112: + YYDEBUG(112, *YYCURSOR); + yyaccept = 1; + YYMARKER = ++YYCURSOR; + YYFILL(3); + yych = *YYCURSOR; + YYDEBUG(113, *YYCURSOR); + if (yybm[0+yych] & 8) { + goto yy112; + } + if (yych <= 'D') { + if (yych == '.') goto yy191; + goto yy111; } else { - if (yych <= 'E') { - if (yych <= 'D') goto yy136; - goto yy156; - } else { - if (yych == 'e') goto yy156; - goto yy136; - } + if (yych <= 'E') goto yy201; + if (yych == 'e') goto yy201; + goto yy111; } - yy138: - YYDEBUG(138, *YYCURSOR); + yy114: + YYDEBUG(114, *YYCURSOR); yych = *++YYCURSOR; - goto yy150; - yy139: - YYDEBUG(139, *YYCURSOR); + if (yych == ':') goto yy203; + goto yy93; + yy115: + YYDEBUG(115, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= ';') goto yy93; + if (yych <= '<') goto yy205; + if (yych <= '=') goto yy207; + if (yych <= '>') goto yy209; + goto yy93; + yy116: + YYDEBUG(116, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '<') goto yy93; + if (yych <= '=') goto yy210; + if (yych <= '>') goto yy212; + goto yy93; + yy117: + YYDEBUG(117, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '<') goto yy93; + if (yych <= '=') goto yy214; + if (yych <= '>') goto yy216; + goto yy93; + yy118: + YYDEBUG(118, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '=') goto yy93; + if (yych <= '>') goto yy218; + if (yych <= '?') goto yy220; + goto yy93; + yy119: + YYDEBUG(119, *YYCURSOR); ++YYCURSOR; - yy140: - YYDEBUG(140, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1898 "Zend/zend_language_scanner.l" - { - while (YYCURSOR < YYLIMIT) { - switch (*YYCURSOR++) { - case '\r': - if (*YYCURSOR == '\n') { - YYCURSOR++; - } - /* fall through */ - case '\n': - CG(zend_lineno)++; - break; - case '?': - if (*YYCURSOR == '>') { - YYCURSOR--; - break; - } - /* fall through */ - default: - continue; + if ((yych = *YYCURSOR) <= 'S') { + if (yych <= 'M') { + if (yych == 'B') goto yy222; + goto yy128; + } else { + if (yych <= 'N') goto yy223; + if (yych <= 'Q') goto yy128; + if (yych <= 'R') goto yy224; + goto yy225; + } + } else { + if (yych <= 'n') { + if (yych == 'b') goto yy222; + if (yych <= 'm') goto yy128; + goto yy223; + } else { + if (yych <= 'q') goto yy128; + if (yych <= 'r') goto yy224; + if (yych <= 's') goto yy225; + goto yy128; + } } - - break; - } - - yyleng = YYCURSOR - SCNG(yy_text); - - RETURN_TOKEN(T_COMMENT); - } - #line 2827 "Zend/zend_language_scanner.c" - yy141: - YYDEBUG(141, *YYCURSOR); - ++YYCURSOR; - yy142: - YYDEBUG(142, *YYCURSOR); + yy120: + YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1966 "Zend/zend_language_scanner.l" -#line 1906 "Zend/zend_language_scanner.l" ++#line 1893 "Zend/zend_language_scanner.l" { - register char *s, *t; - char *end; - int bprefix = (yytext[0] != '\'') ? 1 : 0; - - while (1) { - if (YYCURSOR < YYLIMIT) { - if (*YYCURSOR == '\'') { - YYCURSOR++; - yyleng = YYCURSOR - SCNG(yy_text); - - break; - } else if (*YYCURSOR++ == '\\' && YYCURSOR < YYLIMIT) { - YYCURSOR++; + zend_copy_value(zendlval, yytext, yyleng); + RETURN_TOKEN(T_STRING); + } -#line 2652 "Zend/zend_language_scanner.c" ++#line 2640 "Zend/zend_language_scanner.c" + yy121: + YYDEBUG(121, *YYCURSOR); + yyaccept = 2; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= ';') { + if (yych <= '"') { + if (yych <= '!') goto yy128; + goto yy94; + } else { + if (yych == '\'') goto yy101; + goto yy128; } } else { - yyleng = YYLIMIT - SCNG(yy_text); - - /* Unclosed single quotes; treat similar to double quotes, but without a separate token - * for ' (unrecognized by parser), instead of old flex fallback to "Unexpected character..." - * rule, which continued in ST_IN_SCRIPTING state after the quote */ - ZVAL_NULL(zendlval); - RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); + if (yych <= 'R') { + if (yych <= '<') goto yy227; + if (yych <= 'Q') goto yy128; + goto yy228; + } else { + if (yych == 'r') goto yy228; + goto yy128; + } } - } - - ZVAL_STRINGL(zendlval, yytext+bprefix+1, yyleng-bprefix-2); - - /* convert escape sequences */ - s = t = Z_STRVAL_P(zendlval); - end = s+Z_STRLEN_P(zendlval); - while (s= '0') goto yy155; + } else { + if (yych <= '@') goto yy157; + if (yych <= 'Z') goto yy155; + } + } else { + if (yych <= '`') { + if (yych <= '_') goto yy155; + } else { + if (yych <= 'z') goto yy155; - if (yych >= 0x7F) goto yy155; ++ if (yych >= 0x80) goto yy155; + } + } + yy157: + YYDEBUG(157, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1883 "Zend/zend_language_scanner.l" ++#line 1870 "Zend/zend_language_scanner.l" + { + zend_copy_value(zendlval, (yytext+1), (yyleng-1)); + RETURN_TOKEN(T_VARIABLE); } - #line 2950 "Zend/zend_language_scanner.c" - yy145: - YYDEBUG(145, *YYCURSOR); -#line 3035 "Zend/zend_language_scanner.c" ++#line 3023 "Zend/zend_language_scanner.c" + yy158: + YYDEBUG(158, *YYCURSOR); ++YYCURSOR; - YYDEBUG(146, *YYCURSOR); + YYDEBUG(159, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2125 "Zend/zend_language_scanner.l" -#line 1538 "Zend/zend_language_scanner.l" ++#line 1525 "Zend/zend_language_scanner.l" { - BEGIN(ST_BACKQUOTE); - RETURN_TOKEN('`'); + RETURN_TOKEN(T_MOD_EQUAL); } - #line 2961 "Zend/zend_language_scanner.c" - yy147: - YYDEBUG(147, *YYCURSOR); -#line 3045 "Zend/zend_language_scanner.c" ++#line 3033 "Zend/zend_language_scanner.c" + yy160: + YYDEBUG(160, *YYCURSOR); ++YYCURSOR; - YYDEBUG(148, *YYCURSOR); + YYDEBUG(161, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2387 "Zend/zend_language_scanner.l" -#line 1566 "Zend/zend_language_scanner.l" ++#line 1553 "Zend/zend_language_scanner.l" { - if (YYCURSOR > YYLIMIT) { - RETURN_TOKEN(END); - } - - zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); - goto restart; + RETURN_TOKEN(T_BOOLEAN_AND); } - #line 2976 "Zend/zend_language_scanner.c" - yy149: - YYDEBUG(149, *YYCURSOR); -#line 3055 "Zend/zend_language_scanner.c" ++#line 3043 "Zend/zend_language_scanner.c" + yy162: + YYDEBUG(162, *YYCURSOR); ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - yy150: - YYDEBUG(150, *YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy149; - } - goto yy87; - yy151: - YYDEBUG(151, *YYCURSOR); - yyaccept = 3; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - YYDEBUG(152, *YYCURSOR); - if (yybm[0+yych] & 8) { - goto yy151; - } - if (yych == 'E') goto yy156; - if (yych == 'e') goto yy156; - yy153: - YYDEBUG(153, *YYCURSOR); + YYDEBUG(163, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1740 "Zend/zend_language_scanner.l" -#line 1550 "Zend/zend_language_scanner.l" ++#line 1537 "Zend/zend_language_scanner.l" { - const char *end; - - ZVAL_DOUBLE(zendlval, zend_strtod(yytext, &end)); - /* errno isn't checked since we allow HUGE_VAL/INF overflow */ - ZEND_ASSERT(end == yytext + yyleng); - RETURN_TOKEN(T_DNUMBER); + RETURN_TOKEN(T_AND_EQUAL); } - #line 3012 "Zend/zend_language_scanner.c" - yy154: - YYDEBUG(154, *YYCURSOR); - yyaccept = 2; - YYMARKER = ++YYCURSOR; - YYFILL(3); -#line 3065 "Zend/zend_language_scanner.c" ++#line 3053 "Zend/zend_language_scanner.c" + yy164: + YYDEBUG(164, *YYCURSOR); + ++YYCURSOR; + YYFILL(7); yych = *YYCURSOR; - YYDEBUG(155, *YYCURSOR); - if (yych <= '9') { - if (yych == '.') goto yy151; - if (yych <= '/') goto yy136; - goto yy154; - } else { - if (yych <= 'E') { - if (yych <= 'D') goto yy136; - } else { - if (yych != 'e') goto yy136; - } + yy165: + YYDEBUG(165, *YYCURSOR); + if (yybm[0+yych] & 32) { + goto yy164; } - yy156: - YYDEBUG(156, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= ',') { - if (yych == '+') goto yy158; - } else { - if (yych <= '-') goto yy158; - if (yych <= '/') goto yy157; - if (yych <= '9') goto yy159; + switch (yych) { + case 'A': + case 'a': goto yy167; + case 'B': + case 'b': goto yy168; + case 'D': + case 'd': goto yy169; + case 'F': + case 'f': goto yy170; + case 'I': + case 'i': goto yy171; + case 'O': + case 'o': goto yy172; + case 'R': + case 'r': goto yy173; + case 'S': + case 's': goto yy174; + case 'U': + case 'u': goto yy175; + default: goto yy166; } - yy157: - YYDEBUG(157, *YYCURSOR); + yy166: + YYDEBUG(166, *YYCURSOR); YYCURSOR = YYMARKER; if (yyaccept <= 3) { if (yyaccept <= 1) { @@@ -3206,103 -3164,150 +3152,150 @@@ yy171 yy172: YYDEBUG(172, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy173; - if (yych != 'r') goto yy150; + if (yych == 'B') goto yy285; + if (yych == 'b') goto yy285; + goto yy166; yy173: YYDEBUG(173, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'E') goto yy286; + if (yych == 'e') goto yy286; + goto yy166; + yy174: YYDEBUG(174, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy287; + if (yych == 't') goto yy287; + goto yy166; + yy175: + YYDEBUG(175, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy288; + if (yych == 'n') goto yy288; + goto yy166; + yy176: + YYDEBUG(176, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy289; + YYDEBUG(177, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1564 "Zend/zend_language_scanner.l" -#line 1522 "Zend/zend_language_scanner.l" ++#line 1509 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_LOGICAL_XOR); + RETURN_TOKEN(T_POW); } - #line 3224 "Zend/zend_language_scanner.c" - yy175: - YYDEBUG(175, *YYCURSOR); -#line 3199 "Zend/zend_language_scanner.c" ++#line 3187 "Zend/zend_language_scanner.c" + yy178: + YYDEBUG(178, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(176, *YYCURSOR); + YYDEBUG(179, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1556 "Zend/zend_language_scanner.l" -#line 1518 "Zend/zend_language_scanner.l" ++#line 1505 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_LOGICAL_OR); + RETURN_TOKEN(T_MUL_EQUAL); } - #line 3237 "Zend/zend_language_scanner.c" - yy177: - YYDEBUG(177, *YYCURSOR); -#line 3209 "Zend/zend_language_scanner.c" ++#line 3197 "Zend/zend_language_scanner.c" + yy180: + YYDEBUG(180, *YYCURSOR); ++YYCURSOR; - YYDEBUG(178, *YYCURSOR); + YYDEBUG(181, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1544 "Zend/zend_language_scanner.l" -#line 1474 "Zend/zend_language_scanner.l" ++#line 1461 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_XOR_EQUAL); + RETURN_TOKEN(T_INC); } - #line 3247 "Zend/zend_language_scanner.c" - yy179: - YYDEBUG(179, *YYCURSOR); -#line 3219 "Zend/zend_language_scanner.c" ++#line 3207 "Zend/zend_language_scanner.c" + yy182: + YYDEBUG(182, *YYCURSOR); ++YYCURSOR; - YYDEBUG(180, *YYCURSOR); + YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1548 "Zend/zend_language_scanner.l" -#line 1510 "Zend/zend_language_scanner.l" ++#line 1497 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_BOOLEAN_OR); + RETURN_TOKEN(T_PLUS_EQUAL); } - #line 3257 "Zend/zend_language_scanner.c" - yy181: - YYDEBUG(181, *YYCURSOR); -#line 3229 "Zend/zend_language_scanner.c" ++#line 3217 "Zend/zend_language_scanner.c" + yy184: + YYDEBUG(184, *YYCURSOR); ++YYCURSOR; - YYDEBUG(182, *YYCURSOR); + YYDEBUG(185, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1540 "Zend/zend_language_scanner.l" -#line 1478 "Zend/zend_language_scanner.l" ++#line 1465 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_OR_EQUAL); + RETURN_TOKEN(T_DEC); } - #line 3267 "Zend/zend_language_scanner.c" - yy183: - YYDEBUG(183, *YYCURSOR); -#line 3239 "Zend/zend_language_scanner.c" ++#line 3227 "Zend/zend_language_scanner.c" + yy186: + YYDEBUG(186, *YYCURSOR); ++YYCURSOR; - YYDEBUG(184, *YYCURSOR); + YYDEBUG(187, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1514 "Zend/zend_language_scanner.l" ++#line 1501 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_MINUS_EQUAL); + } -#line 3249 "Zend/zend_language_scanner.c" ++#line 3237 "Zend/zend_language_scanner.c" + yy188: + YYDEBUG(188, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(189, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1552 "Zend/zend_language_scanner.l" -#line 1300 "Zend/zend_language_scanner.l" ++#line 1287 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_BOOLEAN_AND); + yy_push_state(ST_LOOKING_FOR_PROPERTY); + RETURN_TOKEN(T_OBJECT_OPERATOR); } - #line 3277 "Zend/zend_language_scanner.c" - yy185: - YYDEBUG(185, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(186, *YYCURSOR); -#line 3260 "Zend/zend_language_scanner.c" ++#line 3248 "Zend/zend_language_scanner.c" + yy190: + YYDEBUG(190, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '.') goto yy291; + goto yy166; + yy191: + YYDEBUG(191, *YYCURSOR); + yyaccept = 3; + YYMARKER = ++YYCURSOR; + YYFILL(3); + yych = *YYCURSOR; + YYDEBUG(192, *YYCURSOR); + if (yych <= 'D') { + if (yych <= '/') goto yy193; + if (yych <= '9') goto yy191; + } else { + if (yych <= 'E') goto yy201; + if (yych == 'e') goto yy201; + } + yy193: + YYDEBUG(193, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1536 "Zend/zend_language_scanner.l" -#line 1754 "Zend/zend_language_scanner.l" ++#line 1741 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_AND_EQUAL); + const char *end; + + ZVAL_DOUBLE(zendlval, zend_strtod(yytext, &end)); + /* errno isn't checked since we allow HUGE_VAL/INF overflow */ + ZEND_ASSERT(end == yytext + yyleng); + RETURN_TOKEN(T_DNUMBER); } - #line 3287 "Zend/zend_language_scanner.c" - yy187: - YYDEBUG(187, *YYCURSOR); -#line 3292 "Zend/zend_language_scanner.c" ++#line 3280 "Zend/zend_language_scanner.c" + yy194: + YYDEBUG(194, *YYCURSOR); ++YYCURSOR; - YYDEBUG(188, *YYCURSOR); + YYDEBUG(195, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1524 "Zend/zend_language_scanner.l" -#line 1534 "Zend/zend_language_scanner.l" ++#line 1521 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_MOD_EQUAL); + RETURN_TOKEN(T_CONCAT_EQUAL); } - #line 3297 "Zend/zend_language_scanner.c" - yy189: - YYDEBUG(189, *YYCURSOR); -#line 3302 "Zend/zend_language_scanner.c" ++#line 3290 "Zend/zend_language_scanner.c" + yy196: + YYDEBUG(196, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '*') goto yy194; - yy190: - YYDEBUG(190, *YYCURSOR); + if (yych == '*') goto yy293; + yy197: + YYDEBUG(197, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1927 "Zend/zend_language_scanner.l" -#line 1941 "Zend/zend_language_scanner.l" ++#line 1928 "Zend/zend_language_scanner.l" { int doc_com; @@@ -3335,210 -3340,155 +3328,155 @@@ RETURN_TOKEN(T_COMMENT); } - #line 3339 "Zend/zend_language_scanner.c" - yy191: - YYDEBUG(191, *YYCURSOR); - yych = *++YYCURSOR; - goto yy140; - yy192: - YYDEBUG(192, *YYCURSOR); -#line 3344 "Zend/zend_language_scanner.c" ++#line 3332 "Zend/zend_language_scanner.c" + yy198: + YYDEBUG(198, *YYCURSOR); ++YYCURSOR; - YYDEBUG(193, *YYCURSOR); + YYDEBUG(199, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1516 "Zend/zend_language_scanner.l" -#line 1530 "Zend/zend_language_scanner.l" ++#line 1517 "Zend/zend_language_scanner.l" { RETURN_TOKEN(T_DIV_EQUAL); } - #line 3353 "Zend/zend_language_scanner.c" - yy194: - YYDEBUG(194, *YYCURSOR); -#line 3354 "Zend/zend_language_scanner.c" ++#line 3342 "Zend/zend_language_scanner.c" + yy200: + YYDEBUG(200, *YYCURSOR); yych = *++YYCURSOR; if (yybm[0+yych] & 64) { - goto yy195; - } - goto yy157; - yy195: - YYDEBUG(195, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(196, *YYCURSOR); - if (yybm[0+yych] & 64) { - goto yy195; + goto yy294; } - goto yy190; - yy197: - YYDEBUG(197, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy201; - YYDEBUG(198, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1508 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_POW); - } - #line 3381 "Zend/zend_language_scanner.c" - yy199: - YYDEBUG(199, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(200, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1504 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_MUL_EQUAL); - } - #line 3391 "Zend/zend_language_scanner.c" + goto yy166; yy201: YYDEBUG(201, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych <= ',') { + if (yych == '+') goto yy297; + goto yy166; + } else { + if (yych <= '-') goto yy297; + if (yych <= '/') goto yy166; + if (yych <= '9') goto yy298; + goto yy166; + } + yy202: YYDEBUG(202, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1512 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_POW_EQUAL); - } - #line 3401 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yybm[0+yych] & 128) { + goto yy300; + } + goto yy166; yy203: YYDEBUG(203, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy207; YYDEBUG(204, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1572 "Zend/zend_language_scanner.l" -#line 1326 "Zend/zend_language_scanner.l" ++#line 1313 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SR); + RETURN_TOKEN(T_PAAMAYIM_NEKUDOTAYIM); } - #line 3412 "Zend/zend_language_scanner.c" -#line 3390 "Zend/zend_language_scanner.c" ++#line 3378 "Zend/zend_language_scanner.c" yy205: YYDEBUG(205, *YYCURSOR); - ++YYCURSOR; + yyaccept = 5; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= ';') goto yy206; + if (yych <= '<') goto yy303; + if (yych <= '=') goto yy305; + yy206: YYDEBUG(206, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1492 "Zend/zend_language_scanner.l" -#line 1582 "Zend/zend_language_scanner.l" ++#line 1569 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IS_GREATER_OR_EQUAL); + RETURN_TOKEN(T_SL); } - #line 3422 "Zend/zend_language_scanner.c" -#line 3405 "Zend/zend_language_scanner.c" ++#line 3393 "Zend/zend_language_scanner.c" yy207: YYDEBUG(207, *YYCURSOR); ++YYCURSOR; + if ((yych = *YYCURSOR) == '>') goto yy307; YYDEBUG(208, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1532 "Zend/zend_language_scanner.l" -#line 1502 "Zend/zend_language_scanner.l" ++#line 1489 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SR_EQUAL); + RETURN_TOKEN(T_IS_SMALLER_OR_EQUAL); } - #line 3432 "Zend/zend_language_scanner.c" -#line 3416 "Zend/zend_language_scanner.c" ++#line 3404 "Zend/zend_language_scanner.c" yy209: YYDEBUG(209, *YYCURSOR); - yyaccept = 5; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') goto yy210; - if (yych <= '<') goto yy219; - if (yych <= '=') goto yy217; + yych = *++YYCURSOR; + goto yy154; yy210: YYDEBUG(210, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy309; + YYDEBUG(211, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1568 "Zend/zend_language_scanner.l" -#line 1490 "Zend/zend_language_scanner.l" ++#line 1477 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SL); + RETURN_TOKEN(T_IS_EQUAL); } - #line 3447 "Zend/zend_language_scanner.c" - yy211: - YYDEBUG(211, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '>') goto yy215; -#line 3431 "Zend/zend_language_scanner.c" ++#line 3419 "Zend/zend_language_scanner.c" + yy212: YYDEBUG(212, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(213, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1488 "Zend/zend_language_scanner.l" -#line 1458 "Zend/zend_language_scanner.l" ++#line 1445 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IS_SMALLER_OR_EQUAL); + RETURN_TOKEN(T_DOUBLE_ARROW); } - #line 3458 "Zend/zend_language_scanner.c" - yy213: - YYDEBUG(213, *YYCURSOR); - ++YYCURSOR; -#line 3441 "Zend/zend_language_scanner.c" ++#line 3429 "Zend/zend_language_scanner.c" yy214: YYDEBUG(214, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(215, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1480 "Zend/zend_language_scanner.l" -#line 1506 "Zend/zend_language_scanner.l" ++#line 1493 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IS_NOT_EQUAL); + RETURN_TOKEN(T_IS_GREATER_OR_EQUAL); } - #line 3469 "Zend/zend_language_scanner.c" - yy215: - YYDEBUG(215, *YYCURSOR); - ++YYCURSOR; -#line 3451 "Zend/zend_language_scanner.c" ++#line 3439 "Zend/zend_language_scanner.c" + yy216: YYDEBUG(216, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy311; + YYDEBUG(217, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1484 "Zend/zend_language_scanner.l" -#line 1586 "Zend/zend_language_scanner.l" ++#line 1573 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SPACESHIP); + RETURN_TOKEN(T_SR); } - #line 3479 "Zend/zend_language_scanner.c" - yy217: - YYDEBUG(217, *YYCURSOR); - ++YYCURSOR; -#line 3462 "Zend/zend_language_scanner.c" ++#line 3450 "Zend/zend_language_scanner.c" + yy218: YYDEBUG(218, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy313; + if (yych == '\r') goto yy314; + yy219: + YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1528 "Zend/zend_language_scanner.l" -#line 1974 "Zend/zend_language_scanner.l" ++#line 1961 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SL_EQUAL); + BEGIN(INITIAL); + RETURN_TOKEN(T_CLOSE_TAG); /* implicit ';' at php-end tag */ } - #line 3489 "Zend/zend_language_scanner.c" - yy219: - YYDEBUG(219, *YYCURSOR); - ++YYCURSOR; - YYFILL(2); - yych = *YYCURSOR; -#line 3476 "Zend/zend_language_scanner.c" ++#line 3464 "Zend/zend_language_scanner.c" + yy220: YYDEBUG(220, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy219; - } - if (yych <= 'Z') { - if (yych <= '&') { - if (yych == '"') goto yy224; - goto yy157; - } else { - if (yych <= '\'') goto yy223; - if (yych <= '@') goto yy157; - } - } else { - if (yych <= '`') { - if (yych != '_') goto yy157; - } else { - if (yych <= 'z') goto yy221; - if (yych <= 0x7F) goto yy157; - } - } - yy221: - YYDEBUG(221, *YYCURSOR); ++YYCURSOR; - YYFILL(2); - yych = *YYCURSOR; + YYDEBUG(221, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1338 "Zend/zend_language_scanner.l" ++#line 1325 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_COALESCE); + } -#line 3486 "Zend/zend_language_scanner.c" ++#line 3474 "Zend/zend_language_scanner.c" + yy222: YYDEBUG(222, *YYCURSOR); - if (yych <= '@') { - if (yych <= '\f') { - if (yych == '\n') goto yy228; - goto yy157; - } else { - if (yych <= '\r') goto yy230; - if (yych <= '/') goto yy157; - if (yych <= '9') goto yy221; - goto yy157; - } - } else { - if (yych <= '_') { - if (yych <= 'Z') goto yy221; - if (yych <= '^') goto yy157; - goto yy221; - } else { - if (yych <= '`') goto yy157; - if (yych <= 'z') goto yy221; - if (yych <= 0x7F) goto yy157; - goto yy221; - } - } + yych = *++YYCURSOR; + if (yych == 'S') goto yy315; + if (yych == 's') goto yy315; + goto yy128; yy223: YYDEBUG(223, *YYCURSOR); yych = *++YYCURSOR; @@@ -3556,28 -3504,16 +3492,16 @@@ yy224 yy225: YYDEBUG(225, *YYCURSOR); ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; - yy226: - YYDEBUG(226, *YYCURSOR); - if (yych <= 'Z') { - if (yych <= '/') { - if (yych != '"') goto yy157; - } else { - if (yych <= '9') goto yy225; - if (yych <= '@') goto yy157; - goto yy225; - } - } else { - if (yych <= '`') { - if (yych == '_') goto yy225; - goto yy157; - } else { - if (yych <= 'z') goto yy225; - if (yych <= 0x7F) goto yy157; - goto yy225; - } + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(226, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1240 "Zend/zend_language_scanner.l" ++#line 1227 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_AS); + } -#line 3517 "Zend/zend_language_scanner.c" ++#line 3505 "Zend/zend_language_scanner.c" yy227: YYDEBUG(227, *YYCURSOR); yych = *++YYCURSOR; @@@ -3672,36 -3588,46 +3576,46 @@@ yy232 yy233: YYDEBUG(233, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '=') goto yy214; + if (yych == 'E') goto yy329; + if (yych == 'e') goto yy329; + goto yy128; + yy234: YYDEBUG(234, *YYCURSOR); ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(235, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1472 "Zend/zend_language_scanner.l" -#line 1208 "Zend/zend_language_scanner.l" ++#line 1195 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IS_NOT_IDENTICAL); + RETURN_TOKEN(T_DO); } - #line 3685 "Zend/zend_language_scanner.c" -#line 3607 "Zend/zend_language_scanner.c" ++#line 3595 "Zend/zend_language_scanner.c" yy236: YYDEBUG(236, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'H') goto yy331; + if (yych == 'h') goto yy331; + goto yy128; + yy237: YYDEBUG(237, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1496 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_PLUS_EQUAL); - } - #line 3695 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'S') goto yy332; + if (yych == 's') goto yy332; + goto yy128; yy238: YYDEBUG(238, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'P') goto yy333; + if (yych == 'p') goto yy333; + goto yy128; + yy239: YYDEBUG(239, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1460 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_INC); - } - #line 3705 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'D') goto yy334; + if (yych == 'd') goto yy334; + goto yy128; yy240: YYDEBUG(240, *YYCURSOR); yych = *++YYCURSOR; @@@ -3710,52 -3637,68 +3625,68 @@@ yy241: YYDEBUG(241, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy242; - if (yych != 't') goto yy150; + if (yych <= 'T') { + if (yych == 'I') goto yy336; + if (yych <= 'S') goto yy128; + goto yy337; + } else { + if (yych <= 'i') { + if (yych <= 'h') goto yy128; + goto yy336; + } else { + if (yych == 't') goto yy337; + goto yy128; + } + } yy242: YYDEBUG(242, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'N') goto yy338; + if (yych == 'n') goto yy338; + goto yy128; + yy243: YYDEBUG(243, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1448 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_LIST); - } - #line 3728 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'R') goto yy339; + if (yych == 'r') goto yy339; + goto yy128; yy244: YYDEBUG(244, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy248; + yych = *++YYCURSOR; + if (yych == 'N') goto yy341; + if (yych == 'n') goto yy341; + goto yy128; + yy245: YYDEBUG(245, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1476 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_IS_EQUAL); - } - #line 3739 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'O') goto yy342; + if (yych == 'o') goto yy342; + goto yy128; yy246: YYDEBUG(246, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'T') goto yy343; + if (yych == 't') goto yy343; + goto yy128; + yy247: YYDEBUG(247, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1444 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_DOUBLE_ARROW); - } - #line 3749 "Zend/zend_language_scanner.c" - yy248: - YYDEBUG(248, *YYCURSOR); ++YYCURSOR; - YYDEBUG(249, *YYCURSOR); + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } + YYDEBUG(248, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1468 "Zend/zend_language_scanner.l" -#line 1184 "Zend/zend_language_scanner.l" ++#line 1171 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IS_IDENTICAL); + RETURN_TOKEN(T_IF); } - #line 3759 "Zend/zend_language_scanner.c" -#line 3696 "Zend/zend_language_scanner.c" ++#line 3684 "Zend/zend_language_scanner.c" + yy249: + YYDEBUG(249, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'P') goto yy344; + if (yych == 'p') goto yy344; + goto yy128; yy250: YYDEBUG(250, *YYCURSOR); yych = *++YYCURSOR; @@@ -3800,31 -3742,22 +3730,22 @@@ yy253 yy254: YYDEBUG(254, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych == 'I') goto yy289; - if (yych <= 'T') goto yy150; - goto yy290; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy150; - goto yy289; - } else { - if (yych == 'u') goto yy290; - goto yy150; - } - } + if (yych == 'W') goto yy351; + if (yych == 'w') goto yy351; + goto yy128; yy255: YYDEBUG(255, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy281; - if (yych == 'e') goto yy281; - goto yy150; - yy256: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(256, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy275; - if (yych == 'i') goto yy275; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1570 "Zend/zend_language_scanner.l" ++#line 1557 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_LOGICAL_OR); + } -#line 3761 "Zend/zend_language_scanner.c" ++#line 3749 "Zend/zend_language_scanner.c" yy257: YYDEBUG(257, *YYCURSOR); yych = *++YYCURSOR; @@@ -3874,75 -3845,101 +3833,101 @@@ yy265 yy266: YYDEBUG(266, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych == 'R') goto yy367; + if (yych == 'r') goto yy367; + goto yy128; + yy267: YYDEBUG(267, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych == 'I') goto yy369; + if (yych == 'i') goto yy369; + goto yy128; + yy268: YYDEBUG(268, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'R') goto yy370; + if (yych == 'r') goto yy370; + goto yy128; + yy269: YYDEBUG(269, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1777 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_NS_C); - } - #line 3893 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'E') goto yy372; + if (yych == 'e') goto yy372; + goto yy128; yy270: YYDEBUG(270, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy271; - if (yych != 'r') goto yy150; - yy271: + ++YYCURSOR; YYDEBUG(271, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1558 "Zend/zend_language_scanner.l" ++#line 1545 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_XOR_EQUAL); + } -#line 3879 "Zend/zend_language_scanner.c" ++#line 3867 "Zend/zend_language_scanner.c" + yy272: YYDEBUG(272, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + switch (yych) { + case 'C': + case 'c': goto yy373; + case 'D': + case 'd': goto yy374; + case 'F': + case 'f': goto yy375; + case 'H': + case 'h': goto yy376; + case 'L': + case 'l': goto yy377; + case 'M': + case 'm': goto yy378; + case 'N': + case 'n': goto yy379; + case 'T': + case 't': goto yy380; + default: goto yy128; + } + yy273: YYDEBUG(273, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } YYDEBUG(274, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1773 "Zend/zend_language_scanner.l" -#line 1554 "Zend/zend_language_scanner.l" ++#line 1541 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_DIR); + RETURN_TOKEN(T_OR_EQUAL); } - #line 3917 "Zend/zend_language_scanner.c" -#line 3911 "Zend/zend_language_scanner.c" ++#line 3899 "Zend/zend_language_scanner.c" yy275: YYDEBUG(275, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy276; - if (yych != 'n') goto yy150; - yy276: + ++YYCURSOR; YYDEBUG(276, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy277; - if (yych != 'e') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1562 "Zend/zend_language_scanner.l" ++#line 1549 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_BOOLEAN_OR); + } -#line 3921 "Zend/zend_language_scanner.c" ++#line 3909 "Zend/zend_language_scanner.c" yy277: YYDEBUG(277, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; - YYDEBUG(278, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; - YYDEBUG(279, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(280, *YYCURSOR); + YYDEBUG(278, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1765 "Zend/zend_language_scanner.l" -#line 1486 "Zend/zend_language_scanner.l" ++#line 1473 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_LINE); + RETURN_TOKEN(T_IS_NOT_IDENTICAL); } - #line 3946 "Zend/zend_language_scanner.c" -#line 3931 "Zend/zend_language_scanner.c" ++#line 3919 "Zend/zend_language_scanner.c" + yy279: + YYDEBUG(279, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy381; + if (yych == 'r') goto yy381; + goto yy166; + yy280: + YYDEBUG(280, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy382; + if (yych == 'n') goto yy382; + goto yy166; yy281: YYDEBUG(281, *YYCURSOR); yych = *++YYCURSOR; @@@ -3966,140 -3967,222 +3955,222 @@@ yy284 yy285: YYDEBUG(285, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych == 'J') goto yy387; + if (yych == 'j') goto yy387; + goto yy166; + yy286: YYDEBUG(286, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych == 'A') goto yy388; + if (yych == 'a') goto yy388; + goto yy166; + yy287: YYDEBUG(287, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'R') goto yy389; + if (yych == 'r') goto yy389; + goto yy166; + yy288: YYDEBUG(288, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1761 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_METHOD_C); - } - #line 3985 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'S') goto yy390; + if (yych == 's') goto yy390; + goto yy166; yy289: YYDEBUG(289, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy300; - if (yych == 'l') goto yy300; - goto yy150; - yy290: + ++YYCURSOR; YYDEBUG(290, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy291; - if (yych != 'n') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1526 "Zend/zend_language_scanner.l" ++#line 1513 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_POW_EQUAL); + } -#line 4001 "Zend/zend_language_scanner.c" ++#line 3989 "Zend/zend_language_scanner.c" yy291: YYDEBUG(291, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy292; - if (yych != 'c') goto yy150; - yy292: + ++YYCURSOR; YYDEBUG(292, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy293; - if (yych != 't') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1334 "Zend/zend_language_scanner.l" ++#line 1321 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ELLIPSIS); + } -#line 4011 "Zend/zend_language_scanner.c" ++#line 3999 "Zend/zend_language_scanner.c" yy293: YYDEBUG(293, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy294; - if (yych != 'i') goto yy150; + if (yych <= '\f') { + if (yych <= 0x08) goto yy166; + if (yych <= '\n') goto yy391; + goto yy166; + } else { + if (yych <= '\r') goto yy391; + if (yych == ' ') goto yy391; + goto yy166; + } yy294: YYDEBUG(294, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy295; - if (yych != 'o') goto yy150; - yy295: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(295, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy296; - if (yych != 'n') goto yy150; - yy296: + if (yybm[0+yych] & 64) { + goto yy294; + } YYDEBUG(296, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1632 "Zend/zend_language_scanner.l" ++#line 1619 "Zend/zend_language_scanner.l" + { + char *bin = yytext + 2; /* Skip "0b" */ + int len = yyleng - 2; + char *end; + + /* Skip any leading 0s */ + while (*bin == '0') { + ++bin; + --len; + } + + if (len < SIZEOF_ZEND_LONG * 8) { + if (len == 0) { + ZVAL_LONG(zendlval, 0); + } else { + errno = 0; + ZVAL_LONG(zendlval, ZEND_STRTOL(bin, &end, 2)); + ZEND_ASSERT(!errno && end == yytext + yyleng); + } + RETURN_TOKEN(T_LNUMBER); + } else { + ZVAL_DOUBLE(zendlval, zend_bin_strtod(bin, (const char **)&end)); + /* errno isn't checked since we allow HUGE_VAL/INF overflow */ + ZEND_ASSERT(end == yytext + yyleng); + RETURN_TOKEN(T_DNUMBER); + } + } -#line 4063 "Zend/zend_language_scanner.c" ++#line 4051 "Zend/zend_language_scanner.c" + yy297: YYDEBUG(297, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych <= '/') goto yy166; + if (yych >= ':') goto yy166; + yy298: YYDEBUG(298, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(299, *YYCURSOR); + if (yych <= '/') goto yy193; + if (yych <= '9') goto yy298; + goto yy193; + yy300: + YYDEBUG(300, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + YYDEBUG(301, *YYCURSOR); + if (yybm[0+yych] & 128) { + goto yy300; + } + YYDEBUG(302, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1757 "Zend/zend_language_scanner.l" -#line 1705 "Zend/zend_language_scanner.l" ++#line 1692 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_FUNC_C); + char *hex = yytext + 2; /* Skip "0x" */ + int len = yyleng - 2; + char *end; + + /* Skip any leading 0s */ + while (*hex == '0') { + hex++; + len--; + } + + if (len < SIZEOF_ZEND_LONG * 2 || (len == SIZEOF_ZEND_LONG * 2 && *hex <= '7')) { + if (len == 0) { + ZVAL_LONG(zendlval, 0); + } else { + errno = 0; + ZVAL_LONG(zendlval, ZEND_STRTOL(hex, &end, 16)); + ZEND_ASSERT(!errno && end == hex + len); + } + RETURN_TOKEN(T_LNUMBER); + } else { + ZVAL_DOUBLE(zendlval, zend_hex_strtod(hex, (const char **)&end)); + /* errno isn't checked since we allow HUGE_VAL/INF overflow */ + ZEND_ASSERT(end == hex + len); + RETURN_TOKEN(T_DNUMBER); + } } - #line 4040 "Zend/zend_language_scanner.c" - yy300: - YYDEBUG(300, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy301; - if (yych != 'e') goto yy150; - yy301: - YYDEBUG(301, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; - YYDEBUG(302, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; -#line 4117 "Zend/zend_language_scanner.c" ++#line 4105 "Zend/zend_language_scanner.c" + yy303: YYDEBUG(303, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + YYFILL(2); + yych = *YYCURSOR; YYDEBUG(304, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1769 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_FILE); - } - #line 4064 "Zend/zend_language_scanner.c" + if (yych <= '\'') { + if (yych <= ' ') { + if (yych == '\t') goto yy303; + if (yych <= 0x1F) goto yy166; + goto yy303; + } else { + if (yych == '"') goto yy393; + if (yych <= '&') goto yy166; + goto yy394; + } + } else { + if (yych <= '_') { + if (yych <= '@') goto yy166; + if (yych <= 'Z') goto yy395; + if (yych <= '^') goto yy166; + goto yy395; + } else { + if (yych <= '`') goto yy166; + if (yych <= 'z') goto yy395; - if (yych <= '~') goto yy166; ++ if (yych <= 0x7F) goto yy166; + goto yy395; + } + } yy305: YYDEBUG(305, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy306; - if (yych != 'a') goto yy150; - yy306: + ++YYCURSOR; YYDEBUG(306, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy307; - if (yych != 'i') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1542 "Zend/zend_language_scanner.l" ++#line 1529 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_SL_EQUAL); + } -#line 4156 "Zend/zend_language_scanner.c" ++#line 4144 "Zend/zend_language_scanner.c" yy307: YYDEBUG(307, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy308; - if (yych != 't') goto yy150; - yy308: + ++YYCURSOR; YYDEBUG(308, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1498 "Zend/zend_language_scanner.l" ++#line 1485 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_SPACESHIP); + } -#line 4166 "Zend/zend_language_scanner.c" ++#line 4154 "Zend/zend_language_scanner.c" + yy309: YYDEBUG(309, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; - YYDEBUG(310, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(311, *YYCURSOR); + YYDEBUG(310, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1753 "Zend/zend_language_scanner.l" -#line 1482 "Zend/zend_language_scanner.l" ++#line 1469 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_TRAIT_C); + RETURN_TOKEN(T_IS_IDENTICAL); } - #line 4098 "Zend/zend_language_scanner.c" - yy312: -#line 4176 "Zend/zend_language_scanner.c" ++#line 4164 "Zend/zend_language_scanner.c" + yy311: + YYDEBUG(311, *YYCURSOR); + ++YYCURSOR; YYDEBUG(312, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy313; - if (yych != 'a') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1546 "Zend/zend_language_scanner.l" ++#line 1533 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_SR_EQUAL); + } -#line 4186 "Zend/zend_language_scanner.c" ++#line 4174 "Zend/zend_language_scanner.c" yy313: YYDEBUG(313, *YYCURSOR); yych = *++YYCURSOR; @@@ -4113,22 -4195,28 +4183,28 @@@ yy314 yy315: YYDEBUG(315, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy150; + if (yych == 'T') goto yy397; + if (yych == 't') goto yy397; + goto yy128; + yy316: YYDEBUG(316, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '_') goto yy150; - YYDEBUG(317, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(318, *YYCURSOR); + YYDEBUG(317, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1749 "Zend/zend_language_scanner.l" -#line 1574 "Zend/zend_language_scanner.l" ++#line 1561 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_CLASS_C); + RETURN_TOKEN(T_LOGICAL_AND); } - #line 4132 "Zend/zend_language_scanner.c" -#line 4214 "Zend/zend_language_scanner.c" ++#line 4202 "Zend/zend_language_scanner.c" + yy318: + YYDEBUG(318, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'A') goto yy398; + if (yych == 'a') goto yy398; + goto yy128; yy319: YYDEBUG(319, *YYCURSOR); yych = *++YYCURSOR; @@@ -4175,26 -4280,28 +4268,28 @@@ yy327 yy328: YYDEBUG(328, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy329; - if (yych != 'e') goto yy150; + if (yych == 'A') goto yy409; + if (yych == 'a') goto yy409; + goto yy128; yy329: YYDEBUG(329, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy330; - if (yych != 'r') goto yy150; - yy330: - YYDEBUG(330, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(331, *YYCURSOR); + YYDEBUG(330, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1412 "Zend/zend_language_scanner.l" -#line 1142 "Zend/zend_language_scanner.l" ++#line 1129 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_HALT_COMPILER); + RETURN_TOKEN(T_EXIT); } - #line 4198 "Zend/zend_language_scanner.c" -#line 4299 "Zend/zend_language_scanner.c" ++#line 4287 "Zend/zend_language_scanner.c" + yy331: + YYDEBUG(331, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'O') goto yy410; + if (yych == 'o') goto yy410; + goto yy128; yy332: YYDEBUG(332, *YYCURSOR); yych = *++YYCURSOR; @@@ -4227,95 -4345,49 +4333,49 @@@ yy336 yy337: YYDEBUG(337, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy338; - if (yych != 't') goto yy150; + if (yych == 'E') goto yy424; + if (yych == 'e') goto yy424; + goto yy128; yy338: YYDEBUG(338, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'A') goto yy425; + if (yych == 'a') goto yy425; + goto yy128; + yy339: YYDEBUG(339, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1440 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_UNSET); - } - #line 4245 "Zend/zend_language_scanner.c" - yy340: - YYDEBUG(340, *YYCURSOR); ++YYCURSOR; - YYFILL(7); - yych = *YYCURSOR; - yy341: - YYDEBUG(341, *YYCURSOR); - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= ' ') { - if (yych == '\t') goto yy340; - if (yych <= 0x1F) goto yy157; - goto yy340; - } else { - if (yych <= 'A') { - if (yych <= '@') goto yy157; - goto yy345; - } else { - if (yych <= 'B') goto yy343; - if (yych <= 'C') goto yy157; - goto yy348; - } - } + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '@') { + if (yych <= '/') goto yy340; + if (yych <= '9') goto yy127; } else { - if (yych <= 'I') { - if (yych == 'F') goto yy349; - if (yych <= 'H') goto yy157; - goto yy350; - } else { - if (yych <= 'O') { - if (yych <= 'N') goto yy157; - goto yy344; - } else { - if (yych <= 'Q') goto yy157; - if (yych <= 'R') goto yy347; - goto yy346; - } - } + if (yych == 'E') goto yy426; + if (yych <= 'Z') goto yy127; } } else { - if (yych <= 'f') { - if (yych <= 'a') { - if (yych == 'U') goto yy342; - if (yych <= '`') goto yy157; - goto yy345; - } else { - if (yych <= 'c') { - if (yych <= 'b') goto yy343; - goto yy157; - } else { - if (yych <= 'd') goto yy348; - if (yych <= 'e') goto yy157; - goto yy349; - } - } + if (yych <= 'd') { + if (yych != '`') goto yy127; } else { - if (yych <= 'q') { - if (yych <= 'i') { - if (yych <= 'h') goto yy157; - goto yy350; - } else { - if (yych == 'o') goto yy344; - goto yy157; - } - } else { - if (yych <= 's') { - if (yych <= 'r') goto yy347; - goto yy346; - } else { - if (yych != 'u') goto yy157; - } - } + if (yych <= 'e') goto yy426; + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; } } + yy340: + YYDEBUG(340, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1212 "Zend/zend_language_scanner.l" ++#line 1199 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_FOR); + } -#line 4385 "Zend/zend_language_scanner.c" ++#line 4373 "Zend/zend_language_scanner.c" + yy341: + YYDEBUG(341, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy427; + if (yych == 'c') goto yy427; + goto yy128; yy342: YYDEBUG(342, *YYCURSOR); yych = *++YYCURSOR; @@@ -4377,18 -4439,22 +4427,22 @@@ yy349 yy350: YYDEBUG(350, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy351; - if (yych != 'n') goto yy157; + if (yych == 'E') goto yy438; + if (yych == 'e') goto yy438; + goto yy128; yy351: YYDEBUG(351, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy352; - if (yych != 't') goto yy157; - yy352: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(352, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy353; - if (yych != 'e') goto yy355; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1342 "Zend/zend_language_scanner.l" ++#line 1329 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_NEW); + } -#line 4458 "Zend/zend_language_scanner.c" ++#line 4446 "Zend/zend_language_scanner.c" yy353: YYDEBUG(353, *YYCURSOR); yych = *++YYCURSOR; @@@ -4437,61 -4516,73 +4504,73 @@@ yy360 yy361: YYDEBUG(361, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy362; - if (yych != 'a') goto yy157; + if (yych == 'I') goto yy448; + if (yych == 'i') goto yy448; + goto yy128; yy362: YYDEBUG(362, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy363; - if (yych != 't') goto yy157; - yy363: - YYDEBUG(363, *YYCURSOR); ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(364, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy363; - goto yy157; - } else { - if (yych <= ' ') goto yy363; - if (yych != ')') goto yy157; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(363, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1168 "Zend/zend_language_scanner.l" ++#line 1155 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_TRY); + } -#line 4535 "Zend/zend_language_scanner.c" ++#line 4523 "Zend/zend_language_scanner.c" + yy364: + YYDEBUG(364, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy449; + if (yych == 'e') goto yy449; + goto yy128; + yy365: YYDEBUG(365, *YYCURSOR); ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(366, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1344 "Zend/zend_language_scanner.l" -#line 1406 "Zend/zend_language_scanner.l" ++#line 1393 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_DOUBLE_CAST); + RETURN_TOKEN(T_USE); } - #line 4469 "Zend/zend_language_scanner.c" -#line 4554 "Zend/zend_language_scanner.c" ++#line 4542 "Zend/zend_language_scanner.c" yy367: YYDEBUG(367, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy368; - if (yych != 'u') goto yy157; - yy368: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(368, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy369; - if (yych != 'b') goto yy157; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1350 "Zend/zend_language_scanner.l" ++#line 1337 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_VAR); + } -#line 4567 "Zend/zend_language_scanner.c" ++#line 4555 "Zend/zend_language_scanner.c" yy369: YYDEBUG(369, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy370; - if (yych != 'l') goto yy157; + if (yych == 'L') goto yy450; + if (yych == 'l') goto yy450; + goto yy128; yy370: YYDEBUG(370, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy363; - if (yych == 'e') goto yy363; - goto yy157; - yy371: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(371, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy372; - if (yych != 'a') goto yy157; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1578 "Zend/zend_language_scanner.l" ++#line 1565 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_LOGICAL_XOR); + } -#line 4586 "Zend/zend_language_scanner.c" ++#line 4574 "Zend/zend_language_scanner.c" yy372: YYDEBUG(372, *YYCURSOR); yych = *++YYCURSOR; @@@ -4597,34 -4712,58 +4700,58 @@@ yy391 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(393, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy392; - goto yy157; + YYDEBUG(392, *YYCURSOR); + if (yych <= '\f') { + if (yych <= 0x08) goto yy197; + if (yych <= '\n') goto yy391; + goto yy197; } else { - if (yych <= ' ') goto yy392; - if (yych != ')') goto yy157; + if (yych <= '\r') goto yy391; + if (yych == ' ') goto yy391; + goto yy197; } + yy393: + YYDEBUG(393, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '"') goto yy166; + if (yych <= '/') goto yy477; + if (yych <= '9') goto yy166; + goto yy477; + yy394: YYDEBUG(394, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '\'') goto yy166; + if (yych <= '/') goto yy479; + if (yych <= '9') goto yy166; + goto yy479; + yy395: YYDEBUG(395, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1356 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_OBJECT_CAST); - } - #line 4622 "Zend/zend_language_scanner.c" - yy396: + ++YYCURSOR; + YYFILL(2); + yych = *YYCURSOR; YYDEBUG(396, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy406; - if (yych == 'n') goto yy406; - goto yy157; + if (yych <= '@') { + if (yych <= '\f') { + if (yych == '\n') goto yy480; + goto yy166; + } else { + if (yych <= '\r') goto yy482; + if (yych <= '/') goto yy166; + if (yych <= '9') goto yy395; + goto yy166; + } + } else { + if (yych <= '_') { + if (yych <= 'Z') goto yy395; + if (yych <= '^') goto yy166; + goto yy395; + } else { + if (yych <= '`') goto yy166; + if (yych <= 'z') goto yy395; - if (yych <= '~') goto yy166; ++ if (yych <= 0x7F) goto yy166; + goto yy395; + } + } yy397: YYDEBUG(397, *YYCURSOR); yych = *++YYCURSOR; @@@ -4638,32 -4779,34 +4767,34 @@@ yy398 yy399: YYDEBUG(399, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy404; - if (yych == 'e') goto yy404; - goto yy401; + if (yych == 'K') goto yy486; + if (yych == 'k') goto yy486; + goto yy128; yy400: YYDEBUG(400, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'A') goto yy488; + if (yych == 'a') goto yy488; + goto yy128; yy401: YYDEBUG(401, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy400; - goto yy157; - } else { - if (yych <= ' ') goto yy400; - if (yych != ')') goto yy157; + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } YYDEBUG(402, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(403, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1360 "Zend/zend_language_scanner.l" -#line 1252 "Zend/zend_language_scanner.l" ++#line 1239 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_BOOL_CAST); + RETURN_TOKEN(T_CASE); } - #line 4667 "Zend/zend_language_scanner.c" -#line 4804 "Zend/zend_language_scanner.c" ++#line 4792 "Zend/zend_language_scanner.c" + yy403: + YYDEBUG(403, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'H') goto yy489; + if (yych == 'h') goto yy489; + goto yy128; yy404: YYDEBUG(404, *YYCURSOR); yych = *++YYCURSOR; @@@ -4694,40 -4840,62 +4828,62 @@@ yy408 yy409: YYDEBUG(409, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy410; - if (yych != 's') goto yy157; + if (yych == 'U') goto yy499; + if (yych == 'u') goto yy499; + goto yy128; yy410: YYDEBUG(410, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy411; - if (yych != 'e') goto yy157; - yy411: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(411, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy412; - if (yych != 't') goto yy157; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1272 "Zend/zend_language_scanner.l" ++#line 1259 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ECHO); + } -#line 4859 "Zend/zend_language_scanner.c" ++#line 4847 "Zend/zend_language_scanner.c" yy412: YYDEBUG(412, *YYCURSOR); ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(413, *YYCURSOR); - if (yych <= 0x1F) { - if (yych == '\t') goto yy412; - goto yy157; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '@') { + if (yych <= '/') goto yy413; + if (yych <= '9') goto yy127; + } else { + if (yych == 'I') goto yy500; + if (yych <= 'Z') goto yy127; + } } else { - if (yych <= ' ') goto yy412; - if (yych != ')') goto yy157; + if (yych <= 'h') { + if (yych != '`') goto yy127; + } else { + if (yych <= 'i') goto yy500; + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; + } } - YYDEBUG(414, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(415, *YYCURSOR); + yy413: + YYDEBUG(413, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1364 "Zend/zend_language_scanner.l" -#line 1196 "Zend/zend_language_scanner.l" ++#line 1183 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_UNSET_CAST); + RETURN_TOKEN(T_ELSE); } - #line 4731 "Zend/zend_language_scanner.c" -#line 4887 "Zend/zend_language_scanner.c" ++#line 4875 "Zend/zend_language_scanner.c" + yy414: + YYDEBUG(414, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'Y') goto yy501; + if (yych == 'y') goto yy501; + goto yy128; + yy415: + YYDEBUG(415, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy503; + if (yych == 'e') goto yy503; + goto yy128; yy416: YYDEBUG(416, *YYCURSOR); yych = *++YYCURSOR; @@@ -4749,32 -4917,35 +4905,35 @@@ yy418 yy419: YYDEBUG(419, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'M') goto yy423; - if (yych == 'm') goto yy423; - goto yy150; + if (yych == 'H') goto yy508; + if (yych == 'h') goto yy508; + goto yy128; yy420: YYDEBUG(420, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy421; - if (yych != 'w') goto yy150; - yy421: - YYDEBUG(421, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(422, *YYCURSOR); + YYDEBUG(421, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1328 "Zend/zend_language_scanner.l" -#line 1382 "Zend/zend_language_scanner.l" ++#line 1369 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_NEW); + RETURN_TOKEN(T_EVAL); } - #line 4773 "Zend/zend_language_scanner.c" - yy423: -#line 4936 "Zend/zend_language_scanner.c" ++#line 4924 "Zend/zend_language_scanner.c" + yy422: + YYDEBUG(422, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(423, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy424; - if (yych != 'e') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1138 "Zend/zend_language_scanner.l" ++#line 1125 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_EXIT); + } -#line 4949 "Zend/zend_language_scanner.c" ++#line 4937 "Zend/zend_language_scanner.c" yy424: YYDEBUG(424, *YYCURSOR); yych = *++YYCURSOR; @@@ -4808,70 -4984,82 +4972,82 @@@ yy429 } YYDEBUG(430, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1388 "Zend/zend_language_scanner.l" -#line 1268 "Zend/zend_language_scanner.l" ++#line 1255 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_NAMESPACE); + RETURN_TOKEN(T_GOTO); } - #line 4816 "Zend/zend_language_scanner.c" -#line 4992 "Zend/zend_language_scanner.c" ++#line 4980 "Zend/zend_language_scanner.c" yy431: YYDEBUG(431, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy435; - if (yych == '\r') goto yy436; + yych = *++YYCURSOR; + if (yych == 'E') goto yy515; + if (yych == 'e') goto yy515; + goto yy128; yy432: YYDEBUG(432, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1960 "Zend/zend_language_scanner.l" - { - BEGIN(INITIAL); - RETURN_TOKEN(T_CLOSE_TAG); /* implicit ';' at php-end tag */ - } - #line 4830 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'U') goto yy516; + if (yych == 'u') goto yy516; + goto yy128; yy433: YYDEBUG(433, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych <= 'E') { + if (yych == 'A') goto yy517; + if (yych <= 'D') goto yy128; + goto yy518; + } else { + if (yych <= 'a') { + if (yych <= '`') goto yy128; + goto yy517; + } else { + if (yych == 'e') goto yy518; + goto yy128; + } + } + yy434: YYDEBUG(434, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1324 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_COALESCE); - } - #line 4840 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'R') goto yy519; + if (yych == 'r') goto yy519; + goto yy128; yy435: YYDEBUG(435, *YYCURSOR); yych = *++YYCURSOR; - goto yy432; + if (yych == 'T') goto yy520; + if (yych == 't') goto yy520; + goto yy128; yy436: YYDEBUG(436, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy435; - goto yy432; - yy437: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(437, *YYCURSOR); - yyaccept = 3; - YYMARKER = ++YYCURSOR; - YYFILL(3); - yych = *YYCURSOR; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1462 "Zend/zend_language_scanner.l" ++#line 1449 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_LIST); + } -#line 5045 "Zend/zend_language_scanner.c" ++#line 5033 "Zend/zend_language_scanner.c" + yy438: YYDEBUG(438, *YYCURSOR); - if (yych <= 'D') { - if (yych <= '/') goto yy153; - if (yych <= '9') goto yy437; - goto yy153; - } else { - if (yych <= 'E') goto yy156; - if (yych == 'e') goto yy156; - goto yy153; - } + yych = *++YYCURSOR; + if (yych == 'S') goto yy522; + if (yych == 's') goto yy522; + goto yy128; yy439: YYDEBUG(439, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'T') goto yy523; + if (yych == 't') goto yy523; + goto yy128; + yy440: YYDEBUG(440, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1520 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_CONCAT_EQUAL); - } - #line 4875 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'A') goto yy525; + if (yych == 'a') goto yy525; + goto yy128; yy441: YYDEBUG(441, *YYCURSOR); yych = *++YYCURSOR; @@@ -5025,31 -5207,32 +5195,32 @@@ yy464 yy465: YYDEBUG(465, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy466; - if (yych != 't') goto yy150; + if (yych == 'T') goto yy472; + if (yych == 't') goto yy472; + goto yy166; yy466: YYDEBUG(466, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy467; - if (yych != 'e') goto yy150; + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; yy467: YYDEBUG(467, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy468; - if (yych != 'd') goto yy150; - yy468: + if (yych <= 0x1F) { + if (yych == '\t') goto yy466; + goto yy166; + } else { + if (yych <= ' ') goto yy466; + if (yych != ')') goto yy166; + } YYDEBUG(468, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } YYDEBUG(469, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1432 "Zend/zend_language_scanner.l" -#line 1354 "Zend/zend_language_scanner.l" ++#line 1341 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_PROTECTED); + RETURN_TOKEN(T_INT_CAST); } - #line 5053 "Zend/zend_language_scanner.c" -#line 5236 "Zend/zend_language_scanner.c" ++#line 5224 "Zend/zend_language_scanner.c" yy470: YYDEBUG(470, *YYCURSOR); yych = *++YYCURSOR; @@@ -5087,60 -5274,133 +5262,133 @@@ yy475 yy476: YYDEBUG(476, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + YYFILL(3); + yych = *YYCURSOR; + yy477: YYDEBUG(477, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1262 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_PRINT); - } - #line 5100 "Zend/zend_language_scanner.c" + if (yych <= 'Z') { + if (yych <= '/') { + if (yych == '"') goto yy567; + goto yy166; + } else { + if (yych <= '9') goto yy476; + if (yych <= '@') goto yy166; + goto yy476; + } + } else { + if (yych <= '`') { + if (yych == '_') goto yy476; + goto yy166; + } else { + if (yych <= 'z') goto yy476; - if (yych <= '~') goto yy166; ++ if (yych <= 0x7F) goto yy166; + goto yy476; + } + } yy478: YYDEBUG(478, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy483; - if (yych == 'o') goto yy483; - goto yy150; + ++YYCURSOR; + YYFILL(3); + yych = *YYCURSOR; yy479: YYDEBUG(479, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy480; - if (yych != 't') goto yy150; + if (yych <= 'Z') { + if (yych <= '/') { + if (yych == '\'') goto yy567; + goto yy166; + } else { + if (yych <= '9') goto yy478; + if (yych <= '@') goto yy166; + goto yy478; + } + } else { + if (yych <= '`') { + if (yych == '_') goto yy478; + goto yy166; + } else { + if (yych <= 'z') goto yy478; - if (yych <= '~') goto yy166; ++ if (yych <= 0x7F) goto yy166; + goto yy478; + } + } yy480: YYDEBUG(480, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy481; - if (yych != 'o') goto yy150; + ++YYCURSOR; yy481: YYDEBUG(481, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(482, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1254 "Zend/zend_language_scanner.l" -#line 2091 "Zend/zend_language_scanner.l" ++#line 2078 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_GOTO); + char *s; + int bprefix = (yytext[0] != '<') ? 1 : 0; + zend_heredoc_label *heredoc_label = emalloc(sizeof(zend_heredoc_label)); + + CG(zend_lineno)++; + heredoc_label->length = yyleng-bprefix-3-1-(yytext[yyleng-2]=='\r'?1:0); + s = yytext+bprefix+3; + while ((*s == ' ') || (*s == '\t')) { + s++; + heredoc_label->length--; + } + + if (*s == '\'') { + s++; + heredoc_label->length -= 2; + + BEGIN(ST_NOWDOC); + } else { + if (*s == '"') { + s++; + heredoc_label->length -= 2; + } + + BEGIN(ST_HEREDOC); + } + + heredoc_label->label = estrndup(s, heredoc_label->length); + + /* Check for ending label on the next line */ + if (heredoc_label->length < YYLIMIT - YYCURSOR && !memcmp(YYCURSOR, s, heredoc_label->length)) { + YYCTYPE *end = YYCURSOR + heredoc_label->length; + + if (*end == ';') { + end++; + } + + if (*end == '\n' || *end == '\r') { + BEGIN(ST_END_HEREDOC); + } + } + + zend_ptr_stack_push(&SCNG(heredoc_label_stack), (void *) heredoc_label); + + RETURN_TOKEN(T_START_HEREDOC); } - #line 5129 "Zend/zend_language_scanner.c" -#line 5380 "Zend/zend_language_scanner.c" ++#line 5368 "Zend/zend_language_scanner.c" + yy482: + YYDEBUG(482, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '\n') goto yy480; + goto yy481; yy483: YYDEBUG(483, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'B') goto yy484; - if (yych != 'b') goto yy150; + if (yych == 'A') goto yy568; + if (yych == 'a') goto yy568; + goto yy128; yy484: YYDEBUG(484, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy485; - if (yych != 'a') goto yy150; - yy485: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(485, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy486; - if (yych != 'l') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1466 "Zend/zend_language_scanner.l" ++#line 1453 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ARRAY); + } -#line 5404 "Zend/zend_language_scanner.c" ++#line 5392 "Zend/zend_language_scanner.c" yy486: YYDEBUG(486, *YYCURSOR); ++YYCURSOR; @@@ -5149,57 -5409,69 +5397,69 @@@ } YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1400 "Zend/zend_language_scanner.l" -#line 1260 "Zend/zend_language_scanner.l" ++#line 1247 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_GLOBAL); + RETURN_TOKEN(T_BREAK); } - #line 5157 "Zend/zend_language_scanner.c" -#line 5417 "Zend/zend_language_scanner.c" ++#line 5405 "Zend/zend_language_scanner.c" yy488: YYDEBUG(488, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '<') goto yy496; - goto yy157; + if (yych == 'B') goto yy569; + if (yych == 'b') goto yy569; + goto yy128; yy489: YYDEBUG(489, *YYCURSOR); - yych = *++YYCURSOR; - goto yy144; - yy490: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(490, *YYCURSOR); - yych = *++YYCURSOR; - goto yy142; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1172 "Zend/zend_language_scanner.l" ++#line 1159 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_CATCH); + } -#line 5436 "Zend/zend_language_scanner.c" ++#line 5424 "Zend/zend_language_scanner.c" yy491: YYDEBUG(491, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy492; - if (yych != 'e') goto yy150; - yy492: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(492, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy493; - if (yych != 'a') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1280 "Zend/zend_language_scanner.l" ++#line 1267 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_CLASS); + } -#line 5449 "Zend/zend_language_scanner.c" ++#line 5437 "Zend/zend_language_scanner.c" yy493: YYDEBUG(493, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'K') goto yy494; - if (yych != 'k') goto yy150; - yy494: - YYDEBUG(494, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(495, *YYCURSOR); + YYDEBUG(494, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1246 "Zend/zend_language_scanner.l" -#line 1346 "Zend/zend_language_scanner.l" ++#line 1333 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_BREAK); + RETURN_TOKEN(T_CLONE); } - #line 5198 "Zend/zend_language_scanner.c" - yy496: -#line 5462 "Zend/zend_language_scanner.c" ++#line 5450 "Zend/zend_language_scanner.c" + yy495: + YYDEBUG(495, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(496, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy219; - goto yy157; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1150 "Zend/zend_language_scanner.l" ++#line 1137 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_CONST); + } -#line 5475 "Zend/zend_language_scanner.c" ++#line 5463 "Zend/zend_language_scanner.c" yy497: YYDEBUG(497, *YYCURSOR); yych = *++YYCURSOR; @@@ -5219,85 -5493,105 +5481,105 @@@ yy499 yy500: YYDEBUG(500, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy501; - if (yych != 'c') goto yy150; + if (yych == 'F') goto yy573; + if (yych == 'f') goto yy573; + goto yy128; yy501: YYDEBUG(501, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy502; - if (yych != 'h') goto yy150; - yy502: - YYDEBUG(502, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(503, *YYCURSOR); + YYDEBUG(502, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1230 "Zend/zend_language_scanner.l" -#line 1422 "Zend/zend_language_scanner.l" ++#line 1409 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_SWITCH); + RETURN_TOKEN(T_EMPTY); } - #line 5242 "Zend/zend_language_scanner.c" -#line 5512 "Zend/zend_language_scanner.c" ++#line 5500 "Zend/zend_language_scanner.c" + yy503: + YYDEBUG(503, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy575; + if (yych == 'c') goto yy575; + goto yy128; yy504: YYDEBUG(504, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy505; - if (yych != 't') goto yy150; + if (yych == 'R') goto yy576; + if (yych == 'r') goto yy576; + goto yy128; yy505: YYDEBUG(505, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy506; - if (yych != 'i') goto yy150; - yy506: - YYDEBUG(506, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy507; - if (yych != 'c') goto yy150; - yy507: - YYDEBUG(507, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(508, *YYCURSOR); + YYDEBUG(506, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1416 "Zend/zend_language_scanner.l" -#line 1192 "Zend/zend_language_scanner.l" ++#line 1179 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_STATIC); + RETURN_TOKEN(T_ENDIF); } - #line 5270 "Zend/zend_language_scanner.c" -#line 5537 "Zend/zend_language_scanner.c" ++#line 5525 "Zend/zend_language_scanner.c" + yy507: + YYDEBUG(507, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy578; + if (yych == 'i') goto yy578; + goto yy128; + yy508: + YYDEBUG(508, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy579; + if (yych == 'i') goto yy579; + goto yy128; yy509: YYDEBUG(509, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy520; - if (yych == 's') goto yy520; - goto yy150; + if (yych == 'D') goto yy580; + if (yych == 'd') goto yy580; + goto yy128; yy510: YYDEBUG(510, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy518; - if (yych == 'd') goto yy518; - goto yy150; - yy511: - YYDEBUG(511, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy514; - if (yych == 'r') goto yy514; - goto yy150; - yy512: - YYDEBUG(512, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '@') { + if (yych <= '/') goto yy511; + if (yych <= '9') goto yy127; + } else { + if (yych == 'L') goto yy581; + if (yych <= 'Z') goto yy127; + } + } else { + if (yych <= 'k') { + if (yych != '`') goto yy127; + } else { + if (yych <= 'l') goto yy581; + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; + } } - YYDEBUG(513, *YYCURSOR); + yy511: + YYDEBUG(511, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1226 "Zend/zend_language_scanner.l" -#line 1438 "Zend/zend_language_scanner.l" ++#line 1425 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_AS); + RETURN_TOKEN(T_FINAL); } - #line 5301 "Zend/zend_language_scanner.c" -#line 5583 "Zend/zend_language_scanner.c" ++#line 5571 "Zend/zend_language_scanner.c" + yy512: + YYDEBUG(512, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy582; + if (yych == 'c') goto yy582; + goto yy128; + yy513: + YYDEBUG(513, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy583; + if (yych == 'i') goto yy583; + goto yy128; yy514: YYDEBUG(514, *YYCURSOR); yych = *++YYCURSOR; @@@ -5306,72 -5601,77 +5589,77 @@@ yy515: YYDEBUG(515, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy516; - if (yych != 'y') goto yy150; + if (yych == 'M') goto yy586; + if (yych == 'm') goto yy586; + goto yy128; yy516: YYDEBUG(516, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'D') goto yy587; + if (yych == 'd') goto yy587; + goto yy128; + yy517: YYDEBUG(517, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1452 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_ARRAY); - } - #line 5324 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'N') goto yy588; + if (yych == 'n') goto yy588; + goto yy128; yy518: YYDEBUG(518, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'A') goto yy589; + if (yych == 'a') goto yy589; + goto yy128; + yy519: + YYDEBUG(519, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'F') goto yy590; + if (yych == 'f') goto yy590; + goto yy128; + yy520: + YYDEBUG(520, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(519, *YYCURSOR); + YYDEBUG(521, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1560 "Zend/zend_language_scanner.l" -#line 1418 "Zend/zend_language_scanner.l" ++#line 1405 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_LOGICAL_AND); + RETURN_TOKEN(T_ISSET); } - #line 5337 "Zend/zend_language_scanner.c" - yy520: - YYDEBUG(520, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy521; - if (yych != 't') goto yy150; - yy521: - YYDEBUG(521, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy522; - if (yych != 'r') goto yy150; -#line 5644 "Zend/zend_language_scanner.c" ++#line 5632 "Zend/zend_language_scanner.c" yy522: YYDEBUG(522, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy523; - if (yych != 'a') goto yy150; + if (yych == 'P') goto yy591; + if (yych == 'p') goto yy591; + goto yy128; yy523: YYDEBUG(523, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy524; - if (yych != 'c') goto yy150; - yy524: - YYDEBUG(524, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy525; - if (yych != 't') goto yy150; - yy525: - YYDEBUG(525, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(526, *YYCURSOR); + YYDEBUG(524, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1420 "Zend/zend_language_scanner.l" -#line 1276 "Zend/zend_language_scanner.l" ++#line 1263 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ABSTRACT); + RETURN_TOKEN(T_PRINT); } - #line 5375 "Zend/zend_language_scanner.c" -#line 5663 "Zend/zend_language_scanner.c" ++#line 5651 "Zend/zend_language_scanner.c" + yy525: + YYDEBUG(525, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy592; + if (yych == 't') goto yy592; + goto yy128; + yy526: + YYDEBUG(526, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy593; + if (yych == 'c') goto yy593; + goto yy128; yy527: YYDEBUG(527, *YYCURSOR); yych = *++YYCURSOR; @@@ -5408,73 -5710,72 +5698,72 @@@ yy532 } YYDEBUG(533, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1170 "Zend/zend_language_scanner.l" -#line 1180 "Zend/zend_language_scanner.l" ++#line 1167 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IF); + RETURN_TOKEN(T_THROW); } - #line 5416 "Zend/zend_language_scanner.c" -#line 5718 "Zend/zend_language_scanner.c" ++#line 5706 "Zend/zend_language_scanner.c" yy534: YYDEBUG(534, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy576; - if (yych == 'p') goto yy576; - goto yy150; - yy535: - YYDEBUG(535, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych <= 'C') { - if (yych <= 'B') goto yy150; - goto yy543; - } else { - if (yych <= 'R') goto yy150; - if (yych <= 'S') goto yy541; - goto yy542; - } - } else { - if (yych <= 'r') { - if (yych == 'c') goto yy543; - goto yy150; - } else { - if (yych <= 's') goto yy541; - if (yych <= 't') goto yy542; - goto yy150; - } + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(535, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1288 "Zend/zend_language_scanner.l" ++#line 1275 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_TRAIT); + } -#line 5731 "Zend/zend_language_scanner.c" ++#line 5719 "Zend/zend_language_scanner.c" yy536: YYDEBUG(536, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy537; - if (yych != 's') goto yy150; - yy537: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(537, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy538; - if (yych != 'e') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1454 "Zend/zend_language_scanner.l" ++#line 1441 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_UNSET); + } -#line 5744 "Zend/zend_language_scanner.c" ++#line 5732 "Zend/zend_language_scanner.c" yy538: YYDEBUG(538, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy539; - if (yych != 't') goto yy150; - yy539: - YYDEBUG(539, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(540, *YYCURSOR); + YYDEBUG(539, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1404 "Zend/zend_language_scanner.l" -#line 1200 "Zend/zend_language_scanner.l" ++#line 1187 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ISSET); + RETURN_TOKEN(T_WHILE); } - #line 5472 "Zend/zend_language_scanner.c" -#line 5757 "Zend/zend_language_scanner.c" ++#line 5745 "Zend/zend_language_scanner.c" + yy540: + YYDEBUG(540, *YYCURSOR); + yyaccept = 6; + yych = *(YYMARKER = ++YYCURSOR); + if (yybm[0+yych] & 16) { + goto yy127; + } + if (yych <= '\f') { + if (yych <= 0x08) goto yy541; + if (yych <= '\n') goto yy603; + } else { + if (yych <= '\r') goto yy603; + if (yych == ' ') goto yy603; + } yy541: YYDEBUG(541, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy562; - if (yych == 't') goto yy562; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1164 "Zend/zend_language_scanner.l" ++#line 1151 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_YIELD); + } -#line 5779 "Zend/zend_language_scanner.c" ++#line 5767 "Zend/zend_language_scanner.c" yy542: YYDEBUG(542, *YYCURSOR); yych = *++YYCURSOR; @@@ -5535,46 -5826,52 +5814,52 @@@ yy549 yy550: YYDEBUG(550, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy551; - if (yych != 'n') goto yy150; + if (yych == 'I') goto yy613; + if (yych == 'i') goto yy613; + goto yy128; yy551: YYDEBUG(551, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy552; - if (yych != 'c') goto yy150; - yy552: + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(552, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy553; - if (yych != 'e') goto yy150; + if (yych <= 0x1F) { + if (yych == '\t') goto yy551; + goto yy166; + } else { + if (yych <= ' ') goto yy551; + if (yych == ')') goto yy614; + goto yy166; + } yy553: YYDEBUG(553, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'Y') goto yy616; + if (yych == 'y') goto yy616; + goto yy166; + yy554: YYDEBUG(554, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1376 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_INCLUDE_ONCE); - } - #line 5563 "Zend/zend_language_scanner.c" + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; yy555: YYDEBUG(555, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy556; - if (yych != 'r') goto yy150; - yy556: + if (yych <= 0x1F) { + if (yych == '\t') goto yy554; + goto yy166; + } else { + if (yych <= ' ') goto yy554; + if (yych != ')') goto yy166; + } YYDEBUG(556, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy557; - if (yych != 'f') goto yy150; - yy557: + ++YYCURSOR; YYDEBUG(557, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy558; - if (yych != 'a') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1374 "Zend/zend_language_scanner.l" ++#line 1361 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_BOOL_CAST); + } -#line 5875 "Zend/zend_language_scanner.c" ++#line 5863 "Zend/zend_language_scanner.c" yy558: YYDEBUG(558, *YYCURSOR); yych = *++YYCURSOR; @@@ -5583,42 -5881,31 +5869,31 @@@ yy559: YYDEBUG(559, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy560; - if (yych != 'e') goto yy150; + if (yych == 'E') goto yy472; + if (yych == 'e') goto yy472; + goto yy166; yy560: YYDEBUG(560, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'E') goto yy619; + if (yych == 'e') goto yy619; + goto yy166; + yy561: YYDEBUG(561, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1270 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_INTERFACE); - } - #line 5601 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'T') goto yy620; + if (yych == 't') goto yy620; + goto yy166; yy562: YYDEBUG(562, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'E') { - if (yych == 'A') goto yy563; - if (yych <= 'D') goto yy150; - goto yy564; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy150; - } else { - if (yych == 'e') goto yy564; - goto yy150; - } - } - yy563: + ++YYCURSOR; YYDEBUG(563, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy570; - if (yych == 'n') goto yy570; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1358 "Zend/zend_language_scanner.l" ++#line 1345 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_DOUBLE_CAST); + } -#line 5909 "Zend/zend_language_scanner.c" ++#line 5897 "Zend/zend_language_scanner.c" yy564: YYDEBUG(564, *YYCURSOR); yych = *++YYCURSOR; @@@ -5665,36 -5959,56 +5947,56 @@@ yy571 yy572: YYDEBUG(572, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy573; - if (yych != 'o') goto yy150; + if (yych == 'T') goto yy629; + if (yych == 't') goto yy629; + goto yy128; yy573: YYDEBUG(573, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy574; - if (yych != 'f') goto yy150; - yy574: - YYDEBUG(574, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(575, *YYCURSOR); + YYDEBUG(574, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1222 "Zend/zend_language_scanner.l" -#line 1188 "Zend/zend_language_scanner.l" ++#line 1175 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_INSTANCEOF); + RETURN_TOKEN(T_ELSEIF); } - #line 5688 "Zend/zend_language_scanner.c" -#line 5978 "Zend/zend_language_scanner.c" ++#line 5966 "Zend/zend_language_scanner.c" + yy575: + YYDEBUG(575, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'L') goto yy631; + if (yych == 'l') goto yy631; + goto yy128; yy576: YYDEBUG(576, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy577; - if (yych != 'l') goto yy150; + ++YYCURSOR; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '@') { + if (yych <= '/') goto yy577; + if (yych <= '9') goto yy127; + } else { + if (yych == 'E') goto yy632; + if (yych <= 'Z') goto yy127; + } + } else { + if (yych <= 'd') { + if (yych != '`') goto yy127; + } else { + if (yych <= 'e') goto yy632; + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; + } + } yy577: YYDEBUG(577, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy578; - if (yych != 'e') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1216 "Zend/zend_language_scanner.l" ++#line 1203 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ENDFOR); + } -#line 6012 "Zend/zend_language_scanner.c" ++#line 6000 "Zend/zend_language_scanner.c" yy578: YYDEBUG(578, *YYCURSOR); yych = *++YYCURSOR; @@@ -5718,27 -6036,28 +6024,28 @@@ yy581 yy582: YYDEBUG(582, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy583; - if (yych != 's') goto yy150; + if (yych == 'H') goto yy639; + if (yych == 'h') goto yy639; + goto yy128; yy583: YYDEBUG(583, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'O') goto yy641; + if (yych == 'o') goto yy641; + goto yy128; + yy584: + YYDEBUG(584, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(584, *YYCURSOR); + YYDEBUG(585, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1282 "Zend/zend_language_scanner.l" -#line 1414 "Zend/zend_language_scanner.l" ++#line 1401 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_IMPLEMENTS); + RETURN_TOKEN(T_GLOBAL); } - #line 5736 "Zend/zend_language_scanner.c" - yy585: - YYDEBUG(585, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy593; - if (yych == 'r') goto yy593; - goto yy150; -#line 6061 "Zend/zend_language_scanner.c" ++#line 6049 "Zend/zend_language_scanner.c" yy586: YYDEBUG(586, *YYCURSOR); yych = *++YYCURSOR; @@@ -5791,76 -6103,80 +6091,80 @@@ yy592 yy593: YYDEBUG(593, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy594; - if (yych != 'o') goto yy150; + if (yych == 'T') goto yy651; + if (yych == 't') goto yy651; + goto yy128; yy594: YYDEBUG(594, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy595; - if (yych != 'w') goto yy150; - yy595: - YYDEBUG(595, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(596, *YYCURSOR); + YYDEBUG(595, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1166 "Zend/zend_language_scanner.l" -#line 1450 "Zend/zend_language_scanner.l" ++#line 1437 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_THROW); + RETURN_TOKEN(T_PUBLIC); } - #line 5814 "Zend/zend_language_scanner.c" -#line 6122 "Zend/zend_language_scanner.c" ++#line 6110 "Zend/zend_language_scanner.c" + yy596: + YYDEBUG(596, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy652; + if (yych == 'e') goto yy652; + goto yy128; yy597: YYDEBUG(597, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy598; - if (yych != 'e') goto yy150; - yy598: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(598, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy599; - if (yych != 'l') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1154 "Zend/zend_language_scanner.l" ++#line 1141 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_RETURN); + } -#line 6141 "Zend/zend_language_scanner.c" ++#line 6129 "Zend/zend_language_scanner.c" yy599: YYDEBUG(599, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy600; - if (yych != 'd') goto yy150; - yy600: - YYDEBUG(600, *YYCURSOR); - yyaccept = 6; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy149; - } - if (yych <= '\f') { - if (yych <= 0x08) goto yy601; - if (yych <= '\n') goto yy602; - } else { - if (yych <= '\r') goto yy602; - if (yych == ' ') goto yy602; + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(600, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1430 "Zend/zend_language_scanner.l" ++#line 1417 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_STATIC); + } -#line 6154 "Zend/zend_language_scanner.c" ++#line 6142 "Zend/zend_language_scanner.c" yy601: YYDEBUG(601, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } + YYDEBUG(602, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1150 "Zend/zend_language_scanner.l" -#line 1244 "Zend/zend_language_scanner.l" ++#line 1231 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_YIELD); + RETURN_TOKEN(T_SWITCH); } - #line 5851 "Zend/zend_language_scanner.c" - yy602: - YYDEBUG(602, *YYCURSOR); -#line 6167 "Zend/zend_language_scanner.c" ++#line 6155 "Zend/zend_language_scanner.c" + yy603: + YYDEBUG(603, *YYCURSOR); ++YYCURSOR; - YYFILL(4); + YYFILL(5); yych = *YYCURSOR; - YYDEBUG(603, *YYCURSOR); + YYDEBUG(604, *YYCURSOR); if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x08) goto yy157; - goto yy602; + if (yych <= 0x08) goto yy166; + goto yy603; } else { - if (yych == '\r') goto yy602; - goto yy157; + if (yych == '\r') goto yy603; + goto yy166; } } else { if (yych <= 'F') { @@@ -5927,44 -6235,33 +6223,33 @@@ yy612 yy613: YYDEBUG(613, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy614; - if (yych != 'r') goto yy150; + if (yych == 'T') goto yy664; + if (yych == 't') goto yy664; + goto yy128; yy614: YYDEBUG(614, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy615; - if (yych != 'e') goto yy150; - yy615: - YYDEBUG(615, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy149; - } else { - if (yych <= '@') goto yy616; - if (yych <= 'Z') goto yy149; - } - } else { - if (yych <= '`') { - if (yych <= '_') goto yy617; - } else { - if (yych <= 'z') goto yy149; - if (yych >= 0x80) goto yy149; - } - } - yy616: - YYDEBUG(616, *YYCURSOR); + YYDEBUG(615, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1380 "Zend/zend_language_scanner.l" -#line 1366 "Zend/zend_language_scanner.l" ++#line 1353 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_REQUIRE); + RETURN_TOKEN(T_ARRAY_CAST); } - #line 5963 "Zend/zend_language_scanner.c" - yy617: -#line 6251 "Zend/zend_language_scanner.c" ++#line 6239 "Zend/zend_language_scanner.c" + yy616: + YYDEBUG(616, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(617, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy618; - if (yych != 'o') goto yy150; + if (yych <= 0x1F) { + if (yych == '\t') goto yy616; + goto yy166; + } else { + if (yych <= ' ') goto yy616; + if (yych == ')') goto yy665; + goto yy166; + } yy618: YYDEBUG(618, *YYCURSOR); yych = *++YYCURSOR; @@@ -5973,104 -6271,77 +6259,77 @@@ yy619: YYDEBUG(619, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy620; - if (yych != 'c') goto yy150; + if (yych == 'R') goto yy466; + if (yych == 'r') goto yy466; + goto yy166; yy620: YYDEBUG(620, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy621; - if (yych != 'e') goto yy150; - yy621: - YYDEBUG(621, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + YYFILL(1); + yych = *YYCURSOR; + YYDEBUG(621, *YYCURSOR); + if (yych <= 0x1F) { + if (yych == '\t') goto yy620; + goto yy166; + } else { + if (yych <= ' ') goto yy620; + if (yych == ')') goto yy667; + goto yy166; } + yy622: YYDEBUG(622, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(623, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1384 "Zend/zend_language_scanner.l" -#line 1378 "Zend/zend_language_scanner.l" ++#line 1365 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_REQUIRE_ONCE); + RETURN_TOKEN(T_UNSET_CAST); } - #line 5996 "Zend/zend_language_scanner.c" - yy623: - YYDEBUG(623, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy624; - if (yych != 'r') goto yy150; -#line 6301 "Zend/zend_language_scanner.c" ++#line 6289 "Zend/zend_language_scanner.c" yy624: YYDEBUG(624, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy625; - if (yych != 'n') goto yy150; + if (yych == 'T') goto yy669; + if (yych == 't') goto yy669; + goto yy128; yy625: YYDEBUG(625, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'E') goto yy671; + if (yych == 'e') goto yy671; + goto yy128; + yy626: YYDEBUG(626, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1141 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_RETURN); - } - #line 6019 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'E') goto yy673; + if (yych == 'e') goto yy673; + goto yy128; yy627: YYDEBUG(627, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych <= 'L') { - if (yych <= 'K') goto yy150; - goto yy650; - } else { - if (yych <= 'R') goto yy150; - if (yych <= 'S') goto yy649; - goto yy648; - } - } else { - if (yych <= 'r') { - if (yych == 'l') goto yy650; - goto yy150; - } else { - if (yych <= 's') goto yy649; - if (yych <= 't') goto yy648; - goto yy150; - } - } - yy628: - YYDEBUG(628, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'A') goto yy640; - if (yych <= 'N') goto yy150; - goto yy641; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy150; - goto yy640; - } else { - if (yych == 'o') goto yy641; - goto yy150; - } + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(628, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1228 "Zend/zend_language_scanner.l" ++#line 1215 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_DECLARE); + } -#line 6332 "Zend/zend_language_scanner.c" ++#line 6320 "Zend/zend_language_scanner.c" yy629: YYDEBUG(629, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy630; - if (yych != 'n') goto yy150; - yy630: - YYDEBUG(630, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych <= 'R') goto yy150; - if (yych >= 'T') goto yy632; - } else { - if (yych <= 'r') goto yy150; - if (yych <= 's') goto yy631; - if (yych <= 't') goto yy632; - goto yy150; + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(630, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1256 "Zend/zend_language_scanner.l" ++#line 1243 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_DEFAULT); + } -#line 6345 "Zend/zend_language_scanner.c" ++#line 6333 "Zend/zend_language_scanner.c" yy631: YYDEBUG(631, *YYCURSOR); yych = *++YYCURSOR; @@@ -6090,45 -6363,48 +6351,48 @@@ yy633 yy634: YYDEBUG(634, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy635; - if (yych != 'u') goto yy150; + if (yych == 'E') goto yy678; + if (yych == 'e') goto yy678; + goto yy128; yy635: YYDEBUG(635, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy636; - if (yych != 'e') goto yy150; - yy636: - YYDEBUG(636, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(637, *YYCURSOR); + YYDEBUG(636, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1250 "Zend/zend_language_scanner.l" -#line 1292 "Zend/zend_language_scanner.l" ++#line 1279 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_CONTINUE); + RETURN_TOKEN(T_EXTENDS); } - #line 6113 "Zend/zend_language_scanner.c" - yy638: - YYDEBUG(638, *YYCURSOR); -#line 6382 "Zend/zend_language_scanner.c" ++#line 6370 "Zend/zend_language_scanner.c" + yy637: + YYDEBUG(637, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(639, *YYCURSOR); + YYDEBUG(638, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1137 "Zend/zend_language_scanner.l" -#line 1176 "Zend/zend_language_scanner.l" ++#line 1163 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_CONST); + RETURN_TOKEN(T_FINALLY); } - #line 6126 "Zend/zend_language_scanner.c" - yy640: -#line 6395 "Zend/zend_language_scanner.c" ++#line 6383 "Zend/zend_language_scanner.c" + yy639: + YYDEBUG(639, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(640, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy645; - if (yych == 's') goto yy645; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1220 "Zend/zend_language_scanner.l" ++#line 1207 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_FOREACH); + } -#line 6408 "Zend/zend_language_scanner.c" ++#line 6396 "Zend/zend_language_scanner.c" yy641: YYDEBUG(641, *YYCURSOR); yych = *++YYCURSOR; @@@ -6142,16 -6420,29 +6408,29 @@@ yy642 yy643: YYDEBUG(643, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '9') { + if (yych >= '0') goto yy127; + } else { + if (yych <= '@') goto yy644; + if (yych <= 'Z') goto yy127; + } + } else { + if (yych <= '`') { + if (yych <= '_') goto yy683; + } else { + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; + } } + yy644: YYDEBUG(644, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1332 "Zend/zend_language_scanner.l" -#line 1386 "Zend/zend_language_scanner.l" ++#line 1373 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_CLONE); + RETURN_TOKEN(T_INCLUDE); } - #line 6155 "Zend/zend_language_scanner.c" -#line 6446 "Zend/zend_language_scanner.c" ++#line 6434 "Zend/zend_language_scanner.c" yy645: YYDEBUG(645, *YYCURSOR); yych = *++YYCURSOR; @@@ -6173,66 -6464,83 +6452,83 @@@ yy647 yy648: YYDEBUG(648, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy659; - if (yych == 'c') goto yy659; - goto yy150; + if (yych == 'C') goto yy687; + if (yych == 'c') goto yy687; + goto yy128; yy649: YYDEBUG(649, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy657; - if (yych == 'e') goto yy657; - goto yy150; - yy650: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(650, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy651; - if (yych != 'l') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1442 "Zend/zend_language_scanner.l" ++#line 1429 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_PRIVATE); + } -#line 6483 "Zend/zend_language_scanner.c" ++#line 6471 "Zend/zend_language_scanner.c" yy651: YYDEBUG(651, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy652; - if (yych != 'a') goto yy150; + if (yych == 'E') goto yy688; + if (yych == 'e') goto yy688; + goto yy128; yy652: YYDEBUG(652, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy653; - if (yych != 'b') goto yy150; + ++YYCURSOR; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '9') { + if (yych >= '0') goto yy127; + } else { + if (yych <= '@') goto yy653; + if (yych <= 'Z') goto yy127; + } + } else { + if (yych <= '`') { + if (yych <= '_') goto yy689; + } else { + if (yych <= 'z') goto yy127; - if (yych >= 0x7F) goto yy127; ++ if (yych >= 0x80) goto yy127; + } + } yy653: YYDEBUG(653, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy654; - if (yych != 'l') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1394 "Zend/zend_language_scanner.l" ++#line 1381 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_REQUIRE); + } -#line 6515 "Zend/zend_language_scanner.c" ++#line 6503 "Zend/zend_language_scanner.c" yy654: YYDEBUG(654, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy655; - if (yych != 'e') goto yy150; + if (yych == 'R') goto yy690; + if (yych == 'r') goto yy690; + goto yy166; yy655: YYDEBUG(655, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == '_') goto yy691; + goto yy128; + yy656: YYDEBUG(656, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1456 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_CALLABLE); - } - #line 6223 "Zend/zend_language_scanner.c" - yy657: - YYDEBUG(657, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(658, *YYCURSOR); + YYDEBUG(657, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1238 "Zend/zend_language_scanner.l" -#line 1787 "Zend/zend_language_scanner.l" ++#line 1774 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_CASE); + RETURN_TOKEN(T_DIR); } - #line 6236 "Zend/zend_language_scanner.c" -#line 6539 "Zend/zend_language_scanner.c" ++#line 6527 "Zend/zend_language_scanner.c" + yy658: + YYDEBUG(658, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '_') goto yy692; + goto yy128; yy659: YYDEBUG(659, *YYCURSOR); yych = *++YYCURSOR; @@@ -6266,79 -6573,67 +6561,67 @@@ yy663 yy664: YYDEBUG(664, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy665; - if (yych != 'n') goto yy150; + if (yych == '_') goto yy700; + goto yy128; yy665: YYDEBUG(665, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy666; - if (yych != 'c') goto yy150; - yy666: + ++YYCURSOR; YYDEBUG(666, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy667; - if (yych != 't') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1362 "Zend/zend_language_scanner.l" ++#line 1349 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_STRING_CAST); + } -#line 6588 "Zend/zend_language_scanner.c" ++#line 6576 "Zend/zend_language_scanner.c" yy667: YYDEBUG(667, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy668; - if (yych != 'i') goto yy150; - yy668: + ++YYCURSOR; YYDEBUG(668, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy669; - if (yych != 'o') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1370 "Zend/zend_language_scanner.l" ++#line 1357 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_OBJECT_CAST); + } -#line 6598 "Zend/zend_language_scanner.c" ++#line 6586 "Zend/zend_language_scanner.c" yy669: YYDEBUG(669, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy670; - if (yych != 'n') goto yy150; - yy670: - YYDEBUG(670, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(671, *YYCURSOR); + YYDEBUG(670, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1133 "Zend/zend_language_scanner.l" -#line 1434 "Zend/zend_language_scanner.l" ++#line 1421 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_FUNCTION); + RETURN_TOKEN(T_ABSTRACT); } - #line 6309 "Zend/zend_language_scanner.c" - yy672: - YYDEBUG(672, *YYCURSOR); -#line 6611 "Zend/zend_language_scanner.c" ++#line 6599 "Zend/zend_language_scanner.c" + yy671: + YYDEBUG(671, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy673; - if (yych <= '9') goto yy149; - } else { - if (yych == 'E') goto yy674; - if (yych <= 'Z') goto yy149; - } - } else { - if (yych <= 'd') { - if (yych != '`') goto yy149; - } else { - if (yych <= 'e') goto yy674; - if (yych <= 'z') goto yy149; - if (yych >= 0x80) goto yy149; - } + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(672, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1470 "Zend/zend_language_scanner.l" ++#line 1457 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_CALLABLE); + } -#line 6624 "Zend/zend_language_scanner.c" ++#line 6612 "Zend/zend_language_scanner.c" yy673: YYDEBUG(673, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } + YYDEBUG(674, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1198 "Zend/zend_language_scanner.l" -#line 1264 "Zend/zend_language_scanner.l" ++#line 1251 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_FOR); + RETURN_TOKEN(T_CONTINUE); } - #line 6337 "Zend/zend_language_scanner.c" - yy674: - YYDEBUG(674, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy675; - if (yych != 'a') goto yy150; -#line 6637 "Zend/zend_language_scanner.c" ++#line 6625 "Zend/zend_language_scanner.c" yy675: YYDEBUG(675, *YYCURSOR); yych = *++YYCURSOR; @@@ -6347,59 -6643,47 +6631,47 @@@ yy676: YYDEBUG(676, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy677; - if (yych != 'h') goto yy150; + if (yych == 'C') goto yy702; + if (yych == 'c') goto yy702; + goto yy128; yy677: YYDEBUG(677, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'H') goto yy703; + if (yych == 'h') goto yy703; + goto yy128; + yy678: + YYDEBUG(678, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(678, *YYCURSOR); + YYDEBUG(679, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1206 "Zend/zend_language_scanner.l" -#line 1204 "Zend/zend_language_scanner.l" ++#line 1191 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_FOREACH); + RETURN_TOKEN(T_ENDWHILE); } - #line 6365 "Zend/zend_language_scanner.c" - yy679: - YYDEBUG(679, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy680; - if (yych != 'a') goto yy150; -#line 6668 "Zend/zend_language_scanner.c" ++#line 6656 "Zend/zend_language_scanner.c" yy680: YYDEBUG(680, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy681; - if (yych != 'l') goto yy150; - yy681: - YYDEBUG(681, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy682; - if (yych <= '9') goto yy149; - } else { - if (yych == 'L') goto yy683; - if (yych <= 'Z') goto yy149; - } - } else { - if (yych <= 'k') { - if (yych != '`') goto yy149; - } else { - if (yych <= 'l') goto yy683; - if (yych <= 'z') goto yy149; - if (yych >= 0x80) goto yy149; - } + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - yy682: - YYDEBUG(682, *YYCURSOR); + YYDEBUG(681, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1424 "Zend/zend_language_scanner.l" -#line 1146 "Zend/zend_language_scanner.l" ++#line 1133 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_FINAL); + RETURN_TOKEN(T_FUNCTION); } - #line 6403 "Zend/zend_language_scanner.c" -#line 6681 "Zend/zend_language_scanner.c" ++#line 6669 "Zend/zend_language_scanner.c" + yy682: + YYDEBUG(682, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy705; + if (yych == 't') goto yy705; + goto yy128; yy683: YYDEBUG(683, *YYCURSOR); yych = *++YYCURSOR; @@@ -6437,46 -6711,45 +6699,45 @@@ yy686 yy687: YYDEBUG(687, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy690; - if (yych == 'e') goto yy690; - goto yy150; + if (yych == 'E') goto yy712; + if (yych == 'e') goto yy712; + goto yy128; yy688: YYDEBUG(688, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'D') goto yy714; + if (yych == 'd') goto yy714; + goto yy128; + yy689: YYDEBUG(689, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1194 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_DO); - } - #line 6456 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'O') goto yy716; + if (yych == 'o') goto yy716; + goto yy128; yy690: YYDEBUG(690, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'O') goto yy717; + if (yych == 'o') goto yy717; + goto yy166; + yy691: + YYDEBUG(691, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '_') goto yy718; + goto yy128; + yy692: + YYDEBUG(692, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(691, *YYCURSOR); + YYDEBUG(693, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1129 "Zend/zend_language_scanner.l" -#line 1783 "Zend/zend_language_scanner.l" ++#line 1770 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_EXIT); + RETURN_TOKEN(T_FILE); } - #line 6469 "Zend/zend_language_scanner.c" - yy692: - YYDEBUG(692, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy699; - if (yych == 'l') goto yy699; - goto yy150; - yy693: - YYDEBUG(693, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy694; - if (yych != 'a') goto yy150; -#line 6753 "Zend/zend_language_scanner.c" ++#line 6741 "Zend/zend_language_scanner.c" yy694: YYDEBUG(694, *YYCURSOR); yych = *++YYCURSOR; @@@ -6485,26 -6759,27 +6747,27 @@@ yy695: YYDEBUG(695, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy696; - if (yych != 'l') goto yy150; + if (yych == 'O') goto yy721; + if (yych == 'o') goto yy721; + goto yy128; yy696: YYDEBUG(696, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy697; - if (yych != 't') goto yy150; - yy697: - YYDEBUG(697, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(698, *YYCURSOR); + YYDEBUG(697, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1242 "Zend/zend_language_scanner.l" -#line 1779 "Zend/zend_language_scanner.l" ++#line 1766 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_DEFAULT); + RETURN_TOKEN(T_LINE); } - #line 6508 "Zend/zend_language_scanner.c" -#line 6778 "Zend/zend_language_scanner.c" ++#line 6766 "Zend/zend_language_scanner.c" + yy698: + YYDEBUG(698, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '_') goto yy722; + goto yy128; yy699: YYDEBUG(699, *YYCURSOR); yych = *++YYCURSOR; @@@ -6518,27 -6794,28 +6782,28 @@@ yy700 yy701: YYDEBUG(701, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy702; - if (yych != 'e') goto yy150; + if (yych == 'E') goto yy726; + if (yych == 'e') goto yy726; + goto yy128; yy702: YYDEBUG(702, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'H') goto yy728; + if (yych == 'h') goto yy728; + goto yy128; + yy703: + YYDEBUG(703, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(703, *YYCURSOR); + YYDEBUG(704, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1214 "Zend/zend_language_scanner.l" -#line 1248 "Zend/zend_language_scanner.l" ++#line 1235 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_DECLARE); + RETURN_TOKEN(T_ENDSWITCH); } - #line 6536 "Zend/zend_language_scanner.c" - yy704: - YYDEBUG(704, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy766; - if (yych == 'h') goto yy766; - goto yy150; -#line 6819 "Zend/zend_language_scanner.c" ++#line 6807 "Zend/zend_language_scanner.c" yy705: YYDEBUG(705, *YYCURSOR); yych = *++YYCURSOR; @@@ -6554,100 -6831,98 +6819,98 @@@ yy706 yy707: YYDEBUG(707, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy722; - if (yych == 'd') goto yy722; - goto yy150; + if (yych == 'F') goto yy733; + if (yych == 'f') goto yy733; + goto yy128; yy708: YYDEBUG(708, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy719; - if (yych == 'a') goto yy719; - goto yy150; - yy709: - YYDEBUG(709, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'I') goto yy710; - if (yych <= 'S') goto yy150; - goto yy711; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy150; - } else { - if (yych == 't') goto yy711; - goto yy150; - } + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } + YYDEBUG(709, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1410 "Zend/zend_language_scanner.l" ++#line 1397 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_INSTEADOF); + } -#line 6850 "Zend/zend_language_scanner.c" ++#line 6838 "Zend/zend_language_scanner.c" yy710: YYDEBUG(710, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy717; - if (yych == 't') goto yy717; - goto yy150; - yy711: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(711, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy712; - if (yych != 'e') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1284 "Zend/zend_language_scanner.l" ++#line 1271 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_INTERFACE); + } -#line 6863 "Zend/zend_language_scanner.c" ++#line 6851 "Zend/zend_language_scanner.c" yy712: YYDEBUG(712, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy713; - if (yych != 'n') goto yy150; - yy713: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(713, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'D') goto yy714; - if (yych != 'd') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1402 "Zend/zend_language_scanner.l" ++#line 1389 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_NAMESPACE); + } -#line 6876 "Zend/zend_language_scanner.c" ++#line 6864 "Zend/zend_language_scanner.c" yy714: YYDEBUG(714, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy715; - if (yych != 's') goto yy150; - yy715: - YYDEBUG(715, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(716, *YYCURSOR); + YYDEBUG(715, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1278 "Zend/zend_language_scanner.l" -#line 1446 "Zend/zend_language_scanner.l" ++#line 1433 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_EXTENDS); + RETURN_TOKEN(T_PROTECTED); } - #line 6620 "Zend/zend_language_scanner.c" -#line 6889 "Zend/zend_language_scanner.c" ++#line 6877 "Zend/zend_language_scanner.c" + yy716: + YYDEBUG(716, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy735; + if (yych == 'n') goto yy735; + goto yy128; yy717: YYDEBUG(717, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'M') goto yy736; + if (yych == 'm') goto yy736; + goto yy166; + yy718: + YYDEBUG(718, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(718, *YYCURSOR); + YYDEBUG(719, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1125 "Zend/zend_language_scanner.l" -#line 1763 "Zend/zend_language_scanner.l" ++#line 1750 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_EXIT); + RETURN_TOKEN(T_CLASS_C); } - #line 6633 "Zend/zend_language_scanner.c" - yy719: - YYDEBUG(719, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy720; - if (yych != 'l') goto yy150; -#line 6914 "Zend/zend_language_scanner.c" ++#line 6902 "Zend/zend_language_scanner.c" yy720: YYDEBUG(720, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } + yych = *++YYCURSOR; + if (yych == 'N') goto yy737; + if (yych == 'n') goto yy737; + goto yy128; + yy721: YYDEBUG(721, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1368 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_EVAL); - } - #line 6651 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'M') goto yy738; + if (yych == 'm') goto yy738; + goto yy128; yy722: YYDEBUG(722, *YYCURSOR); yych = *++YYCURSOR; @@@ -6668,70 -6931,80 +6919,80 @@@ yy723: YYDEBUG(723, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy749; - if (yych == 'e') goto yy749; - goto yy150; + if (yych == 'C') goto yy741; + if (yych == 'c') goto yy741; + goto yy128; yy724: YYDEBUG(724, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy741; - if (yych == 'o') goto yy741; - goto yy150; - yy725: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(725, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy739; - if (yych == 'f') goto yy739; - goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1767 "Zend/zend_language_scanner.l" ++#line 1754 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_TRAIT_C); + } -#line 6950 "Zend/zend_language_scanner.c" ++#line 6938 "Zend/zend_language_scanner.c" yy726: YYDEBUG(726, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'W') goto yy733; - if (yych == 'w') goto yy733; - goto yy150; - yy727: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(727, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy728; - if (yych != 'h') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1232 "Zend/zend_language_scanner.l" ++#line 1219 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ENDDECLARE); + } -#line 6963 "Zend/zend_language_scanner.c" ++#line 6951 "Zend/zend_language_scanner.c" yy728: YYDEBUG(728, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy729; - if (yych != 'i') goto yy150; - yy729: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(729, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy730; - if (yych != 'l') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1224 "Zend/zend_language_scanner.l" ++#line 1211 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_ENDFOREACH); + } -#line 6976 "Zend/zend_language_scanner.c" ++#line 6964 "Zend/zend_language_scanner.c" yy730: YYDEBUG(730, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy731; - if (yych != 'e') goto yy150; - yy731: - YYDEBUG(731, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(732, *YYCURSOR); + YYDEBUG(731, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1190 "Zend/zend_language_scanner.l" -#line 1296 "Zend/zend_language_scanner.l" ++#line 1283 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ENDWHILE); + RETURN_TOKEN(T_IMPLEMENTS); } - #line 6725 "Zend/zend_language_scanner.c" -#line 6989 "Zend/zend_language_scanner.c" ++#line 6977 "Zend/zend_language_scanner.c" + yy732: + YYDEBUG(732, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy742; + if (yych == 'c') goto yy742; + goto yy128; yy733: YYDEBUG(733, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy734; - if (yych != 'i') goto yy150; - yy734: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(734, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy735; - if (yych != 't') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1236 "Zend/zend_language_scanner.l" ++#line 1223 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_INSTANCEOF); + } -#line 7008 "Zend/zend_language_scanner.c" ++#line 6996 "Zend/zend_language_scanner.c" yy735: YYDEBUG(735, *YYCURSOR); yych = *++YYCURSOR; @@@ -6763,110 -7052,102 +7040,102 @@@ yy739 } YYDEBUG(740, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1178 "Zend/zend_language_scanner.l" -#line 1775 "Zend/zend_language_scanner.l" ++#line 1762 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ENDIF); + RETURN_TOKEN(T_METHOD_C); } - #line 6771 "Zend/zend_language_scanner.c" -#line 7060 "Zend/zend_language_scanner.c" ++#line 7048 "Zend/zend_language_scanner.c" yy741: YYDEBUG(741, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy742; - if (yych != 'r') goto yy150; + if (yych == 'E') goto yy748; + if (yych == 'e') goto yy748; + goto yy128; yy742: YYDEBUG(742, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy743; - if (yych <= '9') goto yy149; - } else { - if (yych == 'E') goto yy744; - if (yych <= 'Z') goto yy149; - } - } else { - if (yych <= 'd') { - if (yych != '`') goto yy149; - } else { - if (yych <= 'e') goto yy744; - if (yych <= 'z') goto yy149; - if (yych >= 0x80) goto yy149; - } - } + yych = *++YYCURSOR; + if (yych == 'E') goto yy749; + if (yych == 'e') goto yy749; + goto yy128; yy743: YYDEBUG(743, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1202 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_ENDFOR); - } - #line 6804 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'E') goto yy751; + if (yych == 'e') goto yy751; + goto yy128; yy744: YYDEBUG(744, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy745; - if (yych != 'a') goto yy150; - yy745: + ++YYCURSOR; YYDEBUG(745, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy746; - if (yych != 'c') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1158 "Zend/zend_language_scanner.l" ++#line 1145 "Zend/zend_language_scanner.l" + { + yyless(yyleng - 1); + HANDLE_NEWLINES(yytext, yyleng); + RETURN_TOKEN(T_YIELD_FROM); + } -#line 7090 "Zend/zend_language_scanner.c" ++#line 7078 "Zend/zend_language_scanner.c" yy746: YYDEBUG(746, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy747; - if (yych != 'h') goto yy150; + if (yych == '_') goto yy753; + goto yy128; yy747: YYDEBUG(747, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy755; + if (yych == 'i') goto yy755; + goto yy128; + yy748: + YYDEBUG(748, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '_') goto yy756; + goto yy128; + yy749: + YYDEBUG(749, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(748, *YYCURSOR); + YYDEBUG(750, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1210 "Zend/zend_language_scanner.l" -#line 1390 "Zend/zend_language_scanner.l" ++#line 1377 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ENDFOREACH); + RETURN_TOKEN(T_INCLUDE_ONCE); } - #line 6832 "Zend/zend_language_scanner.c" - yy749: - YYDEBUG(749, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy750; - if (yych != 'c') goto yy150; - yy750: - YYDEBUG(750, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy751; - if (yych != 'l') goto yy150; -#line 7119 "Zend/zend_language_scanner.c" ++#line 7107 "Zend/zend_language_scanner.c" yy751: YYDEBUG(751, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy752; - if (yych != 'a') goto yy150; - yy752: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; + } YYDEBUG(752, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy753; - if (yych != 'r') goto yy150; + yyleng = YYCURSOR - SCNG(yy_text); -#line 1398 "Zend/zend_language_scanner.l" ++#line 1385 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_REQUIRE_ONCE); + } -#line 7132 "Zend/zend_language_scanner.c" ++#line 7120 "Zend/zend_language_scanner.c" yy753: YYDEBUG(753, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy754; - if (yych != 'e') goto yy150; - yy754: - YYDEBUG(754, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - YYDEBUG(755, *YYCURSOR); + YYDEBUG(754, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1218 "Zend/zend_language_scanner.l" -#line 1771 "Zend/zend_language_scanner.l" ++#line 1758 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ENDDECLARE); + RETURN_TOKEN(T_FUNC_C); } - #line 6870 "Zend/zend_language_scanner.c" -#line 7145 "Zend/zend_language_scanner.c" ++#line 7133 "Zend/zend_language_scanner.c" + yy755: + YYDEBUG(755, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'L') goto yy757; + if (yych == 'l') goto yy757; + goto yy128; yy756: YYDEBUG(756, *YYCURSOR); yych = *++YYCURSOR; @@@ -6885,11 -7167,11 +7155,11 @@@ yy758 } YYDEBUG(759, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1408 "Zend/zend_language_scanner.l" -#line 1791 "Zend/zend_language_scanner.l" ++#line 1778 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_EMPTY); + RETURN_TOKEN(T_NS_C); } - #line 6893 "Zend/zend_language_scanner.c" -#line 7175 "Zend/zend_language_scanner.c" ++#line 7163 "Zend/zend_language_scanner.c" yy760: YYDEBUG(760, *YYCURSOR); yych = *++YYCURSOR; @@@ -6898,210 -7180,138 +7168,138 @@@ yy761: YYDEBUG(761, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy762; - if (yych <= '9') goto yy149; - } else { - if (yych == 'I') goto yy763; - if (yych <= 'Z') goto yy149; - } - } else { - if (yych <= 'h') { - if (yych != '`') goto yy149; - } else { - if (yych <= 'i') goto yy763; - if (yych <= 'z') goto yy149; - if (yych >= 0x80) goto yy149; - } + if (yybm[0+(yych = *YYCURSOR)] & 16) { + goto yy127; } - yy762: YYDEBUG(762, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1182 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_ELSE); - } - #line 6926 "Zend/zend_language_scanner.c" - yy763: - YYDEBUG(763, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'F') goto yy764; - if (yych != 'f') goto yy150; - yy764: - YYDEBUG(764, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(765, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1174 "Zend/zend_language_scanner.l" - { - RETURN_TOKEN(T_ELSEIF); - } - #line 6944 "Zend/zend_language_scanner.c" - yy766: - YYDEBUG(766, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy767; - if (yych != 'o') goto yy150; - yy767: - YYDEBUG(767, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy149; - } - YYDEBUG(768, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1258 "Zend/zend_language_scanner.l" -#line 1426 "Zend/zend_language_scanner.l" ++#line 1413 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_ECHO); + RETURN_TOKEN(T_HALT_COMPILER); } - #line 6962 "Zend/zend_language_scanner.c" -#line 7193 "Zend/zend_language_scanner.c" ++#line 7181 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: { static const unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, - 0, 128, 128, 0, 0, 128, 0, 0, + 0, 64, 64, 0, 0, 64, 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, + 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 64, 64, 64, 64, 64, 64, 64, 64, - 64, 64, 0, 0, 0, 0, 0, 0, - 0, 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, 0, 0, 0, 0, 64, - 0, 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, 0, 0, 0, 0, 0, - 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, + 128, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 0, 0, 0, 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, 0, 0, 0, 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, 0, 0, 0, 0, 128, ++ 128, 128, 128, 0, 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, }; - YYDEBUG(769, *YYCURSOR); + YYDEBUG(763, *YYCURSOR); YYFILL(2); yych = *YYCURSOR; - if (yych <= '-') { - if (yych <= '\r') { - if (yych <= 0x08) goto yy777; - if (yych <= '\n') goto yy771; - if (yych <= '\f') goto yy777; + if (yybm[0+yych] & 64) { + goto yy767; + } + if (yych <= '^') { + if (yych <= '-') { + if (yych >= '-') goto yy770; } else { - if (yych == ' ') goto yy771; - if (yych <= ',') goto yy777; - goto yy773; + if (yych <= '@') goto yy765; + if (yych <= 'Z') goto yy771; } } else { - if (yych <= '_') { - if (yych <= '@') goto yy777; - if (yych <= 'Z') goto yy775; - if (yych <= '^') goto yy777; - goto yy775; + if (yych <= '`') { + if (yych <= '_') goto yy771; } else { - if (yych <= '`') goto yy777; - if (yych <= 'z') goto yy775; - if (yych <= 0x7F) goto yy777; - goto yy775; + if (yych <= 'z') goto yy771; - if (yych >= 0x7F) goto yy771; ++ if (yych >= 0x80) goto yy771; } } - yy771: - YYDEBUG(771, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy783; - yy772: - YYDEBUG(772, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1291 "Zend/zend_language_scanner.l" - { - HANDLE_NEWLINES(yytext, yyleng); - RETURN_TOKEN(T_WHITESPACE); - } - #line 7040 "Zend/zend_language_scanner.c" - yy773: - YYDEBUG(773, *YYCURSOR); + yy765: + YYDEBUG(765, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '>') goto yy780; - yy774: - YYDEBUG(774, *YYCURSOR); + yy766: + YYDEBUG(766, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1306 "Zend/zend_language_scanner.l" -#line 1320 "Zend/zend_language_scanner.l" ++#line 1307 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(); - goto restart; - } - #line 7054 "Zend/zend_language_scanner.c" - yy775: - YYDEBUG(775, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy779; - yy776: - YYDEBUG(776, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1300 "Zend/zend_language_scanner.l" - { - yy_pop_state(); - zend_copy_value(zendlval, yytext, yyleng); - RETURN_TOKEN(T_STRING); + goto restart; } - #line 7069 "Zend/zend_language_scanner.c" - yy777: - YYDEBUG(777, *YYCURSOR); - yych = *++YYCURSOR; - goto yy774; - yy778: - YYDEBUG(778, *YYCURSOR); -#line 7265 "Zend/zend_language_scanner.c" ++#line 7253 "Zend/zend_language_scanner.c" + yy767: + YYDEBUG(767, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - yy779: - YYDEBUG(779, *YYCURSOR); + YYDEBUG(768, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy778; + goto yy767; } - goto yy776; - yy780: - YYDEBUG(780, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(781, *YYCURSOR); + YYDEBUG(769, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1296 "Zend/zend_language_scanner.l" -#line 1305 "Zend/zend_language_scanner.l" ++#line 1292 "Zend/zend_language_scanner.l" { - RETURN_TOKEN(T_OBJECT_OPERATOR); + HANDLE_NEWLINES(yytext, yyleng); + RETURN_TOKEN(T_WHITESPACE); } - #line 7094 "Zend/zend_language_scanner.c" - yy782: - YYDEBUG(782, *YYCURSOR); -#line 7282 "Zend/zend_language_scanner.c" ++#line 7270 "Zend/zend_language_scanner.c" + yy770: + YYDEBUG(770, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '>') goto yy774; + goto yy766; + yy771: + YYDEBUG(771, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - yy783: - YYDEBUG(783, *YYCURSOR); + YYDEBUG(772, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy782; + goto yy771; } - goto yy772; + YYDEBUG(773, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1314 "Zend/zend_language_scanner.l" ++#line 1301 "Zend/zend_language_scanner.l" + { + yy_pop_state(); + zend_copy_value(zendlval, yytext, yyleng); + RETURN_TOKEN(T_STRING); + } -#line 7305 "Zend/zend_language_scanner.c" ++#line 7293 "Zend/zend_language_scanner.c" + yy774: + YYDEBUG(774, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(775, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1310 "Zend/zend_language_scanner.l" ++#line 1297 "Zend/zend_language_scanner.l" + { + RETURN_TOKEN(T_OBJECT_OPERATOR); + } -#line 7315 "Zend/zend_language_scanner.c" ++#line 7303 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_VARNAME: @@@ -7144,17 -7354,30 +7342,30 @@@ YYFILL(2); yych = *YYCURSOR; if (yych <= '_') { - if (yych <= '@') goto yy788; - if (yych <= 'Z') goto yy786; - if (yych <= '^') goto yy788; + if (yych <= '@') goto yy778; + if (yych <= 'Z') goto yy780; + if (yych >= '_') goto yy780; } else { - if (yych <= '`') goto yy788; - if (yych <= 'z') goto yy786; - if (yych <= 0x7F) goto yy788; + if (yych <= '`') goto yy778; + if (yych <= 'z') goto yy780; - if (yych >= 0x7F) goto yy780; ++ if (yych >= 0x80) goto yy780; } - yy786: - YYDEBUG(786, *YYCURSOR); - yyaccept = 0; + yy778: + YYDEBUG(778, *YYCURSOR); + ++YYCURSOR; + yy779: + YYDEBUG(779, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1625 "Zend/zend_language_scanner.l" ++#line 1612 "Zend/zend_language_scanner.l" + { + yyless(0); + yy_pop_state(); + yy_push_state(ST_IN_SCRIPTING); + goto restart; + } -#line 7379 "Zend/zend_language_scanner.c" ++#line 7367 "Zend/zend_language_scanner.c" + yy780: + YYDEBUG(780, *YYCURSOR); yych = *(YYMARKER = ++YYCURSOR); if (yych <= '_') { if (yych <= '@') { @@@ -7166,49 -7391,37 +7379,38 @@@ } } else { if (yych <= '|') { - if (yych <= '`') goto yy787; - if (yych <= 'z') goto yy790; + if (yych <= '`') goto yy779; + if (yych <= 'z') goto yy782; + goto yy779; } else { - if (yych <= '}') goto yy790; - if (yych >= 0x80) goto yy790; - if (yych == '~') goto yy779; ++ if (yych <= '}') goto yy782; ++ if (yych <= 0x7F) goto yy779; + goto yy782; } } - yy787: - YYDEBUG(787, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); - #line 1611 "Zend/zend_language_scanner.l" - { - yyless(0); - yy_pop_state(); - yy_push_state(ST_IN_SCRIPTING); - goto restart; - } - #line 7187 "Zend/zend_language_scanner.c" - yy788: - YYDEBUG(788, *YYCURSOR); - yych = *++YYCURSOR; - goto yy787; - yy789: - YYDEBUG(789, *YYCURSOR); + yy781: + YYDEBUG(781, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - yy790: - YYDEBUG(790, *YYCURSOR); + yy782: + YYDEBUG(782, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy789; + goto yy781; } - if (yych == '[') goto yy792; - if (yych == '}') goto yy792; - YYDEBUG(791, *YYCURSOR); + if (yych <= '@') goto yy783; + if (yych <= '[') goto yy784; + if (yych == '}') goto yy784; + yy783: + YYDEBUG(783, *YYCURSOR); YYCURSOR = YYMARKER; - goto yy787; - yy792: - YYDEBUG(792, *YYCURSOR); + goto yy779; + yy784: + YYDEBUG(784, *YYCURSOR); ++YYCURSOR; - YYDEBUG(793, *YYCURSOR); + YYDEBUG(785, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1602 "Zend/zend_language_scanner.l" -#line 1616 "Zend/zend_language_scanner.l" ++#line 1603 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_copy_value(zendlval, yytext, yyleng); @@@ -7216,18 -7429,18 +7418,18 @@@ yy_push_state(ST_IN_SCRIPTING); RETURN_TOKEN(T_STRING_VARNAME); } - #line 7220 "Zend/zend_language_scanner.c" -#line 7433 "Zend/zend_language_scanner.c" ++#line 7422 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_NOWDOC: - YYDEBUG(794, *YYCURSOR); + YYDEBUG(786, *YYCURSOR); YYFILL(1); yych = *YYCURSOR; - YYDEBUG(796, *YYCURSOR); + YYDEBUG(788, *YYCURSOR); ++YYCURSOR; - YYDEBUG(797, *YYCURSOR); + YYDEBUG(789, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2330 "Zend/zend_language_scanner.l" -#line 2344 "Zend/zend_language_scanner.l" ++#line 2331 "Zend/zend_language_scanner.l" { int newline = 0; @@@ -7283,7 -7496,7 +7485,7 @@@ nowdoc_scan_done HANDLE_NEWLINES(yytext, yyleng - newline); RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); } - #line 7287 "Zend/zend_language_scanner.c" -#line 7500 "Zend/zend_language_scanner.c" ++#line 7489 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_VAR_OFFSET: { @@@ -7294,82 -7507,136 +7496,135 @@@ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 240, 240, 112, 112, 112, 112, 112, 112, - 112, 112, 0, 0, 0, 0, 0, 0, - 0, 80, 80, 80, 80, 80, 80, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 0, 0, 0, 0, 16, - 0, 80, 80, 80, 80, 80, 80, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 0, 0, 0, 0, 0, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, - 16, 16, 16, 16, 16, 16, 16, 16, + 240, 240, 176, 176, 176, 176, 176, 176, + 176, 176, 0, 0, 0, 0, 0, 0, + 0, 160, 160, 160, 160, 160, 160, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 0, 0, 0, 0, 32, + 0, 160, 160, 160, 160, 160, 160, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, - 32, 32, 32, 0, 0, 0, 0, 32, ++ 32, 32, 32, 0, 0, 0, 0, 0, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, + 32, 32, 32, 32, 32, 32, 32, 32, }; - YYDEBUG(798, *YYCURSOR); + YYDEBUG(790, *YYCURSOR); YYFILL(3); yych = *YYCURSOR; - if (yych <= '/') { + if (yych <= '0') { if (yych <= ' ') { if (yych <= '\f') { - if (yych <= 0x08) goto yy812; - if (yych <= '\n') goto yy808; - goto yy812; + if (yych <= 0x08) goto yy792; + if (yych <= '\n') goto yy794; } else { - if (yych <= '\r') goto yy808; - if (yych <= 0x1F) goto yy812; - goto yy808; + if (yych <= '\r') goto yy794; + if (yych >= ' ') goto yy794; } } else { if (yych <= '$') { - if (yych <= '"') goto yy807; - if (yych <= '#') goto yy808; - goto yy803; + if (yych <= '"') goto yy796; + if (yych <= '#') goto yy794; + goto yy798; } else { - if (yych == '\'') goto yy808; - if (yych <= '/') goto yy807; + if (yych == '\'') goto yy794; - goto yy796; ++ if (yych <= '/') goto yy796; ++ goto yy799; } } } else { - if (yych <= '\\') { - if (yych <= '@') { - if (yych <= '0') goto yy799; + if (yych <= ']') { + if (yych <= 'Z') { - if (yych <= '9') goto yy802; - if (yych <= '@') goto yy807; - goto yy810; + if (yych <= '9') goto yy801; - goto yy796; ++ if (yych <= '@') goto yy796; ++ goto yy803; } else { - if (yych <= '[') goto yy807; - if (yych <= '\\') goto yy808; - goto yy805; - if (yych <= 'Z') goto yy803; + if (yych <= '[') goto yy796; - goto yy794; ++ if (yych <= '\\') goto yy794; ++ goto yy806; } } else { - if (yych <= '_') { - if (yych <= ']') goto yy806; - if (yych <= '^') goto yy796; - goto yy803; + if (yych <= '`') { - if (yych == '_') goto yy810; - goto yy807; ++ if (yych == '_') goto yy803; ++ goto yy796; } else { - if (yych <= 'z') goto yy810; - if (yych <= '~') goto yy807; - if (yych <= 0x7F) goto yy812; - goto yy810; - if (yych <= '`') goto yy796; + if (yych <= 'z') goto yy803; + if (yych <= '~') goto yy796; - goto yy803; ++ if (yych >= 0x80) goto yy803; } } } - YYDEBUG(800, *YYCURSOR); - yyaccept = 0; + yy792: + YYDEBUG(792, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(793, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 2401 "Zend/zend_language_scanner.l" ++#line 2388 "Zend/zend_language_scanner.l" + { + if (YYCURSOR > YYLIMIT) { + RETURN_TOKEN(END); + } + + zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); + goto restart; + } -#line 7598 "Zend/zend_language_scanner.c" ++#line 7586 "Zend/zend_language_scanner.c" + yy794: + YYDEBUG(794, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(795, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1898 "Zend/zend_language_scanner.l" ++#line 1885 "Zend/zend_language_scanner.l" + { + /* Invalid rule to return a more explicit parse error with proper line number */ + yyless(0); + yy_pop_state(); + ZVAL_NULL(zendlval); + RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE); + } -#line 7612 "Zend/zend_language_scanner.c" ++#line 7600 "Zend/zend_language_scanner.c" + yy796: + YYDEBUG(796, *YYCURSOR); + ++YYCURSOR; + yy797: + YYDEBUG(797, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); -#line 1893 "Zend/zend_language_scanner.l" ++#line 1880 "Zend/zend_language_scanner.l" + { - /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ ++ /* Only '[' or '-' can be valid, but returning other tokens will allow a more explicit parse error */ + RETURN_TOKEN(yytext[0]); + } -#line 7624 "Zend/zend_language_scanner.c" ++#line 7612 "Zend/zend_language_scanner.c" + yy798: + YYDEBUG(798, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '_') { + if (yych <= '@') goto yy797; + if (yych <= 'Z') goto yy808; + if (yych <= '^') goto yy797; + goto yy808; + } else { + if (yych <= '`') goto yy797; + if (yych <= 'z') goto yy808; - if (yych <= '~') goto yy797; ++ if (yych <= 0x7F) goto yy797; + goto yy808; + } + yy799: + YYDEBUG(799, *YYCURSOR); yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'W') { if (yych <= '9') { @@@ -7379,16 -7646,16 +7634,16 @@@ } } else { if (yych <= 'b') { - if (yych <= 'X') goto yy823; - if (yych >= 'b') goto yy821; + if (yych <= 'X') goto yy816; + if (yych >= 'b') goto yy814; } else { - if (yych == 'x') goto yy823; + if (yych == 'x') goto yy816; } } - yy801: - YYDEBUG(801, *YYCURSOR); + yy800: + YYDEBUG(800, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1719 "Zend/zend_language_scanner.l" -#line 1733 "Zend/zend_language_scanner.l" ++#line 1720 "Zend/zend_language_scanner.l" { /* Offset could be treated as a long */ if (yyleng < MAX_LENGTH_OF_LONG - 1 || (yyleng == MAX_LENGTH_OF_LONG - 1 && strcmp(yytext, long_min_digits) < 0)) { char *end; @@@ -7404,47 -7671,45 +7659,45 @@@ string } RETURN_TOKEN(T_NUM_STRING); } - #line 7408 "Zend/zend_language_scanner.c" - yy802: -#line 7675 "Zend/zend_language_scanner.c" ++#line 7663 "Zend/zend_language_scanner.c" + yy801: + YYDEBUG(801, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(802, *YYCURSOR); - yych = *++YYCURSOR; - goto yy820; + if (yybm[0+yych] & 16) { + goto yy801; + } + goto yy800; yy803: YYDEBUG(803, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy804; - if (yych <= 'Z') goto yy816; - if (yych >= '_') goto yy816; - } else { - if (yych <= '`') goto yy804; - if (yych <= 'z') goto yy816; - if (yych >= 0x80) goto yy816; - } - yy804: + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(804, *YYCURSOR); + if (yybm[0+yych] & 32) { + goto yy803; + } + YYDEBUG(805, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1879 "Zend/zend_language_scanner.l" -#line 1906 "Zend/zend_language_scanner.l" ++#line 1893 "Zend/zend_language_scanner.l" { - /* Only '[' or '-' can be valid, but returning other tokens will allow a more explicit parse error */ - RETURN_TOKEN(yytext[0]); + zend_copy_value(zendlval, yytext, yyleng); + RETURN_TOKEN(T_STRING); } - #line 7433 "Zend/zend_language_scanner.c" - yy805: - YYDEBUG(805, *YYCURSOR); - ++YYCURSOR; -#line 7702 "Zend/zend_language_scanner.c" ++#line 7690 "Zend/zend_language_scanner.c" + yy806: YYDEBUG(806, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(807, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1874 "Zend/zend_language_scanner.l" -#line 1888 "Zend/zend_language_scanner.l" ++#line 1875 "Zend/zend_language_scanner.l" { yy_pop_state(); RETURN_TOKEN(']'); } - #line 7444 "Zend/zend_language_scanner.c" - yy807: - YYDEBUG(807, *YYCURSOR); - yych = *++YYCURSOR; - goto yy804; -#line 7713 "Zend/zend_language_scanner.c" ++#line 7701 "Zend/zend_language_scanner.c" yy808: YYDEBUG(808, *YYCURSOR); ++YYCURSOR; @@@ -7514,68 -7725,57 +7713,57 @@@ } } else { if (yych <= '`') { - if (yych <= '_') goto yy816; + if (yych <= '_') goto yy808; } else { - if (yych <= 'z') goto yy816; - if (yych >= 0x80) goto yy816; + if (yych <= 'z') goto yy808; - if (yych >= 0x7F) goto yy808; ++ if (yych >= 0x80) goto yy808; } } - yy818: - YYDEBUG(818, *YYCURSOR); + yy810: + YYDEBUG(810, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1869 "Zend/zend_language_scanner.l" -#line 1883 "Zend/zend_language_scanner.l" ++#line 1870 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); RETURN_TOKEN(T_VARIABLE); } - #line 7532 "Zend/zend_language_scanner.c" - yy819: - YYDEBUG(819, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - yy820: - YYDEBUG(820, *YYCURSOR); - if (yybm[0+yych] & 32) { - goto yy819; - } - goto yy801; - yy821: - YYDEBUG(821, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 128) { - goto yy829; - } - yy822: - YYDEBUG(822, *YYCURSOR); - YYCURSOR = YYMARKER; - goto yy801; - yy823: - YYDEBUG(823, *YYCURSOR); - yych = *++YYCURSOR; - if (yybm[0+yych] & 64) { - goto yy827; - } - goto yy822; - yy824: - YYDEBUG(824, *YYCURSOR); -#line 7743 "Zend/zend_language_scanner.c" ++#line 7731 "Zend/zend_language_scanner.c" + yy811: + YYDEBUG(811, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(825, *YYCURSOR); - if (yych <= '/') goto yy826; - if (yych <= '9') goto yy824; - yy826: - YYDEBUG(826, *YYCURSOR); + YYDEBUG(812, *YYCURSOR); + if (yych <= '/') goto yy813; + if (yych <= '9') goto yy811; + yy813: + YYDEBUG(813, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1735 "Zend/zend_language_scanner.l" -#line 1749 "Zend/zend_language_scanner.l" ++#line 1736 "Zend/zend_language_scanner.l" { /* Offset must be treated as a string */ ZVAL_STRINGL(zendlval, yytext, yyleng); RETURN_TOKEN(T_NUM_STRING); } - #line 7577 "Zend/zend_language_scanner.c" - yy827: - YYDEBUG(827, *YYCURSOR); -#line 7760 "Zend/zend_language_scanner.c" ++#line 7748 "Zend/zend_language_scanner.c" + yy814: + YYDEBUG(814, *YYCURSOR); + yych = *++YYCURSOR; + if (yybm[0+yych] & 64) { + goto yy817; + } + yy815: + YYDEBUG(815, *YYCURSOR); + YYCURSOR = YYMARKER; + goto yy800; + yy816: + YYDEBUG(816, *YYCURSOR); + yych = *++YYCURSOR; + if (yybm[0+yych] & 128) { + goto yy819; + } + goto yy815; + yy817: + YYDEBUG(817, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -7589,13 -7789,13 +7777,13 @@@ yy819 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(830, *YYCURSOR); + YYDEBUG(820, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy829; + goto yy819; } - goto yy826; + goto yy813; } } - #line 2396 "Zend/zend_language_scanner.l" -#line 2410 "Zend/zend_language_scanner.l" ++#line 2397 "Zend/zend_language_scanner.l" }