From: Nikita Popov Date: Mon, 20 Aug 2012 11:37:53 +0000 (+0200) Subject: Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport X-Git-Tag: php-5.5.0alpha1~20^2~24^2~24^2~11 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1823b16fa15894f72fc01724766289dbecf5a62a;p=php Merge remote-tracking branch 'php-src/master' into addGeneratorsSupport Merging master to fix Windows build Conflicts: Zend/zend_language_scanner.c Zend/zend_language_scanner_defs.h Zend/zend_vm_def.h --- 1823b16fa15894f72fc01724766289dbecf5a62a diff --cc Zend/zend_language_scanner.c index bcf1055ce7,b8b4ea95d8..07ccb5d751 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@@ -1,4 -1,4 +1,4 @@@ - /* Generated by re2c 0.13.5 on Mon Aug 13 16:40:42 2012 */ -/* Generated by re2c 0.13.5 on Sun Aug 19 20:57:55 2012 */ ++/* Generated by re2c 0.13.5 on Mon Aug 20 13:34:50 2012 */ #line 1 "Zend/zend_language_scanner.l" /* +----------------------------------------------------------------------+ @@@ -1097,7 -1099,7 +1099,7 @@@ yyc_INITIAL yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1799 "Zend/zend_language_scanner.l" -#line 1797 "Zend/zend_language_scanner.l" ++#line 1801 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@@ -1175,7 -1177,7 +1177,7 @@@ yy5 yy6: YYDEBUG(6, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1787 "Zend/zend_language_scanner.l" -#line 1785 "Zend/zend_language_scanner.l" ++#line 1789 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@@ -1194,7 -1196,7 +1196,7 @@@ yy7 if ((yych = *YYCURSOR) == '=') goto yy43; YYDEBUG(8, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1764 "Zend/zend_language_scanner.l" -#line 1762 "Zend/zend_language_scanner.l" ++#line 1766 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@@ -1392,7 -1394,7 +1394,7 @@@ yy35 ++YYCURSOR; YYDEBUG(38, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1724 "Zend/zend_language_scanner.l" -#line 1722 "Zend/zend_language_scanner.l" ++#line 1726 "Zend/zend_language_scanner.l" { YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1)); @@@ -1436,7 -1438,7 +1438,7 @@@ yy43 ++YYCURSOR; YYDEBUG(44, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1742 "Zend/zend_language_scanner.l" -#line 1740 "Zend/zend_language_scanner.l" ++#line 1744 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@@ -1454,7 -1456,7 +1456,7 @@@ yy45 ++YYCURSOR; YYDEBUG(46, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1755 "Zend/zend_language_scanner.l" -#line 1753 "Zend/zend_language_scanner.l" ++#line 1757 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@@ -1489,7 -1491,7 +1491,7 @@@ yy50 yy51: YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1777 "Zend/zend_language_scanner.l" -#line 1775 "Zend/zend_language_scanner.l" ++#line 1779 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@@ -1569,7 -1571,7 +1571,7 @@@ yyc_ST_BACKQUOTE yy56: YYDEBUG(56, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2250 "Zend/zend_language_scanner.l" -#line 2248 "Zend/zend_language_scanner.l" ++#line 2252 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@@ -1621,7 -1623,7 +1623,7 @@@ yy58 ++YYCURSOR; YYDEBUG(59, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2194 "Zend/zend_language_scanner.l" -#line 2192 "Zend/zend_language_scanner.l" ++#line 2196 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; @@@ -1636,7 -1638,7 +1638,7 @@@ yy61 ++YYCURSOR; YYDEBUG(62, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2181 "Zend/zend_language_scanner.l" -#line 2179 "Zend/zend_language_scanner.l" ++#line 2183 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@@ -1659,7 -1661,7 +1661,7 @@@ yy63 yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1881 "Zend/zend_language_scanner.l" -#line 1879 "Zend/zend_language_scanner.l" ++#line 1883 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@@ -1671,7 -1673,7 +1673,7 @@@ yy66 ++YYCURSOR; YYDEBUG(67, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1457 "Zend/zend_language_scanner.l" -#line 1455 "Zend/zend_language_scanner.l" ++#line 1459 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@@ -1690,7 -1692,7 +1692,7 @@@ yy70 ++YYCURSOR; YYDEBUG(71, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1873 "Zend/zend_language_scanner.l" -#line 1871 "Zend/zend_language_scanner.l" ++#line 1875 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@@ -1716,7 -1718,7 +1718,7 @@@ yy73 ++YYCURSOR; YYDEBUG(74, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1863 "Zend/zend_language_scanner.l" -#line 1861 "Zend/zend_language_scanner.l" ++#line 1865 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@@ -1792,7 -1794,7 +1794,7 @@@ yy77 yy78: YYDEBUG(78, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2200 "Zend/zend_language_scanner.l" -#line 2198 "Zend/zend_language_scanner.l" ++#line 2202 "Zend/zend_language_scanner.l" { if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; @@@ -1852,7 -1854,7 +1854,7 @@@ yy80 ++YYCURSOR; YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2189 "Zend/zend_language_scanner.l" -#line 2187 "Zend/zend_language_scanner.l" ++#line 2191 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; @@@ -1867,7 -1869,7 +1869,7 @@@ yy83 ++YYCURSOR; YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2181 "Zend/zend_language_scanner.l" -#line 2179 "Zend/zend_language_scanner.l" ++#line 2183 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@@ -1890,7 -1892,7 +1892,7 @@@ yy85 yy87: YYDEBUG(87, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1881 "Zend/zend_language_scanner.l" -#line 1879 "Zend/zend_language_scanner.l" ++#line 1883 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@@ -1902,7 -1904,7 +1904,7 @@@ yy88 ++YYCURSOR; YYDEBUG(89, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1457 "Zend/zend_language_scanner.l" -#line 1455 "Zend/zend_language_scanner.l" ++#line 1459 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@@ -1921,7 -1923,7 +1923,7 @@@ yy92 ++YYCURSOR; YYDEBUG(93, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1873 "Zend/zend_language_scanner.l" -#line 1871 "Zend/zend_language_scanner.l" ++#line 1875 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@@ -1947,7 -1949,7 +1949,7 @@@ yy95 ++YYCURSOR; YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1863 "Zend/zend_language_scanner.l" -#line 1861 "Zend/zend_language_scanner.l" ++#line 1865 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@@ -1966,15 -1968,16 +1968,16 @@@ yyc_ST_END_HEREDOC ++YYCURSOR; YYDEBUG(100, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2168 "Zend/zend_language_scanner.l" -#line 2165 "Zend/zend_language_scanner.l" ++#line 2169 "Zend/zend_language_scanner.l" { - YYCURSOR += CG(heredoc_len) - 1; - yyleng = CG(heredoc_len); + zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack)); + + YYCURSOR += heredoc_label->length - 1; + yyleng = heredoc_label->length; + + heredoc_label_dtor(heredoc_label); + efree(heredoc_label); - Z_STRVAL_P(zendlval) = CG(heredoc); - Z_STRLEN_P(zendlval) = CG(heredoc_len); - CG(heredoc) = NULL; - CG(heredoc_len) = 0; BEGIN(ST_IN_SCRIPTING); return T_END_HEREDOC; } @@@ -2040,7 -2043,7 +2043,7 @@@ yy103 yy104: YYDEBUG(104, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2292 "Zend/zend_language_scanner.l" -#line 2290 "Zend/zend_language_scanner.l" ++#line 2294 "Zend/zend_language_scanner.l" { int newline = 0; @@@ -2126,7 -2131,7 +2131,7 @@@ yy107 ++YYCURSOR; YYDEBUG(108, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2181 "Zend/zend_language_scanner.l" -#line 2179 "Zend/zend_language_scanner.l" ++#line 2183 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@@ -2149,7 -2154,7 +2154,7 @@@ yy109 yy111: YYDEBUG(111, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1881 "Zend/zend_language_scanner.l" -#line 1879 "Zend/zend_language_scanner.l" ++#line 1883 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@@ -2161,7 -2166,7 +2166,7 @@@ yy112 ++YYCURSOR; YYDEBUG(113, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1457 "Zend/zend_language_scanner.l" -#line 1455 "Zend/zend_language_scanner.l" ++#line 1459 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@@ -2180,7 -2185,7 +2185,7 @@@ yy116 ++YYCURSOR; YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1873 "Zend/zend_language_scanner.l" -#line 1871 "Zend/zend_language_scanner.l" ++#line 1875 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@@ -2206,7 -2211,7 +2211,7 @@@ yy119 ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1863 "Zend/zend_language_scanner.l" -#line 1861 "Zend/zend_language_scanner.l" ++#line 1865 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@@ -2397,13 -2400,13 +2402,13 @@@ yy123 yy124: YYDEBUG(124, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1904 "Zend/zend_language_scanner.l" -#line 1902 "Zend/zend_language_scanner.l" ++#line 1906 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } - #line 2407 "Zend/zend_language_scanner.c" -#line 2410 "Zend/zend_language_scanner.c" ++#line 2412 "Zend/zend_language_scanner.c" yy125: YYDEBUG(125, *YYCURSOR); yych = *++YYCURSOR; @@@ -2583,72 -2580,72 +2588,72 @@@ yy135 } } else { if (yych <= 'R') { - if (yych <= '<') goto yy525; - if (yych <= 'Q') goto yy186; - goto yy528; + if (yych <= '<') goto yy526; + if (yych <= 'Q') goto yy187; + goto yy529; } else { - if (yych == 'r') goto yy528; - goto yy186; + if (yych == 'r') goto yy529; + goto yy187; } } -yy135: - YYDEBUG(135, *YYCURSOR); +yy136: + YYDEBUG(136, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'L') goto yy515; - if (yych <= 'N') goto yy186; - goto yy516; + if (yych == 'L') goto yy516; + if (yych <= 'N') goto yy187; + goto yy517; } else { if (yych <= 'l') { - if (yych <= 'k') goto yy186; - goto yy515; + if (yych <= 'k') goto yy187; + goto yy516; } else { - if (yych == 'o') goto yy516; - goto yy186; + if (yych == 'o') goto yy517; + goto yy187; } } -yy136: - YYDEBUG(136, *YYCURSOR); +yy137: + YYDEBUG(137, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'U') { - if (yych == 'R') goto yy491; - if (yych <= 'T') goto yy186; - goto yy492; + if (yych == 'R') goto yy492; + if (yych <= 'T') goto yy187; + goto yy493; } else { if (yych <= 'r') { - if (yych <= 'q') goto yy186; - goto yy491; + if (yych <= 'q') goto yy187; + goto yy492; } else { - if (yych == 'u') goto yy492; - goto yy186; + if (yych == 'u') goto yy493; + goto yy187; } } -yy137: - YYDEBUG(137, *YYCURSOR); +yy138: + YYDEBUG(138, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '<') { - if (yych == '-') goto yy487; + if (yych == '-') goto yy488; } else { - if (yych <= '=') goto yy485; - if (yych <= '>') goto yy489; + if (yych <= '=') goto yy486; + if (yych <= '>') goto yy490; } -yy138: - YYDEBUG(138, *YYCURSOR); +yy139: + YYDEBUG(139, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1446 "Zend/zend_language_scanner.l" -#line 1444 "Zend/zend_language_scanner.l" ++#line 1448 "Zend/zend_language_scanner.l" { return yytext[0]; } - #line 2643 "Zend/zend_language_scanner.c" -#line 2640 "Zend/zend_language_scanner.c" -yy139: - YYDEBUG(139, *YYCURSOR); - ++YYCURSOR; - yych = *YYCURSOR; - goto yy484; ++#line 2648 "Zend/zend_language_scanner.c" yy140: YYDEBUG(140, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy485; +yy141: + YYDEBUG(141, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1177 "Zend/zend_language_scanner.l" -#line 1175 "Zend/zend_language_scanner.l" ++#line 1179 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@@ -2656,46 -2653,46 +2661,46 @@@ HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } - #line 2660 "Zend/zend_language_scanner.c" -#line 2657 "Zend/zend_language_scanner.c" -yy141: - YYDEBUG(141, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == ':') goto yy481; - goto yy138; ++#line 2665 "Zend/zend_language_scanner.c" yy142: YYDEBUG(142, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == ':') goto yy482; + goto yy139; +yy143: YYDEBUG(143, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(144, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1206 "Zend/zend_language_scanner.l" -#line 1204 "Zend/zend_language_scanner.l" ++#line 1208 "Zend/zend_language_scanner.l" { return T_NS_SEPARATOR; } - #line 2675 "Zend/zend_language_scanner.c" -#line 2672 "Zend/zend_language_scanner.c" -yy144: - YYDEBUG(144, *YYCURSOR); ++#line 2680 "Zend/zend_language_scanner.c" +yy145: + YYDEBUG(145, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'E') { - if (yych == 'A') goto yy469; - if (yych <= 'D') goto yy186; - goto yy470; + if (yych == 'A') goto yy470; + if (yych <= 'D') goto yy187; + goto yy471; } else { if (yych <= 'a') { - if (yych <= '`') goto yy186; - goto yy469; + if (yych <= '`') goto yy187; + goto yy470; } else { - if (yych == 'e') goto yy470; - goto yy186; + if (yych == 'e') goto yy471; + goto yy187; } } -yy145: - YYDEBUG(145, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy466; - if (yych == 'a') goto yy466; - goto yy186; yy146: YYDEBUG(146, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'A') goto yy467; + if (yych == 'a') goto yy467; + goto yy187; +yy147: + YYDEBUG(147, *YYCURSOR); yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'S') { @@@ -2888,29 -2889,25 +2893,29 @@@ yy165 yy166: YYDEBUG(166, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '>') goto yy205; - goto yy138; + goto yy139; yy167: YYDEBUG(167, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '>') goto yy206; + goto yy139; +yy168: YYDEBUG(168, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(169, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1451 "Zend/zend_language_scanner.l" -#line 1449 "Zend/zend_language_scanner.l" ++#line 1453 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } - #line 2908 "Zend/zend_language_scanner.c" -#line 2905 "Zend/zend_language_scanner.c" -yy169: - YYDEBUG(169, *YYCURSOR); - ++YYCURSOR; ++#line 2913 "Zend/zend_language_scanner.c" +yy170: YYDEBUG(170, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(171, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1463 "Zend/zend_language_scanner.l" -#line 1461 "Zend/zend_language_scanner.l" ++#line 1465 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); if (!zend_stack_is_empty(&SCNG(state_stack))) { @@@ -2918,9 -2915,9 +2923,9 @@@ } return '}'; } - #line 2922 "Zend/zend_language_scanner.c" -#line 2919 "Zend/zend_language_scanner.c" -yy171: - YYDEBUG(171, *YYCURSOR); ++#line 2927 "Zend/zend_language_scanner.c" +yy172: + YYDEBUG(172, *YYCURSOR); yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'E') { @@@ -2943,10 -2940,10 +2948,10 @@@ } } } -yy172: - YYDEBUG(172, *YYCURSOR); +yy173: + YYDEBUG(173, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1514 "Zend/zend_language_scanner.l" -#line 1512 "Zend/zend_language_scanner.l" ++#line 1516 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ zendlval->value.lval = strtol(yytext, NULL, 0); @@@ -2967,35 -2964,35 +2972,35 @@@ zendlval->type = IS_LONG; return T_LNUMBER; } - #line 2971 "Zend/zend_language_scanner.c" -#line 2968 "Zend/zend_language_scanner.c" -yy173: - YYDEBUG(173, *YYCURSOR); ++#line 2976 "Zend/zend_language_scanner.c" +yy174: + YYDEBUG(174, *YYCURSOR); yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '9') { - if (yych == '.') goto yy187; - if (yych <= '/') goto yy172; - goto yy190; + if (yych == '.') goto yy188; + if (yych <= '/') goto yy173; + goto yy191; } else { if (yych <= 'E') { - if (yych <= 'D') goto yy172; - goto yy192; + if (yych <= 'D') goto yy173; + goto yy193; } else { - if (yych == 'e') goto yy192; - goto yy172; + if (yych == 'e') goto yy193; + goto yy173; } } -yy174: - YYDEBUG(174, *YYCURSOR); - yych = *++YYCURSOR; - goto yy186; yy175: YYDEBUG(175, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + goto yy187; yy176: YYDEBUG(176, *YYCURSOR); + ++YYCURSOR; +yy177: + YYDEBUG(177, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1911 "Zend/zend_language_scanner.l" -#line 1909 "Zend/zend_language_scanner.l" ++#line 1913 "Zend/zend_language_scanner.l" { while (YYCURSOR < YYLIMIT) { switch (*YYCURSOR++) { @@@ -3029,14 -3026,14 +3034,14 @@@ return T_COMMENT; } - #line 3033 "Zend/zend_language_scanner.c" -#line 3030 "Zend/zend_language_scanner.c" -yy177: - YYDEBUG(177, *YYCURSOR); - ++YYCURSOR; ++#line 3038 "Zend/zend_language_scanner.c" yy178: YYDEBUG(178, *YYCURSOR); + ++YYCURSOR; +yy179: + YYDEBUG(179, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2002 "Zend/zend_language_scanner.l" -#line 2000 "Zend/zend_language_scanner.l" ++#line 2004 "Zend/zend_language_scanner.l" { register char *s, *t; char *end; @@@ -3104,14 -3101,14 +3109,14 @@@ } return T_CONSTANT_ENCAPSED_STRING; } - #line 3108 "Zend/zend_language_scanner.c" -#line 3105 "Zend/zend_language_scanner.c" -yy179: - YYDEBUG(179, *YYCURSOR); - ++YYCURSOR; ++#line 3113 "Zend/zend_language_scanner.c" yy180: YYDEBUG(180, *YYCURSOR); + ++YYCURSOR; +yy181: + YYDEBUG(181, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2071 "Zend/zend_language_scanner.l" -#line 2069 "Zend/zend_language_scanner.l" ++#line 2073 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '"') ? 1 : 0; @@@ -3152,24 -3149,24 +3157,24 @@@ BEGIN(ST_DOUBLE_QUOTES); return '"'; } - #line 3156 "Zend/zend_language_scanner.c" -#line 3153 "Zend/zend_language_scanner.c" -yy181: - YYDEBUG(181, *YYCURSOR); - ++YYCURSOR; ++#line 3161 "Zend/zend_language_scanner.c" +yy182: YYDEBUG(182, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2162 "Zend/zend_language_scanner.l" -#line 2159 "Zend/zend_language_scanner.l" ++#line 2163 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } - #line 3167 "Zend/zend_language_scanner.c" -#line 3164 "Zend/zend_language_scanner.c" -yy183: - YYDEBUG(183, *YYCURSOR); - ++YYCURSOR; ++#line 3172 "Zend/zend_language_scanner.c" +yy184: YYDEBUG(184, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(185, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2420 "Zend/zend_language_scanner.l" -#line 2422 "Zend/zend_language_scanner.l" ++#line 2426 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@@ -3178,9 -3175,9 +3183,9 @@@ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } - #line 3182 "Zend/zend_language_scanner.c" -#line 3179 "Zend/zend_language_scanner.c" -yy185: - YYDEBUG(185, *YYCURSOR); ++#line 3187 "Zend/zend_language_scanner.c" +yy186: + YYDEBUG(186, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -3196,24 -3193,24 +3201,24 @@@ yy188 YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(188, *YYCURSOR); + YYDEBUG(189, *YYCURSOR); if (yybm[0+yych] & 8) { - goto yy187; + goto yy188; } - if (yych == 'E') goto yy192; - if (yych == 'e') goto yy192; -yy189: - YYDEBUG(189, *YYCURSOR); + if (yych == 'E') goto yy193; + if (yych == 'e') goto yy193; +yy190: + YYDEBUG(190, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1579 "Zend/zend_language_scanner.l" -#line 1577 "Zend/zend_language_scanner.l" ++#line 1581 "Zend/zend_language_scanner.l" { zendlval->value.dval = zend_strtod(yytext, NULL); zendlval->type = IS_DOUBLE; return T_DNUMBER; } - #line 3215 "Zend/zend_language_scanner.c" -#line 3212 "Zend/zend_language_scanner.c" -yy190: - YYDEBUG(190, *YYCURSOR); ++#line 3220 "Zend/zend_language_scanner.c" +yy191: + YYDEBUG(191, *YYCURSOR); yyaccept = 2; YYMARKER = ++YYCURSOR; YYFILL(3); @@@ -3297,13 -3294,13 +3302,13 @@@ yy200 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(200, *YYCURSOR); + YYDEBUG(201, *YYCURSOR); if (yybm[0+yych] & 16) { - goto yy199; + goto yy200; } - YYDEBUG(201, *YYCURSOR); + YYDEBUG(202, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1489 "Zend/zend_language_scanner.l" -#line 1487 "Zend/zend_language_scanner.l" ++#line 1491 "Zend/zend_language_scanner.l" { char *bin = yytext + 2; /* Skip "0b" */ int len = yyleng - 2; @@@ -3328,19 -3325,19 +3333,19 @@@ return T_DNUMBER; } } - #line 3332 "Zend/zend_language_scanner.c" -#line 3329 "Zend/zend_language_scanner.c" -yy202: - YYDEBUG(202, *YYCURSOR); ++#line 3337 "Zend/zend_language_scanner.c" +yy203: + YYDEBUG(203, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(203, *YYCURSOR); + YYDEBUG(204, *YYCURSOR); if (yybm[0+yych] & 32) { - goto yy202; + goto yy203; } - YYDEBUG(204, *YYCURSOR); + YYDEBUG(205, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1535 "Zend/zend_language_scanner.l" -#line 1533 "Zend/zend_language_scanner.l" ++#line 1537 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@@ -3365,16 -3362,16 +3370,16 @@@ return T_DNUMBER; } } - #line 3369 "Zend/zend_language_scanner.c" -#line 3366 "Zend/zend_language_scanner.c" -yy205: - YYDEBUG(205, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy207; - if (yych == '\r') goto yy208; ++#line 3374 "Zend/zend_language_scanner.c" yy206: YYDEBUG(206, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy208; + if (yych == '\r') goto yy209; +yy207: + YYDEBUG(207, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1979 "Zend/zend_language_scanner.l" -#line 1977 "Zend/zend_language_scanner.l" ++#line 1981 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@@ -3382,7 -3379,11 +3387,7 @@@ BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } - #line 3386 "Zend/zend_language_scanner.c" -#line 3383 "Zend/zend_language_scanner.c" -yy207: - YYDEBUG(207, *YYCURSOR); - yych = *++YYCURSOR; - goto yy206; ++#line 3391 "Zend/zend_language_scanner.c" yy208: YYDEBUG(208, *YYCURSOR); yych = *++YYCURSOR; @@@ -3407,112 -3404,112 +3412,112 @@@ yy210 } } else { if (yych <= '`') { - if (yych <= '_') goto yy209; + if (yych <= '_') goto yy210; } else { - if (yych <= 'z') goto yy209; - if (yych >= 0x7F) goto yy209; + if (yych <= 'z') goto yy210; + if (yych >= 0x7F) goto yy210; } } -yy211: - YYDEBUG(211, *YYCURSOR); +yy212: + YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1881 "Zend/zend_language_scanner.l" -#line 1879 "Zend/zend_language_scanner.l" ++#line 1883 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } - #line 3426 "Zend/zend_language_scanner.c" -#line 3423 "Zend/zend_language_scanner.c" -yy212: - YYDEBUG(212, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy213; - if (yych != 'r') goto yy186; ++#line 3431 "Zend/zend_language_scanner.c" yy213: YYDEBUG(213, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy214; + if (yych != 'r') goto yy187; +yy214: + YYDEBUG(214, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(214, *YYCURSOR); + YYDEBUG(215, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1434 "Zend/zend_language_scanner.l" -#line 1432 "Zend/zend_language_scanner.l" ++#line 1436 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } - #line 3444 "Zend/zend_language_scanner.c" -#line 3441 "Zend/zend_language_scanner.c" -yy215: - YYDEBUG(215, *YYCURSOR); ++#line 3449 "Zend/zend_language_scanner.c" +yy216: + YYDEBUG(216, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(216, *YYCURSOR); + YYDEBUG(217, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1426 "Zend/zend_language_scanner.l" -#line 1424 "Zend/zend_language_scanner.l" ++#line 1428 "Zend/zend_language_scanner.l" { return T_LOGICAL_OR; } - #line 3457 "Zend/zend_language_scanner.c" -#line 3454 "Zend/zend_language_scanner.c" -yy217: - YYDEBUG(217, *YYCURSOR); - ++YYCURSOR; ++#line 3462 "Zend/zend_language_scanner.c" +yy218: YYDEBUG(218, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1414 "Zend/zend_language_scanner.l" -#line 1412 "Zend/zend_language_scanner.l" ++#line 1416 "Zend/zend_language_scanner.l" { return T_XOR_EQUAL; } - #line 3467 "Zend/zend_language_scanner.c" -#line 3464 "Zend/zend_language_scanner.c" -yy219: - YYDEBUG(219, *YYCURSOR); - ++YYCURSOR; ++#line 3472 "Zend/zend_language_scanner.c" +yy220: YYDEBUG(220, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(221, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1418 "Zend/zend_language_scanner.l" -#line 1416 "Zend/zend_language_scanner.l" ++#line 1420 "Zend/zend_language_scanner.l" { return T_BOOLEAN_OR; } - #line 3477 "Zend/zend_language_scanner.c" -#line 3474 "Zend/zend_language_scanner.c" -yy221: - YYDEBUG(221, *YYCURSOR); - ++YYCURSOR; ++#line 3482 "Zend/zend_language_scanner.c" +yy222: YYDEBUG(222, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(223, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1410 "Zend/zend_language_scanner.l" -#line 1408 "Zend/zend_language_scanner.l" ++#line 1412 "Zend/zend_language_scanner.l" { return T_OR_EQUAL; } - #line 3487 "Zend/zend_language_scanner.c" -#line 3484 "Zend/zend_language_scanner.c" -yy223: - YYDEBUG(223, *YYCURSOR); - ++YYCURSOR; ++#line 3492 "Zend/zend_language_scanner.c" +yy224: YYDEBUG(224, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(225, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1422 "Zend/zend_language_scanner.l" -#line 1420 "Zend/zend_language_scanner.l" ++#line 1424 "Zend/zend_language_scanner.l" { return T_BOOLEAN_AND; } - #line 3497 "Zend/zend_language_scanner.c" -#line 3494 "Zend/zend_language_scanner.c" -yy225: - YYDEBUG(225, *YYCURSOR); - ++YYCURSOR; ++#line 3502 "Zend/zend_language_scanner.c" +yy226: YYDEBUG(226, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(227, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1406 "Zend/zend_language_scanner.l" -#line 1404 "Zend/zend_language_scanner.l" ++#line 1408 "Zend/zend_language_scanner.l" { return T_AND_EQUAL; } - #line 3507 "Zend/zend_language_scanner.c" -#line 3504 "Zend/zend_language_scanner.c" -yy227: - YYDEBUG(227, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy231; - if (yych == '\r') goto yy232; ++#line 3512 "Zend/zend_language_scanner.c" yy228: YYDEBUG(228, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy232; + if (yych == '\r') goto yy233; +yy229: + YYDEBUG(229, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1988 "Zend/zend_language_scanner.l" -#line 1986 "Zend/zend_language_scanner.l" ++#line 1990 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { BEGIN(INITIAL); @@@ -3525,17 -3522,21 +3530,17 @@@ return yytext[0]; } } - #line 3529 "Zend/zend_language_scanner.c" -#line 3526 "Zend/zend_language_scanner.c" -yy229: - YYDEBUG(229, *YYCURSOR); - ++YYCURSOR; ++#line 3534 "Zend/zend_language_scanner.c" +yy230: YYDEBUG(230, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(231, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1394 "Zend/zend_language_scanner.l" -#line 1392 "Zend/zend_language_scanner.l" ++#line 1396 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } - #line 3539 "Zend/zend_language_scanner.c" -#line 3536 "Zend/zend_language_scanner.c" -yy231: - YYDEBUG(231, *YYCURSOR); - yych = *++YYCURSOR; - goto yy228; ++#line 3544 "Zend/zend_language_scanner.c" yy232: YYDEBUG(232, *YYCURSOR); yych = *++YYCURSOR; @@@ -3551,35 -3548,35 +3556,35 @@@ yy234 YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(234, *YYCURSOR); + YYDEBUG(235, *YYCURSOR); if (yych <= 'D') { - if (yych <= '/') goto yy189; - if (yych <= '9') goto yy233; - goto yy189; + if (yych <= '/') goto yy190; + if (yych <= '9') goto yy234; + goto yy190; } else { - if (yych <= 'E') goto yy192; - if (yych == 'e') goto yy192; - goto yy189; + if (yych <= 'E') goto yy193; + if (yych == 'e') goto yy193; + goto yy190; } -yy235: - YYDEBUG(235, *YYCURSOR); - ++YYCURSOR; +yy236: YYDEBUG(236, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(237, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1390 "Zend/zend_language_scanner.l" -#line 1388 "Zend/zend_language_scanner.l" ++#line 1392 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } - #line 3574 "Zend/zend_language_scanner.c" -#line 3571 "Zend/zend_language_scanner.c" -yy237: - YYDEBUG(237, *YYCURSOR); - yyaccept = 4; - yych = *(YYMARKER = ++YYCURSOR); - if (yych == '*') goto yy242; ++#line 3579 "Zend/zend_language_scanner.c" yy238: YYDEBUG(238, *YYCURSOR); + yyaccept = 4; + yych = *(YYMARKER = ++YYCURSOR); + if (yych == '*') goto yy243; +yy239: + YYDEBUG(239, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1945 "Zend/zend_language_scanner.l" -#line 1943 "Zend/zend_language_scanner.l" ++#line 1947 "Zend/zend_language_scanner.l" { int doc_com; @@@ -3613,121 -3610,126 +3618,121 @@@ return T_COMMENT; } - #line 3617 "Zend/zend_language_scanner.c" -#line 3614 "Zend/zend_language_scanner.c" -yy239: - YYDEBUG(239, *YYCURSOR); - yych = *++YYCURSOR; - goto yy176; ++#line 3622 "Zend/zend_language_scanner.c" yy240: YYDEBUG(240, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + goto yy177; +yy241: YYDEBUG(241, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(242, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1386 "Zend/zend_language_scanner.l" -#line 1384 "Zend/zend_language_scanner.l" ++#line 1388 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } - #line 3631 "Zend/zend_language_scanner.c" -#line 3628 "Zend/zend_language_scanner.c" -yy242: - YYDEBUG(242, *YYCURSOR); ++#line 3636 "Zend/zend_language_scanner.c" +yy243: + YYDEBUG(243, *YYCURSOR); yych = *++YYCURSOR; if (yybm[0+yych] & 64) { - goto yy243; + goto yy244; } - goto yy193; -yy243: - YYDEBUG(243, *YYCURSOR); + goto yy194; +yy244: + YYDEBUG(244, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(244, *YYCURSOR); + YYDEBUG(245, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy243; + goto yy244; } - goto yy238; -yy245: - YYDEBUG(245, *YYCURSOR); - ++YYCURSOR; + goto yy239; +yy246: YYDEBUG(246, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(247, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1382 "Zend/zend_language_scanner.l" -#line 1380 "Zend/zend_language_scanner.l" ++#line 1384 "Zend/zend_language_scanner.l" { return T_MUL_EQUAL; } - #line 3658 "Zend/zend_language_scanner.c" -#line 3655 "Zend/zend_language_scanner.c" -yy247: - YYDEBUG(247, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy251; ++#line 3663 "Zend/zend_language_scanner.c" +yy248: YYDEBUG(248, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy252; + YYDEBUG(249, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1442 "Zend/zend_language_scanner.l" -#line 1440 "Zend/zend_language_scanner.l" ++#line 1444 "Zend/zend_language_scanner.l" { return T_SR; } - #line 3669 "Zend/zend_language_scanner.c" -#line 3666 "Zend/zend_language_scanner.c" -yy249: - YYDEBUG(249, *YYCURSOR); - ++YYCURSOR; ++#line 3674 "Zend/zend_language_scanner.c" +yy250: YYDEBUG(250, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(251, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1370 "Zend/zend_language_scanner.l" -#line 1368 "Zend/zend_language_scanner.l" ++#line 1372 "Zend/zend_language_scanner.l" { return T_IS_GREATER_OR_EQUAL; } - #line 3679 "Zend/zend_language_scanner.c" -#line 3676 "Zend/zend_language_scanner.c" -yy251: - YYDEBUG(251, *YYCURSOR); - ++YYCURSOR; ++#line 3684 "Zend/zend_language_scanner.c" +yy252: YYDEBUG(252, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(253, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1402 "Zend/zend_language_scanner.l" -#line 1400 "Zend/zend_language_scanner.l" ++#line 1404 "Zend/zend_language_scanner.l" { return T_SR_EQUAL; } - #line 3689 "Zend/zend_language_scanner.c" -#line 3686 "Zend/zend_language_scanner.c" -yy253: - YYDEBUG(253, *YYCURSOR); - yyaccept = 5; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') goto yy254; - if (yych <= '<') goto yy269; - if (yych <= '=') goto yy267; ++#line 3694 "Zend/zend_language_scanner.c" yy254: YYDEBUG(254, *YYCURSOR); + yyaccept = 5; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= ';') goto yy255; + if (yych <= '<') goto yy270; + if (yych <= '=') goto yy268; +yy255: + YYDEBUG(255, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1438 "Zend/zend_language_scanner.l" -#line 1436 "Zend/zend_language_scanner.l" ++#line 1440 "Zend/zend_language_scanner.l" { return T_SL; } - #line 3704 "Zend/zend_language_scanner.c" -#line 3701 "Zend/zend_language_scanner.c" -yy255: - YYDEBUG(255, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy260; - if (yych == 's') goto yy260; - goto yy193; ++#line 3709 "Zend/zend_language_scanner.c" yy256: YYDEBUG(256, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == 'S') goto yy261; + if (yych == 's') goto yy261; + goto yy194; +yy257: YYDEBUG(257, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(258, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1366 "Zend/zend_language_scanner.l" -#line 1364 "Zend/zend_language_scanner.l" ++#line 1368 "Zend/zend_language_scanner.l" { return T_IS_SMALLER_OR_EQUAL; } - #line 3720 "Zend/zend_language_scanner.c" -#line 3717 "Zend/zend_language_scanner.c" -yy258: - YYDEBUG(258, *YYCURSOR); - ++YYCURSOR; ++#line 3725 "Zend/zend_language_scanner.c" yy259: YYDEBUG(259, *YYCURSOR); + ++YYCURSOR; +yy260: + YYDEBUG(260, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1362 "Zend/zend_language_scanner.l" -#line 1360 "Zend/zend_language_scanner.l" ++#line 1364 "Zend/zend_language_scanner.l" { return T_IS_NOT_EQUAL; } - #line 3731 "Zend/zend_language_scanner.c" -#line 3728 "Zend/zend_language_scanner.c" -yy260: - YYDEBUG(260, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy261; - if (yych != 'c') goto yy193; ++#line 3736 "Zend/zend_language_scanner.c" yy261: YYDEBUG(261, *YYCURSOR); yych = *++YYCURSOR; @@@ -3758,33 -3755,33 +3763,33 @@@ yy266 ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(266, *YYCURSOR); + YYDEBUG(267, *YYCURSOR); if (yych <= '\r') { - if (yych <= 0x08) goto yy193; - if (yych <= '\n') goto yy265; - if (yych <= '\f') goto yy193; - goto yy265; + if (yych <= 0x08) goto yy194; + if (yych <= '\n') goto yy266; + if (yych <= '\f') goto yy194; + goto yy266; } else { if (yych <= ' ') { - if (yych <= 0x1F) goto yy193; - goto yy265; + if (yych <= 0x1F) goto yy194; + goto yy266; } else { - if (yych == '>') goto yy205; - goto yy193; + if (yych == '>') goto yy206; + goto yy194; } } -yy267: - YYDEBUG(267, *YYCURSOR); - ++YYCURSOR; +yy268: YYDEBUG(268, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(269, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1398 "Zend/zend_language_scanner.l" -#line 1396 "Zend/zend_language_scanner.l" ++#line 1400 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } - #line 3786 "Zend/zend_language_scanner.c" -#line 3783 "Zend/zend_language_scanner.c" -yy269: - YYDEBUG(269, *YYCURSOR); ++#line 3791 "Zend/zend_language_scanner.c" +yy270: + YYDEBUG(270, *YYCURSOR); ++YYCURSOR; YYFILL(2); yych = *YYCURSOR; @@@ -3867,27 -3864,27 +3872,27 @@@ yy277 } } else { if (yych <= '`') { - if (yych == '_') goto yy275; - goto yy193; + if (yych == '_') goto yy276; + goto yy194; } else { - if (yych <= 'z') goto yy275; - if (yych <= '~') goto yy193; - goto yy275; + if (yych <= 'z') goto yy276; + if (yych <= '~') goto yy194; + goto yy276; } } -yy277: - YYDEBUG(277, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy278; - if (yych == '\r') goto yy280; - goto yy193; yy278: YYDEBUG(278, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych == '\n') goto yy279; + if (yych == '\r') goto yy281; + goto yy194; yy279: YYDEBUG(279, *YYCURSOR); + ++YYCURSOR; +yy280: + YYDEBUG(280, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2113 "Zend/zend_language_scanner.l" -#line 2111 "Zend/zend_language_scanner.l" ++#line 2115 "Zend/zend_language_scanner.l" { char *s; int bprefix = (yytext[0] != '<') ? 1 : 0; @@@ -3933,16 -3927,18 +3935,18 @@@ } } + zend_ptr_stack_push(&SCNG(heredoc_label_stack), (void *) heredoc_label); + return T_START_HEREDOC; } - #line 3939 "Zend/zend_language_scanner.c" -#line 3935 "Zend/zend_language_scanner.c" -yy280: - YYDEBUG(280, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy278; - goto yy279; ++#line 3943 "Zend/zend_language_scanner.c" yy281: YYDEBUG(281, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '\n') goto yy279; + goto yy280; +yy282: + YYDEBUG(282, *YYCURSOR); ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; @@@ -3959,103 -3955,103 +3963,103 @@@ yy283 } } else { if (yych <= '`') { - if (yych == '_') goto yy281; - goto yy193; + if (yych == '_') goto yy282; + goto yy194; } else { - if (yych <= 'z') goto yy281; - if (yych <= '~') goto yy193; - goto yy281; + if (yych <= 'z') goto yy282; + if (yych <= '~') goto yy194; + goto yy282; } } -yy283: - YYDEBUG(283, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '=') goto yy259; +yy284: YYDEBUG(284, *YYCURSOR); - ++YYCURSOR; + yych = *++YYCURSOR; + if (yych != '=') goto yy260; YYDEBUG(285, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(286, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1354 "Zend/zend_language_scanner.l" -#line 1352 "Zend/zend_language_scanner.l" ++#line 1356 "Zend/zend_language_scanner.l" { return T_IS_NOT_IDENTICAL; } - #line 3983 "Zend/zend_language_scanner.c" -#line 3979 "Zend/zend_language_scanner.c" -yy286: - YYDEBUG(286, *YYCURSOR); - ++YYCURSOR; ++#line 3987 "Zend/zend_language_scanner.c" +yy287: YYDEBUG(287, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(288, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1374 "Zend/zend_language_scanner.l" -#line 1372 "Zend/zend_language_scanner.l" ++#line 1376 "Zend/zend_language_scanner.l" { return T_PLUS_EQUAL; } - #line 3993 "Zend/zend_language_scanner.c" -#line 3989 "Zend/zend_language_scanner.c" -yy288: - YYDEBUG(288, *YYCURSOR); - ++YYCURSOR; ++#line 3997 "Zend/zend_language_scanner.c" +yy289: YYDEBUG(289, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(290, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1342 "Zend/zend_language_scanner.l" -#line 1340 "Zend/zend_language_scanner.l" ++#line 1344 "Zend/zend_language_scanner.l" { return T_INC; } - #line 4003 "Zend/zend_language_scanner.c" -#line 3999 "Zend/zend_language_scanner.c" -yy290: - YYDEBUG(290, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy291; - if (yych != 's') goto yy186; ++#line 4007 "Zend/zend_language_scanner.c" yy291: YYDEBUG(291, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy292; - if (yych != 't') goto yy186; + if (yych == 'S') goto yy292; + if (yych != 's') goto yy187; yy292: YYDEBUG(292, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy293; + if (yych != 't') goto yy187; +yy293: + YYDEBUG(293, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(293, *YYCURSOR); + YYDEBUG(294, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1330 "Zend/zend_language_scanner.l" -#line 1328 "Zend/zend_language_scanner.l" ++#line 1332 "Zend/zend_language_scanner.l" { return T_LIST; } - #line 4026 "Zend/zend_language_scanner.c" -#line 4022 "Zend/zend_language_scanner.c" -yy294: - YYDEBUG(294, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy298; ++#line 4030 "Zend/zend_language_scanner.c" +yy295: YYDEBUG(295, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy299; + YYDEBUG(296, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1358 "Zend/zend_language_scanner.l" -#line 1356 "Zend/zend_language_scanner.l" ++#line 1360 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } - #line 4037 "Zend/zend_language_scanner.c" -#line 4033 "Zend/zend_language_scanner.c" -yy296: - YYDEBUG(296, *YYCURSOR); - ++YYCURSOR; ++#line 4041 "Zend/zend_language_scanner.c" +yy297: YYDEBUG(297, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(298, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1326 "Zend/zend_language_scanner.l" -#line 1324 "Zend/zend_language_scanner.l" ++#line 1328 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } - #line 4047 "Zend/zend_language_scanner.c" -#line 4043 "Zend/zend_language_scanner.c" -yy298: - YYDEBUG(298, *YYCURSOR); - ++YYCURSOR; ++#line 4051 "Zend/zend_language_scanner.c" +yy299: YYDEBUG(299, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(300, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1350 "Zend/zend_language_scanner.l" -#line 1348 "Zend/zend_language_scanner.l" ++#line 1352 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } - #line 4057 "Zend/zend_language_scanner.c" -#line 4053 "Zend/zend_language_scanner.c" -yy300: - YYDEBUG(300, *YYCURSOR); ++#line 4061 "Zend/zend_language_scanner.c" +yy301: + YYDEBUG(301, *YYCURSOR); yych = *++YYCURSOR; YYDEBUG(-1, yych); switch (yych) { @@@ -4167,23 -4168,18 +4171,23 @@@ yy315 yy316: YYDEBUG(316, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'E') goto yy317; + if (yych != 'e') goto yy187; +yy317: YYDEBUG(317, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(318, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(319, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(319, *YYCURSOR); + YYDEBUG(320, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1714 "Zend/zend_language_scanner.l" -#line 1712 "Zend/zend_language_scanner.l" ++#line 1716 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@@ -4193,27 -4189,27 +4197,27 @@@ } return T_NS_C; } - #line 4197 "Zend/zend_language_scanner.c" -#line 4193 "Zend/zend_language_scanner.c" -yy320: - YYDEBUG(320, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy321; - if (yych != 'r') goto yy186; ++#line 4201 "Zend/zend_language_scanner.c" yy321: YYDEBUG(321, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'R') goto yy322; + if (yych != 'r') goto yy187; +yy322: YYDEBUG(322, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(323, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(324, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(324, *YYCURSOR); + YYDEBUG(325, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1687 "Zend/zend_language_scanner.l" -#line 1685 "Zend/zend_language_scanner.l" ++#line 1689 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@@ -4240,7 -4236,12 +4244,7 @@@ zendlval->type = IS_STRING; return T_DIR; } - #line 4244 "Zend/zend_language_scanner.c" -#line 4240 "Zend/zend_language_scanner.c" -yy325: - YYDEBUG(325, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy326; - if (yych != 'n') goto yy186; ++#line 4248 "Zend/zend_language_scanner.c" yy326: YYDEBUG(326, *YYCURSOR); yych = *++YYCURSOR; @@@ -4249,29 -4250,29 +4253,29 @@@ yy327: YYDEBUG(327, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'E') goto yy328; + if (yych != 'e') goto yy187; +yy328: YYDEBUG(328, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(329, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(330, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(330, *YYCURSOR); + YYDEBUG(331, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1669 "Zend/zend_language_scanner.l" -#line 1667 "Zend/zend_language_scanner.l" ++#line 1671 "Zend/zend_language_scanner.l" { zendlval->value.lval = CG(zend_lineno); zendlval->type = IS_LONG; return T_LINE; } - #line 4275 "Zend/zend_language_scanner.c" -#line 4271 "Zend/zend_language_scanner.c" -yy331: - YYDEBUG(331, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy332; - if (yych != 't') goto yy186; ++#line 4279 "Zend/zend_language_scanner.c" yy332: YYDEBUG(332, *YYCURSOR); yych = *++YYCURSOR; @@@ -4290,23 -4291,18 +4294,23 @@@ yy334 yy335: YYDEBUG(335, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'D') goto yy336; + if (yych != 'd') goto yy187; +yy336: YYDEBUG(336, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(337, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(338, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(338, *YYCURSOR); + YYDEBUG(339, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1648 "Zend/zend_language_scanner.l" -#line 1646 "Zend/zend_language_scanner.l" ++#line 1650 "Zend/zend_language_scanner.l" { const char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL; const char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL; @@@ -4327,7 -4323,13 +4331,7 @@@ zendlval->type = IS_STRING; return T_METHOD_C; } - #line 4331 "Zend/zend_language_scanner.c" -#line 4327 "Zend/zend_language_scanner.c" -yy339: - YYDEBUG(339, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy350; - if (yych == 'l') goto yy350; - goto yy186; ++#line 4335 "Zend/zend_language_scanner.c" yy340: YYDEBUG(340, *YYCURSOR); yych = *++YYCURSOR; @@@ -4362,23 -4363,18 +4366,23 @@@ yy345 yy346: YYDEBUG(346, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'N') goto yy347; + if (yych != 'n') goto yy187; +yy347: YYDEBUG(347, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(348, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(349, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(349, *YYCURSOR); + YYDEBUG(350, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1632 "Zend/zend_language_scanner.l" -#line 1630 "Zend/zend_language_scanner.l" ++#line 1634 "Zend/zend_language_scanner.l" { const char *func_name = NULL; @@@ -4394,27 -4390,27 +4398,27 @@@ zendlval->type = IS_STRING; return T_FUNC_C; } - #line 4398 "Zend/zend_language_scanner.c" -#line 4394 "Zend/zend_language_scanner.c" -yy350: - YYDEBUG(350, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy351; - if (yych != 'e') goto yy186; ++#line 4402 "Zend/zend_language_scanner.c" yy351: YYDEBUG(351, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'E') goto yy352; + if (yych != 'e') goto yy187; +yy352: YYDEBUG(352, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(353, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(354, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(354, *YYCURSOR); + YYDEBUG(355, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1675 "Zend/zend_language_scanner.l" -#line 1673 "Zend/zend_language_scanner.l" ++#line 1677 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@@ -4426,7 -4422,12 +4430,7 @@@ zendlval->type = IS_STRING; return T_FILE; } - #line 4430 "Zend/zend_language_scanner.c" -#line 4426 "Zend/zend_language_scanner.c" -yy355: - YYDEBUG(355, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy356; - if (yych != 'a') goto yy186; ++#line 4434 "Zend/zend_language_scanner.c" yy356: YYDEBUG(356, *YYCURSOR); yych = *++YYCURSOR; @@@ -4440,23 -4441,18 +4444,23 @@@ yy357 yy358: YYDEBUG(358, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'T') goto yy359; + if (yych != 't') goto yy187; +yy359: YYDEBUG(359, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(360, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(361, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(361, *YYCURSOR); + YYDEBUG(362, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1612 "Zend/zend_language_scanner.l" -#line 1610 "Zend/zend_language_scanner.l" ++#line 1614 "Zend/zend_language_scanner.l" { const char *trait_name = NULL; @@@ -4476,7 -4472,12 +4480,7 @@@ return T_TRAIT_C; } - #line 4480 "Zend/zend_language_scanner.c" -#line 4476 "Zend/zend_language_scanner.c" -yy362: - YYDEBUG(362, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy363; - if (yych != 'a') goto yy186; ++#line 4484 "Zend/zend_language_scanner.c" yy363: YYDEBUG(363, *YYCURSOR); yych = *++YYCURSOR; @@@ -4490,23 -4491,18 +4494,23 @@@ yy364 yy365: YYDEBUG(365, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych == 'S') goto yy366; + if (yych != 's') goto yy187; +yy366: YYDEBUG(366, *YYCURSOR); yych = *++YYCURSOR; - if (yych != '_') goto yy186; + if (yych != '_') goto yy187; YYDEBUG(367, *YYCURSOR); + yych = *++YYCURSOR; + if (yych != '_') goto yy187; + YYDEBUG(368, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(368, *YYCURSOR); + YYDEBUG(369, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1585 "Zend/zend_language_scanner.l" -#line 1583 "Zend/zend_language_scanner.l" ++#line 1587 "Zend/zend_language_scanner.l" { const char *class_name = NULL; @@@ -4533,7 -4529,12 +4537,7 @@@ } return T_CLASS_C; } - #line 4537 "Zend/zend_language_scanner.c" -#line 4533 "Zend/zend_language_scanner.c" -yy369: - YYDEBUG(369, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy370; - if (yych != 'l') goto yy186; ++#line 4541 "Zend/zend_language_scanner.c" yy370: YYDEBUG(370, *YYCURSOR); yych = *++YYCURSOR; @@@ -4580,75 -4581,70 +4584,75 @@@ yy378 yy379: YYDEBUG(379, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy380; - if (yych != 'r') goto yy186; + if (yych == 'E') goto yy380; + if (yych != 'e') goto yy187; yy380: YYDEBUG(380, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy381; + if (yych != 'r') goto yy187; +yy381: + YYDEBUG(381, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(381, *YYCURSOR); + YYDEBUG(382, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1294 "Zend/zend_language_scanner.l" -#line 1292 "Zend/zend_language_scanner.l" ++#line 1296 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } - #line 4603 "Zend/zend_language_scanner.c" -#line 4599 "Zend/zend_language_scanner.c" -yy382: - YYDEBUG(382, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy386; - if (yych == 's') goto yy386; - goto yy186; ++#line 4607 "Zend/zend_language_scanner.c" yy383: YYDEBUG(383, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy384; - if (yych != 'e') goto yy186; + if (yych == 'S') goto yy387; + if (yych == 's') goto yy387; + goto yy187; yy384: YYDEBUG(384, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy385; + if (yych != 'e') goto yy187; +yy385: + YYDEBUG(385, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(385, *YYCURSOR); + YYDEBUG(386, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1274 "Zend/zend_language_scanner.l" -#line 1272 "Zend/zend_language_scanner.l" ++#line 1276 "Zend/zend_language_scanner.l" { return T_USE; } - #line 4627 "Zend/zend_language_scanner.c" -#line 4623 "Zend/zend_language_scanner.c" -yy386: - YYDEBUG(386, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy387; - if (yych != 'e') goto yy186; ++#line 4631 "Zend/zend_language_scanner.c" yy387: YYDEBUG(387, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy388; - if (yych != 't') goto yy186; + if (yych == 'E') goto yy388; + if (yych != 'e') goto yy187; yy388: YYDEBUG(388, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy389; + if (yych != 't') goto yy187; +yy389: + YYDEBUG(389, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(389, *YYCURSOR); + YYDEBUG(390, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1322 "Zend/zend_language_scanner.l" -#line 1320 "Zend/zend_language_scanner.l" ++#line 1324 "Zend/zend_language_scanner.l" { return T_UNSET; } - #line 4650 "Zend/zend_language_scanner.c" -#line 4646 "Zend/zend_language_scanner.c" -yy390: - YYDEBUG(390, *YYCURSOR); ++#line 4654 "Zend/zend_language_scanner.c" +yy391: + YYDEBUG(391, *YYCURSOR); ++YYCURSOR; YYFILL(7); yych = *YYCURSOR; @@@ -4805,24 -4801,29 +4809,24 @@@ yy405 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy405: - YYDEBUG(405, *YYCURSOR); +yy406: + YYDEBUG(406, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy404; - goto yy193; + if (yych == '\t') goto yy405; + goto yy194; } else { - if (yych <= ' ') goto yy404; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy405; + if (yych != ')') goto yy194; } - YYDEBUG(406, *YYCURSOR); - ++YYCURSOR; YYDEBUG(407, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(408, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1222 "Zend/zend_language_scanner.l" -#line 1220 "Zend/zend_language_scanner.l" ++#line 1224 "Zend/zend_language_scanner.l" { return T_INT_CAST; } - #line 4826 "Zend/zend_language_scanner.c" -#line 4822 "Zend/zend_language_scanner.c" -yy408: - YYDEBUG(408, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy409; - if (yych != 'e') goto yy193; ++#line 4830 "Zend/zend_language_scanner.c" yy409: YYDEBUG(409, *YYCURSOR); yych = *++YYCURSOR; @@@ -4854,23 -4850,28 +4858,23 @@@ yy414 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(414, *YYCURSOR); + YYDEBUG(415, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy413; - goto yy193; + if (yych == '\t') goto yy414; + goto yy194; } else { - if (yych <= ' ') goto yy413; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy414; + if (yych != ')') goto yy194; } - YYDEBUG(415, *YYCURSOR); - ++YYCURSOR; YYDEBUG(416, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(417, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1226 "Zend/zend_language_scanner.l" -#line 1224 "Zend/zend_language_scanner.l" ++#line 1228 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } - #line 4874 "Zend/zend_language_scanner.c" -#line 4870 "Zend/zend_language_scanner.c" -yy417: - YYDEBUG(417, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy418; - if (yych != 'u') goto yy193; ++#line 4878 "Zend/zend_language_scanner.c" yy418: YYDEBUG(418, *YYCURSOR); yych = *++YYCURSOR; @@@ -4928,23 -4924,28 +4932,23 @@@ yy428 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(428, *YYCURSOR); + YYDEBUG(429, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy427; - goto yy193; + if (yych == '\t') goto yy428; + goto yy194; } else { - if (yych <= ' ') goto yy427; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy428; + if (yych != ')') goto yy194; } - YYDEBUG(429, *YYCURSOR); - ++YYCURSOR; YYDEBUG(430, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(431, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1230 "Zend/zend_language_scanner.l" -#line 1228 "Zend/zend_language_scanner.l" ++#line 1232 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } - #line 4948 "Zend/zend_language_scanner.c" -#line 4944 "Zend/zend_language_scanner.c" -yy431: - YYDEBUG(431, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy432; - if (yych != 'r') goto yy193; ++#line 4952 "Zend/zend_language_scanner.c" yy432: YYDEBUG(432, *YYCURSOR); yych = *++YYCURSOR; @@@ -4965,23 -4961,28 +4969,23 @@@ yy435 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(435, *YYCURSOR); + YYDEBUG(436, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy434; - goto yy193; + if (yych == '\t') goto yy435; + goto yy194; } else { - if (yych <= ' ') goto yy434; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy435; + if (yych != ')') goto yy194; } - YYDEBUG(436, *YYCURSOR); - ++YYCURSOR; YYDEBUG(437, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(438, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1234 "Zend/zend_language_scanner.l" -#line 1232 "Zend/zend_language_scanner.l" ++#line 1236 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } - #line 4985 "Zend/zend_language_scanner.c" -#line 4981 "Zend/zend_language_scanner.c" -yy438: - YYDEBUG(438, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'J') goto yy439; - if (yych != 'j') goto yy193; ++#line 4989 "Zend/zend_language_scanner.c" yy439: YYDEBUG(439, *YYCURSOR); yych = *++YYCURSOR; @@@ -5007,23 -5003,29 +5011,23 @@@ yy443 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(443, *YYCURSOR); + YYDEBUG(444, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy442; - goto yy193; + if (yych == '\t') goto yy443; + goto yy194; } else { - if (yych <= ' ') goto yy442; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy443; + if (yych != ')') goto yy194; } - YYDEBUG(444, *YYCURSOR); - ++YYCURSOR; YYDEBUG(445, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(446, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1238 "Zend/zend_language_scanner.l" -#line 1236 "Zend/zend_language_scanner.l" ++#line 1240 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } - #line 5027 "Zend/zend_language_scanner.c" -#line 5023 "Zend/zend_language_scanner.c" -yy446: - YYDEBUG(446, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy456; - if (yych == 'n') goto yy456; - goto yy193; ++#line 5031 "Zend/zend_language_scanner.c" yy447: YYDEBUG(447, *YYCURSOR); yych = *++YYCURSOR; @@@ -5051,24 -5047,29 +5055,24 @@@ yy451 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy451: - YYDEBUG(451, *YYCURSOR); +yy452: + YYDEBUG(452, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy450; - goto yy193; + if (yych == '\t') goto yy451; + goto yy194; } else { - if (yych <= ' ') goto yy450; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy451; + if (yych != ')') goto yy194; } - YYDEBUG(452, *YYCURSOR); - ++YYCURSOR; YYDEBUG(453, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(454, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1242 "Zend/zend_language_scanner.l" -#line 1240 "Zend/zend_language_scanner.l" ++#line 1244 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } - #line 5072 "Zend/zend_language_scanner.c" -#line 5068 "Zend/zend_language_scanner.c" -yy454: - YYDEBUG(454, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy455; - if (yych != 'a') goto yy193; ++#line 5076 "Zend/zend_language_scanner.c" yy455: YYDEBUG(455, *YYCURSOR); yych = *++YYCURSOR; @@@ -5116,65 -5112,70 +5120,65 @@@ yy463 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(463, *YYCURSOR); + YYDEBUG(464, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy462; - goto yy193; + if (yych == '\t') goto yy463; + goto yy194; } else { - if (yych <= ' ') goto yy462; - if (yych != ')') goto yy193; + if (yych <= ' ') goto yy463; + if (yych != ')') goto yy194; } - YYDEBUG(464, *YYCURSOR); - ++YYCURSOR; YYDEBUG(465, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(466, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1246 "Zend/zend_language_scanner.l" -#line 1244 "Zend/zend_language_scanner.l" ++#line 1248 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } - #line 5136 "Zend/zend_language_scanner.c" -#line 5132 "Zend/zend_language_scanner.c" -yy466: - YYDEBUG(466, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy467; - if (yych != 'r') goto yy186; ++#line 5140 "Zend/zend_language_scanner.c" yy467: YYDEBUG(467, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy468; + if (yych != 'r') goto yy187; +yy468: + YYDEBUG(468, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(468, *YYCURSOR); + YYDEBUG(469, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1218 "Zend/zend_language_scanner.l" -#line 1216 "Zend/zend_language_scanner.l" ++#line 1220 "Zend/zend_language_scanner.l" { return T_VAR; } - #line 5154 "Zend/zend_language_scanner.c" -#line 5150 "Zend/zend_language_scanner.c" -yy469: - YYDEBUG(469, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy473; - if (yych == 'm') goto yy473; - goto yy186; ++#line 5158 "Zend/zend_language_scanner.c" yy470: YYDEBUG(470, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'W') goto yy471; - if (yych != 'w') goto yy186; + if (yych == 'M') goto yy474; + if (yych == 'm') goto yy474; + goto yy187; yy471: YYDEBUG(471, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'W') goto yy472; + if (yych != 'w') goto yy187; +yy472: + YYDEBUG(472, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(472, *YYCURSOR); + YYDEBUG(473, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1210 "Zend/zend_language_scanner.l" -#line 1208 "Zend/zend_language_scanner.l" ++#line 1212 "Zend/zend_language_scanner.l" { return T_NEW; } - #line 5178 "Zend/zend_language_scanner.c" -#line 5174 "Zend/zend_language_scanner.c" -yy473: - YYDEBUG(473, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy474; - if (yych != 'e') goto yy186; ++#line 5182 "Zend/zend_language_scanner.c" yy474: YYDEBUG(474, *YYCURSOR); yych = *++YYCURSOR; @@@ -5198,99 -5199,99 +5202,99 @@@ yy477 yy478: YYDEBUG(478, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy479; - if (yych != 'e') goto yy186; + if (yych == 'C') goto yy479; + if (yych != 'c') goto yy187; yy479: YYDEBUG(479, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy480; + if (yych != 'e') goto yy187; +yy480: + YYDEBUG(480, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(480, *YYCURSOR); + YYDEBUG(481, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1270 "Zend/zend_language_scanner.l" -#line 1268 "Zend/zend_language_scanner.l" ++#line 1272 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } - #line 5221 "Zend/zend_language_scanner.c" -#line 5217 "Zend/zend_language_scanner.c" -yy481: - YYDEBUG(481, *YYCURSOR); - ++YYCURSOR; ++#line 5225 "Zend/zend_language_scanner.c" +yy482: YYDEBUG(482, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(483, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1202 "Zend/zend_language_scanner.l" -#line 1200 "Zend/zend_language_scanner.l" ++#line 1204 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } - #line 5231 "Zend/zend_language_scanner.c" -#line 5227 "Zend/zend_language_scanner.c" -yy483: - YYDEBUG(483, *YYCURSOR); ++#line 5235 "Zend/zend_language_scanner.c" +yy484: + YYDEBUG(484, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy484: - YYDEBUG(484, *YYCURSOR); +yy485: + YYDEBUG(485, *YYCURSOR); if (yych <= '\f') { - if (yych <= 0x08) goto yy140; - if (yych <= '\n') goto yy483; - goto yy140; + if (yych <= 0x08) goto yy141; + if (yych <= '\n') goto yy484; + goto yy141; } else { - if (yych <= '\r') goto yy483; - if (yych == ' ') goto yy483; - goto yy140; + if (yych <= '\r') goto yy484; + if (yych == ' ') goto yy484; + goto yy141; } -yy485: - YYDEBUG(485, *YYCURSOR); - ++YYCURSOR; +yy486: YYDEBUG(486, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1378 "Zend/zend_language_scanner.l" -#line 1376 "Zend/zend_language_scanner.l" ++#line 1380 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } - #line 5257 "Zend/zend_language_scanner.c" -#line 5253 "Zend/zend_language_scanner.c" -yy487: - YYDEBUG(487, *YYCURSOR); - ++YYCURSOR; ++#line 5261 "Zend/zend_language_scanner.c" +yy488: YYDEBUG(488, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(489, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1346 "Zend/zend_language_scanner.l" -#line 1344 "Zend/zend_language_scanner.l" ++#line 1348 "Zend/zend_language_scanner.l" { return T_DEC; } - #line 5267 "Zend/zend_language_scanner.c" -#line 5263 "Zend/zend_language_scanner.c" -yy489: - YYDEBUG(489, *YYCURSOR); - ++YYCURSOR; ++#line 5271 "Zend/zend_language_scanner.c" +yy490: YYDEBUG(490, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(491, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1172 "Zend/zend_language_scanner.l" -#line 1170 "Zend/zend_language_scanner.l" ++#line 1174 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } - #line 5278 "Zend/zend_language_scanner.c" -#line 5274 "Zend/zend_language_scanner.c" -yy491: - YYDEBUG(491, *YYCURSOR); ++#line 5282 "Zend/zend_language_scanner.c" +yy492: + YYDEBUG(492, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'I') goto yy498; - if (yych <= 'N') goto yy186; - goto yy499; + if (yych == 'I') goto yy499; + if (yych <= 'N') goto yy187; + goto yy500; } else { if (yych <= 'i') { - if (yych <= 'h') goto yy186; - goto yy498; + if (yych <= 'h') goto yy187; + goto yy499; } else { - if (yych == 'o') goto yy499; - goto yy186; + if (yych == 'o') goto yy500; + goto yy187; } } -yy492: - YYDEBUG(492, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy493; - if (yych != 'b') goto yy186; yy493: YYDEBUG(493, *YYCURSOR); yych = *++YYCURSOR; @@@ -5304,42 -5305,42 +5308,42 @@@ yy494 yy495: YYDEBUG(495, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy496; - if (yych != 'c') goto yy186; + if (yych == 'I') goto yy496; + if (yych != 'i') goto yy187; yy496: YYDEBUG(496, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy497; + if (yych != 'c') goto yy187; +yy497: + YYDEBUG(497, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(497, *YYCURSOR); + YYDEBUG(498, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1318 "Zend/zend_language_scanner.l" -#line 1316 "Zend/zend_language_scanner.l" ++#line 1320 "Zend/zend_language_scanner.l" { return T_PUBLIC; } - #line 5327 "Zend/zend_language_scanner.c" -#line 5323 "Zend/zend_language_scanner.c" -yy498: - YYDEBUG(498, *YYCURSOR); ++#line 5331 "Zend/zend_language_scanner.c" +yy499: + YYDEBUG(499, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'V') { - if (yych == 'N') goto yy507; - if (yych <= 'U') goto yy186; - goto yy508; + if (yych == 'N') goto yy508; + if (yych <= 'U') goto yy187; + goto yy509; } else { if (yych <= 'n') { - if (yych <= 'm') goto yy186; - goto yy507; + if (yych <= 'm') goto yy187; + goto yy508; } else { - if (yych == 'v') goto yy508; - goto yy186; + if (yych == 'v') goto yy509; + goto yy187; } } -yy499: - YYDEBUG(499, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy500; - if (yych != 't') goto yy186; yy500: YYDEBUG(500, *YYCURSOR); yych = *++YYCURSOR; @@@ -5363,26 -5364,27 +5367,26 @@@ yy503 yy504: YYDEBUG(504, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy505; - if (yych != 'd') goto yy186; + if (yych == 'E') goto yy505; + if (yych != 'e') goto yy187; yy505: YYDEBUG(505, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'D') goto yy506; + if (yych != 'd') goto yy187; +yy506: + YYDEBUG(506, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(506, *YYCURSOR); + YYDEBUG(507, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1314 "Zend/zend_language_scanner.l" -#line 1312 "Zend/zend_language_scanner.l" ++#line 1316 "Zend/zend_language_scanner.l" { return T_PROTECTED; } - #line 5386 "Zend/zend_language_scanner.c" -#line 5382 "Zend/zend_language_scanner.c" -yy507: - YYDEBUG(507, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy513; - if (yych == 't') goto yy513; - goto yy186; ++#line 5390 "Zend/zend_language_scanner.c" yy508: YYDEBUG(508, *YYCURSOR); yych = *++YYCURSOR; @@@ -5397,39 -5398,40 +5401,39 @@@ yy509 yy510: YYDEBUG(510, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy511; - if (yych != 'e') goto yy186; + if (yych == 'T') goto yy511; + if (yych != 't') goto yy187; yy511: YYDEBUG(511, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy512; + if (yych != 'e') goto yy187; +yy512: + YYDEBUG(512, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(512, *YYCURSOR); + YYDEBUG(513, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1310 "Zend/zend_language_scanner.l" -#line 1308 "Zend/zend_language_scanner.l" ++#line 1312 "Zend/zend_language_scanner.l" { return T_PRIVATE; } - #line 5420 "Zend/zend_language_scanner.c" -#line 5416 "Zend/zend_language_scanner.c" -yy513: - YYDEBUG(513, *YYCURSOR); ++#line 5424 "Zend/zend_language_scanner.c" +yy514: + YYDEBUG(514, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(514, *YYCURSOR); + YYDEBUG(515, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1148 "Zend/zend_language_scanner.l" -#line 1146 "Zend/zend_language_scanner.l" ++#line 1150 "Zend/zend_language_scanner.l" { return T_PRINT; } - #line 5433 "Zend/zend_language_scanner.c" -#line 5429 "Zend/zend_language_scanner.c" -yy515: - YYDEBUG(515, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy520; - if (yych == 'o') goto yy520; - goto yy186; ++#line 5437 "Zend/zend_language_scanner.c" yy516: YYDEBUG(516, *YYCURSOR); yych = *++YYCURSOR; @@@ -5439,26 -5440,26 +5443,26 @@@ yy517: YYDEBUG(517, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy518; - if (yych != 'o') goto yy186; + if (yych == 'T') goto yy518; + if (yych != 't') goto yy187; yy518: YYDEBUG(518, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'O') goto yy519; + if (yych != 'o') goto yy187; +yy519: + YYDEBUG(519, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(519, *YYCURSOR); + YYDEBUG(520, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1140 "Zend/zend_language_scanner.l" -#line 1138 "Zend/zend_language_scanner.l" ++#line 1142 "Zend/zend_language_scanner.l" { return T_GOTO; } - #line 5462 "Zend/zend_language_scanner.c" -#line 5458 "Zend/zend_language_scanner.c" -yy520: - YYDEBUG(520, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy521; - if (yych != 'b') goto yy186; ++#line 5466 "Zend/zend_language_scanner.c" yy521: YYDEBUG(521, *YYCURSOR); yych = *++YYCURSOR; @@@ -5467,26 -5468,26 +5471,26 @@@ yy522: YYDEBUG(522, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy523; - if (yych != 'l') goto yy186; + if (yych == 'A') goto yy523; + if (yych != 'a') goto yy187; yy523: YYDEBUG(523, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'L') goto yy524; + if (yych != 'l') goto yy187; +yy524: + YYDEBUG(524, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(524, *YYCURSOR); + YYDEBUG(525, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1282 "Zend/zend_language_scanner.l" -#line 1280 "Zend/zend_language_scanner.l" ++#line 1284 "Zend/zend_language_scanner.l" { return T_GLOBAL; } - #line 5490 "Zend/zend_language_scanner.c" -#line 5486 "Zend/zend_language_scanner.c" -yy525: - YYDEBUG(525, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy533; - goto yy193; ++#line 5494 "Zend/zend_language_scanner.c" yy526: YYDEBUG(526, *YYCURSOR); yych = *++YYCURSOR; @@@ -5508,26 -5509,26 +5512,26 @@@ yy529 yy530: YYDEBUG(530, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'K') goto yy531; - if (yych != 'k') goto yy186; + if (yych == 'A') goto yy531; + if (yych != 'a') goto yy187; yy531: YYDEBUG(531, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'K') goto yy532; + if (yych != 'k') goto yy187; +yy532: + YYDEBUG(532, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(532, *YYCURSOR); + YYDEBUG(533, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1132 "Zend/zend_language_scanner.l" -#line 1130 "Zend/zend_language_scanner.l" ++#line 1134 "Zend/zend_language_scanner.l" { return T_BREAK; } - #line 5531 "Zend/zend_language_scanner.c" -#line 5527 "Zend/zend_language_scanner.c" -yy533: - YYDEBUG(533, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy269; - goto yy193; ++#line 5535 "Zend/zend_language_scanner.c" yy534: YYDEBUG(534, *YYCURSOR); yych = *++YYCURSOR; @@@ -5552,26 -5553,26 +5556,26 @@@ yy537 yy538: YYDEBUG(538, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy539; - if (yych != 'h') goto yy186; + if (yych == 'C') goto yy539; + if (yych != 'c') goto yy187; yy539: YYDEBUG(539, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'H') goto yy540; + if (yych != 'h') goto yy187; +yy540: + YYDEBUG(540, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(540, *YYCURSOR); + YYDEBUG(541, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1116 "Zend/zend_language_scanner.l" -#line 1114 "Zend/zend_language_scanner.l" ++#line 1118 "Zend/zend_language_scanner.l" { return T_SWITCH; } - #line 5575 "Zend/zend_language_scanner.c" -#line 5571 "Zend/zend_language_scanner.c" -yy541: - YYDEBUG(541, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy542; - if (yych != 't') goto yy186; ++#line 5579 "Zend/zend_language_scanner.c" yy542: YYDEBUG(542, *YYCURSOR); yych = *++YYCURSOR; @@@ -5580,26 -5581,27 +5584,26 @@@ yy543: YYDEBUG(543, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy544; - if (yych != 'c') goto yy186; + if (yych == 'I') goto yy544; + if (yych != 'i') goto yy187; yy544: YYDEBUG(544, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy545; + if (yych != 'c') goto yy187; +yy545: + YYDEBUG(545, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(545, *YYCURSOR); + YYDEBUG(546, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1298 "Zend/zend_language_scanner.l" -#line 1296 "Zend/zend_language_scanner.l" ++#line 1300 "Zend/zend_language_scanner.l" { return T_STATIC; } - #line 5603 "Zend/zend_language_scanner.c" -#line 5599 "Zend/zend_language_scanner.c" -yy546: - YYDEBUG(546, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy557; - if (yych == 's') goto yy557; - goto yy186; ++#line 5607 "Zend/zend_language_scanner.c" yy547: YYDEBUG(547, *YYCURSOR); yych = *++YYCURSOR; @@@ -5609,64 -5611,63 +5613,64 @@@ yy548: YYDEBUG(548, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy551; - if (yych == 'r') goto yy551; - goto yy186; + if (yych == 'D') goto yy556; + if (yych == 'd') goto yy556; + goto yy187; yy549: YYDEBUG(549, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy552; + if (yych == 'r') goto yy552; + goto yy187; +yy550: + YYDEBUG(550, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(550, *YYCURSOR); + YYDEBUG(551, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1112 "Zend/zend_language_scanner.l" -#line 1110 "Zend/zend_language_scanner.l" ++#line 1114 "Zend/zend_language_scanner.l" { return T_AS; } - #line 5634 "Zend/zend_language_scanner.c" -#line 5630 "Zend/zend_language_scanner.c" -yy551: - YYDEBUG(551, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy552; - if (yych != 'a') goto yy186; ++#line 5638 "Zend/zend_language_scanner.c" yy552: YYDEBUG(552, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy553; - if (yych != 'y') goto yy186; + if (yych == 'A') goto yy553; + if (yych != 'a') goto yy187; yy553: YYDEBUG(553, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'Y') goto yy554; + if (yych != 'y') goto yy187; +yy554: + YYDEBUG(554, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(554, *YYCURSOR); + YYDEBUG(555, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1334 "Zend/zend_language_scanner.l" -#line 1332 "Zend/zend_language_scanner.l" ++#line 1336 "Zend/zend_language_scanner.l" { return T_ARRAY; } - #line 5657 "Zend/zend_language_scanner.c" -#line 5653 "Zend/zend_language_scanner.c" -yy555: - YYDEBUG(555, *YYCURSOR); ++#line 5661 "Zend/zend_language_scanner.c" +yy556: + YYDEBUG(556, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(556, *YYCURSOR); + YYDEBUG(557, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1430 "Zend/zend_language_scanner.l" -#line 1428 "Zend/zend_language_scanner.l" ++#line 1432 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } - #line 5670 "Zend/zend_language_scanner.c" -#line 5666 "Zend/zend_language_scanner.c" -yy557: - YYDEBUG(557, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy558; - if (yych != 't') goto yy186; ++#line 5674 "Zend/zend_language_scanner.c" yy558: YYDEBUG(558, *YYCURSOR); yych = *++YYCURSOR; @@@ -5685,26 -5686,26 +5689,26 @@@ yy560 yy561: YYDEBUG(561, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy562; - if (yych != 't') goto yy186; + if (yych == 'C') goto yy562; + if (yych != 'c') goto yy187; yy562: YYDEBUG(562, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy563; + if (yych != 't') goto yy187; +yy563: + YYDEBUG(563, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(563, *YYCURSOR); + YYDEBUG(564, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1302 "Zend/zend_language_scanner.l" -#line 1300 "Zend/zend_language_scanner.l" ++#line 1304 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } - #line 5708 "Zend/zend_language_scanner.c" -#line 5704 "Zend/zend_language_scanner.c" -yy564: - YYDEBUG(564, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy565; - if (yych != 'i') goto yy186; ++#line 5712 "Zend/zend_language_scanner.c" yy565: YYDEBUG(565, *YYCURSOR); yych = *++YYCURSOR; @@@ -5713,39 -5714,40 +5717,39 @@@ yy566: YYDEBUG(566, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy567; - if (yych != 'e') goto yy186; + if (yych == 'L') goto yy567; + if (yych != 'l') goto yy187; yy567: YYDEBUG(567, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy568; + if (yych != 'e') goto yy187; +yy568: + YYDEBUG(568, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(568, *YYCURSOR); + YYDEBUG(569, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1072 "Zend/zend_language_scanner.l" -#line 1070 "Zend/zend_language_scanner.l" ++#line 1074 "Zend/zend_language_scanner.l" { return T_WHILE; } - #line 5736 "Zend/zend_language_scanner.c" -#line 5732 "Zend/zend_language_scanner.c" -yy569: - YYDEBUG(569, *YYCURSOR); ++#line 5740 "Zend/zend_language_scanner.c" +yy570: + YYDEBUG(570, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(570, *YYCURSOR); + YYDEBUG(571, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1056 "Zend/zend_language_scanner.l" -#line 1054 "Zend/zend_language_scanner.l" ++#line 1058 "Zend/zend_language_scanner.l" { return T_IF; } - #line 5749 "Zend/zend_language_scanner.c" -#line 5745 "Zend/zend_language_scanner.c" -yy571: - YYDEBUG(571, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'P') goto yy613; - if (yych == 'p') goto yy613; - goto yy186; ++#line 5753 "Zend/zend_language_scanner.c" yy572: YYDEBUG(572, *YYCURSOR); yych = *++YYCURSOR; @@@ -5782,26 -5783,27 +5786,26 @@@ yy574 yy575: YYDEBUG(575, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy576; - if (yych != 't') goto yy186; + if (yych == 'E') goto yy576; + if (yych != 'e') goto yy187; yy576: YYDEBUG(576, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy577; + if (yych != 't') goto yy187; +yy577: + YYDEBUG(577, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(577, *YYCURSOR); + YYDEBUG(578, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1286 "Zend/zend_language_scanner.l" -#line 1284 "Zend/zend_language_scanner.l" ++#line 1288 "Zend/zend_language_scanner.l" { return T_ISSET; } - #line 5805 "Zend/zend_language_scanner.c" -#line 5801 "Zend/zend_language_scanner.c" -yy578: - YYDEBUG(578, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy599; - if (yych == 't') goto yy599; - goto yy186; ++#line 5809 "Zend/zend_language_scanner.c" yy579: YYDEBUG(579, *YYCURSOR); yych = *++YYCURSOR; @@@ -5846,20 -5842,25 +5850,20 @@@ yy585 } } else { if (yych <= '`') { - if (yych <= '_') goto yy586; + if (yych <= '_') goto yy587; } else { - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; } } -yy585: - YYDEBUG(585, *YYCURSOR); +yy586: + YYDEBUG(586, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1254 "Zend/zend_language_scanner.l" -#line 1252 "Zend/zend_language_scanner.l" ++#line 1256 "Zend/zend_language_scanner.l" { return T_INCLUDE; } - #line 5863 "Zend/zend_language_scanner.c" -#line 5859 "Zend/zend_language_scanner.c" -yy586: - YYDEBUG(586, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy587; - if (yych != 'o') goto yy186; ++#line 5867 "Zend/zend_language_scanner.c" yy587: YYDEBUG(587, *YYCURSOR); yych = *++YYCURSOR; @@@ -5873,26 -5874,26 +5877,26 @@@ yy588 yy589: YYDEBUG(589, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy590; - if (yych != 'e') goto yy186; + if (yych == 'C') goto yy590; + if (yych != 'c') goto yy187; yy590: YYDEBUG(590, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy591; + if (yych != 'e') goto yy187; +yy591: + YYDEBUG(591, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(591, *YYCURSOR); + YYDEBUG(592, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1258 "Zend/zend_language_scanner.l" -#line 1256 "Zend/zend_language_scanner.l" ++#line 1260 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } - #line 5896 "Zend/zend_language_scanner.c" -#line 5892 "Zend/zend_language_scanner.c" -yy592: - YYDEBUG(592, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy593; - if (yych != 'r') goto yy186; ++#line 5900 "Zend/zend_language_scanner.c" yy593: YYDEBUG(593, *YYCURSOR); yych = *++YYCURSOR; @@@ -5911,41 -5912,42 +5915,41 @@@ yy595 yy596: YYDEBUG(596, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy597; - if (yych != 'e') goto yy186; + if (yych == 'C') goto yy597; + if (yych != 'c') goto yy187; yy597: YYDEBUG(597, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy598; + if (yych != 'e') goto yy187; +yy598: + YYDEBUG(598, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(598, *YYCURSOR); + YYDEBUG(599, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1156 "Zend/zend_language_scanner.l" -#line 1154 "Zend/zend_language_scanner.l" ++#line 1158 "Zend/zend_language_scanner.l" { return T_INTERFACE; } - #line 5934 "Zend/zend_language_scanner.c" -#line 5930 "Zend/zend_language_scanner.c" -yy599: - YYDEBUG(599, *YYCURSOR); ++#line 5938 "Zend/zend_language_scanner.c" +yy600: + YYDEBUG(600, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'E') { - if (yych == 'A') goto yy600; - if (yych <= 'D') goto yy186; - goto yy601; + if (yych == 'A') goto yy601; + if (yych <= 'D') goto yy187; + goto yy602; } else { if (yych <= 'a') { - if (yych <= '`') goto yy186; + if (yych <= '`') goto yy187; } else { - if (yych == 'e') goto yy601; - goto yy186; + if (yych == 'e') goto yy602; + goto yy187; } } -yy600: - YYDEBUG(600, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy607; - if (yych == 'n') goto yy607; - goto yy186; yy601: YYDEBUG(601, *YYCURSOR); yych = *++YYCURSOR; @@@ -5965,26 -5966,26 +5969,26 @@@ yy603 yy604: YYDEBUG(604, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy605; - if (yych != 'f') goto yy186; + if (yych == 'O') goto yy605; + if (yych != 'o') goto yy187; yy605: YYDEBUG(605, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'F') goto yy606; + if (yych != 'f') goto yy187; +yy606: + YYDEBUG(606, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(606, *YYCURSOR); + YYDEBUG(607, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1278 "Zend/zend_language_scanner.l" -#line 1276 "Zend/zend_language_scanner.l" ++#line 1280 "Zend/zend_language_scanner.l" { return T_INSTEADOF; } - #line 5988 "Zend/zend_language_scanner.c" -#line 5984 "Zend/zend_language_scanner.c" -yy607: - YYDEBUG(607, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy608; - if (yych != 'c') goto yy186; ++#line 5992 "Zend/zend_language_scanner.c" yy608: YYDEBUG(608, *YYCURSOR); yych = *++YYCURSOR; @@@ -5998,26 -5999,26 +6002,26 @@@ yy609 yy610: YYDEBUG(610, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy611; - if (yych != 'f') goto yy186; + if (yych == 'O') goto yy611; + if (yych != 'o') goto yy187; yy611: YYDEBUG(611, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'F') goto yy612; + if (yych != 'f') goto yy187; +yy612: + YYDEBUG(612, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(612, *YYCURSOR); + YYDEBUG(613, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1108 "Zend/zend_language_scanner.l" -#line 1106 "Zend/zend_language_scanner.l" ++#line 1110 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } - #line 6021 "Zend/zend_language_scanner.c" -#line 6017 "Zend/zend_language_scanner.c" -yy613: - YYDEBUG(613, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy614; - if (yych != 'l') goto yy186; ++#line 6025 "Zend/zend_language_scanner.c" yy614: YYDEBUG(614, *YYCURSOR); yych = *++YYCURSOR; @@@ -6046,109 -6047,118 +6050,109 @@@ yy618 yy619: YYDEBUG(619, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy620; - if (yych != 's') goto yy186; + if (yych == 'T') goto yy620; + if (yych != 't') goto yy187; yy620: YYDEBUG(620, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'S') goto yy621; + if (yych != 's') goto yy187; +yy621: + YYDEBUG(621, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(621, *YYCURSOR); + YYDEBUG(622, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1168 "Zend/zend_language_scanner.l" -#line 1166 "Zend/zend_language_scanner.l" ++#line 1170 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } - #line 6069 "Zend/zend_language_scanner.c" -#line 6065 "Zend/zend_language_scanner.c" -yy622: - YYDEBUG(622, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy630; - if (yych == 'r') goto yy630; - goto yy186; ++#line 6073 "Zend/zend_language_scanner.c" yy623: YYDEBUG(623, *YYCURSOR); yych = *++YYCURSOR; + if (yych == 'R') goto yy631; + if (yych == 'r') goto yy631; + goto yy187; +yy624: + YYDEBUG(624, *YYCURSOR); + yych = *++YYCURSOR; if (yych <= 'Y') { - if (yych == 'A') goto yy626; - if (yych <= 'X') goto yy186; + if (yych == 'A') goto yy627; + if (yych <= 'X') goto yy187; } else { if (yych <= 'a') { - if (yych <= '`') goto yy186; - goto yy626; + if (yych <= '`') goto yy187; + goto yy627; } else { - if (yych != 'y') goto yy186; + if (yych != 'y') goto yy187; } } - YYDEBUG(624, *YYCURSOR); + YYDEBUG(625, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(625, *YYCURSOR); + YYDEBUG(626, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1040 "Zend/zend_language_scanner.l" -#line 1038 "Zend/zend_language_scanner.l" ++#line 1042 "Zend/zend_language_scanner.l" { return T_TRY; } - #line 6101 "Zend/zend_language_scanner.c" -#line 6097 "Zend/zend_language_scanner.c" -yy626: - YYDEBUG(626, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy627; - if (yych != 'i') goto yy186; ++#line 6105 "Zend/zend_language_scanner.c" yy627: YYDEBUG(627, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy628; - if (yych != 't') goto yy186; + if (yych == 'I') goto yy628; + if (yych != 'i') goto yy187; yy628: YYDEBUG(628, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy629; + if (yych != 't') goto yy187; +yy629: + YYDEBUG(629, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(629, *YYCURSOR); + YYDEBUG(630, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1160 "Zend/zend_language_scanner.l" -#line 1158 "Zend/zend_language_scanner.l" ++#line 1162 "Zend/zend_language_scanner.l" { return T_TRAIT; } - #line 6124 "Zend/zend_language_scanner.c" -#line 6120 "Zend/zend_language_scanner.c" -yy630: - YYDEBUG(630, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy631; - if (yych != 'o') goto yy186; ++#line 6128 "Zend/zend_language_scanner.c" yy631: YYDEBUG(631, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'W') goto yy632; - if (yych != 'w') goto yy186; + if (yych == 'O') goto yy632; + if (yych != 'o') goto yy187; yy632: YYDEBUG(632, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'W') goto yy633; + if (yych != 'w') goto yy187; +yy633: + YYDEBUG(633, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(633, *YYCURSOR); + YYDEBUG(634, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1052 "Zend/zend_language_scanner.l" -#line 1050 "Zend/zend_language_scanner.l" ++#line 1054 "Zend/zend_language_scanner.l" { return T_THROW; } - #line 6147 "Zend/zend_language_scanner.c" -#line 6143 "Zend/zend_language_scanner.c" -yy634: - YYDEBUG(634, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'Q') goto yy636; - if (yych <= 'S') goto yy186; - } else { - if (yych <= 'q') { - if (yych <= 'p') goto yy186; - goto yy636; - } else { - if (yych != 't') goto yy186; - } - } ++#line 6151 "Zend/zend_language_scanner.c" +yy635: YYDEBUG(635, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy648; - if (yych == 'u') goto yy648; - goto yy186; + if (yych == 'E') goto yy636; + if (yych != 'e') goto yy187; yy636: YYDEBUG(636, *YYCURSOR); yych = *++YYCURSOR; @@@ -6157,40 -6167,44 +6161,40 @@@ yy637: YYDEBUG(637, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy638; - if (yych != 'i') goto yy186; + if (yych == 'D') goto yy638; + if (yych != 'd') goto yy187; yy638: YYDEBUG(638, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy639; - if (yych != 'r') goto yy186; -yy639: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } YYDEBUG(639, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy640; - if (yych != 'e') goto yy186; + yyleng = YYCURSOR - SCNG(yy_text); - #line 1036 "Zend/zend_language_scanner.l" ++#line 1038 "Zend/zend_language_scanner.l" + { + return T_YIELD; +} - #line 6175 "Zend/zend_language_scanner.c" ++#line 6179 "Zend/zend_language_scanner.c" yy640: YYDEBUG(640, *YYCURSOR); - ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '9') { - if (yych >= '0') goto yy185; - } else { - if (yych <= '@') goto yy641; - if (yych <= 'Z') goto yy185; - } + yych = *++YYCURSOR; + if (yych <= 'T') { + if (yych == 'Q') goto yy642; + if (yych <= 'S') goto yy187; } else { - if (yych <= '`') { - if (yych <= '_') goto yy642; + if (yych <= 'q') { + if (yych <= 'p') goto yy187; + goto yy642; } else { - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych != 't') goto yy187; } } -yy641: YYDEBUG(641, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1260 "Zend/zend_language_scanner.l" - { - return T_REQUIRE; -} -#line 6208 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'U') goto yy654; + if (yych == 'u') goto yy654; + goto yy187; yy642: YYDEBUG(642, *YYCURSOR); yych = *++YYCURSOR; @@@ -6214,29 -6228,16 +6218,29 @@@ yy645 yy646: YYDEBUG(646, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + if ((yych = *YYCURSOR) <= '^') { + if (yych <= '9') { + if (yych >= '0') goto yy186; + } else { + if (yych <= '@') goto yy647; + if (yych <= 'Z') goto yy186; + } + } else { + if (yych <= '`') { + if (yych <= '_') goto yy648; + } else { + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; + } } +yy647: YYDEBUG(647, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1262 "Zend/zend_language_scanner.l" + #line 1264 "Zend/zend_language_scanner.l" { - return T_REQUIRE_ONCE; + return T_REQUIRE; } - #line 6240 "Zend/zend_language_scanner.c" -#line 6241 "Zend/zend_language_scanner.c" ++#line 6244 "Zend/zend_language_scanner.c" yy648: YYDEBUG(648, *YYCURSOR); yych = *++YYCURSOR; @@@ -6246,55 -6247,22 +6250,55 @@@ yy649 YYDEBUG(649, *YYCURSOR); yych = *++YYCURSOR; if (yych == 'N') goto yy650; - if (yych != 'n') goto yy186; + if (yych != 'n') goto yy187; yy650: YYDEBUG(650, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy651; + if (yych != 'c') goto yy187; +yy651: + YYDEBUG(651, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy652; + if (yych != 'e') goto yy187; +yy652: + YYDEBUG(652, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(651, *YYCURSOR); + YYDEBUG(653, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); - #line 1266 "Zend/zend_language_scanner.l" ++#line 1268 "Zend/zend_language_scanner.l" + { + return T_REQUIRE_ONCE; +} - #line 6273 "Zend/zend_language_scanner.c" ++#line 6277 "Zend/zend_language_scanner.c" +yy654: + YYDEBUG(654, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy655; + if (yych != 'r') goto yy187; +yy655: + YYDEBUG(655, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy656; + if (yych != 'n') goto yy187; +yy656: + YYDEBUG(656, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } + YYDEBUG(657, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1032 "Zend/zend_language_scanner.l" + #line 1034 "Zend/zend_language_scanner.l" { return T_RETURN; } - #line 6296 "Zend/zend_language_scanner.c" -#line 6264 "Zend/zend_language_scanner.c" -yy652: - YYDEBUG(652, *YYCURSOR); ++#line 6300 "Zend/zend_language_scanner.c" +yy658: + YYDEBUG(658, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { if (yych <= 'L') { @@@ -6307,146 -6275,178 +6311,146 @@@ } } else { if (yych <= 'r') { - if (yych == 'l') goto yy675; - goto yy186; + if (yych == 'l') goto yy681; + goto yy187; } else { - if (yych <= 's') goto yy674; - if (yych <= 't') goto yy673; - goto yy186; + if (yych <= 's') goto yy680; + if (yych <= 't') goto yy679; + goto yy187; } } -yy653: - YYDEBUG(653, *YYCURSOR); +yy659: + YYDEBUG(659, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'A') goto yy665; - if (yych <= 'N') goto yy186; - goto yy666; + if (yych == 'A') goto yy671; + if (yych <= 'N') goto yy187; + goto yy672; } else { if (yych <= 'a') { - if (yych <= '`') goto yy186; - goto yy665; + if (yych <= '`') goto yy187; + goto yy671; } else { - if (yych == 'o') goto yy666; - goto yy186; + if (yych == 'o') goto yy672; + goto yy187; } } -yy654: - YYDEBUG(654, *YYCURSOR); +yy660: + YYDEBUG(660, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy655; - if (yych != 'n') goto yy186; -yy655: - YYDEBUG(655, *YYCURSOR); + if (yych == 'N') goto yy661; + if (yych != 'n') goto yy187; +yy661: + YYDEBUG(661, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { - if (yych <= 'R') goto yy186; - if (yych >= 'T') goto yy657; + if (yych <= 'R') goto yy187; + if (yych >= 'T') goto yy663; } else { - if (yych <= 'r') goto yy186; - if (yych <= 's') goto yy656; - if (yych <= 't') goto yy657; - goto yy186; + if (yych <= 'r') goto yy187; + if (yych <= 's') goto yy662; + if (yych <= 't') goto yy663; + goto yy187; } -yy656: - YYDEBUG(656, *YYCURSOR); +yy662: + YYDEBUG(662, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy663; - if (yych == 't') goto yy663; - goto yy186; -yy657: - YYDEBUG(657, *YYCURSOR); + if (yych == 'T') goto yy669; + if (yych == 't') goto yy669; + goto yy187; +yy663: + YYDEBUG(663, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy658; - if (yych != 'i') goto yy186; -yy658: - YYDEBUG(658, *YYCURSOR); + if (yych == 'I') goto yy664; + if (yych != 'i') goto yy187; +yy664: + YYDEBUG(664, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy659; - if (yych != 'n') goto yy186; -yy659: - YYDEBUG(659, *YYCURSOR); + if (yych == 'N') goto yy665; + if (yych != 'n') goto yy187; +yy665: + YYDEBUG(665, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy660; - if (yych != 'u') goto yy186; -yy660: - YYDEBUG(660, *YYCURSOR); + if (yych == 'U') goto yy666; + if (yych != 'u') goto yy187; +yy666: + YYDEBUG(666, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy661; - if (yych != 'e') goto yy186; -yy661: - YYDEBUG(661, *YYCURSOR); + if (yych == 'E') goto yy667; + if (yych != 'e') goto yy187; +yy667: + YYDEBUG(667, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(662, *YYCURSOR); + YYDEBUG(668, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1136 "Zend/zend_language_scanner.l" -#line 1134 "Zend/zend_language_scanner.l" ++#line 1138 "Zend/zend_language_scanner.l" { return T_CONTINUE; } - #line 6390 "Zend/zend_language_scanner.c" -#line 6358 "Zend/zend_language_scanner.c" -yy663: - YYDEBUG(663, *YYCURSOR); ++#line 6394 "Zend/zend_language_scanner.c" +yy669: + YYDEBUG(669, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(664, *YYCURSOR); + YYDEBUG(670, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1028 "Zend/zend_language_scanner.l" + #line 1030 "Zend/zend_language_scanner.l" { return T_CONST; } - #line 6403 "Zend/zend_language_scanner.c" -#line 6371 "Zend/zend_language_scanner.c" -yy665: - YYDEBUG(665, *YYCURSOR); ++#line 6407 "Zend/zend_language_scanner.c" +yy671: + YYDEBUG(671, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy670; - if (yych == 's') goto yy670; - goto yy186; -yy666: - YYDEBUG(666, *YYCURSOR); + if (yych == 'S') goto yy676; + if (yych == 's') goto yy676; + goto yy187; +yy672: + YYDEBUG(672, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy667; - if (yych != 'n') goto yy186; -yy667: - YYDEBUG(667, *YYCURSOR); + if (yych == 'N') goto yy673; + if (yych != 'n') goto yy187; +yy673: + YYDEBUG(673, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy668; - if (yych != 'e') goto yy186; -yy668: - YYDEBUG(668, *YYCURSOR); + if (yych == 'E') goto yy674; + if (yych != 'e') goto yy187; +yy674: + YYDEBUG(674, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(669, *YYCURSOR); + YYDEBUG(675, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1214 "Zend/zend_language_scanner.l" -#line 1212 "Zend/zend_language_scanner.l" ++#line 1216 "Zend/zend_language_scanner.l" { return T_CLONE; } - #line 6432 "Zend/zend_language_scanner.c" -#line 6400 "Zend/zend_language_scanner.c" -yy670: - YYDEBUG(670, *YYCURSOR); ++#line 6436 "Zend/zend_language_scanner.c" +yy676: + YYDEBUG(676, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy671; - if (yych != 's') goto yy186; -yy671: - YYDEBUG(671, *YYCURSOR); + if (yych == 'S') goto yy677; + if (yych != 's') goto yy187; +yy677: + YYDEBUG(677, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(672, *YYCURSOR); + YYDEBUG(678, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1152 "Zend/zend_language_scanner.l" -#line 1150 "Zend/zend_language_scanner.l" ++#line 1154 "Zend/zend_language_scanner.l" { return T_CLASS; } - #line 6450 "Zend/zend_language_scanner.c" -#line 6418 "Zend/zend_language_scanner.c" -yy673: - YYDEBUG(673, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy684; - if (yych == 'c') goto yy684; - goto yy186; -yy674: - YYDEBUG(674, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy682; - if (yych == 'e') goto yy682; - goto yy186; -yy675: - YYDEBUG(675, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy676; - if (yych != 'l') goto yy186; -yy676: - YYDEBUG(676, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy677; - if (yych != 'a') goto yy186; -yy677: - YYDEBUG(677, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy678; - if (yych != 'b') goto yy186; -yy678: - YYDEBUG(678, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy679; - if (yych != 'l') goto yy186; ++#line 6454 "Zend/zend_language_scanner.c" yy679: YYDEBUG(679, *YYCURSOR); yych = *++YYCURSOR; @@@ -6477,57 -6481,53 +6481,57 @@@ yy683 yy684: YYDEBUG(684, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy685; - if (yych != 'h') goto yy186; + if (yych == 'L') goto yy685; + if (yych != 'l') goto yy187; yy685: YYDEBUG(685, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy686; + if (yych != 'e') goto yy187; +yy686: + YYDEBUG(686, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(686, *YYCURSOR); + YYDEBUG(687, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1338 "Zend/zend_language_scanner.l" -#line 1042 "Zend/zend_language_scanner.l" ++#line 1340 "Zend/zend_language_scanner.l" { - return T_CATCH; + return T_CALLABLE; } - #line 6500 "Zend/zend_language_scanner.c" -#line 6499 "Zend/zend_language_scanner.c" -yy687: - YYDEBUG(687, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy704; - if (yych == 'n') goto yy704; - goto yy186; ++#line 6504 "Zend/zend_language_scanner.c" yy688: YYDEBUG(688, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy697; - if (yych == 'r') goto yy697; - goto yy186; -yy689: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } YYDEBUG(689, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy690; - if (yych != 'n') goto yy186; + yyleng = YYCURSOR - SCNG(yy_text); - #line 1124 "Zend/zend_language_scanner.l" ++#line 1126 "Zend/zend_language_scanner.l" + { + return T_CASE; +} - #line 6513 "Zend/zend_language_scanner.c" ++#line 6517 "Zend/zend_language_scanner.c" yy690: YYDEBUG(690, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy691; - if (yych != 'c') goto yy186; + if (yych == 'H') goto yy691; + if (yych != 'h') goto yy187; yy691: YYDEBUG(691, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy692; - if (yych != 't') goto yy186; -yy692: + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } YYDEBUG(692, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy693; - if (yych != 'i') goto yy186; + yyleng = YYCURSOR - SCNG(yy_text); - #line 1044 "Zend/zend_language_scanner.l" ++#line 1046 "Zend/zend_language_scanner.l" + { + return T_CATCH; +} - #line 6531 "Zend/zend_language_scanner.c" ++#line 6535 "Zend/zend_language_scanner.c" yy693: YYDEBUG(693, *YYCURSOR); yych = *++YYCURSOR; @@@ -6537,54 -6536,23 +6541,54 @@@ yy694: YYDEBUG(694, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy695; - if (yych != 'n') goto yy186; + if (yych == 'R') goto yy703; + if (yych == 'r') goto yy703; + goto yy187; yy695: YYDEBUG(695, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy696; + if (yych != 'n') goto yy187; +yy696: + YYDEBUG(696, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy697; + if (yych != 'c') goto yy187; +yy697: + YYDEBUG(697, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy698; + if (yych != 't') goto yy187; +yy698: + YYDEBUG(698, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy699; + if (yych != 'i') goto yy187; +yy699: + YYDEBUG(699, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'O') goto yy700; + if (yych != 'o') goto yy187; +yy700: + YYDEBUG(700, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy701; + if (yych != 'n') goto yy187; +yy701: + YYDEBUG(701, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(696, *YYCURSOR); + YYDEBUG(702, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1024 "Zend/zend_language_scanner.l" + #line 1026 "Zend/zend_language_scanner.l" { return T_FUNCTION; } - #line 6586 "Zend/zend_language_scanner.c" -#line 6554 "Zend/zend_language_scanner.c" -yy697: - YYDEBUG(697, *YYCURSOR); ++#line 6590 "Zend/zend_language_scanner.c" +yy703: + YYDEBUG(703, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { @@@ -6596,61 -6564,61 +6600,61 @@@ } } else { if (yych <= 'd') { - if (yych != '`') goto yy185; + if (yych != '`') goto yy186; } else { - if (yych <= 'e') goto yy699; - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych <= 'e') goto yy705; + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; } } -yy698: - YYDEBUG(698, *YYCURSOR); +yy704: + YYDEBUG(704, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1084 "Zend/zend_language_scanner.l" -#line 1082 "Zend/zend_language_scanner.l" ++#line 1086 "Zend/zend_language_scanner.l" { return T_FOR; } - #line 6614 "Zend/zend_language_scanner.c" -#line 6582 "Zend/zend_language_scanner.c" -yy699: - YYDEBUG(699, *YYCURSOR); ++#line 6618 "Zend/zend_language_scanner.c" +yy705: + YYDEBUG(705, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy700; - if (yych != 'a') goto yy186; -yy700: - YYDEBUG(700, *YYCURSOR); + if (yych == 'A') goto yy706; + if (yych != 'a') goto yy187; +yy706: + YYDEBUG(706, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy701; - if (yych != 'c') goto yy186; -yy701: - YYDEBUG(701, *YYCURSOR); + if (yych == 'C') goto yy707; + if (yych != 'c') goto yy187; +yy707: + YYDEBUG(707, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy702; - if (yych != 'h') goto yy186; -yy702: - YYDEBUG(702, *YYCURSOR); + if (yych == 'H') goto yy708; + if (yych != 'h') goto yy187; +yy708: + YYDEBUG(708, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(703, *YYCURSOR); + YYDEBUG(709, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1092 "Zend/zend_language_scanner.l" -#line 1090 "Zend/zend_language_scanner.l" ++#line 1094 "Zend/zend_language_scanner.l" { return T_FOREACH; } - #line 6642 "Zend/zend_language_scanner.c" -#line 6610 "Zend/zend_language_scanner.c" -yy704: - YYDEBUG(704, *YYCURSOR); ++#line 6646 "Zend/zend_language_scanner.c" +yy710: + YYDEBUG(710, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy705; - if (yych != 'a') goto yy186; -yy705: - YYDEBUG(705, *YYCURSOR); + if (yych == 'A') goto yy711; + if (yych != 'a') goto yy187; +yy711: + YYDEBUG(711, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy706; - if (yych != 'l') goto yy186; -yy706: - YYDEBUG(706, *YYCURSOR); + if (yych == 'L') goto yy712; + if (yych != 'l') goto yy187; +yy712: + YYDEBUG(712, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { @@@ -6662,93 -6630,126 +6666,93 @@@ } } else { if (yych <= 'k') { - if (yych != '`') goto yy185; + if (yych != '`') goto yy186; } else { - if (yych <= 'l') goto yy708; - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych <= 'l') goto yy714; + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; } } -yy707: - YYDEBUG(707, *YYCURSOR); +yy713: + YYDEBUG(713, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1306 "Zend/zend_language_scanner.l" -#line 1304 "Zend/zend_language_scanner.l" ++#line 1308 "Zend/zend_language_scanner.l" { return T_FINAL; } - #line 6680 "Zend/zend_language_scanner.c" -#line 6648 "Zend/zend_language_scanner.c" -yy708: - YYDEBUG(708, *YYCURSOR); ++#line 6684 "Zend/zend_language_scanner.c" +yy714: + YYDEBUG(714, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy709; - if (yych != 'y') goto yy186; -yy709: - YYDEBUG(709, *YYCURSOR); + if (yych == 'Y') goto yy715; + if (yych != 'y') goto yy187; +yy715: + YYDEBUG(715, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(710, *YYCURSOR); + YYDEBUG(716, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1048 "Zend/zend_language_scanner.l" -#line 1046 "Zend/zend_language_scanner.l" ++#line 1050 "Zend/zend_language_scanner.l" { return T_FINALLY; } - #line 6698 "Zend/zend_language_scanner.c" -#line 6666 "Zend/zend_language_scanner.c" -yy711: - YYDEBUG(711, *YYCURSOR); ++#line 6702 "Zend/zend_language_scanner.c" +yy717: + YYDEBUG(717, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'F') { - if (yych == 'C') goto yy717; - if (yych <= 'E') goto yy186; - goto yy718; + if (yych == 'C') goto yy723; + if (yych <= 'E') goto yy187; + goto yy724; } else { if (yych <= 'c') { - if (yych <= 'b') goto yy186; - goto yy717; + if (yych <= 'b') goto yy187; + goto yy723; } else { - if (yych == 'f') goto yy718; - goto yy186; + if (yych == 'f') goto yy724; + goto yy187; } } -yy712: - YYDEBUG(712, *YYCURSOR); +yy718: + YYDEBUG(718, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy715; - if (yych == 'e') goto yy715; - goto yy186; -yy713: - YYDEBUG(713, *YYCURSOR); + if (yych == 'E') goto yy721; + if (yych == 'e') goto yy721; + goto yy187; +yy719: + YYDEBUG(719, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(714, *YYCURSOR); + YYDEBUG(720, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1080 "Zend/zend_language_scanner.l" -#line 1078 "Zend/zend_language_scanner.l" ++#line 1082 "Zend/zend_language_scanner.l" { return T_DO; } - #line 6733 "Zend/zend_language_scanner.c" -#line 6701 "Zend/zend_language_scanner.c" -yy715: - YYDEBUG(715, *YYCURSOR); ++#line 6737 "Zend/zend_language_scanner.c" +yy721: + YYDEBUG(721, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(716, *YYCURSOR); + YYDEBUG(722, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1020 "Zend/zend_language_scanner.l" + #line 1022 "Zend/zend_language_scanner.l" { return T_EXIT; } - #line 6746 "Zend/zend_language_scanner.c" -#line 6714 "Zend/zend_language_scanner.c" -yy717: - YYDEBUG(717, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy724; - if (yych == 'l') goto yy724; - goto yy186; -yy718: - YYDEBUG(718, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy719; - if (yych != 'a') goto yy186; -yy719: - YYDEBUG(719, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy720; - if (yych != 'u') goto yy186; -yy720: - YYDEBUG(720, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy721; - if (yych != 'l') goto yy186; -yy721: - YYDEBUG(721, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy722; - if (yych != 't') goto yy186; -yy722: - YYDEBUG(722, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; - } ++#line 6750 "Zend/zend_language_scanner.c" +yy723: YYDEBUG(723, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1126 "Zend/zend_language_scanner.l" - { - return T_DEFAULT; -} -#line 6753 "Zend/zend_language_scanner.c" + yych = *++YYCURSOR; + if (yych == 'L') goto yy730; + if (yych == 'l') goto yy730; + goto yy187; yy724: YYDEBUG(724, *YYCURSOR); yych = *++YYCURSOR; @@@ -6762,26 -6763,27 +6766,26 @@@ yy725 yy726: YYDEBUG(726, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy727; - if (yych != 'e') goto yy186; + if (yych == 'L') goto yy727; + if (yych != 'l') goto yy187; yy727: YYDEBUG(727, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy728; + if (yych != 't') goto yy187; +yy728: + YYDEBUG(728, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(728, *YYCURSOR); + YYDEBUG(729, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1128 "Zend/zend_language_scanner.l" -#line 1098 "Zend/zend_language_scanner.l" ++#line 1130 "Zend/zend_language_scanner.l" { - return T_DECLARE; + return T_DEFAULT; } - #line 6785 "Zend/zend_language_scanner.c" -#line 6781 "Zend/zend_language_scanner.c" -yy729: - YYDEBUG(729, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy791; - if (yych == 'h') goto yy791; - goto yy186; ++#line 6789 "Zend/zend_language_scanner.c" yy730: YYDEBUG(730, *YYCURSOR); yych = *++YYCURSOR; @@@ -6795,21 -6799,30 +6799,21 @@@ yy731 yy732: YYDEBUG(732, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy747; - if (yych == 'd') goto yy747; - goto yy186; + if (yych == 'E') goto yy733; + if (yych != 'e') goto yy187; yy733: YYDEBUG(733, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy744; - if (yych == 'a') goto yy744; - goto yy186; -yy734: - YYDEBUG(734, *YYCURSOR); - yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'I') goto yy735; - if (yych <= 'S') goto yy186; - goto yy736; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy186; - } else { - if (yych == 't') goto yy736; - goto yy186; - } + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; } + YYDEBUG(734, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); - #line 1100 "Zend/zend_language_scanner.l" ++#line 1102 "Zend/zend_language_scanner.l" + { + return T_DECLARE; +} - #line 6813 "Zend/zend_language_scanner.c" ++#line 6817 "Zend/zend_language_scanner.c" yy735: YYDEBUG(735, *YYCURSOR); yych = *++YYCURSOR; @@@ -6837,96 -6847,54 +6841,96 @@@ yy738 yy739: YYDEBUG(739, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy740; - if (yych != 's') goto yy186; + if (yych == 'A') goto yy750; + if (yych == 'a') goto yy750; + goto yy187; yy740: YYDEBUG(740, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= 'T') { + if (yych == 'I') goto yy741; + if (yych <= 'S') goto yy187; + goto yy742; + } else { + if (yych <= 'i') { + if (yych <= 'h') goto yy187; + } else { + if (yych == 't') goto yy742; + goto yy187; + } + } +yy741: + YYDEBUG(741, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy748; + if (yych == 't') goto yy748; + goto yy187; +yy742: + YYDEBUG(742, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy743; + if (yych != 'e') goto yy187; +yy743: + YYDEBUG(743, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'N') goto yy744; + if (yych != 'n') goto yy187; +yy744: + YYDEBUG(744, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'D') goto yy745; + if (yych != 'd') goto yy187; +yy745: + YYDEBUG(745, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'S') goto yy746; + if (yych != 's') goto yy187; +yy746: + YYDEBUG(746, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(741, *YYCURSOR); + YYDEBUG(747, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1164 "Zend/zend_language_scanner.l" -#line 1162 "Zend/zend_language_scanner.l" ++#line 1166 "Zend/zend_language_scanner.l" { return T_EXTENDS; } - #line 6897 "Zend/zend_language_scanner.c" -#line 6865 "Zend/zend_language_scanner.c" -yy742: - YYDEBUG(742, *YYCURSOR); ++#line 6901 "Zend/zend_language_scanner.c" +yy748: + YYDEBUG(748, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(743, *YYCURSOR); + YYDEBUG(749, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1016 "Zend/zend_language_scanner.l" + #line 1018 "Zend/zend_language_scanner.l" { return T_EXIT; } - #line 6910 "Zend/zend_language_scanner.c" -#line 6878 "Zend/zend_language_scanner.c" -yy744: - YYDEBUG(744, *YYCURSOR); ++#line 6914 "Zend/zend_language_scanner.c" +yy750: + YYDEBUG(750, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy745; - if (yych != 'l') goto yy186; -yy745: - YYDEBUG(745, *YYCURSOR); + if (yych == 'L') goto yy751; + if (yych != 'l') goto yy187; +yy751: + YYDEBUG(751, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(746, *YYCURSOR); + YYDEBUG(752, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1250 "Zend/zend_language_scanner.l" -#line 1248 "Zend/zend_language_scanner.l" ++#line 1252 "Zend/zend_language_scanner.l" { return T_EVAL; } - #line 6928 "Zend/zend_language_scanner.c" -#line 6896 "Zend/zend_language_scanner.c" -yy747: - YYDEBUG(747, *YYCURSOR); ++#line 6932 "Zend/zend_language_scanner.c" +yy753: + YYDEBUG(753, *YYCURSOR); yych = *++YYCURSOR; YYDEBUG(-1, yych); switch (yych) { @@@ -6994,64 -6995,31 +6998,64 @@@ yy762 } YYDEBUG(763, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1076 "Zend/zend_language_scanner.l" -#line 1118 "Zend/zend_language_scanner.l" ++#line 1078 "Zend/zend_language_scanner.l" { - return T_ENDSWITCH; + return T_ENDWHILE; } - #line 7002 "Zend/zend_language_scanner.c" -#line 7003 "Zend/zend_language_scanner.c" ++#line 7006 "Zend/zend_language_scanner.c" yy764: YYDEBUG(764, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy765; + if (yych != 'i') goto yy187; +yy765: + YYDEBUG(765, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy766; + if (yych != 't') goto yy187; +yy766: + YYDEBUG(766, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy767; + if (yych != 'c') goto yy187; +yy767: + YYDEBUG(767, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'H') goto yy768; + if (yych != 'h') goto yy187; +yy768: + YYDEBUG(768, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(765, *YYCURSOR); + YYDEBUG(769, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1120 "Zend/zend_language_scanner.l" -#line 1062 "Zend/zend_language_scanner.l" ++#line 1122 "Zend/zend_language_scanner.l" + { + return T_ENDSWITCH; +} - #line 7035 "Zend/zend_language_scanner.c" ++#line 7039 "Zend/zend_language_scanner.c" +yy770: + YYDEBUG(770, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } + YYDEBUG(771, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); - #line 1064 "Zend/zend_language_scanner.l" ++#line 1066 "Zend/zend_language_scanner.l" { return T_ENDIF; } - #line 7048 "Zend/zend_language_scanner.c" -#line 7016 "Zend/zend_language_scanner.c" -yy766: - YYDEBUG(766, *YYCURSOR); ++#line 7052 "Zend/zend_language_scanner.c" +yy772: + YYDEBUG(772, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy767; - if (yych != 'r') goto yy186; -yy767: - YYDEBUG(767, *YYCURSOR); + if (yych == 'R') goto yy773; + if (yych != 'r') goto yy187; +yy773: + YYDEBUG(773, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { @@@ -7063,21 -7031,54 +7067,21 @@@ } } else { if (yych <= 'd') { - if (yych != '`') goto yy185; + if (yych != '`') goto yy186; } else { - if (yych <= 'e') goto yy769; - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych <= 'e') goto yy775; + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; } } -yy768: - YYDEBUG(768, *YYCURSOR); +yy774: + YYDEBUG(774, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1088 "Zend/zend_language_scanner.l" -#line 1086 "Zend/zend_language_scanner.l" ++#line 1090 "Zend/zend_language_scanner.l" { return T_ENDFOR; } - #line 7081 "Zend/zend_language_scanner.c" -#line 7049 "Zend/zend_language_scanner.c" -yy769: - YYDEBUG(769, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy770; - if (yych != 'a') goto yy186; -yy770: - YYDEBUG(770, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy771; - if (yych != 'c') goto yy186; -yy771: - YYDEBUG(771, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'H') goto yy772; - if (yych != 'h') goto yy186; -yy772: - YYDEBUG(772, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; - } - YYDEBUG(773, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1094 "Zend/zend_language_scanner.l" - { - return T_ENDFOREACH; -} -#line 7077 "Zend/zend_language_scanner.c" -yy774: - YYDEBUG(774, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy775; - if (yych != 'c') goto yy186; ++#line 7085 "Zend/zend_language_scanner.c" yy775: YYDEBUG(775, *YYCURSOR); yych = *++YYCURSOR; @@@ -7091,26 -7092,26 +7095,26 @@@ yy776 yy777: YYDEBUG(777, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy778; - if (yych != 'r') goto yy186; + if (yych == 'H') goto yy778; + if (yych != 'h') goto yy187; yy778: YYDEBUG(778, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy779; - if (yych != 'e') goto yy186; -yy779: - YYDEBUG(779, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(780, *YYCURSOR); + YYDEBUG(779, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1096 "Zend/zend_language_scanner.l" -#line 1102 "Zend/zend_language_scanner.l" ++#line 1098 "Zend/zend_language_scanner.l" { - return T_ENDDECLARE; + return T_ENDFOREACH; } - #line 7109 "Zend/zend_language_scanner.c" -#line 7115 "Zend/zend_language_scanner.c" ++#line 7113 "Zend/zend_language_scanner.c" +yy780: + YYDEBUG(780, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy781; + if (yych != 'c') goto yy187; yy781: YYDEBUG(781, *YYCURSOR); yych = *++YYCURSOR; @@@ -7119,61 -7120,28 +7123,61 @@@ yy782: YYDEBUG(782, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy783; - if (yych != 'y') goto yy186; + if (yych == 'A') goto yy783; + if (yych != 'a') goto yy187; yy783: YYDEBUG(783, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'R') goto yy784; + if (yych != 'r') goto yy187; +yy784: + YYDEBUG(784, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy785; + if (yych != 'e') goto yy187; +yy785: + YYDEBUG(785, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(784, *YYCURSOR); + YYDEBUG(786, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1104 "Zend/zend_language_scanner.l" -#line 1288 "Zend/zend_language_scanner.l" ++#line 1106 "Zend/zend_language_scanner.l" + { + return T_ENDDECLARE; +} - #line 7147 "Zend/zend_language_scanner.c" ++#line 7151 "Zend/zend_language_scanner.c" +yy787: + YYDEBUG(787, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy788; + if (yych != 't') goto yy187; +yy788: + YYDEBUG(788, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'Y') goto yy789; + if (yych != 'y') goto yy187; +yy789: + YYDEBUG(789, *YYCURSOR); + ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 4) { + goto yy186; + } + YYDEBUG(790, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); - #line 1290 "Zend/zend_language_scanner.l" ++#line 1292 "Zend/zend_language_scanner.l" { return T_EMPTY; } - #line 7170 "Zend/zend_language_scanner.c" -#line 7138 "Zend/zend_language_scanner.c" -yy785: - YYDEBUG(785, *YYCURSOR); ++#line 7174 "Zend/zend_language_scanner.c" +yy791: + YYDEBUG(791, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy786; - if (yych != 'e') goto yy186; -yy786: - YYDEBUG(786, *YYCURSOR); + if (yych == 'E') goto yy792; + if (yych != 'e') goto yy187; +yy792: + YYDEBUG(792, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { @@@ -7185,57 -7153,57 +7189,57 @@@ } } else { if (yych <= 'h') { - if (yych != '`') goto yy185; + if (yych != '`') goto yy186; } else { - if (yych <= 'i') goto yy788; - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; + if (yych <= 'i') goto yy794; + if (yych <= 'z') goto yy186; + if (yych >= 0x7F) goto yy186; } } -yy787: - YYDEBUG(787, *YYCURSOR); +yy793: + YYDEBUG(793, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1068 "Zend/zend_language_scanner.l" -#line 1066 "Zend/zend_language_scanner.l" ++#line 1070 "Zend/zend_language_scanner.l" { return T_ELSE; } - #line 7203 "Zend/zend_language_scanner.c" -#line 7171 "Zend/zend_language_scanner.c" -yy788: - YYDEBUG(788, *YYCURSOR); ++#line 7207 "Zend/zend_language_scanner.c" +yy794: + YYDEBUG(794, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy789; - if (yych != 'f') goto yy186; -yy789: - YYDEBUG(789, *YYCURSOR); + if (yych == 'F') goto yy795; + if (yych != 'f') goto yy187; +yy795: + YYDEBUG(795, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(790, *YYCURSOR); + YYDEBUG(796, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1060 "Zend/zend_language_scanner.l" -#line 1058 "Zend/zend_language_scanner.l" ++#line 1062 "Zend/zend_language_scanner.l" { return T_ELSEIF; } - #line 7221 "Zend/zend_language_scanner.c" -#line 7189 "Zend/zend_language_scanner.c" -yy791: - YYDEBUG(791, *YYCURSOR); ++#line 7225 "Zend/zend_language_scanner.c" +yy797: + YYDEBUG(797, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy792; - if (yych != 'o') goto yy186; -yy792: - YYDEBUG(792, *YYCURSOR); + if (yych == 'O') goto yy798; + if (yych != 'o') goto yy187; +yy798: + YYDEBUG(798, *YYCURSOR); ++YYCURSOR; if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; + goto yy186; } - YYDEBUG(793, *YYCURSOR); + YYDEBUG(799, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1144 "Zend/zend_language_scanner.l" -#line 1142 "Zend/zend_language_scanner.l" ++#line 1146 "Zend/zend_language_scanner.l" { return T_ECHO; } - #line 7239 "Zend/zend_language_scanner.c" -#line 7207 "Zend/zend_language_scanner.c" ++#line 7243 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@@ -7289,26 -7257,26 +7293,26 @@@ } } else { if (yych <= '_') { - if (yych <= '@') goto yy802; - if (yych <= 'Z') goto yy800; - if (yych <= '^') goto yy802; - goto yy800; + if (yych <= '@') goto yy808; + if (yych <= 'Z') goto yy806; + if (yych <= '^') goto yy808; + goto yy806; } else { - if (yych <= '`') goto yy802; - if (yych <= 'z') goto yy800; - if (yych <= '~') goto yy802; - goto yy800; + if (yych <= '`') goto yy808; + if (yych <= 'z') goto yy806; + if (yych <= '~') goto yy808; + goto yy806; } } -yy796: - YYDEBUG(796, *YYCURSOR); +yy802: + YYDEBUG(802, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy808; -yy797: - YYDEBUG(797, *YYCURSOR); + goto yy814; +yy803: + YYDEBUG(803, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1177 "Zend/zend_language_scanner.l" -#line 1175 "Zend/zend_language_scanner.l" ++#line 1179 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@@ -7316,64 -7284,64 +7320,64 @@@ HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } - #line 7320 "Zend/zend_language_scanner.c" -#line 7288 "Zend/zend_language_scanner.c" -yy798: - YYDEBUG(798, *YYCURSOR); ++#line 7324 "Zend/zend_language_scanner.c" +yy804: + YYDEBUG(804, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '>') goto yy805; -yy799: - YYDEBUG(799, *YYCURSOR); + if ((yych = *YYCURSOR) == '>') goto yy811; +yy805: + YYDEBUG(805, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1196 "Zend/zend_language_scanner.l" -#line 1194 "Zend/zend_language_scanner.l" ++#line 1198 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); goto restart; } - #line 7334 "Zend/zend_language_scanner.c" -#line 7302 "Zend/zend_language_scanner.c" -yy800: - YYDEBUG(800, *YYCURSOR); ++#line 7338 "Zend/zend_language_scanner.c" +yy806: + YYDEBUG(806, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy804; -yy801: - YYDEBUG(801, *YYCURSOR); + goto yy810; +yy807: + YYDEBUG(807, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1189 "Zend/zend_language_scanner.l" -#line 1187 "Zend/zend_language_scanner.l" ++#line 1191 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } - #line 7350 "Zend/zend_language_scanner.c" -#line 7318 "Zend/zend_language_scanner.c" -yy802: - YYDEBUG(802, *YYCURSOR); ++#line 7354 "Zend/zend_language_scanner.c" +yy808: + YYDEBUG(808, *YYCURSOR); yych = *++YYCURSOR; - goto yy799; -yy803: - YYDEBUG(803, *YYCURSOR); + goto yy805; +yy809: + YYDEBUG(809, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy804: - YYDEBUG(804, *YYCURSOR); +yy810: + YYDEBUG(810, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy803; + goto yy809; } - goto yy801; -yy805: - YYDEBUG(805, *YYCURSOR); + goto yy807; +yy811: + YYDEBUG(811, *YYCURSOR); ++YYCURSOR; - YYDEBUG(806, *YYCURSOR); + YYDEBUG(812, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1185 "Zend/zend_language_scanner.l" -#line 1183 "Zend/zend_language_scanner.l" ++#line 1187 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } - #line 7375 "Zend/zend_language_scanner.c" -#line 7343 "Zend/zend_language_scanner.c" -yy807: - YYDEBUG(807, *YYCURSOR); ++#line 7379 "Zend/zend_language_scanner.c" +yy813: + YYDEBUG(813, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -7447,48 -7415,48 +7451,48 @@@ yy817 } } else { if (yych <= '|') { - if (yych <= '`') goto yy812; - if (yych <= 'z') goto yy815; + if (yych <= '`') goto yy818; + if (yych <= 'z') goto yy821; } else { - if (yych != '~') goto yy815; + if (yych != '~') goto yy821; } } -yy812: - YYDEBUG(812, *YYCURSOR); +yy818: + YYDEBUG(818, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1482 "Zend/zend_language_scanner.l" -#line 1480 "Zend/zend_language_scanner.l" ++#line 1484 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } - #line 7467 "Zend/zend_language_scanner.c" -#line 7435 "Zend/zend_language_scanner.c" -yy813: - YYDEBUG(813, *YYCURSOR); ++#line 7471 "Zend/zend_language_scanner.c" +yy819: + YYDEBUG(819, *YYCURSOR); yych = *++YYCURSOR; - goto yy812; -yy814: - YYDEBUG(814, *YYCURSOR); + goto yy818; +yy820: + YYDEBUG(820, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy815: - YYDEBUG(815, *YYCURSOR); +yy821: + YYDEBUG(821, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy814; + goto yy820; } - if (yych == '[') goto yy817; - if (yych == '}') goto yy817; - YYDEBUG(816, *YYCURSOR); + if (yych == '[') goto yy823; + if (yych == '}') goto yy823; + YYDEBUG(822, *YYCURSOR); YYCURSOR = YYMARKER; - goto yy812; -yy817: - YYDEBUG(817, *YYCURSOR); + goto yy818; +yy823: + YYDEBUG(823, *YYCURSOR); ++YYCURSOR; - YYDEBUG(818, *YYCURSOR); + YYDEBUG(824, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1472 "Zend/zend_language_scanner.l" -#line 1470 "Zend/zend_language_scanner.l" ++#line 1474 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_copy_value(zendlval, yytext, yyleng); @@@ -7497,18 -7465,18 +7501,18 @@@ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } - #line 7501 "Zend/zend_language_scanner.c" -#line 7469 "Zend/zend_language_scanner.c" ++#line 7505 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_NOWDOC: - YYDEBUG(819, *YYCURSOR); + YYDEBUG(825, *YYCURSOR); YYFILL(1); yych = *YYCURSOR; - YYDEBUG(821, *YYCURSOR); + YYDEBUG(827, *YYCURSOR); ++YYCURSOR; - YYDEBUG(822, *YYCURSOR); + YYDEBUG(828, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); --#line 2364 "Zend/zend_language_scanner.l" ++#line 2368 "Zend/zend_language_scanner.l" { int newline = 0; @@@ -7563,7 -7533,7 +7569,7 @@@ nowdoc_scan_done HANDLE_NEWLINES(yytext, yyleng - newline); return T_ENCAPSED_AND_WHITESPACE; } - #line 7567 "Zend/zend_language_scanner.c" -#line 7537 "Zend/zend_language_scanner.c" ++#line 7573 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_VAR_OFFSET: { @@@ -7661,16 -7631,16 +7667,16 @@@ yy831 } } else { if (yych <= 'b') { - if (yych <= 'X') goto yy848; - if (yych >= 'b') goto yy846; + if (yych <= 'X') goto yy854; + if (yych >= 'b') goto yy852; } else { - if (yych == 'x') goto yy848; + if (yych == 'x') goto yy854; } } -yy826: - YYDEBUG(826, *YYCURSOR); +yy832: + YYDEBUG(832, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1560 "Zend/zend_language_scanner.l" -#line 1558 "Zend/zend_language_scanner.l" ++#line 1562 "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)) { zendlval->value.lval = strtol(yytext, NULL, 10); @@@ -7682,81 -7652,81 +7688,81 @@@ } return T_NUM_STRING; } - #line 7686 "Zend/zend_language_scanner.c" -#line 7656 "Zend/zend_language_scanner.c" -yy827: - YYDEBUG(827, *YYCURSOR); ++#line 7692 "Zend/zend_language_scanner.c" +yy833: + YYDEBUG(833, *YYCURSOR); yych = *++YYCURSOR; - goto yy845; -yy828: - YYDEBUG(828, *YYCURSOR); + goto yy851; +yy834: + YYDEBUG(834, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy829; - if (yych <= 'Z') goto yy841; - if (yych >= '_') goto yy841; + if (yych <= '@') goto yy835; + if (yych <= 'Z') goto yy847; + if (yych >= '_') goto yy847; } else { - if (yych <= '`') goto yy829; - if (yych <= 'z') goto yy841; - if (yych >= 0x7F) goto yy841; + if (yych <= '`') goto yy835; + if (yych <= 'z') goto yy847; + if (yych >= 0x7F) goto yy847; } -yy829: - YYDEBUG(829, *YYCURSOR); +yy835: + YYDEBUG(835, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1892 "Zend/zend_language_scanner.l" -#line 1890 "Zend/zend_language_scanner.l" ++#line 1894 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } - #line 7711 "Zend/zend_language_scanner.c" -#line 7681 "Zend/zend_language_scanner.c" -yy830: - YYDEBUG(830, *YYCURSOR); ++#line 7717 "Zend/zend_language_scanner.c" +yy836: + YYDEBUG(836, *YYCURSOR); ++YYCURSOR; - YYDEBUG(831, *YYCURSOR); + YYDEBUG(837, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1887 "Zend/zend_language_scanner.l" -#line 1885 "Zend/zend_language_scanner.l" ++#line 1889 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } - #line 7722 "Zend/zend_language_scanner.c" -#line 7692 "Zend/zend_language_scanner.c" -yy832: - YYDEBUG(832, *YYCURSOR); ++#line 7728 "Zend/zend_language_scanner.c" +yy838: + YYDEBUG(838, *YYCURSOR); yych = *++YYCURSOR; - goto yy829; -yy833: - YYDEBUG(833, *YYCURSOR); + goto yy835; +yy839: + YYDEBUG(839, *YYCURSOR); ++YYCURSOR; - YYDEBUG(834, *YYCURSOR); + YYDEBUG(840, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1897 "Zend/zend_language_scanner.l" -#line 1895 "Zend/zend_language_scanner.l" ++#line 1899 "Zend/zend_language_scanner.l" { /* Invalid rule to return a more explicit parse error with proper line number */ yyless(0); yy_pop_state(TSRMLS_C); return T_ENCAPSED_AND_WHITESPACE; } - #line 7739 "Zend/zend_language_scanner.c" -#line 7709 "Zend/zend_language_scanner.c" -yy835: - YYDEBUG(835, *YYCURSOR); ++#line 7745 "Zend/zend_language_scanner.c" +yy841: + YYDEBUG(841, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy840; -yy836: - YYDEBUG(836, *YYCURSOR); + goto yy846; +yy842: + YYDEBUG(842, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1904 "Zend/zend_language_scanner.l" -#line 1902 "Zend/zend_language_scanner.l" ++#line 1906 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } - #line 7754 "Zend/zend_language_scanner.c" -#line 7724 "Zend/zend_language_scanner.c" -yy837: - YYDEBUG(837, *YYCURSOR); ++#line 7760 "Zend/zend_language_scanner.c" +yy843: + YYDEBUG(843, *YYCURSOR); ++YYCURSOR; - YYDEBUG(838, *YYCURSOR); + YYDEBUG(844, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 2420 "Zend/zend_language_scanner.l" -#line 2422 "Zend/zend_language_scanner.l" ++#line 2426 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@@ -7765,9 -7735,9 +7771,9 @@@ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } - #line 7769 "Zend/zend_language_scanner.c" -#line 7739 "Zend/zend_language_scanner.c" -yy839: - YYDEBUG(839, *YYCURSOR); ++#line 7775 "Zend/zend_language_scanner.c" +yy845: + YYDEBUG(845, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -7792,24 -7762,24 +7798,24 @@@ yy847 } } else { if (yych <= '`') { - if (yych <= '_') goto yy841; + if (yych <= '_') goto yy847; } else { - if (yych <= 'z') goto yy841; - if (yych >= 0x7F) goto yy841; + if (yych <= 'z') goto yy847; + if (yych >= 0x7F) goto yy847; } } -yy843: - YYDEBUG(843, *YYCURSOR); +yy849: + YYDEBUG(849, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1881 "Zend/zend_language_scanner.l" -#line 1879 "Zend/zend_language_scanner.l" ++#line 1883 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } - #line 7811 "Zend/zend_language_scanner.c" -#line 7781 "Zend/zend_language_scanner.c" -yy844: - YYDEBUG(844, *YYCURSOR); ++#line 7817 "Zend/zend_language_scanner.c" +yy850: + YYDEBUG(850, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -7841,22 -7811,22 +7847,22 @@@ yy855 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(850, *YYCURSOR); - if (yych <= '/') goto yy851; - if (yych <= '9') goto yy849; -yy851: - YYDEBUG(851, *YYCURSOR); + YYDEBUG(856, *YYCURSOR); + if (yych <= '/') goto yy857; + if (yych <= '9') goto yy855; +yy857: + YYDEBUG(857, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); - #line 1572 "Zend/zend_language_scanner.l" -#line 1570 "Zend/zend_language_scanner.l" ++#line 1574 "Zend/zend_language_scanner.l" { /* Offset must be treated as a string */ zendlval->value.str.val = (char *)estrndup(yytext, yyleng); zendlval->value.str.len = yyleng; zendlval->type = IS_STRING; return T_NUM_STRING; } - #line 7858 "Zend/zend_language_scanner.c" -#line 7828 "Zend/zend_language_scanner.c" -yy852: - YYDEBUG(852, *YYCURSOR); ++#line 7864 "Zend/zend_language_scanner.c" +yy858: + YYDEBUG(858, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; @@@ -7870,13 -7840,13 +7876,13 @@@ yy860 ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(855, *YYCURSOR); + YYDEBUG(861, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy854; + goto yy860; } - goto yy851; + goto yy857; } } - #line 2429 "Zend/zend_language_scanner.l" -#line 2431 "Zend/zend_language_scanner.l" ++#line 2435 "Zend/zend_language_scanner.l" } diff --cc Zend/zend_language_scanner_defs.h index 2281cc7289,5309ac2327..47df7e92de --- a/Zend/zend_language_scanner_defs.h +++ b/Zend/zend_language_scanner_defs.h @@@ -1,4 -1,4 +1,4 @@@ - /* Generated by re2c 0.13.5 on Mon Aug 13 16:40:42 2012 */ -/* Generated by re2c 0.13.5 on Sun Aug 19 20:57:55 2012 */ ++/* Generated by re2c 0.13.5 on Mon Aug 20 13:34:50 2012 */ #line 3 "Zend/zend_language_scanner_defs.h" enum YYCONDTYPE { diff --cc Zend/zend_vm_def.h index 49ee3148e3,1da4c12440..f8955c5bf5 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@@ -5344,208 -5317,50 +5344,208 @@@ ZEND_VM_HANDLER(156, ZEND_SEPARATE, VAR ZEND_VM_NEXT_OPCODE(); } - ZEND_VM_HANDLER(159, ZEND_LEAVE, ANY, ANY) { + ZEND_VM_HANDLER(159, ZEND_LEAVE, ANY, ANY) { - USE_OPLINE; + USE_OPLINE + zend_uint i, op_num = opline - EG(active_op_array)->opcodes; + SAVE_OPLINE(); - zend_uint i, op_num = opline - EG(active_op_array)->opcodes; - - zend_exception_restore(TSRMLS_C); - if (EX(leaving)) { - zend_uint catch_op_num = 0, finally_op_num = 0; - for (i = 0; i < EX(leaving); i++) { - if (EG(active_op_array)->try_catch_array[i].try_op > op_num) { - break; - } - if (op_num < EG(active_op_array)->try_catch_array[i].finally_op) { - finally_op_num = EG(active_op_array)->try_catch_array[i].finally_op; - } - if (EG(exception)) { - if (op_num < EG(active_op_array)->try_catch_array[i].catch_op) { - catch_op_num = EG(active_op_array)->try_catch_array[i].catch_op; - } - } - } - - if (catch_op_num && finally_op_num) { - if (catch_op_num > finally_op_num) { - ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[finally_op_num]); - ZEND_VM_CONTINUE(); - } else { - EX(leaving) = 0; - ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[catch_op_num]); - ZEND_VM_CONTINUE(); - } - } else if (catch_op_num) { - ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[catch_op_num]); - ZEND_VM_CONTINUE(); - } else if (finally_op_num) { - ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[finally_op_num]); - ZEND_VM_CONTINUE(); - } else { - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); - } - } else { - ZEND_VM_NEXT_OPCODE(); - } + zend_exception_restore(TSRMLS_C); + if (EX(leaving)) { + zend_uint catch_op_num = 0, finally_op_num = 0; + for (i = 0; i < EX(leaving); i++) { + if (EG(active_op_array)->try_catch_array[i].try_op > op_num) { + break; + } + if (op_num < EG(active_op_array)->try_catch_array[i].finally_op) { + finally_op_num = EG(active_op_array)->try_catch_array[i].finally_op; + } + if (EG(exception)) { + if (op_num < EG(active_op_array)->try_catch_array[i].catch_op) { + catch_op_num = EG(active_op_array)->try_catch_array[i].catch_op; + } + } + } + + if (catch_op_num && finally_op_num) { + if (catch_op_num > finally_op_num) { + ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[finally_op_num]); + ZEND_VM_CONTINUE(); + } else { + EX(leaving) = 0; + ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[catch_op_num]); + ZEND_VM_CONTINUE(); + } + } else if (catch_op_num) { + ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[catch_op_num]); + ZEND_VM_CONTINUE(); + } else if (finally_op_num) { + ZEND_VM_SET_OPCODE(&EX(op_array)->opcodes[finally_op_num]); + ZEND_VM_CONTINUE(); + } else { + ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); + } + } else { + ZEND_VM_NEXT_OPCODE(); + } } +ZEND_VM_HANDLER(160, ZEND_YIELD, CONST|TMP|VAR|CV|UNUSED, CONST|TMP|VAR|CV|UNUSED) +{ + USE_OPLINE + + /* The generator object is stored in return_value_ptr_ptr */ + zend_generator *generator = (zend_generator *) EG(return_value_ptr_ptr); + + /* Destroy the previously yielded value */ + if (generator->value) { + zval_ptr_dtor(&generator->value); + } + + /* Destroy the previously yielded key */ + if (generator->key) { + zval_ptr_dtor(&generator->key); + } + + /* Set the new yielded value */ + if (OP1_TYPE != IS_UNUSED) { + zend_free_op free_op1; + + if (EX(op_array)->fn_flags & ZEND_ACC_RETURN_REFERENCE) { + /* Constants and temporary variables aren't yieldable by reference, + * but we still allow them with a notice. */ + if (OP1_TYPE == IS_CONST || OP1_TYPE == IS_TMP_VAR) { + zval *value, *copy; + + zend_error(E_NOTICE, "Only variable references should be yielded by reference"); + + value = GET_OP1_ZVAL_PTR(BP_VAR_R); + ALLOC_ZVAL(copy); + INIT_PZVAL_COPY(copy, value); + + /* Temporary variables don't need ctor copying */ + if (!IS_OP1_TMP_FREE()) { + zval_copy_ctor(copy); + } + + generator->value = copy; + } else { + zval **value_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W); + + if (OP1_TYPE == IS_VAR && UNEXPECTED(value_ptr == NULL)) { + zend_error_noreturn(E_ERROR, "Cannot yield string offsets by reference"); + } + + /* If a function call result is yielded and the function did + * not return by reference we throw a notice. */ + if (OP1_TYPE == IS_VAR && !Z_ISREF_PP(value_ptr) + && !(opline->extended_value == ZEND_RETURNS_FUNCTION + && EX_T(opline->op1.var).var.fcall_returned_reference) + && EX_T(opline->op1.var).var.ptr_ptr == &EX_T(opline->op1.var).var.ptr) { + zend_error(E_NOTICE, "Only variable references should be yielded by reference"); + + Z_ADDREF_PP(value_ptr); + generator->value = *value_ptr; + } else { + SEPARATE_ZVAL_TO_MAKE_IS_REF(value_ptr); + Z_ADDREF_PP(value_ptr); + generator->value = *value_ptr; + } + + FREE_OP1_IF_VAR(); + } + } else { + zval *value = GET_OP1_ZVAL_PTR(BP_VAR_R); + + /* Consts, temporary variables and references need copying */ + if (OP1_TYPE == IS_CONST || OP1_TYPE == IS_TMP_VAR + || (PZVAL_IS_REF(value) && Z_REFCOUNT_P(value) > 0) + ) { + zval *copy; + + ALLOC_ZVAL(copy); + INIT_PZVAL_COPY(copy, value); + + /* Temporary variables don't need ctor copying */ + if (!IS_OP1_TMP_FREE()) { + zval_copy_ctor(copy); + } + + generator->value = copy; + } else { + Z_ADDREF_P(value); + generator->value = value; + } + + FREE_OP1_IF_VAR(); + } + } else { + /* If no value was specified yield null */ + Z_ADDREF(EG(uninitialized_zval)); + generator->value = &EG(uninitialized_zval); + } + + /* Set the new yielded key */ + if (OP2_TYPE != IS_UNUSED) { + zend_free_op free_op2; + zval *key = GET_OP2_ZVAL_PTR(BP_VAR_R); + + /* Consts, temporary variables and references need copying */ + if (OP2_TYPE == IS_CONST || OP2_TYPE == IS_TMP_VAR + || (PZVAL_IS_REF(key) && Z_REFCOUNT_P(key) > 0) + ) { + zval *copy; + + ALLOC_ZVAL(copy); + INIT_PZVAL_COPY(copy, key); + + /* Temporary variables don't need ctor copying */ + if (!IS_OP1_TMP_FREE()) { + zval_copy_ctor(copy); + } + + generator->key = copy; + } else { + Z_ADDREF_P(key); + generator->key = key; + } + + if (Z_TYPE_P(generator->key) == IS_LONG + && Z_LVAL_P(generator->key) > generator->largest_used_integer_key + ) { + generator->largest_used_integer_key = Z_LVAL_P(generator->key); + } + + FREE_OP2_IF_VAR(); + } else { + /* If no key was specified we use auto-increment keys */ + generator->largest_used_integer_key++; + + ALLOC_INIT_ZVAL(generator->key); + ZVAL_LONG(generator->key, generator->largest_used_integer_key); + } + + /* If a value is sent it should go into the result var */ + generator->send_target = &EX_T(opline->result.var); + + /* Initialize the sent value to NULL */ + Z_ADDREF(EG(uninitialized_zval)); + AI_SET_PTR(&EX_T(opline->result.var), &EG(uninitialized_zval)); + + /* We increment to the next op, so we are at the correct position when the + * generator is resumed. */ + ZEND_VM_INC_OPCODE(); + + /* The GOTO VM uses a local opline variable. We need to set the opline + * variable in execute_data so we don't resume at an old position. */ + SAVE_OPLINE(); + + ZEND_VM_RETURN(); +} + +ZEND_VM_HANDLER(161, ZEND_DELEGATE_YIELD, CONST|TMP|VAR|CV, ANY) +{ + ZEND_VM_NEXT_OPCODE(); +} + ZEND_VM_EXPORT_HELPER(zend_do_fcall, zend_do_fcall_common_helper) diff --cc ext/tokenizer/tokenizer_data.c index 85fa343db1,a915bb8eac..c1b3e57662 --- a/ext/tokenizer/tokenizer_data.c +++ b/ext/tokenizer/tokenizer_data.c @@@ -108,9 -108,9 +108,10 @@@ void tokenizer_register_constants(INIT_ REGISTER_LONG_CONSTANT("T_FUNCTION", T_FUNCTION, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_CONST", T_CONST, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_RETURN", T_RETURN, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("T_YIELD", T_YIELD, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_TRY", T_TRY, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_CATCH", T_CATCH, CONST_CS | CONST_PERSISTENT); + REGISTER_LONG_CONSTANT("T_FINALLY", T_FINALLY, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_THROW", T_THROW, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_USE", T_USE, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("T_INSTEADOF", T_INSTEADOF, CONST_CS | CONST_PERSISTENT); @@@ -243,9 -243,9 +244,10 @@@ char *get_token_type_name(int token_typ case T_FUNCTION: return "T_FUNCTION"; case T_CONST: return "T_CONST"; case T_RETURN: return "T_RETURN"; + case T_YIELD: return "T_YIELD"; case T_TRY: return "T_TRY"; case T_CATCH: return "T_CATCH"; + case T_FINALLY: return "T_FINALLY"; case T_THROW: return "T_THROW"; case T_USE: return "T_USE"; case T_INSTEADOF: return "T_INSTEADOF";