mirror of
https://github.com/php/php-src.git
synced 2026-04-16 04:21:18 +02:00
MFH Fix bug #45991 - UTF-8 BOM breaks ini parser
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* Generated by re2c 0.13.5 on Wed Nov 5 22:35:51 2008 */
|
||||
/* Generated by re2c 0.13.5 on Wed Dec 24 13:47:34 2008 */
|
||||
#line 1 "Zend/zend_ini_scanner.l"
|
||||
/*
|
||||
+----------------------------------------------------------------------+
|
||||
@@ -293,8 +293,15 @@ restart:
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Eat any UTF-8 BOM we find in the first 3 bytes */
|
||||
if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
|
||||
if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
|
||||
YYCURSOR += 3;
|
||||
goto restart;
|
||||
}
|
||||
}
|
||||
|
||||
#line 298 "Zend/zend_ini_scanner.c"
|
||||
#line 305 "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 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "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 467 "Zend/zend_ini_scanner.l"
|
||||
#line 474 "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 472 "Zend/zend_ini_scanner.l"
|
||||
#line 479 "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 422 "Zend/zend_ini_scanner.l"
|
||||
#line 429 "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);
|
||||
yyaccept = 1;
|
||||
@@ -532,11 +539,11 @@ yy12:
|
||||
yy13:
|
||||
YYDEBUG(13, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 382 "Zend/zend_ini_scanner.l"
|
||||
#line 389 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get option name */
|
||||
RETURN_TOKEN(TC_LABEL, yytext, yyleng);
|
||||
}
|
||||
#line 540 "Zend/zend_ini_scanner.c"
|
||||
#line 547 "Zend/zend_ini_scanner.c"
|
||||
yy14:
|
||||
YYDEBUG(14, *YYCURSOR);
|
||||
yyaccept = 1;
|
||||
@@ -550,7 +557,7 @@ yy15:
|
||||
yy16:
|
||||
YYDEBUG(16, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 386 "Zend/zend_ini_scanner.l"
|
||||
#line 393 "Zend/zend_ini_scanner.l"
|
||||
{ /* Start option value */
|
||||
if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
|
||||
yy_push_state(ST_RAW TSRMLS_CC);
|
||||
@@ -559,7 +566,7 @@ yy16:
|
||||
}
|
||||
return '=';
|
||||
}
|
||||
#line 563 "Zend/zend_ini_scanner.c"
|
||||
#line 570 "Zend/zend_ini_scanner.c"
|
||||
yy17:
|
||||
YYDEBUG(17, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -615,7 +622,7 @@ yy22:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(23, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 320 "Zend/zend_ini_scanner.l"
|
||||
#line 327 "Zend/zend_ini_scanner.l"
|
||||
{ /* Section start */
|
||||
/* Enter section data lookup state */
|
||||
if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
|
||||
@@ -625,7 +632,7 @@ yy22:
|
||||
}
|
||||
return TC_SECTION;
|
||||
}
|
||||
#line 629 "Zend/zend_ini_scanner.c"
|
||||
#line 636 "Zend/zend_ini_scanner.c"
|
||||
yy24:
|
||||
YYDEBUG(24, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -655,7 +662,7 @@ yy27:
|
||||
}
|
||||
YYDEBUG(29, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 345 "Zend/zend_ini_scanner.l"
|
||||
#line 352 "Zend/zend_ini_scanner.l"
|
||||
{ /* Start of option with offset */
|
||||
/* Eat trailing whitespace and [ */
|
||||
EAT_TRAILING_WHITESPACE_EX('[');
|
||||
@@ -665,7 +672,7 @@ yy27:
|
||||
|
||||
RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
|
||||
}
|
||||
#line 669 "Zend/zend_ini_scanner.c"
|
||||
#line 676 "Zend/zend_ini_scanner.c"
|
||||
yy30:
|
||||
YYDEBUG(30, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -677,11 +684,11 @@ yy30:
|
||||
yy31:
|
||||
YYDEBUG(31, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 374 "Zend/zend_ini_scanner.l"
|
||||
#line 381 "Zend/zend_ini_scanner.l"
|
||||
{ /* TRUE value (when used outside option value/offset this causes parse error!) */
|
||||
RETURN_TOKEN(BOOL_TRUE, "1", 1);
|
||||
}
|
||||
#line 685 "Zend/zend_ini_scanner.c"
|
||||
#line 692 "Zend/zend_ini_scanner.c"
|
||||
yy32:
|
||||
YYDEBUG(32, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -719,11 +726,11 @@ yy37:
|
||||
yy38:
|
||||
YYDEBUG(38, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 378 "Zend/zend_ini_scanner.l"
|
||||
#line 385 "Zend/zend_ini_scanner.l"
|
||||
{ /* FALSE value (when used outside option value/offset this causes parse error!)*/
|
||||
RETURN_TOKEN(BOOL_FALSE, "", 0);
|
||||
}
|
||||
#line 727 "Zend/zend_ini_scanner.c"
|
||||
#line 734 "Zend/zend_ini_scanner.c"
|
||||
yy39:
|
||||
YYDEBUG(39, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -818,13 +825,13 @@ yy52:
|
||||
yy53:
|
||||
YYDEBUG(53, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 477 "Zend/zend_ini_scanner.l"
|
||||
#line 484 "Zend/zend_ini_scanner.l"
|
||||
{ /* Comment */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 828 "Zend/zend_ini_scanner.c"
|
||||
#line 835 "Zend/zend_ini_scanner.c"
|
||||
yy54:
|
||||
YYDEBUG(54, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -846,14 +853,14 @@ yy57:
|
||||
yy58:
|
||||
YYDEBUG(58, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 483 "Zend/zend_ini_scanner.l"
|
||||
#line 490 "Zend/zend_ini_scanner.l"
|
||||
{ /* #Comment */
|
||||
zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 857 "Zend/zend_ini_scanner.c"
|
||||
#line 864 "Zend/zend_ini_scanner.c"
|
||||
yy59:
|
||||
YYDEBUG(59, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -950,7 +957,7 @@ yyc_ST_DOUBLE_QUOTES:
|
||||
yy67:
|
||||
YYDEBUG(67, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 449 "Zend/zend_ini_scanner.l"
|
||||
#line 456 "Zend/zend_ini_scanner.l"
|
||||
{ /* Escape double quoted string contents */
|
||||
if(yyleng > 1 && yytext[yyleng-1] == '"' && yytext[yyleng-2] == '\\') {
|
||||
yyless(yyleng-1);
|
||||
@@ -959,7 +966,7 @@ yy67:
|
||||
zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
|
||||
return TC_QUOTED_STRING;
|
||||
}
|
||||
#line 963 "Zend/zend_ini_scanner.c"
|
||||
#line 970 "Zend/zend_ini_scanner.c"
|
||||
yy68:
|
||||
YYDEBUG(68, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -968,12 +975,12 @@ yy68:
|
||||
yy69:
|
||||
YYDEBUG(69, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 458 "Zend/zend_ini_scanner.l"
|
||||
#line 465 "Zend/zend_ini_scanner.l"
|
||||
{ /* Double quoted '"' string ends */
|
||||
yy_pop_state(TSRMLS_C);
|
||||
return '"';
|
||||
}
|
||||
#line 977 "Zend/zend_ini_scanner.c"
|
||||
#line 984 "Zend/zend_ini_scanner.c"
|
||||
yy70:
|
||||
YYDEBUG(70, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -988,11 +995,11 @@ yy70:
|
||||
yy71:
|
||||
YYDEBUG(71, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#line 996 "Zend/zend_ini_scanner.c"
|
||||
#line 1003 "Zend/zend_ini_scanner.c"
|
||||
yy72:
|
||||
YYDEBUG(72, *YYCURSOR);
|
||||
yyaccept = 1;
|
||||
@@ -1108,12 +1115,12 @@ yy87:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(88, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 360 "Zend/zend_ini_scanner.l"
|
||||
#line 367 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable start */
|
||||
yy_push_state(ST_VARNAME TSRMLS_CC);
|
||||
return TC_DOLLAR_CURLY;
|
||||
}
|
||||
#line 1117 "Zend/zend_ini_scanner.c"
|
||||
#line 1124 "Zend/zend_ini_scanner.c"
|
||||
yy89:
|
||||
YYDEBUG(89, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -1212,11 +1219,11 @@ yy93:
|
||||
yy94:
|
||||
YYDEBUG(94, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 440 "Zend/zend_ini_scanner.l"
|
||||
#line 447 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get rest as section/offset value */
|
||||
RETURN_TOKEN(TC_STRING, yytext, yyleng);
|
||||
}
|
||||
#line 1220 "Zend/zend_ini_scanner.c"
|
||||
#line 1227 "Zend/zend_ini_scanner.c"
|
||||
yy95:
|
||||
YYDEBUG(95, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -1233,23 +1240,23 @@ yy96:
|
||||
yy97:
|
||||
YYDEBUG(97, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#line 1241 "Zend/zend_ini_scanner.c"
|
||||
#line 1248 "Zend/zend_ini_scanner.c"
|
||||
yy98:
|
||||
YYDEBUG(98, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
yy99:
|
||||
YYDEBUG(99, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 444 "Zend/zend_ini_scanner.l"
|
||||
#line 451 "Zend/zend_ini_scanner.l"
|
||||
{ /* Double quoted '"' string start */
|
||||
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
|
||||
return '"';
|
||||
}
|
||||
#line 1253 "Zend/zend_ini_scanner.c"
|
||||
#line 1260 "Zend/zend_ini_scanner.c"
|
||||
yy100:
|
||||
YYDEBUG(100, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -1311,11 +1318,11 @@ yy104:
|
||||
yy105:
|
||||
YYDEBUG(105, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 418 "Zend/zend_ini_scanner.l"
|
||||
#line 425 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get number option value as string */
|
||||
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
|
||||
}
|
||||
#line 1319 "Zend/zend_ini_scanner.c"
|
||||
#line 1326 "Zend/zend_ini_scanner.c"
|
||||
yy106:
|
||||
YYDEBUG(106, *YYCURSOR);
|
||||
yyaccept = 3;
|
||||
@@ -1341,11 +1348,11 @@ yy106:
|
||||
yy107:
|
||||
YYDEBUG(107, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 414 "Zend/zend_ini_scanner.l"
|
||||
#line 421 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get constant option value */
|
||||
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
|
||||
}
|
||||
#line 1349 "Zend/zend_ini_scanner.c"
|
||||
#line 1356 "Zend/zend_ini_scanner.c"
|
||||
yy108:
|
||||
YYDEBUG(108, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -1356,12 +1363,12 @@ yy109:
|
||||
yy110:
|
||||
YYDEBUG(110, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 355 "Zend/zend_ini_scanner.l"
|
||||
#line 362 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of section or an option offset */
|
||||
BEGIN(INITIAL);
|
||||
return ']';
|
||||
}
|
||||
#line 1365 "Zend/zend_ini_scanner.c"
|
||||
#line 1372 "Zend/zend_ini_scanner.c"
|
||||
yy111:
|
||||
YYDEBUG(111, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -1651,7 +1658,7 @@ yy132:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(135, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 330 "Zend/zend_ini_scanner.l"
|
||||
#line 337 "Zend/zend_ini_scanner.l"
|
||||
{ /* Raw string */
|
||||
/* Eat leading and trailing single quotes */
|
||||
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
|
||||
@@ -1660,18 +1667,18 @@ yy132:
|
||||
}
|
||||
RETURN_TOKEN(TC_RAW, yytext, yyleng);
|
||||
}
|
||||
#line 1664 "Zend/zend_ini_scanner.c"
|
||||
#line 1671 "Zend/zend_ini_scanner.c"
|
||||
yy136:
|
||||
YYDEBUG(136, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
YYDEBUG(137, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 360 "Zend/zend_ini_scanner.l"
|
||||
#line 367 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable start */
|
||||
yy_push_state(ST_VARNAME TSRMLS_CC);
|
||||
return TC_DOLLAR_CURLY;
|
||||
}
|
||||
#line 1675 "Zend/zend_ini_scanner.c"
|
||||
#line 1682 "Zend/zend_ini_scanner.c"
|
||||
yy138:
|
||||
YYDEBUG(138, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -1778,7 +1785,7 @@ yy144:
|
||||
yy145:
|
||||
YYDEBUG(145, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 395 "Zend/zend_ini_scanner.l"
|
||||
#line 402 "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] == '"') {
|
||||
@@ -1787,7 +1794,7 @@ yy145:
|
||||
}
|
||||
RETURN_TOKEN(TC_RAW, yytext, yyleng);
|
||||
}
|
||||
#line 1791 "Zend/zend_ini_scanner.c"
|
||||
#line 1798 "Zend/zend_ini_scanner.c"
|
||||
yy146:
|
||||
YYDEBUG(146, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -1809,13 +1816,13 @@ yy147:
|
||||
yy148:
|
||||
YYDEBUG(148, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 408 "Zend/zend_ini_scanner.l"
|
||||
#line 415 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of option value */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 1819 "Zend/zend_ini_scanner.c"
|
||||
#line 1826 "Zend/zend_ini_scanner.c"
|
||||
yy149:
|
||||
YYDEBUG(149, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -1829,12 +1836,12 @@ yy150:
|
||||
yy151:
|
||||
YYDEBUG(151, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 490 "Zend/zend_ini_scanner.l"
|
||||
#line 497 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of option value (if EOF is reached before EOL */
|
||||
BEGIN(INITIAL);
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 1838 "Zend/zend_ini_scanner.c"
|
||||
#line 1845 "Zend/zend_ini_scanner.c"
|
||||
yy152:
|
||||
YYDEBUG(152, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -1856,13 +1863,13 @@ yy155:
|
||||
yy156:
|
||||
YYDEBUG(156, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 477 "Zend/zend_ini_scanner.l"
|
||||
#line 484 "Zend/zend_ini_scanner.l"
|
||||
{ /* Comment */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 1866 "Zend/zend_ini_scanner.c"
|
||||
#line 1873 "Zend/zend_ini_scanner.c"
|
||||
yy157:
|
||||
YYDEBUG(157, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -1964,21 +1971,21 @@ yyc_ST_SECTION_RAW:
|
||||
yy167:
|
||||
YYDEBUG(167, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 404 "Zend/zend_ini_scanner.l"
|
||||
#line 411 "Zend/zend_ini_scanner.l"
|
||||
{ /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
|
||||
RETURN_TOKEN(TC_RAW, yytext, yyleng);
|
||||
}
|
||||
#line 1972 "Zend/zend_ini_scanner.c"
|
||||
#line 1979 "Zend/zend_ini_scanner.c"
|
||||
yy168:
|
||||
YYDEBUG(168, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
YYDEBUG(169, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#line 1982 "Zend/zend_ini_scanner.c"
|
||||
#line 1989 "Zend/zend_ini_scanner.c"
|
||||
yy170:
|
||||
YYDEBUG(170, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -1987,13 +1994,13 @@ yy170:
|
||||
yy171:
|
||||
YYDEBUG(171, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 339 "Zend/zend_ini_scanner.l"
|
||||
#line 346 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of section */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return ']';
|
||||
}
|
||||
#line 1997 "Zend/zend_ini_scanner.c"
|
||||
#line 2004 "Zend/zend_ini_scanner.c"
|
||||
yy172:
|
||||
YYDEBUG(172, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -2114,11 +2121,11 @@ yy180:
|
||||
yy181:
|
||||
YYDEBUG(181, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 440 "Zend/zend_ini_scanner.l"
|
||||
#line 447 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get rest as section/offset value */
|
||||
RETURN_TOKEN(TC_STRING, yytext, yyleng);
|
||||
}
|
||||
#line 2122 "Zend/zend_ini_scanner.c"
|
||||
#line 2129 "Zend/zend_ini_scanner.c"
|
||||
yy182:
|
||||
YYDEBUG(182, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -2137,23 +2144,23 @@ yy183:
|
||||
yy184:
|
||||
YYDEBUG(184, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#line 2145 "Zend/zend_ini_scanner.c"
|
||||
#line 2152 "Zend/zend_ini_scanner.c"
|
||||
yy185:
|
||||
YYDEBUG(185, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
yy186:
|
||||
YYDEBUG(186, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 444 "Zend/zend_ini_scanner.l"
|
||||
#line 451 "Zend/zend_ini_scanner.l"
|
||||
{ /* Double quoted '"' string start */
|
||||
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
|
||||
return '"';
|
||||
}
|
||||
#line 2157 "Zend/zend_ini_scanner.c"
|
||||
#line 2164 "Zend/zend_ini_scanner.c"
|
||||
yy187:
|
||||
YYDEBUG(187, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -2215,11 +2222,11 @@ yy191:
|
||||
yy192:
|
||||
YYDEBUG(192, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 418 "Zend/zend_ini_scanner.l"
|
||||
#line 425 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get number option value as string */
|
||||
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
|
||||
}
|
||||
#line 2223 "Zend/zend_ini_scanner.c"
|
||||
#line 2230 "Zend/zend_ini_scanner.c"
|
||||
yy193:
|
||||
YYDEBUG(193, *YYCURSOR);
|
||||
yyaccept = 3;
|
||||
@@ -2245,11 +2252,11 @@ yy193:
|
||||
yy194:
|
||||
YYDEBUG(194, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 414 "Zend/zend_ini_scanner.l"
|
||||
#line 421 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get constant option value */
|
||||
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
|
||||
}
|
||||
#line 2253 "Zend/zend_ini_scanner.c"
|
||||
#line 2260 "Zend/zend_ini_scanner.c"
|
||||
yy195:
|
||||
YYDEBUG(195, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -2262,13 +2269,13 @@ yy196:
|
||||
yy197:
|
||||
YYDEBUG(197, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 339 "Zend/zend_ini_scanner.l"
|
||||
#line 346 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of section */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return ']';
|
||||
}
|
||||
#line 2272 "Zend/zend_ini_scanner.c"
|
||||
#line 2279 "Zend/zend_ini_scanner.c"
|
||||
yy198:
|
||||
YYDEBUG(198, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -2580,7 +2587,7 @@ yy223:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(226, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 330 "Zend/zend_ini_scanner.l"
|
||||
#line 337 "Zend/zend_ini_scanner.l"
|
||||
{ /* Raw string */
|
||||
/* Eat leading and trailing single quotes */
|
||||
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
|
||||
@@ -2589,18 +2596,18 @@ yy223:
|
||||
}
|
||||
RETURN_TOKEN(TC_RAW, yytext, yyleng);
|
||||
}
|
||||
#line 2593 "Zend/zend_ini_scanner.c"
|
||||
#line 2600 "Zend/zend_ini_scanner.c"
|
||||
yy227:
|
||||
YYDEBUG(227, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
YYDEBUG(228, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 360 "Zend/zend_ini_scanner.l"
|
||||
#line 367 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable start */
|
||||
yy_push_state(ST_VARNAME TSRMLS_CC);
|
||||
return TC_DOLLAR_CURLY;
|
||||
}
|
||||
#line 2604 "Zend/zend_ini_scanner.c"
|
||||
#line 2611 "Zend/zend_ini_scanner.c"
|
||||
yy229:
|
||||
YYDEBUG(229, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -2779,12 +2786,12 @@ yy234:
|
||||
yy235:
|
||||
YYDEBUG(235, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 490 "Zend/zend_ini_scanner.l"
|
||||
#line 497 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of option value (if EOF is reached before EOL */
|
||||
BEGIN(INITIAL);
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 2788 "Zend/zend_ini_scanner.c"
|
||||
#line 2795 "Zend/zend_ini_scanner.c"
|
||||
yy236:
|
||||
YYDEBUG(236, *YYCURSOR);
|
||||
yyaccept = 0;
|
||||
@@ -2793,11 +2800,11 @@ yy236:
|
||||
yy237:
|
||||
YYDEBUG(237, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 436 "Zend/zend_ini_scanner.l"
|
||||
#line 443 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get everything else as option/offset value */
|
||||
RETURN_TOKEN(TC_STRING, yytext, yyleng);
|
||||
}
|
||||
#line 2801 "Zend/zend_ini_scanner.c"
|
||||
#line 2808 "Zend/zend_ini_scanner.c"
|
||||
yy238:
|
||||
YYDEBUG(238, *YYCURSOR);
|
||||
yyaccept = 1;
|
||||
@@ -2806,24 +2813,24 @@ yy238:
|
||||
yy239:
|
||||
YYDEBUG(239, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 463 "Zend/zend_ini_scanner.l"
|
||||
#line 470 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
|
||||
}
|
||||
#line 2814 "Zend/zend_ini_scanner.c"
|
||||
#line 2821 "Zend/zend_ini_scanner.c"
|
||||
yy240:
|
||||
YYDEBUG(240, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
yy241:
|
||||
YYDEBUG(241, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 408 "Zend/zend_ini_scanner.l"
|
||||
#line 415 "Zend/zend_ini_scanner.l"
|
||||
{ /* End of option value */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 2827 "Zend/zend_ini_scanner.c"
|
||||
#line 2834 "Zend/zend_ini_scanner.c"
|
||||
yy242:
|
||||
YYDEBUG(242, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -2837,23 +2844,23 @@ yy243:
|
||||
yy244:
|
||||
YYDEBUG(244, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 426 "Zend/zend_ini_scanner.l"
|
||||
#line 433 "Zend/zend_ini_scanner.l"
|
||||
{ /* Boolean operators */
|
||||
return yytext[0];
|
||||
}
|
||||
#line 2845 "Zend/zend_ini_scanner.c"
|
||||
#line 2852 "Zend/zend_ini_scanner.c"
|
||||
yy245:
|
||||
YYDEBUG(245, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
yy246:
|
||||
YYDEBUG(246, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 444 "Zend/zend_ini_scanner.l"
|
||||
#line 451 "Zend/zend_ini_scanner.l"
|
||||
{ /* Double quoted '"' string start */
|
||||
yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
|
||||
return '"';
|
||||
}
|
||||
#line 2857 "Zend/zend_ini_scanner.c"
|
||||
#line 2864 "Zend/zend_ini_scanner.c"
|
||||
yy247:
|
||||
YYDEBUG(247, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -2929,11 +2936,11 @@ yy251:
|
||||
yy252:
|
||||
YYDEBUG(252, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 418 "Zend/zend_ini_scanner.l"
|
||||
#line 425 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get number option value as string */
|
||||
RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
|
||||
}
|
||||
#line 2937 "Zend/zend_ini_scanner.c"
|
||||
#line 2944 "Zend/zend_ini_scanner.c"
|
||||
yy253:
|
||||
YYDEBUG(253, *YYCURSOR);
|
||||
yyaccept = 2;
|
||||
@@ -2944,13 +2951,13 @@ yy254:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(255, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 430 "Zend/zend_ini_scanner.l"
|
||||
#line 437 "Zend/zend_ini_scanner.l"
|
||||
{ /* Make = used in option value to trigger error */
|
||||
yyless(0);
|
||||
BEGIN(INITIAL);
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 2954 "Zend/zend_ini_scanner.c"
|
||||
#line 2961 "Zend/zend_ini_scanner.c"
|
||||
yy256:
|
||||
YYDEBUG(256, *YYCURSOR);
|
||||
yyaccept = 4;
|
||||
@@ -2986,11 +2993,11 @@ yy256:
|
||||
yy257:
|
||||
YYDEBUG(257, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 414 "Zend/zend_ini_scanner.l"
|
||||
#line 421 "Zend/zend_ini_scanner.l"
|
||||
{ /* Get constant option value */
|
||||
RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
|
||||
}
|
||||
#line 2994 "Zend/zend_ini_scanner.c"
|
||||
#line 3001 "Zend/zend_ini_scanner.c"
|
||||
yy258:
|
||||
YYDEBUG(258, *YYCURSOR);
|
||||
yyaccept = 4;
|
||||
@@ -3482,11 +3489,11 @@ yy273:
|
||||
yy274:
|
||||
YYDEBUG(274, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 374 "Zend/zend_ini_scanner.l"
|
||||
#line 381 "Zend/zend_ini_scanner.l"
|
||||
{ /* TRUE value (when used outside option value/offset this causes parse error!) */
|
||||
RETURN_TOKEN(BOOL_TRUE, "1", 1);
|
||||
}
|
||||
#line 3490 "Zend/zend_ini_scanner.c"
|
||||
#line 3497 "Zend/zend_ini_scanner.c"
|
||||
yy275:
|
||||
YYDEBUG(275, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -3686,11 +3693,11 @@ yy280:
|
||||
yy281:
|
||||
YYDEBUG(281, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 378 "Zend/zend_ini_scanner.l"
|
||||
#line 385 "Zend/zend_ini_scanner.l"
|
||||
{ /* FALSE value (when used outside option value/offset this causes parse error!)*/
|
||||
RETURN_TOKEN(BOOL_FALSE, "", 0);
|
||||
}
|
||||
#line 3694 "Zend/zend_ini_scanner.c"
|
||||
#line 3701 "Zend/zend_ini_scanner.c"
|
||||
yy282:
|
||||
YYDEBUG(282, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -4066,13 +4073,13 @@ yy293:
|
||||
yy294:
|
||||
YYDEBUG(294, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 477 "Zend/zend_ini_scanner.l"
|
||||
#line 484 "Zend/zend_ini_scanner.l"
|
||||
{ /* Comment */
|
||||
BEGIN(INITIAL);
|
||||
SCNG(lineno)++;
|
||||
return END_OF_LINE;
|
||||
}
|
||||
#line 4076 "Zend/zend_ini_scanner.c"
|
||||
#line 4083 "Zend/zend_ini_scanner.c"
|
||||
yy295:
|
||||
YYDEBUG(295, *YYCURSOR);
|
||||
yych = *++YYCURSOR;
|
||||
@@ -4284,7 +4291,7 @@ yy304:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(307, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 330 "Zend/zend_ini_scanner.l"
|
||||
#line 337 "Zend/zend_ini_scanner.l"
|
||||
{ /* Raw string */
|
||||
/* Eat leading and trailing single quotes */
|
||||
if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
|
||||
@@ -4293,18 +4300,18 @@ yy304:
|
||||
}
|
||||
RETURN_TOKEN(TC_RAW, yytext, yyleng);
|
||||
}
|
||||
#line 4297 "Zend/zend_ini_scanner.c"
|
||||
#line 4304 "Zend/zend_ini_scanner.c"
|
||||
yy308:
|
||||
YYDEBUG(308, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
YYDEBUG(309, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 360 "Zend/zend_ini_scanner.l"
|
||||
#line 367 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable start */
|
||||
yy_push_state(ST_VARNAME TSRMLS_CC);
|
||||
return TC_DOLLAR_CURLY;
|
||||
}
|
||||
#line 4308 "Zend/zend_ini_scanner.c"
|
||||
#line 4315 "Zend/zend_ini_scanner.c"
|
||||
yy310:
|
||||
YYDEBUG(310, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -4413,11 +4420,11 @@ yy319:
|
||||
++YYCURSOR;
|
||||
YYDEBUG(320, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 495 "Zend/zend_ini_scanner.l"
|
||||
#line 502 "Zend/zend_ini_scanner.l"
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#line 4421 "Zend/zend_ini_scanner.c"
|
||||
#line 4428 "Zend/zend_ini_scanner.c"
|
||||
yy321:
|
||||
YYDEBUG(321, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -4426,22 +4433,22 @@ yy321:
|
||||
yy322:
|
||||
YYDEBUG(322, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 365 "Zend/zend_ini_scanner.l"
|
||||
#line 372 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable name */
|
||||
RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
|
||||
}
|
||||
#line 4434 "Zend/zend_ini_scanner.c"
|
||||
#line 4441 "Zend/zend_ini_scanner.c"
|
||||
yy323:
|
||||
YYDEBUG(323, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
YYDEBUG(324, *YYCURSOR);
|
||||
yyleng = YYCURSOR - SCNG(yy_text);
|
||||
#line 369 "Zend/zend_ini_scanner.l"
|
||||
#line 376 "Zend/zend_ini_scanner.l"
|
||||
{ /* Variable end */
|
||||
yy_pop_state(TSRMLS_C);
|
||||
return '}';
|
||||
}
|
||||
#line 4445 "Zend/zend_ini_scanner.c"
|
||||
#line 4452 "Zend/zend_ini_scanner.c"
|
||||
yy325:
|
||||
YYDEBUG(325, *YYCURSOR);
|
||||
++YYCURSOR;
|
||||
@@ -4455,6 +4462,6 @@ yy326:
|
||||
goto yy322;
|
||||
}
|
||||
}
|
||||
#line 499 "Zend/zend_ini_scanner.l"
|
||||
#line 506 "Zend/zend_ini_scanner.l"
|
||||
|
||||
}
|
||||
|
||||
@@ -291,6 +291,13 @@ restart:
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Eat any UTF-8 BOM we find in the first 3 bytes */
|
||||
if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
|
||||
if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
|
||||
YYCURSOR += 3;
|
||||
goto restart;
|
||||
}
|
||||
}
|
||||
/*!re2c
|
||||
re2c:yyfill:check = 0;
|
||||
LNUM [0-9]+
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* Generated by re2c 0.13.5 on Wed Nov 5 22:35:51 2008 */
|
||||
/* Generated by re2c 0.13.5 on Wed Dec 24 13:47:34 2008 */
|
||||
#line 3 "Zend/zend_ini_scanner_defs.h"
|
||||
|
||||
enum YYCONDTYPE {
|
||||
|
||||
Reference in New Issue
Block a user