diff options
author | Nuno Lopes <nlopess@php.net> | 2008-04-04 15:01:23 +0000 |
---|---|---|
committer | Nuno Lopes <nlopess@php.net> | 2008-04-04 15:01:23 +0000 |
commit | bfcdbbcd33a3011aa9bc681433017999a2ce5fe7 (patch) | |
tree | 3d9084f147d7d52de6a1c2cc4358df8c8baea48b | |
parent | c3474b91163118f69d24d2859d7c3ff07460e992 (diff) | |
download | php-git-bfcdbbcd33a3011aa9bc681433017999a2ce5fe7.tar.gz |
add sanity checks for ZEND_MMAP_AHEAD and reduce the value from 32 to 16 (lowest safe value)
-rw-r--r-- | Zend/zend_ini_scanner.c | 245 | ||||
-rw-r--r-- | Zend/zend_ini_scanner.l | 19 | ||||
-rw-r--r-- | Zend/zend_ini_scanner_defs.h | 2 | ||||
-rw-r--r-- | Zend/zend_language_scanner.c | 765 | ||||
-rw-r--r-- | Zend/zend_language_scanner.l | 11 | ||||
-rw-r--r-- | Zend/zend_language_scanner_defs.h | 2 | ||||
-rw-r--r-- | Zend/zend_stream.h | 2 |
7 files changed, 537 insertions, 509 deletions
diff --git a/Zend/zend_ini_scanner.c b/Zend/zend_ini_scanner.c index da29b2ebb0..54bda10ba0 100644 --- a/Zend/zend_ini_scanner.c +++ b/Zend/zend_ini_scanner.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.4.dev on Sat Mar 22 18:41:39 2008 */ +/* Generated by re2c 0.13.4.dev on Fri Apr 4 15:52:51 2008 */ #line 1 "Zend/zend_ini_scanner.l" /* +----------------------------------------------------------------------+ @@ -24,6 +24,11 @@ /* $Id$ */ +#include <errno.h> +#include "zend.h" +#include "zend_globals.h" +#include <zend_ini_parser.h> +#include "zend_ini_scanner.h" #if 0 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c) @@ -52,6 +57,14 @@ #define yyless(x) YYCURSOR = yytext + x /* #define yymore() goto yymore_restart */ +/* perform sanity check. If this message is triggered you should + increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */ +#define YYMAXFILL 6 +#if ZEND_MMAP_AHEAD < YYMAXFILL +# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL +#endif + + /* How it works (for the core ini directives): * =========================================== * @@ -82,12 +95,6 @@ * */ -#include <errno.h> -#include "zend.h" -#include "zend_globals.h" -#include <zend_ini_parser.h> -#include "zend_ini_scanner.h" - /* Globals Macros */ #define SCNG INI_SCNG #ifdef ZTS @@ -296,7 +303,7 @@ restart: } -#line 300 "Zend/zend_ini_scanner.c" +#line 307 "Zend/zend_ini_scanner.c" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -473,11 +480,11 @@ yy2: ++YYCURSOR; YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 481 "Zend/zend_ini_scanner.c" +#line 488 "Zend/zend_ini_scanner.c" yy4: YYDEBUG(4, *YYCURSOR); yyaccept = 0; @@ -486,24 +493,24 @@ yy4: yy5: YYDEBUG(5, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 466 "Zend/zend_ini_scanner.l" +#line 473 "Zend/zend_ini_scanner.l" { /* eat whitespace */ goto restart; } -#line 495 "Zend/zend_ini_scanner.c" +#line 502 "Zend/zend_ini_scanner.c" yy6: YYDEBUG(6, *YYCURSOR); ++YYCURSOR; yy7: YYDEBUG(7, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 471 "Zend/zend_ini_scanner.l" +#line 478 "Zend/zend_ini_scanner.l" { SCNG(lineno)++; return END_OF_LINE; } -#line 507 "Zend/zend_ini_scanner.c" +#line 514 "Zend/zend_ini_scanner.c" yy8: YYDEBUG(8, *YYCURSOR); yych = *++YYCURSOR; @@ -514,11 +521,11 @@ yy9: ++YYCURSOR; YYDEBUG(10, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 425 "Zend/zend_ini_scanner.l" +#line 432 "Zend/zend_ini_scanner.l" { /* Disallow these chars outside option values */ return yytext[0]; } -#line 522 "Zend/zend_ini_scanner.c" +#line 529 "Zend/zend_ini_scanner.c" yy11: YYDEBUG(11, *YYCURSOR); ++YYCURSOR; @@ -527,11 +534,11 @@ yy11: yy12: YYDEBUG(12, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 384 "Zend/zend_ini_scanner.l" +#line 391 "Zend/zend_ini_scanner.l" { /* Get option name */ RETURN_TOKEN(TC_LABEL, yytext, yyleng); } -#line 535 "Zend/zend_ini_scanner.c" +#line 542 "Zend/zend_ini_scanner.c" yy13: YYDEBUG(13, *YYCURSOR); yyaccept = 1; @@ -545,7 +552,7 @@ yy14: yy15: YYDEBUG(15, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 388 "Zend/zend_ini_scanner.l" +#line 395 "Zend/zend_ini_scanner.l" { /* Start option value */ if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) { yy_push_state(ST_RAW TSRMLS_CC); @@ -554,7 +561,7 @@ yy15: } return '='; } -#line 558 "Zend/zend_ini_scanner.c" +#line 565 "Zend/zend_ini_scanner.c" yy16: YYDEBUG(16, *YYCURSOR); yych = *++YYCURSOR; @@ -610,7 +617,7 @@ yy21: ++YYCURSOR; YYDEBUG(22, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 322 "Zend/zend_ini_scanner.l" +#line 329 "Zend/zend_ini_scanner.l" { /* Section start */ /* Enter section data lookup state */ if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) { @@ -620,7 +627,7 @@ yy21: } return TC_SECTION; } -#line 624 "Zend/zend_ini_scanner.c" +#line 631 "Zend/zend_ini_scanner.c" yy23: YYDEBUG(23, *YYCURSOR); ++YYCURSOR; @@ -650,7 +657,7 @@ yy26: } YYDEBUG(28, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 347 "Zend/zend_ini_scanner.l" +#line 354 "Zend/zend_ini_scanner.l" { /* Start of option with offset */ /* Eat trailing whitespace and [ */ EAT_TRAILING_WHITESPACE_EX('['); @@ -660,7 +667,7 @@ yy26: RETURN_TOKEN(TC_OFFSET, yytext, yyleng); } -#line 664 "Zend/zend_ini_scanner.c" +#line 671 "Zend/zend_ini_scanner.c" yy29: YYDEBUG(29, *YYCURSOR); ++YYCURSOR; @@ -672,11 +679,11 @@ yy29: yy30: YYDEBUG(30, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 376 "Zend/zend_ini_scanner.l" +#line 383 "Zend/zend_ini_scanner.l" { /* TRUE value (when used outside option value/offset this causes parse error!) */ RETURN_TOKEN(BOOL_TRUE, "1", 1); } -#line 680 "Zend/zend_ini_scanner.c" +#line 687 "Zend/zend_ini_scanner.c" yy31: YYDEBUG(31, *YYCURSOR); ++YYCURSOR; @@ -714,11 +721,11 @@ yy36: yy37: YYDEBUG(37, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 380 "Zend/zend_ini_scanner.l" +#line 387 "Zend/zend_ini_scanner.l" { /* FALSE value (when used outside option value/offset this causes parse error!)*/ RETURN_TOKEN(BOOL_FALSE, "", 0); } -#line 722 "Zend/zend_ini_scanner.c" +#line 729 "Zend/zend_ini_scanner.c" yy38: YYDEBUG(38, *YYCURSOR); ++YYCURSOR; @@ -813,13 +820,13 @@ yy51: yy52: YYDEBUG(52, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 476 "Zend/zend_ini_scanner.l" +#line 483 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; return END_OF_LINE; } -#line 823 "Zend/zend_ini_scanner.c" +#line 830 "Zend/zend_ini_scanner.c" yy53: YYDEBUG(53, *YYCURSOR); yych = *++YYCURSOR; @@ -913,12 +920,12 @@ yyc_ST_DOUBLE_QUOTES: yy61: YYDEBUG(61, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 452 "Zend/zend_ini_scanner.l" +#line 459 "Zend/zend_ini_scanner.l" { /* Escape double quoted string contents */ zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC); return TC_QUOTED_STRING; } -#line 922 "Zend/zend_ini_scanner.c" +#line 929 "Zend/zend_ini_scanner.c" yy62: YYDEBUG(62, *YYCURSOR); ++YYCURSOR; @@ -927,12 +934,12 @@ yy62: yy63: YYDEBUG(63, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 457 "Zend/zend_ini_scanner.l" +#line 464 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string ends */ yy_pop_state(TSRMLS_C); return '"'; } -#line 936 "Zend/zend_ini_scanner.c" +#line 943 "Zend/zend_ini_scanner.c" yy64: YYDEBUG(64, *YYCURSOR); ++YYCURSOR; @@ -956,11 +963,11 @@ yy64: yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 964 "Zend/zend_ini_scanner.c" +#line 971 "Zend/zend_ini_scanner.c" yy66: YYDEBUG(66, *YYCURSOR); yych = *++YYCURSOR; @@ -1054,12 +1061,12 @@ yy78: ++YYCURSOR; YYDEBUG(79, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 362 "Zend/zend_ini_scanner.l" +#line 369 "Zend/zend_ini_scanner.l" { /* Variable start */ yy_push_state(ST_VARNAME TSRMLS_CC); return TC_DOLLAR_CURLY; } -#line 1063 "Zend/zend_ini_scanner.c" +#line 1070 "Zend/zend_ini_scanner.c" yy80: YYDEBUG(80, *YYCURSOR); ++YYCURSOR; @@ -1158,11 +1165,11 @@ yy84: yy85: YYDEBUG(85, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 443 "Zend/zend_ini_scanner.l" +#line 450 "Zend/zend_ini_scanner.l" { /* Get rest as section/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } -#line 1166 "Zend/zend_ini_scanner.c" +#line 1173 "Zend/zend_ini_scanner.c" yy86: YYDEBUG(86, *YYCURSOR); yyaccept = 0; @@ -1179,23 +1186,23 @@ yy87: yy88: YYDEBUG(88, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 1187 "Zend/zend_ini_scanner.c" +#line 1194 "Zend/zend_ini_scanner.c" yy89: YYDEBUG(89, *YYCURSOR); ++YYCURSOR; yy90: YYDEBUG(90, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 447 "Zend/zend_ini_scanner.l" +#line 454 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); return '"'; } -#line 1199 "Zend/zend_ini_scanner.c" +#line 1206 "Zend/zend_ini_scanner.c" yy91: YYDEBUG(91, *YYCURSOR); yych = *++YYCURSOR; @@ -1268,11 +1275,11 @@ yy95: yy96: YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 421 "Zend/zend_ini_scanner.l" +#line 428 "Zend/zend_ini_scanner.l" { /* Get number option value as string */ RETURN_TOKEN(TC_NUMBER, yytext, yyleng); } -#line 1276 "Zend/zend_ini_scanner.c" +#line 1283 "Zend/zend_ini_scanner.c" yy97: YYDEBUG(97, *YYCURSOR); yyaccept = 3; @@ -1298,11 +1305,11 @@ yy97: yy98: YYDEBUG(98, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 417 "Zend/zend_ini_scanner.l" +#line 424 "Zend/zend_ini_scanner.l" { /* Get constant option value */ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng); } -#line 1306 "Zend/zend_ini_scanner.c" +#line 1313 "Zend/zend_ini_scanner.c" yy99: YYDEBUG(99, *YYCURSOR); yych = *++YYCURSOR; @@ -1313,12 +1320,12 @@ yy100: yy101: YYDEBUG(101, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 357 "Zend/zend_ini_scanner.l" +#line 364 "Zend/zend_ini_scanner.l" { /* End of section or an option offset */ BEGIN(INITIAL); return ']'; } -#line 1322 "Zend/zend_ini_scanner.c" +#line 1329 "Zend/zend_ini_scanner.c" yy102: YYDEBUG(102, *YYCURSOR); yyaccept = 0; @@ -1617,7 +1624,7 @@ yy123: ++YYCURSOR; YYDEBUG(126, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 332 "Zend/zend_ini_scanner.l" +#line 339 "Zend/zend_ini_scanner.l" { /* Raw string */ /* Eat leading and trailing single quotes */ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') { @@ -1626,18 +1633,18 @@ yy123: } RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 1630 "Zend/zend_ini_scanner.c" +#line 1637 "Zend/zend_ini_scanner.c" yy127: YYDEBUG(127, *YYCURSOR); ++YYCURSOR; YYDEBUG(128, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 362 "Zend/zend_ini_scanner.l" +#line 369 "Zend/zend_ini_scanner.l" { /* Variable start */ yy_push_state(ST_VARNAME TSRMLS_CC); return TC_DOLLAR_CURLY; } -#line 1641 "Zend/zend_ini_scanner.c" +#line 1648 "Zend/zend_ini_scanner.c" yy129: YYDEBUG(129, *YYCURSOR); yyaccept = 0; @@ -1744,7 +1751,7 @@ yy135: yy136: YYDEBUG(136, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 397 "Zend/zend_ini_scanner.l" +#line 404 "Zend/zend_ini_scanner.l" { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */ /* Eat leading and trailing double quotes */ if (yytext[0] == '"' && yytext[yyleng - 1] == '"') { @@ -1754,7 +1761,7 @@ yy136: } RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 1758 "Zend/zend_ini_scanner.c" +#line 1765 "Zend/zend_ini_scanner.c" yy137: YYDEBUG(137, *YYCURSOR); yyaccept = 0; @@ -1776,13 +1783,13 @@ yy138: yy139: YYDEBUG(139, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 411 "Zend/zend_ini_scanner.l" +#line 418 "Zend/zend_ini_scanner.l" { /* End of option value */ BEGIN(INITIAL); SCNG(lineno)++; return END_OF_LINE; } -#line 1786 "Zend/zend_ini_scanner.c" +#line 1793 "Zend/zend_ini_scanner.c" yy140: YYDEBUG(140, *YYCURSOR); yych = *++YYCURSOR; @@ -1796,12 +1803,12 @@ yy141: yy142: YYDEBUG(142, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 482 "Zend/zend_ini_scanner.l" +#line 489 "Zend/zend_ini_scanner.l" { /* End of option value (if EOF is reached before EOL */ BEGIN(INITIAL); return 0; } -#line 1805 "Zend/zend_ini_scanner.c" +#line 1812 "Zend/zend_ini_scanner.c" yy143: YYDEBUG(143, *YYCURSOR); yych = *++YYCURSOR; @@ -1823,13 +1830,13 @@ yy146: yy147: YYDEBUG(147, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 476 "Zend/zend_ini_scanner.l" +#line 483 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; return END_OF_LINE; } -#line 1833 "Zend/zend_ini_scanner.c" +#line 1840 "Zend/zend_ini_scanner.c" yy148: YYDEBUG(148, *YYCURSOR); yych = *++YYCURSOR; @@ -1931,21 +1938,21 @@ yyc_ST_SECTION_RAW: yy158: YYDEBUG(158, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 407 "Zend/zend_ini_scanner.l" +#line 414 "Zend/zend_ini_scanner.l" { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */ RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 1939 "Zend/zend_ini_scanner.c" +#line 1946 "Zend/zend_ini_scanner.c" yy159: YYDEBUG(159, *YYCURSOR); ++YYCURSOR; YYDEBUG(160, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 1949 "Zend/zend_ini_scanner.c" +#line 1956 "Zend/zend_ini_scanner.c" yy161: YYDEBUG(161, *YYCURSOR); ++YYCURSOR; @@ -1954,13 +1961,13 @@ yy161: yy162: YYDEBUG(162, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 341 "Zend/zend_ini_scanner.l" +#line 348 "Zend/zend_ini_scanner.l" { /* End of section */ BEGIN(INITIAL); SCNG(lineno)++; return ']'; } -#line 1964 "Zend/zend_ini_scanner.c" +#line 1971 "Zend/zend_ini_scanner.c" yy163: YYDEBUG(163, *YYCURSOR); ++YYCURSOR; @@ -2081,11 +2088,11 @@ yy171: yy172: YYDEBUG(172, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 443 "Zend/zend_ini_scanner.l" +#line 450 "Zend/zend_ini_scanner.l" { /* Get rest as section/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } -#line 2089 "Zend/zend_ini_scanner.c" +#line 2096 "Zend/zend_ini_scanner.c" yy173: YYDEBUG(173, *YYCURSOR); yyaccept = 0; @@ -2104,23 +2111,23 @@ yy174: yy175: YYDEBUG(175, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 2112 "Zend/zend_ini_scanner.c" +#line 2119 "Zend/zend_ini_scanner.c" yy176: YYDEBUG(176, *YYCURSOR); ++YYCURSOR; yy177: YYDEBUG(177, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 447 "Zend/zend_ini_scanner.l" +#line 454 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); return '"'; } -#line 2124 "Zend/zend_ini_scanner.c" +#line 2131 "Zend/zend_ini_scanner.c" yy178: YYDEBUG(178, *YYCURSOR); yych = *++YYCURSOR; @@ -2193,11 +2200,11 @@ yy182: yy183: YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 421 "Zend/zend_ini_scanner.l" +#line 428 "Zend/zend_ini_scanner.l" { /* Get number option value as string */ RETURN_TOKEN(TC_NUMBER, yytext, yyleng); } -#line 2201 "Zend/zend_ini_scanner.c" +#line 2208 "Zend/zend_ini_scanner.c" yy184: YYDEBUG(184, *YYCURSOR); yyaccept = 3; @@ -2223,11 +2230,11 @@ yy184: yy185: YYDEBUG(185, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 417 "Zend/zend_ini_scanner.l" +#line 424 "Zend/zend_ini_scanner.l" { /* Get constant option value */ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng); } -#line 2231 "Zend/zend_ini_scanner.c" +#line 2238 "Zend/zend_ini_scanner.c" yy186: YYDEBUG(186, *YYCURSOR); yych = *++YYCURSOR; @@ -2240,13 +2247,13 @@ yy187: yy188: YYDEBUG(188, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 341 "Zend/zend_ini_scanner.l" +#line 348 "Zend/zend_ini_scanner.l" { /* End of section */ BEGIN(INITIAL); SCNG(lineno)++; return ']'; } -#line 2250 "Zend/zend_ini_scanner.c" +#line 2257 "Zend/zend_ini_scanner.c" yy189: YYDEBUG(189, *YYCURSOR); ++YYCURSOR; @@ -2567,7 +2574,7 @@ yy214: ++YYCURSOR; YYDEBUG(217, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 332 "Zend/zend_ini_scanner.l" +#line 339 "Zend/zend_ini_scanner.l" { /* Raw string */ /* Eat leading and trailing single quotes */ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') { @@ -2576,18 +2583,18 @@ yy214: } RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 2580 "Zend/zend_ini_scanner.c" +#line 2587 "Zend/zend_ini_scanner.c" yy218: YYDEBUG(218, *YYCURSOR); ++YYCURSOR; YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 362 "Zend/zend_ini_scanner.l" +#line 369 "Zend/zend_ini_scanner.l" { /* Variable start */ yy_push_state(ST_VARNAME TSRMLS_CC); return TC_DOLLAR_CURLY; } -#line 2591 "Zend/zend_ini_scanner.c" +#line 2598 "Zend/zend_ini_scanner.c" yy220: YYDEBUG(220, *YYCURSOR); yyaccept = 0; @@ -2766,12 +2773,12 @@ yy225: yy226: YYDEBUG(226, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 482 "Zend/zend_ini_scanner.l" +#line 489 "Zend/zend_ini_scanner.l" { /* End of option value (if EOF is reached before EOL */ BEGIN(INITIAL); return 0; } -#line 2775 "Zend/zend_ini_scanner.c" +#line 2782 "Zend/zend_ini_scanner.c" yy227: YYDEBUG(227, *YYCURSOR); yyaccept = 0; @@ -2780,11 +2787,11 @@ yy227: yy228: YYDEBUG(228, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 439 "Zend/zend_ini_scanner.l" +#line 446 "Zend/zend_ini_scanner.l" { /* Get everything else as option/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } -#line 2788 "Zend/zend_ini_scanner.c" +#line 2795 "Zend/zend_ini_scanner.c" yy229: YYDEBUG(229, *YYCURSOR); yyaccept = 1; @@ -2793,24 +2800,24 @@ yy229: yy230: YYDEBUG(230, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 462 "Zend/zend_ini_scanner.l" +#line 469 "Zend/zend_ini_scanner.l" { RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng); } -#line 2801 "Zend/zend_ini_scanner.c" +#line 2808 "Zend/zend_ini_scanner.c" yy231: YYDEBUG(231, *YYCURSOR); ++YYCURSOR; yy232: YYDEBUG(232, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 411 "Zend/zend_ini_scanner.l" +#line 418 "Zend/zend_ini_scanner.l" { /* End of option value */ BEGIN(INITIAL); SCNG(lineno)++; return END_OF_LINE; } -#line 2814 "Zend/zend_ini_scanner.c" +#line 2821 "Zend/zend_ini_scanner.c" yy233: YYDEBUG(233, *YYCURSOR); yych = *++YYCURSOR; @@ -2824,23 +2831,23 @@ yy234: yy235: YYDEBUG(235, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 429 "Zend/zend_ini_scanner.l" +#line 436 "Zend/zend_ini_scanner.l" { /* Boolean operators */ return yytext[0]; } -#line 2832 "Zend/zend_ini_scanner.c" +#line 2839 "Zend/zend_ini_scanner.c" yy236: YYDEBUG(236, *YYCURSOR); ++YYCURSOR; yy237: YYDEBUG(237, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 447 "Zend/zend_ini_scanner.l" +#line 454 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); return '"'; } -#line 2844 "Zend/zend_ini_scanner.c" +#line 2851 "Zend/zend_ini_scanner.c" yy238: YYDEBUG(238, *YYCURSOR); yych = *++YYCURSOR; @@ -2927,11 +2934,11 @@ yy242: yy243: YYDEBUG(243, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 421 "Zend/zend_ini_scanner.l" +#line 428 "Zend/zend_ini_scanner.l" { /* Get number option value as string */ RETURN_TOKEN(TC_NUMBER, yytext, yyleng); } -#line 2935 "Zend/zend_ini_scanner.c" +#line 2942 "Zend/zend_ini_scanner.c" yy244: YYDEBUG(244, *YYCURSOR); yyaccept = 2; @@ -2942,13 +2949,13 @@ yy245: ++YYCURSOR; YYDEBUG(246, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 433 "Zend/zend_ini_scanner.l" +#line 440 "Zend/zend_ini_scanner.l" { /* Make = used in option value to trigger error */ yyless(0); BEGIN(INITIAL); return END_OF_LINE; } -#line 2952 "Zend/zend_ini_scanner.c" +#line 2959 "Zend/zend_ini_scanner.c" yy247: YYDEBUG(247, *YYCURSOR); yyaccept = 4; @@ -2984,11 +2991,11 @@ yy247: yy248: YYDEBUG(248, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 417 "Zend/zend_ini_scanner.l" +#line 424 "Zend/zend_ini_scanner.l" { /* Get constant option value */ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng); } -#line 2992 "Zend/zend_ini_scanner.c" +#line 2999 "Zend/zend_ini_scanner.c" yy249: YYDEBUG(249, *YYCURSOR); yyaccept = 4; @@ -3489,11 +3496,11 @@ yy264: yy265: YYDEBUG(265, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 376 "Zend/zend_ini_scanner.l" +#line 383 "Zend/zend_ini_scanner.l" { /* TRUE value (when used outside option value/offset this causes parse error!) */ RETURN_TOKEN(BOOL_TRUE, "1", 1); } -#line 3497 "Zend/zend_ini_scanner.c" +#line 3504 "Zend/zend_ini_scanner.c" yy266: YYDEBUG(266, *YYCURSOR); ++YYCURSOR; @@ -3693,11 +3700,11 @@ yy271: yy272: YYDEBUG(272, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 380 "Zend/zend_ini_scanner.l" +#line 387 "Zend/zend_ini_scanner.l" { /* FALSE value (when used outside option value/offset this causes parse error!)*/ RETURN_TOKEN(BOOL_FALSE, "", 0); } -#line 3701 "Zend/zend_ini_scanner.c" +#line 3708 "Zend/zend_ini_scanner.c" yy273: YYDEBUG(273, *YYCURSOR); ++YYCURSOR; @@ -4073,13 +4080,13 @@ yy284: yy285: YYDEBUG(285, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 476 "Zend/zend_ini_scanner.l" +#line 483 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; return END_OF_LINE; } -#line 4083 "Zend/zend_ini_scanner.c" +#line 4090 "Zend/zend_ini_scanner.c" yy286: YYDEBUG(286, *YYCURSOR); yych = *++YYCURSOR; @@ -4291,7 +4298,7 @@ yy295: ++YYCURSOR; YYDEBUG(298, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 332 "Zend/zend_ini_scanner.l" +#line 339 "Zend/zend_ini_scanner.l" { /* Raw string */ /* Eat leading and trailing single quotes */ if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') { @@ -4300,18 +4307,18 @@ yy295: } RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 4304 "Zend/zend_ini_scanner.c" +#line 4311 "Zend/zend_ini_scanner.c" yy299: YYDEBUG(299, *YYCURSOR); ++YYCURSOR; YYDEBUG(300, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 362 "Zend/zend_ini_scanner.l" +#line 369 "Zend/zend_ini_scanner.l" { /* Variable start */ yy_push_state(ST_VARNAME TSRMLS_CC); return TC_DOLLAR_CURLY; } -#line 4315 "Zend/zend_ini_scanner.c" +#line 4322 "Zend/zend_ini_scanner.c" yy301: YYDEBUG(301, *YYCURSOR); ++YYCURSOR; @@ -4417,11 +4424,11 @@ yy310: ++YYCURSOR; YYDEBUG(311, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 487 "Zend/zend_ini_scanner.l" +#line 494 "Zend/zend_ini_scanner.l" { return 0; } -#line 4425 "Zend/zend_ini_scanner.c" +#line 4432 "Zend/zend_ini_scanner.c" yy312: YYDEBUG(312, *YYCURSOR); ++YYCURSOR; @@ -4430,22 +4437,22 @@ yy312: yy313: YYDEBUG(313, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 367 "Zend/zend_ini_scanner.l" +#line 374 "Zend/zend_ini_scanner.l" { /* Variable name */ RETURN_TOKEN(TC_VARNAME, yytext, yyleng); } -#line 4438 "Zend/zend_ini_scanner.c" +#line 4445 "Zend/zend_ini_scanner.c" yy314: YYDEBUG(314, *YYCURSOR); ++YYCURSOR; YYDEBUG(315, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 371 "Zend/zend_ini_scanner.l" +#line 378 "Zend/zend_ini_scanner.l" { /* Variable end */ yy_pop_state(TSRMLS_C); return '}'; } -#line 4449 "Zend/zend_ini_scanner.c" +#line 4456 "Zend/zend_ini_scanner.c" yy316: YYDEBUG(316, *YYCURSOR); ++YYCURSOR; @@ -4459,6 +4466,6 @@ yy317: goto yy313; } } -#line 491 "Zend/zend_ini_scanner.l" +#line 498 "Zend/zend_ini_scanner.l" } diff --git a/Zend/zend_ini_scanner.l b/Zend/zend_ini_scanner.l index 0653127af3..b30b24f83a 100644 --- a/Zend/zend_ini_scanner.l +++ b/Zend/zend_ini_scanner.l @@ -22,6 +22,11 @@ /* $Id$ */ +#include <errno.h> +#include "zend.h" +#include "zend_globals.h" +#include <zend_ini_parser.h> +#include "zend_ini_scanner.h" #if 0 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c) @@ -50,6 +55,14 @@ #define yyless(x) YYCURSOR = yytext + x /* #define yymore() goto yymore_restart */ +/* perform sanity check. If this message is triggered you should + increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */ +/*!max:re2c */ +#if ZEND_MMAP_AHEAD < YYMAXFILL +# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL +#endif + + /* How it works (for the core ini directives): * =========================================== * @@ -80,12 +93,6 @@ * */ -#include <errno.h> -#include "zend.h" -#include "zend_globals.h" -#include <zend_ini_parser.h> -#include "zend_ini_scanner.h" - /* Globals Macros */ #define SCNG INI_SCNG #ifdef ZTS diff --git a/Zend/zend_ini_scanner_defs.h b/Zend/zend_ini_scanner_defs.h index 4682d08e3d..3ab36cfa26 100644 --- a/Zend/zend_ini_scanner_defs.h +++ b/Zend/zend_ini_scanner_defs.h @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.4.dev on Sat Mar 22 18:41:39 2008 */ +/* Generated by re2c 0.13.4.dev on Fri Apr 4 15:52:51 2008 */ #line 3 "Zend/zend_ini_scanner_defs.h" enum YYCONDTYPE { diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c index 859ddb42fd..315f8e5ab7 100644 --- a/Zend/zend_language_scanner.c +++ b/Zend/zend_language_scanner.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.4.dev on Wed Mar 26 23:08:45 2008 */ +/* Generated by re2c 0.13.4.dev on Fri Apr 4 15:52:47 2008 */ #line 1 "Zend/zend_language_scanner.l" /* +----------------------------------------------------------------------+ @@ -68,6 +68,13 @@ #define yyless(x) YYCURSOR = yytext + x #define yymore() goto yymore_restart +/* perform sanity check. If this message is triggered you should + increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */ +#define YYMAXFILL 16 +#if ZEND_MMAP_AHEAD < YYMAXFILL +# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL +#endif + #ifdef HAVE_STDARG_H # include <stdarg.h> #endif @@ -358,9 +365,9 @@ zend_op_array *compile_filename(int type, zval *filename TSRMLS_DC) ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_DC) { /* enforce two trailing NULLs for flex... */ - STR_REALLOC(str->value.str.val, str->value.str.len+2); + str->value.str.val = safe_erealloc(str->value.str.val, 1, str->value.str.len, ZEND_MMAP_AHEAD); - str->value.str.val[str->value.str.len+1]=0; + memset(str->value.str.val + str->value.str.len, 0, ZEND_MMAP_AHEAD); SCNG(yy_in)=NULL; @@ -600,7 +607,7 @@ yymore_restart: } -#line 604 "Zend/zend_language_scanner.c" +#line 611 "Zend/zend_language_scanner.c" { YYCTYPE yych; unsigned int yyaccept = 0; @@ -724,7 +731,7 @@ yyc_INITIAL: yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1390 "Zend/zend_language_scanner.l" +#line 1397 "Zend/zend_language_scanner.l" { while (1) { @@ -755,7 +762,7 @@ inline_char_handler: HANDLE_NEWLINES(yytext, yyleng); return T_INLINE_HTML; } -#line 759 "Zend/zend_language_scanner.c" +#line 766 "Zend/zend_language_scanner.c" yy4: YYDEBUG(4, *YYCURSOR); yyaccept = 0; @@ -782,7 +789,7 @@ yy8: yy9: YYDEBUG(9, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1381 "Zend/zend_language_scanner.l" +#line 1388 "Zend/zend_language_scanner.l" { if ((YYCTYPE*)yytext == SCNG(yy_start)) { /* ignore first line when it's started with a # */ @@ -791,7 +798,7 @@ yy9: goto inline_char_handler; } } -#line 795 "Zend/zend_language_scanner.c" +#line 802 "Zend/zend_language_scanner.c" yy10: YYDEBUG(10, *YYCURSOR); yyaccept = 1; @@ -817,7 +824,7 @@ yy12: yy13: YYDEBUG(13, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1365 "Zend/zend_language_scanner.l" +#line 1372 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); if (CG(short_tags)) { @@ -833,14 +840,14 @@ yy13: return T_INLINE_HTML; } } -#line 837 "Zend/zend_language_scanner.c" +#line 844 "Zend/zend_language_scanner.c" yy14: YYDEBUG(14, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy50; YYDEBUG(15, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1339 "Zend/zend_language_scanner.l" +#line 1346 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -855,7 +862,7 @@ yy14: return T_INLINE_HTML; } } -#line 859 "Zend/zend_language_scanner.c" +#line 866 "Zend/zend_language_scanner.c" yy16: YYDEBUG(16, *YYCURSOR); yych = *++YYCURSOR; @@ -1045,7 +1052,7 @@ yy42: ++YYCURSOR; YYDEBUG(45, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1297 "Zend/zend_language_scanner.l" +#line 1304 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1054,7 +1061,7 @@ yy42: BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1058 "Zend/zend_language_scanner.c" +#line 1065 "Zend/zend_language_scanner.c" yy46: YYDEBUG(46, *YYCURSOR); yych = *++YYCURSOR; @@ -1081,7 +1088,7 @@ yy50: ++YYCURSOR; YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1307 "Zend/zend_language_scanner.l" +#line 1314 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1096,13 +1103,13 @@ yy50: return T_INLINE_HTML; } } -#line 1100 "Zend/zend_language_scanner.c" +#line 1107 "Zend/zend_language_scanner.c" yy52: YYDEBUG(52, *YYCURSOR); ++YYCURSOR; YYDEBUG(53, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1323 "Zend/zend_language_scanner.l" +#line 1330 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1117,7 +1124,7 @@ yy52: return T_INLINE_HTML; } } -#line 1121 "Zend/zend_language_scanner.c" +#line 1128 "Zend/zend_language_scanner.c" yy54: YYDEBUG(54, *YYCURSOR); yych = *++YYCURSOR; @@ -1144,7 +1151,7 @@ yy57: yy58: YYDEBUG(58, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1355 "Zend/zend_language_scanner.l" +#line 1362 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1153,7 +1160,7 @@ yy58: BEGIN(ST_IN_SCRIPTING); return T_OPEN_TAG; } -#line 1157 "Zend/zend_language_scanner.c" +#line 1164 "Zend/zend_language_scanner.c" yy59: YYDEBUG(59, *YYCURSOR); ++YYCURSOR; @@ -1257,12 +1264,12 @@ yy65: yy66: YYDEBUG(66, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1782 "Zend/zend_language_scanner.l" +#line 1789 "Zend/zend_language_scanner.l" { zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1266 "Zend/zend_language_scanner.c" +#line 1273 "Zend/zend_language_scanner.c" yy67: YYDEBUG(67, *YYCURSOR); ++YYCURSOR; @@ -1274,12 +1281,12 @@ yy68: ++YYCURSOR; YYDEBUG(69, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1914 "Zend/zend_language_scanner.l" +#line 1921 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; } -#line 1283 "Zend/zend_language_scanner.c" +#line 1290 "Zend/zend_language_scanner.c" yy70: YYDEBUG(70, *YYCURSOR); ++YYCURSOR; @@ -1363,13 +1370,13 @@ yy74: yy76: YYDEBUG(76, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1787 "Zend/zend_language_scanner.l" +#line 1794 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1373 "Zend/zend_language_scanner.c" +#line 1380 "Zend/zend_language_scanner.c" yy77: YYDEBUG(77, *YYCURSOR); yych = *++YYCURSOR; @@ -1393,14 +1400,14 @@ yy80: ++YYCURSOR; YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1755 "Zend/zend_language_scanner.l" +#line 1762 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1404 "Zend/zend_language_scanner.c" +#line 1411 "Zend/zend_language_scanner.c" yy82: YYDEBUG(82, *YYCURSOR); yyaccept = 2; @@ -1416,24 +1423,24 @@ yy82: yy84: YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1443 "Zend/zend_language_scanner.l" +#line 1450 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1426 "Zend/zend_language_scanner.c" +#line 1433 "Zend/zend_language_scanner.c" yy85: YYDEBUG(85, *YYCURSOR); ++YYCURSOR; YYDEBUG(86, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1089 "Zend/zend_language_scanner.l" +#line 1096 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1437 "Zend/zend_language_scanner.c" +#line 1444 "Zend/zend_language_scanner.c" yy87: YYDEBUG(87, *YYCURSOR); yych = *++YYCURSOR; @@ -1444,7 +1451,7 @@ yy88: ++YYCURSOR; YYDEBUG(89, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1435 "Zend/zend_language_scanner.l" +#line 1442 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1452,7 +1459,7 @@ yy88: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1456 "Zend/zend_language_scanner.c" +#line 1463 "Zend/zend_language_scanner.c" yy90: YYDEBUG(90, *YYCURSOR); yych = *++YYCURSOR; @@ -1470,7 +1477,7 @@ yy91: ++YYCURSOR; YYDEBUG(92, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1425 "Zend/zend_language_scanner.l" +#line 1432 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1478,7 +1485,7 @@ yy91: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1482 "Zend/zend_language_scanner.c" +#line 1489 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_COMMENT: @@ -1535,34 +1542,34 @@ yy95: } YYDEBUG(97, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1547 "Zend/zend_language_scanner.l" +#line 1554 "Zend/zend_language_scanner.l" { yymore(); } -#line 1543 "Zend/zend_language_scanner.c" +#line 1550 "Zend/zend_language_scanner.c" yy98: YYDEBUG(98, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '/') goto yy100; YYDEBUG(99, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1565 "Zend/zend_language_scanner.l" +#line 1572 "Zend/zend_language_scanner.l" { yymore(); } -#line 1554 "Zend/zend_language_scanner.c" +#line 1561 "Zend/zend_language_scanner.c" yy100: YYDEBUG(100, *YYCURSOR); ++YYCURSOR; YYDEBUG(101, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1559 "Zend/zend_language_scanner.l" +#line 1566 "Zend/zend_language_scanner.l" { HANDLE_NEWLINES(yytext, yyleng); BEGIN(ST_IN_SCRIPTING); return T_COMMENT; } -#line 1566 "Zend/zend_language_scanner.c" +#line 1573 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOC_COMMENT: @@ -1619,28 +1626,28 @@ yy104: } YYDEBUG(106, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1547 "Zend/zend_language_scanner.l" +#line 1554 "Zend/zend_language_scanner.l" { yymore(); } -#line 1627 "Zend/zend_language_scanner.c" +#line 1634 "Zend/zend_language_scanner.c" yy107: YYDEBUG(107, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '/') goto yy109; YYDEBUG(108, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1565 "Zend/zend_language_scanner.l" +#line 1572 "Zend/zend_language_scanner.l" { yymore(); } -#line 1638 "Zend/zend_language_scanner.c" +#line 1645 "Zend/zend_language_scanner.c" yy109: YYDEBUG(109, *YYCURSOR); ++YYCURSOR; YYDEBUG(110, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1551 "Zend/zend_language_scanner.l" +#line 1558 "Zend/zend_language_scanner.l" { CG(doc_comment) = estrndup(yytext, yyleng); CG(doc_comment_len) = yyleng; @@ -1648,7 +1655,7 @@ yy109: BEGIN(ST_IN_SCRIPTING); return T_DOC_COMMENT; } -#line 1652 "Zend/zend_language_scanner.c" +#line 1659 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_DOUBLE_QUOTES: @@ -1750,12 +1757,12 @@ yy116: yy117: YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1763 "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 1759 "Zend/zend_language_scanner.c" +#line 1766 "Zend/zend_language_scanner.c" yy118: YYDEBUG(118, *YYCURSOR); ++YYCURSOR; @@ -1767,12 +1774,12 @@ yy119: ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1908 "Zend/zend_language_scanner.l" +#line 1915 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; } -#line 1776 "Zend/zend_language_scanner.c" +#line 1783 "Zend/zend_language_scanner.c" yy121: YYDEBUG(121, *YYCURSOR); ++YYCURSOR; @@ -1859,14 +1866,14 @@ yy125: yy127: YYDEBUG(127, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1774 "Zend/zend_language_scanner.l" +#line 1781 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); if (yytext[yyleng-1] == '"') --yyleng; zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 1870 "Zend/zend_language_scanner.c" +#line 1877 "Zend/zend_language_scanner.c" yy128: YYDEBUG(128, *YYCURSOR); yych = *++YYCURSOR; @@ -1890,14 +1897,14 @@ yy131: ++YYCURSOR; YYDEBUG(132, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1755 "Zend/zend_language_scanner.l" +#line 1762 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 1901 "Zend/zend_language_scanner.c" +#line 1908 "Zend/zend_language_scanner.c" yy133: YYDEBUG(133, *YYCURSOR); yyaccept = 2; @@ -1913,24 +1920,24 @@ yy133: yy135: YYDEBUG(135, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1443 "Zend/zend_language_scanner.l" +#line 1450 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1923 "Zend/zend_language_scanner.c" +#line 1930 "Zend/zend_language_scanner.c" yy136: YYDEBUG(136, *YYCURSOR); ++YYCURSOR; YYDEBUG(137, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1089 "Zend/zend_language_scanner.l" +#line 1096 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 1934 "Zend/zend_language_scanner.c" +#line 1941 "Zend/zend_language_scanner.c" yy138: YYDEBUG(138, *YYCURSOR); yych = *++YYCURSOR; @@ -1941,7 +1948,7 @@ yy139: ++YYCURSOR; YYDEBUG(140, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1435 "Zend/zend_language_scanner.l" +#line 1442 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1949,7 +1956,7 @@ yy139: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1953 "Zend/zend_language_scanner.c" +#line 1960 "Zend/zend_language_scanner.c" yy141: YYDEBUG(141, *YYCURSOR); yych = *++YYCURSOR; @@ -1967,7 +1974,7 @@ yy142: ++YYCURSOR; YYDEBUG(143, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1425 "Zend/zend_language_scanner.l" +#line 1432 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1975,7 +1982,7 @@ yy142: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 1979 "Zend/zend_language_scanner.c" +#line 1986 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_END_HEREDOC: @@ -1986,7 +1993,7 @@ yyc_ST_END_HEREDOC: ++YYCURSOR; YYDEBUG(147, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1743 "Zend/zend_language_scanner.l" +#line 1750 "Zend/zend_language_scanner.l" { zendlval->value.str.val = CG(heredoc); zendlval->value.str.len = CG(heredoc_len); @@ -1997,7 +2004,7 @@ yyc_ST_END_HEREDOC: BEGIN(ST_IN_SCRIPTING); return T_END_HEREDOC; } -#line 2001 "Zend/zend_language_scanner.c" +#line 2008 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_END_NOWDOC: YYDEBUG(148, *YYCURSOR); @@ -2007,7 +2014,7 @@ yyc_ST_END_NOWDOC: ++YYCURSOR; YYDEBUG(151, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1895 "Zend/zend_language_scanner.l" +#line 1902 "Zend/zend_language_scanner.l" { Z_STRVAL_P(zendlval) = CG(heredoc); Z_STRLEN_P(zendlval) = CG(heredoc_len); @@ -2018,7 +2025,7 @@ yyc_ST_END_NOWDOC: BEGIN(ST_IN_SCRIPTING); return T_END_NOWDOC; } -#line 2022 "Zend/zend_language_scanner.c" +#line 2029 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_HEREDOC: { @@ -2075,12 +2082,12 @@ yyc_ST_HEREDOC: yy154: YYDEBUG(154, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1801 "Zend/zend_language_scanner.l" +#line 1808 "Zend/zend_language_scanner.l" { zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 2084 "Zend/zend_language_scanner.c" +#line 2091 "Zend/zend_language_scanner.c" yy155: YYDEBUG(155, *YYCURSOR); yych = *++YYCURSOR; @@ -2366,13 +2373,13 @@ yy173: yy175: YYDEBUG(175, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1806 "Zend/zend_language_scanner.l" +#line 1813 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); zend_scan_escape_string(zendlval, yytext, yyleng, 0 TSRMLS_CC); return T_ENCAPSED_AND_WHITESPACE; } -#line 2376 "Zend/zend_language_scanner.c" +#line 2383 "Zend/zend_language_scanner.c" yy176: YYDEBUG(176, *YYCURSOR); yyaccept = 1; @@ -2471,7 +2478,7 @@ yy182: ++YYCURSOR; YYDEBUG(183, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1709 "Zend/zend_language_scanner.l" +#line 1716 "Zend/zend_language_scanner.l" { char *end = yytext + yyleng - 1; @@ -2505,7 +2512,7 @@ yy182: yymore(); } } -#line 2509 "Zend/zend_language_scanner.c" +#line 2516 "Zend/zend_language_scanner.c" yy184: YYDEBUG(184, *YYCURSOR); yyaccept = 1; @@ -2743,14 +2750,14 @@ yy203: ++YYCURSOR; YYDEBUG(204, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1755 "Zend/zend_language_scanner.l" +#line 1762 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); yyless(1); return T_CURLY_OPEN; } -#line 2754 "Zend/zend_language_scanner.c" +#line 2761 "Zend/zend_language_scanner.c" yy205: YYDEBUG(205, *YYCURSOR); yyaccept = 2; @@ -2778,24 +2785,24 @@ yy205: yy207: YYDEBUG(207, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1443 "Zend/zend_language_scanner.l" +#line 1450 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2788 "Zend/zend_language_scanner.c" +#line 2795 "Zend/zend_language_scanner.c" yy208: YYDEBUG(208, *YYCURSOR); ++YYCURSOR; YYDEBUG(209, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1089 "Zend/zend_language_scanner.l" +#line 1096 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; } -#line 2799 "Zend/zend_language_scanner.c" +#line 2806 "Zend/zend_language_scanner.c" yy210: YYDEBUG(210, *YYCURSOR); yych = *++YYCURSOR; @@ -2806,7 +2813,7 @@ yy211: ++YYCURSOR; YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1435 "Zend/zend_language_scanner.l" +#line 1442 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -2814,7 +2821,7 @@ yy211: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2818 "Zend/zend_language_scanner.c" +#line 2825 "Zend/zend_language_scanner.c" yy213: YYDEBUG(213, *YYCURSOR); yych = *++YYCURSOR; @@ -2832,7 +2839,7 @@ yy214: ++YYCURSOR; YYDEBUG(215, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1425 "Zend/zend_language_scanner.l" +#line 1432 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -2840,7 +2847,7 @@ yy214: zendlval->type = IS_STRING; return T_VARIABLE; } -#line 2844 "Zend/zend_language_scanner.c" +#line 2851 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_IN_SCRIPTING: @@ -3055,13 +3062,13 @@ yy218: yy219: YYDEBUG(219, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1467 "Zend/zend_language_scanner.l" +#line 1474 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 3065 "Zend/zend_language_scanner.c" +#line 3072 "Zend/zend_language_scanner.c" yy220: YYDEBUG(220, *YYCURSOR); yych = *++YYCURSOR; @@ -3308,11 +3315,11 @@ yy232: yy233: YYDEBUG(233, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1078 "Zend/zend_language_scanner.l" +#line 1085 "Zend/zend_language_scanner.l" { return yytext[0]; } -#line 3316 "Zend/zend_language_scanner.c" +#line 3323 "Zend/zend_language_scanner.c" yy234: YYDEBUG(234, *YYCURSOR); yych = *++YYCURSOR; @@ -3545,18 +3552,18 @@ yy258: ++YYCURSOR; YYDEBUG(259, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1083 "Zend/zend_language_scanner.l" +#line 1090 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } -#line 3554 "Zend/zend_language_scanner.c" +#line 3561 "Zend/zend_language_scanner.c" yy260: YYDEBUG(260, *YYCURSOR); ++YYCURSOR; YYDEBUG(261, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1095 "Zend/zend_language_scanner.l" +#line 1102 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); /* This is a temporary fix which is dependant on flex and it's implementation */ @@ -3565,7 +3572,7 @@ yy260: } return '}'; } -#line 3569 "Zend/zend_language_scanner.c" +#line 3576 "Zend/zend_language_scanner.c" yy262: YYDEBUG(262, *YYCURSOR); yyaccept = 2; @@ -3588,7 +3595,7 @@ yy262: yy263: YYDEBUG(263, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1122 "Zend/zend_language_scanner.l" +#line 1129 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ zendlval->value.lval = strtol(yytext, NULL, 0); @@ -3609,7 +3616,7 @@ yy263: zendlval->type = IS_LONG; return T_LNUMBER; } -#line 3613 "Zend/zend_language_scanner.c" +#line 3620 "Zend/zend_language_scanner.c" yy264: YYDEBUG(264, *YYCURSOR); yyaccept = 2; @@ -3639,7 +3646,7 @@ yy266: yy267: YYDEBUG(267, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1474 "Zend/zend_language_scanner.l" +#line 1481 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -3647,19 +3654,19 @@ yy267: HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 3651 "Zend/zend_language_scanner.c" +#line 3658 "Zend/zend_language_scanner.c" yy268: YYDEBUG(268, *YYCURSOR); ++YYCURSOR; yy269: YYDEBUG(269, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1483 "Zend/zend_language_scanner.l" +#line 1490 "Zend/zend_language_scanner.l" { BEGIN(ST_ONE_LINE_COMMENT); yymore(); } -#line 3663 "Zend/zend_language_scanner.c" +#line 3670 "Zend/zend_language_scanner.c" yy270: YYDEBUG(270, *YYCURSOR); yyaccept = 3; @@ -3668,12 +3675,12 @@ yy270: yy271: YYDEBUG(271, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1646 "Zend/zend_language_scanner.l" +#line 1653 "Zend/zend_language_scanner.l" { BEGIN(ST_DOUBLE_QUOTES); return '"'; } -#line 3677 "Zend/zend_language_scanner.c" +#line 3684 "Zend/zend_language_scanner.c" yy272: YYDEBUG(272, *YYCURSOR); yyaccept = 4; @@ -3682,23 +3689,23 @@ yy272: yy273: YYDEBUG(273, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1920 "Zend/zend_language_scanner.l" +#line 1927 "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 3691 "Zend/zend_language_scanner.c" +#line 3698 "Zend/zend_language_scanner.c" yy274: YYDEBUG(274, *YYCURSOR); ++YYCURSOR; YYDEBUG(275, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1669 "Zend/zend_language_scanner.l" +#line 1676 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } -#line 3702 "Zend/zend_language_scanner.c" +#line 3709 "Zend/zend_language_scanner.c" yy276: YYDEBUG(276, *YYCURSOR); yych = *++YYCURSOR; @@ -3724,7 +3731,7 @@ yy280: ++YYCURSOR; YYDEBUG(281, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1602 "Zend/zend_language_scanner.l" +#line 1609 "Zend/zend_language_scanner.l" { register char *s, *t; char *end; @@ -3767,7 +3774,7 @@ yy280: return T_CONSTANT_ENCAPSED_STRING; } -#line 3771 "Zend/zend_language_scanner.c" +#line 3778 "Zend/zend_language_scanner.c" yy282: YYDEBUG(282, *YYCURSOR); ++YYCURSOR; @@ -3864,14 +3871,14 @@ yy290: ++YYCURSOR; YYDEBUG(291, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1594 "Zend/zend_language_scanner.l" +#line 1601 "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 3875 "Zend/zend_language_scanner.c" +#line 3882 "Zend/zend_language_scanner.c" yy292: YYDEBUG(292, *YYCURSOR); ++YYCURSOR; @@ -3915,13 +3922,13 @@ yy297: yy299: YYDEBUG(299, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1183 "Zend/zend_language_scanner.l" +#line 1190 "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 3932 "Zend/zend_language_scanner.c" yy300: YYDEBUG(300, *YYCURSOR); yyaccept = 2; @@ -3983,7 +3990,7 @@ yy307: } YYDEBUG(309, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1143 "Zend/zend_language_scanner.l" +#line 1150 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@ -4004,7 +4011,7 @@ yy307: return T_DNUMBER; } } -#line 4008 "Zend/zend_language_scanner.c" +#line 4015 "Zend/zend_language_scanner.c" yy310: YYDEBUG(310, *YYCURSOR); ++YYCURSOR; @@ -4013,7 +4020,7 @@ yy310: yy311: YYDEBUG(311, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1569 "Zend/zend_language_scanner.l" +#line 1576 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -4021,7 +4028,7 @@ yy311: BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } -#line 4025 "Zend/zend_language_scanner.c" +#line 4032 "Zend/zend_language_scanner.c" yy312: YYDEBUG(312, *YYCURSOR); yych = *++YYCURSOR; @@ -4055,13 +4062,13 @@ yy314: yy316: YYDEBUG(316, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1443 "Zend/zend_language_scanner.l" +#line 1450 "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 4072 "Zend/zend_language_scanner.c" yy317: YYDEBUG(317, *YYCURSOR); yych = *++YYCURSOR; @@ -4075,11 +4082,11 @@ yy318: } YYDEBUG(319, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1066 "Zend/zend_language_scanner.l" +#line 1073 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } -#line 4083 "Zend/zend_language_scanner.c" +#line 4090 "Zend/zend_language_scanner.c" yy320: YYDEBUG(320, *YYCURSOR); ++YYCURSOR; @@ -4088,61 +4095,61 @@ yy320: } YYDEBUG(321, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1058 "Zend/zend_language_scanner.l" +#line 1065 "Zend/zend_language_scanner.l" { return T_LOGICAL_OR; } -#line 4096 "Zend/zend_language_scanner.c" +#line 4103 "Zend/zend_language_scanner.c" yy322: YYDEBUG(322, *YYCURSOR); ++YYCURSOR; YYDEBUG(323, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1046 "Zend/zend_language_scanner.l" +#line 1053 "Zend/zend_language_scanner.l" { return T_XOR_EQUAL; } -#line 4106 "Zend/zend_language_scanner.c" +#line 4113 "Zend/zend_language_scanner.c" yy324: YYDEBUG(324, *YYCURSOR); ++YYCURSOR; YYDEBUG(325, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1050 "Zend/zend_language_scanner.l" +#line 1057 "Zend/zend_language_scanner.l" { return T_BOOLEAN_OR; } -#line 4116 "Zend/zend_language_scanner.c" +#line 4123 "Zend/zend_language_scanner.c" yy326: YYDEBUG(326, *YYCURSOR); ++YYCURSOR; YYDEBUG(327, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1042 "Zend/zend_language_scanner.l" +#line 1049 "Zend/zend_language_scanner.l" { return T_OR_EQUAL; } -#line 4126 "Zend/zend_language_scanner.c" +#line 4133 "Zend/zend_language_scanner.c" yy328: YYDEBUG(328, *YYCURSOR); ++YYCURSOR; YYDEBUG(329, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1054 "Zend/zend_language_scanner.l" +#line 1061 "Zend/zend_language_scanner.l" { return T_BOOLEAN_AND; } -#line 4136 "Zend/zend_language_scanner.c" +#line 4143 "Zend/zend_language_scanner.c" yy330: YYDEBUG(330, *YYCURSOR); ++YYCURSOR; YYDEBUG(331, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1038 "Zend/zend_language_scanner.l" +#line 1045 "Zend/zend_language_scanner.l" { return T_AND_EQUAL; } -#line 4146 "Zend/zend_language_scanner.c" +#line 4153 "Zend/zend_language_scanner.c" yy332: YYDEBUG(332, *YYCURSOR); ++YYCURSOR; @@ -4151,7 +4158,7 @@ yy332: yy333: YYDEBUG(333, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1578 "Zend/zend_language_scanner.l" +#line 1585 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { BEGIN(INITIAL); @@ -4164,17 +4171,17 @@ yy333: return yytext[0]; } } -#line 4168 "Zend/zend_language_scanner.c" +#line 4175 "Zend/zend_language_scanner.c" yy334: YYDEBUG(334, *YYCURSOR); ++YYCURSOR; YYDEBUG(335, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1026 "Zend/zend_language_scanner.l" +#line 1033 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } -#line 4178 "Zend/zend_language_scanner.c" +#line 4185 "Zend/zend_language_scanner.c" yy336: YYDEBUG(336, *YYCURSOR); yych = *++YYCURSOR; @@ -4205,11 +4212,11 @@ yy340: ++YYCURSOR; YYDEBUG(341, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1022 "Zend/zend_language_scanner.l" +#line 1029 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } -#line 4213 "Zend/zend_language_scanner.c" +#line 4220 "Zend/zend_language_scanner.c" yy342: YYDEBUG(342, *YYCURSOR); yyaccept = 6; @@ -4218,13 +4225,13 @@ yy342: yy343: YYDEBUG(343, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1540 "Zend/zend_language_scanner.l" +#line 1547 "Zend/zend_language_scanner.l" { CG(comment_start_line) = CG(zend_lineno); BEGIN(ST_COMMENT); yymore(); } -#line 4228 "Zend/zend_language_scanner.c" +#line 4235 "Zend/zend_language_scanner.c" yy344: YYDEBUG(344, *YYCURSOR); yych = *++YYCURSOR; @@ -4234,11 +4241,11 @@ yy345: ++YYCURSOR; YYDEBUG(346, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1018 "Zend/zend_language_scanner.l" +#line 1025 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } -#line 4242 "Zend/zend_language_scanner.c" +#line 4249 "Zend/zend_language_scanner.c" yy347: YYDEBUG(347, *YYCURSOR); yych = *++YYCURSOR; @@ -4265,55 +4272,55 @@ yy348: yy350: YYDEBUG(350, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1533 "Zend/zend_language_scanner.l" +#line 1540 "Zend/zend_language_scanner.l" { CG(comment_start_line) = CG(zend_lineno); RESET_DOC_COMMENT(); BEGIN(ST_DOC_COMMENT); yymore(); } -#line 4276 "Zend/zend_language_scanner.c" +#line 4283 "Zend/zend_language_scanner.c" yy351: YYDEBUG(351, *YYCURSOR); ++YYCURSOR; YYDEBUG(352, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1014 "Zend/zend_language_scanner.l" +#line 1021 "Zend/zend_language_scanner.l" { return T_MUL_EQUAL; } -#line 4286 "Zend/zend_language_scanner.c" +#line 4293 "Zend/zend_language_scanner.c" yy353: YYDEBUG(353, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy357; YYDEBUG(354, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1074 "Zend/zend_language_scanner.l" +#line 1081 "Zend/zend_language_scanner.l" { return T_SR; } -#line 4297 "Zend/zend_language_scanner.c" +#line 4304 "Zend/zend_language_scanner.c" yy355: YYDEBUG(355, *YYCURSOR); ++YYCURSOR; YYDEBUG(356, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1002 "Zend/zend_language_scanner.l" +#line 1009 "Zend/zend_language_scanner.l" { return T_IS_GREATER_OR_EQUAL; } -#line 4307 "Zend/zend_language_scanner.c" +#line 4314 "Zend/zend_language_scanner.c" yy357: YYDEBUG(357, *YYCURSOR); ++YYCURSOR; YYDEBUG(358, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1034 "Zend/zend_language_scanner.l" +#line 1041 "Zend/zend_language_scanner.l" { return T_SR_EQUAL; } -#line 4317 "Zend/zend_language_scanner.c" +#line 4324 "Zend/zend_language_scanner.c" yy359: YYDEBUG(359, *YYCURSOR); yyaccept = 7; @@ -4324,11 +4331,11 @@ yy359: yy360: YYDEBUG(360, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1070 "Zend/zend_language_scanner.l" +#line 1077 "Zend/zend_language_scanner.l" { return T_SL; } -#line 4332 "Zend/zend_language_scanner.c" +#line 4339 "Zend/zend_language_scanner.c" yy361: YYDEBUG(361, *YYCURSOR); yych = *++YYCURSOR; @@ -4340,22 +4347,22 @@ yy362: ++YYCURSOR; YYDEBUG(363, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 998 "Zend/zend_language_scanner.l" +#line 1005 "Zend/zend_language_scanner.l" { return T_IS_SMALLER_OR_EQUAL; } -#line 4348 "Zend/zend_language_scanner.c" +#line 4355 "Zend/zend_language_scanner.c" yy364: YYDEBUG(364, *YYCURSOR); ++YYCURSOR; yy365: YYDEBUG(365, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 994 "Zend/zend_language_scanner.l" +#line 1001 "Zend/zend_language_scanner.l" { return T_IS_NOT_EQUAL; } -#line 4359 "Zend/zend_language_scanner.c" +#line 4366 "Zend/zend_language_scanner.c" yy366: YYDEBUG(366, *YYCURSOR); yych = *++YYCURSOR; @@ -4406,11 +4413,11 @@ yy373: ++YYCURSOR; YYDEBUG(374, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1030 "Zend/zend_language_scanner.l" +#line 1037 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } -#line 4414 "Zend/zend_language_scanner.c" +#line 4421 "Zend/zend_language_scanner.c" yy375: YYDEBUG(375, *YYCURSOR); ++YYCURSOR; @@ -4477,7 +4484,7 @@ yy380: yy381: YYDEBUG(381, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1652 "Zend/zend_language_scanner.l" +#line 1659 "Zend/zend_language_scanner.l" { char *s; int bprefix = (yytext[0] != '<') ? 1 : 0; @@ -4493,7 +4500,7 @@ yy381: BEGIN(ST_START_HEREDOC); return T_START_HEREDOC; } -#line 4497 "Zend/zend_language_scanner.c" +#line 4504 "Zend/zend_language_scanner.c" yy382: YYDEBUG(382, *YYCURSOR); yych = *++YYCURSOR; @@ -4535,7 +4542,7 @@ yy386: yy387: YYDEBUG(387, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1815 "Zend/zend_language_scanner.l" +#line 1822 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '<') ? 1 : 0; char *s; @@ -4552,7 +4559,7 @@ yy387: BEGIN(ST_START_NOWDOC); return T_START_NOWDOC; } -#line 4556 "Zend/zend_language_scanner.c" +#line 4563 "Zend/zend_language_scanner.c" yy388: YYDEBUG(388, *YYCURSOR); yych = *++YYCURSOR; @@ -4566,31 +4573,31 @@ yy389: ++YYCURSOR; YYDEBUG(391, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 986 "Zend/zend_language_scanner.l" +#line 993 "Zend/zend_language_scanner.l" { return T_IS_NOT_IDENTICAL; } -#line 4574 "Zend/zend_language_scanner.c" +#line 4581 "Zend/zend_language_scanner.c" yy392: YYDEBUG(392, *YYCURSOR); ++YYCURSOR; YYDEBUG(393, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1006 "Zend/zend_language_scanner.l" +#line 1013 "Zend/zend_language_scanner.l" { return T_PLUS_EQUAL; } -#line 4584 "Zend/zend_language_scanner.c" +#line 4591 "Zend/zend_language_scanner.c" yy394: YYDEBUG(394, *YYCURSOR); ++YYCURSOR; YYDEBUG(395, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 974 "Zend/zend_language_scanner.l" +#line 981 "Zend/zend_language_scanner.l" { return T_INC; } -#line 4594 "Zend/zend_language_scanner.c" +#line 4601 "Zend/zend_language_scanner.c" yy396: YYDEBUG(396, *YYCURSOR); yych = *++YYCURSOR; @@ -4609,42 +4616,42 @@ yy398: } YYDEBUG(399, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 966 "Zend/zend_language_scanner.l" +#line 973 "Zend/zend_language_scanner.l" { return T_LIST; } -#line 4617 "Zend/zend_language_scanner.c" +#line 4624 "Zend/zend_language_scanner.c" yy400: YYDEBUG(400, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) == '=') goto yy404; YYDEBUG(401, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 990 "Zend/zend_language_scanner.l" +#line 997 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } -#line 4628 "Zend/zend_language_scanner.c" +#line 4635 "Zend/zend_language_scanner.c" yy402: YYDEBUG(402, *YYCURSOR); ++YYCURSOR; YYDEBUG(403, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 962 "Zend/zend_language_scanner.l" +#line 969 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } -#line 4638 "Zend/zend_language_scanner.c" +#line 4645 "Zend/zend_language_scanner.c" yy404: YYDEBUG(404, *YYCURSOR); ++YYCURSOR; YYDEBUG(405, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 982 "Zend/zend_language_scanner.l" +#line 989 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } -#line 4648 "Zend/zend_language_scanner.c" +#line 4655 "Zend/zend_language_scanner.c" yy406: YYDEBUG(406, *YYCURSOR); yych = *++YYCURSOR; @@ -4736,7 +4743,7 @@ yy413: } YYDEBUG(424, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1287 "Zend/zend_language_scanner.l" +#line 1294 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@ -4746,7 +4753,7 @@ yy413: } return T_NS_C; } -#line 4750 "Zend/zend_language_scanner.c" +#line 4757 "Zend/zend_language_scanner.c" yy425: YYDEBUG(425, *YYCURSOR); yych = *++YYCURSOR; @@ -4764,7 +4771,7 @@ yy425: } YYDEBUG(429, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1260 "Zend/zend_language_scanner.l" +#line 1267 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@ -4791,7 +4798,7 @@ yy425: zendlval->type = IS_STRING; return T_DIR; } -#line 4795 "Zend/zend_language_scanner.c" +#line 4802 "Zend/zend_language_scanner.c" yy430: YYDEBUG(430, *YYCURSOR); yych = *++YYCURSOR; @@ -4812,13 +4819,13 @@ yy430: } YYDEBUG(435, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1242 "Zend/zend_language_scanner.l" +#line 1249 "Zend/zend_language_scanner.l" { zendlval->value.lval = CG(zend_lineno); zendlval->type = IS_LONG; return T_LINE; } -#line 4822 "Zend/zend_language_scanner.c" +#line 4829 "Zend/zend_language_scanner.c" yy436: YYDEBUG(436, *YYCURSOR); yych = *++YYCURSOR; @@ -4845,7 +4852,7 @@ yy436: } YYDEBUG(443, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1221 "Zend/zend_language_scanner.l" +#line 1228 "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; @@ -4866,7 +4873,7 @@ yy436: zendlval->type = IS_STRING; return T_METHOD_C; } -#line 4870 "Zend/zend_language_scanner.c" +#line 4877 "Zend/zend_language_scanner.c" yy444: YYDEBUG(444, *YYCURSOR); yych = *++YYCURSOR; @@ -4904,7 +4911,7 @@ yy445: } YYDEBUG(454, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1205 "Zend/zend_language_scanner.l" +#line 1212 "Zend/zend_language_scanner.l" { char *func_name = NULL; @@ -4920,7 +4927,7 @@ yy445: zendlval->type = IS_STRING; return T_FUNC_C; } -#line 4924 "Zend/zend_language_scanner.c" +#line 4931 "Zend/zend_language_scanner.c" yy455: YYDEBUG(455, *YYCURSOR); yych = *++YYCURSOR; @@ -4938,7 +4945,7 @@ yy455: } YYDEBUG(459, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1248 "Zend/zend_language_scanner.l" +#line 1255 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@ -4950,7 +4957,7 @@ yy455: zendlval->type = IS_STRING; return T_FILE; } -#line 4954 "Zend/zend_language_scanner.c" +#line 4961 "Zend/zend_language_scanner.c" yy460: YYDEBUG(460, *YYCURSOR); yych = *++YYCURSOR; @@ -4974,7 +4981,7 @@ yy460: } YYDEBUG(466, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1189 "Zend/zend_language_scanner.l" +#line 1196 "Zend/zend_language_scanner.l" { char *class_name = NULL; @@ -4990,7 +4997,7 @@ yy460: zendlval->type = IS_STRING; return T_CLASS_C; } -#line 4994 "Zend/zend_language_scanner.c" +#line 5001 "Zend/zend_language_scanner.c" yy467: YYDEBUG(467, *YYCURSOR); yych = *++YYCURSOR; @@ -5052,11 +5059,11 @@ yy478: } YYDEBUG(479, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 930 "Zend/zend_language_scanner.l" +#line 937 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } -#line 5060 "Zend/zend_language_scanner.c" +#line 5067 "Zend/zend_language_scanner.c" yy480: YYDEBUG(480, *YYCURSOR); yych = *++YYCURSOR; @@ -5076,11 +5083,11 @@ yy482: } YYDEBUG(483, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 914 "Zend/zend_language_scanner.l" +#line 921 "Zend/zend_language_scanner.l" { return T_USE; } -#line 5084 "Zend/zend_language_scanner.c" +#line 5091 "Zend/zend_language_scanner.c" yy484: YYDEBUG(484, *YYCURSOR); yych = *++YYCURSOR; @@ -5099,11 +5106,11 @@ yy486: } YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 958 "Zend/zend_language_scanner.l" +#line 965 "Zend/zend_language_scanner.l" { return T_UNSET; } -#line 5107 "Zend/zend_language_scanner.c" +#line 5114 "Zend/zend_language_scanner.c" yy488: YYDEBUG(488, *YYCURSOR); ++YYCURSOR; @@ -5275,11 +5282,11 @@ yy503: ++YYCURSOR; YYDEBUG(505, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 858 "Zend/zend_language_scanner.l" +#line 865 "Zend/zend_language_scanner.l" { return T_INT_CAST; } -#line 5283 "Zend/zend_language_scanner.c" +#line 5290 "Zend/zend_language_scanner.c" yy506: YYDEBUG(506, *YYCURSOR); yych = *++YYCURSOR; @@ -5323,11 +5330,11 @@ yy511: ++YYCURSOR; YYDEBUG(514, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 862 "Zend/zend_language_scanner.l" +#line 869 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } -#line 5331 "Zend/zend_language_scanner.c" +#line 5338 "Zend/zend_language_scanner.c" yy515: YYDEBUG(515, *YYCURSOR); yych = *++YYCURSOR; @@ -5397,11 +5404,11 @@ yy525: ++YYCURSOR; YYDEBUG(528, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 866 "Zend/zend_language_scanner.l" +#line 873 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } -#line 5405 "Zend/zend_language_scanner.c" +#line 5412 "Zend/zend_language_scanner.c" yy529: YYDEBUG(529, *YYCURSOR); yych = *++YYCURSOR; @@ -5434,11 +5441,11 @@ yy532: ++YYCURSOR; YYDEBUG(535, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 874 "Zend/zend_language_scanner.l" +#line 881 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } -#line 5442 "Zend/zend_language_scanner.c" +#line 5449 "Zend/zend_language_scanner.c" yy536: YYDEBUG(536, *YYCURSOR); yych = *++YYCURSOR; @@ -5476,11 +5483,11 @@ yy540: ++YYCURSOR; YYDEBUG(543, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 878 "Zend/zend_language_scanner.l" +#line 885 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } -#line 5484 "Zend/zend_language_scanner.c" +#line 5491 "Zend/zend_language_scanner.c" yy544: YYDEBUG(544, *YYCURSOR); yych = *++YYCURSOR; @@ -5521,11 +5528,11 @@ yy549: ++YYCURSOR; YYDEBUG(551, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 882 "Zend/zend_language_scanner.l" +#line 889 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } -#line 5529 "Zend/zend_language_scanner.c" +#line 5536 "Zend/zend_language_scanner.c" yy552: YYDEBUG(552, *YYCURSOR); yych = *++YYCURSOR; @@ -5569,11 +5576,11 @@ yy557: ++YYCURSOR; YYDEBUG(560, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 870 "Zend/zend_language_scanner.l" +#line 877 "Zend/zend_language_scanner.l" { return T_STRING_CAST; } -#line 5577 "Zend/zend_language_scanner.c" +#line 5584 "Zend/zend_language_scanner.c" yy561: YYDEBUG(561, *YYCURSOR); yych = *++YYCURSOR; @@ -5606,11 +5613,11 @@ yy564: ++YYCURSOR; YYDEBUG(567, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 886 "Zend/zend_language_scanner.l" +#line 893 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } -#line 5614 "Zend/zend_language_scanner.c" +#line 5621 "Zend/zend_language_scanner.c" yy568: YYDEBUG(568, *YYCURSOR); yych = *++YYCURSOR; @@ -5624,11 +5631,11 @@ yy569: } YYDEBUG(570, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 854 "Zend/zend_language_scanner.l" +#line 861 "Zend/zend_language_scanner.l" { return T_VAR; } -#line 5632 "Zend/zend_language_scanner.c" +#line 5639 "Zend/zend_language_scanner.c" yy571: YYDEBUG(571, *YYCURSOR); yych = *++YYCURSOR; @@ -5648,11 +5655,11 @@ yy573: } YYDEBUG(574, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 846 "Zend/zend_language_scanner.l" +#line 853 "Zend/zend_language_scanner.l" { return T_NEW; } -#line 5656 "Zend/zend_language_scanner.c" +#line 5663 "Zend/zend_language_scanner.c" yy575: YYDEBUG(575, *YYCURSOR); yych = *++YYCURSOR; @@ -5691,52 +5698,52 @@ yy581: } YYDEBUG(582, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 910 "Zend/zend_language_scanner.l" +#line 917 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } -#line 5699 "Zend/zend_language_scanner.c" +#line 5706 "Zend/zend_language_scanner.c" yy583: YYDEBUG(583, *YYCURSOR); ++YYCURSOR; YYDEBUG(584, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 842 "Zend/zend_language_scanner.l" +#line 849 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } -#line 5709 "Zend/zend_language_scanner.c" +#line 5716 "Zend/zend_language_scanner.c" yy585: YYDEBUG(585, *YYCURSOR); ++YYCURSOR; YYDEBUG(586, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1010 "Zend/zend_language_scanner.l" +#line 1017 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } -#line 5719 "Zend/zend_language_scanner.c" +#line 5726 "Zend/zend_language_scanner.c" yy587: YYDEBUG(587, *YYCURSOR); ++YYCURSOR; YYDEBUG(588, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 978 "Zend/zend_language_scanner.l" +#line 985 "Zend/zend_language_scanner.l" { return T_DEC; } -#line 5729 "Zend/zend_language_scanner.c" +#line 5736 "Zend/zend_language_scanner.c" yy589: YYDEBUG(589, *YYCURSOR); ++YYCURSOR; YYDEBUG(590, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 815 "Zend/zend_language_scanner.l" +#line 822 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } -#line 5740 "Zend/zend_language_scanner.c" +#line 5747 "Zend/zend_language_scanner.c" yy591: YYDEBUG(591, *YYCURSOR); yych = *++YYCURSOR; @@ -5781,11 +5788,11 @@ yy596: } YYDEBUG(597, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 954 "Zend/zend_language_scanner.l" +#line 961 "Zend/zend_language_scanner.l" { return T_PUBLIC; } -#line 5789 "Zend/zend_language_scanner.c" +#line 5796 "Zend/zend_language_scanner.c" yy598: YYDEBUG(598, *YYCURSOR); yych = *++YYCURSOR; @@ -5840,11 +5847,11 @@ yy605: } YYDEBUG(606, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 950 "Zend/zend_language_scanner.l" +#line 957 "Zend/zend_language_scanner.l" { return T_PROTECTED; } -#line 5848 "Zend/zend_language_scanner.c" +#line 5855 "Zend/zend_language_scanner.c" yy607: YYDEBUG(607, *YYCURSOR); yych = *++YYCURSOR; @@ -5874,11 +5881,11 @@ yy611: } YYDEBUG(612, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 946 "Zend/zend_language_scanner.l" +#line 953 "Zend/zend_language_scanner.l" { return T_PRIVATE; } -#line 5882 "Zend/zend_language_scanner.c" +#line 5889 "Zend/zend_language_scanner.c" yy613: YYDEBUG(613, *YYCURSOR); ++YYCURSOR; @@ -5887,11 +5894,11 @@ yy613: } YYDEBUG(614, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 795 "Zend/zend_language_scanner.l" +#line 802 "Zend/zend_language_scanner.l" { return T_PRINT; } -#line 5895 "Zend/zend_language_scanner.c" +#line 5902 "Zend/zend_language_scanner.c" yy615: YYDEBUG(615, *YYCURSOR); yych = *++YYCURSOR; @@ -5916,11 +5923,11 @@ yy618: } YYDEBUG(619, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 787 "Zend/zend_language_scanner.l" +#line 794 "Zend/zend_language_scanner.l" { return T_GOTO; } -#line 5924 "Zend/zend_language_scanner.c" +#line 5931 "Zend/zend_language_scanner.c" yy620: YYDEBUG(620, *YYCURSOR); yych = *++YYCURSOR; @@ -5944,11 +5951,11 @@ yy623: } YYDEBUG(624, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 918 "Zend/zend_language_scanner.l" +#line 925 "Zend/zend_language_scanner.l" { return T_GLOBAL; } -#line 5952 "Zend/zend_language_scanner.c" +#line 5959 "Zend/zend_language_scanner.c" yy625: YYDEBUG(625, *YYCURSOR); yych = *++YYCURSOR; @@ -5982,11 +5989,11 @@ yy630: } YYDEBUG(631, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 779 "Zend/zend_language_scanner.l" +#line 786 "Zend/zend_language_scanner.l" { return T_BREAK; } -#line 5990 "Zend/zend_language_scanner.c" +#line 5997 "Zend/zend_language_scanner.c" yy632: YYDEBUG(632, *YYCURSOR); yych = *++YYCURSOR; @@ -6026,11 +6033,11 @@ yy638: } YYDEBUG(639, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 763 "Zend/zend_language_scanner.l" +#line 770 "Zend/zend_language_scanner.l" { return T_SWITCH; } -#line 6034 "Zend/zend_language_scanner.c" +#line 6041 "Zend/zend_language_scanner.c" yy640: YYDEBUG(640, *YYCURSOR); yych = *++YYCURSOR; @@ -6054,11 +6061,11 @@ yy643: } YYDEBUG(644, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 934 "Zend/zend_language_scanner.l" +#line 941 "Zend/zend_language_scanner.l" { return T_STATIC; } -#line 6062 "Zend/zend_language_scanner.c" +#line 6069 "Zend/zend_language_scanner.c" yy645: YYDEBUG(645, *YYCURSOR); yych = *++YYCURSOR; @@ -6085,11 +6092,11 @@ yy648: } YYDEBUG(649, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 759 "Zend/zend_language_scanner.l" +#line 766 "Zend/zend_language_scanner.l" { return T_AS; } -#line 6093 "Zend/zend_language_scanner.c" +#line 6100 "Zend/zend_language_scanner.c" yy650: YYDEBUG(650, *YYCURSOR); yych = *++YYCURSOR; @@ -6108,11 +6115,11 @@ yy652: } YYDEBUG(653, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 970 "Zend/zend_language_scanner.l" +#line 977 "Zend/zend_language_scanner.l" { return T_ARRAY; } -#line 6116 "Zend/zend_language_scanner.c" +#line 6123 "Zend/zend_language_scanner.c" yy654: YYDEBUG(654, *YYCURSOR); ++YYCURSOR; @@ -6121,11 +6128,11 @@ yy654: } YYDEBUG(655, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1062 "Zend/zend_language_scanner.l" +#line 1069 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } -#line 6129 "Zend/zend_language_scanner.c" +#line 6136 "Zend/zend_language_scanner.c" yy656: YYDEBUG(656, *YYCURSOR); yych = *++YYCURSOR; @@ -6159,11 +6166,11 @@ yy661: } YYDEBUG(662, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 938 "Zend/zend_language_scanner.l" +#line 945 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } -#line 6167 "Zend/zend_language_scanner.c" +#line 6174 "Zend/zend_language_scanner.c" yy663: YYDEBUG(663, *YYCURSOR); yych = *++YYCURSOR; @@ -6187,11 +6194,11 @@ yy666: } YYDEBUG(667, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 719 "Zend/zend_language_scanner.l" +#line 726 "Zend/zend_language_scanner.l" { return T_WHILE; } -#line 6195 "Zend/zend_language_scanner.c" +#line 6202 "Zend/zend_language_scanner.c" yy668: YYDEBUG(668, *YYCURSOR); ++YYCURSOR; @@ -6200,11 +6207,11 @@ yy668: } YYDEBUG(669, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 703 "Zend/zend_language_scanner.l" +#line 710 "Zend/zend_language_scanner.l" { return T_IF; } -#line 6208 "Zend/zend_language_scanner.c" +#line 6215 "Zend/zend_language_scanner.c" yy670: YYDEBUG(670, *YYCURSOR); yych = *++YYCURSOR; @@ -6256,11 +6263,11 @@ yy675: } YYDEBUG(676, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 922 "Zend/zend_language_scanner.l" +#line 929 "Zend/zend_language_scanner.l" { return T_ISSET; } -#line 6264 "Zend/zend_language_scanner.c" +#line 6271 "Zend/zend_language_scanner.c" yy677: YYDEBUG(677, *YYCURSOR); yych = *++YYCURSOR; @@ -6314,11 +6321,11 @@ yy683: yy684: YYDEBUG(684, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 894 "Zend/zend_language_scanner.l" +#line 901 "Zend/zend_language_scanner.l" { return T_INCLUDE; } -#line 6322 "Zend/zend_language_scanner.c" +#line 6329 "Zend/zend_language_scanner.c" yy685: YYDEBUG(685, *YYCURSOR); yych = *++YYCURSOR; @@ -6347,11 +6354,11 @@ yy689: } YYDEBUG(690, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 898 "Zend/zend_language_scanner.l" +#line 905 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } -#line 6355 "Zend/zend_language_scanner.c" +#line 6362 "Zend/zend_language_scanner.c" yy691: YYDEBUG(691, *YYCURSOR); yych = *++YYCURSOR; @@ -6385,11 +6392,11 @@ yy696: } YYDEBUG(697, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 803 "Zend/zend_language_scanner.l" +#line 810 "Zend/zend_language_scanner.l" { return T_INTERFACE; } -#line 6393 "Zend/zend_language_scanner.c" +#line 6400 "Zend/zend_language_scanner.c" yy698: YYDEBUG(698, *YYCURSOR); yych = *++YYCURSOR; @@ -6428,11 +6435,11 @@ yy704: } YYDEBUG(705, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 755 "Zend/zend_language_scanner.l" +#line 762 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } -#line 6436 "Zend/zend_language_scanner.c" +#line 6443 "Zend/zend_language_scanner.c" yy706: YYDEBUG(706, *YYCURSOR); yych = *++YYCURSOR; @@ -6476,11 +6483,11 @@ yy713: } YYDEBUG(714, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 811 "Zend/zend_language_scanner.l" +#line 818 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } -#line 6484 "Zend/zend_language_scanner.c" +#line 6491 "Zend/zend_language_scanner.c" yy715: YYDEBUG(715, *YYCURSOR); yych = *++YYCURSOR; @@ -6500,11 +6507,11 @@ yy717: } YYDEBUG(718, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 691 "Zend/zend_language_scanner.l" +#line 698 "Zend/zend_language_scanner.l" { return T_TRY; } -#line 6508 "Zend/zend_language_scanner.c" +#line 6515 "Zend/zend_language_scanner.c" yy719: YYDEBUG(719, *YYCURSOR); yych = *++YYCURSOR; @@ -6523,11 +6530,11 @@ yy721: } YYDEBUG(722, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 699 "Zend/zend_language_scanner.l" +#line 706 "Zend/zend_language_scanner.l" { return T_THROW; } -#line 6531 "Zend/zend_language_scanner.c" +#line 6538 "Zend/zend_language_scanner.c" yy723: YYDEBUG(723, *YYCURSOR); yych = *++YYCURSOR; @@ -6588,11 +6595,11 @@ yy729: yy730: YYDEBUG(730, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 902 "Zend/zend_language_scanner.l" +#line 909 "Zend/zend_language_scanner.l" { return T_REQUIRE; } -#line 6596 "Zend/zend_language_scanner.c" +#line 6603 "Zend/zend_language_scanner.c" yy731: YYDEBUG(731, *YYCURSOR); yych = *++YYCURSOR; @@ -6621,11 +6628,11 @@ yy735: } YYDEBUG(736, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 906 "Zend/zend_language_scanner.l" +#line 913 "Zend/zend_language_scanner.l" { return T_REQUIRE_ONCE; } -#line 6629 "Zend/zend_language_scanner.c" +#line 6636 "Zend/zend_language_scanner.c" yy737: YYDEBUG(737, *YYCURSOR); yych = *++YYCURSOR; @@ -6644,11 +6651,11 @@ yy739: } YYDEBUG(740, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 687 "Zend/zend_language_scanner.l" +#line 694 "Zend/zend_language_scanner.l" { return T_RETURN; } -#line 6652 "Zend/zend_language_scanner.c" +#line 6659 "Zend/zend_language_scanner.c" yy741: YYDEBUG(741, *YYCURSOR); yych = *++YYCURSOR; @@ -6729,11 +6736,11 @@ yy750: } YYDEBUG(751, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 783 "Zend/zend_language_scanner.l" +#line 790 "Zend/zend_language_scanner.l" { return T_CONTINUE; } -#line 6737 "Zend/zend_language_scanner.c" +#line 6744 "Zend/zend_language_scanner.c" yy752: YYDEBUG(752, *YYCURSOR); ++YYCURSOR; @@ -6742,11 +6749,11 @@ yy752: } YYDEBUG(753, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 683 "Zend/zend_language_scanner.l" +#line 690 "Zend/zend_language_scanner.l" { return T_CONST; } -#line 6750 "Zend/zend_language_scanner.c" +#line 6757 "Zend/zend_language_scanner.c" yy754: YYDEBUG(754, *YYCURSOR); yych = *++YYCURSOR; @@ -6771,11 +6778,11 @@ yy757: } YYDEBUG(758, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 850 "Zend/zend_language_scanner.l" +#line 857 "Zend/zend_language_scanner.l" { return T_CLONE; } -#line 6779 "Zend/zend_language_scanner.c" +#line 6786 "Zend/zend_language_scanner.c" yy759: YYDEBUG(759, *YYCURSOR); yych = *++YYCURSOR; @@ -6789,11 +6796,11 @@ yy760: } YYDEBUG(761, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 799 "Zend/zend_language_scanner.l" +#line 806 "Zend/zend_language_scanner.l" { return T_CLASS; } -#line 6797 "Zend/zend_language_scanner.c" +#line 6804 "Zend/zend_language_scanner.c" yy762: YYDEBUG(762, *YYCURSOR); yych = *++YYCURSOR; @@ -6813,11 +6820,11 @@ yy764: } YYDEBUG(765, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 771 "Zend/zend_language_scanner.l" +#line 778 "Zend/zend_language_scanner.l" { return T_CASE; } -#line 6821 "Zend/zend_language_scanner.c" +#line 6828 "Zend/zend_language_scanner.c" yy766: YYDEBUG(766, *YYCURSOR); yych = *++YYCURSOR; @@ -6831,11 +6838,11 @@ yy767: } YYDEBUG(768, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 695 "Zend/zend_language_scanner.l" +#line 702 "Zend/zend_language_scanner.l" { return T_CATCH; } -#line 6839 "Zend/zend_language_scanner.c" +#line 6846 "Zend/zend_language_scanner.c" yy769: YYDEBUG(769, *YYCURSOR); yych = *++YYCURSOR; @@ -6886,11 +6893,11 @@ yy777: } YYDEBUG(778, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 679 "Zend/zend_language_scanner.l" +#line 686 "Zend/zend_language_scanner.l" { return T_FUNCTION; } -#line 6894 "Zend/zend_language_scanner.c" +#line 6901 "Zend/zend_language_scanner.c" yy779: YYDEBUG(779, *YYCURSOR); ++YYCURSOR; @@ -6914,11 +6921,11 @@ yy779: yy780: YYDEBUG(780, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 731 "Zend/zend_language_scanner.l" +#line 738 "Zend/zend_language_scanner.l" { return T_FOR; } -#line 6922 "Zend/zend_language_scanner.c" +#line 6929 "Zend/zend_language_scanner.c" yy781: YYDEBUG(781, *YYCURSOR); yych = *++YYCURSOR; @@ -6942,11 +6949,11 @@ yy784: } YYDEBUG(785, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 739 "Zend/zend_language_scanner.l" +#line 746 "Zend/zend_language_scanner.l" { return T_FOREACH; } -#line 6950 "Zend/zend_language_scanner.c" +#line 6957 "Zend/zend_language_scanner.c" yy786: YYDEBUG(786, *YYCURSOR); yych = *++YYCURSOR; @@ -6965,11 +6972,11 @@ yy788: } YYDEBUG(789, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 942 "Zend/zend_language_scanner.l" +#line 949 "Zend/zend_language_scanner.l" { return T_FINAL; } -#line 6973 "Zend/zend_language_scanner.c" +#line 6980 "Zend/zend_language_scanner.c" yy790: YYDEBUG(790, *YYCURSOR); yych = *++YYCURSOR; @@ -7000,11 +7007,11 @@ yy792: } YYDEBUG(793, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 727 "Zend/zend_language_scanner.l" +#line 734 "Zend/zend_language_scanner.l" { return T_DO; } -#line 7008 "Zend/zend_language_scanner.c" +#line 7015 "Zend/zend_language_scanner.c" yy794: YYDEBUG(794, *YYCURSOR); ++YYCURSOR; @@ -7013,11 +7020,11 @@ yy794: } YYDEBUG(795, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 675 "Zend/zend_language_scanner.l" +#line 682 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 7021 "Zend/zend_language_scanner.c" +#line 7028 "Zend/zend_language_scanner.c" yy796: YYDEBUG(796, *YYCURSOR); yych = *++YYCURSOR; @@ -7052,11 +7059,11 @@ yy801: } YYDEBUG(802, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 775 "Zend/zend_language_scanner.l" +#line 782 "Zend/zend_language_scanner.l" { return T_DEFAULT; } -#line 7060 "Zend/zend_language_scanner.c" +#line 7067 "Zend/zend_language_scanner.c" yy803: YYDEBUG(803, *YYCURSOR); yych = *++YYCURSOR; @@ -7080,11 +7087,11 @@ yy806: } YYDEBUG(807, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 747 "Zend/zend_language_scanner.l" +#line 754 "Zend/zend_language_scanner.l" { return T_DECLARE; } -#line 7088 "Zend/zend_language_scanner.c" +#line 7095 "Zend/zend_language_scanner.c" yy808: YYDEBUG(808, *YYCURSOR); yych = *++YYCURSOR; @@ -7164,11 +7171,11 @@ yy819: } YYDEBUG(820, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 807 "Zend/zend_language_scanner.l" +#line 814 "Zend/zend_language_scanner.l" { return T_EXTENDS; } -#line 7172 "Zend/zend_language_scanner.c" +#line 7179 "Zend/zend_language_scanner.c" yy821: YYDEBUG(821, *YYCURSOR); ++YYCURSOR; @@ -7177,11 +7184,11 @@ yy821: } YYDEBUG(822, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 671 "Zend/zend_language_scanner.l" +#line 678 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 7185 "Zend/zend_language_scanner.c" +#line 7192 "Zend/zend_language_scanner.c" yy823: YYDEBUG(823, *YYCURSOR); yych = *++YYCURSOR; @@ -7195,11 +7202,11 @@ yy824: } YYDEBUG(825, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 890 "Zend/zend_language_scanner.l" +#line 897 "Zend/zend_language_scanner.l" { return T_EVAL; } -#line 7203 "Zend/zend_language_scanner.c" +#line 7210 "Zend/zend_language_scanner.c" yy826: YYDEBUG(826, *YYCURSOR); yych = *++YYCURSOR; @@ -7269,11 +7276,11 @@ yy835: } YYDEBUG(836, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 723 "Zend/zend_language_scanner.l" +#line 730 "Zend/zend_language_scanner.l" { return T_ENDWHILE; } -#line 7277 "Zend/zend_language_scanner.c" +#line 7284 "Zend/zend_language_scanner.c" yy837: YYDEBUG(837, *YYCURSOR); yych = *++YYCURSOR; @@ -7302,11 +7309,11 @@ yy841: } YYDEBUG(842, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 767 "Zend/zend_language_scanner.l" +#line 774 "Zend/zend_language_scanner.l" { return T_ENDSWITCH; } -#line 7310 "Zend/zend_language_scanner.c" +#line 7317 "Zend/zend_language_scanner.c" yy843: YYDEBUG(843, *YYCURSOR); ++YYCURSOR; @@ -7315,11 +7322,11 @@ yy843: } YYDEBUG(844, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 711 "Zend/zend_language_scanner.l" +#line 718 "Zend/zend_language_scanner.l" { return T_ENDIF; } -#line 7323 "Zend/zend_language_scanner.c" +#line 7330 "Zend/zend_language_scanner.c" yy845: YYDEBUG(845, *YYCURSOR); yych = *++YYCURSOR; @@ -7348,11 +7355,11 @@ yy846: yy847: YYDEBUG(847, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 735 "Zend/zend_language_scanner.l" +#line 742 "Zend/zend_language_scanner.l" { return T_ENDFOR; } -#line 7356 "Zend/zend_language_scanner.c" +#line 7363 "Zend/zend_language_scanner.c" yy848: YYDEBUG(848, *YYCURSOR); yych = *++YYCURSOR; @@ -7376,11 +7383,11 @@ yy851: } YYDEBUG(852, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 743 "Zend/zend_language_scanner.l" +#line 750 "Zend/zend_language_scanner.l" { return T_ENDFOREACH; } -#line 7384 "Zend/zend_language_scanner.c" +#line 7391 "Zend/zend_language_scanner.c" yy853: YYDEBUG(853, *YYCURSOR); yych = *++YYCURSOR; @@ -7414,11 +7421,11 @@ yy858: } YYDEBUG(859, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 751 "Zend/zend_language_scanner.l" +#line 758 "Zend/zend_language_scanner.l" { return T_ENDDECLARE; } -#line 7422 "Zend/zend_language_scanner.c" +#line 7429 "Zend/zend_language_scanner.c" yy860: YYDEBUG(860, *YYCURSOR); yych = *++YYCURSOR; @@ -7437,11 +7444,11 @@ yy862: } YYDEBUG(863, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 926 "Zend/zend_language_scanner.l" +#line 933 "Zend/zend_language_scanner.l" { return T_EMPTY; } -#line 7445 "Zend/zend_language_scanner.c" +#line 7452 "Zend/zend_language_scanner.c" yy864: YYDEBUG(864, *YYCURSOR); yych = *++YYCURSOR; @@ -7470,11 +7477,11 @@ yy865: yy866: YYDEBUG(866, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 715 "Zend/zend_language_scanner.l" +#line 722 "Zend/zend_language_scanner.l" { return T_ELSE; } -#line 7478 "Zend/zend_language_scanner.c" +#line 7485 "Zend/zend_language_scanner.c" yy867: YYDEBUG(867, *YYCURSOR); yych = *++YYCURSOR; @@ -7488,11 +7495,11 @@ yy868: } YYDEBUG(869, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 707 "Zend/zend_language_scanner.l" +#line 714 "Zend/zend_language_scanner.l" { return T_ELSEIF; } -#line 7496 "Zend/zend_language_scanner.c" +#line 7503 "Zend/zend_language_scanner.c" yy870: YYDEBUG(870, *YYCURSOR); yych = *++YYCURSOR; @@ -7506,11 +7513,11 @@ yy871: } YYDEBUG(872, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 791 "Zend/zend_language_scanner.l" +#line 798 "Zend/zend_language_scanner.l" { return T_ECHO; } -#line 7514 "Zend/zend_language_scanner.c" +#line 7521 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@ -7581,13 +7588,13 @@ yyc_ST_LOOKING_FOR_PROPERTY: yy876: YYDEBUG(876, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 836 "Zend/zend_language_scanner.l" +#line 843 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); goto restart; } -#line 7591 "Zend/zend_language_scanner.c" +#line 7598 "Zend/zend_language_scanner.c" yy877: YYDEBUG(877, *YYCURSOR); ++YYCURSOR; @@ -7596,12 +7603,12 @@ yy877: yy878: YYDEBUG(878, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 824 "Zend/zend_language_scanner.l" +#line 831 "Zend/zend_language_scanner.l" { /* do nothing */ goto restart; } -#line 7605 "Zend/zend_language_scanner.c" +#line 7612 "Zend/zend_language_scanner.c" yy879: YYDEBUG(879, *YYCURSOR); ++YYCURSOR; @@ -7610,14 +7617,14 @@ yy879: yy880: YYDEBUG(880, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 829 "Zend/zend_language_scanner.l" +#line 836 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 7621 "Zend/zend_language_scanner.c" +#line 7628 "Zend/zend_language_scanner.c" yy881: YYDEBUG(881, *YYCURSOR); yych = *++YYCURSOR; @@ -7649,11 +7656,11 @@ yy886: ++YYCURSOR; YYDEBUG(887, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 820 "Zend/zend_language_scanner.l" +#line 827 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } -#line 7657 "Zend/zend_language_scanner.c" +#line 7664 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_VARNAME: @@ -7712,7 +7719,7 @@ yy890: yy891: YYDEBUG(891, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1105 "Zend/zend_language_scanner.l" +#line 1112 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; @@ -7720,20 +7727,20 @@ yy891: yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } -#line 7724 "Zend/zend_language_scanner.c" +#line 7731 "Zend/zend_language_scanner.c" yy892: YYDEBUG(892, *YYCURSOR); ++YYCURSOR; YYDEBUG(893, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1114 "Zend/zend_language_scanner.l" +#line 1121 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } -#line 7737 "Zend/zend_language_scanner.c" +#line 7744 "Zend/zend_language_scanner.c" yy894: YYDEBUG(894, *YYCURSOR); ++YYCURSOR; @@ -8195,7 +8202,7 @@ yy931: ++YYCURSOR; YYDEBUG(932, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1858 "Zend/zend_language_scanner.l" +#line 1865 "Zend/zend_language_scanner.l" { char *end = yytext + yyleng - 1; @@ -8232,7 +8239,7 @@ yy931: yymore(); } } -#line 8236 "Zend/zend_language_scanner.c" +#line 8243 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_ONE_LINE_COMMENT: @@ -8289,11 +8296,11 @@ yy935: yy936: YYDEBUG(936, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1488 "Zend/zend_language_scanner.l" +#line 1495 "Zend/zend_language_scanner.l" { yymore(); } -#line 8297 "Zend/zend_language_scanner.c" +#line 8304 "Zend/zend_language_scanner.c" yy937: YYDEBUG(937, *YYCURSOR); yych = *++YYCURSOR; @@ -8316,7 +8323,7 @@ yy939: yy941: YYDEBUG(941, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1492 "Zend/zend_language_scanner.l" +#line 1499 "Zend/zend_language_scanner.l" { switch (yytext[yyleng-1]) { case '?': case '%': case '>': @@ -8334,7 +8341,7 @@ yy941: return T_COMMENT; } } -#line 8338 "Zend/zend_language_scanner.c" +#line 8345 "Zend/zend_language_scanner.c" yy942: YYDEBUG(942, *YYCURSOR); yych = *++YYCURSOR; @@ -8347,7 +8354,7 @@ yy943: ++YYCURSOR; YYDEBUG(945, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1510 "Zend/zend_language_scanner.l" +#line 1517 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -8356,7 +8363,7 @@ yy943: CG(zend_lineno)++; return T_COMMENT; } -#line 8360 "Zend/zend_language_scanner.c" +#line 8367 "Zend/zend_language_scanner.c" yy946: YYDEBUG(946, *YYCURSOR); yych = *++YYCURSOR; @@ -8366,7 +8373,7 @@ yy947: ++YYCURSOR; YYDEBUG(948, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1519 "Zend/zend_language_scanner.l" +#line 1526 "Zend/zend_language_scanner.l" { if (CG(asp_tags) || yytext[yyleng-2] != '%') { /* asp comment? */ zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -8380,7 +8387,7 @@ yy947: yymore(); } } -#line 8384 "Zend/zend_language_scanner.c" +#line 8391 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_START_HEREDOC: @@ -8437,13 +8444,13 @@ yy951: yy952: YYDEBUG(952, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1675 "Zend/zend_language_scanner.l" +#line 1682 "Zend/zend_language_scanner.l" { yyless(0); BEGIN(ST_HEREDOC); goto restart; } -#line 8447 "Zend/zend_language_scanner.c" +#line 8454 "Zend/zend_language_scanner.c" yy953: YYDEBUG(953, *YYCURSOR); yyaccept = 0; @@ -8488,7 +8495,7 @@ yy958: ++YYCURSOR; YYDEBUG(959, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1681 "Zend/zend_language_scanner.l" +#line 1688 "Zend/zend_language_scanner.l" { int label_len = yyleng - 1; @@ -8510,7 +8517,7 @@ yy958: yymore(); } } -#line 8514 "Zend/zend_language_scanner.c" +#line 8521 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_START_NOWDOC: @@ -8567,13 +8574,13 @@ yy962: yy963: YYDEBUG(963, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1832 "Zend/zend_language_scanner.l" +#line 1839 "Zend/zend_language_scanner.l" { yyless(0); BEGIN(ST_NOWDOC); goto restart; } -#line 8577 "Zend/zend_language_scanner.c" +#line 8584 "Zend/zend_language_scanner.c" yy964: YYDEBUG(964, *YYCURSOR); yyaccept = 0; @@ -8618,7 +8625,7 @@ yy969: ++YYCURSOR; YYDEBUG(970, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1838 "Zend/zend_language_scanner.l" +#line 1845 "Zend/zend_language_scanner.l" { int label_len = yyleng - 1; @@ -8638,7 +8645,7 @@ yy969: yymore(); } } -#line 8642 "Zend/zend_language_scanner.c" +#line 8649 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_VAR_OFFSET: @@ -8739,7 +8746,7 @@ yy973: yy974: YYDEBUG(974, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1164 "Zend/zend_language_scanner.l" +#line 1171 "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); @@ -8751,7 +8758,7 @@ yy974: } return T_NUM_STRING; } -#line 8755 "Zend/zend_language_scanner.c" +#line 8762 "Zend/zend_language_scanner.c" yy975: YYDEBUG(975, *YYCURSOR); yych = *++YYCURSOR; @@ -8771,23 +8778,23 @@ yy976: yy977: YYDEBUG(977, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1454 "Zend/zend_language_scanner.l" +#line 1461 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } -#line 8780 "Zend/zend_language_scanner.c" +#line 8787 "Zend/zend_language_scanner.c" yy978: YYDEBUG(978, *YYCURSOR); ++YYCURSOR; YYDEBUG(979, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1449 "Zend/zend_language_scanner.l" +#line 1456 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } -#line 8791 "Zend/zend_language_scanner.c" +#line 8798 "Zend/zend_language_scanner.c" yy980: YYDEBUG(980, *YYCURSOR); yych = *++YYCURSOR; @@ -8797,7 +8804,7 @@ yy981: ++YYCURSOR; YYDEBUG(982, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1459 "Zend/zend_language_scanner.l" +#line 1466 "Zend/zend_language_scanner.l" { /* Invalid rule to return a more explicit parse error with proper line number */ yyless(0); @@ -8805,7 +8812,7 @@ yy981: ZVAL_EMPTY_STRING(zendlval); /* Empty since it won't be used */ return T_ENCAPSED_AND_WHITESPACE; } -#line 8809 "Zend/zend_language_scanner.c" +#line 8816 "Zend/zend_language_scanner.c" yy983: YYDEBUG(983, *YYCURSOR); ++YYCURSOR; @@ -8814,24 +8821,24 @@ yy983: yy984: YYDEBUG(984, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1467 "Zend/zend_language_scanner.l" +#line 1474 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 8824 "Zend/zend_language_scanner.c" +#line 8831 "Zend/zend_language_scanner.c" yy985: YYDEBUG(985, *YYCURSOR); ++YYCURSOR; YYDEBUG(986, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1920 "Zend/zend_language_scanner.l" +#line 1927 "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 8835 "Zend/zend_language_scanner.c" +#line 8842 "Zend/zend_language_scanner.c" yy987: YYDEBUG(987, *YYCURSOR); ++YYCURSOR; @@ -8867,13 +8874,13 @@ yy989: yy991: YYDEBUG(991, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1443 "Zend/zend_language_scanner.l" +#line 1450 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 8877 "Zend/zend_language_scanner.c" +#line 8884 "Zend/zend_language_scanner.c" yy992: YYDEBUG(992, *YYCURSOR); ++YYCURSOR; @@ -8905,14 +8912,14 @@ yy996: yy998: YYDEBUG(998, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1176 "Zend/zend_language_scanner.l" +#line 1183 "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 8916 "Zend/zend_language_scanner.c" +#line 8923 "Zend/zend_language_scanner.c" yy999: YYDEBUG(999, *YYCURSOR); ++YYCURSOR; @@ -8925,6 +8932,6 @@ yy999: goto yy998; } } -#line 1925 "Zend/zend_language_scanner.l" +#line 1932 "Zend/zend_language_scanner.l" } diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index be2be3694c..182538dc1f 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -66,6 +66,13 @@ #define yyless(x) YYCURSOR = yytext + x #define yymore() goto yymore_restart +/* perform sanity check. If this message is triggered you should + increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */ +/*!max:re2c */ +#if ZEND_MMAP_AHEAD < YYMAXFILL +# error ZEND_MMAP_AHEAD should be greater than or equal to YYMAXFILL +#endif + #ifdef HAVE_STDARG_H # include <stdarg.h> #endif @@ -356,9 +363,9 @@ zend_op_array *compile_filename(int type, zval *filename TSRMLS_DC) ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_DC) { /* enforce two trailing NULLs for flex... */ - STR_REALLOC(str->value.str.val, str->value.str.len+2); + str->value.str.val = safe_erealloc(str->value.str.val, 1, str->value.str.len, ZEND_MMAP_AHEAD); - str->value.str.val[str->value.str.len+1]=0; + memset(str->value.str.val + str->value.str.len, 0, ZEND_MMAP_AHEAD); SCNG(yy_in)=NULL; diff --git a/Zend/zend_language_scanner_defs.h b/Zend/zend_language_scanner_defs.h index c6ce2554ac..bc7739cdc3 100644 --- a/Zend/zend_language_scanner_defs.h +++ b/Zend/zend_language_scanner_defs.h @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.4.dev on Wed Mar 26 23:08:45 2008 */ +/* Generated by re2c 0.13.4.dev on Fri Apr 4 15:52:47 2008 */ #line 3 "Zend/zend_language_scanner_defs.h" enum YYCONDTYPE { diff --git a/Zend/zend_stream.h b/Zend/zend_stream.h index fa84dec90b..5bb61c9a1e 100644 --- a/Zend/zend_stream.h +++ b/Zend/zend_stream.h @@ -31,7 +31,7 @@ typedef size_t (*zend_stream_fsizer_t)(void* handle TSRMLS_DC); typedef size_t (*zend_stream_reader_t)(void* handle, char *buf, size_t len TSRMLS_DC); typedef void (*zend_stream_closer_t)(void* handle TSRMLS_DC); -#define ZEND_MMAP_AHEAD 32 +#define ZEND_MMAP_AHEAD 16 typedef enum { ZEND_HANDLE_FILENAME, |