From 313fbf57af1a2472659396ffe134e2309116d914 Mon Sep 17 00:00:00 2001 From: Jonathan Oddy Date: Tue, 28 May 2013 14:03:41 +0100 Subject: [PATCH 1/2] Fixes #64936 : doc comments picked up from previous scanner run Under some circumstances it was possible for doc comments to be associated with the wrong thing, as the doc_comment compiler global was carried over between scanner runs. This patch adds the doc_comment (and doc_comment_len) to zend_lex_state, so they're saved/restored when changing contexts, and then resets them whenever we start scanning a new file/string. --- Zend/zend_language_scanner.c | 699 +++++++++++++++-------------- Zend/zend_language_scanner.h | 3 + Zend/zend_language_scanner.l | 11 + ext/reflection/tests/bug64936.inc | 6 + ext/reflection/tests/bug64936.phpt | 34 ++ 5 files changed, 409 insertions(+), 344 deletions(-) create mode 100644 ext/reflection/tests/bug64936.inc create mode 100644 ext/reflection/tests/bug64936.phpt diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c index ee9139432052..c257913a4048 100644 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@ -226,6 +226,9 @@ ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC) lex_state->input_filter = SCNG(input_filter); lex_state->output_filter = SCNG(output_filter); lex_state->script_encoding = SCNG(script_encoding); + + lex_state->doc_comment = CG(doc_comment); + lex_state->doc_comment_len = CG(doc_comment_len); } ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) @@ -260,6 +263,9 @@ ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) SCNG(input_filter) = lex_state->input_filter; SCNG(output_filter) = lex_state->output_filter; SCNG(script_encoding) = lex_state->script_encoding; + + CG(doc_comment) = lex_state->doc_comment; + CG(doc_comment_len) = lex_state->doc_comment_len; } ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC) @@ -543,6 +549,8 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC) CG(zend_lineno) = 1; } + RESET_DOC_COMMENT(); + CG(increment_lineno) = 0; return SUCCESS; } @@ -693,6 +701,9 @@ ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_D zend_set_compiled_filename(filename TSRMLS_CC); CG(zend_lineno) = 1; CG(increment_lineno) = 0; + + RESET_DOC_COMMENT(); + return SUCCESS; } @@ -1002,7 +1013,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yymore_restart: -#line 1006 "Zend/zend_language_scanner.c" +#line 1017 "Zend/zend_language_scanner.c" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -1101,7 +1112,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1803 "Zend/zend_language_scanner.l" +#line 1814 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1161,7 +1172,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_INLINE_HTML; } -#line 1165 "Zend/zend_language_scanner.c" +#line 1176 "Zend/zend_language_scanner.c" yy4: YYDEBUG(4, *YYCURSOR); yych = *++YYCURSOR; @@ -1179,7 +1190,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy6: YYDEBUG(6, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1791 "Zend/zend_language_scanner.l" +#line 1802 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1191,14 +1202,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1195 "Zend/zend_language_scanner.c" +#line 1206 "Zend/zend_language_scanner.c" yy7: YYDEBUG(7, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy43; YYDEBUG(8, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1768 "Zend/zend_language_scanner.l" +#line 1779 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1210,7 +1221,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1214 "Zend/zend_language_scanner.c" +#line 1225 "Zend/zend_language_scanner.c" yy9: YYDEBUG(9, *YYCURSOR); yych = *++YYCURSOR; @@ -1396,7 +1407,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(38, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1728 "Zend/zend_language_scanner.l" +#line 1739 "Zend/zend_language_scanner.l" { YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1)); @@ -1413,7 +1424,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1417 "Zend/zend_language_scanner.c" +#line 1428 "Zend/zend_language_scanner.c" yy39: YYDEBUG(39, *YYCURSOR); yych = *++YYCURSOR; @@ -1440,7 +1451,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(44, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1746 "Zend/zend_language_scanner.l" +#line 1757 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1452,13 +1463,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1456 "Zend/zend_language_scanner.c" +#line 1467 "Zend/zend_language_scanner.c" yy45: YYDEBUG(45, *YYCURSOR); ++YYCURSOR; YYDEBUG(46, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1759 "Zend/zend_language_scanner.l" +#line 1770 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1466,7 +1477,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG_WITH_ECHO; } -#line 1470 "Zend/zend_language_scanner.c" +#line 1481 "Zend/zend_language_scanner.c" yy47: YYDEBUG(47, *YYCURSOR); yych = *++YYCURSOR; @@ -1493,7 +1504,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy51: YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1781 "Zend/zend_language_scanner.l" +#line 1792 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1502,7 +1513,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1506 "Zend/zend_language_scanner.c" +#line 1517 "Zend/zend_language_scanner.c" yy52: YYDEBUG(52, *YYCURSOR); ++YYCURSOR; @@ -1573,7 +1584,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy56: YYDEBUG(56, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2254 "Zend/zend_language_scanner.l" +#line 2265 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1614,7 +1625,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1618 "Zend/zend_language_scanner.c" +#line 1629 "Zend/zend_language_scanner.c" yy57: YYDEBUG(57, *YYCURSOR); yych = *++YYCURSOR; @@ -1625,12 +1636,12 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(59, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2198 "Zend/zend_language_scanner.l" +#line 2209 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; } -#line 1634 "Zend/zend_language_scanner.c" +#line 1645 "Zend/zend_language_scanner.c" yy60: YYDEBUG(60, *YYCURSOR); yych = *++YYCURSOR; @@ -1640,14 +1651,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(62, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2185 "Zend/zend_language_scanner.l" +#line 2196 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1651 "Zend/zend_language_scanner.c" +#line 1662 "Zend/zend_language_scanner.c" yy63: YYDEBUG(63, *YYCURSOR); yyaccept = 0; @@ -1663,24 +1674,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1885 "Zend/zend_language_scanner.l" +#line 1896 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1673 "Zend/zend_language_scanner.c" +#line 1684 "Zend/zend_language_scanner.c" yy66: YYDEBUG(66, *YYCURSOR); ++YYCURSOR; YYDEBUG(67, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1472 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1684 "Zend/zend_language_scanner.c" +#line 1695 "Zend/zend_language_scanner.c" yy68: YYDEBUG(68, *YYCURSOR); yych = *++YYCURSOR; @@ -1694,7 +1705,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(71, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1877 "Zend/zend_language_scanner.l" +#line 1888 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1702,7 +1713,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1706 "Zend/zend_language_scanner.c" +#line 1717 "Zend/zend_language_scanner.c" yy72: YYDEBUG(72, *YYCURSOR); yych = *++YYCURSOR; @@ -1720,7 +1731,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(74, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1867 "Zend/zend_language_scanner.l" +#line 1878 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1728,7 +1739,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1732 "Zend/zend_language_scanner.c" +#line 1743 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOUBLE_QUOTES: @@ -1796,7 +1807,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy78: YYDEBUG(78, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2204 "Zend/zend_language_scanner.l" +#line 2215 "Zend/zend_language_scanner.l" { if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; @@ -1845,7 +1856,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1849 "Zend/zend_language_scanner.c" +#line 1860 "Zend/zend_language_scanner.c" yy79: YYDEBUG(79, *YYCURSOR); yych = *++YYCURSOR; @@ -1856,12 +1867,12 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2193 "Zend/zend_language_scanner.l" +#line 2204 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; } -#line 1865 "Zend/zend_language_scanner.c" +#line 1876 "Zend/zend_language_scanner.c" yy82: YYDEBUG(82, *YYCURSOR); yych = *++YYCURSOR; @@ -1871,14 +1882,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2185 "Zend/zend_language_scanner.l" +#line 2196 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1882 "Zend/zend_language_scanner.c" +#line 1893 "Zend/zend_language_scanner.c" yy85: YYDEBUG(85, *YYCURSOR); yyaccept = 0; @@ -1894,24 +1905,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy87: YYDEBUG(87, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1885 "Zend/zend_language_scanner.l" +#line 1896 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1904 "Zend/zend_language_scanner.c" +#line 1915 "Zend/zend_language_scanner.c" yy88: YYDEBUG(88, *YYCURSOR); ++YYCURSOR; YYDEBUG(89, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1472 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1915 "Zend/zend_language_scanner.c" +#line 1926 "Zend/zend_language_scanner.c" yy90: YYDEBUG(90, *YYCURSOR); yych = *++YYCURSOR; @@ -1925,7 +1936,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(93, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1877 "Zend/zend_language_scanner.l" +#line 1888 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1933,7 +1944,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1937 "Zend/zend_language_scanner.c" +#line 1948 "Zend/zend_language_scanner.c" yy94: YYDEBUG(94, *YYCURSOR); yych = *++YYCURSOR; @@ -1951,7 +1962,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1867 "Zend/zend_language_scanner.l" +#line 1878 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1959,7 +1970,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1963 "Zend/zend_language_scanner.c" +#line 1974 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_END_HEREDOC: @@ -1970,7 +1981,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(100, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2171 "Zend/zend_language_scanner.l" +#line 2182 "Zend/zend_language_scanner.l" { zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack)); @@ -1983,7 +1994,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_END_HEREDOC; } -#line 1987 "Zend/zend_language_scanner.c" +#line 1998 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_HEREDOC: { @@ -2045,7 +2056,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy104: YYDEBUG(104, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2296 "Zend/zend_language_scanner.l" +#line 2307 "Zend/zend_language_scanner.l" { int newline = 0; @@ -2118,7 +2129,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0 TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 2122 "Zend/zend_language_scanner.c" +#line 2133 "Zend/zend_language_scanner.c" yy105: YYDEBUG(105, *YYCURSOR); yych = *++YYCURSOR; @@ -2133,14 +2144,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(108, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2185 "Zend/zend_language_scanner.l" +#line 2196 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 2144 "Zend/zend_language_scanner.c" +#line 2155 "Zend/zend_language_scanner.c" yy109: YYDEBUG(109, *YYCURSOR); yyaccept = 0; @@ -2156,24 +2167,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy111: YYDEBUG(111, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1885 "Zend/zend_language_scanner.l" +#line 1896 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2166 "Zend/zend_language_scanner.c" +#line 2177 "Zend/zend_language_scanner.c" yy112: YYDEBUG(112, *YYCURSOR); ++YYCURSOR; YYDEBUG(113, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1472 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 2177 "Zend/zend_language_scanner.c" +#line 2188 "Zend/zend_language_scanner.c" yy114: YYDEBUG(114, *YYCURSOR); yych = *++YYCURSOR; @@ -2187,7 +2198,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1877 "Zend/zend_language_scanner.l" +#line 1888 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -2195,7 +2206,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2199 "Zend/zend_language_scanner.c" +#line 2210 "Zend/zend_language_scanner.c" yy118: YYDEBUG(118, *YYCURSOR); yych = *++YYCURSOR; @@ -2213,7 +2224,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1867 "Zend/zend_language_scanner.l" +#line 1878 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -2221,7 +2232,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2225 "Zend/zend_language_scanner.c" +#line 2236 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_IN_SCRIPTING: @@ -2404,13 +2415,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy124: YYDEBUG(124, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1908 "Zend/zend_language_scanner.l" +#line 1919 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 2414 "Zend/zend_language_scanner.c" +#line 2425 "Zend/zend_language_scanner.c" yy125: YYDEBUG(125, *YYCURSOR); yych = *++YYCURSOR; @@ -2642,11 +2653,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy139: YYDEBUG(139, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1450 "Zend/zend_language_scanner.l" +#line 1461 "Zend/zend_language_scanner.l" { return yytext[0]; } -#line 2650 "Zend/zend_language_scanner.c" +#line 2661 "Zend/zend_language_scanner.c" yy140: YYDEBUG(140, *YYCURSOR); ++YYCURSOR; @@ -2655,7 +2666,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy141: YYDEBUG(141, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1181 "Zend/zend_language_scanner.l" +#line 1192 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -2663,7 +2674,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 2667 "Zend/zend_language_scanner.c" +#line 2678 "Zend/zend_language_scanner.c" yy142: YYDEBUG(142, *YYCURSOR); yych = *++YYCURSOR; @@ -2674,11 +2685,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(144, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1210 "Zend/zend_language_scanner.l" +#line 1221 "Zend/zend_language_scanner.l" { return T_NS_SEPARATOR; } -#line 2682 "Zend/zend_language_scanner.c" +#line 2693 "Zend/zend_language_scanner.c" yy145: YYDEBUG(145, *YYCURSOR); yych = *++YYCURSOR; @@ -2906,18 +2917,18 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(169, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1455 "Zend/zend_language_scanner.l" +#line 1466 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } -#line 2915 "Zend/zend_language_scanner.c" +#line 2926 "Zend/zend_language_scanner.c" yy170: YYDEBUG(170, *YYCURSOR); ++YYCURSOR; YYDEBUG(171, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1467 "Zend/zend_language_scanner.l" +#line 1478 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); if (!zend_stack_is_empty(&SCNG(state_stack))) { @@ -2925,7 +2936,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return '}'; } -#line 2929 "Zend/zend_language_scanner.c" +#line 2940 "Zend/zend_language_scanner.c" yy172: YYDEBUG(172, *YYCURSOR); yyaccept = 2; @@ -2953,7 +2964,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy173: YYDEBUG(173, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1518 "Zend/zend_language_scanner.l" +#line 1529 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ zendlval->value.lval = strtol(yytext, NULL, 0); @@ -2974,7 +2985,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_LONG; return T_LNUMBER; } -#line 2978 "Zend/zend_language_scanner.c" +#line 2989 "Zend/zend_language_scanner.c" yy174: YYDEBUG(174, *YYCURSOR); yyaccept = 2; @@ -3002,7 +3013,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy177: YYDEBUG(177, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1915 "Zend/zend_language_scanner.l" +#line 1926 "Zend/zend_language_scanner.l" { while (YYCURSOR < YYLIMIT) { switch (*YYCURSOR++) { @@ -3036,14 +3047,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_COMMENT; } -#line 3040 "Zend/zend_language_scanner.c" +#line 3051 "Zend/zend_language_scanner.c" yy178: YYDEBUG(178, *YYCURSOR); ++YYCURSOR; yy179: YYDEBUG(179, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2006 "Zend/zend_language_scanner.l" +#line 2017 "Zend/zend_language_scanner.l" { register char *s, *t; char *end; @@ -3111,14 +3122,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_CONSTANT_ENCAPSED_STRING; } -#line 3115 "Zend/zend_language_scanner.c" +#line 3126 "Zend/zend_language_scanner.c" yy180: YYDEBUG(180, *YYCURSOR); ++YYCURSOR; yy181: YYDEBUG(181, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2075 "Zend/zend_language_scanner.l" +#line 2086 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '"') ? 1 : 0; @@ -3159,24 +3170,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_DOUBLE_QUOTES); return '"'; } -#line 3163 "Zend/zend_language_scanner.c" +#line 3174 "Zend/zend_language_scanner.c" yy182: YYDEBUG(182, *YYCURSOR); ++YYCURSOR; YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2165 "Zend/zend_language_scanner.l" +#line 2176 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } -#line 3174 "Zend/zend_language_scanner.c" +#line 3185 "Zend/zend_language_scanner.c" yy184: YYDEBUG(184, *YYCURSOR); ++YYCURSOR; YYDEBUG(185, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2428 "Zend/zend_language_scanner.l" +#line 2439 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -3185,7 +3196,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 3189 "Zend/zend_language_scanner.c" +#line 3200 "Zend/zend_language_scanner.c" yy186: YYDEBUG(186, *YYCURSOR); ++YYCURSOR; @@ -3212,13 +3223,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy190: YYDEBUG(190, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1583 "Zend/zend_language_scanner.l" +#line 1594 "Zend/zend_language_scanner.l" { zendlval->value.dval = zend_strtod(yytext, NULL); zendlval->type = IS_DOUBLE; return T_DNUMBER; } -#line 3222 "Zend/zend_language_scanner.c" +#line 3233 "Zend/zend_language_scanner.c" yy191: YYDEBUG(191, *YYCURSOR); yyaccept = 2; @@ -3310,7 +3321,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(202, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1493 "Zend/zend_language_scanner.l" +#line 1504 "Zend/zend_language_scanner.l" { char *bin = yytext + 2; /* Skip "0b" */ int len = yyleng - 2; @@ -3335,7 +3346,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_DNUMBER; } } -#line 3339 "Zend/zend_language_scanner.c" +#line 3350 "Zend/zend_language_scanner.c" yy203: YYDEBUG(203, *YYCURSOR); ++YYCURSOR; @@ -3347,7 +3358,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(205, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1539 "Zend/zend_language_scanner.l" +#line 1550 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@ -3372,7 +3383,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_DNUMBER; } } -#line 3376 "Zend/zend_language_scanner.c" +#line 3387 "Zend/zend_language_scanner.c" yy206: YYDEBUG(206, *YYCURSOR); ++YYCURSOR; @@ -3381,7 +3392,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy207: YYDEBUG(207, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1983 "Zend/zend_language_scanner.l" +#line 1994 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -3389,7 +3400,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } -#line 3393 "Zend/zend_language_scanner.c" +#line 3404 "Zend/zend_language_scanner.c" yy208: YYDEBUG(208, *YYCURSOR); yych = *++YYCURSOR; @@ -3423,13 +3434,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy212: YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1885 "Zend/zend_language_scanner.l" +#line 1896 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 3433 "Zend/zend_language_scanner.c" +#line 3444 "Zend/zend_language_scanner.c" yy213: YYDEBUG(213, *YYCURSOR); yych = *++YYCURSOR; @@ -3443,11 +3454,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(215, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1438 "Zend/zend_language_scanner.l" +#line 1449 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } -#line 3451 "Zend/zend_language_scanner.c" +#line 3462 "Zend/zend_language_scanner.c" yy216: YYDEBUG(216, *YYCURSOR); ++YYCURSOR; @@ -3456,61 +3467,61 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(217, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1430 "Zend/zend_language_scanner.l" +#line 1441 "Zend/zend_language_scanner.l" { return T_LOGICAL_OR; } -#line 3464 "Zend/zend_language_scanner.c" +#line 3475 "Zend/zend_language_scanner.c" yy218: YYDEBUG(218, *YYCURSOR); ++YYCURSOR; YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1418 "Zend/zend_language_scanner.l" +#line 1429 "Zend/zend_language_scanner.l" { return T_XOR_EQUAL; } -#line 3474 "Zend/zend_language_scanner.c" +#line 3485 "Zend/zend_language_scanner.c" yy220: YYDEBUG(220, *YYCURSOR); ++YYCURSOR; YYDEBUG(221, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1422 "Zend/zend_language_scanner.l" +#line 1433 "Zend/zend_language_scanner.l" { return T_BOOLEAN_OR; } -#line 3484 "Zend/zend_language_scanner.c" +#line 3495 "Zend/zend_language_scanner.c" yy222: YYDEBUG(222, *YYCURSOR); ++YYCURSOR; YYDEBUG(223, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1414 "Zend/zend_language_scanner.l" +#line 1425 "Zend/zend_language_scanner.l" { return T_OR_EQUAL; } -#line 3494 "Zend/zend_language_scanner.c" +#line 3505 "Zend/zend_language_scanner.c" yy224: YYDEBUG(224, *YYCURSOR); ++YYCURSOR; YYDEBUG(225, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1426 "Zend/zend_language_scanner.l" +#line 1437 "Zend/zend_language_scanner.l" { return T_BOOLEAN_AND; } -#line 3504 "Zend/zend_language_scanner.c" +#line 3515 "Zend/zend_language_scanner.c" yy226: YYDEBUG(226, *YYCURSOR); ++YYCURSOR; YYDEBUG(227, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1410 "Zend/zend_language_scanner.l" +#line 1421 "Zend/zend_language_scanner.l" { return T_AND_EQUAL; } -#line 3514 "Zend/zend_language_scanner.c" +#line 3525 "Zend/zend_language_scanner.c" yy228: YYDEBUG(228, *YYCURSOR); ++YYCURSOR; @@ -3519,7 +3530,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy229: YYDEBUG(229, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1992 "Zend/zend_language_scanner.l" +#line 2003 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { BEGIN(INITIAL); @@ -3532,17 +3543,17 @@ int lex_scan(zval *zendlval TSRMLS_DC) return yytext[0]; } } -#line 3536 "Zend/zend_language_scanner.c" +#line 3547 "Zend/zend_language_scanner.c" yy230: YYDEBUG(230, *YYCURSOR); ++YYCURSOR; YYDEBUG(231, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1398 "Zend/zend_language_scanner.l" +#line 1409 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } -#line 3546 "Zend/zend_language_scanner.c" +#line 3557 "Zend/zend_language_scanner.c" yy232: YYDEBUG(232, *YYCURSOR); yych = *++YYCURSOR; @@ -3573,11 +3584,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(237, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1394 "Zend/zend_language_scanner.l" +#line 1405 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } -#line 3581 "Zend/zend_language_scanner.c" +#line 3592 "Zend/zend_language_scanner.c" yy238: YYDEBUG(238, *YYCURSOR); yyaccept = 4; @@ -3586,7 +3597,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy239: YYDEBUG(239, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1949 "Zend/zend_language_scanner.l" +#line 1960 "Zend/zend_language_scanner.l" { int doc_com; @@ -3620,7 +3631,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_COMMENT; } -#line 3624 "Zend/zend_language_scanner.c" +#line 3635 "Zend/zend_language_scanner.c" yy240: YYDEBUG(240, *YYCURSOR); yych = *++YYCURSOR; @@ -3630,11 +3641,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(242, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1390 "Zend/zend_language_scanner.l" +#line 1401 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } -#line 3638 "Zend/zend_language_scanner.c" +#line 3649 "Zend/zend_language_scanner.c" yy243: YYDEBUG(243, *YYCURSOR); yych = *++YYCURSOR; @@ -3657,42 +3668,42 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(247, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1386 "Zend/zend_language_scanner.l" +#line 1397 "Zend/zend_language_scanner.l" { return T_MUL_EQUAL; } -#line 3665 "Zend/zend_language_scanner.c" +#line 3676 "Zend/zend_language_scanner.c" yy248: YYDEBUG(248, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy252; YYDEBUG(249, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1446 "Zend/zend_language_scanner.l" +#line 1457 "Zend/zend_language_scanner.l" { return T_SR; } -#line 3676 "Zend/zend_language_scanner.c" +#line 3687 "Zend/zend_language_scanner.c" yy250: YYDEBUG(250, *YYCURSOR); ++YYCURSOR; YYDEBUG(251, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1374 "Zend/zend_language_scanner.l" +#line 1385 "Zend/zend_language_scanner.l" { return T_IS_GREATER_OR_EQUAL; } -#line 3686 "Zend/zend_language_scanner.c" +#line 3697 "Zend/zend_language_scanner.c" yy252: YYDEBUG(252, *YYCURSOR); ++YYCURSOR; YYDEBUG(253, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1406 "Zend/zend_language_scanner.l" +#line 1417 "Zend/zend_language_scanner.l" { return T_SR_EQUAL; } -#line 3696 "Zend/zend_language_scanner.c" +#line 3707 "Zend/zend_language_scanner.c" yy254: YYDEBUG(254, *YYCURSOR); yyaccept = 5; @@ -3703,11 +3714,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy255: YYDEBUG(255, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1442 "Zend/zend_language_scanner.l" +#line 1453 "Zend/zend_language_scanner.l" { return T_SL; } -#line 3711 "Zend/zend_language_scanner.c" +#line 3722 "Zend/zend_language_scanner.c" yy256: YYDEBUG(256, *YYCURSOR); yych = *++YYCURSOR; @@ -3719,22 +3730,22 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(258, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1370 "Zend/zend_language_scanner.l" +#line 1381 "Zend/zend_language_scanner.l" { return T_IS_SMALLER_OR_EQUAL; } -#line 3727 "Zend/zend_language_scanner.c" +#line 3738 "Zend/zend_language_scanner.c" yy259: YYDEBUG(259, *YYCURSOR); ++YYCURSOR; yy260: YYDEBUG(260, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1366 "Zend/zend_language_scanner.l" +#line 1377 "Zend/zend_language_scanner.l" { return T_IS_NOT_EQUAL; } -#line 3738 "Zend/zend_language_scanner.c" +#line 3749 "Zend/zend_language_scanner.c" yy261: YYDEBUG(261, *YYCURSOR); yych = *++YYCURSOR; @@ -3785,11 +3796,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(269, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1402 "Zend/zend_language_scanner.l" +#line 1413 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } -#line 3793 "Zend/zend_language_scanner.c" +#line 3804 "Zend/zend_language_scanner.c" yy270: YYDEBUG(270, *YYCURSOR); ++YYCURSOR; @@ -3894,7 +3905,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy280: YYDEBUG(280, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2117 "Zend/zend_language_scanner.l" +#line 2128 "Zend/zend_language_scanner.l" { char *s; int bprefix = (yytext[0] != '<') ? 1 : 0; @@ -3941,7 +3952,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_START_HEREDOC; } -#line 3945 "Zend/zend_language_scanner.c" +#line 3956 "Zend/zend_language_scanner.c" yy281: YYDEBUG(281, *YYCURSOR); yych = *++YYCURSOR; @@ -3981,31 +3992,31 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(286, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1358 "Zend/zend_language_scanner.l" +#line 1369 "Zend/zend_language_scanner.l" { return T_IS_NOT_IDENTICAL; } -#line 3989 "Zend/zend_language_scanner.c" +#line 4000 "Zend/zend_language_scanner.c" yy287: YYDEBUG(287, *YYCURSOR); ++YYCURSOR; YYDEBUG(288, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1378 "Zend/zend_language_scanner.l" +#line 1389 "Zend/zend_language_scanner.l" { return T_PLUS_EQUAL; } -#line 3999 "Zend/zend_language_scanner.c" +#line 4010 "Zend/zend_language_scanner.c" yy289: YYDEBUG(289, *YYCURSOR); ++YYCURSOR; YYDEBUG(290, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1346 "Zend/zend_language_scanner.l" +#line 1357 "Zend/zend_language_scanner.l" { return T_INC; } -#line 4009 "Zend/zend_language_scanner.c" +#line 4020 "Zend/zend_language_scanner.c" yy291: YYDEBUG(291, *YYCURSOR); yych = *++YYCURSOR; @@ -4024,42 +4035,42 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(294, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1334 "Zend/zend_language_scanner.l" +#line 1345 "Zend/zend_language_scanner.l" { return T_LIST; } -#line 4032 "Zend/zend_language_scanner.c" +#line 4043 "Zend/zend_language_scanner.c" yy295: YYDEBUG(295, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy299; YYDEBUG(296, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1362 "Zend/zend_language_scanner.l" +#line 1373 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } -#line 4043 "Zend/zend_language_scanner.c" +#line 4054 "Zend/zend_language_scanner.c" yy297: YYDEBUG(297, *YYCURSOR); ++YYCURSOR; YYDEBUG(298, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1330 "Zend/zend_language_scanner.l" +#line 1341 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } -#line 4053 "Zend/zend_language_scanner.c" +#line 4064 "Zend/zend_language_scanner.c" yy299: YYDEBUG(299, *YYCURSOR); ++YYCURSOR; YYDEBUG(300, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1354 "Zend/zend_language_scanner.l" +#line 1365 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } -#line 4063 "Zend/zend_language_scanner.c" +#line 4074 "Zend/zend_language_scanner.c" yy301: YYDEBUG(301, *YYCURSOR); yych = *++YYCURSOR; @@ -4189,7 +4200,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(320, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1718 "Zend/zend_language_scanner.l" +#line 1729 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@ -4199,7 +4210,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_NS_C; } -#line 4203 "Zend/zend_language_scanner.c" +#line 4214 "Zend/zend_language_scanner.c" yy321: YYDEBUG(321, *YYCURSOR); yych = *++YYCURSOR; @@ -4219,7 +4230,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(325, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1691 "Zend/zend_language_scanner.l" +#line 1702 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@ -4246,7 +4257,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_DIR; } -#line 4250 "Zend/zend_language_scanner.c" +#line 4261 "Zend/zend_language_scanner.c" yy326: YYDEBUG(326, *YYCURSOR); yych = *++YYCURSOR; @@ -4271,13 +4282,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(331, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1673 "Zend/zend_language_scanner.l" +#line 1684 "Zend/zend_language_scanner.l" { zendlval->value.lval = CG(zend_lineno); zendlval->type = IS_LONG; return T_LINE; } -#line 4281 "Zend/zend_language_scanner.c" +#line 4292 "Zend/zend_language_scanner.c" yy332: YYDEBUG(332, *YYCURSOR); yych = *++YYCURSOR; @@ -4312,7 +4323,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(339, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1652 "Zend/zend_language_scanner.l" +#line 1663 "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; @@ -4333,7 +4344,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_METHOD_C; } -#line 4337 "Zend/zend_language_scanner.c" +#line 4348 "Zend/zend_language_scanner.c" yy340: YYDEBUG(340, *YYCURSOR); yych = *++YYCURSOR; @@ -4384,7 +4395,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(350, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1636 "Zend/zend_language_scanner.l" +#line 1647 "Zend/zend_language_scanner.l" { const char *func_name = NULL; @@ -4400,7 +4411,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_FUNC_C; } -#line 4404 "Zend/zend_language_scanner.c" +#line 4415 "Zend/zend_language_scanner.c" yy351: YYDEBUG(351, *YYCURSOR); yych = *++YYCURSOR; @@ -4420,7 +4431,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(355, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1679 "Zend/zend_language_scanner.l" +#line 1690 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@ -4432,7 +4443,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_FILE; } -#line 4436 "Zend/zend_language_scanner.c" +#line 4447 "Zend/zend_language_scanner.c" yy356: YYDEBUG(356, *YYCURSOR); yych = *++YYCURSOR; @@ -4462,7 +4473,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(362, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1616 "Zend/zend_language_scanner.l" +#line 1627 "Zend/zend_language_scanner.l" { const char *trait_name = NULL; @@ -4482,7 +4493,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_TRAIT_C; } -#line 4486 "Zend/zend_language_scanner.c" +#line 4497 "Zend/zend_language_scanner.c" yy363: YYDEBUG(363, *YYCURSOR); yych = *++YYCURSOR; @@ -4512,7 +4523,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(369, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1589 "Zend/zend_language_scanner.l" +#line 1600 "Zend/zend_language_scanner.l" { const char *class_name = NULL; @@ -4539,7 +4550,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_CLASS_C; } -#line 4543 "Zend/zend_language_scanner.c" +#line 4554 "Zend/zend_language_scanner.c" yy370: YYDEBUG(370, *YYCURSOR); yych = *++YYCURSOR; @@ -4601,11 +4612,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(382, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1298 "Zend/zend_language_scanner.l" +#line 1309 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } -#line 4609 "Zend/zend_language_scanner.c" +#line 4620 "Zend/zend_language_scanner.c" yy383: YYDEBUG(383, *YYCURSOR); yych = *++YYCURSOR; @@ -4625,11 +4636,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(386, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1278 "Zend/zend_language_scanner.l" +#line 1289 "Zend/zend_language_scanner.l" { return T_USE; } -#line 4633 "Zend/zend_language_scanner.c" +#line 4644 "Zend/zend_language_scanner.c" yy387: YYDEBUG(387, *YYCURSOR); yych = *++YYCURSOR; @@ -4648,11 +4659,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(390, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1326 "Zend/zend_language_scanner.l" +#line 1337 "Zend/zend_language_scanner.l" { return T_UNSET; } -#line 4656 "Zend/zend_language_scanner.c" +#line 4667 "Zend/zend_language_scanner.c" yy391: YYDEBUG(391, *YYCURSOR); ++YYCURSOR; @@ -4824,11 +4835,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(408, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1226 "Zend/zend_language_scanner.l" +#line 1237 "Zend/zend_language_scanner.l" { return T_INT_CAST; } -#line 4832 "Zend/zend_language_scanner.c" +#line 4843 "Zend/zend_language_scanner.c" yy409: YYDEBUG(409, *YYCURSOR); yych = *++YYCURSOR; @@ -4872,11 +4883,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(417, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1230 "Zend/zend_language_scanner.l" +#line 1241 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } -#line 4880 "Zend/zend_language_scanner.c" +#line 4891 "Zend/zend_language_scanner.c" yy418: YYDEBUG(418, *YYCURSOR); yych = *++YYCURSOR; @@ -4946,11 +4957,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(431, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1234 "Zend/zend_language_scanner.l" +#line 1245 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } -#line 4954 "Zend/zend_language_scanner.c" +#line 4965 "Zend/zend_language_scanner.c" yy432: YYDEBUG(432, *YYCURSOR); yych = *++YYCURSOR; @@ -4983,11 +4994,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(438, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1238 "Zend/zend_language_scanner.l" +#line 1249 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } -#line 4991 "Zend/zend_language_scanner.c" +#line 5002 "Zend/zend_language_scanner.c" yy439: YYDEBUG(439, *YYCURSOR); yych = *++YYCURSOR; @@ -5025,11 +5036,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(446, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1242 "Zend/zend_language_scanner.l" +#line 1253 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } -#line 5033 "Zend/zend_language_scanner.c" +#line 5044 "Zend/zend_language_scanner.c" yy447: YYDEBUG(447, *YYCURSOR); yych = *++YYCURSOR; @@ -5070,11 +5081,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(454, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1246 "Zend/zend_language_scanner.l" +#line 1257 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } -#line 5078 "Zend/zend_language_scanner.c" +#line 5089 "Zend/zend_language_scanner.c" yy455: YYDEBUG(455, *YYCURSOR); yych = *++YYCURSOR; @@ -5134,11 +5145,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(466, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1250 "Zend/zend_language_scanner.l" +#line 1261 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } -#line 5142 "Zend/zend_language_scanner.c" +#line 5153 "Zend/zend_language_scanner.c" yy467: YYDEBUG(467, *YYCURSOR); yych = *++YYCURSOR; @@ -5152,11 +5163,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(469, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1222 "Zend/zend_language_scanner.l" +#line 1233 "Zend/zend_language_scanner.l" { return T_VAR; } -#line 5160 "Zend/zend_language_scanner.c" +#line 5171 "Zend/zend_language_scanner.c" yy470: YYDEBUG(470, *YYCURSOR); yych = *++YYCURSOR; @@ -5176,11 +5187,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(473, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1214 "Zend/zend_language_scanner.l" +#line 1225 "Zend/zend_language_scanner.l" { return T_NEW; } -#line 5184 "Zend/zend_language_scanner.c" +#line 5195 "Zend/zend_language_scanner.c" yy474: YYDEBUG(474, *YYCURSOR); yych = *++YYCURSOR; @@ -5219,21 +5230,21 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(481, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1274 "Zend/zend_language_scanner.l" +#line 1285 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } -#line 5227 "Zend/zend_language_scanner.c" +#line 5238 "Zend/zend_language_scanner.c" yy482: YYDEBUG(482, *YYCURSOR); ++YYCURSOR; YYDEBUG(483, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1206 "Zend/zend_language_scanner.l" +#line 1217 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } -#line 5237 "Zend/zend_language_scanner.c" +#line 5248 "Zend/zend_language_scanner.c" yy484: YYDEBUG(484, *YYCURSOR); ++YYCURSOR; @@ -5255,32 +5266,32 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1382 "Zend/zend_language_scanner.l" +#line 1393 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } -#line 5263 "Zend/zend_language_scanner.c" +#line 5274 "Zend/zend_language_scanner.c" yy488: YYDEBUG(488, *YYCURSOR); ++YYCURSOR; YYDEBUG(489, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1350 "Zend/zend_language_scanner.l" +#line 1361 "Zend/zend_language_scanner.l" { return T_DEC; } -#line 5273 "Zend/zend_language_scanner.c" +#line 5284 "Zend/zend_language_scanner.c" yy490: YYDEBUG(490, *YYCURSOR); ++YYCURSOR; YYDEBUG(491, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1176 "Zend/zend_language_scanner.l" +#line 1187 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } -#line 5284 "Zend/zend_language_scanner.c" +#line 5295 "Zend/zend_language_scanner.c" yy492: YYDEBUG(492, *YYCURSOR); yych = *++YYCURSOR; @@ -5325,11 +5336,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(498, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1322 "Zend/zend_language_scanner.l" +#line 1333 "Zend/zend_language_scanner.l" { return T_PUBLIC; } -#line 5333 "Zend/zend_language_scanner.c" +#line 5344 "Zend/zend_language_scanner.c" yy499: YYDEBUG(499, *YYCURSOR); yych = *++YYCURSOR; @@ -5384,11 +5395,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(507, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1318 "Zend/zend_language_scanner.l" +#line 1329 "Zend/zend_language_scanner.l" { return T_PROTECTED; } -#line 5392 "Zend/zend_language_scanner.c" +#line 5403 "Zend/zend_language_scanner.c" yy508: YYDEBUG(508, *YYCURSOR); yych = *++YYCURSOR; @@ -5418,11 +5429,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(513, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1314 "Zend/zend_language_scanner.l" +#line 1325 "Zend/zend_language_scanner.l" { return T_PRIVATE; } -#line 5426 "Zend/zend_language_scanner.c" +#line 5437 "Zend/zend_language_scanner.c" yy514: YYDEBUG(514, *YYCURSOR); ++YYCURSOR; @@ -5431,11 +5442,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(515, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1152 "Zend/zend_language_scanner.l" +#line 1163 "Zend/zend_language_scanner.l" { return T_PRINT; } -#line 5439 "Zend/zend_language_scanner.c" +#line 5450 "Zend/zend_language_scanner.c" yy516: YYDEBUG(516, *YYCURSOR); yych = *++YYCURSOR; @@ -5460,11 +5471,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(520, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1144 "Zend/zend_language_scanner.l" +#line 1155 "Zend/zend_language_scanner.l" { return T_GOTO; } -#line 5468 "Zend/zend_language_scanner.c" +#line 5479 "Zend/zend_language_scanner.c" yy521: YYDEBUG(521, *YYCURSOR); yych = *++YYCURSOR; @@ -5488,11 +5499,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(525, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1286 "Zend/zend_language_scanner.l" +#line 1297 "Zend/zend_language_scanner.l" { return T_GLOBAL; } -#line 5496 "Zend/zend_language_scanner.c" +#line 5507 "Zend/zend_language_scanner.c" yy526: YYDEBUG(526, *YYCURSOR); yych = *++YYCURSOR; @@ -5529,11 +5540,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(533, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1136 "Zend/zend_language_scanner.l" +#line 1147 "Zend/zend_language_scanner.l" { return T_BREAK; } -#line 5537 "Zend/zend_language_scanner.c" +#line 5548 "Zend/zend_language_scanner.c" yy534: YYDEBUG(534, *YYCURSOR); yych = *++YYCURSOR; @@ -5573,11 +5584,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(541, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1120 "Zend/zend_language_scanner.l" +#line 1131 "Zend/zend_language_scanner.l" { return T_SWITCH; } -#line 5581 "Zend/zend_language_scanner.c" +#line 5592 "Zend/zend_language_scanner.c" yy542: YYDEBUG(542, *YYCURSOR); yych = *++YYCURSOR; @@ -5601,11 +5612,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(546, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1302 "Zend/zend_language_scanner.l" +#line 1313 "Zend/zend_language_scanner.l" { return T_STATIC; } -#line 5609 "Zend/zend_language_scanner.c" +#line 5620 "Zend/zend_language_scanner.c" yy547: YYDEBUG(547, *YYCURSOR); yych = *++YYCURSOR; @@ -5632,11 +5643,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(551, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1116 "Zend/zend_language_scanner.l" +#line 1127 "Zend/zend_language_scanner.l" { return T_AS; } -#line 5640 "Zend/zend_language_scanner.c" +#line 5651 "Zend/zend_language_scanner.c" yy552: YYDEBUG(552, *YYCURSOR); yych = *++YYCURSOR; @@ -5655,11 +5666,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(555, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1338 "Zend/zend_language_scanner.l" +#line 1349 "Zend/zend_language_scanner.l" { return T_ARRAY; } -#line 5663 "Zend/zend_language_scanner.c" +#line 5674 "Zend/zend_language_scanner.c" yy556: YYDEBUG(556, *YYCURSOR); ++YYCURSOR; @@ -5668,11 +5679,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(557, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1434 "Zend/zend_language_scanner.l" +#line 1445 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } -#line 5676 "Zend/zend_language_scanner.c" +#line 5687 "Zend/zend_language_scanner.c" yy558: YYDEBUG(558, *YYCURSOR); yych = *++YYCURSOR; @@ -5706,11 +5717,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(564, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1306 "Zend/zend_language_scanner.l" +#line 1317 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } -#line 5714 "Zend/zend_language_scanner.c" +#line 5725 "Zend/zend_language_scanner.c" yy565: YYDEBUG(565, *YYCURSOR); yych = *++YYCURSOR; @@ -5734,11 +5745,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(569, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1076 "Zend/zend_language_scanner.l" +#line 1087 "Zend/zend_language_scanner.l" { return T_WHILE; } -#line 5742 "Zend/zend_language_scanner.c" +#line 5753 "Zend/zend_language_scanner.c" yy570: YYDEBUG(570, *YYCURSOR); ++YYCURSOR; @@ -5747,11 +5758,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(571, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1060 "Zend/zend_language_scanner.l" +#line 1071 "Zend/zend_language_scanner.l" { return T_IF; } -#line 5755 "Zend/zend_language_scanner.c" +#line 5766 "Zend/zend_language_scanner.c" yy572: YYDEBUG(572, *YYCURSOR); yych = *++YYCURSOR; @@ -5803,11 +5814,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(578, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1290 "Zend/zend_language_scanner.l" +#line 1301 "Zend/zend_language_scanner.l" { return T_ISSET; } -#line 5811 "Zend/zend_language_scanner.c" +#line 5822 "Zend/zend_language_scanner.c" yy579: YYDEBUG(579, *YYCURSOR); yych = *++YYCURSOR; @@ -5861,11 +5872,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy586: YYDEBUG(586, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1258 "Zend/zend_language_scanner.l" +#line 1269 "Zend/zend_language_scanner.l" { return T_INCLUDE; } -#line 5869 "Zend/zend_language_scanner.c" +#line 5880 "Zend/zend_language_scanner.c" yy587: YYDEBUG(587, *YYCURSOR); yych = *++YYCURSOR; @@ -5894,11 +5905,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(592, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1262 "Zend/zend_language_scanner.l" +#line 1273 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } -#line 5902 "Zend/zend_language_scanner.c" +#line 5913 "Zend/zend_language_scanner.c" yy593: YYDEBUG(593, *YYCURSOR); yych = *++YYCURSOR; @@ -5932,11 +5943,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(599, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1160 "Zend/zend_language_scanner.l" +#line 1171 "Zend/zend_language_scanner.l" { return T_INTERFACE; } -#line 5940 "Zend/zend_language_scanner.c" +#line 5951 "Zend/zend_language_scanner.c" yy600: YYDEBUG(600, *YYCURSOR); yych = *++YYCURSOR; @@ -5986,11 +5997,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(607, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1282 "Zend/zend_language_scanner.l" +#line 1293 "Zend/zend_language_scanner.l" { return T_INSTEADOF; } -#line 5994 "Zend/zend_language_scanner.c" +#line 6005 "Zend/zend_language_scanner.c" yy608: YYDEBUG(608, *YYCURSOR); yych = *++YYCURSOR; @@ -6019,11 +6030,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(613, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1112 "Zend/zend_language_scanner.l" +#line 1123 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } -#line 6027 "Zend/zend_language_scanner.c" +#line 6038 "Zend/zend_language_scanner.c" yy614: YYDEBUG(614, *YYCURSOR); yych = *++YYCURSOR; @@ -6067,11 +6078,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(622, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1172 "Zend/zend_language_scanner.l" +#line 1183 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } -#line 6075 "Zend/zend_language_scanner.c" +#line 6086 "Zend/zend_language_scanner.c" yy623: YYDEBUG(623, *YYCURSOR); yych = *++YYCURSOR; @@ -6099,11 +6110,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(626, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1044 "Zend/zend_language_scanner.l" +#line 1055 "Zend/zend_language_scanner.l" { return T_TRY; } -#line 6107 "Zend/zend_language_scanner.c" +#line 6118 "Zend/zend_language_scanner.c" yy627: YYDEBUG(627, *YYCURSOR); yych = *++YYCURSOR; @@ -6122,11 +6133,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(630, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1164 "Zend/zend_language_scanner.l" +#line 1175 "Zend/zend_language_scanner.l" { return T_TRAIT; } -#line 6130 "Zend/zend_language_scanner.c" +#line 6141 "Zend/zend_language_scanner.c" yy631: YYDEBUG(631, *YYCURSOR); yych = *++YYCURSOR; @@ -6145,11 +6156,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(634, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1056 "Zend/zend_language_scanner.l" +#line 1067 "Zend/zend_language_scanner.l" { return T_THROW; } -#line 6153 "Zend/zend_language_scanner.c" +#line 6164 "Zend/zend_language_scanner.c" yy635: YYDEBUG(635, *YYCURSOR); yych = *++YYCURSOR; @@ -6173,11 +6184,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(639, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1040 "Zend/zend_language_scanner.l" +#line 1051 "Zend/zend_language_scanner.l" { return T_YIELD; } -#line 6181 "Zend/zend_language_scanner.c" +#line 6192 "Zend/zend_language_scanner.c" yy640: YYDEBUG(640, *YYCURSOR); yych = *++YYCURSOR; @@ -6238,11 +6249,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy647: YYDEBUG(647, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1266 "Zend/zend_language_scanner.l" +#line 1277 "Zend/zend_language_scanner.l" { return T_REQUIRE; } -#line 6246 "Zend/zend_language_scanner.c" +#line 6257 "Zend/zend_language_scanner.c" yy648: YYDEBUG(648, *YYCURSOR); yych = *++YYCURSOR; @@ -6271,11 +6282,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(653, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1270 "Zend/zend_language_scanner.l" +#line 1281 "Zend/zend_language_scanner.l" { return T_REQUIRE_ONCE; } -#line 6279 "Zend/zend_language_scanner.c" +#line 6290 "Zend/zend_language_scanner.c" yy654: YYDEBUG(654, *YYCURSOR); yych = *++YYCURSOR; @@ -6294,11 +6305,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(657, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1036 "Zend/zend_language_scanner.l" +#line 1047 "Zend/zend_language_scanner.l" { return T_RETURN; } -#line 6302 "Zend/zend_language_scanner.c" +#line 6313 "Zend/zend_language_scanner.c" yy658: YYDEBUG(658, *YYCURSOR); yych = *++YYCURSOR; @@ -6388,11 +6399,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(668, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1140 "Zend/zend_language_scanner.l" +#line 1151 "Zend/zend_language_scanner.l" { return T_CONTINUE; } -#line 6396 "Zend/zend_language_scanner.c" +#line 6407 "Zend/zend_language_scanner.c" yy669: YYDEBUG(669, *YYCURSOR); ++YYCURSOR; @@ -6401,11 +6412,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(670, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1032 "Zend/zend_language_scanner.l" +#line 1043 "Zend/zend_language_scanner.l" { return T_CONST; } -#line 6409 "Zend/zend_language_scanner.c" +#line 6420 "Zend/zend_language_scanner.c" yy671: YYDEBUG(671, *YYCURSOR); yych = *++YYCURSOR; @@ -6430,11 +6441,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(675, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1218 "Zend/zend_language_scanner.l" +#line 1229 "Zend/zend_language_scanner.l" { return T_CLONE; } -#line 6438 "Zend/zend_language_scanner.c" +#line 6449 "Zend/zend_language_scanner.c" yy676: YYDEBUG(676, *YYCURSOR); yych = *++YYCURSOR; @@ -6448,11 +6459,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(678, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1156 "Zend/zend_language_scanner.l" +#line 1167 "Zend/zend_language_scanner.l" { return T_CLASS; } -#line 6456 "Zend/zend_language_scanner.c" +#line 6467 "Zend/zend_language_scanner.c" yy679: YYDEBUG(679, *YYCURSOR); yych = *++YYCURSOR; @@ -6498,11 +6509,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(687, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1342 "Zend/zend_language_scanner.l" +#line 1353 "Zend/zend_language_scanner.l" { return T_CALLABLE; } -#line 6506 "Zend/zend_language_scanner.c" +#line 6517 "Zend/zend_language_scanner.c" yy688: YYDEBUG(688, *YYCURSOR); ++YYCURSOR; @@ -6511,11 +6522,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(689, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1128 "Zend/zend_language_scanner.l" +#line 1139 "Zend/zend_language_scanner.l" { return T_CASE; } -#line 6519 "Zend/zend_language_scanner.c" +#line 6530 "Zend/zend_language_scanner.c" yy690: YYDEBUG(690, *YYCURSOR); yych = *++YYCURSOR; @@ -6529,11 +6540,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(692, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1048 "Zend/zend_language_scanner.l" +#line 1059 "Zend/zend_language_scanner.l" { return T_CATCH; } -#line 6537 "Zend/zend_language_scanner.c" +#line 6548 "Zend/zend_language_scanner.c" yy693: YYDEBUG(693, *YYCURSOR); yych = *++YYCURSOR; @@ -6584,11 +6595,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(702, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1028 "Zend/zend_language_scanner.l" +#line 1039 "Zend/zend_language_scanner.l" { return T_FUNCTION; } -#line 6592 "Zend/zend_language_scanner.c" +#line 6603 "Zend/zend_language_scanner.c" yy703: YYDEBUG(703, *YYCURSOR); ++YYCURSOR; @@ -6612,11 +6623,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy704: YYDEBUG(704, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1088 "Zend/zend_language_scanner.l" +#line 1099 "Zend/zend_language_scanner.l" { return T_FOR; } -#line 6620 "Zend/zend_language_scanner.c" +#line 6631 "Zend/zend_language_scanner.c" yy705: YYDEBUG(705, *YYCURSOR); yych = *++YYCURSOR; @@ -6640,11 +6651,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(709, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1096 "Zend/zend_language_scanner.l" +#line 1107 "Zend/zend_language_scanner.l" { return T_FOREACH; } -#line 6648 "Zend/zend_language_scanner.c" +#line 6659 "Zend/zend_language_scanner.c" yy710: YYDEBUG(710, *YYCURSOR); yych = *++YYCURSOR; @@ -6678,11 +6689,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy713: YYDEBUG(713, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1310 "Zend/zend_language_scanner.l" +#line 1321 "Zend/zend_language_scanner.l" { return T_FINAL; } -#line 6686 "Zend/zend_language_scanner.c" +#line 6697 "Zend/zend_language_scanner.c" yy714: YYDEBUG(714, *YYCURSOR); yych = *++YYCURSOR; @@ -6696,11 +6707,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(716, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1052 "Zend/zend_language_scanner.l" +#line 1063 "Zend/zend_language_scanner.l" { return T_FINALLY; } -#line 6704 "Zend/zend_language_scanner.c" +#line 6715 "Zend/zend_language_scanner.c" yy717: YYDEBUG(717, *YYCURSOR); yych = *++YYCURSOR; @@ -6731,11 +6742,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(720, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1084 "Zend/zend_language_scanner.l" +#line 1095 "Zend/zend_language_scanner.l" { return T_DO; } -#line 6739 "Zend/zend_language_scanner.c" +#line 6750 "Zend/zend_language_scanner.c" yy721: YYDEBUG(721, *YYCURSOR); ++YYCURSOR; @@ -6744,11 +6755,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(722, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1024 "Zend/zend_language_scanner.l" +#line 1035 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 6752 "Zend/zend_language_scanner.c" +#line 6763 "Zend/zend_language_scanner.c" yy723: YYDEBUG(723, *YYCURSOR); yych = *++YYCURSOR; @@ -6783,11 +6794,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(729, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1132 "Zend/zend_language_scanner.l" +#line 1143 "Zend/zend_language_scanner.l" { return T_DEFAULT; } -#line 6791 "Zend/zend_language_scanner.c" +#line 6802 "Zend/zend_language_scanner.c" yy730: YYDEBUG(730, *YYCURSOR); yych = *++YYCURSOR; @@ -6811,11 +6822,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(734, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1104 "Zend/zend_language_scanner.l" +#line 1115 "Zend/zend_language_scanner.l" { return T_DECLARE; } -#line 6819 "Zend/zend_language_scanner.c" +#line 6830 "Zend/zend_language_scanner.c" yy735: YYDEBUG(735, *YYCURSOR); yych = *++YYCURSOR; @@ -6895,11 +6906,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(747, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1168 "Zend/zend_language_scanner.l" +#line 1179 "Zend/zend_language_scanner.l" { return T_EXTENDS; } -#line 6903 "Zend/zend_language_scanner.c" +#line 6914 "Zend/zend_language_scanner.c" yy748: YYDEBUG(748, *YYCURSOR); ++YYCURSOR; @@ -6908,11 +6919,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(749, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1020 "Zend/zend_language_scanner.l" +#line 1031 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 6916 "Zend/zend_language_scanner.c" +#line 6927 "Zend/zend_language_scanner.c" yy750: YYDEBUG(750, *YYCURSOR); yych = *++YYCURSOR; @@ -6926,11 +6937,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(752, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1254 "Zend/zend_language_scanner.l" +#line 1265 "Zend/zend_language_scanner.l" { return T_EVAL; } -#line 6934 "Zend/zend_language_scanner.c" +#line 6945 "Zend/zend_language_scanner.c" yy753: YYDEBUG(753, *YYCURSOR); yych = *++YYCURSOR; @@ -7000,11 +7011,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(763, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1080 "Zend/zend_language_scanner.l" +#line 1091 "Zend/zend_language_scanner.l" { return T_ENDWHILE; } -#line 7008 "Zend/zend_language_scanner.c" +#line 7019 "Zend/zend_language_scanner.c" yy764: YYDEBUG(764, *YYCURSOR); yych = *++YYCURSOR; @@ -7033,11 +7044,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(769, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1124 "Zend/zend_language_scanner.l" +#line 1135 "Zend/zend_language_scanner.l" { return T_ENDSWITCH; } -#line 7041 "Zend/zend_language_scanner.c" +#line 7052 "Zend/zend_language_scanner.c" yy770: YYDEBUG(770, *YYCURSOR); ++YYCURSOR; @@ -7046,11 +7057,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(771, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1068 "Zend/zend_language_scanner.l" +#line 1079 "Zend/zend_language_scanner.l" { return T_ENDIF; } -#line 7054 "Zend/zend_language_scanner.c" +#line 7065 "Zend/zend_language_scanner.c" yy772: YYDEBUG(772, *YYCURSOR); yych = *++YYCURSOR; @@ -7079,11 +7090,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy774: YYDEBUG(774, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1092 "Zend/zend_language_scanner.l" +#line 1103 "Zend/zend_language_scanner.l" { return T_ENDFOR; } -#line 7087 "Zend/zend_language_scanner.c" +#line 7098 "Zend/zend_language_scanner.c" yy775: YYDEBUG(775, *YYCURSOR); yych = *++YYCURSOR; @@ -7107,11 +7118,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(779, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1100 "Zend/zend_language_scanner.l" +#line 1111 "Zend/zend_language_scanner.l" { return T_ENDFOREACH; } -#line 7115 "Zend/zend_language_scanner.c" +#line 7126 "Zend/zend_language_scanner.c" yy780: YYDEBUG(780, *YYCURSOR); yych = *++YYCURSOR; @@ -7145,11 +7156,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(786, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1108 "Zend/zend_language_scanner.l" +#line 1119 "Zend/zend_language_scanner.l" { return T_ENDDECLARE; } -#line 7153 "Zend/zend_language_scanner.c" +#line 7164 "Zend/zend_language_scanner.c" yy787: YYDEBUG(787, *YYCURSOR); yych = *++YYCURSOR; @@ -7168,11 +7179,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(790, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1294 "Zend/zend_language_scanner.l" +#line 1305 "Zend/zend_language_scanner.l" { return T_EMPTY; } -#line 7176 "Zend/zend_language_scanner.c" +#line 7187 "Zend/zend_language_scanner.c" yy791: YYDEBUG(791, *YYCURSOR); yych = *++YYCURSOR; @@ -7201,11 +7212,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy793: YYDEBUG(793, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1072 "Zend/zend_language_scanner.l" +#line 1083 "Zend/zend_language_scanner.l" { return T_ELSE; } -#line 7209 "Zend/zend_language_scanner.c" +#line 7220 "Zend/zend_language_scanner.c" yy794: YYDEBUG(794, *YYCURSOR); yych = *++YYCURSOR; @@ -7219,11 +7230,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(796, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1064 "Zend/zend_language_scanner.l" +#line 1075 "Zend/zend_language_scanner.l" { return T_ELSEIF; } -#line 7227 "Zend/zend_language_scanner.c" +#line 7238 "Zend/zend_language_scanner.c" yy797: YYDEBUG(797, *YYCURSOR); yych = *++YYCURSOR; @@ -7237,11 +7248,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(799, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1148 "Zend/zend_language_scanner.l" +#line 1159 "Zend/zend_language_scanner.l" { return T_ECHO; } -#line 7245 "Zend/zend_language_scanner.c" +#line 7256 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@ -7314,7 +7325,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy803: YYDEBUG(803, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1181 "Zend/zend_language_scanner.l" +#line 1192 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -7322,7 +7333,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 7326 "Zend/zend_language_scanner.c" +#line 7337 "Zend/zend_language_scanner.c" yy804: YYDEBUG(804, *YYCURSOR); ++YYCURSOR; @@ -7330,13 +7341,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy805: YYDEBUG(805, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1200 "Zend/zend_language_scanner.l" +#line 1211 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); goto restart; } -#line 7340 "Zend/zend_language_scanner.c" +#line 7351 "Zend/zend_language_scanner.c" yy806: YYDEBUG(806, *YYCURSOR); ++YYCURSOR; @@ -7345,14 +7356,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy807: YYDEBUG(807, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1193 "Zend/zend_language_scanner.l" +#line 1204 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 7356 "Zend/zend_language_scanner.c" +#line 7367 "Zend/zend_language_scanner.c" yy808: YYDEBUG(808, *YYCURSOR); yych = *++YYCURSOR; @@ -7373,11 +7384,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(812, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1189 "Zend/zend_language_scanner.l" +#line 1200 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } -#line 7381 "Zend/zend_language_scanner.c" +#line 7392 "Zend/zend_language_scanner.c" yy813: YYDEBUG(813, *YYCURSOR); ++YYCURSOR; @@ -7462,14 +7473,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy818: YYDEBUG(818, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1486 "Zend/zend_language_scanner.l" +#line 1497 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } -#line 7473 "Zend/zend_language_scanner.c" +#line 7484 "Zend/zend_language_scanner.c" yy819: YYDEBUG(819, *YYCURSOR); yych = *++YYCURSOR; @@ -7494,7 +7505,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(824, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1476 "Zend/zend_language_scanner.l" +#line 1487 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_copy_value(zendlval, yytext, yyleng); @@ -7503,7 +7514,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } -#line 7507 "Zend/zend_language_scanner.c" +#line 7518 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_NOWDOC: @@ -7514,7 +7525,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(828, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2370 "Zend/zend_language_scanner.l" +#line 2381 "Zend/zend_language_scanner.l" { int newline = 0; @@ -7571,7 +7582,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng - newline); return T_ENCAPSED_AND_WHITESPACE; } -#line 7575 "Zend/zend_language_scanner.c" +#line 7586 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_VAR_OFFSET: { @@ -7678,7 +7689,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy832: YYDEBUG(832, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1564 "Zend/zend_language_scanner.l" +#line 1575 "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); @@ -7690,7 +7701,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_NUM_STRING; } -#line 7694 "Zend/zend_language_scanner.c" +#line 7705 "Zend/zend_language_scanner.c" yy833: YYDEBUG(833, *YYCURSOR); yych = *++YYCURSOR; @@ -7710,23 +7721,23 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy835: YYDEBUG(835, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1907 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } -#line 7719 "Zend/zend_language_scanner.c" +#line 7730 "Zend/zend_language_scanner.c" yy836: YYDEBUG(836, *YYCURSOR); ++YYCURSOR; YYDEBUG(837, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1891 "Zend/zend_language_scanner.l" +#line 1902 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } -#line 7730 "Zend/zend_language_scanner.c" +#line 7741 "Zend/zend_language_scanner.c" yy838: YYDEBUG(838, *YYCURSOR); yych = *++YYCURSOR; @@ -7736,14 +7747,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(840, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1901 "Zend/zend_language_scanner.l" +#line 1912 "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 7747 "Zend/zend_language_scanner.c" +#line 7758 "Zend/zend_language_scanner.c" yy841: YYDEBUG(841, *YYCURSOR); ++YYCURSOR; @@ -7752,19 +7763,19 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy842: YYDEBUG(842, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1908 "Zend/zend_language_scanner.l" +#line 1919 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 7762 "Zend/zend_language_scanner.c" +#line 7773 "Zend/zend_language_scanner.c" yy843: YYDEBUG(843, *YYCURSOR); ++YYCURSOR; YYDEBUG(844, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2428 "Zend/zend_language_scanner.l" +#line 2439 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -7773,7 +7784,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 7777 "Zend/zend_language_scanner.c" +#line 7788 "Zend/zend_language_scanner.c" yy845: YYDEBUG(845, *YYCURSOR); ++YYCURSOR; @@ -7809,13 +7820,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy849: YYDEBUG(849, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1885 "Zend/zend_language_scanner.l" +#line 1896 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 7819 "Zend/zend_language_scanner.c" +#line 7830 "Zend/zend_language_scanner.c" yy850: YYDEBUG(850, *YYCURSOR); ++YYCURSOR; @@ -7855,14 +7866,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy857: YYDEBUG(857, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1576 "Zend/zend_language_scanner.l" +#line 1587 "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 7866 "Zend/zend_language_scanner.c" +#line 7877 "Zend/zend_language_scanner.c" yy858: YYDEBUG(858, *YYCURSOR); ++YYCURSOR; @@ -7885,6 +7896,6 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto yy857; } } -#line 2437 "Zend/zend_language_scanner.l" +#line 2448 "Zend/zend_language_scanner.l" } diff --git a/Zend/zend_language_scanner.h b/Zend/zend_language_scanner.h index 03ca911262c9..96a10ded648a 100644 --- a/Zend/zend_language_scanner.h +++ b/Zend/zend_language_scanner.h @@ -49,6 +49,9 @@ typedef struct _zend_lex_state { zend_encoding_filter input_filter; zend_encoding_filter output_filter; const zend_encoding *script_encoding; + + char *doc_comment; + int doc_comment_len; } zend_lex_state; typedef struct _zend_heredoc_label { diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 3e117a32e025..d5ed66885f0f 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -224,6 +224,9 @@ ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC) lex_state->input_filter = SCNG(input_filter); lex_state->output_filter = SCNG(output_filter); lex_state->script_encoding = SCNG(script_encoding); + + lex_state->doc_comment = CG(doc_comment); + lex_state->doc_comment_len = CG(doc_comment_len); } ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) @@ -258,6 +261,9 @@ ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) SCNG(input_filter) = lex_state->input_filter; SCNG(output_filter) = lex_state->output_filter; SCNG(script_encoding) = lex_state->script_encoding; + + CG(doc_comment) = lex_state->doc_comment; + CG(doc_comment_len) = lex_state->doc_comment_len; } ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC) @@ -541,6 +547,8 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC) CG(zend_lineno) = 1; } + RESET_DOC_COMMENT(); + CG(increment_lineno) = 0; return SUCCESS; } @@ -691,6 +699,9 @@ ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_D zend_set_compiled_filename(filename TSRMLS_CC); CG(zend_lineno) = 1; CG(increment_lineno) = 0; + + RESET_DOC_COMMENT(); + return SUCCESS; } diff --git a/ext/reflection/tests/bug64936.inc b/ext/reflection/tests/bug64936.inc new file mode 100644 index 000000000000..47f49617da21 --- /dev/null +++ b/ext/reflection/tests/bug64936.inc @@ -0,0 +1,6 @@ +getDocComment())); + +token_get_all("getDocComment())); + +?> +===DONE=== +--EXPECT-- +bool(false) +bool(false) +===DONE=== From b8c93c4ae7010a5f027b97d183441184147d543b Mon Sep 17 00:00:00 2001 From: Jonathan Oddy Date: Wed, 29 May 2013 12:48:38 +0100 Subject: [PATCH 2/2] Fixes #64936 : doc comments picked up from previous scanner run doc_comment needs to be duplicated into the lex_state, otherwise it gets freed next time someone calls RESET_DOC_COMMENT(). --- Zend/zend_language_scanner.c | 693 ++++++++++++++++++----------------- Zend/zend_language_scanner.l | 5 +- 2 files changed, 352 insertions(+), 346 deletions(-) diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c index c257913a4048..4cd8d5059e9c 100644 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@ -227,8 +227,11 @@ ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC) lex_state->output_filter = SCNG(output_filter); lex_state->script_encoding = SCNG(script_encoding); - lex_state->doc_comment = CG(doc_comment); + lex_state->doc_comment = NULL; lex_state->doc_comment_len = CG(doc_comment_len); + if (CG(doc_comment)) { + lex_state->doc_comment = estrndup(CG(doc_comment), lex_state->doc_comment_len); + } } ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC) @@ -1013,7 +1016,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yymore_restart: -#line 1017 "Zend/zend_language_scanner.c" +#line 1020 "Zend/zend_language_scanner.c" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -1112,7 +1115,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1814 "Zend/zend_language_scanner.l" +#line 1817 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1172,7 +1175,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_INLINE_HTML; } -#line 1176 "Zend/zend_language_scanner.c" +#line 1179 "Zend/zend_language_scanner.c" yy4: YYDEBUG(4, *YYCURSOR); yych = *++YYCURSOR; @@ -1190,7 +1193,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy6: YYDEBUG(6, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1802 "Zend/zend_language_scanner.l" +#line 1805 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1202,14 +1205,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1206 "Zend/zend_language_scanner.c" +#line 1209 "Zend/zend_language_scanner.c" yy7: YYDEBUG(7, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy43; YYDEBUG(8, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1779 "Zend/zend_language_scanner.l" +#line 1782 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1221,7 +1224,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1225 "Zend/zend_language_scanner.c" +#line 1228 "Zend/zend_language_scanner.c" yy9: YYDEBUG(9, *YYCURSOR); yych = *++YYCURSOR; @@ -1407,7 +1410,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(38, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1739 "Zend/zend_language_scanner.l" +#line 1742 "Zend/zend_language_scanner.l" { YYCTYPE *bracket = (YYCTYPE*)zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1)); @@ -1424,7 +1427,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1428 "Zend/zend_language_scanner.c" +#line 1431 "Zend/zend_language_scanner.c" yy39: YYDEBUG(39, *YYCURSOR); yych = *++YYCURSOR; @@ -1451,7 +1454,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(44, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1757 "Zend/zend_language_scanner.l" +#line 1760 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1463,13 +1466,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto inline_char_handler; } } -#line 1467 "Zend/zend_language_scanner.c" +#line 1470 "Zend/zend_language_scanner.c" yy45: YYDEBUG(45, *YYCURSOR); ++YYCURSOR; YYDEBUG(46, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1770 "Zend/zend_language_scanner.l" +#line 1773 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1477,7 +1480,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG_WITH_ECHO; } -#line 1481 "Zend/zend_language_scanner.c" +#line 1484 "Zend/zend_language_scanner.c" yy47: YYDEBUG(47, *YYCURSOR); yych = *++YYCURSOR; @@ -1504,7 +1507,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy51: YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1792 "Zend/zend_language_scanner.l" +#line 1795 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1513,7 +1516,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1517 "Zend/zend_language_scanner.c" +#line 1520 "Zend/zend_language_scanner.c" yy52: YYDEBUG(52, *YYCURSOR); ++YYCURSOR; @@ -1584,7 +1587,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy56: YYDEBUG(56, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2265 "Zend/zend_language_scanner.l" +#line 2268 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1625,7 +1628,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1629 "Zend/zend_language_scanner.c" +#line 1632 "Zend/zend_language_scanner.c" yy57: YYDEBUG(57, *YYCURSOR); yych = *++YYCURSOR; @@ -1636,12 +1639,12 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(59, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2209 "Zend/zend_language_scanner.l" +#line 2212 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; } -#line 1645 "Zend/zend_language_scanner.c" +#line 1648 "Zend/zend_language_scanner.c" yy60: YYDEBUG(60, *YYCURSOR); yych = *++YYCURSOR; @@ -1651,14 +1654,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(62, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2196 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1662 "Zend/zend_language_scanner.c" +#line 1665 "Zend/zend_language_scanner.c" yy63: YYDEBUG(63, *YYCURSOR); yyaccept = 0; @@ -1674,24 +1677,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1899 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1684 "Zend/zend_language_scanner.c" +#line 1687 "Zend/zend_language_scanner.c" yy66: YYDEBUG(66, *YYCURSOR); ++YYCURSOR; YYDEBUG(67, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1472 "Zend/zend_language_scanner.l" +#line 1475 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1695 "Zend/zend_language_scanner.c" +#line 1698 "Zend/zend_language_scanner.c" yy68: YYDEBUG(68, *YYCURSOR); yych = *++YYCURSOR; @@ -1705,7 +1708,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(71, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1888 "Zend/zend_language_scanner.l" +#line 1891 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1713,7 +1716,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1717 "Zend/zend_language_scanner.c" +#line 1720 "Zend/zend_language_scanner.c" yy72: YYDEBUG(72, *YYCURSOR); yych = *++YYCURSOR; @@ -1731,7 +1734,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(74, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1878 "Zend/zend_language_scanner.l" +#line 1881 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1739,7 +1742,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1743 "Zend/zend_language_scanner.c" +#line 1746 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOUBLE_QUOTES: @@ -1807,7 +1810,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy78: YYDEBUG(78, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2215 "Zend/zend_language_scanner.l" +#line 2218 "Zend/zend_language_scanner.l" { if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; @@ -1856,7 +1859,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1860 "Zend/zend_language_scanner.c" +#line 1863 "Zend/zend_language_scanner.c" yy79: YYDEBUG(79, *YYCURSOR); yych = *++YYCURSOR; @@ -1867,12 +1870,12 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2204 "Zend/zend_language_scanner.l" +#line 2207 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; } -#line 1876 "Zend/zend_language_scanner.c" +#line 1879 "Zend/zend_language_scanner.c" yy82: YYDEBUG(82, *YYCURSOR); yych = *++YYCURSOR; @@ -1882,14 +1885,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2196 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1893 "Zend/zend_language_scanner.c" +#line 1896 "Zend/zend_language_scanner.c" yy85: YYDEBUG(85, *YYCURSOR); yyaccept = 0; @@ -1905,24 +1908,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy87: YYDEBUG(87, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1899 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1915 "Zend/zend_language_scanner.c" +#line 1918 "Zend/zend_language_scanner.c" yy88: YYDEBUG(88, *YYCURSOR); ++YYCURSOR; YYDEBUG(89, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1472 "Zend/zend_language_scanner.l" +#line 1475 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1926 "Zend/zend_language_scanner.c" +#line 1929 "Zend/zend_language_scanner.c" yy90: YYDEBUG(90, *YYCURSOR); yych = *++YYCURSOR; @@ -1936,7 +1939,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(93, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1888 "Zend/zend_language_scanner.l" +#line 1891 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1944,7 +1947,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1948 "Zend/zend_language_scanner.c" +#line 1951 "Zend/zend_language_scanner.c" yy94: YYDEBUG(94, *YYCURSOR); yych = *++YYCURSOR; @@ -1962,7 +1965,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1878 "Zend/zend_language_scanner.l" +#line 1881 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1970,7 +1973,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1974 "Zend/zend_language_scanner.c" +#line 1977 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_END_HEREDOC: @@ -1981,7 +1984,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(100, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2182 "Zend/zend_language_scanner.l" +#line 2185 "Zend/zend_language_scanner.l" { zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack)); @@ -1994,7 +1997,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_IN_SCRIPTING); return T_END_HEREDOC; } -#line 1998 "Zend/zend_language_scanner.c" +#line 2001 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_HEREDOC: { @@ -2056,7 +2059,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy104: YYDEBUG(104, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2307 "Zend/zend_language_scanner.l" +#line 2310 "Zend/zend_language_scanner.l" { int newline = 0; @@ -2129,7 +2132,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0 TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 2133 "Zend/zend_language_scanner.c" +#line 2136 "Zend/zend_language_scanner.c" yy105: YYDEBUG(105, *YYCURSOR); yych = *++YYCURSOR; @@ -2144,14 +2147,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(108, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2196 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 2155 "Zend/zend_language_scanner.c" +#line 2158 "Zend/zend_language_scanner.c" yy109: YYDEBUG(109, *YYCURSOR); yyaccept = 0; @@ -2167,24 +2170,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy111: YYDEBUG(111, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1899 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2177 "Zend/zend_language_scanner.c" +#line 2180 "Zend/zend_language_scanner.c" yy112: YYDEBUG(112, *YYCURSOR); ++YYCURSOR; YYDEBUG(113, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1472 "Zend/zend_language_scanner.l" +#line 1475 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 2188 "Zend/zend_language_scanner.c" +#line 2191 "Zend/zend_language_scanner.c" yy114: YYDEBUG(114, *YYCURSOR); yych = *++YYCURSOR; @@ -2198,7 +2201,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1888 "Zend/zend_language_scanner.l" +#line 1891 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -2206,7 +2209,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2210 "Zend/zend_language_scanner.c" +#line 2213 "Zend/zend_language_scanner.c" yy118: YYDEBUG(118, *YYCURSOR); yych = *++YYCURSOR; @@ -2224,7 +2227,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1878 "Zend/zend_language_scanner.l" +#line 1881 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -2232,7 +2235,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2236 "Zend/zend_language_scanner.c" +#line 2239 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_IN_SCRIPTING: @@ -2415,13 +2418,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy124: YYDEBUG(124, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1919 "Zend/zend_language_scanner.l" +#line 1922 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 2425 "Zend/zend_language_scanner.c" +#line 2428 "Zend/zend_language_scanner.c" yy125: YYDEBUG(125, *YYCURSOR); yych = *++YYCURSOR; @@ -2653,11 +2656,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy139: YYDEBUG(139, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1464 "Zend/zend_language_scanner.l" { return yytext[0]; } -#line 2661 "Zend/zend_language_scanner.c" +#line 2664 "Zend/zend_language_scanner.c" yy140: YYDEBUG(140, *YYCURSOR); ++YYCURSOR; @@ -2666,7 +2669,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy141: YYDEBUG(141, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1192 "Zend/zend_language_scanner.l" +#line 1195 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -2674,7 +2677,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 2678 "Zend/zend_language_scanner.c" +#line 2681 "Zend/zend_language_scanner.c" yy142: YYDEBUG(142, *YYCURSOR); yych = *++YYCURSOR; @@ -2685,11 +2688,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(144, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1221 "Zend/zend_language_scanner.l" +#line 1224 "Zend/zend_language_scanner.l" { return T_NS_SEPARATOR; } -#line 2693 "Zend/zend_language_scanner.c" +#line 2696 "Zend/zend_language_scanner.c" yy145: YYDEBUG(145, *YYCURSOR); yych = *++YYCURSOR; @@ -2917,18 +2920,18 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(169, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1466 "Zend/zend_language_scanner.l" +#line 1469 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } -#line 2926 "Zend/zend_language_scanner.c" +#line 2929 "Zend/zend_language_scanner.c" yy170: YYDEBUG(170, *YYCURSOR); ++YYCURSOR; YYDEBUG(171, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1478 "Zend/zend_language_scanner.l" +#line 1481 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); if (!zend_stack_is_empty(&SCNG(state_stack))) { @@ -2936,7 +2939,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return '}'; } -#line 2940 "Zend/zend_language_scanner.c" +#line 2943 "Zend/zend_language_scanner.c" yy172: YYDEBUG(172, *YYCURSOR); yyaccept = 2; @@ -2964,7 +2967,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy173: YYDEBUG(173, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1529 "Zend/zend_language_scanner.l" +#line 1532 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ zendlval->value.lval = strtol(yytext, NULL, 0); @@ -2985,7 +2988,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_LONG; return T_LNUMBER; } -#line 2989 "Zend/zend_language_scanner.c" +#line 2992 "Zend/zend_language_scanner.c" yy174: YYDEBUG(174, *YYCURSOR); yyaccept = 2; @@ -3013,7 +3016,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy177: YYDEBUG(177, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1926 "Zend/zend_language_scanner.l" +#line 1929 "Zend/zend_language_scanner.l" { while (YYCURSOR < YYLIMIT) { switch (*YYCURSOR++) { @@ -3047,14 +3050,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_COMMENT; } -#line 3051 "Zend/zend_language_scanner.c" +#line 3054 "Zend/zend_language_scanner.c" yy178: YYDEBUG(178, *YYCURSOR); ++YYCURSOR; yy179: YYDEBUG(179, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2017 "Zend/zend_language_scanner.l" +#line 2020 "Zend/zend_language_scanner.l" { register char *s, *t; char *end; @@ -3122,14 +3125,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_CONSTANT_ENCAPSED_STRING; } -#line 3126 "Zend/zend_language_scanner.c" +#line 3129 "Zend/zend_language_scanner.c" yy180: YYDEBUG(180, *YYCURSOR); ++YYCURSOR; yy181: YYDEBUG(181, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2086 "Zend/zend_language_scanner.l" +#line 2089 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '"') ? 1 : 0; @@ -3170,24 +3173,24 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(ST_DOUBLE_QUOTES); return '"'; } -#line 3174 "Zend/zend_language_scanner.c" +#line 3177 "Zend/zend_language_scanner.c" yy182: YYDEBUG(182, *YYCURSOR); ++YYCURSOR; YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2176 "Zend/zend_language_scanner.l" +#line 2179 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } -#line 3185 "Zend/zend_language_scanner.c" +#line 3188 "Zend/zend_language_scanner.c" yy184: YYDEBUG(184, *YYCURSOR); ++YYCURSOR; YYDEBUG(185, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2439 "Zend/zend_language_scanner.l" +#line 2442 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -3196,7 +3199,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 3200 "Zend/zend_language_scanner.c" +#line 3203 "Zend/zend_language_scanner.c" yy186: YYDEBUG(186, *YYCURSOR); ++YYCURSOR; @@ -3223,13 +3226,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy190: YYDEBUG(190, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1594 "Zend/zend_language_scanner.l" +#line 1597 "Zend/zend_language_scanner.l" { zendlval->value.dval = zend_strtod(yytext, NULL); zendlval->type = IS_DOUBLE; return T_DNUMBER; } -#line 3233 "Zend/zend_language_scanner.c" +#line 3236 "Zend/zend_language_scanner.c" yy191: YYDEBUG(191, *YYCURSOR); yyaccept = 2; @@ -3321,7 +3324,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(202, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1504 "Zend/zend_language_scanner.l" +#line 1507 "Zend/zend_language_scanner.l" { char *bin = yytext + 2; /* Skip "0b" */ int len = yyleng - 2; @@ -3346,7 +3349,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_DNUMBER; } } -#line 3350 "Zend/zend_language_scanner.c" +#line 3353 "Zend/zend_language_scanner.c" yy203: YYDEBUG(203, *YYCURSOR); ++YYCURSOR; @@ -3358,7 +3361,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(205, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1550 "Zend/zend_language_scanner.l" +#line 1553 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@ -3383,7 +3386,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_DNUMBER; } } -#line 3387 "Zend/zend_language_scanner.c" +#line 3390 "Zend/zend_language_scanner.c" yy206: YYDEBUG(206, *YYCURSOR); ++YYCURSOR; @@ -3392,7 +3395,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy207: YYDEBUG(207, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1994 "Zend/zend_language_scanner.l" +#line 1997 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -3400,7 +3403,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } -#line 3404 "Zend/zend_language_scanner.c" +#line 3407 "Zend/zend_language_scanner.c" yy208: YYDEBUG(208, *YYCURSOR); yych = *++YYCURSOR; @@ -3434,13 +3437,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy212: YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1899 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 3444 "Zend/zend_language_scanner.c" +#line 3447 "Zend/zend_language_scanner.c" yy213: YYDEBUG(213, *YYCURSOR); yych = *++YYCURSOR; @@ -3454,11 +3457,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(215, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1449 "Zend/zend_language_scanner.l" +#line 1452 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } -#line 3462 "Zend/zend_language_scanner.c" +#line 3465 "Zend/zend_language_scanner.c" yy216: YYDEBUG(216, *YYCURSOR); ++YYCURSOR; @@ -3467,61 +3470,61 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(217, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1441 "Zend/zend_language_scanner.l" +#line 1444 "Zend/zend_language_scanner.l" { return T_LOGICAL_OR; } -#line 3475 "Zend/zend_language_scanner.c" +#line 3478 "Zend/zend_language_scanner.c" yy218: YYDEBUG(218, *YYCURSOR); ++YYCURSOR; YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1429 "Zend/zend_language_scanner.l" +#line 1432 "Zend/zend_language_scanner.l" { return T_XOR_EQUAL; } -#line 3485 "Zend/zend_language_scanner.c" +#line 3488 "Zend/zend_language_scanner.c" yy220: YYDEBUG(220, *YYCURSOR); ++YYCURSOR; YYDEBUG(221, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1433 "Zend/zend_language_scanner.l" +#line 1436 "Zend/zend_language_scanner.l" { return T_BOOLEAN_OR; } -#line 3495 "Zend/zend_language_scanner.c" +#line 3498 "Zend/zend_language_scanner.c" yy222: YYDEBUG(222, *YYCURSOR); ++YYCURSOR; YYDEBUG(223, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1425 "Zend/zend_language_scanner.l" +#line 1428 "Zend/zend_language_scanner.l" { return T_OR_EQUAL; } -#line 3505 "Zend/zend_language_scanner.c" +#line 3508 "Zend/zend_language_scanner.c" yy224: YYDEBUG(224, *YYCURSOR); ++YYCURSOR; YYDEBUG(225, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1437 "Zend/zend_language_scanner.l" +#line 1440 "Zend/zend_language_scanner.l" { return T_BOOLEAN_AND; } -#line 3515 "Zend/zend_language_scanner.c" +#line 3518 "Zend/zend_language_scanner.c" yy226: YYDEBUG(226, *YYCURSOR); ++YYCURSOR; YYDEBUG(227, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1421 "Zend/zend_language_scanner.l" +#line 1424 "Zend/zend_language_scanner.l" { return T_AND_EQUAL; } -#line 3525 "Zend/zend_language_scanner.c" +#line 3528 "Zend/zend_language_scanner.c" yy228: YYDEBUG(228, *YYCURSOR); ++YYCURSOR; @@ -3530,7 +3533,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy229: YYDEBUG(229, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2003 "Zend/zend_language_scanner.l" +#line 2006 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { BEGIN(INITIAL); @@ -3543,17 +3546,17 @@ int lex_scan(zval *zendlval TSRMLS_DC) return yytext[0]; } } -#line 3547 "Zend/zend_language_scanner.c" +#line 3550 "Zend/zend_language_scanner.c" yy230: YYDEBUG(230, *YYCURSOR); ++YYCURSOR; YYDEBUG(231, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1409 "Zend/zend_language_scanner.l" +#line 1412 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } -#line 3557 "Zend/zend_language_scanner.c" +#line 3560 "Zend/zend_language_scanner.c" yy232: YYDEBUG(232, *YYCURSOR); yych = *++YYCURSOR; @@ -3584,11 +3587,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(237, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1405 "Zend/zend_language_scanner.l" +#line 1408 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } -#line 3592 "Zend/zend_language_scanner.c" +#line 3595 "Zend/zend_language_scanner.c" yy238: YYDEBUG(238, *YYCURSOR); yyaccept = 4; @@ -3597,7 +3600,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy239: YYDEBUG(239, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1960 "Zend/zend_language_scanner.l" +#line 1963 "Zend/zend_language_scanner.l" { int doc_com; @@ -3631,7 +3634,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_COMMENT; } -#line 3635 "Zend/zend_language_scanner.c" +#line 3638 "Zend/zend_language_scanner.c" yy240: YYDEBUG(240, *YYCURSOR); yych = *++YYCURSOR; @@ -3641,11 +3644,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(242, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1401 "Zend/zend_language_scanner.l" +#line 1404 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } -#line 3649 "Zend/zend_language_scanner.c" +#line 3652 "Zend/zend_language_scanner.c" yy243: YYDEBUG(243, *YYCURSOR); yych = *++YYCURSOR; @@ -3668,42 +3671,42 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(247, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1397 "Zend/zend_language_scanner.l" +#line 1400 "Zend/zend_language_scanner.l" { return T_MUL_EQUAL; } -#line 3676 "Zend/zend_language_scanner.c" +#line 3679 "Zend/zend_language_scanner.c" yy248: YYDEBUG(248, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy252; YYDEBUG(249, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1457 "Zend/zend_language_scanner.l" +#line 1460 "Zend/zend_language_scanner.l" { return T_SR; } -#line 3687 "Zend/zend_language_scanner.c" +#line 3690 "Zend/zend_language_scanner.c" yy250: YYDEBUG(250, *YYCURSOR); ++YYCURSOR; YYDEBUG(251, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1385 "Zend/zend_language_scanner.l" +#line 1388 "Zend/zend_language_scanner.l" { return T_IS_GREATER_OR_EQUAL; } -#line 3697 "Zend/zend_language_scanner.c" +#line 3700 "Zend/zend_language_scanner.c" yy252: YYDEBUG(252, *YYCURSOR); ++YYCURSOR; YYDEBUG(253, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1417 "Zend/zend_language_scanner.l" +#line 1420 "Zend/zend_language_scanner.l" { return T_SR_EQUAL; } -#line 3707 "Zend/zend_language_scanner.c" +#line 3710 "Zend/zend_language_scanner.c" yy254: YYDEBUG(254, *YYCURSOR); yyaccept = 5; @@ -3714,11 +3717,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy255: YYDEBUG(255, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1453 "Zend/zend_language_scanner.l" +#line 1456 "Zend/zend_language_scanner.l" { return T_SL; } -#line 3722 "Zend/zend_language_scanner.c" +#line 3725 "Zend/zend_language_scanner.c" yy256: YYDEBUG(256, *YYCURSOR); yych = *++YYCURSOR; @@ -3730,22 +3733,22 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(258, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1381 "Zend/zend_language_scanner.l" +#line 1384 "Zend/zend_language_scanner.l" { return T_IS_SMALLER_OR_EQUAL; } -#line 3738 "Zend/zend_language_scanner.c" +#line 3741 "Zend/zend_language_scanner.c" yy259: YYDEBUG(259, *YYCURSOR); ++YYCURSOR; yy260: YYDEBUG(260, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1377 "Zend/zend_language_scanner.l" +#line 1380 "Zend/zend_language_scanner.l" { return T_IS_NOT_EQUAL; } -#line 3749 "Zend/zend_language_scanner.c" +#line 3752 "Zend/zend_language_scanner.c" yy261: YYDEBUG(261, *YYCURSOR); yych = *++YYCURSOR; @@ -3796,11 +3799,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(269, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1413 "Zend/zend_language_scanner.l" +#line 1416 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } -#line 3804 "Zend/zend_language_scanner.c" +#line 3807 "Zend/zend_language_scanner.c" yy270: YYDEBUG(270, *YYCURSOR); ++YYCURSOR; @@ -3905,7 +3908,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy280: YYDEBUG(280, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2128 "Zend/zend_language_scanner.l" +#line 2131 "Zend/zend_language_scanner.l" { char *s; int bprefix = (yytext[0] != '<') ? 1 : 0; @@ -3952,7 +3955,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_START_HEREDOC; } -#line 3956 "Zend/zend_language_scanner.c" +#line 3959 "Zend/zend_language_scanner.c" yy281: YYDEBUG(281, *YYCURSOR); yych = *++YYCURSOR; @@ -3992,31 +3995,31 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(286, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1369 "Zend/zend_language_scanner.l" +#line 1372 "Zend/zend_language_scanner.l" { return T_IS_NOT_IDENTICAL; } -#line 4000 "Zend/zend_language_scanner.c" +#line 4003 "Zend/zend_language_scanner.c" yy287: YYDEBUG(287, *YYCURSOR); ++YYCURSOR; YYDEBUG(288, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1389 "Zend/zend_language_scanner.l" +#line 1392 "Zend/zend_language_scanner.l" { return T_PLUS_EQUAL; } -#line 4010 "Zend/zend_language_scanner.c" +#line 4013 "Zend/zend_language_scanner.c" yy289: YYDEBUG(289, *YYCURSOR); ++YYCURSOR; YYDEBUG(290, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1357 "Zend/zend_language_scanner.l" +#line 1360 "Zend/zend_language_scanner.l" { return T_INC; } -#line 4020 "Zend/zend_language_scanner.c" +#line 4023 "Zend/zend_language_scanner.c" yy291: YYDEBUG(291, *YYCURSOR); yych = *++YYCURSOR; @@ -4035,42 +4038,42 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(294, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1345 "Zend/zend_language_scanner.l" +#line 1348 "Zend/zend_language_scanner.l" { return T_LIST; } -#line 4043 "Zend/zend_language_scanner.c" +#line 4046 "Zend/zend_language_scanner.c" yy295: YYDEBUG(295, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy299; YYDEBUG(296, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1373 "Zend/zend_language_scanner.l" +#line 1376 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } -#line 4054 "Zend/zend_language_scanner.c" +#line 4057 "Zend/zend_language_scanner.c" yy297: YYDEBUG(297, *YYCURSOR); ++YYCURSOR; YYDEBUG(298, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1341 "Zend/zend_language_scanner.l" +#line 1344 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } -#line 4064 "Zend/zend_language_scanner.c" +#line 4067 "Zend/zend_language_scanner.c" yy299: YYDEBUG(299, *YYCURSOR); ++YYCURSOR; YYDEBUG(300, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1365 "Zend/zend_language_scanner.l" +#line 1368 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } -#line 4074 "Zend/zend_language_scanner.c" +#line 4077 "Zend/zend_language_scanner.c" yy301: YYDEBUG(301, *YYCURSOR); yych = *++YYCURSOR; @@ -4200,7 +4203,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(320, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1729 "Zend/zend_language_scanner.l" +#line 1732 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@ -4210,7 +4213,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_NS_C; } -#line 4214 "Zend/zend_language_scanner.c" +#line 4217 "Zend/zend_language_scanner.c" yy321: YYDEBUG(321, *YYCURSOR); yych = *++YYCURSOR; @@ -4230,7 +4233,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(325, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1702 "Zend/zend_language_scanner.l" +#line 1705 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@ -4257,7 +4260,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_DIR; } -#line 4261 "Zend/zend_language_scanner.c" +#line 4264 "Zend/zend_language_scanner.c" yy326: YYDEBUG(326, *YYCURSOR); yych = *++YYCURSOR; @@ -4282,13 +4285,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(331, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1684 "Zend/zend_language_scanner.l" +#line 1687 "Zend/zend_language_scanner.l" { zendlval->value.lval = CG(zend_lineno); zendlval->type = IS_LONG; return T_LINE; } -#line 4292 "Zend/zend_language_scanner.c" +#line 4295 "Zend/zend_language_scanner.c" yy332: YYDEBUG(332, *YYCURSOR); yych = *++YYCURSOR; @@ -4323,7 +4326,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(339, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1663 "Zend/zend_language_scanner.l" +#line 1666 "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; @@ -4344,7 +4347,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_METHOD_C; } -#line 4348 "Zend/zend_language_scanner.c" +#line 4351 "Zend/zend_language_scanner.c" yy340: YYDEBUG(340, *YYCURSOR); yych = *++YYCURSOR; @@ -4395,7 +4398,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(350, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1647 "Zend/zend_language_scanner.l" +#line 1650 "Zend/zend_language_scanner.l" { const char *func_name = NULL; @@ -4411,7 +4414,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_FUNC_C; } -#line 4415 "Zend/zend_language_scanner.c" +#line 4418 "Zend/zend_language_scanner.c" yy351: YYDEBUG(351, *YYCURSOR); yych = *++YYCURSOR; @@ -4431,7 +4434,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(355, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1690 "Zend/zend_language_scanner.l" +#line 1693 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@ -4443,7 +4446,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zendlval->type = IS_STRING; return T_FILE; } -#line 4447 "Zend/zend_language_scanner.c" +#line 4450 "Zend/zend_language_scanner.c" yy356: YYDEBUG(356, *YYCURSOR); yych = *++YYCURSOR; @@ -4473,7 +4476,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(362, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1627 "Zend/zend_language_scanner.l" +#line 1630 "Zend/zend_language_scanner.l" { const char *trait_name = NULL; @@ -4493,7 +4496,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) return T_TRAIT_C; } -#line 4497 "Zend/zend_language_scanner.c" +#line 4500 "Zend/zend_language_scanner.c" yy363: YYDEBUG(363, *YYCURSOR); yych = *++YYCURSOR; @@ -4523,7 +4526,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(369, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1600 "Zend/zend_language_scanner.l" +#line 1603 "Zend/zend_language_scanner.l" { const char *class_name = NULL; @@ -4550,7 +4553,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_CLASS_C; } -#line 4554 "Zend/zend_language_scanner.c" +#line 4557 "Zend/zend_language_scanner.c" yy370: YYDEBUG(370, *YYCURSOR); yych = *++YYCURSOR; @@ -4612,11 +4615,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(382, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1309 "Zend/zend_language_scanner.l" +#line 1312 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } -#line 4620 "Zend/zend_language_scanner.c" +#line 4623 "Zend/zend_language_scanner.c" yy383: YYDEBUG(383, *YYCURSOR); yych = *++YYCURSOR; @@ -4636,11 +4639,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(386, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1289 "Zend/zend_language_scanner.l" +#line 1292 "Zend/zend_language_scanner.l" { return T_USE; } -#line 4644 "Zend/zend_language_scanner.c" +#line 4647 "Zend/zend_language_scanner.c" yy387: YYDEBUG(387, *YYCURSOR); yych = *++YYCURSOR; @@ -4659,11 +4662,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(390, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1337 "Zend/zend_language_scanner.l" +#line 1340 "Zend/zend_language_scanner.l" { return T_UNSET; } -#line 4667 "Zend/zend_language_scanner.c" +#line 4670 "Zend/zend_language_scanner.c" yy391: YYDEBUG(391, *YYCURSOR); ++YYCURSOR; @@ -4835,11 +4838,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(408, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1237 "Zend/zend_language_scanner.l" +#line 1240 "Zend/zend_language_scanner.l" { return T_INT_CAST; } -#line 4843 "Zend/zend_language_scanner.c" +#line 4846 "Zend/zend_language_scanner.c" yy409: YYDEBUG(409, *YYCURSOR); yych = *++YYCURSOR; @@ -4883,11 +4886,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(417, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1241 "Zend/zend_language_scanner.l" +#line 1244 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } -#line 4891 "Zend/zend_language_scanner.c" +#line 4894 "Zend/zend_language_scanner.c" yy418: YYDEBUG(418, *YYCURSOR); yych = *++YYCURSOR; @@ -4957,11 +4960,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(431, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1245 "Zend/zend_language_scanner.l" +#line 1248 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } -#line 4965 "Zend/zend_language_scanner.c" +#line 4968 "Zend/zend_language_scanner.c" yy432: YYDEBUG(432, *YYCURSOR); yych = *++YYCURSOR; @@ -4994,11 +4997,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(438, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1249 "Zend/zend_language_scanner.l" +#line 1252 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } -#line 5002 "Zend/zend_language_scanner.c" +#line 5005 "Zend/zend_language_scanner.c" yy439: YYDEBUG(439, *YYCURSOR); yych = *++YYCURSOR; @@ -5036,11 +5039,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(446, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1253 "Zend/zend_language_scanner.l" +#line 1256 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } -#line 5044 "Zend/zend_language_scanner.c" +#line 5047 "Zend/zend_language_scanner.c" yy447: YYDEBUG(447, *YYCURSOR); yych = *++YYCURSOR; @@ -5081,11 +5084,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(454, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1257 "Zend/zend_language_scanner.l" +#line 1260 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } -#line 5089 "Zend/zend_language_scanner.c" +#line 5092 "Zend/zend_language_scanner.c" yy455: YYDEBUG(455, *YYCURSOR); yych = *++YYCURSOR; @@ -5145,11 +5148,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(466, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1261 "Zend/zend_language_scanner.l" +#line 1264 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } -#line 5153 "Zend/zend_language_scanner.c" +#line 5156 "Zend/zend_language_scanner.c" yy467: YYDEBUG(467, *YYCURSOR); yych = *++YYCURSOR; @@ -5163,11 +5166,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(469, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1233 "Zend/zend_language_scanner.l" +#line 1236 "Zend/zend_language_scanner.l" { return T_VAR; } -#line 5171 "Zend/zend_language_scanner.c" +#line 5174 "Zend/zend_language_scanner.c" yy470: YYDEBUG(470, *YYCURSOR); yych = *++YYCURSOR; @@ -5187,11 +5190,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(473, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1225 "Zend/zend_language_scanner.l" +#line 1228 "Zend/zend_language_scanner.l" { return T_NEW; } -#line 5195 "Zend/zend_language_scanner.c" +#line 5198 "Zend/zend_language_scanner.c" yy474: YYDEBUG(474, *YYCURSOR); yych = *++YYCURSOR; @@ -5230,21 +5233,21 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(481, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1285 "Zend/zend_language_scanner.l" +#line 1288 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } -#line 5238 "Zend/zend_language_scanner.c" +#line 5241 "Zend/zend_language_scanner.c" yy482: YYDEBUG(482, *YYCURSOR); ++YYCURSOR; YYDEBUG(483, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1217 "Zend/zend_language_scanner.l" +#line 1220 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } -#line 5248 "Zend/zend_language_scanner.c" +#line 5251 "Zend/zend_language_scanner.c" yy484: YYDEBUG(484, *YYCURSOR); ++YYCURSOR; @@ -5266,32 +5269,32 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1393 "Zend/zend_language_scanner.l" +#line 1396 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } -#line 5274 "Zend/zend_language_scanner.c" +#line 5277 "Zend/zend_language_scanner.c" yy488: YYDEBUG(488, *YYCURSOR); ++YYCURSOR; YYDEBUG(489, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1361 "Zend/zend_language_scanner.l" +#line 1364 "Zend/zend_language_scanner.l" { return T_DEC; } -#line 5284 "Zend/zend_language_scanner.c" +#line 5287 "Zend/zend_language_scanner.c" yy490: YYDEBUG(490, *YYCURSOR); ++YYCURSOR; YYDEBUG(491, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1187 "Zend/zend_language_scanner.l" +#line 1190 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } -#line 5295 "Zend/zend_language_scanner.c" +#line 5298 "Zend/zend_language_scanner.c" yy492: YYDEBUG(492, *YYCURSOR); yych = *++YYCURSOR; @@ -5336,11 +5339,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(498, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1333 "Zend/zend_language_scanner.l" +#line 1336 "Zend/zend_language_scanner.l" { return T_PUBLIC; } -#line 5344 "Zend/zend_language_scanner.c" +#line 5347 "Zend/zend_language_scanner.c" yy499: YYDEBUG(499, *YYCURSOR); yych = *++YYCURSOR; @@ -5395,11 +5398,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(507, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1329 "Zend/zend_language_scanner.l" +#line 1332 "Zend/zend_language_scanner.l" { return T_PROTECTED; } -#line 5403 "Zend/zend_language_scanner.c" +#line 5406 "Zend/zend_language_scanner.c" yy508: YYDEBUG(508, *YYCURSOR); yych = *++YYCURSOR; @@ -5429,11 +5432,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(513, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1325 "Zend/zend_language_scanner.l" +#line 1328 "Zend/zend_language_scanner.l" { return T_PRIVATE; } -#line 5437 "Zend/zend_language_scanner.c" +#line 5440 "Zend/zend_language_scanner.c" yy514: YYDEBUG(514, *YYCURSOR); ++YYCURSOR; @@ -5442,11 +5445,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(515, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1163 "Zend/zend_language_scanner.l" +#line 1166 "Zend/zend_language_scanner.l" { return T_PRINT; } -#line 5450 "Zend/zend_language_scanner.c" +#line 5453 "Zend/zend_language_scanner.c" yy516: YYDEBUG(516, *YYCURSOR); yych = *++YYCURSOR; @@ -5471,11 +5474,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(520, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1155 "Zend/zend_language_scanner.l" +#line 1158 "Zend/zend_language_scanner.l" { return T_GOTO; } -#line 5479 "Zend/zend_language_scanner.c" +#line 5482 "Zend/zend_language_scanner.c" yy521: YYDEBUG(521, *YYCURSOR); yych = *++YYCURSOR; @@ -5499,11 +5502,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(525, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1297 "Zend/zend_language_scanner.l" +#line 1300 "Zend/zend_language_scanner.l" { return T_GLOBAL; } -#line 5507 "Zend/zend_language_scanner.c" +#line 5510 "Zend/zend_language_scanner.c" yy526: YYDEBUG(526, *YYCURSOR); yych = *++YYCURSOR; @@ -5540,11 +5543,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(533, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1147 "Zend/zend_language_scanner.l" +#line 1150 "Zend/zend_language_scanner.l" { return T_BREAK; } -#line 5548 "Zend/zend_language_scanner.c" +#line 5551 "Zend/zend_language_scanner.c" yy534: YYDEBUG(534, *YYCURSOR); yych = *++YYCURSOR; @@ -5584,11 +5587,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(541, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1131 "Zend/zend_language_scanner.l" +#line 1134 "Zend/zend_language_scanner.l" { return T_SWITCH; } -#line 5592 "Zend/zend_language_scanner.c" +#line 5595 "Zend/zend_language_scanner.c" yy542: YYDEBUG(542, *YYCURSOR); yych = *++YYCURSOR; @@ -5612,11 +5615,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(546, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1313 "Zend/zend_language_scanner.l" +#line 1316 "Zend/zend_language_scanner.l" { return T_STATIC; } -#line 5620 "Zend/zend_language_scanner.c" +#line 5623 "Zend/zend_language_scanner.c" yy547: YYDEBUG(547, *YYCURSOR); yych = *++YYCURSOR; @@ -5643,11 +5646,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(551, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1127 "Zend/zend_language_scanner.l" +#line 1130 "Zend/zend_language_scanner.l" { return T_AS; } -#line 5651 "Zend/zend_language_scanner.c" +#line 5654 "Zend/zend_language_scanner.c" yy552: YYDEBUG(552, *YYCURSOR); yych = *++YYCURSOR; @@ -5666,11 +5669,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(555, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1349 "Zend/zend_language_scanner.l" +#line 1352 "Zend/zend_language_scanner.l" { return T_ARRAY; } -#line 5674 "Zend/zend_language_scanner.c" +#line 5677 "Zend/zend_language_scanner.c" yy556: YYDEBUG(556, *YYCURSOR); ++YYCURSOR; @@ -5679,11 +5682,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(557, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1445 "Zend/zend_language_scanner.l" +#line 1448 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } -#line 5687 "Zend/zend_language_scanner.c" +#line 5690 "Zend/zend_language_scanner.c" yy558: YYDEBUG(558, *YYCURSOR); yych = *++YYCURSOR; @@ -5717,11 +5720,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(564, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1317 "Zend/zend_language_scanner.l" +#line 1320 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } -#line 5725 "Zend/zend_language_scanner.c" +#line 5728 "Zend/zend_language_scanner.c" yy565: YYDEBUG(565, *YYCURSOR); yych = *++YYCURSOR; @@ -5745,11 +5748,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(569, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1087 "Zend/zend_language_scanner.l" +#line 1090 "Zend/zend_language_scanner.l" { return T_WHILE; } -#line 5753 "Zend/zend_language_scanner.c" +#line 5756 "Zend/zend_language_scanner.c" yy570: YYDEBUG(570, *YYCURSOR); ++YYCURSOR; @@ -5758,11 +5761,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(571, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1071 "Zend/zend_language_scanner.l" +#line 1074 "Zend/zend_language_scanner.l" { return T_IF; } -#line 5766 "Zend/zend_language_scanner.c" +#line 5769 "Zend/zend_language_scanner.c" yy572: YYDEBUG(572, *YYCURSOR); yych = *++YYCURSOR; @@ -5814,11 +5817,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(578, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1301 "Zend/zend_language_scanner.l" +#line 1304 "Zend/zend_language_scanner.l" { return T_ISSET; } -#line 5822 "Zend/zend_language_scanner.c" +#line 5825 "Zend/zend_language_scanner.c" yy579: YYDEBUG(579, *YYCURSOR); yych = *++YYCURSOR; @@ -5872,11 +5875,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy586: YYDEBUG(586, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1269 "Zend/zend_language_scanner.l" +#line 1272 "Zend/zend_language_scanner.l" { return T_INCLUDE; } -#line 5880 "Zend/zend_language_scanner.c" +#line 5883 "Zend/zend_language_scanner.c" yy587: YYDEBUG(587, *YYCURSOR); yych = *++YYCURSOR; @@ -5905,11 +5908,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(592, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1273 "Zend/zend_language_scanner.l" +#line 1276 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } -#line 5913 "Zend/zend_language_scanner.c" +#line 5916 "Zend/zend_language_scanner.c" yy593: YYDEBUG(593, *YYCURSOR); yych = *++YYCURSOR; @@ -5943,11 +5946,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(599, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1171 "Zend/zend_language_scanner.l" +#line 1174 "Zend/zend_language_scanner.l" { return T_INTERFACE; } -#line 5951 "Zend/zend_language_scanner.c" +#line 5954 "Zend/zend_language_scanner.c" yy600: YYDEBUG(600, *YYCURSOR); yych = *++YYCURSOR; @@ -5997,11 +6000,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(607, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1293 "Zend/zend_language_scanner.l" +#line 1296 "Zend/zend_language_scanner.l" { return T_INSTEADOF; } -#line 6005 "Zend/zend_language_scanner.c" +#line 6008 "Zend/zend_language_scanner.c" yy608: YYDEBUG(608, *YYCURSOR); yych = *++YYCURSOR; @@ -6030,11 +6033,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(613, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1123 "Zend/zend_language_scanner.l" +#line 1126 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } -#line 6038 "Zend/zend_language_scanner.c" +#line 6041 "Zend/zend_language_scanner.c" yy614: YYDEBUG(614, *YYCURSOR); yych = *++YYCURSOR; @@ -6078,11 +6081,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(622, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1183 "Zend/zend_language_scanner.l" +#line 1186 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } -#line 6086 "Zend/zend_language_scanner.c" +#line 6089 "Zend/zend_language_scanner.c" yy623: YYDEBUG(623, *YYCURSOR); yych = *++YYCURSOR; @@ -6110,11 +6113,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(626, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1055 "Zend/zend_language_scanner.l" +#line 1058 "Zend/zend_language_scanner.l" { return T_TRY; } -#line 6118 "Zend/zend_language_scanner.c" +#line 6121 "Zend/zend_language_scanner.c" yy627: YYDEBUG(627, *YYCURSOR); yych = *++YYCURSOR; @@ -6133,11 +6136,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(630, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1175 "Zend/zend_language_scanner.l" +#line 1178 "Zend/zend_language_scanner.l" { return T_TRAIT; } -#line 6141 "Zend/zend_language_scanner.c" +#line 6144 "Zend/zend_language_scanner.c" yy631: YYDEBUG(631, *YYCURSOR); yych = *++YYCURSOR; @@ -6156,11 +6159,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(634, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1067 "Zend/zend_language_scanner.l" +#line 1070 "Zend/zend_language_scanner.l" { return T_THROW; } -#line 6164 "Zend/zend_language_scanner.c" +#line 6167 "Zend/zend_language_scanner.c" yy635: YYDEBUG(635, *YYCURSOR); yych = *++YYCURSOR; @@ -6184,11 +6187,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(639, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1051 "Zend/zend_language_scanner.l" +#line 1054 "Zend/zend_language_scanner.l" { return T_YIELD; } -#line 6192 "Zend/zend_language_scanner.c" +#line 6195 "Zend/zend_language_scanner.c" yy640: YYDEBUG(640, *YYCURSOR); yych = *++YYCURSOR; @@ -6249,11 +6252,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy647: YYDEBUG(647, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1277 "Zend/zend_language_scanner.l" +#line 1280 "Zend/zend_language_scanner.l" { return T_REQUIRE; } -#line 6257 "Zend/zend_language_scanner.c" +#line 6260 "Zend/zend_language_scanner.c" yy648: YYDEBUG(648, *YYCURSOR); yych = *++YYCURSOR; @@ -6282,11 +6285,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(653, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1281 "Zend/zend_language_scanner.l" +#line 1284 "Zend/zend_language_scanner.l" { return T_REQUIRE_ONCE; } -#line 6290 "Zend/zend_language_scanner.c" +#line 6293 "Zend/zend_language_scanner.c" yy654: YYDEBUG(654, *YYCURSOR); yych = *++YYCURSOR; @@ -6305,11 +6308,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(657, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1047 "Zend/zend_language_scanner.l" +#line 1050 "Zend/zend_language_scanner.l" { return T_RETURN; } -#line 6313 "Zend/zend_language_scanner.c" +#line 6316 "Zend/zend_language_scanner.c" yy658: YYDEBUG(658, *YYCURSOR); yych = *++YYCURSOR; @@ -6399,11 +6402,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(668, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1151 "Zend/zend_language_scanner.l" +#line 1154 "Zend/zend_language_scanner.l" { return T_CONTINUE; } -#line 6407 "Zend/zend_language_scanner.c" +#line 6410 "Zend/zend_language_scanner.c" yy669: YYDEBUG(669, *YYCURSOR); ++YYCURSOR; @@ -6412,11 +6415,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(670, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1043 "Zend/zend_language_scanner.l" +#line 1046 "Zend/zend_language_scanner.l" { return T_CONST; } -#line 6420 "Zend/zend_language_scanner.c" +#line 6423 "Zend/zend_language_scanner.c" yy671: YYDEBUG(671, *YYCURSOR); yych = *++YYCURSOR; @@ -6441,11 +6444,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(675, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1229 "Zend/zend_language_scanner.l" +#line 1232 "Zend/zend_language_scanner.l" { return T_CLONE; } -#line 6449 "Zend/zend_language_scanner.c" +#line 6452 "Zend/zend_language_scanner.c" yy676: YYDEBUG(676, *YYCURSOR); yych = *++YYCURSOR; @@ -6459,11 +6462,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(678, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1167 "Zend/zend_language_scanner.l" +#line 1170 "Zend/zend_language_scanner.l" { return T_CLASS; } -#line 6467 "Zend/zend_language_scanner.c" +#line 6470 "Zend/zend_language_scanner.c" yy679: YYDEBUG(679, *YYCURSOR); yych = *++YYCURSOR; @@ -6509,11 +6512,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(687, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1353 "Zend/zend_language_scanner.l" +#line 1356 "Zend/zend_language_scanner.l" { return T_CALLABLE; } -#line 6517 "Zend/zend_language_scanner.c" +#line 6520 "Zend/zend_language_scanner.c" yy688: YYDEBUG(688, *YYCURSOR); ++YYCURSOR; @@ -6522,11 +6525,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(689, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1139 "Zend/zend_language_scanner.l" +#line 1142 "Zend/zend_language_scanner.l" { return T_CASE; } -#line 6530 "Zend/zend_language_scanner.c" +#line 6533 "Zend/zend_language_scanner.c" yy690: YYDEBUG(690, *YYCURSOR); yych = *++YYCURSOR; @@ -6540,11 +6543,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(692, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1059 "Zend/zend_language_scanner.l" +#line 1062 "Zend/zend_language_scanner.l" { return T_CATCH; } -#line 6548 "Zend/zend_language_scanner.c" +#line 6551 "Zend/zend_language_scanner.c" yy693: YYDEBUG(693, *YYCURSOR); yych = *++YYCURSOR; @@ -6595,11 +6598,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(702, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1039 "Zend/zend_language_scanner.l" +#line 1042 "Zend/zend_language_scanner.l" { return T_FUNCTION; } -#line 6603 "Zend/zend_language_scanner.c" +#line 6606 "Zend/zend_language_scanner.c" yy703: YYDEBUG(703, *YYCURSOR); ++YYCURSOR; @@ -6623,11 +6626,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy704: YYDEBUG(704, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1099 "Zend/zend_language_scanner.l" +#line 1102 "Zend/zend_language_scanner.l" { return T_FOR; } -#line 6631 "Zend/zend_language_scanner.c" +#line 6634 "Zend/zend_language_scanner.c" yy705: YYDEBUG(705, *YYCURSOR); yych = *++YYCURSOR; @@ -6651,11 +6654,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(709, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1107 "Zend/zend_language_scanner.l" +#line 1110 "Zend/zend_language_scanner.l" { return T_FOREACH; } -#line 6659 "Zend/zend_language_scanner.c" +#line 6662 "Zend/zend_language_scanner.c" yy710: YYDEBUG(710, *YYCURSOR); yych = *++YYCURSOR; @@ -6689,11 +6692,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy713: YYDEBUG(713, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1321 "Zend/zend_language_scanner.l" +#line 1324 "Zend/zend_language_scanner.l" { return T_FINAL; } -#line 6697 "Zend/zend_language_scanner.c" +#line 6700 "Zend/zend_language_scanner.c" yy714: YYDEBUG(714, *YYCURSOR); yych = *++YYCURSOR; @@ -6707,11 +6710,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(716, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1063 "Zend/zend_language_scanner.l" +#line 1066 "Zend/zend_language_scanner.l" { return T_FINALLY; } -#line 6715 "Zend/zend_language_scanner.c" +#line 6718 "Zend/zend_language_scanner.c" yy717: YYDEBUG(717, *YYCURSOR); yych = *++YYCURSOR; @@ -6742,11 +6745,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(720, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1095 "Zend/zend_language_scanner.l" +#line 1098 "Zend/zend_language_scanner.l" { return T_DO; } -#line 6750 "Zend/zend_language_scanner.c" +#line 6753 "Zend/zend_language_scanner.c" yy721: YYDEBUG(721, *YYCURSOR); ++YYCURSOR; @@ -6755,11 +6758,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(722, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1035 "Zend/zend_language_scanner.l" +#line 1038 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 6763 "Zend/zend_language_scanner.c" +#line 6766 "Zend/zend_language_scanner.c" yy723: YYDEBUG(723, *YYCURSOR); yych = *++YYCURSOR; @@ -6794,11 +6797,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(729, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1143 "Zend/zend_language_scanner.l" +#line 1146 "Zend/zend_language_scanner.l" { return T_DEFAULT; } -#line 6802 "Zend/zend_language_scanner.c" +#line 6805 "Zend/zend_language_scanner.c" yy730: YYDEBUG(730, *YYCURSOR); yych = *++YYCURSOR; @@ -6822,11 +6825,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(734, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1115 "Zend/zend_language_scanner.l" +#line 1118 "Zend/zend_language_scanner.l" { return T_DECLARE; } -#line 6830 "Zend/zend_language_scanner.c" +#line 6833 "Zend/zend_language_scanner.c" yy735: YYDEBUG(735, *YYCURSOR); yych = *++YYCURSOR; @@ -6906,11 +6909,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(747, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1179 "Zend/zend_language_scanner.l" +#line 1182 "Zend/zend_language_scanner.l" { return T_EXTENDS; } -#line 6914 "Zend/zend_language_scanner.c" +#line 6917 "Zend/zend_language_scanner.c" yy748: YYDEBUG(748, *YYCURSOR); ++YYCURSOR; @@ -6919,11 +6922,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(749, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1031 "Zend/zend_language_scanner.l" +#line 1034 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 6927 "Zend/zend_language_scanner.c" +#line 6930 "Zend/zend_language_scanner.c" yy750: YYDEBUG(750, *YYCURSOR); yych = *++YYCURSOR; @@ -6937,11 +6940,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(752, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1265 "Zend/zend_language_scanner.l" +#line 1268 "Zend/zend_language_scanner.l" { return T_EVAL; } -#line 6945 "Zend/zend_language_scanner.c" +#line 6948 "Zend/zend_language_scanner.c" yy753: YYDEBUG(753, *YYCURSOR); yych = *++YYCURSOR; @@ -7011,11 +7014,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(763, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1091 "Zend/zend_language_scanner.l" +#line 1094 "Zend/zend_language_scanner.l" { return T_ENDWHILE; } -#line 7019 "Zend/zend_language_scanner.c" +#line 7022 "Zend/zend_language_scanner.c" yy764: YYDEBUG(764, *YYCURSOR); yych = *++YYCURSOR; @@ -7044,11 +7047,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(769, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1135 "Zend/zend_language_scanner.l" +#line 1138 "Zend/zend_language_scanner.l" { return T_ENDSWITCH; } -#line 7052 "Zend/zend_language_scanner.c" +#line 7055 "Zend/zend_language_scanner.c" yy770: YYDEBUG(770, *YYCURSOR); ++YYCURSOR; @@ -7057,11 +7060,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(771, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1079 "Zend/zend_language_scanner.l" +#line 1082 "Zend/zend_language_scanner.l" { return T_ENDIF; } -#line 7065 "Zend/zend_language_scanner.c" +#line 7068 "Zend/zend_language_scanner.c" yy772: YYDEBUG(772, *YYCURSOR); yych = *++YYCURSOR; @@ -7090,11 +7093,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy774: YYDEBUG(774, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1103 "Zend/zend_language_scanner.l" +#line 1106 "Zend/zend_language_scanner.l" { return T_ENDFOR; } -#line 7098 "Zend/zend_language_scanner.c" +#line 7101 "Zend/zend_language_scanner.c" yy775: YYDEBUG(775, *YYCURSOR); yych = *++YYCURSOR; @@ -7118,11 +7121,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(779, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1111 "Zend/zend_language_scanner.l" +#line 1114 "Zend/zend_language_scanner.l" { return T_ENDFOREACH; } -#line 7126 "Zend/zend_language_scanner.c" +#line 7129 "Zend/zend_language_scanner.c" yy780: YYDEBUG(780, *YYCURSOR); yych = *++YYCURSOR; @@ -7156,11 +7159,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(786, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1119 "Zend/zend_language_scanner.l" +#line 1122 "Zend/zend_language_scanner.l" { return T_ENDDECLARE; } -#line 7164 "Zend/zend_language_scanner.c" +#line 7167 "Zend/zend_language_scanner.c" yy787: YYDEBUG(787, *YYCURSOR); yych = *++YYCURSOR; @@ -7179,11 +7182,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(790, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1305 "Zend/zend_language_scanner.l" +#line 1308 "Zend/zend_language_scanner.l" { return T_EMPTY; } -#line 7187 "Zend/zend_language_scanner.c" +#line 7190 "Zend/zend_language_scanner.c" yy791: YYDEBUG(791, *YYCURSOR); yych = *++YYCURSOR; @@ -7212,11 +7215,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy793: YYDEBUG(793, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1083 "Zend/zend_language_scanner.l" +#line 1086 "Zend/zend_language_scanner.l" { return T_ELSE; } -#line 7220 "Zend/zend_language_scanner.c" +#line 7223 "Zend/zend_language_scanner.c" yy794: YYDEBUG(794, *YYCURSOR); yych = *++YYCURSOR; @@ -7230,11 +7233,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(796, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1075 "Zend/zend_language_scanner.l" +#line 1078 "Zend/zend_language_scanner.l" { return T_ELSEIF; } -#line 7238 "Zend/zend_language_scanner.c" +#line 7241 "Zend/zend_language_scanner.c" yy797: YYDEBUG(797, *YYCURSOR); yych = *++YYCURSOR; @@ -7248,11 +7251,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) } YYDEBUG(799, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1159 "Zend/zend_language_scanner.l" +#line 1162 "Zend/zend_language_scanner.l" { return T_ECHO; } -#line 7256 "Zend/zend_language_scanner.c" +#line 7259 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@ -7325,7 +7328,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy803: YYDEBUG(803, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1192 "Zend/zend_language_scanner.l" +#line 1195 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -7333,7 +7336,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 7337 "Zend/zend_language_scanner.c" +#line 7340 "Zend/zend_language_scanner.c" yy804: YYDEBUG(804, *YYCURSOR); ++YYCURSOR; @@ -7341,13 +7344,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy805: YYDEBUG(805, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1211 "Zend/zend_language_scanner.l" +#line 1214 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); goto restart; } -#line 7351 "Zend/zend_language_scanner.c" +#line 7354 "Zend/zend_language_scanner.c" yy806: YYDEBUG(806, *YYCURSOR); ++YYCURSOR; @@ -7356,14 +7359,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy807: YYDEBUG(807, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1204 "Zend/zend_language_scanner.l" +#line 1207 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 7367 "Zend/zend_language_scanner.c" +#line 7370 "Zend/zend_language_scanner.c" yy808: YYDEBUG(808, *YYCURSOR); yych = *++YYCURSOR; @@ -7384,11 +7387,11 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(812, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1200 "Zend/zend_language_scanner.l" +#line 1203 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } -#line 7392 "Zend/zend_language_scanner.c" +#line 7395 "Zend/zend_language_scanner.c" yy813: YYDEBUG(813, *YYCURSOR); ++YYCURSOR; @@ -7473,14 +7476,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy818: YYDEBUG(818, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1497 "Zend/zend_language_scanner.l" +#line 1500 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } -#line 7484 "Zend/zend_language_scanner.c" +#line 7487 "Zend/zend_language_scanner.c" yy819: YYDEBUG(819, *YYCURSOR); yych = *++YYCURSOR; @@ -7505,7 +7508,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(824, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1487 "Zend/zend_language_scanner.l" +#line 1490 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_copy_value(zendlval, yytext, yyleng); @@ -7514,7 +7517,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } -#line 7518 "Zend/zend_language_scanner.c" +#line 7521 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_NOWDOC: @@ -7525,7 +7528,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(828, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2381 "Zend/zend_language_scanner.l" +#line 2384 "Zend/zend_language_scanner.l" { int newline = 0; @@ -7582,7 +7585,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) HANDLE_NEWLINES(yytext, yyleng - newline); return T_ENCAPSED_AND_WHITESPACE; } -#line 7586 "Zend/zend_language_scanner.c" +#line 7589 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_VAR_OFFSET: { @@ -7689,7 +7692,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy832: YYDEBUG(832, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1575 "Zend/zend_language_scanner.l" +#line 1578 "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); @@ -7701,7 +7704,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) } return T_NUM_STRING; } -#line 7705 "Zend/zend_language_scanner.c" +#line 7708 "Zend/zend_language_scanner.c" yy833: YYDEBUG(833, *YYCURSOR); yych = *++YYCURSOR; @@ -7721,23 +7724,23 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy835: YYDEBUG(835, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1907 "Zend/zend_language_scanner.l" +#line 1910 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } -#line 7730 "Zend/zend_language_scanner.c" +#line 7733 "Zend/zend_language_scanner.c" yy836: YYDEBUG(836, *YYCURSOR); ++YYCURSOR; YYDEBUG(837, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1902 "Zend/zend_language_scanner.l" +#line 1905 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } -#line 7741 "Zend/zend_language_scanner.c" +#line 7744 "Zend/zend_language_scanner.c" yy838: YYDEBUG(838, *YYCURSOR); yych = *++YYCURSOR; @@ -7747,14 +7750,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) ++YYCURSOR; YYDEBUG(840, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1912 "Zend/zend_language_scanner.l" +#line 1915 "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 7758 "Zend/zend_language_scanner.c" +#line 7761 "Zend/zend_language_scanner.c" yy841: YYDEBUG(841, *YYCURSOR); ++YYCURSOR; @@ -7763,19 +7766,19 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy842: YYDEBUG(842, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1919 "Zend/zend_language_scanner.l" +#line 1922 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 7773 "Zend/zend_language_scanner.c" +#line 7776 "Zend/zend_language_scanner.c" yy843: YYDEBUG(843, *YYCURSOR); ++YYCURSOR; YYDEBUG(844, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2439 "Zend/zend_language_scanner.l" +#line 2442 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -7784,7 +7787,7 @@ int lex_scan(zval *zendlval TSRMLS_DC) zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 7788 "Zend/zend_language_scanner.c" +#line 7791 "Zend/zend_language_scanner.c" yy845: YYDEBUG(845, *YYCURSOR); ++YYCURSOR; @@ -7820,13 +7823,13 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy849: YYDEBUG(849, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1896 "Zend/zend_language_scanner.l" +#line 1899 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 7830 "Zend/zend_language_scanner.c" +#line 7833 "Zend/zend_language_scanner.c" yy850: YYDEBUG(850, *YYCURSOR); ++YYCURSOR; @@ -7866,14 +7869,14 @@ int lex_scan(zval *zendlval TSRMLS_DC) yy857: YYDEBUG(857, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1587 "Zend/zend_language_scanner.l" +#line 1590 "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 7877 "Zend/zend_language_scanner.c" +#line 7880 "Zend/zend_language_scanner.c" yy858: YYDEBUG(858, *YYCURSOR); ++YYCURSOR; @@ -7896,6 +7899,6 @@ int lex_scan(zval *zendlval TSRMLS_DC) goto yy857; } } -#line 2448 "Zend/zend_language_scanner.l" +#line 2451 "Zend/zend_language_scanner.l" } diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index d5ed66885f0f..692693cf1f0d 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -225,8 +225,11 @@ ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC) lex_state->output_filter = SCNG(output_filter); lex_state->script_encoding = SCNG(script_encoding); - lex_state->doc_comment = CG(doc_comment); + lex_state->doc_comment = NULL; lex_state->doc_comment_len = CG(doc_comment_len); + if (CG(doc_comment)) { + lex_state->doc_comment = estrndup(CG(doc_comment), lex_state->doc_comment_len); + } } ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC)