From: Matt Wilmas Date: Sat, 10 May 2008 09:15:17 +0000 (+0000) Subject: Restore end check for "escape" strings (not needed for single-quoted strings as they... X-Git-Tag: RELEASE_2_0_0b1~38 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ff34ca0b93accf8ddd896cc4f2a63ce299dacc1a;p=php Restore end check for "escape" strings (not needed for single-quoted strings as they can't have an unescaped backslash at the end) --- diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c index 66893f86d0..72ec60a795 100644 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.4 on Fri May 09 05:04:01 2008 */ +/* Generated by re2c 0.13.4 on Sat May 10 04:04:00 2008 */ #line 1 "Zend/zend_language_scanner.l" /* +----------------------------------------------------------------------+ @@ -988,6 +988,10 @@ static int zend_scan_unicode_escape_string(zval *zendlval, char *str, int len, U if (*s==0x5C /*'\\'*/) { s++; c = *s; + if (s >= end) { + *t++ = 0x5C; /*'\\'*/ + break; + } min_digits = 0; codepoint = 0; @@ -1188,6 +1192,10 @@ static void zend_scan_binary_escape_string(zval *zendlval, char *str, int len, c while (s= end) { + *t++ = '\\'; + break; + } switch(*s) { case 'n': @@ -1330,7 +1338,7 @@ yymore_restart: } -#line 1334 "Zend/zend_language_scanner.c" +#line 1342 "Zend/zend_language_scanner.c" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -1454,7 +1462,7 @@ yyc_INITIAL: yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2157 "Zend/zend_language_scanner.l" +#line 2165 "Zend/zend_language_scanner.l" { while (1) { @@ -1485,7 +1493,7 @@ inline_char_handler: HANDLE_NEWLINES(yytext, yyleng); return T_INLINE_HTML; } -#line 1489 "Zend/zend_language_scanner.c" +#line 1497 "Zend/zend_language_scanner.c" yy4: YYDEBUG(4, *YYCURSOR); yyaccept = 0; @@ -1512,7 +1520,7 @@ yy8: yy9: YYDEBUG(9, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2148 "Zend/zend_language_scanner.l" +#line 2156 "Zend/zend_language_scanner.l" { if ((YYCTYPE*)yytext == SCNG(yy_start)) { /* ignore first line when it's started with a # */ @@ -1521,7 +1529,7 @@ yy9: goto inline_char_handler; } } -#line 1525 "Zend/zend_language_scanner.c" +#line 1533 "Zend/zend_language_scanner.c" yy10: YYDEBUG(10, *YYCURSOR); yyaccept = 1; @@ -1547,7 +1555,7 @@ yy12: yy13: YYDEBUG(13, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2132 "Zend/zend_language_scanner.l" +#line 2140 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); if (CG(short_tags)) { @@ -1563,14 +1571,14 @@ yy13: return T_INLINE_HTML; } } -#line 1567 "Zend/zend_language_scanner.c" +#line 1575 "Zend/zend_language_scanner.c" yy14: YYDEBUG(14, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy50; YYDEBUG(15, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2106 "Zend/zend_language_scanner.l" +#line 2114 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ @@ -1585,7 +1593,7 @@ yy14: return T_INLINE_HTML; } } -#line 1589 "Zend/zend_language_scanner.c" +#line 1597 "Zend/zend_language_scanner.c" yy16: YYDEBUG(16, *YYCURSOR); yych = *++YYCURSOR; @@ -1775,7 +1783,7 @@ yy42: ++YYCURSOR; YYDEBUG(45, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2065 "Zend/zend_language_scanner.l" +#line 2073 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ @@ -1784,7 +1792,7 @@ yy42: BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1788 "Zend/zend_language_scanner.c" +#line 1796 "Zend/zend_language_scanner.c" yy46: YYDEBUG(46, *YYCURSOR); yych = *++YYCURSOR; @@ -1811,7 +1819,7 @@ yy50: ++YYCURSOR; YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2074 "Zend/zend_language_scanner.l" +#line 2082 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ @@ -1826,13 +1834,13 @@ yy50: return T_INLINE_HTML; } } -#line 1830 "Zend/zend_language_scanner.c" +#line 1838 "Zend/zend_language_scanner.c" yy52: YYDEBUG(52, *YYCURSOR); ++YYCURSOR; YYDEBUG(53, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2090 "Zend/zend_language_scanner.l" +#line 2098 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ @@ -1847,7 +1855,7 @@ yy52: return T_INLINE_HTML; } } -#line 1851 "Zend/zend_language_scanner.c" +#line 1859 "Zend/zend_language_scanner.c" yy54: YYDEBUG(54, *YYCURSOR); yych = *++YYCURSOR; @@ -1874,7 +1882,7 @@ yy57: yy58: YYDEBUG(58, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2122 "Zend/zend_language_scanner.l" +#line 2130 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ Z_STRLEN_P(zendlval) = yyleng; @@ -1883,7 +1891,7 @@ yy58: BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1887 "Zend/zend_language_scanner.c" +#line 1895 "Zend/zend_language_scanner.c" yy59: YYDEBUG(59, *YYCURSOR); ++YYCURSOR; @@ -1974,13 +1982,13 @@ yy63: yy64: YYDEBUG(64, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2564 "Zend/zend_language_scanner.l" +#line 2572 "Zend/zend_language_scanner.l" { Z_LVAL_P(zendlval) = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_CURLY_OPEN; } -#line 1984 "Zend/zend_language_scanner.c" +#line 1992 "Zend/zend_language_scanner.c" yy65: YYDEBUG(65, *YYCURSOR); yyaccept = 1; @@ -1998,7 +2006,7 @@ yy66: yy67: YYDEBUG(67, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2599 "Zend/zend_language_scanner.l" +#line 2607 "Zend/zend_language_scanner.l" { if (CG(literal_type) == IS_UNICODE) { return zend_scan_unicode_escape_string(zendlval, yytext, yyleng, 0x60 /*'`'*/, T_ENCAPSED_AND_WHITESPACE TSRMLS_CC); @@ -2007,7 +2015,7 @@ yy67: return T_ENCAPSED_AND_WHITESPACE; } } -#line 2011 "Zend/zend_language_scanner.c" +#line 2019 "Zend/zend_language_scanner.c" yy68: YYDEBUG(68, *YYCURSOR); ++YYCURSOR; @@ -2019,12 +2027,12 @@ yy69: ++YYCURSOR; YYDEBUG(70, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2762 "Zend/zend_language_scanner.l" +#line 2770 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; } -#line 2028 "Zend/zend_language_scanner.c" +#line 2036 "Zend/zend_language_scanner.c" yy71: YYDEBUG(71, *YYCURSOR); ++YYCURSOR; @@ -2112,7 +2120,7 @@ yy75: yy77: YYDEBUG(77, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2608 "Zend/zend_language_scanner.l" +#line 2616 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -2124,7 +2132,7 @@ yy77: return T_ENCAPSED_AND_WHITESPACE; } } -#line 2128 "Zend/zend_language_scanner.c" +#line 2136 "Zend/zend_language_scanner.c" yy78: YYDEBUG(78, *YYCURSOR); yych = *++YYCURSOR; @@ -2158,7 +2166,7 @@ yy81: yy83: YYDEBUG(83, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2221 "Zend/zend_language_scanner.l" +#line 2229 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -2168,18 +2176,18 @@ yy83: } return T_VARIABLE; } -#line 2172 "Zend/zend_language_scanner.c" +#line 2180 "Zend/zend_language_scanner.c" yy84: YYDEBUG(84, *YYCURSOR); ++YYCURSOR; YYDEBUG(85, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1830 "Zend/zend_language_scanner.l" +#line 1838 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 2183 "Zend/zend_language_scanner.c" +#line 2191 "Zend/zend_language_scanner.c" yy86: YYDEBUG(86, *YYCURSOR); yych = *++YYCURSOR; @@ -2190,7 +2198,7 @@ yy87: ++YYCURSOR; YYDEBUG(88, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2207 "Zend/zend_language_scanner.l" +#line 2215 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -2204,7 +2212,7 @@ yy87: } return T_VARIABLE; } -#line 2208 "Zend/zend_language_scanner.c" +#line 2216 "Zend/zend_language_scanner.c" yy89: YYDEBUG(89, *YYCURSOR); yych = *++YYCURSOR; @@ -2222,7 +2230,7 @@ yy90: ++YYCURSOR; YYDEBUG(91, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2191 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { yyleng -= 3; yyless(yyleng); @@ -2236,7 +2244,7 @@ yy90: } return T_VARIABLE; } -#line 2240 "Zend/zend_language_scanner.c" +#line 2248 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_COMMENT: @@ -2293,34 +2301,34 @@ yy94: } YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2330 "Zend/zend_language_scanner.l" +#line 2338 "Zend/zend_language_scanner.l" { yymore(); } -#line 2301 "Zend/zend_language_scanner.c" +#line 2309 "Zend/zend_language_scanner.c" yy97: YYDEBUG(97, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '/') goto yy99; YYDEBUG(98, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2353 "Zend/zend_language_scanner.l" +#line 2361 "Zend/zend_language_scanner.l" { yymore(); } -#line 2312 "Zend/zend_language_scanner.c" +#line 2320 "Zend/zend_language_scanner.c" yy99: YYDEBUG(99, *YYCURSOR); ++YYCURSOR; YYDEBUG(100, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2347 "Zend/zend_language_scanner.l" +#line 2355 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); BEGIN(ST_IN_SCRIPTING); return T_COMMENT; } -#line 2324 "Zend/zend_language_scanner.c" +#line 2332 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOC_COMMENT: @@ -2377,28 +2385,28 @@ yy103: } YYDEBUG(105, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2330 "Zend/zend_language_scanner.l" +#line 2338 "Zend/zend_language_scanner.l" { yymore(); } -#line 2385 "Zend/zend_language_scanner.c" +#line 2393 "Zend/zend_language_scanner.c" yy106: YYDEBUG(106, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '/') goto yy108; YYDEBUG(107, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2353 "Zend/zend_language_scanner.l" +#line 2361 "Zend/zend_language_scanner.l" { yymore(); } -#line 2396 "Zend/zend_language_scanner.c" +#line 2404 "Zend/zend_language_scanner.c" yy108: YYDEBUG(108, *YYCURSOR); ++YYCURSOR; YYDEBUG(109, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2334 "Zend/zend_language_scanner.l" +#line 2342 "Zend/zend_language_scanner.l" { zval temp; @@ -2411,7 +2419,7 @@ yy108: BEGIN(ST_IN_SCRIPTING); return T_DOC_COMMENT; } -#line 2415 "Zend/zend_language_scanner.c" +#line 2423 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOUBLE_QUOTES: @@ -2498,13 +2506,13 @@ yy113: yy114: YYDEBUG(114, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2564 "Zend/zend_language_scanner.l" +#line 2572 "Zend/zend_language_scanner.l" { Z_LVAL_P(zendlval) = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_CURLY_OPEN; } -#line 2508 "Zend/zend_language_scanner.c" +#line 2516 "Zend/zend_language_scanner.c" yy115: YYDEBUG(115, *YYCURSOR); yyaccept = 1; @@ -2523,7 +2531,7 @@ yy116: yy117: YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2571 "Zend/zend_language_scanner.l" +#line 2579 "Zend/zend_language_scanner.l" { if (CG(literal_type) == IS_UNICODE) { return zend_scan_unicode_escape_string(zendlval, yytext, yyleng, 0x22 /*'"'*/, T_ENCAPSED_AND_WHITESPACE TSRMLS_CC); @@ -2532,7 +2540,7 @@ yy117: return T_ENCAPSED_AND_WHITESPACE; } } -#line 2536 "Zend/zend_language_scanner.c" +#line 2544 "Zend/zend_language_scanner.c" yy118: YYDEBUG(118, *YYCURSOR); ++YYCURSOR; @@ -2544,12 +2552,12 @@ yy119: ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2756 "Zend/zend_language_scanner.l" +#line 2764 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; } -#line 2553 "Zend/zend_language_scanner.c" +#line 2561 "Zend/zend_language_scanner.c" yy121: YYDEBUG(121, *YYCURSOR); ++YYCURSOR; @@ -2640,7 +2648,7 @@ yy125: yy127: YYDEBUG(127, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2586 "Zend/zend_language_scanner.l" +#line 2594 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -2652,7 +2660,7 @@ yy127: return T_ENCAPSED_AND_WHITESPACE; } } -#line 2656 "Zend/zend_language_scanner.c" +#line 2664 "Zend/zend_language_scanner.c" yy128: YYDEBUG(128, *YYCURSOR); yych = *++YYCURSOR; @@ -2686,7 +2694,7 @@ yy131: yy133: YYDEBUG(133, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2221 "Zend/zend_language_scanner.l" +#line 2229 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -2696,18 +2704,18 @@ yy133: } return T_VARIABLE; } -#line 2700 "Zend/zend_language_scanner.c" +#line 2708 "Zend/zend_language_scanner.c" yy134: YYDEBUG(134, *YYCURSOR); ++YYCURSOR; YYDEBUG(135, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1830 "Zend/zend_language_scanner.l" +#line 1838 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 2711 "Zend/zend_language_scanner.c" +#line 2719 "Zend/zend_language_scanner.c" yy136: YYDEBUG(136, *YYCURSOR); yych = *++YYCURSOR; @@ -2718,7 +2726,7 @@ yy137: ++YYCURSOR; YYDEBUG(138, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2207 "Zend/zend_language_scanner.l" +#line 2215 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -2732,7 +2740,7 @@ yy137: } return T_VARIABLE; } -#line 2736 "Zend/zend_language_scanner.c" +#line 2744 "Zend/zend_language_scanner.c" yy139: YYDEBUG(139, *YYCURSOR); yych = *++YYCURSOR; @@ -2750,7 +2758,7 @@ yy140: ++YYCURSOR; YYDEBUG(141, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2191 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { yyleng -= 3; yyless(yyleng); @@ -2764,7 +2772,7 @@ yy140: } return T_VARIABLE; } -#line 2768 "Zend/zend_language_scanner.c" +#line 2776 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_END_HEREDOC: @@ -2775,7 +2783,7 @@ yyc_ST_END_HEREDOC: ++YYCURSOR; YYDEBUG(145, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2553 "Zend/zend_language_scanner.l" +#line 2561 "Zend/zend_language_scanner.l" { SCNG(yy_text) = Z_STRVAL_P(zendlval) = CG(heredoc); SCNG(yy_leng) = Z_STRLEN_P(zendlval) = CG(heredoc_len); @@ -2784,7 +2792,7 @@ yyc_ST_END_HEREDOC: BEGIN(ST_IN_SCRIPTING); return T_END_HEREDOC; } -#line 2788 "Zend/zend_language_scanner.c" +#line 2796 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_END_NOWDOC: YYDEBUG(146, *YYCURSOR); @@ -2794,7 +2802,7 @@ yyc_ST_END_NOWDOC: ++YYCURSOR; YYDEBUG(149, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2745 "Zend/zend_language_scanner.l" +#line 2753 "Zend/zend_language_scanner.l" { SCNG(yy_text) = Z_STRVAL_P(zendlval) = CG(heredoc); SCNG(yy_leng) = Z_STRLEN_P(zendlval) = CG(heredoc_len); @@ -2803,7 +2811,7 @@ yyc_ST_END_NOWDOC: BEGIN(ST_IN_SCRIPTING); return T_END_NOWDOC; } -#line 2807 "Zend/zend_language_scanner.c" +#line 2815 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_HEREDOC: { @@ -2860,7 +2868,7 @@ yyc_ST_HEREDOC: yy152: YYDEBUG(152, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2628 "Zend/zend_language_scanner.l" +#line 2636 "Zend/zend_language_scanner.l" { if (CG(literal_type) == IS_UNICODE) { return zend_scan_unicode_escape_string(zendlval, yytext, yyleng, 0, T_ENCAPSED_AND_WHITESPACE TSRMLS_CC); @@ -2869,7 +2877,7 @@ yy152: return T_ENCAPSED_AND_WHITESPACE; } } -#line 2873 "Zend/zend_language_scanner.c" +#line 2881 "Zend/zend_language_scanner.c" yy153: YYDEBUG(153, *YYCURSOR); yych = *++YYCURSOR; @@ -2915,13 +2923,13 @@ yy154: yy155: YYDEBUG(155, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2564 "Zend/zend_language_scanner.l" +#line 2572 "Zend/zend_language_scanner.l" { Z_LVAL_P(zendlval) = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_CURLY_OPEN; } -#line 2925 "Zend/zend_language_scanner.c" +#line 2933 "Zend/zend_language_scanner.c" yy156: YYDEBUG(156, *YYCURSOR); yyaccept = 0; @@ -3172,7 +3180,7 @@ yy172: yy174: YYDEBUG(174, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2637 "Zend/zend_language_scanner.l" +#line 2645 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -3184,7 +3192,7 @@ yy174: return T_ENCAPSED_AND_WHITESPACE; } } -#line 3188 "Zend/zend_language_scanner.c" +#line 3196 "Zend/zend_language_scanner.c" yy175: YYDEBUG(175, *YYCURSOR); yyaccept = 2; @@ -3283,7 +3291,7 @@ yy181: ++YYCURSOR; YYDEBUG(182, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2508 "Zend/zend_language_scanner.l" +#line 2516 "Zend/zend_language_scanner.l" { char *end = yytext + yyleng - 1; @@ -3328,7 +3336,7 @@ yy181: yymore(); } } -#line 3332 "Zend/zend_language_scanner.c" +#line 3340 "Zend/zend_language_scanner.c" yy183: YYDEBUG(183, *YYCURSOR); yyaccept = 2; @@ -3588,7 +3596,7 @@ yy202: yy204: YYDEBUG(204, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2221 "Zend/zend_language_scanner.l" +#line 2229 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -3598,18 +3606,18 @@ yy204: } return T_VARIABLE; } -#line 3602 "Zend/zend_language_scanner.c" +#line 3610 "Zend/zend_language_scanner.c" yy205: YYDEBUG(205, *YYCURSOR); ++YYCURSOR; YYDEBUG(206, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1830 "Zend/zend_language_scanner.l" +#line 1838 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 3613 "Zend/zend_language_scanner.c" +#line 3621 "Zend/zend_language_scanner.c" yy207: YYDEBUG(207, *YYCURSOR); yych = *++YYCURSOR; @@ -3620,7 +3628,7 @@ yy208: ++YYCURSOR; YYDEBUG(209, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2207 "Zend/zend_language_scanner.l" +#line 2215 "Zend/zend_language_scanner.l" { yyleng--; yyless(yyleng); @@ -3634,7 +3642,7 @@ yy208: } return T_VARIABLE; } -#line 3638 "Zend/zend_language_scanner.c" +#line 3646 "Zend/zend_language_scanner.c" yy210: YYDEBUG(210, *YYCURSOR); yych = *++YYCURSOR; @@ -3652,7 +3660,7 @@ yy211: ++YYCURSOR; YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2191 "Zend/zend_language_scanner.l" +#line 2199 "Zend/zend_language_scanner.l" { yyleng -= 3; yyless(yyleng); @@ -3666,7 +3674,7 @@ yy211: } return T_VARIABLE; } -#line 3670 "Zend/zend_language_scanner.c" +#line 3678 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_IN_SCRIPTING: @@ -3881,7 +3889,7 @@ yy215: yy216: YYDEBUG(216, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2250 "Zend/zend_language_scanner.l" +#line 2258 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -3891,7 +3899,7 @@ yy216: } return T_STRING; } -#line 3895 "Zend/zend_language_scanner.c" +#line 3903 "Zend/zend_language_scanner.c" yy217: YYDEBUG(217, *YYCURSOR); yych = *++YYCURSOR; @@ -4138,11 +4146,11 @@ yy229: yy230: YYDEBUG(230, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1819 "Zend/zend_language_scanner.l" +#line 1827 "Zend/zend_language_scanner.l" { return yytext[0]; } -#line 4146 "Zend/zend_language_scanner.c" +#line 4154 "Zend/zend_language_scanner.c" yy231: YYDEBUG(231, *YYCURSOR); ++YYCURSOR; @@ -4151,7 +4159,7 @@ yy231: yy232: YYDEBUG(232, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1550 "Zend/zend_language_scanner.l" +#line 1558 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ Z_STRLEN_P(zendlval) = yyleng; @@ -4159,7 +4167,7 @@ yy232: HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 4163 "Zend/zend_language_scanner.c" +#line 4171 "Zend/zend_language_scanner.c" yy233: YYDEBUG(233, *YYCURSOR); yych = *++YYCURSOR; @@ -4392,18 +4400,18 @@ yy257: ++YYCURSOR; YYDEBUG(258, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1824 "Zend/zend_language_scanner.l" +#line 1832 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } -#line 4401 "Zend/zend_language_scanner.c" +#line 4409 "Zend/zend_language_scanner.c" yy259: YYDEBUG(259, *YYCURSOR); ++YYCURSOR; YYDEBUG(260, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1836 "Zend/zend_language_scanner.l" +#line 1844 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); if (!zend_stack_is_empty(&SCNG(state_stack))) { @@ -4411,7 +4419,7 @@ yy259: } return '}'; } -#line 4415 "Zend/zend_language_scanner.c" +#line 4423 "Zend/zend_language_scanner.c" yy261: YYDEBUG(261, *YYCURSOR); yyaccept = 2; @@ -4434,7 +4442,7 @@ yy261: yy262: YYDEBUG(262, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1866 "Zend/zend_language_scanner.l" +#line 1874 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ Z_LVAL_P(zendlval) = strtol(yytext, NULL, 0); @@ -4455,7 +4463,7 @@ yy262: Z_TYPE_P(zendlval) = IS_LONG; return T_LNUMBER; } -#line 4459 "Zend/zend_language_scanner.c" +#line 4467 "Zend/zend_language_scanner.c" yy263: YYDEBUG(263, *YYCURSOR); yyaccept = 2; @@ -4483,12 +4491,12 @@ yy265: yy266: YYDEBUG(266, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2268 "Zend/zend_language_scanner.l" +#line 2276 "Zend/zend_language_scanner.l" { BEGIN(ST_ONE_LINE_COMMENT); yymore(); } -#line 4492 "Zend/zend_language_scanner.c" +#line 4500 "Zend/zend_language_scanner.c" yy267: YYDEBUG(267, *YYCURSOR); yyaccept = 3; @@ -4497,12 +4505,12 @@ yy267: yy268: YYDEBUG(268, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2415 "Zend/zend_language_scanner.l" +#line 2423 "Zend/zend_language_scanner.l" { BEGIN(ST_DOUBLE_QUOTES); return '"'; } -#line 4506 "Zend/zend_language_scanner.c" +#line 4514 "Zend/zend_language_scanner.c" yy269: YYDEBUG(269, *YYCURSOR); yyaccept = 4; @@ -4511,23 +4519,23 @@ yy269: yy270: YYDEBUG(270, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2768 "Zend/zend_language_scanner.l" +#line 2776 "Zend/zend_language_scanner.l" { zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 4520 "Zend/zend_language_scanner.c" +#line 4528 "Zend/zend_language_scanner.c" yy271: YYDEBUG(271, *YYCURSOR); ++YYCURSOR; YYDEBUG(272, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2467 "Zend/zend_language_scanner.l" +#line 2475 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } -#line 4531 "Zend/zend_language_scanner.c" +#line 4539 "Zend/zend_language_scanner.c" yy273: YYDEBUG(273, *YYCURSOR); yych = *++YYCURSOR; @@ -4553,7 +4561,7 @@ yy277: ++YYCURSOR; YYDEBUG(278, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2399 "Zend/zend_language_scanner.l" +#line 2407 "Zend/zend_language_scanner.l" { if (UG(unicode)) { return zend_scan_unicode_single_string(zendlval TSRMLS_CC); @@ -4562,7 +4570,7 @@ yy277: return T_CONSTANT_ENCAPSED_STRING; } } -#line 4566 "Zend/zend_language_scanner.c" +#line 4574 "Zend/zend_language_scanner.c" yy279: YYDEBUG(279, *YYCURSOR); ++YYCURSOR; @@ -4663,7 +4671,7 @@ yy287: ++YYCURSOR; YYDEBUG(288, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2383 "Zend/zend_language_scanner.l" +#line 2391 "Zend/zend_language_scanner.l" { if (UG(unicode)) { return zend_scan_unicode_escape_string(zendlval, yytext+1, yyleng-2, 0x22 /*'"'*/, T_CONSTANT_ENCAPSED_STRING TSRMLS_CC); @@ -4672,7 +4680,7 @@ yy287: return T_CONSTANT_ENCAPSED_STRING; } } -#line 4676 "Zend/zend_language_scanner.c" +#line 4684 "Zend/zend_language_scanner.c" yy289: YYDEBUG(289, *YYCURSOR); ++YYCURSOR; @@ -4705,13 +4713,13 @@ yy292: yy294: YYDEBUG(294, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1927 "Zend/zend_language_scanner.l" +#line 1935 "Zend/zend_language_scanner.l" { Z_DVAL_P(zendlval) = zend_strtod(yytext, NULL); Z_TYPE_P(zendlval) = IS_DOUBLE; return T_DNUMBER; } -#line 4715 "Zend/zend_language_scanner.c" +#line 4723 "Zend/zend_language_scanner.c" yy295: YYDEBUG(295, *YYCURSOR); yyaccept = 2; @@ -4773,7 +4781,7 @@ yy302: } YYDEBUG(304, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1887 "Zend/zend_language_scanner.l" +#line 1895 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@ -4794,7 +4802,7 @@ yy302: return T_DNUMBER; } } -#line 4798 "Zend/zend_language_scanner.c" +#line 4806 "Zend/zend_language_scanner.c" yy305: YYDEBUG(305, *YYCURSOR); ++YYCURSOR; @@ -4803,7 +4811,7 @@ yy305: yy306: YYDEBUG(306, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2357 "Zend/zend_language_scanner.l" +#line 2365 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ Z_STRLEN_P(zendlval) = yyleng; @@ -4811,7 +4819,7 @@ yy306: BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } -#line 4815 "Zend/zend_language_scanner.c" +#line 4823 "Zend/zend_language_scanner.c" yy307: YYDEBUG(307, *YYCURSOR); yych = *++YYCURSOR; @@ -4845,7 +4853,7 @@ yy309: yy311: YYDEBUG(311, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2221 "Zend/zend_language_scanner.l" +#line 2229 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -4855,7 +4863,7 @@ yy311: } return T_VARIABLE; } -#line 4859 "Zend/zend_language_scanner.c" +#line 4867 "Zend/zend_language_scanner.c" yy312: YYDEBUG(312, *YYCURSOR); yych = *++YYCURSOR; @@ -4869,11 +4877,11 @@ yy313: } YYDEBUG(314, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1807 "Zend/zend_language_scanner.l" +#line 1815 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } -#line 4877 "Zend/zend_language_scanner.c" +#line 4885 "Zend/zend_language_scanner.c" yy315: YYDEBUG(315, *YYCURSOR); ++YYCURSOR; @@ -4882,61 +4890,61 @@ yy315: } YYDEBUG(316, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1799 "Zend/zend_language_scanner.l" +#line 1807 "Zend/zend_language_scanner.l" { return T_LOGICAL_OR; } -#line 4890 "Zend/zend_language_scanner.c" +#line 4898 "Zend/zend_language_scanner.c" yy317: YYDEBUG(317, *YYCURSOR); ++YYCURSOR; YYDEBUG(318, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1787 "Zend/zend_language_scanner.l" +#line 1795 "Zend/zend_language_scanner.l" { return T_XOR_EQUAL; } -#line 4900 "Zend/zend_language_scanner.c" +#line 4908 "Zend/zend_language_scanner.c" yy319: YYDEBUG(319, *YYCURSOR); ++YYCURSOR; YYDEBUG(320, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1791 "Zend/zend_language_scanner.l" +#line 1799 "Zend/zend_language_scanner.l" { return T_BOOLEAN_OR; } -#line 4910 "Zend/zend_language_scanner.c" +#line 4918 "Zend/zend_language_scanner.c" yy321: YYDEBUG(321, *YYCURSOR); ++YYCURSOR; YYDEBUG(322, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1783 "Zend/zend_language_scanner.l" +#line 1791 "Zend/zend_language_scanner.l" { return T_OR_EQUAL; } -#line 4920 "Zend/zend_language_scanner.c" +#line 4928 "Zend/zend_language_scanner.c" yy323: YYDEBUG(323, *YYCURSOR); ++YYCURSOR; YYDEBUG(324, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1795 "Zend/zend_language_scanner.l" +#line 1803 "Zend/zend_language_scanner.l" { return T_BOOLEAN_AND; } -#line 4930 "Zend/zend_language_scanner.c" +#line 4938 "Zend/zend_language_scanner.c" yy325: YYDEBUG(325, *YYCURSOR); ++YYCURSOR; YYDEBUG(326, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1779 "Zend/zend_language_scanner.l" +#line 1787 "Zend/zend_language_scanner.l" { return T_AND_EQUAL; } -#line 4940 "Zend/zend_language_scanner.c" +#line 4948 "Zend/zend_language_scanner.c" yy327: YYDEBUG(327, *YYCURSOR); ++YYCURSOR; @@ -4945,7 +4953,7 @@ yy327: yy328: YYDEBUG(328, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2366 "Zend/zend_language_scanner.l" +#line 2374 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { BEGIN(INITIAL); @@ -4959,17 +4967,17 @@ yy328: return yytext[0]; } } -#line 4963 "Zend/zend_language_scanner.c" +#line 4971 "Zend/zend_language_scanner.c" yy329: YYDEBUG(329, *YYCURSOR); ++YYCURSOR; YYDEBUG(330, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1767 "Zend/zend_language_scanner.l" +#line 1775 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } -#line 4973 "Zend/zend_language_scanner.c" +#line 4981 "Zend/zend_language_scanner.c" yy331: YYDEBUG(331, *YYCURSOR); yych = *++YYCURSOR; @@ -5000,11 +5008,11 @@ yy335: ++YYCURSOR; YYDEBUG(336, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1763 "Zend/zend_language_scanner.l" +#line 1771 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } -#line 5008 "Zend/zend_language_scanner.c" +#line 5016 "Zend/zend_language_scanner.c" yy337: YYDEBUG(337, *YYCURSOR); yyaccept = 6; @@ -5013,12 +5021,12 @@ yy337: yy338: YYDEBUG(338, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2324 "Zend/zend_language_scanner.l" +#line 2332 "Zend/zend_language_scanner.l" { BEGIN(ST_COMMENT); yymore(); } -#line 5022 "Zend/zend_language_scanner.c" +#line 5030 "Zend/zend_language_scanner.c" yy339: YYDEBUG(339, *YYCURSOR); yych = *++YYCURSOR; @@ -5028,11 +5036,11 @@ yy340: ++YYCURSOR; YYDEBUG(341, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1759 "Zend/zend_language_scanner.l" +#line 1767 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } -#line 5036 "Zend/zend_language_scanner.c" +#line 5044 "Zend/zend_language_scanner.c" yy342: YYDEBUG(342, *YYCURSOR); yych = *++YYCURSOR; @@ -5051,54 +5059,54 @@ yy343: } YYDEBUG(345, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2318 "Zend/zend_language_scanner.l" +#line 2326 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); BEGIN(ST_DOC_COMMENT); yymore(); } -#line 5061 "Zend/zend_language_scanner.c" +#line 5069 "Zend/zend_language_scanner.c" yy346: YYDEBUG(346, *YYCURSOR); ++YYCURSOR; YYDEBUG(347, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1755 "Zend/zend_language_scanner.l" +#line 1763 "Zend/zend_language_scanner.l" { return T_MUL_EQUAL; } -#line 5071 "Zend/zend_language_scanner.c" +#line 5079 "Zend/zend_language_scanner.c" yy348: YYDEBUG(348, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy352; YYDEBUG(349, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1815 "Zend/zend_language_scanner.l" +#line 1823 "Zend/zend_language_scanner.l" { return T_SR; } -#line 5082 "Zend/zend_language_scanner.c" +#line 5090 "Zend/zend_language_scanner.c" yy350: YYDEBUG(350, *YYCURSOR); ++YYCURSOR; YYDEBUG(351, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1743 "Zend/zend_language_scanner.l" +#line 1751 "Zend/zend_language_scanner.l" { return T_IS_GREATER_OR_EQUAL; } -#line 5092 "Zend/zend_language_scanner.c" +#line 5100 "Zend/zend_language_scanner.c" yy352: YYDEBUG(352, *YYCURSOR); ++YYCURSOR; YYDEBUG(353, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1775 "Zend/zend_language_scanner.l" +#line 1783 "Zend/zend_language_scanner.l" { return T_SR_EQUAL; } -#line 5102 "Zend/zend_language_scanner.c" +#line 5110 "Zend/zend_language_scanner.c" yy354: YYDEBUG(354, *YYCURSOR); yyaccept = 7; @@ -5109,11 +5117,11 @@ yy354: yy355: YYDEBUG(355, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1811 "Zend/zend_language_scanner.l" +#line 1819 "Zend/zend_language_scanner.l" { return T_SL; } -#line 5117 "Zend/zend_language_scanner.c" +#line 5125 "Zend/zend_language_scanner.c" yy356: YYDEBUG(356, *YYCURSOR); yych = *++YYCURSOR; @@ -5125,22 +5133,22 @@ yy357: ++YYCURSOR; YYDEBUG(358, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1739 "Zend/zend_language_scanner.l" +#line 1747 "Zend/zend_language_scanner.l" { return T_IS_SMALLER_OR_EQUAL; } -#line 5133 "Zend/zend_language_scanner.c" +#line 5141 "Zend/zend_language_scanner.c" yy359: YYDEBUG(359, *YYCURSOR); ++YYCURSOR; yy360: YYDEBUG(360, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1735 "Zend/zend_language_scanner.l" +#line 1743 "Zend/zend_language_scanner.l" { return T_IS_NOT_EQUAL; } -#line 5144 "Zend/zend_language_scanner.c" +#line 5152 "Zend/zend_language_scanner.c" yy361: YYDEBUG(361, *YYCURSOR); yych = *++YYCURSOR; @@ -5191,11 +5199,11 @@ yy368: ++YYCURSOR; YYDEBUG(369, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1771 "Zend/zend_language_scanner.l" +#line 1779 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } -#line 5199 "Zend/zend_language_scanner.c" +#line 5207 "Zend/zend_language_scanner.c" yy370: YYDEBUG(370, *YYCURSOR); ++YYCURSOR; @@ -5302,7 +5310,7 @@ yy379: yy380: YYDEBUG(380, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2446 "Zend/zend_language_scanner.l" +#line 2454 "Zend/zend_language_scanner.l" { char *s; @@ -5322,7 +5330,7 @@ yy380: BEGIN(ST_START_HEREDOC); return T_START_HEREDOC; } -#line 5326 "Zend/zend_language_scanner.c" +#line 5334 "Zend/zend_language_scanner.c" yy381: YYDEBUG(381, *YYCURSOR); yych = *++YYCURSOR; @@ -5364,7 +5372,7 @@ yy385: yy386: YYDEBUG(386, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2652 "Zend/zend_language_scanner.l" +#line 2660 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '<') ? 1 : 0; char *s; @@ -5383,7 +5391,7 @@ yy386: BEGIN(ST_START_NOWDOC); return T_START_NOWDOC; } -#line 5387 "Zend/zend_language_scanner.c" +#line 5395 "Zend/zend_language_scanner.c" yy387: YYDEBUG(387, *YYCURSOR); yych = *++YYCURSOR; @@ -5397,31 +5405,31 @@ yy388: ++YYCURSOR; YYDEBUG(390, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1727 "Zend/zend_language_scanner.l" +#line 1735 "Zend/zend_language_scanner.l" { return T_IS_NOT_IDENTICAL; } -#line 5405 "Zend/zend_language_scanner.c" +#line 5413 "Zend/zend_language_scanner.c" yy391: YYDEBUG(391, *YYCURSOR); ++YYCURSOR; YYDEBUG(392, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1747 "Zend/zend_language_scanner.l" +#line 1755 "Zend/zend_language_scanner.l" { return T_PLUS_EQUAL; } -#line 5415 "Zend/zend_language_scanner.c" +#line 5423 "Zend/zend_language_scanner.c" yy393: YYDEBUG(393, *YYCURSOR); ++YYCURSOR; YYDEBUG(394, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1715 "Zend/zend_language_scanner.l" +#line 1723 "Zend/zend_language_scanner.l" { return T_INC; } -#line 5425 "Zend/zend_language_scanner.c" +#line 5433 "Zend/zend_language_scanner.c" yy395: YYDEBUG(395, *YYCURSOR); yych = *++YYCURSOR; @@ -5440,42 +5448,42 @@ yy397: } YYDEBUG(398, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1707 "Zend/zend_language_scanner.l" +#line 1715 "Zend/zend_language_scanner.l" { return T_LIST; } -#line 5448 "Zend/zend_language_scanner.c" +#line 5456 "Zend/zend_language_scanner.c" yy399: YYDEBUG(399, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy403; YYDEBUG(400, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1731 "Zend/zend_language_scanner.l" +#line 1739 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } -#line 5459 "Zend/zend_language_scanner.c" +#line 5467 "Zend/zend_language_scanner.c" yy401: YYDEBUG(401, *YYCURSOR); ++YYCURSOR; YYDEBUG(402, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1703 "Zend/zend_language_scanner.l" +#line 1711 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } -#line 5469 "Zend/zend_language_scanner.c" +#line 5477 "Zend/zend_language_scanner.c" yy403: YYDEBUG(403, *YYCURSOR); ++YYCURSOR; YYDEBUG(404, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1723 "Zend/zend_language_scanner.l" +#line 1731 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } -#line 5479 "Zend/zend_language_scanner.c" +#line 5487 "Zend/zend_language_scanner.c" yy405: YYDEBUG(405, *YYCURSOR); yych = *++YYCURSOR; @@ -5567,7 +5575,7 @@ yy412: } YYDEBUG(423, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2055 "Zend/zend_language_scanner.l" +#line 2063 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@ -5577,7 +5585,7 @@ yy412: } return T_NS_C; } -#line 5581 "Zend/zend_language_scanner.c" +#line 5589 "Zend/zend_language_scanner.c" yy424: YYDEBUG(424, *YYCURSOR); yych = *++YYCURSOR; @@ -5595,7 +5603,7 @@ yy424: } YYDEBUG(428, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2028 "Zend/zend_language_scanner.l" +#line 2036 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@ -5622,7 +5630,7 @@ yy424: zendlval->type = IS_STRING; return T_DIR; } -#line 5626 "Zend/zend_language_scanner.c" +#line 5634 "Zend/zend_language_scanner.c" yy429: YYDEBUG(429, *YYCURSOR); yych = *++YYCURSOR; @@ -5643,13 +5651,13 @@ yy429: } YYDEBUG(434, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2012 "Zend/zend_language_scanner.l" +#line 2020 "Zend/zend_language_scanner.l" { Z_LVAL_P(zendlval) = CG(zend_lineno); Z_TYPE_P(zendlval) = IS_LONG; return T_LINE; } -#line 5653 "Zend/zend_language_scanner.c" +#line 5661 "Zend/zend_language_scanner.c" yy435: YYDEBUG(435, *YYCURSOR); yych = *++YYCURSOR; @@ -5676,7 +5684,7 @@ yy435: } YYDEBUG(442, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1963 "Zend/zend_language_scanner.l" +#line 1971 "Zend/zend_language_scanner.l" { zstr class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL_ZSTR; zstr func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL_ZSTR; @@ -5725,7 +5733,7 @@ yy435: } return T_METHOD_C; } -#line 5729 "Zend/zend_language_scanner.c" +#line 5737 "Zend/zend_language_scanner.c" yy443: YYDEBUG(443, *YYCURSOR); yych = *++YYCURSOR; @@ -5763,7 +5771,7 @@ yy444: } YYDEBUG(453, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1948 "Zend/zend_language_scanner.l" +#line 1956 "Zend/zend_language_scanner.l" { zstr func_name = NULL_ZSTR; @@ -5778,7 +5786,7 @@ yy444: } return T_FUNC_C; } -#line 5782 "Zend/zend_language_scanner.c" +#line 5790 "Zend/zend_language_scanner.c" yy454: YYDEBUG(454, *YYCURSOR); yych = *++YYCURSOR; @@ -5796,7 +5804,7 @@ yy454: } YYDEBUG(458, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2018 "Zend/zend_language_scanner.l" +#line 2026 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@ -5806,7 +5814,7 @@ yy454: ZVAL_RT_STRING(zendlval, filename, 1); return T_FILE; } -#line 5810 "Zend/zend_language_scanner.c" +#line 5818 "Zend/zend_language_scanner.c" yy459: YYDEBUG(459, *YYCURSOR); yych = *++YYCURSOR; @@ -5830,7 +5838,7 @@ yy459: } YYDEBUG(465, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1933 "Zend/zend_language_scanner.l" +#line 1941 "Zend/zend_language_scanner.l" { zstr class_name = NULL_ZSTR; @@ -5845,7 +5853,7 @@ yy459: } return T_CLASS_C; } -#line 5849 "Zend/zend_language_scanner.c" +#line 5857 "Zend/zend_language_scanner.c" yy466: YYDEBUG(466, *YYCURSOR); yych = *++YYCURSOR; @@ -5907,11 +5915,11 @@ yy477: } YYDEBUG(478, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1671 "Zend/zend_language_scanner.l" +#line 1679 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } -#line 5915 "Zend/zend_language_scanner.c" +#line 5923 "Zend/zend_language_scanner.c" yy479: YYDEBUG(479, *YYCURSOR); yych = *++YYCURSOR; @@ -5931,11 +5939,11 @@ yy481: } YYDEBUG(482, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1655 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { return T_USE; } -#line 5939 "Zend/zend_language_scanner.c" +#line 5947 "Zend/zend_language_scanner.c" yy483: YYDEBUG(483, *YYCURSOR); yych = *++YYCURSOR; @@ -5954,11 +5962,11 @@ yy485: } YYDEBUG(486, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1699 "Zend/zend_language_scanner.l" +#line 1707 "Zend/zend_language_scanner.l" { return T_UNSET; } -#line 5962 "Zend/zend_language_scanner.c" +#line 5970 "Zend/zend_language_scanner.c" yy487: YYDEBUG(487, *YYCURSOR); ++YYCURSOR; @@ -6130,11 +6138,11 @@ yy502: ++YYCURSOR; YYDEBUG(504, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1595 "Zend/zend_language_scanner.l" +#line 1603 "Zend/zend_language_scanner.l" { return T_INT_CAST; } -#line 6138 "Zend/zend_language_scanner.c" +#line 6146 "Zend/zend_language_scanner.c" yy505: YYDEBUG(505, *YYCURSOR); yych = *++YYCURSOR; @@ -6178,11 +6186,11 @@ yy510: ++YYCURSOR; YYDEBUG(513, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1599 "Zend/zend_language_scanner.l" +#line 1607 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } -#line 6186 "Zend/zend_language_scanner.c" +#line 6194 "Zend/zend_language_scanner.c" yy514: YYDEBUG(514, *YYCURSOR); yych = *++YYCURSOR; @@ -6252,11 +6260,11 @@ yy524: ++YYCURSOR; YYDEBUG(527, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1603 "Zend/zend_language_scanner.l" +#line 1611 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } -#line 6260 "Zend/zend_language_scanner.c" +#line 6268 "Zend/zend_language_scanner.c" yy528: YYDEBUG(528, *YYCURSOR); yych = *++YYCURSOR; @@ -6289,11 +6297,11 @@ yy531: ++YYCURSOR; YYDEBUG(534, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1615 "Zend/zend_language_scanner.l" +#line 1623 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } -#line 6297 "Zend/zend_language_scanner.c" +#line 6305 "Zend/zend_language_scanner.c" yy535: YYDEBUG(535, *YYCURSOR); yych = *++YYCURSOR; @@ -6331,11 +6339,11 @@ yy539: ++YYCURSOR; YYDEBUG(542, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1619 "Zend/zend_language_scanner.l" +#line 1627 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } -#line 6339 "Zend/zend_language_scanner.c" +#line 6347 "Zend/zend_language_scanner.c" yy543: YYDEBUG(543, *YYCURSOR); yych = *++YYCURSOR; @@ -6376,11 +6384,11 @@ yy548: ++YYCURSOR; YYDEBUG(550, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1623 "Zend/zend_language_scanner.l" +#line 1631 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } -#line 6384 "Zend/zend_language_scanner.c" +#line 6392 "Zend/zend_language_scanner.c" yy551: YYDEBUG(551, *YYCURSOR); yych = *++YYCURSOR; @@ -6424,11 +6432,11 @@ yy556: ++YYCURSOR; YYDEBUG(559, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1611 "Zend/zend_language_scanner.l" +#line 1619 "Zend/zend_language_scanner.l" { return T_BINARY_CAST; } -#line 6432 "Zend/zend_language_scanner.c" +#line 6440 "Zend/zend_language_scanner.c" yy560: YYDEBUG(560, *YYCURSOR); yych = *++YYCURSOR; @@ -6485,11 +6493,11 @@ yy566: ++YYCURSOR; YYDEBUG(569, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1607 "Zend/zend_language_scanner.l" +#line 1615 "Zend/zend_language_scanner.l" { return T_UNICODE_CAST; } -#line 6493 "Zend/zend_language_scanner.c" +#line 6501 "Zend/zend_language_scanner.c" yy570: YYDEBUG(570, *YYCURSOR); yych = *++YYCURSOR; @@ -6512,11 +6520,11 @@ yy571: ++YYCURSOR; YYDEBUG(574, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1627 "Zend/zend_language_scanner.l" +#line 1635 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } -#line 6520 "Zend/zend_language_scanner.c" +#line 6528 "Zend/zend_language_scanner.c" yy575: YYDEBUG(575, *YYCURSOR); yych = *++YYCURSOR; @@ -6530,11 +6538,11 @@ yy576: } YYDEBUG(577, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1591 "Zend/zend_language_scanner.l" +#line 1599 "Zend/zend_language_scanner.l" { return T_VAR; } -#line 6538 "Zend/zend_language_scanner.c" +#line 6546 "Zend/zend_language_scanner.c" yy578: YYDEBUG(578, *YYCURSOR); yych = *++YYCURSOR; @@ -6554,11 +6562,11 @@ yy580: } YYDEBUG(581, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1583 "Zend/zend_language_scanner.l" +#line 1591 "Zend/zend_language_scanner.l" { return T_NEW; } -#line 6562 "Zend/zend_language_scanner.c" +#line 6570 "Zend/zend_language_scanner.c" yy582: YYDEBUG(582, *YYCURSOR); yych = *++YYCURSOR; @@ -6597,21 +6605,21 @@ yy588: } YYDEBUG(589, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1651 "Zend/zend_language_scanner.l" +#line 1659 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } -#line 6605 "Zend/zend_language_scanner.c" +#line 6613 "Zend/zend_language_scanner.c" yy590: YYDEBUG(590, *YYCURSOR); ++YYCURSOR; YYDEBUG(591, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1579 "Zend/zend_language_scanner.l" +#line 1587 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } -#line 6615 "Zend/zend_language_scanner.c" +#line 6623 "Zend/zend_language_scanner.c" yy592: YYDEBUG(592, *YYCURSOR); ++YYCURSOR; @@ -6633,32 +6641,32 @@ yy594: ++YYCURSOR; YYDEBUG(595, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1751 "Zend/zend_language_scanner.l" +#line 1759 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } -#line 6641 "Zend/zend_language_scanner.c" +#line 6649 "Zend/zend_language_scanner.c" yy596: YYDEBUG(596, *YYCURSOR); ++YYCURSOR; YYDEBUG(597, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1727 "Zend/zend_language_scanner.l" { return T_DEC; } -#line 6651 "Zend/zend_language_scanner.c" +#line 6659 "Zend/zend_language_scanner.c" yy598: YYDEBUG(598, *YYCURSOR); ++YYCURSOR; YYDEBUG(599, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1545 "Zend/zend_language_scanner.l" +#line 1553 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } -#line 6662 "Zend/zend_language_scanner.c" +#line 6670 "Zend/zend_language_scanner.c" yy600: YYDEBUG(600, *YYCURSOR); yych = *++YYCURSOR; @@ -6703,11 +6711,11 @@ yy605: } YYDEBUG(606, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1695 "Zend/zend_language_scanner.l" +#line 1703 "Zend/zend_language_scanner.l" { return T_PUBLIC; } -#line 6711 "Zend/zend_language_scanner.c" +#line 6719 "Zend/zend_language_scanner.c" yy607: YYDEBUG(607, *YYCURSOR); yych = *++YYCURSOR; @@ -6762,11 +6770,11 @@ yy614: } YYDEBUG(615, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1691 "Zend/zend_language_scanner.l" +#line 1699 "Zend/zend_language_scanner.l" { return T_PROTECTED; } -#line 6770 "Zend/zend_language_scanner.c" +#line 6778 "Zend/zend_language_scanner.c" yy616: YYDEBUG(616, *YYCURSOR); yych = *++YYCURSOR; @@ -6796,11 +6804,11 @@ yy620: } YYDEBUG(621, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1687 "Zend/zend_language_scanner.l" +#line 1695 "Zend/zend_language_scanner.l" { return T_PRIVATE; } -#line 6804 "Zend/zend_language_scanner.c" +#line 6812 "Zend/zend_language_scanner.c" yy622: YYDEBUG(622, *YYCURSOR); ++YYCURSOR; @@ -6809,11 +6817,11 @@ yy622: } YYDEBUG(623, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1525 "Zend/zend_language_scanner.l" +#line 1533 "Zend/zend_language_scanner.l" { return T_PRINT; } -#line 6817 "Zend/zend_language_scanner.c" +#line 6825 "Zend/zend_language_scanner.c" yy624: YYDEBUG(624, *YYCURSOR); yych = *++YYCURSOR; @@ -6838,11 +6846,11 @@ yy627: } YYDEBUG(628, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1517 "Zend/zend_language_scanner.l" +#line 1525 "Zend/zend_language_scanner.l" { return T_GOTO; } -#line 6846 "Zend/zend_language_scanner.c" +#line 6854 "Zend/zend_language_scanner.c" yy629: YYDEBUG(629, *YYCURSOR); yych = *++YYCURSOR; @@ -6866,11 +6874,11 @@ yy632: } YYDEBUG(633, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1659 "Zend/zend_language_scanner.l" +#line 1667 "Zend/zend_language_scanner.l" { return T_GLOBAL; } -#line 6874 "Zend/zend_language_scanner.c" +#line 6882 "Zend/zend_language_scanner.c" yy634: YYDEBUG(634, *YYCURSOR); yych = *++YYCURSOR; @@ -6884,12 +6892,12 @@ yy635: yy636: YYDEBUG(636, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2420 "Zend/zend_language_scanner.l" +#line 2428 "Zend/zend_language_scanner.l" { BEGIN(ST_DOUBLE_QUOTES); return T_BINARY_DOUBLE; } -#line 6893 "Zend/zend_language_scanner.c" +#line 6901 "Zend/zend_language_scanner.c" yy637: YYDEBUG(637, *YYCURSOR); ++YYCURSOR; @@ -6922,11 +6930,11 @@ yy642: } YYDEBUG(643, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1509 "Zend/zend_language_scanner.l" +#line 1517 "Zend/zend_language_scanner.l" { return T_BREAK; } -#line 6930 "Zend/zend_language_scanner.c" +#line 6938 "Zend/zend_language_scanner.c" yy644: YYDEBUG(644, *YYCURSOR); ++YYCURSOR; @@ -6938,12 +6946,12 @@ yy645: ++YYCURSOR; YYDEBUG(646, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2409 "Zend/zend_language_scanner.l" +#line 2417 "Zend/zend_language_scanner.l" { zend_scan_binary_single_string(zendlval, yytext+2, yyleng-3 TSRMLS_CC); return T_CONSTANT_ENCAPSED_STRING; } -#line 6947 "Zend/zend_language_scanner.c" +#line 6955 "Zend/zend_language_scanner.c" yy647: YYDEBUG(647, *YYCURSOR); ++YYCURSOR; @@ -7017,12 +7025,12 @@ yy654: ++YYCURSOR; YYDEBUG(655, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2393 "Zend/zend_language_scanner.l" +#line 2401 "Zend/zend_language_scanner.l" { zend_scan_binary_escape_string(zendlval, yytext+2, yyleng-3, '"' TSRMLS_CC); return T_CONSTANT_ENCAPSED_STRING; } -#line 7026 "Zend/zend_language_scanner.c" +#line 7034 "Zend/zend_language_scanner.c" yy656: YYDEBUG(656, *YYCURSOR); ++YYCURSOR; @@ -7131,7 +7139,7 @@ yy666: yy667: YYDEBUG(667, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2425 "Zend/zend_language_scanner.l" +#line 2433 "Zend/zend_language_scanner.l" { char *s; @@ -7151,7 +7159,7 @@ yy667: BEGIN(ST_START_HEREDOC); return T_BINARY_HEREDOC; } -#line 7155 "Zend/zend_language_scanner.c" +#line 7163 "Zend/zend_language_scanner.c" yy668: YYDEBUG(668, *YYCURSOR); yych = *++YYCURSOR; @@ -7191,11 +7199,11 @@ yy674: } YYDEBUG(675, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1493 "Zend/zend_language_scanner.l" +#line 1501 "Zend/zend_language_scanner.l" { return T_SWITCH; } -#line 7199 "Zend/zend_language_scanner.c" +#line 7207 "Zend/zend_language_scanner.c" yy676: YYDEBUG(676, *YYCURSOR); yych = *++YYCURSOR; @@ -7219,11 +7227,11 @@ yy679: } YYDEBUG(680, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1675 "Zend/zend_language_scanner.l" +#line 1683 "Zend/zend_language_scanner.l" { return T_STATIC; } -#line 7227 "Zend/zend_language_scanner.c" +#line 7235 "Zend/zend_language_scanner.c" yy681: YYDEBUG(681, *YYCURSOR); yych = *++YYCURSOR; @@ -7250,11 +7258,11 @@ yy684: } YYDEBUG(685, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1489 "Zend/zend_language_scanner.l" +#line 1497 "Zend/zend_language_scanner.l" { return T_AS; } -#line 7258 "Zend/zend_language_scanner.c" +#line 7266 "Zend/zend_language_scanner.c" yy686: YYDEBUG(686, *YYCURSOR); yych = *++YYCURSOR; @@ -7273,11 +7281,11 @@ yy688: } YYDEBUG(689, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1711 "Zend/zend_language_scanner.l" +#line 1719 "Zend/zend_language_scanner.l" { return T_ARRAY; } -#line 7281 "Zend/zend_language_scanner.c" +#line 7289 "Zend/zend_language_scanner.c" yy690: YYDEBUG(690, *YYCURSOR); ++YYCURSOR; @@ -7286,11 +7294,11 @@ yy690: } YYDEBUG(691, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1803 "Zend/zend_language_scanner.l" +#line 1811 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } -#line 7294 "Zend/zend_language_scanner.c" +#line 7302 "Zend/zend_language_scanner.c" yy692: YYDEBUG(692, *YYCURSOR); yych = *++YYCURSOR; @@ -7324,11 +7332,11 @@ yy697: } YYDEBUG(698, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1679 "Zend/zend_language_scanner.l" +#line 1687 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } -#line 7332 "Zend/zend_language_scanner.c" +#line 7340 "Zend/zend_language_scanner.c" yy699: YYDEBUG(699, *YYCURSOR); yych = *++YYCURSOR; @@ -7352,11 +7360,11 @@ yy702: } YYDEBUG(703, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1449 "Zend/zend_language_scanner.l" +#line 1457 "Zend/zend_language_scanner.l" { return T_WHILE; } -#line 7360 "Zend/zend_language_scanner.c" +#line 7368 "Zend/zend_language_scanner.c" yy704: YYDEBUG(704, *YYCURSOR); ++YYCURSOR; @@ -7365,11 +7373,11 @@ yy704: } YYDEBUG(705, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1433 "Zend/zend_language_scanner.l" +#line 1441 "Zend/zend_language_scanner.l" { return T_IF; } -#line 7373 "Zend/zend_language_scanner.c" +#line 7381 "Zend/zend_language_scanner.c" yy706: YYDEBUG(706, *YYCURSOR); yych = *++YYCURSOR; @@ -7421,11 +7429,11 @@ yy711: } YYDEBUG(712, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1663 "Zend/zend_language_scanner.l" +#line 1671 "Zend/zend_language_scanner.l" { return T_ISSET; } -#line 7429 "Zend/zend_language_scanner.c" +#line 7437 "Zend/zend_language_scanner.c" yy713: YYDEBUG(713, *YYCURSOR); yych = *++YYCURSOR; @@ -7479,11 +7487,11 @@ yy719: yy720: YYDEBUG(720, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1635 "Zend/zend_language_scanner.l" +#line 1643 "Zend/zend_language_scanner.l" { return T_INCLUDE; } -#line 7487 "Zend/zend_language_scanner.c" +#line 7495 "Zend/zend_language_scanner.c" yy721: YYDEBUG(721, *YYCURSOR); yych = *++YYCURSOR; @@ -7512,11 +7520,11 @@ yy725: } YYDEBUG(726, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1639 "Zend/zend_language_scanner.l" +#line 1647 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } -#line 7520 "Zend/zend_language_scanner.c" +#line 7528 "Zend/zend_language_scanner.c" yy727: YYDEBUG(727, *YYCURSOR); yych = *++YYCURSOR; @@ -7550,11 +7558,11 @@ yy732: } YYDEBUG(733, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1533 "Zend/zend_language_scanner.l" +#line 1541 "Zend/zend_language_scanner.l" { return T_INTERFACE; } -#line 7558 "Zend/zend_language_scanner.c" +#line 7566 "Zend/zend_language_scanner.c" yy734: YYDEBUG(734, *YYCURSOR); yych = *++YYCURSOR; @@ -7593,11 +7601,11 @@ yy740: } YYDEBUG(741, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1485 "Zend/zend_language_scanner.l" +#line 1493 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } -#line 7601 "Zend/zend_language_scanner.c" +#line 7609 "Zend/zend_language_scanner.c" yy742: YYDEBUG(742, *YYCURSOR); yych = *++YYCURSOR; @@ -7641,11 +7649,11 @@ yy749: } YYDEBUG(750, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1541 "Zend/zend_language_scanner.l" +#line 1549 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } -#line 7649 "Zend/zend_language_scanner.c" +#line 7657 "Zend/zend_language_scanner.c" yy751: YYDEBUG(751, *YYCURSOR); yych = *++YYCURSOR; @@ -7665,11 +7673,11 @@ yy753: } YYDEBUG(754, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1421 "Zend/zend_language_scanner.l" +#line 1429 "Zend/zend_language_scanner.l" { return T_TRY; } -#line 7673 "Zend/zend_language_scanner.c" +#line 7681 "Zend/zend_language_scanner.c" yy755: YYDEBUG(755, *YYCURSOR); yych = *++YYCURSOR; @@ -7688,11 +7696,11 @@ yy757: } YYDEBUG(758, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1429 "Zend/zend_language_scanner.l" +#line 1437 "Zend/zend_language_scanner.l" { return T_THROW; } -#line 7696 "Zend/zend_language_scanner.c" +#line 7704 "Zend/zend_language_scanner.c" yy759: YYDEBUG(759, *YYCURSOR); yych = *++YYCURSOR; @@ -7753,11 +7761,11 @@ yy765: yy766: YYDEBUG(766, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1643 "Zend/zend_language_scanner.l" +#line 1651 "Zend/zend_language_scanner.l" { return T_REQUIRE; } -#line 7761 "Zend/zend_language_scanner.c" +#line 7769 "Zend/zend_language_scanner.c" yy767: YYDEBUG(767, *YYCURSOR); yych = *++YYCURSOR; @@ -7786,11 +7794,11 @@ yy771: } YYDEBUG(772, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1647 "Zend/zend_language_scanner.l" +#line 1655 "Zend/zend_language_scanner.l" { return T_REQUIRE_ONCE; } -#line 7794 "Zend/zend_language_scanner.c" +#line 7802 "Zend/zend_language_scanner.c" yy773: YYDEBUG(773, *YYCURSOR); yych = *++YYCURSOR; @@ -7809,11 +7817,11 @@ yy775: } YYDEBUG(776, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1417 "Zend/zend_language_scanner.l" +#line 1425 "Zend/zend_language_scanner.l" { return T_RETURN; } -#line 7817 "Zend/zend_language_scanner.c" +#line 7825 "Zend/zend_language_scanner.c" yy777: YYDEBUG(777, *YYCURSOR); yych = *++YYCURSOR; @@ -7894,11 +7902,11 @@ yy786: } YYDEBUG(787, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1513 "Zend/zend_language_scanner.l" +#line 1521 "Zend/zend_language_scanner.l" { return T_CONTINUE; } -#line 7902 "Zend/zend_language_scanner.c" +#line 7910 "Zend/zend_language_scanner.c" yy788: YYDEBUG(788, *YYCURSOR); ++YYCURSOR; @@ -7907,11 +7915,11 @@ yy788: } YYDEBUG(789, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1413 "Zend/zend_language_scanner.l" +#line 1421 "Zend/zend_language_scanner.l" { return T_CONST; } -#line 7915 "Zend/zend_language_scanner.c" +#line 7923 "Zend/zend_language_scanner.c" yy790: YYDEBUG(790, *YYCURSOR); yych = *++YYCURSOR; @@ -7936,11 +7944,11 @@ yy793: } YYDEBUG(794, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1587 "Zend/zend_language_scanner.l" +#line 1595 "Zend/zend_language_scanner.l" { return T_CLONE; } -#line 7944 "Zend/zend_language_scanner.c" +#line 7952 "Zend/zend_language_scanner.c" yy795: YYDEBUG(795, *YYCURSOR); yych = *++YYCURSOR; @@ -7954,11 +7962,11 @@ yy796: } YYDEBUG(797, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1529 "Zend/zend_language_scanner.l" +#line 1537 "Zend/zend_language_scanner.l" { return T_CLASS; } -#line 7962 "Zend/zend_language_scanner.c" +#line 7970 "Zend/zend_language_scanner.c" yy798: YYDEBUG(798, *YYCURSOR); yych = *++YYCURSOR; @@ -7978,11 +7986,11 @@ yy800: } YYDEBUG(801, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1501 "Zend/zend_language_scanner.l" +#line 1509 "Zend/zend_language_scanner.l" { return T_CASE; } -#line 7986 "Zend/zend_language_scanner.c" +#line 7994 "Zend/zend_language_scanner.c" yy802: YYDEBUG(802, *YYCURSOR); yych = *++YYCURSOR; @@ -7996,11 +8004,11 @@ yy803: } YYDEBUG(804, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1425 "Zend/zend_language_scanner.l" +#line 1433 "Zend/zend_language_scanner.l" { return T_CATCH; } -#line 8004 "Zend/zend_language_scanner.c" +#line 8012 "Zend/zend_language_scanner.c" yy805: YYDEBUG(805, *YYCURSOR); yych = *++YYCURSOR; @@ -8051,11 +8059,11 @@ yy813: } YYDEBUG(814, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1409 "Zend/zend_language_scanner.l" +#line 1417 "Zend/zend_language_scanner.l" { return T_FUNCTION; } -#line 8059 "Zend/zend_language_scanner.c" +#line 8067 "Zend/zend_language_scanner.c" yy815: YYDEBUG(815, *YYCURSOR); ++YYCURSOR; @@ -8079,11 +8087,11 @@ yy815: yy816: YYDEBUG(816, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1469 "Zend/zend_language_scanner.l" { return T_FOR; } -#line 8087 "Zend/zend_language_scanner.c" +#line 8095 "Zend/zend_language_scanner.c" yy817: YYDEBUG(817, *YYCURSOR); yych = *++YYCURSOR; @@ -8107,11 +8115,11 @@ yy820: } YYDEBUG(821, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1469 "Zend/zend_language_scanner.l" +#line 1477 "Zend/zend_language_scanner.l" { return T_FOREACH; } -#line 8115 "Zend/zend_language_scanner.c" +#line 8123 "Zend/zend_language_scanner.c" yy822: YYDEBUG(822, *YYCURSOR); yych = *++YYCURSOR; @@ -8130,11 +8138,11 @@ yy824: } YYDEBUG(825, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1683 "Zend/zend_language_scanner.l" +#line 1691 "Zend/zend_language_scanner.l" { return T_FINAL; } -#line 8138 "Zend/zend_language_scanner.c" +#line 8146 "Zend/zend_language_scanner.c" yy826: YYDEBUG(826, *YYCURSOR); yych = *++YYCURSOR; @@ -8165,11 +8173,11 @@ yy828: } YYDEBUG(829, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1457 "Zend/zend_language_scanner.l" +#line 1465 "Zend/zend_language_scanner.l" { return T_DO; } -#line 8173 "Zend/zend_language_scanner.c" +#line 8181 "Zend/zend_language_scanner.c" yy830: YYDEBUG(830, *YYCURSOR); ++YYCURSOR; @@ -8178,11 +8186,11 @@ yy830: } YYDEBUG(831, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1405 "Zend/zend_language_scanner.l" +#line 1413 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 8186 "Zend/zend_language_scanner.c" +#line 8194 "Zend/zend_language_scanner.c" yy832: YYDEBUG(832, *YYCURSOR); yych = *++YYCURSOR; @@ -8217,11 +8225,11 @@ yy837: } YYDEBUG(838, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1505 "Zend/zend_language_scanner.l" +#line 1513 "Zend/zend_language_scanner.l" { return T_DEFAULT; } -#line 8225 "Zend/zend_language_scanner.c" +#line 8233 "Zend/zend_language_scanner.c" yy839: YYDEBUG(839, *YYCURSOR); yych = *++YYCURSOR; @@ -8245,11 +8253,11 @@ yy842: } YYDEBUG(843, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1477 "Zend/zend_language_scanner.l" +#line 1485 "Zend/zend_language_scanner.l" { return T_DECLARE; } -#line 8253 "Zend/zend_language_scanner.c" +#line 8261 "Zend/zend_language_scanner.c" yy844: YYDEBUG(844, *YYCURSOR); yych = *++YYCURSOR; @@ -8329,11 +8337,11 @@ yy855: } YYDEBUG(856, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1537 "Zend/zend_language_scanner.l" +#line 1545 "Zend/zend_language_scanner.l" { return T_EXTENDS; } -#line 8337 "Zend/zend_language_scanner.c" +#line 8345 "Zend/zend_language_scanner.c" yy857: YYDEBUG(857, *YYCURSOR); ++YYCURSOR; @@ -8342,11 +8350,11 @@ yy857: } YYDEBUG(858, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1401 "Zend/zend_language_scanner.l" +#line 1409 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 8350 "Zend/zend_language_scanner.c" +#line 8358 "Zend/zend_language_scanner.c" yy859: YYDEBUG(859, *YYCURSOR); yych = *++YYCURSOR; @@ -8360,11 +8368,11 @@ yy860: } YYDEBUG(861, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1631 "Zend/zend_language_scanner.l" +#line 1639 "Zend/zend_language_scanner.l" { return T_EVAL; } -#line 8368 "Zend/zend_language_scanner.c" +#line 8376 "Zend/zend_language_scanner.c" yy862: YYDEBUG(862, *YYCURSOR); yych = *++YYCURSOR; @@ -8434,11 +8442,11 @@ yy871: } YYDEBUG(872, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1453 "Zend/zend_language_scanner.l" +#line 1461 "Zend/zend_language_scanner.l" { return T_ENDWHILE; } -#line 8442 "Zend/zend_language_scanner.c" +#line 8450 "Zend/zend_language_scanner.c" yy873: YYDEBUG(873, *YYCURSOR); yych = *++YYCURSOR; @@ -8467,11 +8475,11 @@ yy877: } YYDEBUG(878, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1497 "Zend/zend_language_scanner.l" +#line 1505 "Zend/zend_language_scanner.l" { return T_ENDSWITCH; } -#line 8475 "Zend/zend_language_scanner.c" +#line 8483 "Zend/zend_language_scanner.c" yy879: YYDEBUG(879, *YYCURSOR); ++YYCURSOR; @@ -8480,11 +8488,11 @@ yy879: } YYDEBUG(880, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1441 "Zend/zend_language_scanner.l" +#line 1449 "Zend/zend_language_scanner.l" { return T_ENDIF; } -#line 8488 "Zend/zend_language_scanner.c" +#line 8496 "Zend/zend_language_scanner.c" yy881: YYDEBUG(881, *YYCURSOR); yych = *++YYCURSOR; @@ -8513,11 +8521,11 @@ yy882: yy883: YYDEBUG(883, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1465 "Zend/zend_language_scanner.l" +#line 1473 "Zend/zend_language_scanner.l" { return T_ENDFOR; } -#line 8521 "Zend/zend_language_scanner.c" +#line 8529 "Zend/zend_language_scanner.c" yy884: YYDEBUG(884, *YYCURSOR); yych = *++YYCURSOR; @@ -8541,11 +8549,11 @@ yy887: } YYDEBUG(888, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1473 "Zend/zend_language_scanner.l" +#line 1481 "Zend/zend_language_scanner.l" { return T_ENDFOREACH; } -#line 8549 "Zend/zend_language_scanner.c" +#line 8557 "Zend/zend_language_scanner.c" yy889: YYDEBUG(889, *YYCURSOR); yych = *++YYCURSOR; @@ -8579,11 +8587,11 @@ yy894: } YYDEBUG(895, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1481 "Zend/zend_language_scanner.l" +#line 1489 "Zend/zend_language_scanner.l" { return T_ENDDECLARE; } -#line 8587 "Zend/zend_language_scanner.c" +#line 8595 "Zend/zend_language_scanner.c" yy896: YYDEBUG(896, *YYCURSOR); yych = *++YYCURSOR; @@ -8602,11 +8610,11 @@ yy898: } YYDEBUG(899, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1667 "Zend/zend_language_scanner.l" +#line 1675 "Zend/zend_language_scanner.l" { return T_EMPTY; } -#line 8610 "Zend/zend_language_scanner.c" +#line 8618 "Zend/zend_language_scanner.c" yy900: YYDEBUG(900, *YYCURSOR); yych = *++YYCURSOR; @@ -8635,11 +8643,11 @@ yy901: yy902: YYDEBUG(902, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1445 "Zend/zend_language_scanner.l" +#line 1453 "Zend/zend_language_scanner.l" { return T_ELSE; } -#line 8643 "Zend/zend_language_scanner.c" +#line 8651 "Zend/zend_language_scanner.c" yy903: YYDEBUG(903, *YYCURSOR); yych = *++YYCURSOR; @@ -8653,11 +8661,11 @@ yy904: } YYDEBUG(905, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1437 "Zend/zend_language_scanner.l" +#line 1445 "Zend/zend_language_scanner.l" { return T_ELSEIF; } -#line 8661 "Zend/zend_language_scanner.c" +#line 8669 "Zend/zend_language_scanner.c" yy906: YYDEBUG(906, *YYCURSOR); yych = *++YYCURSOR; @@ -8671,11 +8679,11 @@ yy907: } YYDEBUG(908, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1521 "Zend/zend_language_scanner.l" +#line 1529 "Zend/zend_language_scanner.l" { return T_ECHO; } -#line 8679 "Zend/zend_language_scanner.c" +#line 8687 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@ -8748,7 +8756,7 @@ yy911: yy912: YYDEBUG(912, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1550 "Zend/zend_language_scanner.l" +#line 1558 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ Z_STRLEN_P(zendlval) = yyleng; @@ -8756,7 +8764,7 @@ yy912: HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 8760 "Zend/zend_language_scanner.c" +#line 8768 "Zend/zend_language_scanner.c" yy913: YYDEBUG(913, *YYCURSOR); ++YYCURSOR; @@ -8764,13 +8772,13 @@ yy913: yy914: YYDEBUG(914, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1573 "Zend/zend_language_scanner.l" +#line 1581 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); goto restart; } -#line 8774 "Zend/zend_language_scanner.c" +#line 8782 "Zend/zend_language_scanner.c" yy915: YYDEBUG(915, *YYCURSOR); ++YYCURSOR; @@ -8779,7 +8787,7 @@ yy915: yy916: YYDEBUG(916, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1562 "Zend/zend_language_scanner.l" +#line 1570 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { @@ -8790,7 +8798,7 @@ yy916: } return T_STRING; } -#line 8794 "Zend/zend_language_scanner.c" +#line 8802 "Zend/zend_language_scanner.c" yy917: YYDEBUG(917, *YYCURSOR); yych = *++YYCURSOR; @@ -8811,11 +8819,11 @@ yy920: ++YYCURSOR; YYDEBUG(921, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1558 "Zend/zend_language_scanner.l" +#line 1566 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } -#line 8819 "Zend/zend_language_scanner.c" +#line 8827 "Zend/zend_language_scanner.c" yy922: YYDEBUG(922, *YYCURSOR); ++YYCURSOR; @@ -8885,7 +8893,7 @@ yy926: yy927: YYDEBUG(927, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1845 "Zend/zend_language_scanner.l" +#line 1853 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -8897,20 +8905,20 @@ yy927: yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } -#line 8901 "Zend/zend_language_scanner.c" +#line 8909 "Zend/zend_language_scanner.c" yy928: YYDEBUG(928, *YYCURSOR); ++YYCURSOR; YYDEBUG(929, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1858 "Zend/zend_language_scanner.l" +#line 1866 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } -#line 8914 "Zend/zend_language_scanner.c" +#line 8922 "Zend/zend_language_scanner.c" yy930: YYDEBUG(930, *YYCURSOR); ++YYCURSOR; @@ -9372,7 +9380,7 @@ yy967: ++YYCURSOR; YYDEBUG(968, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2701 "Zend/zend_language_scanner.l" +#line 2709 "Zend/zend_language_scanner.l" { char *end = yytext + yyleng - 1; @@ -9416,7 +9424,7 @@ yy967: yymore(); } } -#line 9420 "Zend/zend_language_scanner.c" +#line 9428 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_ONE_LINE_COMMENT: @@ -9473,11 +9481,11 @@ yy971: yy972: YYDEBUG(972, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2273 "Zend/zend_language_scanner.l" +#line 2281 "Zend/zend_language_scanner.l" { yymore(); } -#line 9481 "Zend/zend_language_scanner.c" +#line 9489 "Zend/zend_language_scanner.c" yy973: YYDEBUG(973, *YYCURSOR); yych = *++YYCURSOR; @@ -9500,7 +9508,7 @@ yy975: yy977: YYDEBUG(977, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2277 "Zend/zend_language_scanner.l" +#line 2285 "Zend/zend_language_scanner.l" { switch (yytext[yyleng-1]) { case '?': case '%': case '>': @@ -9518,7 +9526,7 @@ yy977: return T_COMMENT; } } -#line 9522 "Zend/zend_language_scanner.c" +#line 9530 "Zend/zend_language_scanner.c" yy978: YYDEBUG(978, *YYCURSOR); yych = *++YYCURSOR; @@ -9531,7 +9539,7 @@ yy979: ++YYCURSOR; YYDEBUG(981, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2295 "Zend/zend_language_scanner.l" +#line 2303 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ Z_STRLEN_P(zendlval) = yyleng; @@ -9540,7 +9548,7 @@ yy979: CG(zend_lineno)++; return T_COMMENT; } -#line 9544 "Zend/zend_language_scanner.c" +#line 9552 "Zend/zend_language_scanner.c" yy982: YYDEBUG(982, *YYCURSOR); yych = *++YYCURSOR; @@ -9550,7 +9558,7 @@ yy983: ++YYCURSOR; YYDEBUG(984, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2304 "Zend/zend_language_scanner.l" +#line 2312 "Zend/zend_language_scanner.l" { if (CG(asp_tags) || yytext[yyleng-2] != '%') { /* asp comment? */ Z_STRVAL_P(zendlval) = yytext; /* no copying - intentional */ @@ -9564,7 +9572,7 @@ yy983: yymore(); } } -#line 9568 "Zend/zend_language_scanner.c" +#line 9576 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_START_HEREDOC: @@ -9621,13 +9629,13 @@ yy987: yy988: YYDEBUG(988, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2473 "Zend/zend_language_scanner.l" +#line 2481 "Zend/zend_language_scanner.l" { yyless(0); BEGIN(ST_HEREDOC); goto restart; } -#line 9631 "Zend/zend_language_scanner.c" +#line 9639 "Zend/zend_language_scanner.c" yy989: YYDEBUG(989, *YYCURSOR); yyaccept = 0; @@ -9672,7 +9680,7 @@ yy994: ++YYCURSOR; YYDEBUG(995, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2479 "Zend/zend_language_scanner.l" +#line 2487 "Zend/zend_language_scanner.l" { int label_len = yyleng - 1; @@ -9695,7 +9703,7 @@ yy994: yymore(); } } -#line 9699 "Zend/zend_language_scanner.c" +#line 9707 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_START_NOWDOC: @@ -9752,13 +9760,13 @@ yy998: yy999: YYDEBUG(999, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2671 "Zend/zend_language_scanner.l" +#line 2679 "Zend/zend_language_scanner.l" { yyless(0); BEGIN(ST_NOWDOC); goto restart; } -#line 9762 "Zend/zend_language_scanner.c" +#line 9770 "Zend/zend_language_scanner.c" yy1000: YYDEBUG(1000, *YYCURSOR); yyaccept = 0; @@ -9803,7 +9811,7 @@ yy1005: ++YYCURSOR; YYDEBUG(1006, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2677 "Zend/zend_language_scanner.l" +#line 2685 "Zend/zend_language_scanner.l" { int label_len = yyleng - 1; @@ -9827,7 +9835,7 @@ yy1005: yymore(); } } -#line 9831 "Zend/zend_language_scanner.c" +#line 9839 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_VAR_OFFSET: @@ -9928,7 +9936,7 @@ yy1009: yy1010: YYDEBUG(1010, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1908 "Zend/zend_language_scanner.l" +#line 1916 "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)) { Z_LVAL_P(zendlval) = strtol(yytext, NULL, 10); @@ -9940,7 +9948,7 @@ yy1010: } return T_NUM_STRING; } -#line 9944 "Zend/zend_language_scanner.c" +#line 9952 "Zend/zend_language_scanner.c" yy1011: YYDEBUG(1011, *YYCURSOR); yych = *++YYCURSOR; @@ -9960,23 +9968,23 @@ yy1012: yy1013: YYDEBUG(1013, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2236 "Zend/zend_language_scanner.l" +#line 2244 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } -#line 9969 "Zend/zend_language_scanner.c" +#line 9977 "Zend/zend_language_scanner.c" yy1014: YYDEBUG(1014, *YYCURSOR); ++YYCURSOR; YYDEBUG(1015, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2231 "Zend/zend_language_scanner.l" +#line 2239 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } -#line 9980 "Zend/zend_language_scanner.c" +#line 9988 "Zend/zend_language_scanner.c" yy1016: YYDEBUG(1016, *YYCURSOR); yych = *++YYCURSOR; @@ -9986,7 +9994,7 @@ yy1017: ++YYCURSOR; YYDEBUG(1018, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2241 "Zend/zend_language_scanner.l" +#line 2249 "Zend/zend_language_scanner.l" { /* Invalid rule to return a more explicit parse error with proper line number */ yyless(0); @@ -9995,7 +10003,7 @@ yy1017: ZVAL_EMPTY_TEXT(zendlval); /* Empty since it won't be used */ return T_ENCAPSED_AND_WHITESPACE; } -#line 9999 "Zend/zend_language_scanner.c" +#line 10007 "Zend/zend_language_scanner.c" yy1019: YYDEBUG(1019, *YYCURSOR); ++YYCURSOR; @@ -10004,25 +10012,25 @@ yy1019: yy1020: YYDEBUG(1020, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2260 "Zend/zend_language_scanner.l" +#line 2268 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; } -#line 10015 "Zend/zend_language_scanner.c" +#line 10023 "Zend/zend_language_scanner.c" yy1021: YYDEBUG(1021, *YYCURSOR); ++YYCURSOR; YYDEBUG(1022, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2768 "Zend/zend_language_scanner.l" +#line 2776 "Zend/zend_language_scanner.l" { zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 10026 "Zend/zend_language_scanner.c" +#line 10034 "Zend/zend_language_scanner.c" yy1023: YYDEBUG(1023, *YYCURSOR); ++YYCURSOR; @@ -10058,7 +10066,7 @@ yy1025: yy1027: YYDEBUG(1027, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2221 "Zend/zend_language_scanner.l" +#line 2229 "Zend/zend_language_scanner.l" { if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; @@ -10068,7 +10076,7 @@ yy1027: } return T_VARIABLE; } -#line 10072 "Zend/zend_language_scanner.c" +#line 10080 "Zend/zend_language_scanner.c" yy1028: YYDEBUG(1028, *YYCURSOR); ++YYCURSOR; @@ -10100,14 +10108,14 @@ yy1032: yy1034: YYDEBUG(1034, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1920 "Zend/zend_language_scanner.l" +#line 1928 "Zend/zend_language_scanner.l" { /* Offset must be treated as a string */ if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_NUM_STRING; } -#line 10111 "Zend/zend_language_scanner.c" +#line 10119 "Zend/zend_language_scanner.c" yy1035: YYDEBUG(1035, *YYCURSOR); ++YYCURSOR; @@ -10120,6 +10128,6 @@ yy1035: goto yy1034; } } -#line 2773 "Zend/zend_language_scanner.l" +#line 2781 "Zend/zend_language_scanner.l" } diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 341f463184..651ab3e230 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -986,6 +986,10 @@ static int zend_scan_unicode_escape_string(zval *zendlval, char *str, int len, U if (*s==0x5C /*'\\'*/) { s++; c = *s; + if (s >= end) { + *t++ = 0x5C; /*'\\'*/ + break; + } min_digits = 0; codepoint = 0; @@ -1186,6 +1190,10 @@ static void zend_scan_binary_escape_string(zval *zendlval, char *str, int len, c while (s= end) { + *t++ = '\\'; + break; + } switch(*s) { case 'n':