cvs: ZendEngine2(PHP_5_3) / zend_language_scanner.c zend_language_scanner.l

[email protected] ("Matt Wilmas")
Newsgroups php.zend-engine.cvs
Message-ID <cvsmattwil1210411049@cvsserver>
mattwil		Sat May 10 09:17:29 2008 UTC

  Modified files:              (Branch: PHP_5_3)
    /ZendEngine2	zend_language_scanner.c zend_language_scanner.l 
  Log:
  MFH: Restore end check for "escape" strings
mattwil-20080510091729.txt (text/plain, 74.2 KB)
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_language_scanner.c?r1=1.1.2.11&r2=1.1.2.12&diff_format=u
Index: ZendEngine2/zend_language_scanner.c
diff -u ZendEngine2/zend_language_scanner.c:1.1.2.11 ZendEngine2/zend_language_scanner.c:1.1.2.12
--- ZendEngine2/zend_language_scanner.c:1.1.2.11	Fri May  9 10:27:51 2008
+++ ZendEngine2/zend_language_scanner.c	Sat May 10 09:17:28 2008
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.4 on Fri May 09 05:04:28 2008 */
+/* Generated by re2c 0.13.4 on Sat May 10 03:48:00 2008 */
 #line 1 "Zend/zend_language_scanner.l"
 /*
    +----------------------------------------------------------------------+
@@ -23,7 +23,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_language_scanner.c,v 1.1.2.11 2008/05/09 10:27:51 mattwil Exp $ */
+/* $Id: zend_language_scanner.c,v 1.1.2.12 2008/05/10 09:17:28 mattwil Exp $ */
 
 #if 0
 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
