summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2017-03-23 22:48:45 +0100
committerNikita Popov <nikita.ppv@gmail.com>2017-03-23 22:48:45 +0100
commitd719b46222bcd7aaa7b06a1b33316bee26b0455a (patch)
tree32820f2351a18c9c6d2d2625675fe6dc3772409e
parentf5951cc81bb777e39dbfffb4db1c265f4e51308f (diff)
downloadphp-git-d719b46222bcd7aaa7b06a1b33316bee26b0455a.tar.gz
Fix sequencing UB
-rw-r--r--Zend/zend_language_scanner.c865
-rw-r--r--Zend/zend_language_scanner.l2
2 files changed, 445 insertions, 422 deletions
diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c
index d35fbceff2..d5b41a1ef5 100644
--- a/Zend/zend_language_scanner.c
+++ b/Zend/zend_language_scanner.c
@@ -1173,7 +1173,7 @@ yyc_INITIAL:
yy4:
YYDEBUG(4, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1817 "Zend/zend_language_scanner.l"
+#line 1818 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
RETURN_TOKEN(END);
@@ -1234,7 +1234,7 @@ yy5:
yy7:
YYDEBUG(7, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1808 "Zend/zend_language_scanner.l"
+#line 1809 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
BEGIN(ST_IN_SCRIPTING);
@@ -1249,7 +1249,7 @@ yy8:
++YYCURSOR;
YYDEBUG(9, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1795 "Zend/zend_language_scanner.l"
+#line 1796 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
RETURN_TOKEN(T_OPEN_TAG_WITH_ECHO);
@@ -1285,7 +1285,7 @@ yy14:
yy15:
YYDEBUG(15, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1801 "Zend/zend_language_scanner.l"
+#line 1802 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINE(yytext[yyleng-1]);
BEGIN(ST_IN_SCRIPTING);
@@ -1348,7 +1348,7 @@ yyc_ST_BACKQUOTE:
yy20:
YYDEBUG(20, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2227 "Zend/zend_language_scanner.l"
+#line 2228 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
RETURN_TOKEN(END);
@@ -1413,7 +1413,7 @@ yy22:
++YYCURSOR;
YYDEBUG(23, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2171 "Zend/zend_language_scanner.l"
+#line 2172 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
RETURN_TOKEN('`');
@@ -1439,7 +1439,7 @@ yy25:
yy27:
YYDEBUG(27, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1882 "Zend/zend_language_scanner.l"
+#line 1883 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
RETURN_TOKEN(T_VARIABLE);
@@ -1450,7 +1450,7 @@ yy28:
++YYCURSOR;
YYDEBUG(29, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1600 "Zend/zend_language_scanner.l"
+#line 1601 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES);
@@ -1461,7 +1461,7 @@ yy30:
++YYCURSOR;
YYDEBUG(31, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2158 "Zend/zend_language_scanner.l"
+#line 2159 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
@@ -1482,7 +1482,7 @@ yy34:
++YYCURSOR;
YYDEBUG(35, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1875 "Zend/zend_language_scanner.l"
+#line 1876 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
@@ -1507,7 +1507,7 @@ yy37:
++YYCURSOR;
YYDEBUG(38, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1866 "Zend/zend_language_scanner.l"
+#line 1867 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
@@ -1567,7 +1567,7 @@ yyc_ST_DOUBLE_QUOTES:
yy42:
YYDEBUG(42, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2177 "Zend/zend_language_scanner.l"
+#line 2178 "Zend/zend_language_scanner.l"
{
if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
@@ -1622,7 +1622,7 @@ yy43:
++YYCURSOR;
YYDEBUG(44, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2166 "Zend/zend_language_scanner.l"
+#line 2167 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
RETURN_TOKEN('"');
@@ -1666,7 +1666,7 @@ yy47:
yy49:
YYDEBUG(49, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1882 "Zend/zend_language_scanner.l"
+#line 1883 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
RETURN_TOKEN(T_VARIABLE);
@@ -1677,7 +1677,7 @@ yy50:
++YYCURSOR;
YYDEBUG(51, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1600 "Zend/zend_language_scanner.l"
+#line 1601 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES);
@@ -1688,7 +1688,7 @@ yy52:
++YYCURSOR;
YYDEBUG(53, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2158 "Zend/zend_language_scanner.l"
+#line 2159 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
@@ -1709,7 +1709,7 @@ yy56:
++YYCURSOR;
YYDEBUG(57, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1875 "Zend/zend_language_scanner.l"
+#line 1876 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
@@ -1734,7 +1734,7 @@ yy59:
++YYCURSOR;
YYDEBUG(60, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1866 "Zend/zend_language_scanner.l"
+#line 1867 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
@@ -1752,7 +1752,7 @@ yyc_ST_END_HEREDOC:
++YYCURSOR;
YYDEBUG(64, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2144 "Zend/zend_language_scanner.l"
+#line 2145 "Zend/zend_language_scanner.l"
{
zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack));
@@ -1813,7 +1813,7 @@ yyc_ST_HEREDOC:
yy68:
YYDEBUG(68, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2269 "Zend/zend_language_scanner.l"
+#line 2270 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -1925,7 +1925,7 @@ yy71:
yy73:
YYDEBUG(73, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1882 "Zend/zend_language_scanner.l"
+#line 1883 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
RETURN_TOKEN(T_VARIABLE);
@@ -1936,7 +1936,7 @@ yy74:
++YYCURSOR;
YYDEBUG(75, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1600 "Zend/zend_language_scanner.l"
+#line 1601 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
RETURN_TOKEN(T_DOLLAR_OPEN_CURLY_BRACES);
@@ -1947,7 +1947,7 @@ yy76:
++YYCURSOR;
YYDEBUG(77, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2158 "Zend/zend_language_scanner.l"
+#line 2159 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
@@ -1968,7 +1968,7 @@ yy80:
++YYCURSOR;
YYDEBUG(81, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1875 "Zend/zend_language_scanner.l"
+#line 1876 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
@@ -1993,7 +1993,7 @@ yy83:
++YYCURSOR;
YYDEBUG(84, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1866 "Zend/zend_language_scanner.l"
+#line 1867 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
@@ -2168,7 +2168,7 @@ yy87:
++YYCURSOR;
YYDEBUG(88, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2400 "Zend/zend_language_scanner.l"
+#line 2401 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
RETURN_TOKEN(END);
@@ -2189,7 +2189,7 @@ yy89:
}
YYDEBUG(91, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1304 "Zend/zend_language_scanner.l"
+#line 1305 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
RETURN_TOKEN(T_WHITESPACE);
@@ -2202,7 +2202,7 @@ yy92:
yy93:
YYDEBUG(93, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1589 "Zend/zend_language_scanner.l"
+#line 1590 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(yytext[0]);
}
@@ -2212,7 +2212,7 @@ yy94:
++YYCURSOR;
YYDEBUG(95, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2048 "Zend/zend_language_scanner.l"
+#line 2049 "Zend/zend_language_scanner.l"
{
int bprefix = (yytext[0] != '"') ? 1 : 0;
@@ -2259,7 +2259,7 @@ yy96:
++YYCURSOR;
YYDEBUG(97, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1911 "Zend/zend_language_scanner.l"
+#line 1912 "Zend/zend_language_scanner.l"
{
while (YYCURSOR < YYLIMIT) {
switch (*YYCURSOR++) {
@@ -2319,7 +2319,7 @@ yy101:
++YYCURSOR;
YYDEBUG(102, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1979 "Zend/zend_language_scanner.l"
+#line 1980 "Zend/zend_language_scanner.l"
{
register char *s, *t;
char *end;
@@ -2517,7 +2517,7 @@ yy110:
yy111:
YYDEBUG(111, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1659 "Zend/zend_language_scanner.l"
+#line 1660 "Zend/zend_language_scanner.l"
{
char *end;
if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
@@ -2643,7 +2643,7 @@ yy119:
yy120:
YYDEBUG(120, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1905 "Zend/zend_language_scanner.l"
+#line 1906 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
RETURN_TOKEN(T_STRING);
@@ -2933,7 +2933,7 @@ yy142:
++YYCURSOR;
YYDEBUG(143, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1329 "Zend/zend_language_scanner.l"
+#line 1330 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_NS_SEPARATOR);
}
@@ -2953,7 +2953,7 @@ yy146:
++YYCURSOR;
YYDEBUG(147, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2138 "Zend/zend_language_scanner.l"
+#line 2139 "Zend/zend_language_scanner.l"
{
BEGIN(ST_BACKQUOTE);
RETURN_TOKEN('`');
@@ -2964,7 +2964,7 @@ yy148:
++YYCURSOR;
YYDEBUG(149, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1594 "Zend/zend_language_scanner.l"
+#line 1595 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_IN_SCRIPTING);
RETURN_TOKEN('{');
@@ -2981,7 +2981,7 @@ yy151:
++YYCURSOR;
YYDEBUG(152, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1606 "Zend/zend_language_scanner.l"
+#line 1607 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -2997,7 +2997,7 @@ yy153:
yy154:
YYDEBUG(154, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1493 "Zend/zend_language_scanner.l"
+#line 1494 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_NOT_EQUAL);
}
@@ -3026,7 +3026,7 @@ yy155:
yy157:
YYDEBUG(157, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1882 "Zend/zend_language_scanner.l"
+#line 1883 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
RETURN_TOKEN(T_VARIABLE);
@@ -3037,7 +3037,7 @@ yy158:
++YYCURSOR;
YYDEBUG(159, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1537 "Zend/zend_language_scanner.l"
+#line 1538 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_MOD_EQUAL);
}
@@ -3047,7 +3047,7 @@ yy160:
++YYCURSOR;
YYDEBUG(161, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1565 "Zend/zend_language_scanner.l"
+#line 1566 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_BOOLEAN_AND);
}
@@ -3057,7 +3057,7 @@ yy162:
++YYCURSOR;
YYDEBUG(163, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1549 "Zend/zend_language_scanner.l"
+#line 1550 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_AND_EQUAL);
}
@@ -3191,7 +3191,7 @@ yy176:
if ((yych = *YYCURSOR) == '=') goto yy289;
YYDEBUG(177, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1521 "Zend/zend_language_scanner.l"
+#line 1522 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_POW);
}
@@ -3201,7 +3201,7 @@ yy178:
++YYCURSOR;
YYDEBUG(179, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1517 "Zend/zend_language_scanner.l"
+#line 1518 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_MUL_EQUAL);
}
@@ -3211,7 +3211,7 @@ yy180:
++YYCURSOR;
YYDEBUG(181, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1473 "Zend/zend_language_scanner.l"
+#line 1474 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INC);
}
@@ -3221,7 +3221,7 @@ yy182:
++YYCURSOR;
YYDEBUG(183, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1509 "Zend/zend_language_scanner.l"
+#line 1510 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PLUS_EQUAL);
}
@@ -3231,7 +3231,7 @@ yy184:
++YYCURSOR;
YYDEBUG(185, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1477 "Zend/zend_language_scanner.l"
+#line 1478 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DEC);
}
@@ -3241,7 +3241,7 @@ yy186:
++YYCURSOR;
YYDEBUG(187, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1513 "Zend/zend_language_scanner.l"
+#line 1514 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_MINUS_EQUAL);
}
@@ -3251,7 +3251,7 @@ yy188:
++YYCURSOR;
YYDEBUG(189, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1299 "Zend/zend_language_scanner.l"
+#line 1300 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_PROPERTY);
RETURN_TOKEN(T_OBJECT_OPERATOR);
@@ -3279,7 +3279,7 @@ yy191:
yy193:
YYDEBUG(193, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1753 "Zend/zend_language_scanner.l"
+#line 1754 "Zend/zend_language_scanner.l"
{
const char *end;
@@ -3294,7 +3294,7 @@ yy194:
++YYCURSOR;
YYDEBUG(195, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1533 "Zend/zend_language_scanner.l"
+#line 1534 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CONCAT_EQUAL);
}
@@ -3307,7 +3307,7 @@ yy196:
yy197:
YYDEBUG(197, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1940 "Zend/zend_language_scanner.l"
+#line 1941 "Zend/zend_language_scanner.l"
{
int doc_com;
@@ -3346,7 +3346,7 @@ yy198:
++YYCURSOR;
YYDEBUG(199, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1529 "Zend/zend_language_scanner.l"
+#line 1530 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DIV_EQUAL);
}
@@ -3382,7 +3382,7 @@ yy203:
++YYCURSOR;
YYDEBUG(204, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1325 "Zend/zend_language_scanner.l"
+#line 1326 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PAAMAYIM_NEKUDOTAYIM);
}
@@ -3397,7 +3397,7 @@ yy205:
yy206:
YYDEBUG(206, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1581 "Zend/zend_language_scanner.l"
+#line 1582 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SL);
}
@@ -3408,7 +3408,7 @@ yy207:
if ((yych = *YYCURSOR) == '>') goto yy307;
YYDEBUG(208, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1501 "Zend/zend_language_scanner.l"
+#line 1502 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_SMALLER_OR_EQUAL);
}
@@ -3423,7 +3423,7 @@ yy210:
if ((yych = *YYCURSOR) == '=') goto yy309;
YYDEBUG(211, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1489 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_EQUAL);
}
@@ -3433,7 +3433,7 @@ yy212:
++YYCURSOR;
YYDEBUG(213, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1458 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DOUBLE_ARROW);
}
@@ -3443,7 +3443,7 @@ yy214:
++YYCURSOR;
YYDEBUG(215, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1505 "Zend/zend_language_scanner.l"
+#line 1506 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_GREATER_OR_EQUAL);
}
@@ -3454,7 +3454,7 @@ yy216:
if ((yych = *YYCURSOR) == '=') goto yy311;
YYDEBUG(217, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1585 "Zend/zend_language_scanner.l"
+#line 1586 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SR);
}
@@ -3467,7 +3467,7 @@ yy218:
yy219:
YYDEBUG(219, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1973 "Zend/zend_language_scanner.l"
+#line 1974 "Zend/zend_language_scanner.l"
{
BEGIN(INITIAL);
RETURN_TOKEN(T_CLOSE_TAG); /* implicit ';' at php-end tag */
@@ -3478,7 +3478,7 @@ yy220:
++YYCURSOR;
YYDEBUG(221, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1337 "Zend/zend_language_scanner.l"
+#line 1338 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_COALESCE);
}
@@ -3509,7 +3509,7 @@ yy225:
}
YYDEBUG(226, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1239 "Zend/zend_language_scanner.l"
+#line 1240 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_AS);
}
@@ -3599,7 +3599,7 @@ yy234:
}
YYDEBUG(235, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1207 "Zend/zend_language_scanner.l"
+#line 1208 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DO);
}
@@ -3688,7 +3688,7 @@ yy247:
}
YYDEBUG(248, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1183 "Zend/zend_language_scanner.l"
+#line 1184 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IF);
}
@@ -3753,7 +3753,7 @@ yy255:
}
YYDEBUG(256, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1569 "Zend/zend_language_scanner.l"
+#line 1570 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_LOGICAL_OR);
}
@@ -3871,7 +3871,7 @@ yy270:
++YYCURSOR;
YYDEBUG(271, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1557 "Zend/zend_language_scanner.l"
+#line 1558 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_XOR_EQUAL);
}
@@ -3903,7 +3903,7 @@ yy273:
++YYCURSOR;
YYDEBUG(274, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1553 "Zend/zend_language_scanner.l"
+#line 1554 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_OR_EQUAL);
}
@@ -3913,7 +3913,7 @@ yy275:
++YYCURSOR;
YYDEBUG(276, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1561 "Zend/zend_language_scanner.l"
+#line 1562 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_BOOLEAN_OR);
}
@@ -3923,7 +3923,7 @@ yy277:
++YYCURSOR;
YYDEBUG(278, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1485 "Zend/zend_language_scanner.l"
+#line 1486 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_NOT_IDENTICAL);
}
@@ -3993,7 +3993,7 @@ yy289:
++YYCURSOR;
YYDEBUG(290, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1525 "Zend/zend_language_scanner.l"
+#line 1526 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_POW_EQUAL);
}
@@ -4003,7 +4003,7 @@ yy291:
++YYCURSOR;
YYDEBUG(292, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1333 "Zend/zend_language_scanner.l"
+#line 1334 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ELLIPSIS);
}
@@ -4031,7 +4031,7 @@ yy294:
}
YYDEBUG(296, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1631 "Zend/zend_language_scanner.l"
+#line 1632 "Zend/zend_language_scanner.l"
{
char *bin = yytext + 2; /* Skip "0b" */
int len = yyleng - 2;
@@ -4085,7 +4085,7 @@ yy300:
}
YYDEBUG(302, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1704 "Zend/zend_language_scanner.l"
+#line 1705 "Zend/zend_language_scanner.l"
{
char *hex = yytext + 2; /* Skip "0x" */
int len = yyleng - 2;
@@ -4148,7 +4148,7 @@ yy305:
++YYCURSOR;
YYDEBUG(306, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1541 "Zend/zend_language_scanner.l"
+#line 1542 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SL_EQUAL);
}
@@ -4158,7 +4158,7 @@ yy307:
++YYCURSOR;
YYDEBUG(308, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1497 "Zend/zend_language_scanner.l"
+#line 1498 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SPACESHIP);
}
@@ -4168,7 +4168,7 @@ yy309:
++YYCURSOR;
YYDEBUG(310, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1481 "Zend/zend_language_scanner.l"
+#line 1482 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IS_IDENTICAL);
}
@@ -4178,7 +4178,7 @@ yy311:
++YYCURSOR;
YYDEBUG(312, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1545 "Zend/zend_language_scanner.l"
+#line 1546 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SR_EQUAL);
}
@@ -4206,7 +4206,7 @@ yy316:
}
YYDEBUG(317, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1573 "Zend/zend_language_scanner.l"
+#line 1574 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_LOGICAL_AND);
}
@@ -4377,7 +4377,7 @@ yy339:
yy340:
YYDEBUG(340, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1211 "Zend/zend_language_scanner.l"
+#line 1212 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FOR);
}
@@ -4450,7 +4450,7 @@ yy351:
}
YYDEBUG(352, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1341 "Zend/zend_language_scanner.l"
+#line 1342 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_NEW);
}
@@ -4527,7 +4527,7 @@ yy362:
}
YYDEBUG(363, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1167 "Zend/zend_language_scanner.l"
+#line 1168 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_TRY);
}
@@ -4546,7 +4546,7 @@ yy365:
}
YYDEBUG(366, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1405 "Zend/zend_language_scanner.l"
+#line 1406 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_USE);
}
@@ -4559,7 +4559,7 @@ yy367:
}
YYDEBUG(368, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1349 "Zend/zend_language_scanner.l"
+#line 1350 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_VAR);
}
@@ -4578,7 +4578,7 @@ yy370:
}
YYDEBUG(371, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1577 "Zend/zend_language_scanner.l"
+#line 1578 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_LOGICAL_XOR);
}
@@ -4796,7 +4796,7 @@ yy401:
}
YYDEBUG(402, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1251 "Zend/zend_language_scanner.l"
+#line 1252 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CASE);
}
@@ -4851,7 +4851,7 @@ yy410:
}
YYDEBUG(411, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1271 "Zend/zend_language_scanner.l"
+#line 1272 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ECHO);
}
@@ -4879,7 +4879,7 @@ yy412:
yy413:
YYDEBUG(413, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1195 "Zend/zend_language_scanner.l"
+#line 1196 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ELSE);
}
@@ -4928,7 +4928,7 @@ yy420:
}
YYDEBUG(421, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1381 "Zend/zend_language_scanner.l"
+#line 1382 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_EVAL);
}
@@ -4984,7 +4984,7 @@ yy429:
}
YYDEBUG(430, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1267 "Zend/zend_language_scanner.l"
+#line 1268 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_GOTO);
}
@@ -5037,7 +5037,7 @@ yy436:
}
YYDEBUG(437, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1461 "Zend/zend_language_scanner.l"
+#line 1462 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_LIST);
}
@@ -5228,7 +5228,7 @@ yy467:
++YYCURSOR;
YYDEBUG(469, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1353 "Zend/zend_language_scanner.l"
+#line 1354 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INT_CAST);
}
@@ -5329,7 +5329,7 @@ yy480:
yy481:
YYDEBUG(481, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2090 "Zend/zend_language_scanner.l"
+#line 2091 "Zend/zend_language_scanner.l"
{
char *s;
int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -5396,7 +5396,7 @@ yy484:
}
YYDEBUG(485, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1465 "Zend/zend_language_scanner.l"
+#line 1466 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ARRAY);
}
@@ -5409,7 +5409,7 @@ yy486:
}
YYDEBUG(487, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1259 "Zend/zend_language_scanner.l"
+#line 1260 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_BREAK);
}
@@ -5428,7 +5428,7 @@ yy489:
}
YYDEBUG(490, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1171 "Zend/zend_language_scanner.l"
+#line 1172 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CATCH);
}
@@ -5441,7 +5441,7 @@ yy491:
}
YYDEBUG(492, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1279 "Zend/zend_language_scanner.l"
+#line 1280 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CLASS);
}
@@ -5454,7 +5454,7 @@ yy493:
}
YYDEBUG(494, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1345 "Zend/zend_language_scanner.l"
+#line 1346 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CLONE);
}
@@ -5504,7 +5504,7 @@ yy501:
}
YYDEBUG(502, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1421 "Zend/zend_language_scanner.l"
+#line 1422 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_EMPTY);
}
@@ -5529,7 +5529,7 @@ yy505:
}
YYDEBUG(506, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1191 "Zend/zend_language_scanner.l"
+#line 1192 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDIF);
}
@@ -5575,7 +5575,7 @@ yy510:
yy511:
YYDEBUG(511, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1437 "Zend/zend_language_scanner.l"
+#line 1438 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FINAL);
}
@@ -5636,7 +5636,7 @@ yy520:
}
YYDEBUG(521, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1417 "Zend/zend_language_scanner.l"
+#line 1418 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ISSET);
}
@@ -5655,7 +5655,7 @@ yy523:
}
YYDEBUG(524, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1275 "Zend/zend_language_scanner.l"
+#line 1276 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PRINT);
}
@@ -5710,7 +5710,7 @@ yy532:
}
YYDEBUG(533, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1179 "Zend/zend_language_scanner.l"
+#line 1180 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_THROW);
}
@@ -5723,7 +5723,7 @@ yy534:
}
YYDEBUG(535, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1287 "Zend/zend_language_scanner.l"
+#line 1288 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_TRAIT);
}
@@ -5736,7 +5736,7 @@ yy536:
}
YYDEBUG(537, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1453 "Zend/zend_language_scanner.l"
+#line 1454 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_UNSET);
}
@@ -5749,7 +5749,7 @@ yy538:
}
YYDEBUG(539, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1199 "Zend/zend_language_scanner.l"
+#line 1200 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_WHILE);
}
@@ -5771,7 +5771,7 @@ yy540:
yy541:
YYDEBUG(541, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1163 "Zend/zend_language_scanner.l"
+#line 1164 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_YIELD);
}
@@ -5867,7 +5867,7 @@ yy555:
++YYCURSOR;
YYDEBUG(557, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1373 "Zend/zend_language_scanner.l"
+#line 1374 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_BOOL_CAST);
}
@@ -5901,7 +5901,7 @@ yy562:
++YYCURSOR;
YYDEBUG(563, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1357 "Zend/zend_language_scanner.l"
+#line 1358 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DOUBLE_CAST);
}
@@ -5970,7 +5970,7 @@ yy573:
}
YYDEBUG(574, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1187 "Zend/zend_language_scanner.l"
+#line 1188 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ELSEIF);
}
@@ -6004,7 +6004,7 @@ yy576:
yy577:
YYDEBUG(577, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1215 "Zend/zend_language_scanner.l"
+#line 1216 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDFOR);
}
@@ -6053,7 +6053,7 @@ yy584:
}
YYDEBUG(585, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1413 "Zend/zend_language_scanner.l"
+#line 1414 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_GLOBAL);
}
@@ -6114,7 +6114,7 @@ yy594:
}
YYDEBUG(595, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1449 "Zend/zend_language_scanner.l"
+#line 1450 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PUBLIC);
}
@@ -6146,7 +6146,7 @@ yy599:
}
YYDEBUG(600, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1429 "Zend/zend_language_scanner.l"
+#line 1430 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_STATIC);
}
@@ -6159,7 +6159,7 @@ yy601:
}
YYDEBUG(602, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1243 "Zend/zend_language_scanner.l"
+#line 1244 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_SWITCH);
}
@@ -6167,7 +6167,7 @@ yy601:
yy603:
YYDEBUG(603, *YYCURSOR);
++YYCURSOR;
- YYFILL(4);
+ YYFILL(5);
yych = *YYCURSOR;
YYDEBUG(604, *YYCURSOR);
if (yych <= 0x1F) {
@@ -6243,7 +6243,7 @@ yy614:
++YYCURSOR;
YYDEBUG(615, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1365 "Zend/zend_language_scanner.l"
+#line 1366 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ARRAY_CAST);
}
@@ -6293,7 +6293,7 @@ yy622:
++YYCURSOR;
YYDEBUG(623, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1377 "Zend/zend_language_scanner.l"
+#line 1378 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_UNSET_CAST);
}
@@ -6324,7 +6324,7 @@ yy627:
}
YYDEBUG(628, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1227 "Zend/zend_language_scanner.l"
+#line 1228 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DECLARE);
}
@@ -6337,7 +6337,7 @@ yy629:
}
YYDEBUG(630, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1255 "Zend/zend_language_scanner.l"
+#line 1256 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DEFAULT);
}
@@ -6374,7 +6374,7 @@ yy635:
}
YYDEBUG(636, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1291 "Zend/zend_language_scanner.l"
+#line 1292 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_EXTENDS);
}
@@ -6387,7 +6387,7 @@ yy637:
}
YYDEBUG(638, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1175 "Zend/zend_language_scanner.l"
+#line 1176 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FINALLY);
}
@@ -6400,7 +6400,7 @@ yy639:
}
YYDEBUG(640, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1219 "Zend/zend_language_scanner.l"
+#line 1220 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FOREACH);
}
@@ -6438,7 +6438,7 @@ yy643:
yy644:
YYDEBUG(644, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1385 "Zend/zend_language_scanner.l"
+#line 1386 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INCLUDE);
}
@@ -6475,7 +6475,7 @@ yy649:
}
YYDEBUG(650, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1441 "Zend/zend_language_scanner.l"
+#line 1442 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PRIVATE);
}
@@ -6507,7 +6507,7 @@ yy652:
yy653:
YYDEBUG(653, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1393 "Zend/zend_language_scanner.l"
+#line 1394 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_REQUIRE);
}
@@ -6531,7 +6531,7 @@ yy656:
}
YYDEBUG(657, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1786 "Zend/zend_language_scanner.l"
+#line 1787 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_DIR);
}
@@ -6580,7 +6580,7 @@ yy665:
++YYCURSOR;
YYDEBUG(666, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1361 "Zend/zend_language_scanner.l"
+#line 1362 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_STRING_CAST);
}
@@ -6590,7 +6590,7 @@ yy667:
++YYCURSOR;
YYDEBUG(668, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1369 "Zend/zend_language_scanner.l"
+#line 1370 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_OBJECT_CAST);
}
@@ -6603,7 +6603,7 @@ yy669:
}
YYDEBUG(670, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1433 "Zend/zend_language_scanner.l"
+#line 1434 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ABSTRACT);
}
@@ -6616,7 +6616,7 @@ yy671:
}
YYDEBUG(672, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1469 "Zend/zend_language_scanner.l"
+#line 1470 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CALLABLE);
}
@@ -6629,7 +6629,7 @@ yy673:
}
YYDEBUG(674, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1263 "Zend/zend_language_scanner.l"
+#line 1264 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CONTINUE);
}
@@ -6660,7 +6660,7 @@ yy678:
}
YYDEBUG(679, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1203 "Zend/zend_language_scanner.l"
+#line 1204 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDWHILE);
}
@@ -6745,7 +6745,7 @@ yy692:
}
YYDEBUG(693, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1782 "Zend/zend_language_scanner.l"
+#line 1783 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FILE);
}
@@ -6770,7 +6770,7 @@ yy696:
}
YYDEBUG(697, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1778 "Zend/zend_language_scanner.l"
+#line 1779 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_LINE);
}
@@ -6811,7 +6811,7 @@ yy703:
}
YYDEBUG(704, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1247 "Zend/zend_language_scanner.l"
+#line 1248 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDSWITCH);
}
@@ -6842,7 +6842,7 @@ yy708:
}
YYDEBUG(709, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1409 "Zend/zend_language_scanner.l"
+#line 1410 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INSTEADOF);
}
@@ -6855,7 +6855,7 @@ yy710:
}
YYDEBUG(711, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1283 "Zend/zend_language_scanner.l"
+#line 1284 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INTERFACE);
}
@@ -6868,7 +6868,7 @@ yy712:
}
YYDEBUG(713, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1401 "Zend/zend_language_scanner.l"
+#line 1402 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_NAMESPACE);
}
@@ -6881,7 +6881,7 @@ yy714:
}
YYDEBUG(715, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1445 "Zend/zend_language_scanner.l"
+#line 1446 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_PROTECTED);
}
@@ -6906,7 +6906,7 @@ yy718:
}
YYDEBUG(719, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1762 "Zend/zend_language_scanner.l"
+#line 1763 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_CLASS_C);
}
@@ -6914,25 +6914,25 @@ yy718:
yy720:
YYDEBUG(720, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy738;
- if (yych == 'n') goto yy738;
+ if (yych == 'N') goto yy737;
+ if (yych == 'n') goto yy737;
goto yy128;
yy721:
YYDEBUG(721, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy739;
- if (yych == 'm') goto yy739;
+ if (yych == 'M') goto yy738;
+ if (yych == 'm') goto yy738;
goto yy128;
yy722:
YYDEBUG(722, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy740;
+ if (yych == '_') goto yy739;
goto yy128;
yy723:
YYDEBUG(723, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy742;
- if (yych == 'c') goto yy742;
+ if (yych == 'C') goto yy741;
+ if (yych == 'c') goto yy741;
goto yy128;
yy724:
YYDEBUG(724, *YYCURSOR);
@@ -6942,7 +6942,7 @@ yy724:
}
YYDEBUG(725, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1766 "Zend/zend_language_scanner.l"
+#line 1767 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_TRAIT_C);
}
@@ -6955,7 +6955,7 @@ yy726:
}
YYDEBUG(727, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1231 "Zend/zend_language_scanner.l"
+#line 1232 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDDECLARE);
}
@@ -6968,7 +6968,7 @@ yy728:
}
YYDEBUG(729, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1223 "Zend/zend_language_scanner.l"
+#line 1224 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_ENDFOREACH);
}
@@ -6981,7 +6981,7 @@ yy730:
}
YYDEBUG(731, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1295 "Zend/zend_language_scanner.l"
+#line 1296 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_IMPLEMENTS);
}
@@ -6989,8 +6989,8 @@ yy730:
yy732:
YYDEBUG(732, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy743;
- if (yych == 'c') goto yy743;
+ if (yych == 'C') goto yy742;
+ if (yych == 'c') goto yy742;
goto yy128;
yy733:
YYDEBUG(733, *YYCURSOR);
@@ -7000,7 +7000,7 @@ yy733:
}
YYDEBUG(734, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1235 "Zend/zend_language_scanner.l"
+#line 1236 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INSTANCEOF);
}
@@ -7008,165 +7008,188 @@ yy733:
yy735:
YYDEBUG(735, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy744;
- if (yych == 'c') goto yy744;
+ if (yych == 'C') goto yy743;
+ if (yych == 'c') goto yy743;
goto yy128;
yy736:
YYDEBUG(736, *YYCURSOR);
- ++YYCURSOR;
+ yych = *++YYCURSOR;
+ if (yych <= '^') {
+ if (yych <= '9') {
+ if (yych <= '/') goto yy744;
+ goto yy166;
+ } else {
+ if (yych <= '@') goto yy744;
+ if (yych <= 'Z') goto yy166;
+ goto yy744;
+ }
+ } else {
+ if (yych <= '`') {
+ if (yych <= '_') goto yy166;
+ goto yy744;
+ } else {
+ if (yych <= 'z') goto yy166;
+ if (yych <= 0x7F) goto yy744;
+ goto yy166;
+ }
+ }
+yy737:
YYDEBUG(737, *YYCURSOR);
- yyleng = YYCURSOR - SCNG(yy_text);
-#line 1158 "Zend/zend_language_scanner.l"
- {
- HANDLE_NEWLINES(yytext, yyleng);
- RETURN_TOKEN(T_YIELD_FROM);
-}
-#line 7025 "Zend/zend_language_scanner.c"
+ yych = *++YYCURSOR;
+ if (yych == '_') goto yy746;
+ goto yy128;
yy738:
YYDEBUG(738, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy745;
+ if (yych == 'P') goto yy747;
+ if (yych == 'p') goto yy747;
goto yy128;
yy739:
YYDEBUG(739, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'P') goto yy746;
- if (yych == 'p') goto yy746;
- goto yy128;
-yy740:
- YYDEBUG(740, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(741, *YYCURSOR);
+ YYDEBUG(740, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1774 "Zend/zend_language_scanner.l"
+#line 1775 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_METHOD_C);
}
-#line 7049 "Zend/zend_language_scanner.c"
+#line 7060 "Zend/zend_language_scanner.c"
+yy741:
+ YYDEBUG(741, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy748;
+ if (yych == 'e') goto yy748;
+ goto yy128;
yy742:
YYDEBUG(742, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy747;
- if (yych == 'e') goto yy747;
+ if (yych == 'E') goto yy749;
+ if (yych == 'e') goto yy749;
goto yy128;
yy743:
YYDEBUG(743, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy748;
- if (yych == 'e') goto yy748;
+ if (yych == 'E') goto yy751;
+ if (yych == 'e') goto yy751;
goto yy128;
yy744:
YYDEBUG(744, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy750;
- if (yych == 'e') goto yy750;
- goto yy128;
-yy745:
+ ++YYCURSOR;
YYDEBUG(745, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '_') goto yy752;
- goto yy128;
+ yyleng = YYCURSOR - SCNG(yy_text);
+#line 1158 "Zend/zend_language_scanner.l"
+ {
+ yyless(yyleng - 1);
+ HANDLE_NEWLINES(yytext, yyleng);
+ RETURN_TOKEN(T_YIELD_FROM);
+}
+#line 7090 "Zend/zend_language_scanner.c"
yy746:
YYDEBUG(746, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy754;
- if (yych == 'i') goto yy754;
+ if (yych == '_') goto yy753;
goto yy128;
yy747:
YYDEBUG(747, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy755;
+ if (yych == 'I') goto yy755;
+ if (yych == 'i') goto yy755;
goto yy128;
yy748:
YYDEBUG(748, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '_') goto yy756;
+ goto yy128;
+yy749:
+ YYDEBUG(749, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(749, *YYCURSOR);
+ YYDEBUG(750, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1389 "Zend/zend_language_scanner.l"
+#line 1390 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_INCLUDE_ONCE);
}
-#line 7096 "Zend/zend_language_scanner.c"
-yy750:
- YYDEBUG(750, *YYCURSOR);
+#line 7119 "Zend/zend_language_scanner.c"
+yy751:
+ YYDEBUG(751, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(751, *YYCURSOR);
+ YYDEBUG(752, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1397 "Zend/zend_language_scanner.l"
+#line 1398 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_REQUIRE_ONCE);
}
-#line 7109 "Zend/zend_language_scanner.c"
-yy752:
- YYDEBUG(752, *YYCURSOR);
+#line 7132 "Zend/zend_language_scanner.c"
+yy753:
+ YYDEBUG(753, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(753, *YYCURSOR);
+ YYDEBUG(754, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1770 "Zend/zend_language_scanner.l"
+#line 1771 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_FUNC_C);
}
-#line 7122 "Zend/zend_language_scanner.c"
-yy754:
- YYDEBUG(754, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy756;
- if (yych == 'l') goto yy756;
- goto yy128;
+#line 7145 "Zend/zend_language_scanner.c"
yy755:
YYDEBUG(755, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy757;
+ if (yych == 'L') goto yy757;
+ if (yych == 'l') goto yy757;
goto yy128;
yy756:
YYDEBUG(756, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy759;
- if (yych == 'e') goto yy759;
+ if (yych == '_') goto yy758;
goto yy128;
yy757:
YYDEBUG(757, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy760;
+ if (yych == 'e') goto yy760;
+ goto yy128;
+yy758:
+ YYDEBUG(758, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(758, *YYCURSOR);
+ YYDEBUG(759, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1790 "Zend/zend_language_scanner.l"
+#line 1791 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_NS_C);
}
-#line 7152 "Zend/zend_language_scanner.c"
-yy759:
- YYDEBUG(759, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy760;
- if (yych != 'r') goto yy128;
+#line 7175 "Zend/zend_language_scanner.c"
yy760:
YYDEBUG(760, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy761;
+ if (yych != 'r') goto yy128;
+yy761:
+ YYDEBUG(761, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 16) {
goto yy127;
}
- YYDEBUG(761, *YYCURSOR);
+ YYDEBUG(762, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1425 "Zend/zend_language_scanner.l"
+#line 1426 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_HALT_COMPILER);
}
-#line 7170 "Zend/zend_language_scanner.c"
+#line 7193 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_LOOKING_FOR_PROPERTY:
@@ -7205,90 +7228,90 @@ yyc_ST_LOOKING_FOR_PROPERTY:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(762, *YYCURSOR);
+ YYDEBUG(763, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy766;
+ goto yy767;
}
if (yych <= '^') {
if (yych <= '-') {
- if (yych >= '-') goto yy769;
+ if (yych >= '-') goto yy770;
} else {
- if (yych <= '@') goto yy764;
- if (yych <= 'Z') goto yy770;
+ if (yych <= '@') goto yy765;
+ if (yych <= 'Z') goto yy771;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy770;
+ if (yych <= '_') goto yy771;
} else {
- if (yych <= 'z') goto yy770;
- if (yych >= 0x7F) goto yy770;
+ if (yych <= 'z') goto yy771;
+ if (yych >= 0x7F) goto yy771;
}
}
-yy764:
- YYDEBUG(764, *YYCURSOR);
- ++YYCURSOR;
yy765:
YYDEBUG(765, *YYCURSOR);
+ ++YYCURSOR;
+yy766:
+ YYDEBUG(766, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1319 "Zend/zend_language_scanner.l"
+#line 1320 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state();
goto restart;
}
-#line 7242 "Zend/zend_language_scanner.c"
-yy766:
- YYDEBUG(766, *YYCURSOR);
+#line 7265 "Zend/zend_language_scanner.c"
+yy767:
+ YYDEBUG(767, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(767, *YYCURSOR);
+ YYDEBUG(768, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy766;
+ goto yy767;
}
- YYDEBUG(768, *YYCURSOR);
+ YYDEBUG(769, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1304 "Zend/zend_language_scanner.l"
+#line 1305 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
RETURN_TOKEN(T_WHITESPACE);
}
-#line 7259 "Zend/zend_language_scanner.c"
-yy769:
- YYDEBUG(769, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '>') goto yy773;
- goto yy765;
+#line 7282 "Zend/zend_language_scanner.c"
yy770:
YYDEBUG(770, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy774;
+ goto yy766;
+yy771:
+ YYDEBUG(771, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(771, *YYCURSOR);
+ YYDEBUG(772, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy770;
+ goto yy771;
}
- YYDEBUG(772, *YYCURSOR);
+ YYDEBUG(773, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1313 "Zend/zend_language_scanner.l"
+#line 1314 "Zend/zend_language_scanner.l"
{
yy_pop_state();
zend_copy_value(zendlval, yytext, yyleng);
RETURN_TOKEN(T_STRING);
}
-#line 7282 "Zend/zend_language_scanner.c"
-yy773:
- YYDEBUG(773, *YYCURSOR);
- ++YYCURSOR;
+#line 7305 "Zend/zend_language_scanner.c"
+yy774:
YYDEBUG(774, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(775, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1309 "Zend/zend_language_scanner.l"
+#line 1310 "Zend/zend_language_scanner.l"
{
RETURN_TOKEN(T_OBJECT_OPERATOR);
}
-#line 7292 "Zend/zend_language_scanner.c"
+#line 7315 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_LOOKING_FOR_VARNAME:
@@ -7327,78 +7350,78 @@ yyc_ST_LOOKING_FOR_VARNAME:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(775, *YYCURSOR);
+ YYDEBUG(776, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy777;
- if (yych <= 'Z') goto yy779;
- if (yych >= '_') goto yy779;
+ if (yych <= '@') goto yy778;
+ if (yych <= 'Z') goto yy780;
+ if (yych >= '_') goto yy780;
} else {
- if (yych <= '`') goto yy777;
- if (yych <= 'z') goto yy779;
- if (yych >= 0x7F) goto yy779;
+ if (yych <= '`') goto yy778;
+ if (yych <= 'z') goto yy780;
+ if (yych >= 0x7F) goto yy780;
}
-yy777:
- YYDEBUG(777, *YYCURSOR);
- ++YYCURSOR;
yy778:
YYDEBUG(778, *YYCURSOR);
+ ++YYCURSOR;
+yy779:
+ YYDEBUG(779, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1624 "Zend/zend_language_scanner.l"
+#line 1625 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state();
yy_push_state(ST_IN_SCRIPTING);
goto restart;
}
-#line 7356 "Zend/zend_language_scanner.c"
-yy779:
- YYDEBUG(779, *YYCURSOR);
+#line 7379 "Zend/zend_language_scanner.c"
+yy780:
+ YYDEBUG(780, *YYCURSOR);
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '_') {
if (yych <= '@') {
- if (yych <= '/') goto yy778;
- if (yych <= '9') goto yy781;
- goto yy778;
+ if (yych <= '/') goto yy779;
+ if (yych <= '9') goto yy782;
+ goto yy779;
} else {
- if (yych <= '[') goto yy781;
- if (yych <= '^') goto yy778;
- goto yy781;
+ if (yych <= '[') goto yy782;
+ if (yych <= '^') goto yy779;
+ goto yy782;
}
} else {
if (yych <= '|') {
- if (yych <= '`') goto yy778;
- if (yych <= 'z') goto yy781;
- goto yy778;
+ if (yych <= '`') goto yy779;
+ if (yych <= 'z') goto yy782;
+ goto yy779;
} else {
- if (yych == '~') goto yy778;
- goto yy781;
+ if (yych == '~') goto yy779;
+ goto yy782;
}
}
-yy780:
- YYDEBUG(780, *YYCURSOR);
+yy781:
+ YYDEBUG(781, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy781:
- YYDEBUG(781, *YYCURSOR);
- if (yybm[0+yych] & 128) {
- goto yy780;
- }
- if (yych <= '@') goto yy782;
- if (yych <= '[') goto yy783;
- if (yych == '}') goto yy783;
yy782:
YYDEBUG(782, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy778;
+ if (yybm[0+yych] & 128) {
+ goto yy781;
+ }
+ if (yych <= '@') goto yy783;
+ if (yych <= '[') goto yy784;
+ if (yych == '}') goto yy784;
yy783:
YYDEBUG(783, *YYCURSOR);
- ++YYCURSOR;
+ YYCURSOR = YYMARKER;
+ goto yy779;
+yy784:
YYDEBUG(784, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(785, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1615 "Zend/zend_language_scanner.l"
+#line 1616 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_copy_value(zendlval, yytext, yyleng);
@@ -7406,18 +7429,18 @@ yy783:
yy_push_state(ST_IN_SCRIPTING);
RETURN_TOKEN(T_STRING_VARNAME);
}
-#line 7410 "Zend/zend_language_scanner.c"
+#line 7433 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_NOWDOC:
- YYDEBUG(785, *YYCURSOR);
+ YYDEBUG(786, *YYCURSOR);
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(787, *YYCURSOR);
- ++YYCURSOR;
YYDEBUG(788, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(789, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2343 "Zend/zend_language_scanner.l"
+#line 2344 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -7473,7 +7496,7 @@ nowdoc_scan_done:
HANDLE_NEWLINES(yytext, yyleng - newline);
RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE);
}
-#line 7477 "Zend/zend_language_scanner.c"
+#line 7500 "Zend/zend_language_scanner.c"
/* *********************************** */
yyc_ST_VAR_OFFSET:
{
@@ -7511,58 +7534,58 @@ yyc_ST_VAR_OFFSET:
32, 32, 32, 32, 32, 32, 32, 32,
32, 32, 32, 32, 32, 32, 32, 32,
};
- YYDEBUG(789, *YYCURSOR);
+ YYDEBUG(790, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= '/') {
if (yych <= ' ') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy791;
- if (yych <= '\n') goto yy793;
+ if (yych <= 0x08) goto yy792;
+ if (yych <= '\n') goto yy794;
} else {
- if (yych <= '\r') goto yy793;
- if (yych >= ' ') goto yy793;
+ if (yych <= '\r') goto yy794;
+ if (yych >= ' ') goto yy794;
}
} else {
if (yych <= '$') {
- if (yych <= '"') goto yy795;
- if (yych <= '#') goto yy793;
- goto yy797;
+ if (yych <= '"') goto yy796;
+ if (yych <= '#') goto yy794;
+ goto yy798;
} else {
- if (yych == '\'') goto yy793;
- goto yy795;
+ if (yych == '\'') goto yy794;
+ goto yy796;
}
}
} else {
if (yych <= '\\') {
if (yych <= '@') {
- if (yych <= '0') goto yy798;
- if (yych <= '9') goto yy800;
- goto yy795;
+ if (yych <= '0') goto yy799;
+ if (yych <= '9') goto yy801;
+ goto yy796;
} else {
- if (yych <= 'Z') goto yy802;
- if (yych <= '[') goto yy795;
- goto yy793;
+ if (yych <= 'Z') goto yy803;
+ if (yych <= '[') goto yy796;
+ goto yy794;
}
} else {
if (yych <= '_') {
- if (yych <= ']') goto yy805;
- if (yych <= '^') goto yy795;
- goto yy802;
+ if (yych <= ']') goto yy806;
+ if (yych <= '^') goto yy796;
+ goto yy803;
} else {
- if (yych <= '`') goto yy795;
- if (yych <= 'z') goto yy802;
- if (yych <= '~') goto yy795;
- goto yy802;
+ if (yych <= '`') goto yy796;
+ if (yych <= 'z') goto yy803;
+ if (yych <= '~') goto yy796;
+ goto yy803;
}
}
}
-yy791:
- YYDEBUG(791, *YYCURSOR);
- ++YYCURSOR;
+yy792:
YYDEBUG(792, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(793, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2400 "Zend/zend_language_scanner.l"
+#line 2401 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
RETURN_TOKEN(END);
@@ -7571,13 +7594,13 @@ yy791:
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 7575 "Zend/zend_language_scanner.c"
-yy793:
- YYDEBUG(793, *YYCURSOR);
- ++YYCURSOR;
+#line 7598 "Zend/zend_language_scanner.c"
+yy794:
YYDEBUG(794, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(795, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1897 "Zend/zend_language_scanner.l"
+#line 1898 "Zend/zend_language_scanner.l"
{
/* Invalid rule to return a more explicit parse error with proper line number */
yyless(0);
@@ -7585,54 +7608,54 @@ yy793:
ZVAL_NULL(zendlval);
RETURN_TOKEN(T_ENCAPSED_AND_WHITESPACE);
}
-#line 7589 "Zend/zend_language_scanner.c"
-yy795:
- YYDEBUG(795, *YYCURSOR);
- ++YYCURSOR;
+#line 7612 "Zend/zend_language_scanner.c"
yy796:
YYDEBUG(796, *YYCURSOR);
+ ++YYCURSOR;
+yy797:
+ YYDEBUG(797, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1892 "Zend/zend_language_scanner.l"
+#line 1893 "Zend/zend_language_scanner.l"
{
/* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
RETURN_TOKEN(yytext[0]);
}
-#line 7601 "Zend/zend_language_scanner.c"
-yy797:
- YYDEBUG(797, *YYCURSOR);
+#line 7624 "Zend/zend_language_scanner.c"
+yy798:
+ YYDEBUG(798, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy796;
- if (yych <= 'Z') goto yy807;
- if (yych <= '^') goto yy796;
- goto yy807;
+ if (yych <= '@') goto yy797;
+ if (yych <= 'Z') goto yy808;
+ if (yych <= '^') goto yy797;
+ goto yy808;
} else {
- if (yych <= '`') goto yy796;
- if (yych <= 'z') goto yy807;
- if (yych <= '~') goto yy796;
- goto yy807;
+ if (yych <= '`') goto yy797;
+ if (yych <= 'z') goto yy808;
+ if (yych <= '~') goto yy797;
+ goto yy808;
}
-yy798:
- YYDEBUG(798, *YYCURSOR);
+yy799:
+ YYDEBUG(799, *YYCURSOR);
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'W') {
if (yych <= '9') {
- if (yych >= '0') goto yy810;
+ if (yych >= '0') goto yy811;
} else {
- if (yych == 'B') goto yy813;
+ if (yych == 'B') goto yy814;
}
} else {
if (yych <= 'b') {
- if (yych <= 'X') goto yy815;
- if (yych >= 'b') goto yy813;
+ if (yych <= 'X') goto yy816;
+ if (yych >= 'b') goto yy814;
} else {
- if (yych == 'x') goto yy815;
+ if (yych == 'x') goto yy816;
}
}
-yy799:
- YYDEBUG(799, *YYCURSOR);
+yy800:
+ YYDEBUG(800, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1732 "Zend/zend_language_scanner.l"
+#line 1733 "Zend/zend_language_scanner.l"
{ /* Offset could be treated as a long */
if (yyleng < MAX_LENGTH_OF_LONG - 1 || (yyleng == MAX_LENGTH_OF_LONG - 1 && strcmp(yytext, long_min_digits) < 0)) {
char *end;
@@ -7648,131 +7671,131 @@ string:
}
RETURN_TOKEN(T_NUM_STRING);
}
-#line 7652 "Zend/zend_language_scanner.c"
-yy800:
- YYDEBUG(800, *YYCURSOR);
+#line 7675 "Zend/zend_language_scanner.c"
+yy801:
+ YYDEBUG(801, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(801, *YYCURSOR);
+ YYDEBUG(802, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy800;
+ goto yy801;
}
- goto yy799;
-yy802:
- YYDEBUG(802, *YYCURSOR);
+ goto yy800;
+yy803:
+ YYDEBUG(803, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(803, *YYCURSOR);
+ YYDEBUG(804, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy802;
+ goto yy803;
}
- YYDEBUG(804, *YYCURSOR);
+ YYDEBUG(805, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1905 "Zend/zend_language_scanner.l"
+#line 1906 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
RETURN_TOKEN(T_STRING);
}
-#line 7679 "Zend/zend_language_scanner.c"
-yy805:
- YYDEBUG(805, *YYCURSOR);
- ++YYCURSOR;
+#line 7702 "Zend/zend_language_scanner.c"
+yy806:
YYDEBUG(806, *YYCURSOR);
+ ++YYCURSOR;
+ YYDEBUG(807, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1887 "Zend/zend_language_scanner.l"
+#line 1888 "Zend/zend_language_scanner.l"
{
yy_pop_state();
RETURN_TOKEN(']');
}
-#line 7690 "Zend/zend_language_scanner.c"
-yy807:
- YYDEBUG(807, *YYCURSOR);
+#line 7713 "Zend/zend_language_scanner.c"
+yy808:
+ YYDEBUG(808, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(808, *YYCURSOR);
+ YYDEBUG(809, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy807;
+ if (yych >= '0') goto yy808;
} else {
- if (yych <= '@') goto yy809;
- if (yych <= 'Z') goto yy807;
+ if (yych <= '@') goto yy810;
+ if (yych <= 'Z') goto yy808;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy807;
+ if (yych <= '_') goto yy808;
} else {
- if (yych <= 'z') goto yy807;
- if (yych >= 0x7F) goto yy807;
+ if (yych <= 'z') goto yy808;
+ if (yych >= 0x7F) goto yy808;
}
}
-yy809:
- YYDEBUG(809, *YYCURSOR);
+yy810:
+ YYDEBUG(810, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1882 "Zend/zend_language_scanner.l"
+#line 1883 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
RETURN_TOKEN(T_VARIABLE);
}
-#line 7720 "Zend/zend_language_scanner.c"
-yy810:
- YYDEBUG(810, *YYCURSOR);
+#line 7743 "Zend/zend_language_scanner.c"
+yy811:
+ YYDEBUG(811, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(811, *YYCURSOR);
- if (yych <= '/') goto yy812;
- if (yych <= '9') goto yy810;
-yy812:
YYDEBUG(812, *YYCURSOR);
+ if (yych <= '/') goto yy813;
+ if (yych <= '9') goto yy811;
+yy813:
+ YYDEBUG(813, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1748 "Zend/zend_language_scanner.l"
+#line 1749 "Zend/zend_language_scanner.l"
{ /* Offset must be treated as a string */
ZVAL_STRINGL(zendlval, yytext, yyleng);
RETURN_TOKEN(T_NUM_STRING);
}
-#line 7737 "Zend/zend_language_scanner.c"
-yy813:
- YYDEBUG(813, *YYCURSOR);
+#line 7760 "Zend/zend_language_scanner.c"
+yy814:
+ YYDEBUG(814, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy816;
+ goto yy817;
}
-yy814:
- YYDEBUG(814, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy799;
yy815:
YYDEBUG(815, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy800;
+yy816:
+ YYDEBUG(816, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy818;
+ goto yy819;
}
- goto yy814;
-yy816:
- YYDEBUG(816, *YYCURSOR);
+ goto yy815;
+yy817:
+ YYDEBUG(817, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(817, *YYCURSOR);
+ YYDEBUG(818, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy816;
+ goto yy817;
}
- goto yy812;
-yy818:
- YYDEBUG(818, *YYCURSOR);
+ goto yy813;
+yy819:
+ YYDEBUG(819, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(819, *YYCURSOR);
+ YYDEBUG(820, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy818;
+ goto yy819;
}
- goto yy812;
+ goto yy813;
}
}
-#line 2409 "Zend/zend_language_scanner.l"
+#line 2410 "Zend/zend_language_scanner.l"
}
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index 093d7de9aa..9dc075104c 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -1156,7 +1156,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
}
<ST_IN_SCRIPTING>"yield"{WHITESPACE}"from"[^a-zA-Z0-9_\x80-\xff] {
- yyless(--yyleng);
+ yyless(yyleng - 1);
HANDLE_NEWLINES(yytext, yyleng);
RETURN_TOKEN(T_YIELD_FROM);
}