@@ -500,6 +500,10 @@
 	while (s<end) {
 		if (*s=='\\') {
 			s++;
+			if (s >= end) {
+				*t++ = '\\';
+				break;
+			}
 
 			switch(*s) {
 				case 'n':
@@ -606,7 +610,7 @@
 	}
 
 
-#line 610 "Zend/zend_language_scanner.c"
+#line 614 "Zend/zend_language_scanner.c"
 {
 	YYCTYPE yych;
 	unsigned int yyaccept = 0;
@@ -730,7 +734,7 @@
 yy3:
 		YYDEBUG(3, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1398 "Zend/zend_language_scanner.l"
+#line 1402 "Zend/zend_language_scanner.l"
 		{
 
 	while (1) {
@@ -761,7 +765,7 @@
 	HANDLE_NEWLINES(yytext, yyleng);
 	return T_INLINE_HTML;
 }
-#line 765 "Zend/zend_language_scanner.c"
+#line 769 "Zend/zend_language_scanner.c"
 yy4:
 		YYDEBUG(4, *YYCURSOR);
 		yyaccept = 0;
@@ -788,7 +792,7 @@
 yy9:
 		YYDEBUG(9, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1389 "Zend/zend_language_scanner.l"
+#line 1393 "Zend/zend_language_scanner.l"
 		{
 	if ((YYCTYPE*)yytext == SCNG(yy_start)) {
 		/* ignore first line when it's started with a # */
@@ -797,7 +801,7 @@
 		goto inline_char_handler;
 	}
 }
-#line 801 "Zend/zend_language_scanner.c"
+#line 805 "Zend/zend_language_scanner.c"
 yy10:
 		YYDEBUG(10, *YYCURSOR);
 		yyaccept = 1;
@@ -823,7 +827,7 @@
 yy13:
 		YYDEBUG(13, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1373 "Zend/zend_language_scanner.l"
+#line 1377 "Zend/zend_language_scanner.l"
 		{
 	HANDLE_NEWLINES(yytext, yyleng);
 	if (CG(short_tags)) {
@@ -839,14 +843,14 @@
 		return T_INLINE_HTML;
 	}
 }
-#line 843 "Zend/zend_language_scanner.c"
+#line 847 "Zend/zend_language_scanner.c"
 yy14:
 		YYDEBUG(14, *YYCURSOR);
 		++YYCURSOR;
 		if ((yych = *YYCURSOR) == '=') goto yy50;
 		YYDEBUG(15, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1347 "Zend/zend_language_scanner.l"
+#line 1351 "Zend/zend_language_scanner.l"
 		{
 	if (CG(asp_tags)) {
 		zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -861,7 +865,7 @@
 		return T_INLINE_HTML;
 	}
 }
-#line 865 "Zend/zend_language_scanner.c"
+#line 869 "Zend/zend_language_scanner.c"
 yy16:
 		YYDEBUG(16, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1051,7 +1055,7 @@
 		++YYCURSOR;
 		YYDEBUG(45, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1305 "Zend/zend_language_scanner.l"
+#line 1309 "Zend/zend_language_scanner.l"
 		{
 	HANDLE_NEWLINES(yytext, yyleng);
 	zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1060,7 +1064,7 @@
 	BEGIN(ST_IN_SCRIPTING);
 	return T_OPEN_TAG;
 }
-#line 1064 "Zend/zend_language_scanner.c"
+#line 1068 "Zend/zend_language_scanner.c"
 yy46:
 		YYDEBUG(46, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1087,7 +1091,7 @@
 		++YYCURSOR;
 		YYDEBUG(51, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1315 "Zend/zend_language_scanner.l"
+#line 1319 "Zend/zend_language_scanner.l"
 		{
 	if (CG(asp_tags)) {
 		zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1102,13 +1106,13 @@
 		return T_INLINE_HTML;
 	}
 }
-#line 1106 "Zend/zend_language_scanner.c"
+#line 1110 "Zend/zend_language_scanner.c"
 yy52:
 		YYDEBUG(52, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(53, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1331 "Zend/zend_language_scanner.l"
+#line 1335 "Zend/zend_language_scanner.l"
 		{
 	if (CG(short_tags)) {
 		zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1123,7 +1127,7 @@
 		return T_INLINE_HTML;
 	}
 }
-#line 1127 "Zend/zend_language_scanner.c"
+#line 1131 "Zend/zend_language_scanner.c"
 yy54:
 		YYDEBUG(54, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1150,7 +1154,7 @@
 yy58:
 		YYDEBUG(58, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1363 "Zend/zend_language_scanner.l"
+#line 1367 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.str.val = yytext; /* no copying - intentional */
 	zendlval->value.str.len = yyleng;
@@ -1159,7 +1163,7 @@
 	BEGIN(ST_IN_SCRIPTING);
 	return T_OPEN_TAG;
 }
-#line 1163 "Zend/zend_language_scanner.c"
+#line 1167 "Zend/zend_language_scanner.c"
 yy59:
 		YYDEBUG(59, *YYCURSOR);
 		++YYCURSOR;
@@ -1250,13 +1254,13 @@
 yy64:
 		YYDEBUG(64, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1759 "Zend/zend_language_scanner.l"
+#line 1763 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.lval = (long) '{';
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	return T_CURLY_OPEN;
 }
-#line 1260 "Zend/zend_language_scanner.c"
+#line 1264 "Zend/zend_language_scanner.c"
 yy65:
 		YYDEBUG(65, *YYCURSOR);
 		yyaccept = 1;
@@ -1274,12 +1278,12 @@
 yy67:
 		YYDEBUG(67, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1784 "Zend/zend_language_scanner.l"
+#line 1788 "Zend/zend_language_scanner.l"
 		{
 	zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 1283 "Zend/zend_language_scanner.c"
+#line 1287 "Zend/zend_language_scanner.c"
 yy68:
 		YYDEBUG(68, *YYCURSOR);
 		++YYCURSOR;
@@ -1291,12 +1295,12 @@
 		++YYCURSOR;
 		YYDEBUG(70, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1920 "Zend/zend_language_scanner.l"
+#line 1924 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_IN_SCRIPTING);
 	return '`';
 }
-#line 1300 "Zend/zend_language_scanner.c"
+#line 1304 "Zend/zend_language_scanner.c"
 yy71:
 		YYDEBUG(71, *YYCURSOR);
 		++YYCURSOR;
@@ -1384,13 +1388,13 @@
 yy77:
 		YYDEBUG(77, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1789 "Zend/zend_language_scanner.l"
+#line 1793 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 1394 "Zend/zend_language_scanner.c"
+#line 1398 "Zend/zend_language_scanner.c"
 yy78:
 		YYDEBUG(78, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1424,24 +1428,24 @@
 yy83:
 		YYDEBUG(83, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1455 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, (yytext+1), (yyleng-1));
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1434 "Zend/zend_language_scanner.c"
+#line 1438 "Zend/zend_language_scanner.c"
 yy84:
 		YYDEBUG(84, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(85, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1098 "Zend/zend_language_scanner.l"
+#line 1102 "Zend/zend_language_scanner.l"
 		{
 	yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
 	return T_DOLLAR_OPEN_CURLY_BRACES;
 }
-#line 1445 "Zend/zend_language_scanner.c"
+#line 1449 "Zend/zend_language_scanner.c"
 yy86:
 		YYDEBUG(86, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1452,7 +1456,7 @@
 		++YYCURSOR;
 		YYDEBUG(88, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1443 "Zend/zend_language_scanner.l"
+#line 1447 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1460,7 +1464,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1464 "Zend/zend_language_scanner.c"
+#line 1468 "Zend/zend_language_scanner.c"
 yy89:
 		YYDEBUG(89, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1478,7 +1482,7 @@
 		++YYCURSOR;
 		YYDEBUG(91, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1433 "Zend/zend_language_scanner.l"
+#line 1437 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 3);
 	yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1486,7 +1490,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1490 "Zend/zend_language_scanner.c"
+#line 1494 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_COMMENT:
@@ -1543,34 +1547,34 @@
 		}
 		YYDEBUG(96, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1543 "Zend/zend_language_scanner.l"
+#line 1547 "Zend/zend_language_scanner.l"
 		{
 	yymore();
 }
-#line 1551 "Zend/zend_language_scanner.c"
+#line 1555 "Zend/zend_language_scanner.c"
 yy97:
 		YYDEBUG(97, *YYCURSOR);
 		++YYCURSOR;
 		if ((yych = *YYCURSOR) == '/') goto yy99;
 		YYDEBUG(98, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1561 "Zend/zend_language_scanner.l"
+#line 1565 "Zend/zend_language_scanner.l"
 		{
 	yymore();
 }
-#line 1562 "Zend/zend_language_scanner.c"
+#line 1566 "Zend/zend_language_scanner.c"
 yy99:
 		YYDEBUG(99, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(100, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1555 "Zend/zend_language_scanner.l"
+#line 1559 "Zend/zend_language_scanner.l"
 		{
 	HANDLE_NEWLINES(yytext, yyleng);
 	BEGIN(ST_IN_SCRIPTING);
 	return T_COMMENT;
 }
-#line 1574 "Zend/zend_language_scanner.c"
+#line 1578 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_DOC_COMMENT:
@@ -1627,28 +1631,28 @@
 		}
 		YYDEBUG(105, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1543 "Zend/zend_language_scanner.l"
+#line 1547 "Zend/zend_language_scanner.l"
 		{
 	yymore();
 }
-#line 1635 "Zend/zend_language_scanner.c"
+#line 1639 "Zend/zend_language_scanner.c"
 yy106:
 		YYDEBUG(106, *YYCURSOR);
 		++YYCURSOR;
 		if ((yych = *YYCURSOR) == '/') goto yy108;
 		YYDEBUG(107, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1561 "Zend/zend_language_scanner.l"
+#line 1565 "Zend/zend_language_scanner.l"
 		{
 	yymore();
 }
-#line 1646 "Zend/zend_language_scanner.c"
+#line 1650 "Zend/zend_language_scanner.c"
 yy108:
 		YYDEBUG(108, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(109, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1547 "Zend/zend_language_scanner.l"
+#line 1551 "Zend/zend_language_scanner.l"
 		{
 	CG(doc_comment) = estrndup(yytext, yyleng);
 	CG(doc_comment_len) = yyleng;
@@ -1656,7 +1660,7 @@
 	BEGIN(ST_IN_SCRIPTING);
 	return T_DOC_COMMENT;
 }
-#line 1660 "Zend/zend_language_scanner.c"
+#line 1664 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_DOUBLE_QUOTES:
@@ -1743,13 +1747,13 @@
 yy114:
 		YYDEBUG(114, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1759 "Zend/zend_language_scanner.l"
+#line 1763 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.lval = (long) '{';
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	return T_CURLY_OPEN;
 }
-#line 1753 "Zend/zend_language_scanner.c"
+#line 1757 "Zend/zend_language_scanner.c"
 yy115:
 		YYDEBUG(115, *YYCURSOR);
 		yyaccept = 1;
@@ -1768,12 +1772,12 @@
 yy117:
 		YYDEBUG(117, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1766 "Zend/zend_language_scanner.l"
+#line 1770 "Zend/zend_language_scanner.l"
 		{
 	zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 1777 "Zend/zend_language_scanner.c"
+#line 1781 "Zend/zend_language_scanner.c"
 yy118:
 		YYDEBUG(118, *YYCURSOR);
 		++YYCURSOR;
@@ -1785,12 +1789,12 @@
 		++YYCURSOR;
 		YYDEBUG(120, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1914 "Zend/zend_language_scanner.l"
+#line 1918 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_IN_SCRIPTING);
 	return '"';
 }
-#line 1794 "Zend/zend_language_scanner.c"
+#line 1798 "Zend/zend_language_scanner.c"
 yy121:
 		YYDEBUG(121, *YYCURSOR);
 		++YYCURSOR;
@@ -1881,13 +1885,13 @@
 yy127:
 		YYDEBUG(127, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1777 "Zend/zend_language_scanner.l"
+#line 1781 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 1891 "Zend/zend_language_scanner.c"
+#line 1895 "Zend/zend_language_scanner.c"
 yy128:
 		YYDEBUG(128, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1921,24 +1925,24 @@
 yy133:
 		YYDEBUG(133, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1455 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, (yytext+1), (yyleng-1));
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1931 "Zend/zend_language_scanner.c"
+#line 1935 "Zend/zend_language_scanner.c"
 yy134:
 		YYDEBUG(134, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(135, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1098 "Zend/zend_language_scanner.l"
+#line 1102 "Zend/zend_language_scanner.l"
 		{
 	yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
 	return T_DOLLAR_OPEN_CURLY_BRACES;
 }
-#line 1942 "Zend/zend_language_scanner.c"
+#line 1946 "Zend/zend_language_scanner.c"
 yy136:
 		YYDEBUG(136, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1949,7 +1953,7 @@
 		++YYCURSOR;
 		YYDEBUG(138, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1443 "Zend/zend_language_scanner.l"
+#line 1447 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1957,7 +1961,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1961 "Zend/zend_language_scanner.c"
+#line 1965 "Zend/zend_language_scanner.c"
 yy139:
 		YYDEBUG(139, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -1975,7 +1979,7 @@
 		++YYCURSOR;
 		YYDEBUG(141, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1433 "Zend/zend_language_scanner.l"
+#line 1437 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 3);
 	yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1983,7 +1987,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 1987 "Zend/zend_language_scanner.c"
+#line 1991 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_END_HEREDOC:
@@ -1994,7 +1998,7 @@
 	++YYCURSOR;
 	YYDEBUG(145, *YYCURSOR);
 	yyleng = YYCURSOR - SCNG(yy_text);
-#line 1748 "Zend/zend_language_scanner.l"
+#line 1752 "Zend/zend_language_scanner.l"
 	{
 	SCNG(yy_text) = Z_STRVAL_P(zendlval) = CG(heredoc);
 	SCNG(yy_leng) = Z_STRLEN_P(zendlval) = CG(heredoc_len);
@@ -2003,7 +2007,7 @@
 	BEGIN(ST_IN_SCRIPTING);
 	return T_END_HEREDOC;
 }
-#line 2007 "Zend/zend_language_scanner.c"
+#line 2011 "Zend/zend_language_scanner.c"
 /* *********************************** */
 yyc_ST_END_NOWDOC:
 	YYDEBUG(146, *YYCURSOR);
@@ -2013,7 +2017,7 @@
 	++YYCURSOR;
 	YYDEBUG(149, *YYCURSOR);
 	yyleng = YYCURSOR - SCNG(yy_text);
-#line 1903 "Zend/zend_language_scanner.l"
+#line 1907 "Zend/zend_language_scanner.l"
 	{
 	SCNG(yy_text) = Z_STRVAL_P(zendlval) = CG(heredoc);
 	SCNG(yy_leng) = Z_STRLEN_P(zendlval) = CG(heredoc_len);
@@ -2022,7 +2026,7 @@
 	BEGIN(ST_IN_SCRIPTING);
 	return T_END_NOWDOC;
 }
-#line 2026 "Zend/zend_language_scanner.c"
+#line 2030 "Zend/zend_language_scanner.c"
 /* *********************************** */
 yyc_ST_HEREDOC:
 	{
@@ -2079,12 +2083,12 @@
 yy152:
 		YYDEBUG(152, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1803 "Zend/zend_language_scanner.l"
+#line 1807 "Zend/zend_language_scanner.l"
 		{
 	zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 2088 "Zend/zend_language_scanner.c"
+#line 2092 "Zend/zend_language_scanner.c"
 yy153:
 		YYDEBUG(153, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -2130,13 +2134,13 @@
 yy155:
 		YYDEBUG(155, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1759 "Zend/zend_language_scanner.l"
+#line 1763 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.lval = (long) '{';
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	return T_CURLY_OPEN;
 }
-#line 2140 "Zend/zend_language_scanner.c"
+#line 2144 "Zend/zend_language_scanner.c"
 yy156:
 		YYDEBUG(156, *YYCURSOR);
 		yyaccept = 0;
@@ -2387,13 +2391,13 @@
 yy174:
 		YYDEBUG(174, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1808 "Zend/zend_language_scanner.l"
+#line 1812 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC);
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 2397 "Zend/zend_language_scanner.c"
+#line 2401 "Zend/zend_language_scanner.c"
 yy175:
 		YYDEBUG(175, *YYCURSOR);
 		yyaccept = 2;
@@ -2492,7 +2496,7 @@
 		++YYCURSOR;
 		YYDEBUG(182, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1708 "Zend/zend_language_scanner.l"
+#line 1712 "Zend/zend_language_scanner.l"
 		{
 	char *end = yytext + yyleng - 1;
 
@@ -2532,7 +2536,7 @@
 		yymore();
 	}
 }
-#line 2536 "Zend/zend_language_scanner.c"
+#line 2540 "Zend/zend_language_scanner.c"
 yy183:
 		YYDEBUG(183, *YYCURSOR);
 		yyaccept = 2;
@@ -2792,24 +2796,24 @@
 yy204:
 		YYDEBUG(204, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1455 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, (yytext+1), (yyleng-1));
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 2802 "Zend/zend_language_scanner.c"
+#line 2806 "Zend/zend_language_scanner.c"
 yy205:
 		YYDEBUG(205, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(206, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1098 "Zend/zend_language_scanner.l"
+#line 1102 "Zend/zend_language_scanner.l"
 		{
 	yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
 	return T_DOLLAR_OPEN_CURLY_BRACES;
 }
-#line 2813 "Zend/zend_language_scanner.c"
+#line 2817 "Zend/zend_language_scanner.c"
 yy207:
 		YYDEBUG(207, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -2820,7 +2824,7 @@
 		++YYCURSOR;
 		YYDEBUG(209, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1443 "Zend/zend_language_scanner.l"
+#line 1447 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 1);
 	yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -2828,7 +2832,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 2832 "Zend/zend_language_scanner.c"
+#line 2836 "Zend/zend_language_scanner.c"
 yy210:
 		YYDEBUG(210, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -2846,7 +2850,7 @@
 		++YYCURSOR;
 		YYDEBUG(212, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1433 "Zend/zend_language_scanner.l"
+#line 1437 "Zend/zend_language_scanner.l"
 		{
 	yyless(yyleng - 3);
 	yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -2854,7 +2858,7 @@
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 2858 "Zend/zend_language_scanner.c"
+#line 2862 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_IN_SCRIPTING:
@@ -3069,13 +3073,13 @@
 yy216:
 		YYDEBUG(216, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1475 "Zend/zend_language_scanner.l"
+#line 1479 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, yytext, yyleng);
 	zendlval->type = IS_STRING;
 	return T_STRING;
 }
-#line 3079 "Zend/zend_language_scanner.c"
+#line 3083 "Zend/zend_language_scanner.c"
 yy217:
 		YYDEBUG(217, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -3322,11 +3326,11 @@
 yy230:
 		YYDEBUG(230, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1087 "Zend/zend_language_scanner.l"
+#line 1091 "Zend/zend_language_scanner.l"
 		{
 	return yytext[0];
 }
-#line 3330 "Zend/zend_language_scanner.c"
+#line 3334 "Zend/zend_language_scanner.c"
 yy231:
 		YYDEBUG(231, *YYCURSOR);
 		++YYCURSOR;
@@ -3335,7 +3339,7 @@
 yy232:
 		YYDEBUG(232, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 826 "Zend/zend_language_scanner.l"
+#line 830 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.str.val = yytext; /* no copying - intentional */
 	zendlval->value.str.len = yyleng;
@@ -3343,7 +3347,7 @@
 	HANDLE_NEWLINES(yytext, yyleng);
 	return T_WHITESPACE;
 }
-#line 3347 "Zend/zend_language_scanner.c"
+#line 3351 "Zend/zend_language_scanner.c"
 yy233:
 		YYDEBUG(233, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -3576,18 +3580,18 @@
 		++YYCURSOR;
 		YYDEBUG(258, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1092 "Zend/zend_language_scanner.l"
+#line 1096 "Zend/zend_language_scanner.l"
 		{
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	return '{';
 }
-#line 3585 "Zend/zend_language_scanner.c"
+#line 3589 "Zend/zend_language_scanner.c"
 yy259:
 		YYDEBUG(259, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(260, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1104 "Zend/zend_language_scanner.l"
+#line 1108 "Zend/zend_language_scanner.l"
 		{
 	RESET_DOC_COMMENT();
 	if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -3595,7 +3599,7 @@
 	}
 	return '}';
 }
-#line 3599 "Zend/zend_language_scanner.c"
+#line 3603 "Zend/zend_language_scanner.c"
 yy261:
 		YYDEBUG(261, *YYCURSOR);
 		yyaccept = 2;
@@ -3618,7 +3622,7 @@
 yy262:
 		YYDEBUG(262, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1130 "Zend/zend_language_scanner.l"
+#line 1134 "Zend/zend_language_scanner.l"
 		{
 	if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
 		zendlval->value.lval = strtol(yytext, NULL, 0);
@@ -3639,7 +3643,7 @@
 	zendlval->type = IS_LONG;
 	return T_LNUMBER;
 }
-#line 3643 "Zend/zend_language_scanner.c"
+#line 3647 "Zend/zend_language_scanner.c"
 yy263:
 		YYDEBUG(263, *YYCURSOR);
 		yyaccept = 2;
@@ -3667,12 +3671,12 @@
 yy266:
 		YYDEBUG(266, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1482 "Zend/zend_language_scanner.l"
+#line 1486 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_ONE_LINE_COMMENT);
 	yymore();
 }
-#line 3676 "Zend/zend_language_scanner.c"
+#line 3680 "Zend/zend_language_scanner.c"
 yy267:
 		YYDEBUG(267, *YYCURSOR);
 		yyaccept = 3;
@@ -3681,12 +3685,12 @@
 yy268:
 		YYDEBUG(268, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1640 "Zend/zend_language_scanner.l"
+#line 1644 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_DOUBLE_QUOTES);
 	return '"';
 }
-#line 3690 "Zend/zend_language_scanner.c"
+#line 3694 "Zend/zend_language_scanner.c"
 yy269:
 		YYDEBUG(269, *YYCURSOR);
 		yyaccept = 4;
@@ -3695,23 +3699,23 @@
 yy270:
 		YYDEBUG(270, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1926 "Zend/zend_language_scanner.l"
+#line 1930 "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 3704 "Zend/zend_language_scanner.c"
+#line 3708 "Zend/zend_language_scanner.c"
 yy271:
 		YYDEBUG(271, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(272, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1668 "Zend/zend_language_scanner.l"
+#line 1672 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_BACKQUOTE);
 	return '`';
 }
-#line 3715 "Zend/zend_language_scanner.c"
+#line 3719 "Zend/zend_language_scanner.c"
 yy273:
 		YYDEBUG(273, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -3737,7 +3741,7 @@
 		++YYCURSOR;
 		YYDEBUG(278, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1598 "Zend/zend_language_scanner.l"
+#line 1602 "Zend/zend_language_scanner.l"
 		{
 	register char *s, *t;
 	char *end;
@@ -3778,7 +3782,7 @@
 
 	return T_CONSTANT_ENCAPSED_STRING;
 }
-#line 3782 "Zend/zend_language_scanner.c"
+#line 3786 "Zend/zend_language_scanner.c"
 yy279:
 		YYDEBUG(279, *YYCURSOR);
 		++YYCURSOR;
@@ -3875,14 +3879,14 @@
 		++YYCURSOR;
 		YYDEBUG(288, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1590 "Zend/zend_language_scanner.l"
+#line 1594 "Zend/zend_language_scanner.l"
 		{
 	int bprefix = (yytext[0] != '"') ? 1 : 0;
 
 	zend_scan_escape_string(zendlval, yytext+bprefix+1, yyleng-bprefix-2, '"' TSRMLS_CC);
 	return T_CONSTANT_ENCAPSED_STRING;
 }
-#line 3886 "Zend/zend_language_scanner.c"
+#line 3890 "Zend/zend_language_scanner.c"
 yy289:
 		YYDEBUG(289, *YYCURSOR);
 		++YYCURSOR;
@@ -3915,13 +3919,13 @@
 yy294:
 		YYDEBUG(294, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1191 "Zend/zend_language_scanner.l"
+#line 1195 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.dval = zend_strtod(yytext, NULL);
 	zendlval->type = IS_DOUBLE;
 	return T_DNUMBER;
 }
-#line 3925 "Zend/zend_language_scanner.c"
+#line 3929 "Zend/zend_language_scanner.c"
 yy295:
 		YYDEBUG(295, *YYCURSOR);
 		yyaccept = 2;
@@ -3983,7 +3987,7 @@
 		}
 		YYDEBUG(304, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1151 "Zend/zend_language_scanner.l"
+#line 1155 "Zend/zend_language_scanner.l"
 		{
 	char *hex = yytext + 2; /* Skip "0x" */
 	int len = yyleng - 2;
@@ -4004,7 +4008,7 @@
 		return T_DNUMBER;
 	}
 }
-#line 4008 "Zend/zend_language_scanner.c"
+#line 4012 "Zend/zend_language_scanner.c"
 yy305:
 		YYDEBUG(305, *YYCURSOR);
 		++YYCURSOR;
@@ -4013,7 +4017,7 @@
 yy306:
 		YYDEBUG(306, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1565 "Zend/zend_language_scanner.l"
+#line 1569 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.str.val = yytext; /* no copying - intentional */
 	zendlval->value.str.len = yyleng;
@@ -4021,7 +4025,7 @@
 	BEGIN(INITIAL);
 	return T_CLOSE_TAG;  /* implicit ';' at php-end tag */
 }
-#line 4025 "Zend/zend_language_scanner.c"
+#line 4029 "Zend/zend_language_scanner.c"
 yy307:
 		YYDEBUG(307, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4055,13 +4059,13 @@
 yy311:
 		YYDEBUG(311, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1455 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, (yytext+1), (yyleng-1));
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 4065 "Zend/zend_language_scanner.c"
+#line 4069 "Zend/zend_language_scanner.c"
 yy312:
 		YYDEBUG(312, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4075,11 +4079,11 @@
 		}
 		YYDEBUG(314, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1075 "Zend/zend_language_scanner.l"
+#line 1079 "Zend/zend_language_scanner.l"
 		{
 	return T_LOGICAL_XOR;
 }
-#line 4083 "Zend/zend_language_scanner.c"
+#line 4087 "Zend/zend_language_scanner.c"
 yy315:
 		YYDEBUG(315, *YYCURSOR);
 		++YYCURSOR;
@@ -4088,61 +4092,61 @@
 		}
 		YYDEBUG(316, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1067 "Zend/zend_language_scanner.l"
+#line 1071 "Zend/zend_language_scanner.l"
 		{
 	return T_LOGICAL_OR;
 }
-#line 4096 "Zend/zend_language_scanner.c"
+#line 4100 "Zend/zend_language_scanner.c"
 yy317:
 		YYDEBUG(317, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(318, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1055 "Zend/zend_language_scanner.l"
+#line 1059 "Zend/zend_language_scanner.l"
 		{
 	return T_XOR_EQUAL;
 }
-#line 4106 "Zend/zend_language_scanner.c"
+#line 4110 "Zend/zend_language_scanner.c"
 yy319:
 		YYDEBUG(319, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(320, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1059 "Zend/zend_language_scanner.l"
+#line 1063 "Zend/zend_language_scanner.l"
 		{
 	return T_BOOLEAN_OR;
 }
-#line 4116 "Zend/zend_language_scanner.c"
+#line 4120 "Zend/zend_language_scanner.c"
 yy321:
 		YYDEBUG(321, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(322, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1051 "Zend/zend_language_scanner.l"
+#line 1055 "Zend/zend_language_scanner.l"
 		{
 	return T_OR_EQUAL;
 }
-#line 4126 "Zend/zend_language_scanner.c"
+#line 4130 "Zend/zend_language_scanner.c"
 yy323:
 		YYDEBUG(323, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(324, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1063 "Zend/zend_language_scanner.l"
+#line 1067 "Zend/zend_language_scanner.l"
 		{
 	return T_BOOLEAN_AND;
 }
-#line 4136 "Zend/zend_language_scanner.c"
+#line 4140 "Zend/zend_language_scanner.c"
 yy325:
 		YYDEBUG(325, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(326, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1047 "Zend/zend_language_scanner.l"
+#line 1051 "Zend/zend_language_scanner.l"
 		{
 	return T_AND_EQUAL;
 }
-#line 4146 "Zend/zend_language_scanner.c"
+#line 4150 "Zend/zend_language_scanner.c"
 yy327:
 		YYDEBUG(327, *YYCURSOR);
 		++YYCURSOR;
@@ -4151,7 +4155,7 @@
 yy328:
 		YYDEBUG(328, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1574 "Zend/zend_language_scanner.l"
+#line 1578 "Zend/zend_language_scanner.l"
 		{
 	if (CG(asp_tags)) {
 		BEGIN(INITIAL);
@@ -4164,17 +4168,17 @@
 		return yytext[0];
 	}
 }
-#line 4168 "Zend/zend_language_scanner.c"
+#line 4172 "Zend/zend_language_scanner.c"
 yy329:
 		YYDEBUG(329, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(330, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1035 "Zend/zend_language_scanner.l"
+#line 1039 "Zend/zend_language_scanner.l"
 		{
 	return T_MOD_EQUAL;
 }
-#line 4178 "Zend/zend_language_scanner.c"
+#line 4182 "Zend/zend_language_scanner.c"
 yy331:
 		YYDEBUG(331, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4205,11 +4209,11 @@
 		++YYCURSOR;
 		YYDEBUG(336, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1031 "Zend/zend_language_scanner.l"
+#line 1035 "Zend/zend_language_scanner.l"
 		{
 	return T_CONCAT_EQUAL;
 }
-#line 4213 "Zend/zend_language_scanner.c"
+#line 4217 "Zend/zend_language_scanner.c"
 yy337:
 		YYDEBUG(337, *YYCURSOR);
 		yyaccept = 6;
@@ -4218,12 +4222,12 @@
 yy338:
 		YYDEBUG(338, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1537 "Zend/zend_language_scanner.l"
+#line 1541 "Zend/zend_language_scanner.l"
 		{
 	BEGIN(ST_COMMENT);
 	yymore();
 }
-#line 4227 "Zend/zend_language_scanner.c"
+#line 4231 "Zend/zend_language_scanner.c"
 yy339:
 		YYDEBUG(339, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4233,11 +4237,11 @@
 		++YYCURSOR;
 		YYDEBUG(341, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1027 "Zend/zend_language_scanner.l"
+#line 1031 "Zend/zend_language_scanner.l"
 		{
 	return T_DIV_EQUAL;
 }
-#line 4241 "Zend/zend_language_scanner.c"
+#line 4245 "Zend/zend_language_scanner.c"
 yy342:
 		YYDEBUG(342, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4256,54 +4260,54 @@
 		}
 		YYDEBUG(345, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1531 "Zend/zend_language_scanner.l"
+#line 1535 "Zend/zend_language_scanner.l"
 		{
 	RESET_DOC_COMMENT();
 	BEGIN(ST_DOC_COMMENT);
 	yymore();
 }
-#line 4266 "Zend/zend_language_scanner.c"
+#line 4270 "Zend/zend_language_scanner.c"
 yy346:
 		YYDEBUG(346, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(347, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1023 "Zend/zend_language_scanner.l"
+#line 1027 "Zend/zend_language_scanner.l"
 		{
 	return T_MUL_EQUAL;
 }
-#line 4276 "Zend/zend_language_scanner.c"
+#line 4280 "Zend/zend_language_scanner.c"
 yy348:
 		YYDEBUG(348, *YYCURSOR);
 		++YYCURSOR;
 		if ((yych = *YYCURSOR) == '=') goto yy352;
 		YYDEBUG(349, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1083 "Zend/zend_language_scanner.l"
+#line 1087 "Zend/zend_language_scanner.l"
 		{
 	return T_SR;
 }
-#line 4287 "Zend/zend_language_scanner.c"
+#line 4291 "Zend/zend_language_scanner.c"
 yy350:
 		YYDEBUG(350, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(351, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1011 "Zend/zend_language_scanner.l"
+#line 1015 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_GREATER_OR_EQUAL;
 }
-#line 4297 "Zend/zend_language_scanner.c"
+#line 4301 "Zend/zend_language_scanner.c"
 yy352:
 		YYDEBUG(352, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(353, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1043 "Zend/zend_language_scanner.l"
+#line 1047 "Zend/zend_language_scanner.l"
 		{
 	return T_SR_EQUAL;
 }
-#line 4307 "Zend/zend_language_scanner.c"
+#line 4311 "Zend/zend_language_scanner.c"
 yy354:
 		YYDEBUG(354, *YYCURSOR);
 		yyaccept = 7;
@@ -4314,11 +4318,11 @@
 yy355:
 		YYDEBUG(355, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1079 "Zend/zend_language_scanner.l"
+#line 1083 "Zend/zend_language_scanner.l"
 		{
 	return T_SL;
 }
-#line 4322 "Zend/zend_language_scanner.c"
+#line 4326 "Zend/zend_language_scanner.c"
 yy356:
 		YYDEBUG(356, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4330,22 +4334,22 @@
 		++YYCURSOR;
 		YYDEBUG(358, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1007 "Zend/zend_language_scanner.l"
+#line 1011 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_SMALLER_OR_EQUAL;
 }
-#line 4338 "Zend/zend_language_scanner.c"
+#line 4342 "Zend/zend_language_scanner.c"
 yy359:
 		YYDEBUG(359, *YYCURSOR);
 		++YYCURSOR;
 yy360:
 		YYDEBUG(360, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1003 "Zend/zend_language_scanner.l"
+#line 1007 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_NOT_EQUAL;
 }
-#line 4349 "Zend/zend_language_scanner.c"
+#line 4353 "Zend/zend_language_scanner.c"
 yy361:
 		YYDEBUG(361, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4396,11 +4400,11 @@
 		++YYCURSOR;
 		YYDEBUG(369, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1039 "Zend/zend_language_scanner.l"
+#line 1043 "Zend/zend_language_scanner.l"
 		{
 	return T_SL_EQUAL;
 }
-#line 4404 "Zend/zend_language_scanner.c"
+#line 4408 "Zend/zend_language_scanner.c"
 yy370:
 		YYDEBUG(370, *YYCURSOR);
 		++YYCURSOR;
@@ -4507,7 +4511,7 @@
 yy380:
 		YYDEBUG(380, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1646 "Zend/zend_language_scanner.l"
+#line 1650 "Zend/zend_language_scanner.l"
 		{
 	char *s;
 	int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -4528,7 +4532,7 @@
 	BEGIN(ST_START_HEREDOC);
 	return T_START_HEREDOC;
 }
-#line 4532 "Zend/zend_language_scanner.c"
+#line 4536 "Zend/zend_language_scanner.c"
 yy381:
 		YYDEBUG(381, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4570,7 +4574,7 @@
 yy386:
 		YYDEBUG(386, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1817 "Zend/zend_language_scanner.l"
+#line 1821 "Zend/zend_language_scanner.l"
 		{
 	int bprefix = (yytext[0] != '<') ? 1 : 0;
 	char *s;
@@ -4587,7 +4591,7 @@
 	BEGIN(ST_START_NOWDOC);
 	return T_START_NOWDOC;
 }
-#line 4591 "Zend/zend_language_scanner.c"
+#line 4595 "Zend/zend_language_scanner.c"
 yy387:
 		YYDEBUG(387, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4601,31 +4605,31 @@
 		++YYCURSOR;
 		YYDEBUG(390, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 995 "Zend/zend_language_scanner.l"
+#line 999 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_NOT_IDENTICAL;
 }
-#line 4609 "Zend/zend_language_scanner.c"
+#line 4613 "Zend/zend_language_scanner.c"
 yy391:
 		YYDEBUG(391, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(392, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1015 "Zend/zend_language_scanner.l"
+#line 1019 "Zend/zend_language_scanner.l"
 		{
 	return T_PLUS_EQUAL;
 }
-#line 4619 "Zend/zend_language_scanner.c"
+#line 4623 "Zend/zend_language_scanner.c"
 yy393:
 		YYDEBUG(393, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(394, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 983 "Zend/zend_language_scanner.l"
+#line 987 "Zend/zend_language_scanner.l"
 		{
 	return T_INC;
 }
-#line 4629 "Zend/zend_language_scanner.c"
+#line 4633 "Zend/zend_language_scanner.c"
 yy395:
 		YYDEBUG(395, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4644,42 +4648,42 @@
 		}
 		YYDEBUG(398, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 975 "Zend/zend_language_scanner.l"
+#line 979 "Zend/zend_language_scanner.l"
 		{
 	return T_LIST;
 }
-#line 4652 "Zend/zend_language_scanner.c"
+#line 4656 "Zend/zend_language_scanner.c"
 yy399:
 		YYDEBUG(399, *YYCURSOR);
 		++YYCURSOR;
 		if ((yych = *YYCURSOR) == '=') goto yy403;
 		YYDEBUG(400, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 999 "Zend/zend_language_scanner.l"
+#line 1003 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_EQUAL;
 }
-#line 4663 "Zend/zend_language_scanner.c"
+#line 4667 "Zend/zend_language_scanner.c"
 yy401:
 		YYDEBUG(401, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(402, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 971 "Zend/zend_language_scanner.l"
+#line 975 "Zend/zend_language_scanner.l"
 		{
 	return T_DOUBLE_ARROW;
 }
-#line 4673 "Zend/zend_language_scanner.c"
+#line 4677 "Zend/zend_language_scanner.c"
 yy403:
 		YYDEBUG(403, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(404, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 991 "Zend/zend_language_scanner.l"
+#line 995 "Zend/zend_language_scanner.l"
 		{
 	return T_IS_IDENTICAL;
 }
-#line 4683 "Zend/zend_language_scanner.c"
+#line 4687 "Zend/zend_language_scanner.c"
 yy405:
 		YYDEBUG(405, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4771,7 +4775,7 @@
 		}
 		YYDEBUG(423, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1295 "Zend/zend_language_scanner.l"
+#line 1299 "Zend/zend_language_scanner.l"
 		{
 	if (CG(current_namespace)) {
 		*zendlval = *CG(current_namespace);
@@ -4781,7 +4785,7 @@
 	}
 	return T_NS_C;
 }
-#line 4785 "Zend/zend_language_scanner.c"
+#line 4789 "Zend/zend_language_scanner.c"
 yy424:
 		YYDEBUG(424, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4799,7 +4803,7 @@
 		}
 		YYDEBUG(428, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1268 "Zend/zend_language_scanner.l"
+#line 1272 "Zend/zend_language_scanner.l"
 		{
 	char *filename = zend_get_compiled_filename(TSRMLS_C);
 	const size_t filename_len = strlen(filename);
@@ -4826,7 +4830,7 @@
 	zendlval->type = IS_STRING;
 	return T_DIR;
 }
-#line 4830 "Zend/zend_language_scanner.c"
+#line 4834 "Zend/zend_language_scanner.c"
 yy429:
 		YYDEBUG(429, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4847,13 +4851,13 @@
 		}
 		YYDEBUG(434, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1250 "Zend/zend_language_scanner.l"
+#line 1254 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.lval = CG(zend_lineno);
 	zendlval->type = IS_LONG;
 	return T_LINE;
 }
-#line 4857 "Zend/zend_language_scanner.c"
+#line 4861 "Zend/zend_language_scanner.c"
 yy435:
 		YYDEBUG(435, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4880,7 +4884,7 @@
 		}
 		YYDEBUG(442, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1229 "Zend/zend_language_scanner.l"
+#line 1233 "Zend/zend_language_scanner.l"
 		{
 	char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL;
 	char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL;
@@ -4901,7 +4905,7 @@
 	zendlval->type = IS_STRING;
 	return T_METHOD_C;
 }
-#line 4905 "Zend/zend_language_scanner.c"
+#line 4909 "Zend/zend_language_scanner.c"
 yy443:
 		YYDEBUG(443, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4939,7 +4943,7 @@
 		}
 		YYDEBUG(453, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1213 "Zend/zend_language_scanner.l"
+#line 1217 "Zend/zend_language_scanner.l"
 		{
 	char *func_name = NULL;
 
@@ -4955,7 +4959,7 @@
 	zendlval->type = IS_STRING;
 	return T_FUNC_C;
 }
-#line 4959 "Zend/zend_language_scanner.c"
+#line 4963 "Zend/zend_language_scanner.c"
 yy454:
 		YYDEBUG(454, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -4973,7 +4977,7 @@
 		}
 		YYDEBUG(458, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1256 "Zend/zend_language_scanner.l"
+#line 1260 "Zend/zend_language_scanner.l"
 		{
 	char *filename = zend_get_compiled_filename(TSRMLS_C);
 
@@ -4985,7 +4989,7 @@
 	zendlval->type = IS_STRING;
 	return T_FILE;
 }
-#line 4989 "Zend/zend_language_scanner.c"
+#line 4993 "Zend/zend_language_scanner.c"
 yy459:
 		YYDEBUG(459, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5009,7 +5013,7 @@
 		}
 		YYDEBUG(465, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1197 "Zend/zend_language_scanner.l"
+#line 1201 "Zend/zend_language_scanner.l"
 		{
 	char *class_name = NULL;
 
@@ -5025,7 +5029,7 @@
 	zendlval->type = IS_STRING;
 	return T_CLASS_C;
 }
-#line 5029 "Zend/zend_language_scanner.c"
+#line 5033 "Zend/zend_language_scanner.c"
 yy466:
 		YYDEBUG(466, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5087,11 +5091,11 @@
 		}
 		YYDEBUG(478, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 939 "Zend/zend_language_scanner.l"
+#line 943 "Zend/zend_language_scanner.l"
 		{
 	return T_HALT_COMPILER;
 }
-#line 5095 "Zend/zend_language_scanner.c"
+#line 5099 "Zend/zend_language_scanner.c"
 yy479:
 		YYDEBUG(479, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5111,11 +5115,11 @@
 		}
 		YYDEBUG(482, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 923 "Zend/zend_language_scanner.l"
+#line 927 "Zend/zend_language_scanner.l"
 		{
 	return T_USE;
 }
-#line 5119 "Zend/zend_language_scanner.c"
+#line 5123 "Zend/zend_language_scanner.c"
 yy483:
 		YYDEBUG(483, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5134,11 +5138,11 @@
 		}
 		YYDEBUG(486, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 967 "Zend/zend_language_scanner.l"
+#line 971 "Zend/zend_language_scanner.l"
 		{
 	return T_UNSET;
 }
-#line 5142 "Zend/zend_language_scanner.c"
+#line 5146 "Zend/zend_language_scanner.c"
 yy487:
 		YYDEBUG(487, *YYCURSOR);
 		++YYCURSOR;
@@ -5310,11 +5314,11 @@
 		++YYCURSOR;
 		YYDEBUG(504, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 867 "Zend/zend_language_scanner.l"
+#line 871 "Zend/zend_language_scanner.l"
 		{
 	return T_INT_CAST;
 }
-#line 5318 "Zend/zend_language_scanner.c"
+#line 5322 "Zend/zend_language_scanner.c"
 yy505:
 		YYDEBUG(505, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5358,11 +5362,11 @@
 		++YYCURSOR;
 		YYDEBUG(513, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 871 "Zend/zend_language_scanner.l"
+#line 875 "Zend/zend_language_scanner.l"
 		{
 	return T_DOUBLE_CAST;
 }
-#line 5366 "Zend/zend_language_scanner.c"
+#line 5370 "Zend/zend_language_scanner.c"
 yy514:
 		YYDEBUG(514, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5432,11 +5436,11 @@
 		++YYCURSOR;
 		YYDEBUG(527, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 875 "Zend/zend_language_scanner.l"
+#line 879 "Zend/zend_language_scanner.l"
 		{
 	return T_STRING_CAST;
 }
-#line 5440 "Zend/zend_language_scanner.c"
+#line 5444 "Zend/zend_language_scanner.c"
 yy528:
 		YYDEBUG(528, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5469,11 +5473,11 @@
 		++YYCURSOR;
 		YYDEBUG(534, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 883 "Zend/zend_language_scanner.l"
+#line 887 "Zend/zend_language_scanner.l"
 		{
 	return T_ARRAY_CAST;
 }
-#line 5477 "Zend/zend_language_scanner.c"
+#line 5481 "Zend/zend_language_scanner.c"
 yy535:
 		YYDEBUG(535, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5511,11 +5515,11 @@
 		++YYCURSOR;
 		YYDEBUG(542, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 887 "Zend/zend_language_scanner.l"
+#line 891 "Zend/zend_language_scanner.l"
 		{
 	return T_OBJECT_CAST;
 }
-#line 5519 "Zend/zend_language_scanner.c"
+#line 5523 "Zend/zend_language_scanner.c"
 yy543:
 		YYDEBUG(543, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5556,11 +5560,11 @@
 		++YYCURSOR;
 		YYDEBUG(550, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 891 "Zend/zend_language_scanner.l"
+#line 895 "Zend/zend_language_scanner.l"
 		{
 	return T_BOOL_CAST;
 }
-#line 5564 "Zend/zend_language_scanner.c"
+#line 5568 "Zend/zend_language_scanner.c"
 yy551:
 		YYDEBUG(551, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5604,11 +5608,11 @@
 		++YYCURSOR;
 		YYDEBUG(559, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 879 "Zend/zend_language_scanner.l"
+#line 883 "Zend/zend_language_scanner.l"
 		{
 	return T_STRING_CAST;
 }
-#line 5612 "Zend/zend_language_scanner.c"
+#line 5616 "Zend/zend_language_scanner.c"
 yy560:
 		YYDEBUG(560, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5641,11 +5645,11 @@
 		++YYCURSOR;
 		YYDEBUG(566, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 895 "Zend/zend_language_scanner.l"
+#line 899 "Zend/zend_language_scanner.l"
 		{
 	return T_UNSET_CAST;
 }
-#line 5649 "Zend/zend_language_scanner.c"
+#line 5653 "Zend/zend_language_scanner.c"
 yy567:
 		YYDEBUG(567, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5659,11 +5663,11 @@
 		}
 		YYDEBUG(569, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 863 "Zend/zend_language_scanner.l"
+#line 867 "Zend/zend_language_scanner.l"
 		{
 	return T_VAR;
 }
-#line 5667 "Zend/zend_language_scanner.c"
+#line 5671 "Zend/zend_language_scanner.c"
 yy570:
 		YYDEBUG(570, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5683,11 +5687,11 @@
 		}
 		YYDEBUG(573, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 855 "Zend/zend_language_scanner.l"
+#line 859 "Zend/zend_language_scanner.l"
 		{
 	return T_NEW;
 }
-#line 5691 "Zend/zend_language_scanner.c"
+#line 5695 "Zend/zend_language_scanner.c"
 yy574:
 		YYDEBUG(574, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5726,21 +5730,21 @@
 		}
 		YYDEBUG(581, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 919 "Zend/zend_language_scanner.l"
+#line 923 "Zend/zend_language_scanner.l"
 		{
 	return T_NAMESPACE;
 }
-#line 5734 "Zend/zend_language_scanner.c"
+#line 5738 "Zend/zend_language_scanner.c"
 yy582:
 		YYDEBUG(582, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(583, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 851 "Zend/zend_language_scanner.l"
+#line 855 "Zend/zend_language_scanner.l"
 		{
 	return T_PAAMAYIM_NEKUDOTAYIM;
 }
-#line 5744 "Zend/zend_language_scanner.c"
+#line 5748 "Zend/zend_language_scanner.c"
 yy584:
 		YYDEBUG(584, *YYCURSOR);
 		++YYCURSOR;
@@ -5762,32 +5766,32 @@
 		++YYCURSOR;
 		YYDEBUG(587, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1019 "Zend/zend_language_scanner.l"
+#line 1023 "Zend/zend_language_scanner.l"
 		{
 	return T_MINUS_EQUAL;
 }
-#line 5770 "Zend/zend_language_scanner.c"
+#line 5774 "Zend/zend_language_scanner.c"
 yy588:
 		YYDEBUG(588, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(589, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 987 "Zend/zend_language_scanner.l"
+#line 991 "Zend/zend_language_scanner.l"
 		{
 	return T_DEC;
 }
-#line 5780 "Zend/zend_language_scanner.c"
+#line 5784 "Zend/zend_language_scanner.c"
 yy590:
 		YYDEBUG(590, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(591, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 821 "Zend/zend_language_scanner.l"
+#line 825 "Zend/zend_language_scanner.l"
 		{
 	yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
 	return T_OBJECT_OPERATOR;
 }
-#line 5791 "Zend/zend_language_scanner.c"
+#line 5795 "Zend/zend_language_scanner.c"
 yy592:
 		YYDEBUG(592, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5832,11 +5836,11 @@
 		}
 		YYDEBUG(598, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 963 "Zend/zend_language_scanner.l"
+#line 967 "Zend/zend_language_scanner.l"
 		{
 	return T_PUBLIC;
 }
-#line 5840 "Zend/zend_language_scanner.c"
+#line 5844 "Zend/zend_language_scanner.c"
 yy599:
 		YYDEBUG(599, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5891,11 +5895,11 @@
 		}
 		YYDEBUG(607, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 959 "Zend/zend_language_scanner.l"
+#line 963 "Zend/zend_language_scanner.l"
 		{
 	return T_PROTECTED;
 }
-#line 5899 "Zend/zend_language_scanner.c"
+#line 5903 "Zend/zend_language_scanner.c"
 yy608:
 		YYDEBUG(608, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5925,11 +5929,11 @@
 		}
 		YYDEBUG(613, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 955 "Zend/zend_language_scanner.l"
+#line 959 "Zend/zend_language_scanner.l"
 		{
 	return T_PRIVATE;
 }
-#line 5933 "Zend/zend_language_scanner.c"
+#line 5937 "Zend/zend_language_scanner.c"
 yy614:
 		YYDEBUG(614, *YYCURSOR);
 		++YYCURSOR;
@@ -5938,11 +5942,11 @@
 		}
 		YYDEBUG(615, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 801 "Zend/zend_language_scanner.l"
+#line 805 "Zend/zend_language_scanner.l"
 		{
 	return T_PRINT;
 }
-#line 5946 "Zend/zend_language_scanner.c"
+#line 5950 "Zend/zend_language_scanner.c"
 yy616:
 		YYDEBUG(616, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5967,11 +5971,11 @@
 		}
 		YYDEBUG(620, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 793 "Zend/zend_language_scanner.l"
+#line 797 "Zend/zend_language_scanner.l"
 		{
 	return T_GOTO;
 }
-#line 5975 "Zend/zend_language_scanner.c"
+#line 5979 "Zend/zend_language_scanner.c"
 yy621:
 		YYDEBUG(621, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -5995,11 +5999,11 @@
 		}
 		YYDEBUG(625, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 927 "Zend/zend_language_scanner.l"
+#line 931 "Zend/zend_language_scanner.l"
 		{
 	return T_GLOBAL;
 }
-#line 6003 "Zend/zend_language_scanner.c"
+#line 6007 "Zend/zend_language_scanner.c"
 yy626:
 		YYDEBUG(626, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6033,11 +6037,11 @@
 		}
 		YYDEBUG(632, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 785 "Zend/zend_language_scanner.l"
+#line 789 "Zend/zend_language_scanner.l"
 		{
 	return T_BREAK;
 }
-#line 6041 "Zend/zend_language_scanner.c"
+#line 6045 "Zend/zend_language_scanner.c"
 yy633:
 		YYDEBUG(633, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6077,11 +6081,11 @@
 		}
 		YYDEBUG(640, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 769 "Zend/zend_language_scanner.l"
+#line 773 "Zend/zend_language_scanner.l"
 		{
 	return T_SWITCH;
 }
-#line 6085 "Zend/zend_language_scanner.c"
+#line 6089 "Zend/zend_language_scanner.c"
 yy641:
 		YYDEBUG(641, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6105,11 +6109,11 @@
 		}
 		YYDEBUG(645, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 943 "Zend/zend_language_scanner.l"
+#line 947 "Zend/zend_language_scanner.l"
 		{
 	return T_STATIC;
 }
-#line 6113 "Zend/zend_language_scanner.c"
+#line 6117 "Zend/zend_language_scanner.c"
 yy646:
 		YYDEBUG(646, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6136,11 +6140,11 @@
 		}
 		YYDEBUG(650, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 765 "Zend/zend_language_scanner.l"
+#line 769 "Zend/zend_language_scanner.l"
 		{
 	return T_AS;
 }
-#line 6144 "Zend/zend_language_scanner.c"
+#line 6148 "Zend/zend_language_scanner.c"
 yy651:
 		YYDEBUG(651, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6159,11 +6163,11 @@
 		}
 		YYDEBUG(654, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 979 "Zend/zend_language_scanner.l"
+#line 983 "Zend/zend_language_scanner.l"
 		{
 	return T_ARRAY;
 }
-#line 6167 "Zend/zend_language_scanner.c"
+#line 6171 "Zend/zend_language_scanner.c"
 yy655:
 		YYDEBUG(655, *YYCURSOR);
 		++YYCURSOR;
@@ -6172,11 +6176,11 @@
 		}
 		YYDEBUG(656, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1071 "Zend/zend_language_scanner.l"
+#line 1075 "Zend/zend_language_scanner.l"
 		{
 	return T_LOGICAL_AND;
 }
-#line 6180 "Zend/zend_language_scanner.c"
+#line 6184 "Zend/zend_language_scanner.c"
 yy657:
 		YYDEBUG(657, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6210,11 +6214,11 @@
 		}
 		YYDEBUG(663, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 947 "Zend/zend_language_scanner.l"
+#line 951 "Zend/zend_language_scanner.l"
 		{
 	return T_ABSTRACT;
 }
-#line 6218 "Zend/zend_language_scanner.c"
+#line 6222 "Zend/zend_language_scanner.c"
 yy664:
 		YYDEBUG(664, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6238,11 +6242,11 @@
 		}
 		YYDEBUG(668, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 725 "Zend/zend_language_scanner.l"
+#line 729 "Zend/zend_language_scanner.l"
 		{
 	return T_WHILE;
 }
-#line 6246 "Zend/zend_language_scanner.c"
+#line 6250 "Zend/zend_language_scanner.c"
 yy669:
 		YYDEBUG(669, *YYCURSOR);
 		++YYCURSOR;
@@ -6251,11 +6255,11 @@
 		}
 		YYDEBUG(670, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 709 "Zend/zend_language_scanner.l"
+#line 713 "Zend/zend_language_scanner.l"
 		{
 	return T_IF;
 }
-#line 6259 "Zend/zend_language_scanner.c"
+#line 6263 "Zend/zend_language_scanner.c"
 yy671:
 		YYDEBUG(671, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6307,11 +6311,11 @@
 		}
 		YYDEBUG(677, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 931 "Zend/zend_language_scanner.l"
+#line 935 "Zend/zend_language_scanner.l"
 		{
 	return T_ISSET;
 }
-#line 6315 "Zend/zend_language_scanner.c"
+#line 6319 "Zend/zend_language_scanner.c"
 yy678:
 		YYDEBUG(678, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6365,11 +6369,11 @@
 yy685:
 		YYDEBUG(685, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 903 "Zend/zend_language_scanner.l"
+#line 907 "Zend/zend_language_scanner.l"
 		{
 	return T_INCLUDE;
 }
-#line 6373 "Zend/zend_language_scanner.c"
+#line 6377 "Zend/zend_language_scanner.c"
 yy686:
 		YYDEBUG(686, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6398,11 +6402,11 @@
 		}
 		YYDEBUG(691, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 907 "Zend/zend_language_scanner.l"
+#line 911 "Zend/zend_language_scanner.l"
 		{
 	return T_INCLUDE_ONCE;
 }
-#line 6406 "Zend/zend_language_scanner.c"
+#line 6410 "Zend/zend_language_scanner.c"
 yy692:
 		YYDEBUG(692, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6436,11 +6440,11 @@
 		}
 		YYDEBUG(698, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 809 "Zend/zend_language_scanner.l"
+#line 813 "Zend/zend_language_scanner.l"
 		{
 	return T_INTERFACE;
 }
-#line 6444 "Zend/zend_language_scanner.c"
+#line 6448 "Zend/zend_language_scanner.c"
 yy699:
 		YYDEBUG(699, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6479,11 +6483,11 @@
 		}
 		YYDEBUG(706, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 761 "Zend/zend_language_scanner.l"
+#line 765 "Zend/zend_language_scanner.l"
 		{
 	return T_INSTANCEOF;
 }
-#line 6487 "Zend/zend_language_scanner.c"
+#line 6491 "Zend/zend_language_scanner.c"
 yy707:
 		YYDEBUG(707, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6527,11 +6531,11 @@
 		}
 		YYDEBUG(715, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 817 "Zend/zend_language_scanner.l"
+#line 821 "Zend/zend_language_scanner.l"
 		{
 	return T_IMPLEMENTS;
 }
-#line 6535 "Zend/zend_language_scanner.c"
+#line 6539 "Zend/zend_language_scanner.c"
 yy716:
 		YYDEBUG(716, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6551,11 +6555,11 @@
 		}
 		YYDEBUG(719, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 697 "Zend/zend_language_scanner.l"
+#line 701 "Zend/zend_language_scanner.l"
 		{
 	return T_TRY;
 }
-#line 6559 "Zend/zend_language_scanner.c"
+#line 6563 "Zend/zend_language_scanner.c"
 yy720:
 		YYDEBUG(720, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6574,11 +6578,11 @@
 		}
 		YYDEBUG(723, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 705 "Zend/zend_language_scanner.l"
+#line 709 "Zend/zend_language_scanner.l"
 		{
 	return T_THROW;
 }
-#line 6582 "Zend/zend_language_scanner.c"
+#line 6586 "Zend/zend_language_scanner.c"
 yy724:
 		YYDEBUG(724, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6639,11 +6643,11 @@
 yy731:
 		YYDEBUG(731, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 911 "Zend/zend_language_scanner.l"
+#line 915 "Zend/zend_language_scanner.l"
 		{
 	return T_REQUIRE;
 }
-#line 6647 "Zend/zend_language_scanner.c"
+#line 6651 "Zend/zend_language_scanner.c"
 yy732:
 		YYDEBUG(732, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6672,11 +6676,11 @@
 		}
 		YYDEBUG(737, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 915 "Zend/zend_language_scanner.l"
+#line 919 "Zend/zend_language_scanner.l"
 		{
 	return T_REQUIRE_ONCE;
 }
-#line 6680 "Zend/zend_language_scanner.c"
+#line 6684 "Zend/zend_language_scanner.c"
 yy738:
 		YYDEBUG(738, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6695,11 +6699,11 @@
 		}
 		YYDEBUG(741, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 693 "Zend/zend_language_scanner.l"
+#line 697 "Zend/zend_language_scanner.l"
 		{
 	return T_RETURN;
 }
-#line 6703 "Zend/zend_language_scanner.c"
+#line 6707 "Zend/zend_language_scanner.c"
 yy742:
 		YYDEBUG(742, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6780,11 +6784,11 @@
 		}
 		YYDEBUG(752, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 789 "Zend/zend_language_scanner.l"
+#line 793 "Zend/zend_language_scanner.l"
 		{
 	return T_CONTINUE;
 }
-#line 6788 "Zend/zend_language_scanner.c"
+#line 6792 "Zend/zend_language_scanner.c"
 yy753:
 		YYDEBUG(753, *YYCURSOR);
 		++YYCURSOR;
@@ -6793,11 +6797,11 @@
 		}
 		YYDEBUG(754, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 689 "Zend/zend_language_scanner.l"
+#line 693 "Zend/zend_language_scanner.l"
 		{
 	return T_CONST;
 }
-#line 6801 "Zend/zend_language_scanner.c"
+#line 6805 "Zend/zend_language_scanner.c"
 yy755:
 		YYDEBUG(755, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6822,11 +6826,11 @@
 		}
 		YYDEBUG(759, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 859 "Zend/zend_language_scanner.l"
+#line 863 "Zend/zend_language_scanner.l"
 		{
 	return T_CLONE;
 }
-#line 6830 "Zend/zend_language_scanner.c"
+#line 6834 "Zend/zend_language_scanner.c"
 yy760:
 		YYDEBUG(760, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6840,11 +6844,11 @@
 		}
 		YYDEBUG(762, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 805 "Zend/zend_language_scanner.l"
+#line 809 "Zend/zend_language_scanner.l"
 		{
 	return T_CLASS;
 }
-#line 6848 "Zend/zend_language_scanner.c"
+#line 6852 "Zend/zend_language_scanner.c"
 yy763:
 		YYDEBUG(763, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6864,11 +6868,11 @@
 		}
 		YYDEBUG(766, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 777 "Zend/zend_language_scanner.l"
+#line 781 "Zend/zend_language_scanner.l"
 		{
 	return T_CASE;
 }
-#line 6872 "Zend/zend_language_scanner.c"
+#line 6876 "Zend/zend_language_scanner.c"
 yy767:
 		YYDEBUG(767, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6882,11 +6886,11 @@
 		}
 		YYDEBUG(769, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 701 "Zend/zend_language_scanner.l"
+#line 705 "Zend/zend_language_scanner.l"
 		{
 	return T_CATCH;
 }
-#line 6890 "Zend/zend_language_scanner.c"
+#line 6894 "Zend/zend_language_scanner.c"
 yy770:
 		YYDEBUG(770, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6937,11 +6941,11 @@
 		}
 		YYDEBUG(779, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 685 "Zend/zend_language_scanner.l"
+#line 689 "Zend/zend_language_scanner.l"
 		{
 	return T_FUNCTION;
 }
-#line 6945 "Zend/zend_language_scanner.c"
+#line 6949 "Zend/zend_language_scanner.c"
 yy780:
 		YYDEBUG(780, *YYCURSOR);
 		++YYCURSOR;
@@ -6965,11 +6969,11 @@
 yy781:
 		YYDEBUG(781, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 737 "Zend/zend_language_scanner.l"
+#line 741 "Zend/zend_language_scanner.l"
 		{
 	return T_FOR;
 }
-#line 6973 "Zend/zend_language_scanner.c"
+#line 6977 "Zend/zend_language_scanner.c"
 yy782:
 		YYDEBUG(782, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -6993,11 +6997,11 @@
 		}
 		YYDEBUG(786, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 745 "Zend/zend_language_scanner.l"
+#line 749 "Zend/zend_language_scanner.l"
 		{
 	return T_FOREACH;
 }
-#line 7001 "Zend/zend_language_scanner.c"
+#line 7005 "Zend/zend_language_scanner.c"
 yy787:
 		YYDEBUG(787, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7016,11 +7020,11 @@
 		}
 		YYDEBUG(790, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 951 "Zend/zend_language_scanner.l"
+#line 955 "Zend/zend_language_scanner.l"
 		{
 	return T_FINAL;
 }
-#line 7024 "Zend/zend_language_scanner.c"
+#line 7028 "Zend/zend_language_scanner.c"
 yy791:
 		YYDEBUG(791, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7051,11 +7055,11 @@
 		}
 		YYDEBUG(794, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 733 "Zend/zend_language_scanner.l"
+#line 737 "Zend/zend_language_scanner.l"
 		{
 	return T_DO;
 }
-#line 7059 "Zend/zend_language_scanner.c"
+#line 7063 "Zend/zend_language_scanner.c"
 yy795:
 		YYDEBUG(795, *YYCURSOR);
 		++YYCURSOR;
@@ -7064,11 +7068,11 @@
 		}
 		YYDEBUG(796, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 681 "Zend/zend_language_scanner.l"
+#line 685 "Zend/zend_language_scanner.l"
 		{
 	return T_EXIT;
 }
-#line 7072 "Zend/zend_language_scanner.c"
+#line 7076 "Zend/zend_language_scanner.c"
 yy797:
 		YYDEBUG(797, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7103,11 +7107,11 @@
 		}
 		YYDEBUG(803, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 781 "Zend/zend_language_scanner.l"
+#line 785 "Zend/zend_language_scanner.l"
 		{
 	return T_DEFAULT;
 }
-#line 7111 "Zend/zend_language_scanner.c"
+#line 7115 "Zend/zend_language_scanner.c"
 yy804:
 		YYDEBUG(804, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7131,11 +7135,11 @@
 		}
 		YYDEBUG(808, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 753 "Zend/zend_language_scanner.l"
+#line 757 "Zend/zend_language_scanner.l"
 		{
 	return T_DECLARE;
 }
-#line 7139 "Zend/zend_language_scanner.c"
+#line 7143 "Zend/zend_language_scanner.c"
 yy809:
 		YYDEBUG(809, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7215,11 +7219,11 @@
 		}
 		YYDEBUG(821, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 813 "Zend/zend_language_scanner.l"
+#line 817 "Zend/zend_language_scanner.l"
 		{
 	return T_EXTENDS;
 }
-#line 7223 "Zend/zend_language_scanner.c"
+#line 7227 "Zend/zend_language_scanner.c"
 yy822:
 		YYDEBUG(822, *YYCURSOR);
 		++YYCURSOR;
@@ -7228,11 +7232,11 @@
 		}
 		YYDEBUG(823, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 677 "Zend/zend_language_scanner.l"
+#line 681 "Zend/zend_language_scanner.l"
 		{
 	return T_EXIT;
 }
-#line 7236 "Zend/zend_language_scanner.c"
+#line 7240 "Zend/zend_language_scanner.c"
 yy824:
 		YYDEBUG(824, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7246,11 +7250,11 @@
 		}
 		YYDEBUG(826, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 899 "Zend/zend_language_scanner.l"
+#line 903 "Zend/zend_language_scanner.l"
 		{
 	return T_EVAL;
 }
-#line 7254 "Zend/zend_language_scanner.c"
+#line 7258 "Zend/zend_language_scanner.c"
 yy827:
 		YYDEBUG(827, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7320,11 +7324,11 @@
 		}
 		YYDEBUG(837, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 729 "Zend/zend_language_scanner.l"
+#line 733 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDWHILE;
 }
-#line 7328 "Zend/zend_language_scanner.c"
+#line 7332 "Zend/zend_language_scanner.c"
 yy838:
 		YYDEBUG(838, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7353,11 +7357,11 @@
 		}
 		YYDEBUG(843, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 773 "Zend/zend_language_scanner.l"
+#line 777 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDSWITCH;
 }
-#line 7361 "Zend/zend_language_scanner.c"
+#line 7365 "Zend/zend_language_scanner.c"
 yy844:
 		YYDEBUG(844, *YYCURSOR);
 		++YYCURSOR;
@@ -7366,11 +7370,11 @@
 		}
 		YYDEBUG(845, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 717 "Zend/zend_language_scanner.l"
+#line 721 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDIF;
 }
-#line 7374 "Zend/zend_language_scanner.c"
+#line 7378 "Zend/zend_language_scanner.c"
 yy846:
 		YYDEBUG(846, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7399,11 +7403,11 @@
 yy848:
 		YYDEBUG(848, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 741 "Zend/zend_language_scanner.l"
+#line 745 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDFOR;
 }
-#line 7407 "Zend/zend_language_scanner.c"
+#line 7411 "Zend/zend_language_scanner.c"
 yy849:
 		YYDEBUG(849, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7427,11 +7431,11 @@
 		}
 		YYDEBUG(853, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 749 "Zend/zend_language_scanner.l"
+#line 753 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDFOREACH;
 }
-#line 7435 "Zend/zend_language_scanner.c"
+#line 7439 "Zend/zend_language_scanner.c"
 yy854:
 		YYDEBUG(854, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7465,11 +7469,11 @@
 		}
 		YYDEBUG(860, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 757 "Zend/zend_language_scanner.l"
+#line 761 "Zend/zend_language_scanner.l"
 		{
 	return T_ENDDECLARE;
 }
-#line 7473 "Zend/zend_language_scanner.c"
+#line 7477 "Zend/zend_language_scanner.c"
 yy861:
 		YYDEBUG(861, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7488,11 +7492,11 @@
 		}
 		YYDEBUG(864, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 935 "Zend/zend_language_scanner.l"
+#line 939 "Zend/zend_language_scanner.l"
 		{
 	return T_EMPTY;
 }
-#line 7496 "Zend/zend_language_scanner.c"
+#line 7500 "Zend/zend_language_scanner.c"
 yy865:
 		YYDEBUG(865, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7521,11 +7525,11 @@
 yy867:
 		YYDEBUG(867, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 721 "Zend/zend_language_scanner.l"
+#line 725 "Zend/zend_language_scanner.l"
 		{
 	return T_ELSE;
 }
-#line 7529 "Zend/zend_language_scanner.c"
+#line 7533 "Zend/zend_language_scanner.c"
 yy868:
 		YYDEBUG(868, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7539,11 +7543,11 @@
 		}
 		YYDEBUG(870, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 713 "Zend/zend_language_scanner.l"
+#line 717 "Zend/zend_language_scanner.l"
 		{
 	return T_ELSEIF;
 }
-#line 7547 "Zend/zend_language_scanner.c"
+#line 7551 "Zend/zend_language_scanner.c"
 yy871:
 		YYDEBUG(871, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7557,11 +7561,11 @@
 		}
 		YYDEBUG(873, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 797 "Zend/zend_language_scanner.l"
+#line 801 "Zend/zend_language_scanner.l"
 		{
 	return T_ECHO;
 }
-#line 7565 "Zend/zend_language_scanner.c"
+#line 7569 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_LOOKING_FOR_PROPERTY:
@@ -7634,7 +7638,7 @@
 yy877:
 		YYDEBUG(877, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 826 "Zend/zend_language_scanner.l"
+#line 830 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.str.val = yytext; /* no copying - intentional */
 	zendlval->value.str.len = yyleng;
@@ -7642,7 +7646,7 @@
 	HANDLE_NEWLINES(yytext, yyleng);
 	return T_WHITESPACE;
 }
-#line 7646 "Zend/zend_language_scanner.c"
+#line 7650 "Zend/zend_language_scanner.c"
 yy878:
 		YYDEBUG(878, *YYCURSOR);
 		++YYCURSOR;
@@ -7650,13 +7654,13 @@
 yy879:
 		YYDEBUG(879, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 845 "Zend/zend_language_scanner.l"
+#line 849 "Zend/zend_language_scanner.l"
 		{
 	yyless(0);
 	yy_pop_state(TSRMLS_C);
 	goto restart;
 }
-#line 7660 "Zend/zend_language_scanner.c"
+#line 7664 "Zend/zend_language_scanner.c"
 yy880:
 		YYDEBUG(880, *YYCURSOR);
 		++YYCURSOR;
@@ -7665,14 +7669,14 @@
 yy881:
 		YYDEBUG(881, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 838 "Zend/zend_language_scanner.l"
+#line 842 "Zend/zend_language_scanner.l"
 		{
 	yy_pop_state(TSRMLS_C);
 	zend_copy_value(zendlval, yytext, yyleng);
 	zendlval->type = IS_STRING;
 	return T_STRING;
 }
-#line 7676 "Zend/zend_language_scanner.c"
+#line 7680 "Zend/zend_language_scanner.c"
 yy882:
 		YYDEBUG(882, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -7693,11 +7697,11 @@
 		++YYCURSOR;
 		YYDEBUG(886, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 834 "Zend/zend_language_scanner.l"
+#line 838 "Zend/zend_language_scanner.l"
 		{
 	return T_OBJECT_OPERATOR;
 }
-#line 7701 "Zend/zend_language_scanner.c"
+#line 7705 "Zend/zend_language_scanner.c"
 yy887:
 		YYDEBUG(887, *YYCURSOR);
 		++YYCURSOR;
@@ -7767,7 +7771,7 @@
 yy892:
 		YYDEBUG(892, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1113 "Zend/zend_language_scanner.l"
+#line 1117 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, yytext, yyleng);
 	zendlval->type = IS_STRING;
@@ -7775,20 +7779,20 @@
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	return T_STRING_VARNAME;
 }
-#line 7779 "Zend/zend_language_scanner.c"
+#line 7783 "Zend/zend_language_scanner.c"
 yy893:
 		YYDEBUG(893, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(894, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1122 "Zend/zend_language_scanner.l"
+#line 1126 "Zend/zend_language_scanner.l"
 		{
 	yyless(0);
 	yy_pop_state(TSRMLS_C);
 	yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
 	goto restart;
 }
-#line 7792 "Zend/zend_language_scanner.c"
+#line 7796 "Zend/zend_language_scanner.c"
 yy895:
 		YYDEBUG(895, *YYCURSOR);
 		++YYCURSOR;
@@ -8250,7 +8254,7 @@
 		++YYCURSOR;
 		YYDEBUG(933, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1860 "Zend/zend_language_scanner.l"
+#line 1864 "Zend/zend_language_scanner.l"
 		{
 	char *end = yytext + yyleng - 1;
 
@@ -8293,7 +8297,7 @@
 		yymore();
 	}
 }
-#line 8297 "Zend/zend_language_scanner.c"
+#line 8301 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_ONE_LINE_COMMENT:
@@ -8350,11 +8354,11 @@
 yy937:
 		YYDEBUG(937, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1487 "Zend/zend_language_scanner.l"
+#line 1491 "Zend/zend_language_scanner.l"
 		{
 	yymore();
 }
-#line 8358 "Zend/zend_language_scanner.c"
+#line 8362 "Zend/zend_language_scanner.c"
 yy938:
 		YYDEBUG(938, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -8377,7 +8381,7 @@
 yy942:
 		YYDEBUG(942, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1491 "Zend/zend_language_scanner.l"
+#line 1495 "Zend/zend_language_scanner.l"
 		{
 	switch (yytext[yyleng-1]) {
 		case '?': case '%': case '>':
@@ -8395,7 +8399,7 @@
 			return T_COMMENT;
 	}
 }
-#line 8399 "Zend/zend_language_scanner.c"
+#line 8403 "Zend/zend_language_scanner.c"
 yy943:
 		YYDEBUG(943, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -8408,7 +8412,7 @@
 		++YYCURSOR;
 		YYDEBUG(946, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1509 "Zend/zend_language_scanner.l"
+#line 1513 "Zend/zend_language_scanner.l"
 		{
 	zendlval->value.str.val = yytext; /* no copying - intentional */
 	zendlval->value.str.len = yyleng;
@@ -8417,7 +8421,7 @@
 	CG(zend_lineno)++;
 	return T_COMMENT;
 }
-#line 8421 "Zend/zend_language_scanner.c"
+#line 8425 "Zend/zend_language_scanner.c"
 yy947:
 		YYDEBUG(947, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -8427,7 +8431,7 @@
 		++YYCURSOR;
 		YYDEBUG(949, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1518 "Zend/zend_language_scanner.l"
+#line 1522 "Zend/zend_language_scanner.l"
 		{
     if (CG(asp_tags) || yytext[yyleng-2] != '%') { /* asp comment? */
 		zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -8440,7 +8444,7 @@
 		yymore();
 	}
 }
-#line 8444 "Zend/zend_language_scanner.c"
+#line 8448 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_START_HEREDOC:
@@ -8497,13 +8501,13 @@
 yy953:
 		YYDEBUG(953, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1674 "Zend/zend_language_scanner.l"
+#line 1678 "Zend/zend_language_scanner.l"
 		{
 	yyless(0);
 	BEGIN(ST_HEREDOC);
 	goto restart;
 }
-#line 8507 "Zend/zend_language_scanner.c"
+#line 8511 "Zend/zend_language_scanner.c"
 yy954:
 		YYDEBUG(954, *YYCURSOR);
 		yyaccept = 0;
@@ -8548,7 +8552,7 @@
 		++YYCURSOR;
 		YYDEBUG(960, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1680 "Zend/zend_language_scanner.l"
+#line 1684 "Zend/zend_language_scanner.l"
 		{
 	int label_len = yyleng - 1;
 
@@ -8570,7 +8574,7 @@
 		yymore();
 	}
 }
-#line 8574 "Zend/zend_language_scanner.c"
+#line 8578 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_START_NOWDOC:
@@ -8627,13 +8631,13 @@
 yy964:
 		YYDEBUG(964, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1834 "Zend/zend_language_scanner.l"
+#line 1838 "Zend/zend_language_scanner.l"
 		{
 	yyless(0);
 	BEGIN(ST_NOWDOC);
 	goto restart;
 }
-#line 8637 "Zend/zend_language_scanner.c"
+#line 8641 "Zend/zend_language_scanner.c"
 yy965:
 		YYDEBUG(965, *YYCURSOR);
 		yyaccept = 0;
@@ -8678,7 +8682,7 @@
 		++YYCURSOR;
 		YYDEBUG(971, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1840 "Zend/zend_language_scanner.l"
+#line 1844 "Zend/zend_language_scanner.l"
 		{
 	int label_len = yyleng - 1;
 
@@ -8698,7 +8702,7 @@
 		yymore();
 	}
 }
-#line 8702 "Zend/zend_language_scanner.c"
+#line 8706 "Zend/zend_language_scanner.c"
 	}
 /* *********************************** */
 yyc_ST_VAR_OFFSET:
@@ -8799,7 +8803,7 @@
 yy975:
 		YYDEBUG(975, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1172 "Zend/zend_language_scanner.l"
+#line 1176 "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);
@@ -8811,7 +8815,7 @@
 	}
 	return T_NUM_STRING;
 }
-#line 8815 "Zend/zend_language_scanner.c"
+#line 8819 "Zend/zend_language_scanner.c"
 yy976:
 		YYDEBUG(976, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -8831,23 +8835,23 @@
 yy978:
 		YYDEBUG(978, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1462 "Zend/zend_language_scanner.l"
+#line 1466 "Zend/zend_language_scanner.l"
 		{
 	/* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
 	return yytext[0];
 }
-#line 8840 "Zend/zend_language_scanner.c"
+#line 8844 "Zend/zend_language_scanner.c"
 yy979:
 		YYDEBUG(979, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(980, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1457 "Zend/zend_language_scanner.l"
+#line 1461 "Zend/zend_language_scanner.l"
 		{
 	yy_pop_state(TSRMLS_C);
 	return ']';
 }
-#line 8851 "Zend/zend_language_scanner.c"
+#line 8855 "Zend/zend_language_scanner.c"
 yy981:
 		YYDEBUG(981, *YYCURSOR);
 		yych = *++YYCURSOR;
@@ -8857,7 +8861,7 @@
 		++YYCURSOR;
 		YYDEBUG(983, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1467 "Zend/zend_language_scanner.l"
+#line 1471 "Zend/zend_language_scanner.l"
 		{
 	/* Invalid rule to return a more explicit parse error with proper line number */
 	yyless(0);
@@ -8865,7 +8869,7 @@
 	ZVAL_EMPTY_STRING(zendlval); /* Empty since it won't be used */
 	return T_ENCAPSED_AND_WHITESPACE;
 }
-#line 8869 "Zend/zend_language_scanner.c"
+#line 8873 "Zend/zend_language_scanner.c"
 yy984:
 		YYDEBUG(984, *YYCURSOR);
 		++YYCURSOR;
@@ -8874,24 +8878,24 @@
 yy985:
 		YYDEBUG(985, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1475 "Zend/zend_language_scanner.l"
+#line 1479 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, yytext, yyleng);
 	zendlval->type = IS_STRING;
 	return T_STRING;
 }
-#line 8884 "Zend/zend_language_scanner.c"
+#line 8888 "Zend/zend_language_scanner.c"
 yy986:
 		YYDEBUG(986, *YYCURSOR);
 		++YYCURSOR;
 		YYDEBUG(987, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1926 "Zend/zend_language_scanner.l"
+#line 1930 "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 8895 "Zend/zend_language_scanner.c"
+#line 8899 "Zend/zend_language_scanner.c"
 yy988:
 		YYDEBUG(988, *YYCURSOR);
 		++YYCURSOR;
@@ -8927,13 +8931,13 @@
 yy992:
 		YYDEBUG(992, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1451 "Zend/zend_language_scanner.l"
+#line 1455 "Zend/zend_language_scanner.l"
 		{
 	zend_copy_value(zendlval, (yytext+1), (yyleng-1));
 	zendlval->type = IS_STRING;
 	return T_VARIABLE;
 }
-#line 8937 "Zend/zend_language_scanner.c"
+#line 8941 "Zend/zend_language_scanner.c"
 yy993:
 		YYDEBUG(993, *YYCURSOR);
 		++YYCURSOR;
@@ -8965,14 +8969,14 @@
 yy999:
 		YYDEBUG(999, *YYCURSOR);
 		yyleng = YYCURSOR - SCNG(yy_text);
-#line 1184 "Zend/zend_language_scanner.l"
+#line 1188 "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 8976 "Zend/zend_language_scanner.c"
+#line 8980 "Zend/zend_language_scanner.c"
 yy1000:
 		YYDEBUG(1000, *YYCURSOR);
 		++YYCURSOR;
@@ -8985,6 +8989,6 @@
 		goto yy999;
 	}
 }
-#line 1931 "Zend/zend_language_scanner.l"
+#line 1935 "Zend/zend_language_scanner.l"
 
 }
http://cvs.php.net/viewvc.cgi/ZendEngine2/zend_language_scanner.l?r1=1.131.2.11.2.13.2.16&r2=1.131.2.11.2.13.2.17&diff_format=u
Index: ZendEngine2/zend_language_scanner.l
diff -u ZendEngine2/zend_language_scanner.l:1.131.2.11.2.13.2.16 ZendEngine2/zend_language_scanner.l:1.131.2.11.2.13.2.17
--- ZendEngine2/zend_language_scanner.l:1.131.2.11.2.13.2.16	Fri May  9 10:27:51 2008
+++ ZendEngine2/zend_language_scanner.l	Sat May 10 09:17:29 2008
@@ -21,7 +21,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_language_scanner.l,v 1.131.2.11.2.13.2.16 2008/05/09 10:27:51 mattwil Exp $ */
+/* $Id: zend_language_scanner.l,v 1.131.2.11.2.13.2.17 2008/05/10 09:17:29 mattwil Exp $ */
 
 #if 0
 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
@@ -498,6 +498,10 @@
 	while (s<end) {
 		if (*s=='\\') {
 			s++;
+			if (s >= end) {
+				*t++ = '\\';
+				break;
+			}
 
 			switch(*s) {
 				case 'n':
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.