diff options
author | Pierrick Charron <pierrick@php.net> | 2010-07-12 13:32:00 +0000 |
---|---|---|
committer | Pierrick Charron <pierrick@php.net> | 2010-07-12 13:32:00 +0000 |
commit | 96d49e4d5b82aad0514687de03f2293417104ee1 (patch) | |
tree | d2153efc092248d8a2d232c6d578c55cee1af8f6 | |
parent | 6f32b2cda4bf8b24eebddea830a834683b86097b (diff) | |
download | php-git-96d49e4d5b82aad0514687de03f2293417104ee1.tar.gz |
Lemon version of the zend_ini_parser
-rw-r--r-- | Makefile.frag | 4 | ||||
-rw-r--r-- | Zend/Makefile.am | 2 | ||||
-rw-r--r-- | Zend/zend_ini.h | 1 | ||||
-rw-r--r-- | Zend/zend_ini_parser.y | 329 | ||||
-rw-r--r-- | Zend/zend_ini_scanner.c | 1878 | ||||
-rw-r--r-- | Zend/zend_ini_scanner.l | 54 | ||||
-rw-r--r-- | Zend/zend_ini_scanner_defs.h | 2 |
7 files changed, 1198 insertions, 1072 deletions
diff --git a/Makefile.frag b/Makefile.frag index 3e4d206aaa..669e2e1e9a 100644 --- a/Makefile.frag +++ b/Makefile.frag @@ -19,8 +19,8 @@ $(srcdir)/zend_language_parser.c: lemon $(srcdir)/zend_language_parser.y $(LEMON) $(LEMON_FLAGS) $(srcdir)/zend_language_parser.y || test $$? -eq 2 $(srcdir)/zend_ini_parser.h: $(srcdir)/zend_ini_parser.c -$(srcdir)/zend_ini_parser.c: $(srcdir)/zend_ini_parser.y - @$(YACC) -p ini_ -v -d $(srcdir)/zend_ini_parser.y -o $@ +$(srcdir)/zend_ini_parser.c: lemon $(srcdir)/zend_ini_parser.y + @$(LEMON) $(LEMON_FLAGS) $(srcdir)/zend_ini_parser.y $(srcdir)/zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l @(cd $(top_srcdir); $(RE2C) $(RE2C_FLAGS) --case-inverted -cbdFt Zend/zend_ini_scanner_defs.h -oZend/zend_ini_scanner.c Zend/zend_ini_scanner.l) diff --git a/Zend/Makefile.am b/Zend/Makefile.am index d3c9155d13..ae0f768fb1 100644 --- a/Zend/Makefile.am +++ b/Zend/Makefile.am @@ -41,7 +41,7 @@ zend_language_parser.c: $(srcdir)/zend_language_parser.y # INI parser/scanner rules zend_ini_parser.c: $(srcdir)/zend_ini_parser.y - $(YACC) -p ini_ -v -d $(srcdir)/zend_ini_parser.y -o zend_ini_parser.c + $(LEMON) $(LEMON_FLAGS) $(srcdir)/zend_ini_parser.y zend_ini_scanner.c: $(srcdir)/zend_ini_scanner.l $(RE2C) $(RE2C_FLAGS) --case-inverted -cbdFt $(srcdir)/zend_ini_scanner_defs.h -o$@ $(srcdir)/zend_ini_scanner.l diff --git a/Zend/zend_ini.h b/Zend/zend_ini.h index ccc5414632..fd3e26dd24 100644 --- a/Zend/zend_ini.h +++ b/Zend/zend_ini.h @@ -208,6 +208,7 @@ END_EXTERN_C() typedef struct _zend_ini_parser_param { zend_ini_parser_cb_t ini_parser_cb; void *arg; + zend_bool syntax_error; } zend_ini_parser_param; #endif /* ZEND_INI_H */ diff --git a/Zend/zend_ini_parser.y b/Zend/zend_ini_parser.y index 0e81b29f7e..97b08246ad 100644 --- a/Zend/zend_ini_parser.y +++ b/Zend/zend_ini_parser.y @@ -1,4 +1,4 @@ -%{ +%include{ /* +----------------------------------------------------------------------+ | Zend Engine | @@ -13,7 +13,9 @@ | obtain it through the world-wide-web, please send a note to | | license@zend.com so we can mail you a copy immediately. | +----------------------------------------------------------------------+ - | Authors: Zeev Suraski <zeev@zend.com> | + | Author: Pierrick Charron <pierrick@php.net> | + | Yacc version authors: | + | Zeev Suraski <zeev@zend.com> | | Jani Taskinen <jani@php.net> | +----------------------------------------------------------------------+ */ @@ -29,19 +31,15 @@ #include "zend_ini_scanner.h" #include "zend_extensions.h" -#define YYERROR_VERBOSE -#define YYSTYPE zval - -#ifdef ZTS -#define YYPARSE_PARAM tsrm_ls -#define YYLEX_PARAM tsrm_ls -int ini_parse(void *arg); -#else -int ini_parse(void); -#endif +#define NDEBUG #define ZEND_INI_PARSER_CB (CG(ini_parser_param))->ini_parser_cb #define ZEND_INI_PARSER_ARG (CG(ini_parser_param))->arg +#define ZEND_INI_PARSER_SE (CG(ini_parser_param))->syntax_error + +void *zend_ini_parseAlloc(void *(*mallocProc)(size_t)); +void zend_ini_parseFree(void *p, void (*freeProc)(void*)); +void zend_ini_parse(void *yyp, int yymajor, zval yyminor TSRMLS_DC); /* {{{ zend_ini_do_op() */ @@ -144,49 +142,19 @@ static void zend_ini_get_var(zval *result, zval *name TSRMLS_DC) if (zend_get_configuration_directive(Z_STRVAL_P(name), Z_STRLEN_P(name)+1, &curval) == SUCCESS) { Z_STRVAL_P(result) = zend_strndup(Z_STRVAL(curval), Z_STRLEN(curval)); Z_STRLEN_P(result) = Z_STRLEN(curval); + Z_TYPE_P(result) = IS_STRING; /* ..or if not found, try ENV */ } else if ((envvar = zend_getenv(Z_STRVAL_P(name), Z_STRLEN_P(name) TSRMLS_CC)) != NULL || (envvar = getenv(Z_STRVAL_P(name))) != NULL) { Z_STRVAL_P(result) = strdup(envvar); Z_STRLEN_P(result) = strlen(envvar); + Z_TYPE_P(result) = IS_STRING; } else { zend_ini_init_string(result); } } /* }}} */ -/* {{{ ini_error() -*/ -static void ini_error(char *msg) -{ - char *error_buf; - int error_buf_len; - char *currently_parsed_filename; - TSRMLS_FETCH(); - - currently_parsed_filename = zend_ini_scanner_get_filename(TSRMLS_C); - if (currently_parsed_filename) { - error_buf_len = 128 + strlen(msg) + strlen(currently_parsed_filename); /* should be more than enough */ - error_buf = (char *) emalloc(error_buf_len); - - sprintf(error_buf, "%s in %s on line %d\n", msg, currently_parsed_filename, zend_ini_scanner_get_lineno(TSRMLS_C)); - } else { - error_buf = estrdup("Invalid configuration directive\n"); - } - - if (CG(ini_parser_unbuffered_errors)) { -#ifdef PHP_WIN32 - MessageBox(NULL, error_buf, "PHP Error", MB_OK|MB_TOPMOST|0x00200000L); -#else - fprintf(stderr, "PHP: %s", error_buf); -#endif - } else { - zend_error(E_WARNING, "%s", error_buf); - } - efree(error_buf); -} -/* }}} */ - /* {{{ zend_parse_ini_file() */ ZEND_API int zend_parse_ini_file(zend_file_handle *fh, zend_bool unbuffered_errors, int scanner_mode, zend_ini_parser_cb_t ini_parser_cb, void *arg TSRMLS_DC) @@ -196,6 +164,7 @@ ZEND_API int zend_parse_ini_file(zend_file_handle *fh, zend_bool unbuffered_erro ini_parser_param.ini_parser_cb = ini_parser_cb; ini_parser_param.arg = arg; + ini_parser_param.syntax_error = 0; CG(ini_parser_param) = &ini_parser_param; if (zend_ini_open_file_for_scanning(fh, scanner_mode TSRMLS_CC) == FAILURE) { @@ -225,6 +194,7 @@ ZEND_API int zend_parse_ini_string(char *str, zend_bool unbuffered_errors, int s ini_parser_param.ini_parser_cb = ini_parser_cb; ini_parser_param.arg = arg; + ini_parser_param.syntax_error = 0; CG(ini_parser_param) = &ini_parser_param; if (zend_ini_prepare_string_for_scanning(str, scanner_mode TSRMLS_CC) == FAILURE) { @@ -244,134 +214,161 @@ ZEND_API int zend_parse_ini_string(char *str, zend_bool unbuffered_errors, int s } /* }}} */ -%} - -%expect 0 -%pure_parser - -%token TC_SECTION -%token TC_RAW -%token TC_CONSTANT -%token TC_NUMBER -%token TC_STRING -%token TC_WHITESPACE -%token TC_LABEL -%token TC_OFFSET -%token TC_DOLLAR_CURLY -%token TC_VARNAME -%token TC_QUOTED_STRING -%token BOOL_TRUE -%token BOOL_FALSE -%token END_OF_LINE -%token '=' ':' ',' '.' '"' '\'' '^' '+' '-' '/' '*' '%' '$' '~' '<' '>' '?' '@' '{' '}' -%left '|' '&' -%right '~' '!' - -%% - -statement_list: - statement_list statement - | /* empty */ -; - -statement: - TC_SECTION section_string_or_value ']' { +int ini_parse(TSRMLS_D) /* {{{ */ +{ + int token; + void *pParser = zend_ini_parseAlloc(malloc); + + if (pParser == NULL) { + zend_ini_parseFree(pParser, free); + return 1; + } + + while (1) { + zval zendval; + token = ini_lex(&zendval TSRMLS_CC); + zend_ini_parse(pParser, token, zendval TSRMLS_CC); + + if (token == 0 || ZEND_INI_PARSER_SE) { + break; + } + } + + zend_ini_parseFree(pParser, free); + if (ZEND_INI_PARSER_SE) { + return 1; + } else { + return 0; + } +} +/* }}} */ + +} + +%syntax_error { + char *error_buf; + int error_buf_len; + char *currently_parsed_filename; + TSRMLS_FETCH(); + + ZEND_INI_PARSER_SE = 1; + + currently_parsed_filename = zend_ini_scanner_get_filename(TSRMLS_C); + if (currently_parsed_filename) { + error_buf_len = 128 + INI_SCNG(yy_leng) + strlen(currently_parsed_filename); /* should be more than enough */ + error_buf = (char *) emalloc(error_buf_len); + sprintf(error_buf, "syntax error, unexpected '%.*s' in %s on line %d\n", INI_SCNG(yy_leng), INI_SCNG(yy_text), currently_parsed_filename, zend_ini_scanner_get_lineno(TSRMLS_C)); + } else { + error_buf = estrdup("Invalid configuration directive\n"); + } + + if (CG(ini_parser_unbuffered_errors)) { +#ifdef PHP_WIN32 + MessageBox(NULL, error_buf, "PHP Error", MB_OK|MB_TOPMOST|0x00200000L); +#else + fprintf(stderr, "PHP: %s", error_buf); +#endif + } else { + zend_error(E_WARNING, "%s", error_buf); + } + efree(error_buf); +} + +%token_type {zval} + +%name zend_ini_parse + +%ifdef ZTS + %extra_argument {void ***tsrm_ls} +%endif + +%token_prefix TC_ + +/* Precedences */ +%left BW_OR BW_AND. +%right BW_NOT BOOL_NOT. + +start ::= statement_list. + +statement_list ::= statement_list statement. +statement_list ::= . + +statement ::= SECTION section_string_or_value(C) RBRACKET. { #if DEBUG_CFG_PARSER - printf("SECTION: [%s]\n", Z_STRVAL($2)); + printf("SECTION: [%s]\n", Z_STRVAL(C)); #endif - ZEND_INI_PARSER_CB(&$2, NULL, NULL, ZEND_INI_PARSER_SECTION, ZEND_INI_PARSER_ARG TSRMLS_CC); - free(Z_STRVAL($2)); - } - | TC_LABEL '=' string_or_value { + ZEND_INI_PARSER_CB(&C, NULL, NULL, ZEND_INI_PARSER_SECTION, ZEND_INI_PARSER_ARG TSRMLS_CC); + free(Z_STRVAL(C)); +} +statement ::= LABEL(B) EQUAL string_or_value(D). { #if DEBUG_CFG_PARSER - printf("NORMAL: '%s' = '%s'\n", Z_STRVAL($1), Z_STRVAL($3)); + printf("NORMAL: '%s' = '%s'\n", Z_STRVAL(B), Z_STRVAL(D)); #endif - ZEND_INI_PARSER_CB(&$1, &$3, NULL, ZEND_INI_PARSER_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); - free(Z_STRVAL($1)); - free(Z_STRVAL($3)); - } - | TC_OFFSET option_offset ']' '=' string_or_value { + ZEND_INI_PARSER_CB(&B, &D, NULL, ZEND_INI_PARSER_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); + free(Z_STRVAL(B)); + free(Z_STRVAL(D)); +} +statement ::= OFFSET(B) option_offset(C) RBRACKET EQUAL string_or_value(F). { #if DEBUG_CFG_PARSER - printf("OFFSET: '%s'[%s] = '%s'\n", Z_STRVAL($1), Z_STRVAL($2), Z_STRVAL($5)); + printf("OFFSET: '%s'[%s] = '%s'\n", Z_STRVAL(B), Z_STRVAL(C), Z_STRVAL(F)); #endif - ZEND_INI_PARSER_CB(&$1, &$5, &$2, ZEND_INI_PARSER_POP_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); - free(Z_STRVAL($1)); - free(Z_STRVAL($2)); - free(Z_STRVAL($5)); - } - | TC_LABEL { ZEND_INI_PARSER_CB(&$1, NULL, NULL, ZEND_INI_PARSER_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); free(Z_STRVAL($1)); } - | END_OF_LINE -; - -section_string_or_value: - var_string_list_section { $$ = $1; } - | /* empty */ { zend_ini_init_string(&$$); } -; - -string_or_value: - expr { $$ = $1; } - | BOOL_TRUE { $$ = $1; } - | BOOL_FALSE { $$ = $1; } - | END_OF_LINE { zend_ini_init_string(&$$); } -; - -option_offset: - var_string_list { $$ = $1; } - | /* empty */ { zend_ini_init_string(&$$); } -; - -encapsed_list: - encapsed_list cfg_var_ref { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | encapsed_list TC_QUOTED_STRING { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | /* empty */ { zend_ini_init_string(&$$); } -; - -var_string_list_section: - cfg_var_ref { $$ = $1; } - | constant_literal { $$ = $1; } - | '"' encapsed_list '"' { $$ = $2; } - | var_string_list_section cfg_var_ref { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | var_string_list_section constant_literal { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | var_string_list_section '"' encapsed_list '"' { zend_ini_add_string(&$$, &$1, &$3); free(Z_STRVAL($3)); } -; - -var_string_list: - cfg_var_ref { $$ = $1; } - | constant_string { $$ = $1; } - | '"' encapsed_list '"' { $$ = $2; } - | var_string_list cfg_var_ref { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | var_string_list constant_string { zend_ini_add_string(&$$, &$1, &$2); free(Z_STRVAL($2)); } - | var_string_list '"' encapsed_list '"' { zend_ini_add_string(&$$, &$1, &$3); free(Z_STRVAL($3)); } -; - -expr: - var_string_list { $$ = $1; } - | expr '|' expr { zend_ini_do_op('|', &$$, &$1, &$3); } - | expr '&' expr { zend_ini_do_op('&', &$$, &$1, &$3); } - | '~' expr { zend_ini_do_op('~', &$$, &$2, NULL); } - | '!' expr { zend_ini_do_op('!', &$$, &$2, NULL); } - | '(' expr ')' { $$ = $2; } -; - -cfg_var_ref: - TC_DOLLAR_CURLY TC_VARNAME '}' { zend_ini_get_var(&$$, &$2 TSRMLS_CC); free(Z_STRVAL($2)); } -; - -constant_literal: - TC_CONSTANT { $$ = $1; } - | TC_RAW { $$ = $1; /*printf("TC_RAW: '%s'\n", Z_STRVAL($1));*/ } - | TC_NUMBER { $$ = $1; /*printf("TC_NUMBER: '%s'\n", Z_STRVAL($1));*/ } - | TC_STRING { $$ = $1; /*printf("TC_STRING: '%s'\n", Z_STRVAL($1));*/ } - | TC_WHITESPACE { $$ = $1; /*printf("TC_WHITESPACE: '%s'\n", Z_STRVAL($1));*/ } -; - -constant_string: - TC_CONSTANT { zend_ini_get_constant(&$$, &$1 TSRMLS_CC); } - | TC_RAW { $$ = $1; /*printf("TC_RAW: '%s'\n", Z_STRVAL($1));*/ } - | TC_NUMBER { $$ = $1; /*printf("TC_NUMBER: '%s'\n", Z_STRVAL($1));*/ } - | TC_STRING { $$ = $1; /*printf("TC_STRING: '%s'\n", Z_STRVAL($1));*/ } - | TC_WHITESPACE { $$ = $1; /*printf("TC_WHITESPACE: '%s'\n", Z_STRVAL($1));*/ } -; + ZEND_INI_PARSER_CB(&B, &F, &C, ZEND_INI_PARSER_POP_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); + free(Z_STRVAL(B)); + free(Z_STRVAL(C)); + free(Z_STRVAL(F)); +} +statement ::= LABEL(B). { ZEND_INI_PARSER_CB(&B, NULL, NULL, ZEND_INI_PARSER_ENTRY, ZEND_INI_PARSER_ARG TSRMLS_CC); free(Z_STRVAL(B)); } +statement ::= END_OF_LINE. + +section_string_or_value(A) ::= var_string_list_section(B). { A = B; } +section_string_or_value(A) ::= . { zend_ini_init_string(&A); } + +string_or_value(A) ::= expr(B). { A = B; } +string_or_value(A) ::= BOOL_TRUE(B). { A = B; } +string_or_value(A) ::= BOOL_FALSE(B). { A = B; } +string_or_value(A) ::= END_OF_LINE. { zend_ini_init_string(&A); } + +option_offset(A) ::= var_string_list(B). { A = B; } +option_offset(A) ::= . { zend_ini_init_string(&A); } + +encapsed_list(A) ::= encapsed_list(B) cfg_var_ref(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +encapsed_list(A) ::= encapsed_list(B) QUOTED_STRING(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +encapsed_list(A) ::= . { zend_ini_init_string(&A); } + +var_string_list_section(A) ::= cfg_var_ref(B). { A = B; } +var_string_list_section(A) ::= constant_literal(B). { A = B; } +var_string_list_section(A) ::= QUOTE encapsed_list(C) QUOTE. { A = C; } +var_string_list_section(A) ::= var_string_list_section(B) cfg_var_ref(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +var_string_list_section(A) ::= var_string_list_section(B) constant_literal(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +var_string_list_section(A) ::= var_string_list_section(B) QUOTE encapsed_list(D) QUOTE. { zend_ini_add_string(&A, &B, &D); free(Z_STRVAL(D)); } + +var_string_list(A) ::= cfg_var_ref(B). { A = B; } +var_string_list(A) ::= constant_string(B). { A = B; } +var_string_list(A) ::= QUOTE encapsed_list(C) QUOTE. { A = C; } +var_string_list(A) ::= var_string_list(B) cfg_var_ref(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +var_string_list(A) ::= var_string_list(B) constant_string(C). { zend_ini_add_string(&A, &B, &C); free(Z_STRVAL(C)); } +var_string_list(A) ::= var_string_list(B) QUOTE encapsed_list(D) QUOTE. { zend_ini_add_string(&A, &B, &D); free(Z_STRVAL(D)); } + +expr(A) ::= var_string_list(B). { A = B; } +expr(A) ::= expr(B) BW_OR expr(D). { zend_ini_do_op('|', &A, &B, &D); } +expr(A) ::= expr(B) BW_AND expr(D). { zend_ini_do_op('&', &A, &B, &D); } +expr(A) ::= BW_NOT expr(C). { zend_ini_do_op('~', &A, &C, NULL); } +expr(A) ::= BOOL_NOT expr(C). { zend_ini_do_op('!', &A, &C, NULL); } +expr(A) ::= LPAREN expr(C) RPAREN. { A = C; } + +cfg_var_ref(A) ::= DOLLAR_CURLY VARNAME(C) RBRACE. { zend_ini_get_var(&A, &C TSRMLS_CC); free(Z_STRVAL(C)); } + +constant_literal(A) ::= CONSTANT(B). { A = B; } +constant_literal(A) ::= RAW(B). { A = B; } +constant_literal(A) ::= NUMBER(B). { A = B; } +constant_literal(A) ::= STRING(B). { A = B; } +constant_literal(A) ::= WHITESPACE(B). { A = B; } + +constant_string(A) ::= CONSTANT(B). { zend_ini_get_constant(&A, &B TSRMLS_CC); } +constant_string(A) ::= RAW(B). { A = B; } +constant_string(A) ::= NUMBER(B). { A = B; } +constant_string(A) ::= STRING(B). { A = B; } +constant_string(A) ::= WHITESPACE(B). { A = B; } /* * Local variables: diff --git a/Zend/zend_ini_scanner.c b/Zend/zend_ini_scanner.c index 1677d3ed2e..d9bebfd0a2 100644 --- a/Zend/zend_ini_scanner.c +++ b/Zend/zend_ini_scanner.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Tue May 25 22:53:58 2010 */ +/* Generated by re2c 0.13.5 on Sun Jul 11 15:00:59 2010 */ #line 1 "Zend/zend_ini_scanner.l" /* +----------------------------------------------------------------------+ @@ -317,7 +317,7 @@ restart: if (YYCURSOR >= YYLIMIT) { if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) { BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } return 0; } @@ -478,7 +478,7 @@ yy4: yy5: YYDEBUG(5, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 544 "Zend/zend_ini_scanner.l" +#line 564 "Zend/zend_ini_scanner.l" { /* eat whitespace */ goto restart; @@ -490,10 +490,10 @@ yy6: yy7: YYDEBUG(7, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 549 "Zend/zend_ini_scanner.l" +#line 569 "Zend/zend_ini_scanner.l" { SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } #line 499 "Zend/zend_ini_scanner.c" yy8: @@ -551,7 +551,7 @@ yy14: goto yy54; YYDEBUG(15, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 572 "Zend/zend_ini_scanner.l" +#line 592 "Zend/zend_ini_scanner.l" { return 0; } @@ -571,7 +571,7 @@ yy17: } else { yy_push_state(ST_VALUE TSRMLS_CC); } - return '='; + return TC_EQUAL; } #line 577 "Zend/zend_ini_scanner.c" yy18: @@ -732,7 +732,7 @@ yy33: yyleng = YYCURSOR - SCNG(yy_text); #line 418 "Zend/zend_ini_scanner.l" { /* TRUE value (when used outside option value/offset this causes parse error!) */ - RETURN_TOKEN(BOOL_TRUE, "1", 1); + RETURN_TOKEN(TC_BOOL_TRUE, "1", 1); } #line 738 "Zend/zend_ini_scanner.c" yy34: @@ -806,7 +806,7 @@ yy41: yyleng = YYCURSOR - SCNG(yy_text); #line 422 "Zend/zend_ini_scanner.l" { /* FALSE value (when used outside option value/offset this causes parse error!)*/ - RETURN_TOKEN(BOOL_FALSE, "", 0); + RETURN_TOKEN(TC_BOOL_FALSE, "", 0); } #line 812 "Zend/zend_ini_scanner.c" yy42: @@ -923,11 +923,11 @@ yy55: yy56: YYDEBUG(56, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 554 "Zend/zend_ini_scanner.l" +#line 574 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } #line 933 "Zend/zend_ini_scanner.c" yy57: @@ -1009,12 +1009,12 @@ yy64: yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 560 "Zend/zend_ini_scanner.l" +#line 580 "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; + return TC_END_OF_LINE; } #line 1020 "Zend/zend_ini_scanner.c" yy66: @@ -1156,7 +1156,7 @@ yyc_ST_DOUBLE_QUOTES: yy76: YYDEBUG(76, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 504 "Zend/zend_ini_scanner.l" +#line 524 "Zend/zend_ini_scanner.l" { /* Escape double quoted string contents */ if (YYCURSOR > YYLIMIT) { return 0; @@ -1201,10 +1201,10 @@ yy77: yy78: YYDEBUG(78, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 499 "Zend/zend_ini_scanner.l" +#line 519 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string ends */ yy_pop_state(TSRMLS_C); - return '"'; + return TC_QUOTE; } #line 1210 "Zend/zend_ini_scanner.c" yy79: @@ -1320,7 +1320,7 @@ yy86: yy87: YYDEBUG(87, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 490 "Zend/zend_ini_scanner.l" +#line 510 "Zend/zend_ini_scanner.l" { /* Get rest as section/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } @@ -1341,7 +1341,7 @@ yy89: yy90: YYDEBUG(90, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 572 "Zend/zend_ini_scanner.l" +#line 592 "Zend/zend_ini_scanner.l" { return 0; } @@ -1352,10 +1352,10 @@ yy91: yy92: YYDEBUG(92, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 494 "Zend/zend_ini_scanner.l" +#line 514 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); - return '"'; + return TC_QUOTE; } #line 1361 "Zend/zend_ini_scanner.c" yy93: @@ -1467,7 +1467,7 @@ yy103: #line 393 "Zend/zend_ini_scanner.l" { /* End of section or an option offset */ BEGIN(INITIAL); - return ']'; + return TC_RBRACKET; } #line 1473 "Zend/zend_ini_scanner.c" yy104: @@ -1918,7 +1918,7 @@ yy141: { /* End of option value */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } #line 1924 "Zend/zend_ini_scanner.c" yy142: @@ -1933,10 +1933,10 @@ yy143: goto yy146; YYDEBUG(144, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 567 "Zend/zend_ini_scanner.l" +#line 587 "Zend/zend_ini_scanner.l" { /* End of option value (if EOF is reached before EOL */ BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } #line 1942 "Zend/zend_ini_scanner.c" yy145: @@ -1956,11 +1956,11 @@ yy147: yy148: YYDEBUG(148, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 554 "Zend/zend_ini_scanner.l" +#line 574 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } #line 1966 "Zend/zend_ini_scanner.c" yy149: @@ -2070,7 +2070,7 @@ yy160: ++YYCURSOR; YYDEBUG(161, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 572 "Zend/zend_ini_scanner.l" +#line 592 "Zend/zend_ini_scanner.l" { return 0; } @@ -2087,7 +2087,7 @@ yy163: { /* End of section */ BEGIN(INITIAL); SCNG(lineno)++; - return ']'; + return TC_RBRACKET; } #line 2093 "Zend/zend_ini_scanner.c" yy164: @@ -2211,7 +2211,7 @@ yy172: yy173: YYDEBUG(173, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 490 "Zend/zend_ini_scanner.l" +#line 510 "Zend/zend_ini_scanner.l" { /* Get rest as section/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } @@ -2234,7 +2234,7 @@ yy175: yy176: YYDEBUG(176, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 572 "Zend/zend_ini_scanner.l" +#line 592 "Zend/zend_ini_scanner.l" { return 0; } @@ -2245,10 +2245,10 @@ yy177: yy178: YYDEBUG(178, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 494 "Zend/zend_ini_scanner.l" +#line 514 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); - return '"'; + return TC_QUOTE; } #line 2254 "Zend/zend_ini_scanner.c" yy179: @@ -2363,7 +2363,7 @@ yy189: { /* End of section */ BEGIN(INITIAL); SCNG(lineno)++; - return ']'; + return TC_RBRACKET; } #line 2369 "Zend/zend_ini_scanner.c" yy190: @@ -2750,38 +2750,38 @@ yy223: yyc_ST_VALUE: { static const unsigned char yybm[] = { - 160, 162, 162, 162, 162, 162, 162, 162, - 162, 176, 128, 162, 162, 128, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 176, 160, 160, 162, 168, 162, 160, 32, - 160, 160, 162, 162, 162, 162, 162, 162, - 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 162, 160, 162, 160, 162, 162, - 162, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 162, 162, 162, 162, 166, - 162, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 162, 160, 162, 160, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, - 162, 162, 162, 162, 162, 162, 162, 162, + 160, 164, 164, 164, 164, 164, 164, 164, + 164, 162, 128, 164, 164, 128, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 162, 160, 160, 164, 176, 164, 160, 32, + 160, 160, 164, 164, 164, 164, 164, 164, + 236, 236, 236, 236, 236, 236, 236, 236, + 236, 236, 164, 160, 164, 160, 164, 164, + 164, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 164, 164, 164, 164, 172, + 164, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 172, 172, 172, 172, 172, + 172, 172, 172, 164, 160, 164, 160, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, }; YYDEBUG(224, *YYCURSOR); YYFILL(6); @@ -2793,17 +2793,15 @@ yyc_ST_VALUE: case ' ': goto yy230; case '\n': goto yy232; case '\r': goto yy234; - case '!': - case '&': - case '(': - case ')': - case '|': - case '~': goto yy235; + case '!': goto yy235; case '"': goto yy237; case '$': goto yy239; - case '\'': goto yy240; - case '-': goto yy241; - case '.': goto yy242; + case '&': goto yy240; + case '\'': goto yy242; + case '(': goto yy243; + case ')': goto yy245; + case '-': goto yy247; + case '.': goto yy248; case '0': case '1': case '2': @@ -2813,9 +2811,9 @@ yyc_ST_VALUE: case '6': case '7': case '8': - case '9': goto yy243; - case ';': goto yy245; - case '=': goto yy246; + case '9': goto yy249; + case ';': goto yy251; + case '=': goto yy252; case 'A': case 'B': case 'C': @@ -2858,17 +2856,19 @@ yyc_ST_VALUE: case 'v': case 'w': case 'x': - case 'z': goto yy248; + case 'z': goto yy254; case 'F': - case 'f': goto yy250; + case 'f': goto yy256; case 'N': - case 'n': goto yy251; + case 'n': goto yy257; case 'O': - case 'o': goto yy252; + case 'o': goto yy258; case 'T': - case 't': goto yy253; + case 't': goto yy259; case 'Y': - case 'y': goto yy254; + case 'y': goto yy260; + case '|': goto yy261; + case '~': goto yy263; default: goto yy228; } yy226: @@ -2877,21 +2877,21 @@ yy226: yy227: YYDEBUG(227, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 567 "Zend/zend_ini_scanner.l" +#line 587 "Zend/zend_ini_scanner.l" { /* End of option value (if EOF is reached before EOL */ BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } #line 2886 "Zend/zend_ini_scanner.c" yy228: YYDEBUG(228, *YYCURSOR); yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - goto yy256; + goto yy270; yy229: YYDEBUG(229, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 486 "Zend/zend_ini_scanner.l" +#line 506 "Zend/zend_ini_scanner.l" { /* Get everything else as option/offset value */ RETURN_TOKEN(TC_STRING, yytext, yyleng); } @@ -2900,11 +2900,11 @@ yy230: YYDEBUG(230, *YYCURSOR); yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); - goto yy306; + goto yy326; yy231: YYDEBUG(231, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 540 "Zend/zend_ini_scanner.l" +#line 560 "Zend/zend_ini_scanner.l" { RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng); } @@ -2919,25 +2919,25 @@ yy233: { /* End of option value */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } #line 2925 "Zend/zend_ini_scanner.c" yy234: YYDEBUG(234, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '\n') goto yy304; + if (yych == '\n') goto yy324; goto yy233; yy235: YYDEBUG(235, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy303; + goto yy323; yy236: YYDEBUG(236, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 476 "Zend/zend_ini_scanner.l" - { /* Boolean operators */ - return yytext[0]; +#line 488 "Zend/zend_ini_scanner.l" + { + return TC_BOOL_NOT; } #line 2943 "Zend/zend_ini_scanner.c" yy237: @@ -2946,10 +2946,10 @@ yy237: yy238: YYDEBUG(238, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 494 "Zend/zend_ini_scanner.l" +#line 514 "Zend/zend_ini_scanner.l" { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); - return '"'; + return TC_QUOTE; } #line 2955 "Zend/zend_ini_scanner.c" yy239: @@ -2957,534 +2957,620 @@ yy239: yych = *++YYCURSOR; if (yych <= '\\') { if (yych <= 0x00) goto yy227; - if (yych <= '[') goto yy255; - goto yy262; + if (yych <= '[') goto yy269; + goto yy276; } else { - if (yych == '{') goto yy300; - goto yy255; + if (yych == '{') goto yy320; + goto yy269; } yy240: YYDEBUG(240, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy319; +yy241: + YYDEBUG(241, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 480 "Zend/zend_ini_scanner.l" + { + return TC_BW_AND; +} +#line 2979 "Zend/zend_ini_scanner.c" +yy242: + YYDEBUG(242, *YYCURSOR); yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yybm[0+yych] & 128) { - goto yy296; + goto yy314; } goto yy227; -yy241: - YYDEBUG(241, *YYCURSOR); +yy243: + YYDEBUG(243, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy313; +yy244: + YYDEBUG(244, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 492 "Zend/zend_ini_scanner.l" + { + return TC_LPAREN; +} +#line 3000 "Zend/zend_ini_scanner.c" +yy245: + YYDEBUG(245, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy311; +yy246: + YYDEBUG(246, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 496 "Zend/zend_ini_scanner.l" + { + return TC_RPAREN; +} +#line 3013 "Zend/zend_ini_scanner.c" +yy247: + YYDEBUG(247, *YYCURSOR); yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '/') goto yy256; - if (yych <= '9') goto yy294; - goto yy256; -yy242: - YYDEBUG(242, *YYCURSOR); + if (yych <= '/') goto yy270; + if (yych <= '9') goto yy308; + goto yy270; +yy248: + YYDEBUG(248, *YYCURSOR); yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '/') goto yy256; - if (yych <= '9') goto yy292; - goto yy256; -yy243: - YYDEBUG(243, *YYCURSOR); + if (yych <= '/') goto yy270; + if (yych <= '9') goto yy306; + goto yy270; +yy249: + YYDEBUG(249, *YYCURSOR); yyaccept = 3; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '.') { if (yych <= '\r') { if (yych <= 0x08) { - if (yych >= 0x01) goto yy256; + if (yych >= 0x01) goto yy270; } else { - if (yych <= '\n') goto yy244; - if (yych <= '\f') goto yy256; + if (yych <= '\n') goto yy250; + if (yych <= '\f') goto yy270; } } else { if (yych <= '%') { - if (yych <= 0x1F) goto yy256; - if (yych >= '#') goto yy256; + if (yych <= 0x1F) goto yy270; + if (yych >= '#') goto yy270; } else { - if (yych <= ')') goto yy244; - if (yych <= '-') goto yy256; - goto yy288; + if (yych <= ')') goto yy250; + if (yych <= '-') goto yy270; + goto yy302; } } } else { if (yych <= '<') { if (yych <= '9') { - if (yych <= '/') goto yy256; - goto yy290; + if (yych <= '/') goto yy270; + goto yy304; } else { - if (yych != ';') goto yy256; + if (yych != ';') goto yy270; } } else { if (yych <= '|') { - if (yych <= '=') goto yy244; - if (yych <= '{') goto yy256; + if (yych <= '=') goto yy250; + if (yych <= '{') goto yy270; } else { - if (yych != '~') goto yy256; + if (yych != '~') goto yy270; } } } -yy244: - YYDEBUG(244, *YYCURSOR); +yy250: + YYDEBUG(250, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 468 "Zend/zend_ini_scanner.l" { /* Get number option value as string */ RETURN_TOKEN(TC_NUMBER, yytext, yyleng); } -#line 3035 "Zend/zend_ini_scanner.c" -yy245: - YYDEBUG(245, *YYCURSOR); +#line 3074 "Zend/zend_ini_scanner.c" +yy251: + YYDEBUG(251, *YYCURSOR); yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); - goto yy284; -yy246: - YYDEBUG(246, *YYCURSOR); + goto yy298; +yy252: + YYDEBUG(252, *YYCURSOR); ++YYCURSOR; - YYDEBUG(247, *YYCURSOR); + YYDEBUG(253, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 480 "Zend/zend_ini_scanner.l" +#line 500 "Zend/zend_ini_scanner.l" { /* Make = used in option value to trigger error */ yyless(0); BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } -#line 3052 "Zend/zend_ini_scanner.c" -yy248: - YYDEBUG(248, *YYCURSOR); +#line 3091 "Zend/zend_ini_scanner.c" +yy254: + YYDEBUG(254, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy257; + if (yybm[0+yych] & 8) { + goto yy271; } if (yych <= ')') { if (yych <= '\f') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - if (yych >= '\v') goto yy256; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + if (yych >= '\v') goto yy270; } else { if (yych <= 0x1F) { - if (yych >= 0x0E) goto yy256; + if (yych >= 0x0E) goto yy270; } else { - if (yych <= '"') goto yy249; - if (yych <= '%') goto yy256; + if (yych <= '"') goto yy255; + if (yych <= '%') goto yy270; } } } else { if (yych <= '=') { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; } else { if (yych <= '|') { - if (yych <= '{') goto yy256; + if (yych <= '{') goto yy270; } else { - if (yych != '~') goto yy256; + if (yych != '~') goto yy270; } } } -yy249: - YYDEBUG(249, *YYCURSOR); +yy255: + YYDEBUG(255, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 464 "Zend/zend_ini_scanner.l" { /* Get constant option value */ RETURN_TOKEN(TC_CONSTANT, yytext, yyleng); } -#line 3092 "Zend/zend_ini_scanner.c" -yy250: - YYDEBUG(250, *YYCURSOR); +#line 3131 "Zend/zend_ini_scanner.c" +yy256: + YYDEBUG(256, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '<') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '/') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - goto yy256; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + goto yy270; } else { - if (yych <= '9') goto yy257; - if (yych == ';') goto yy249; - goto yy256; + if (yych <= '9') goto yy271; + if (yych == ';') goto yy255; + goto yy270; } } } else { if (yych <= '`') { if (yych <= 'A') { - if (yych <= '=') goto yy249; - if (yych <= '@') goto yy256; - goto yy280; + if (yych <= '=') goto yy255; + if (yych <= '@') goto yy270; + goto yy294; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych <= 'a') goto yy280; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych <= 'a') goto yy294; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy251: - YYDEBUG(251, *YYCURSOR); +yy257: + YYDEBUG(257, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'N') { if (yych <= '%') { if (yych <= '\f') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - if (yych <= '\n') goto yy249; - goto yy256; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + if (yych <= '\n') goto yy255; + goto yy270; } else { - if (yych <= '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - if (yych <= '"') goto yy249; - goto yy256; + if (yych <= '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + if (yych <= '"') goto yy255; + goto yy270; } } else { if (yych <= ':') { - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - if (yych <= '9') goto yy257; - goto yy256; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + if (yych <= '9') goto yy271; + goto yy270; } else { if (yych <= '<') { - if (yych <= ';') goto yy249; - goto yy256; + if (yych <= ';') goto yy255; + goto yy270; } else { - if (yych <= '=') goto yy249; - if (yych <= '@') goto yy256; - goto yy257; + if (yych <= '=') goto yy255; + if (yych <= '@') goto yy270; + goto yy271; } } } } else { if (yych <= 'n') { if (yych <= 'Z') { - if (yych <= 'O') goto yy276; - if (yych == 'U') goto yy277; - goto yy257; + if (yych <= 'O') goto yy290; + if (yych == 'U') goto yy291; + goto yy271; } else { - if (yych == '_') goto yy257; - if (yych <= '`') goto yy256; - goto yy257; + if (yych == '_') goto yy271; + if (yych <= '`') goto yy270; + goto yy271; } } else { if (yych <= 'z') { - if (yych <= 'o') goto yy276; - if (yych == 'u') goto yy277; - goto yy257; + if (yych <= 'o') goto yy290; + if (yych == 'u') goto yy291; + goto yy271; } else { if (yych <= '|') { - if (yych <= '{') goto yy256; - goto yy249; + if (yych <= '{') goto yy270; + goto yy255; } else { - if (yych == '~') goto yy249; - goto yy256; + if (yych == '~') goto yy255; + goto yy270; } } } } -yy252: - YYDEBUG(252, *YYCURSOR); +yy258: + YYDEBUG(258, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'E') { if (yych <= '%') { if (yych <= '\f') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - if (yych <= '\n') goto yy249; - goto yy256; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + if (yych <= '\n') goto yy255; + goto yy270; } else { - if (yych <= '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - if (yych <= '"') goto yy249; - goto yy256; + if (yych <= '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + if (yych <= '"') goto yy255; + goto yy270; } } else { if (yych <= ':') { - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - if (yych <= '9') goto yy257; - goto yy256; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + if (yych <= '9') goto yy271; + goto yy270; } else { if (yych <= '<') { - if (yych <= ';') goto yy249; - goto yy256; + if (yych <= ';') goto yy255; + goto yy270; } else { - if (yych <= '=') goto yy249; - if (yych <= '@') goto yy256; - goto yy257; + if (yych <= '=') goto yy255; + if (yych <= '@') goto yy270; + goto yy271; } } } } else { if (yych <= 'e') { if (yych <= 'Z') { - if (yych <= 'F') goto yy271; - if (yych == 'N') goto yy265; - goto yy257; + if (yych <= 'F') goto yy285; + if (yych == 'N') goto yy279; + goto yy271; } else { - if (yych == '_') goto yy257; - if (yych <= '`') goto yy256; - goto yy257; + if (yych == '_') goto yy271; + if (yych <= '`') goto yy270; + goto yy271; } } else { if (yych <= 'z') { - if (yych <= 'f') goto yy271; - if (yych == 'n') goto yy265; - goto yy257; + if (yych <= 'f') goto yy285; + if (yych == 'n') goto yy279; + goto yy271; } else { if (yych <= '|') { - if (yych <= '{') goto yy256; - goto yy249; + if (yych <= '{') goto yy270; + goto yy255; } else { - if (yych == '~') goto yy249; - goto yy256; + if (yych == '~') goto yy255; + goto yy270; } } } } -yy253: - YYDEBUG(253, *YYCURSOR); +yy259: + YYDEBUG(259, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'R') { - if (yych <= '@') goto yy256; - if (yych <= 'Q') goto yy257; - goto yy269; + if (yych <= '@') goto yy270; + if (yych <= 'Q') goto yy271; + goto yy283; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'r') goto yy269; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'r') goto yy283; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy254: - YYDEBUG(254, *YYCURSOR); +yy260: + YYDEBUG(260, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'E') { - if (yych <= '@') goto yy256; - if (yych <= 'D') goto yy257; - goto yy259; + if (yych <= '@') goto yy270; + if (yych <= 'D') goto yy271; + goto yy273; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'e') goto yy259; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'e') goto yy273; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy255: - YYDEBUG(255, *YYCURSOR); +yy261: + YYDEBUG(261, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy268; +yy262: + YYDEBUG(262, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 476 "Zend/zend_ini_scanner.l" + { + return TC_BW_OR; +} +#line 3415 "Zend/zend_ini_scanner.c" +yy263: + YYDEBUG(263, *YYCURSOR); + ++YYCURSOR; + yych = *YYCURSOR; + goto yy266; +yy264: + YYDEBUG(264, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 484 "Zend/zend_ini_scanner.l" + { + return TC_BW_NOT; +} +#line 3428 "Zend/zend_ini_scanner.c" +yy265: + YYDEBUG(265, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy266: + YYDEBUG(266, *YYCURSOR); + if (yybm[0+yych] & 2) { + goto yy265; + } + goto yy264; +yy267: + YYDEBUG(267, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy268: + YYDEBUG(268, *YYCURSOR); + if (yych == '\t') goto yy267; + if (yych == ' ') goto yy267; + goto yy262; +yy269: + YYDEBUG(269, *YYCURSOR); yyaccept = 0; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy256: - YYDEBUG(256, *YYCURSOR); - if (yybm[0+yych] & 2) { - goto yy255; +yy270: + YYDEBUG(270, *YYCURSOR); + if (yybm[0+yych] & 4) { + goto yy269; } - if (yych == '$') goto yy260; + if (yych == '$') goto yy274; goto yy229; -yy257: - YYDEBUG(257, *YYCURSOR); +yy271: + YYDEBUG(271, *YYCURSOR); yyaccept = 4; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(258, *YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy257; + YYDEBUG(272, *YYCURSOR); + if (yybm[0+yych] & 8) { + goto yy271; } if (yych <= '%') { if (yych <= '\r') { if (yych <= 0x08) { - if (yych <= 0x00) goto yy249; - goto yy255; + if (yych <= 0x00) goto yy255; + goto yy269; } else { - if (yych <= '\n') goto yy249; - if (yych <= '\f') goto yy255; - goto yy249; + if (yych <= '\n') goto yy255; + if (yych <= '\f') goto yy269; + goto yy255; } } else { if (yych <= '"') { - if (yych <= 0x1F) goto yy255; - goto yy249; - } else { - if (yych == '$') goto yy260; + if (yych <= 0x1F) goto yy269; goto yy255; + } else { + if (yych == '$') goto yy274; + goto yy269; } } } else { if (yych <= '=') { if (yych <= ':') { - if (yych <= ')') goto yy249; - goto yy255; + if (yych <= ')') goto yy255; + goto yy269; } else { - if (yych == '<') goto yy255; - goto yy249; + if (yych == '<') goto yy269; + goto yy255; } } else { if (yych <= '|') { - if (yych <= '{') goto yy255; - goto yy249; - } else { - if (yych == '~') goto yy249; + if (yych <= '{') goto yy269; goto yy255; + } else { + if (yych == '~') goto yy255; + goto yy269; } } } -yy259: - YYDEBUG(259, *YYCURSOR); +yy273: + YYDEBUG(273, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'S') { - if (yych <= '@') goto yy256; - if (yych <= 'R') goto yy257; - goto yy265; + if (yych <= '@') goto yy270; + if (yych <= 'R') goto yy271; + goto yy279; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 's') goto yy265; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 's') goto yy279; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy260: - YYDEBUG(260, *YYCURSOR); +yy274: + YYDEBUG(274, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; if (yych <= '\\') { - if (yych <= 0x00) goto yy261; - if (yych <= '[') goto yy255; - goto yy262; + if (yych <= 0x00) goto yy275; + if (yych <= '[') goto yy269; + goto yy276; } else { - if (yych != '{') goto yy255; + if (yych != '{') goto yy269; } -yy261: - YYDEBUG(261, *YYCURSOR); +yy275: + YYDEBUG(275, *YYCURSOR); YYCURSOR = YYMARKER; if (yyaccept <= 3) { if (yyaccept <= 1) { @@ -3497,890 +3583,902 @@ yy261: if (yyaccept <= 2) { goto yy227; } else { - goto yy244; + goto yy250; } } } else { if (yyaccept <= 5) { if (yyaccept <= 4) { - goto yy249; + goto yy255; } else { - goto yy266; + goto yy280; } } else { - goto yy273; + goto yy287; } } -yy262: - YYDEBUG(262, *YYCURSOR); +yy276: + YYDEBUG(276, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - if (yybm[0+yych] & 8) { - goto yy263; + if (yybm[0+yych] & 16) { + goto yy277; } - goto yy255; -yy263: - YYDEBUG(263, *YYCURSOR); + goto yy269; +yy277: + YYDEBUG(277, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(264, *YYCURSOR); - if (yybm[0+yych] & 8) { - goto yy263; + YYDEBUG(278, *YYCURSOR); + if (yybm[0+yych] & 16) { + goto yy277; } if (yych <= 0x00) goto yy229; - if (yych == '\\') goto yy262; - goto yy255; -yy265: - YYDEBUG(265, *YYCURSOR); + if (yych == '\\') goto yy276; + goto yy269; +yy279: + YYDEBUG(279, *YYCURSOR); yyaccept = 5; yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 16) { - goto yy267; + if (yybm[0+yych] & 8) { + goto yy271; } - if (yych <= ';') { - if (yych <= ' ') { - if (yych <= '\n') { - if (yych <= 0x00) goto yy266; - if (yych <= '\t') goto yy256; + if (yych <= '%') { + if (yych <= '\f') { + if (yych <= 0x08) { + if (yych >= 0x01) goto yy270; } else { - if (yych != '\r') goto yy256; + if (yych <= '\t') goto yy281; + if (yych >= '\v') goto yy270; } } else { - if (yych <= ')') { - if (yych <= '"') goto yy266; - if (yych <= '%') goto yy256; + if (yych <= 0x1F) { + if (yych >= 0x0E) goto yy270; } else { - if (yych <= '/') goto yy256; - if (yych <= '9') goto yy257; - if (yych <= ':') goto yy256; + if (yych <= ' ') goto yy281; + if (yych >= '#') goto yy270; } } } else { - if (yych <= '_') { - if (yych <= '@') { - if (yych != '=') goto yy256; + if (yych <= '=') { + if (yych <= ':') { + if (yych >= '*') goto yy270; } else { - if (yych <= 'Z') goto yy257; - if (yych <= '^') goto yy256; - goto yy257; + if (yych == '<') goto yy270; } } else { - if (yych <= '{') { - if (yych <= '`') goto yy256; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych <= '|') { + if (yych <= '{') goto yy270; } else { - if (yych == '}') goto yy256; - if (yych >= 0x7F) goto yy256; + if (yych != '~') goto yy270; } } } -yy266: - YYDEBUG(266, *YYCURSOR); +yy280: + YYDEBUG(280, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 418 "Zend/zend_ini_scanner.l" { /* TRUE value (when used outside option value/offset this causes parse error!) */ - RETURN_TOKEN(BOOL_TRUE, "1", 1); + RETURN_TOKEN(TC_BOOL_TRUE, "1", 1); } -#line 3588 "Zend/zend_ini_scanner.c" -yy267: - YYDEBUG(267, *YYCURSOR); +#line 3667 "Zend/zend_ini_scanner.c" +yy281: + YYDEBUG(281, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(268, *YYCURSOR); - if (yybm[0+yych] & 16) { - goto yy267; - } - goto yy266; -yy269: - YYDEBUG(269, *YYCURSOR); + YYDEBUG(282, *YYCURSOR); + if (yych == '\t') goto yy281; + if (yych == ' ') goto yy281; + goto yy280; +yy283: + YYDEBUG(283, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'U') { - if (yych <= '@') goto yy256; - if (yych <= 'T') goto yy257; + if (yych <= '@') goto yy270; + if (yych <= 'T') goto yy271; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'u') goto yy270; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'u') goto yy284; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy270: - YYDEBUG(270, *YYCURSOR); +yy284: + YYDEBUG(284, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'E') { - if (yych <= '@') goto yy256; - if (yych <= 'D') goto yy257; - goto yy265; + if (yych <= '@') goto yy270; + if (yych <= 'D') goto yy271; + goto yy279; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'e') goto yy265; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'e') goto yy279; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy271: - YYDEBUG(271, *YYCURSOR); +yy285: + YYDEBUG(285, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'F') { - if (yych <= '@') goto yy256; - if (yych <= 'E') goto yy257; + if (yych <= '@') goto yy270; + if (yych <= 'E') goto yy271; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'f') goto yy272; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'f') goto yy286; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy272: - YYDEBUG(272, *YYCURSOR); +yy286: + YYDEBUG(286, *YYCURSOR); yyaccept = 6; yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy257; + if (yybm[0+yych] & 8) { + goto yy271; } if (yych <= '%') { if (yych <= '\f') { if (yych <= 0x08) { - if (yych >= 0x01) goto yy256; + if (yych >= 0x01) goto yy270; } else { - if (yych <= '\t') goto yy274; - if (yych >= '\v') goto yy256; + if (yych <= '\t') goto yy288; + if (yych >= '\v') goto yy270; } } else { if (yych <= 0x1F) { - if (yych >= 0x0E) goto yy256; + if (yych >= 0x0E) goto yy270; } else { - if (yych <= ' ') goto yy274; - if (yych >= '#') goto yy256; + if (yych <= ' ') goto yy288; + if (yych >= '#') goto yy270; } } } else { if (yych <= '=') { if (yych <= ':') { - if (yych >= '*') goto yy256; + if (yych >= '*') goto yy270; } else { - if (yych == '<') goto yy256; + if (yych == '<') goto yy270; } } else { if (yych <= '|') { - if (yych <= '{') goto yy256; + if (yych <= '{') goto yy270; } else { - if (yych != '~') goto yy256; + if (yych != '~') goto yy270; } } } -yy273: - YYDEBUG(273, *YYCURSOR); +yy287: + YYDEBUG(287, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 422 "Zend/zend_ini_scanner.l" { /* FALSE value (when used outside option value/offset this causes parse error!)*/ - RETURN_TOKEN(BOOL_FALSE, "", 0); + RETURN_TOKEN(TC_BOOL_FALSE, "", 0); } -#line 3792 "Zend/zend_ini_scanner.c" -yy274: - YYDEBUG(274, *YYCURSOR); +#line 3870 "Zend/zend_ini_scanner.c" +yy288: + YYDEBUG(288, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(275, *YYCURSOR); - if (yych == '\t') goto yy274; - if (yych == ' ') goto yy274; - goto yy273; -yy276: - YYDEBUG(276, *YYCURSOR); + YYDEBUG(289, *YYCURSOR); + if (yych == '\t') goto yy288; + if (yych == ' ') goto yy288; + goto yy287; +yy290: + YYDEBUG(290, *YYCURSOR); yyaccept = 6; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '<') { if (yych <= ' ') { if (yych <= '\n') { - if (yych <= 0x00) goto yy273; - if (yych <= 0x08) goto yy256; - if (yych <= '\t') goto yy274; - goto yy273; + if (yych <= 0x00) goto yy287; + if (yych <= 0x08) goto yy270; + if (yych <= '\t') goto yy288; + goto yy287; } else { - if (yych == '\r') goto yy273; - if (yych <= 0x1F) goto yy256; - goto yy274; + if (yych == '\r') goto yy287; + if (yych <= 0x1F) goto yy270; + goto yy288; } } else { if (yych <= '/') { - if (yych <= '"') goto yy273; - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy273; - goto yy256; + if (yych <= '"') goto yy287; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy287; + goto yy270; } else { - if (yych <= '9') goto yy257; - if (yych == ';') goto yy273; - goto yy256; + if (yych <= '9') goto yy271; + if (yych == ';') goto yy287; + goto yy270; } } } else { if (yych <= '`') { if (yych <= 'N') { - if (yych <= '=') goto yy273; - if (yych <= '@') goto yy256; - if (yych <= 'M') goto yy257; - goto yy279; + if (yych <= '=') goto yy287; + if (yych <= '@') goto yy270; + if (yych <= 'M') goto yy271; + goto yy293; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'n') goto yy279; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'n') goto yy293; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy273; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy287; + goto yy270; } } } -yy277: - YYDEBUG(277, *YYCURSOR); +yy291: + YYDEBUG(291, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'L') { - if (yych <= '@') goto yy256; - if (yych <= 'K') goto yy257; + if (yych <= '@') goto yy270; + if (yych <= 'K') goto yy271; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'l') goto yy278; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'l') goto yy292; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy278: - YYDEBUG(278, *YYCURSOR); +yy292: + YYDEBUG(292, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'L') { - if (yych <= '@') goto yy256; - if (yych <= 'K') goto yy257; - goto yy272; + if (yych <= '@') goto yy270; + if (yych <= 'K') goto yy271; + goto yy286; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'l') goto yy272; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'l') goto yy286; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy279: - YYDEBUG(279, *YYCURSOR); +yy293: + YYDEBUG(293, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'E') { - if (yych <= '@') goto yy256; - if (yych <= 'D') goto yy257; - goto yy272; + if (yych <= '@') goto yy270; + if (yych <= 'D') goto yy271; + goto yy286; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'e') goto yy272; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'e') goto yy286; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy280: - YYDEBUG(280, *YYCURSOR); +yy294: + YYDEBUG(294, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'L') { - if (yych <= '@') goto yy256; - if (yych <= 'K') goto yy257; + if (yych <= '@') goto yy270; + if (yych <= 'K') goto yy271; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'l') goto yy281; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'l') goto yy295; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy281: - YYDEBUG(281, *YYCURSOR); +yy295: + YYDEBUG(295, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'S') { - if (yych <= '@') goto yy256; - if (yych <= 'R') goto yy257; + if (yych <= '@') goto yy270; + if (yych <= 'R') goto yy271; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 's') goto yy282; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 's') goto yy296; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy282: - YYDEBUG(282, *YYCURSOR); +yy296: + YYDEBUG(296, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '=') { if (yych <= '"') { if (yych <= '\n') { - if (yych <= 0x00) goto yy249; - if (yych <= 0x08) goto yy256; - goto yy249; + if (yych <= 0x00) goto yy255; + if (yych <= 0x08) goto yy270; + goto yy255; } else { - if (yych == '\r') goto yy249; - if (yych <= 0x1F) goto yy256; - goto yy249; + if (yych == '\r') goto yy255; + if (yych <= 0x1F) goto yy270; + goto yy255; } } else { if (yych <= '9') { - if (yych <= '%') goto yy256; - if (yych <= ')') goto yy249; - if (yych <= '/') goto yy256; - goto yy257; + if (yych <= '%') goto yy270; + if (yych <= ')') goto yy255; + if (yych <= '/') goto yy270; + goto yy271; } else { - if (yych == ';') goto yy249; - if (yych <= '<') goto yy256; - goto yy249; + if (yych == ';') goto yy255; + if (yych <= '<') goto yy270; + goto yy255; } } } else { if (yych <= '`') { if (yych <= 'E') { - if (yych <= '@') goto yy256; - if (yych <= 'D') goto yy257; - goto yy272; + if (yych <= '@') goto yy270; + if (yych <= 'D') goto yy271; + goto yy286; } else { - if (yych <= 'Z') goto yy257; - if (yych == '_') goto yy257; - goto yy256; + if (yych <= 'Z') goto yy271; + if (yych == '_') goto yy271; + goto yy270; } } else { if (yych <= '{') { - if (yych == 'e') goto yy272; - if (yych <= 'z') goto yy257; - goto yy256; + if (yych == 'e') goto yy286; + if (yych <= 'z') goto yy271; + goto yy270; } else { - if (yych == '}') goto yy256; - if (yych <= '~') goto yy249; - goto yy256; + if (yych == '}') goto yy270; + if (yych <= '~') goto yy255; + goto yy270; } } } -yy283: - YYDEBUG(283, *YYCURSOR); +yy297: + YYDEBUG(297, *YYCURSOR); ++YYCURSOR; YYFILL(2); yych = *YYCURSOR; -yy284: - YYDEBUG(284, *YYCURSOR); +yy298: + YYDEBUG(298, *YYCURSOR); if (yybm[0+yych] & 32) { - goto yy283; + goto yy297; } - if (yych >= '\r') goto yy287; -yy285: - YYDEBUG(285, *YYCURSOR); + if (yych >= '\r') goto yy301; +yy299: + YYDEBUG(299, *YYCURSOR); ++YYCURSOR; -yy286: - YYDEBUG(286, *YYCURSOR); +yy300: + YYDEBUG(300, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 554 "Zend/zend_ini_scanner.l" +#line 574 "Zend/zend_ini_scanner.l" { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } -#line 4174 "Zend/zend_ini_scanner.c" -yy287: - YYDEBUG(287, *YYCURSOR); +#line 4252 "Zend/zend_ini_scanner.c" +yy301: + YYDEBUG(301, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '\n') goto yy285; - goto yy286; -yy288: - YYDEBUG(288, *YYCURSOR); + if (yych == '\n') goto yy299; + goto yy300; +yy302: + YYDEBUG(302, *YYCURSOR); yyaccept = 3; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(289, *YYCURSOR); + YYDEBUG(303, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy288; + goto yy302; } if (yych <= '%') { if (yych <= '\r') { if (yych <= 0x08) { - if (yych <= 0x00) goto yy244; - goto yy255; + if (yych <= 0x00) goto yy250; + goto yy269; } else { - if (yych <= '\n') goto yy244; - if (yych <= '\f') goto yy255; - goto yy244; + if (yych <= '\n') goto yy250; + if (yych <= '\f') goto yy269; + goto yy250; } } else { if (yych <= '"') { - if (yych <= 0x1F) goto yy255; - goto yy244; + if (yych <= 0x1F) goto yy269; + goto yy250; } else { - if (yych == '$') goto yy260; - goto yy255; + if (yych == '$') goto yy274; + goto yy269; } } } else { if (yych <= '=') { if (yych <= ':') { - if (yych <= ')') goto yy244; - goto yy255; + if (yych <= ')') goto yy250; + goto yy269; } else { - if (yych == '<') goto yy255; - goto yy244; + if (yych == '<') goto yy269; + goto yy250; } } else { if (yych <= '|') { - if (yych <= '{') goto yy255; - goto yy244; + if (yych <= '{') goto yy269; + goto yy250; } else { - if (yych == '~') goto yy244; - goto yy255; + if (yych == '~') goto yy250; + goto yy269; } } } -yy290: - YYDEBUG(290, *YYCURSOR); +yy304: + YYDEBUG(304, *YYCURSOR); yyaccept = 3; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(291, *YYCURSOR); + YYDEBUG(305, *YYCURSOR); if (yych <= '-') { if (yych <= 0x1F) { if (yych <= '\n') { - if (yych <= 0x00) goto yy244; - if (yych <= 0x08) goto yy255; - goto yy244; + if (yych <= 0x00) goto yy250; + if (yych <= 0x08) goto yy269; + goto yy250; } else { - if (yych == '\r') goto yy244; - goto yy255; + if (yych == '\r') goto yy250; + goto yy269; } } else { if (yych <= '$') { - if (yych <= '"') goto yy244; - if (yych <= '#') goto yy255; - goto yy260; + if (yych <= '"') goto yy250; + if (yych <= '#') goto yy269; + goto yy274; } else { - if (yych <= '%') goto yy255; - if (yych <= ')') goto yy244; - goto yy255; + if (yych <= '%') goto yy269; + if (yych <= ')') goto yy250; + goto yy269; } } } else { if (yych <= '<') { if (yych <= '9') { - if (yych <= '.') goto yy288; - if (yych <= '/') goto yy255; - goto yy290; + if (yych <= '.') goto yy302; + if (yych <= '/') goto yy269; + goto yy304; } else { - if (yych == ';') goto yy244; - goto yy255; + if (yych == ';') goto yy250; + goto yy269; } } else { if (yych <= '|') { - if (yych <= '=') goto yy244; - if (yych <= '{') goto yy255; - goto yy244; + if (yych <= '=') goto yy250; + if (yych <= '{') goto yy269; + goto yy250; } else { - if (yych == '~') goto yy244; - goto yy255; + if (yych == '~') goto yy250; + goto yy269; } } } -yy292: - YYDEBUG(292, *YYCURSOR); +yy306: + YYDEBUG(306, *YYCURSOR); yyaccept = 3; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(293, *YYCURSOR); + YYDEBUG(307, *YYCURSOR); if (yych <= ')') { if (yych <= '\r') { if (yych <= 0x08) { - if (yych <= 0x00) goto yy244; - goto yy255; + if (yych <= 0x00) goto yy250; + goto yy269; } else { - if (yych <= '\n') goto yy244; - if (yych <= '\f') goto yy255; - goto yy244; + if (yych <= '\n') goto yy250; + if (yych <= '\f') goto yy269; + goto yy250; } } else { if (yych <= '#') { - if (yych <= 0x1F) goto yy255; - if (yych <= '"') goto yy244; - goto yy255; + if (yych <= 0x1F) goto yy269; + if (yych <= '"') goto yy250; + goto yy269; } else { - if (yych <= '$') goto yy260; - if (yych <= '%') goto yy255; - goto yy244; + if (yych <= '$') goto yy274; + if (yych <= '%') goto yy269; + goto yy250; } } } else { if (yych <= '<') { if (yych <= '9') { - if (yych <= '/') goto yy255; - goto yy292; + if (yych <= '/') goto yy269; + goto yy306; } else { - if (yych == ';') goto yy244; - goto yy255; + if (yych == ';') goto yy250; + goto yy269; } } else { if (yych <= '|') { - if (yych <= '=') goto yy244; - if (yych <= '{') goto yy255; - goto yy244; + if (yych <= '=') goto yy250; + if (yych <= '{') goto yy269; + goto yy250; } else { - if (yych == '~') goto yy244; - goto yy255; + if (yych == '~') goto yy250; + goto yy269; } } } -yy294: - YYDEBUG(294, *YYCURSOR); +yy308: + YYDEBUG(308, *YYCURSOR); yyaccept = 3; YYMARKER = ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(295, *YYCURSOR); + YYDEBUG(309, *YYCURSOR); if (yych <= ')') { if (yych <= '\r') { if (yych <= 0x08) { - if (yych <= 0x00) goto yy244; - goto yy255; + if (yych <= 0x00) goto yy250; + goto yy269; } else { - if (yych <= '\n') goto yy244; - if (yych <= '\f') goto yy255; - goto yy244; + if (yych <= '\n') goto yy250; + if (yych <= '\f') goto yy269; + goto yy250; } } else { if (yych <= '#') { - if (yych <= 0x1F) goto yy255; - if (yych <= '"') goto yy244; - goto yy255; + if (yych <= 0x1F) goto yy269; + if (yych <= '"') goto yy250; + goto yy269; } else { - if (yych <= '$') goto yy260; - if (yych <= '%') goto yy255; - goto yy244; + if (yych <= '$') goto yy274; + if (yych <= '%') goto yy269; + goto yy250; } } } else { if (yych <= '<') { if (yych <= '9') { - if (yych <= '/') goto yy255; - goto yy294; + if (yych <= '/') goto yy269; + goto yy308; } else { - if (yych == ';') goto yy244; - goto yy255; + if (yych == ';') goto yy250; + goto yy269; } } else { if (yych <= '|') { - if (yych <= '=') goto yy244; - if (yych <= '{') goto yy255; - goto yy244; + if (yych <= '=') goto yy250; + if (yych <= '{') goto yy269; + goto yy250; } else { - if (yych == '~') goto yy244; - goto yy255; + if (yych == '~') goto yy250; + goto yy269; } } } -yy296: - YYDEBUG(296, *YYCURSOR); +yy310: + YYDEBUG(310, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(297, *YYCURSOR); +yy311: + YYDEBUG(311, *YYCURSOR); + if (yych == '\t') goto yy310; + if (yych == ' ') goto yy310; + goto yy246; +yy312: + YYDEBUG(312, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; +yy313: + YYDEBUG(313, *YYCURSOR); + if (yych == '\t') goto yy312; + if (yych == ' ') goto yy312; + goto yy244; +yy314: + YYDEBUG(314, *YYCURSOR); + ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; + YYDEBUG(315, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy296; + goto yy314; } - YYDEBUG(298, *YYCURSOR); + YYDEBUG(316, *YYCURSOR); ++YYCURSOR; - YYDEBUG(299, *YYCURSOR); + YYDEBUG(317, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 365 "Zend/zend_ini_scanner.l" { /* Raw string */ @@ -4391,65 +4489,75 @@ yy296: } RETURN_TOKEN(TC_RAW, yytext, yyleng); } -#line 4395 "Zend/zend_ini_scanner.c" -yy300: - YYDEBUG(300, *YYCURSOR); +#line 4493 "Zend/zend_ini_scanner.c" +yy318: + YYDEBUG(318, *YYCURSOR); ++YYCURSOR; - YYDEBUG(301, *YYCURSOR); + YYFILL(1); + yych = *YYCURSOR; +yy319: + YYDEBUG(319, *YYCURSOR); + if (yych == '\t') goto yy318; + if (yych == ' ') goto yy318; + goto yy241; +yy320: + YYDEBUG(320, *YYCURSOR); + ++YYCURSOR; + YYDEBUG(321, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 398 "Zend/zend_ini_scanner.l" { /* Variable start */ yy_push_state(ST_VARNAME TSRMLS_CC); return TC_DOLLAR_CURLY; } -#line 4406 "Zend/zend_ini_scanner.c" -yy302: - YYDEBUG(302, *YYCURSOR); +#line 4514 "Zend/zend_ini_scanner.c" +yy322: + YYDEBUG(322, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy303: - YYDEBUG(303, *YYCURSOR); - if (yych == '\t') goto yy302; - if (yych == ' ') goto yy302; +yy323: + YYDEBUG(323, *YYCURSOR); + if (yych == '\t') goto yy322; + if (yych == ' ') goto yy322; goto yy236; -yy304: - YYDEBUG(304, *YYCURSOR); +yy324: + YYDEBUG(324, *YYCURSOR); yych = *++YYCURSOR; goto yy233; -yy305: - YYDEBUG(305, *YYCURSOR); +yy325: + YYDEBUG(325, *YYCURSOR); yyaccept = 1; YYMARKER = ++YYCURSOR; YYFILL(2); yych = *YYCURSOR; -yy306: - YYDEBUG(306, *YYCURSOR); +yy326: + YYDEBUG(326, *YYCURSOR); if (yych <= 0x1F) { if (yych <= '\n') { if (yych <= 0x08) goto yy231; - if (yych <= '\t') goto yy305; - goto yy304; + if (yych <= '\t') goto yy325; + goto yy324; } else { - if (yych == '\r') goto yy308; + if (yych == '\r') goto yy328; goto yy231; } } else { if (yych <= '"') { - if (yych <= ' ') goto yy305; + if (yych <= ' ') goto yy325; if (yych <= '!') goto yy231; } else { - if (yych == ';') goto yy283; + if (yych == ';') goto yy297; goto yy231; } } - YYDEBUG(307, *YYCURSOR); + YYDEBUG(327, *YYCURSOR); yych = *++YYCURSOR; goto yy238; -yy308: - YYDEBUG(308, *YYCURSOR); +yy328: + YYDEBUG(328, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy304; + if ((yych = *YYCURSOR) == '\n') goto yy324; goto yy233; } /* *********************************** */ @@ -4489,47 +4597,47 @@ yyc_ST_VARNAME: 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, }; - YYDEBUG(309, *YYCURSOR); + YYDEBUG(329, *YYCURSOR); YYFILL(2); yych = *YYCURSOR; if (yych <= '\'') { if (yych <= ' ') { if (yych <= '\n') { - if (yych >= '\t') goto yy313; + if (yych >= '\t') goto yy333; } else { - if (yych == '\r') goto yy313; + if (yych == '\r') goto yy333; } } else { if (yych <= '$') { - if (yych != '#') goto yy313; + if (yych != '#') goto yy333; } else { - if (yych == '&') goto yy313; + if (yych == '&') goto yy333; } } } else { if (yych <= 'Z') { if (yych <= ';') { - if (yych <= ')') goto yy313; - if (yych >= ';') goto yy313; + if (yych <= ')') goto yy333; + if (yych >= ';') goto yy333; } else { - if (yych == '=') goto yy313; + if (yych == '=') goto yy333; } } else { if (yych <= '|') { - if (yych <= '[') goto yy313; - if (yych >= '{') goto yy313; + if (yych <= '[') goto yy333; + if (yych >= '{') goto yy333; } else { - if (yych <= '}') goto yy315; - if (yych <= '~') goto yy313; + if (yych <= '}') goto yy335; + if (yych <= '~') goto yy333; } } } - YYDEBUG(311, *YYCURSOR); + YYDEBUG(331, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy318; -yy312: - YYDEBUG(312, *YYCURSOR); + goto yy338; +yy332: + YYDEBUG(332, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 403 "Zend/zend_ini_scanner.l" { /* Variable name */ @@ -4541,41 +4649,41 @@ yy312: RETURN_TOKEN(TC_VARNAME, yytext, yyleng); } -#line 4545 "Zend/zend_ini_scanner.c" -yy313: - YYDEBUG(313, *YYCURSOR); +#line 4653 "Zend/zend_ini_scanner.c" +yy333: + YYDEBUG(333, *YYCURSOR); ++YYCURSOR; - YYDEBUG(314, *YYCURSOR); + YYDEBUG(334, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 572 "Zend/zend_ini_scanner.l" +#line 592 "Zend/zend_ini_scanner.l" { return 0; } -#line 4555 "Zend/zend_ini_scanner.c" -yy315: - YYDEBUG(315, *YYCURSOR); +#line 4663 "Zend/zend_ini_scanner.c" +yy335: + YYDEBUG(335, *YYCURSOR); ++YYCURSOR; - YYDEBUG(316, *YYCURSOR); + YYDEBUG(336, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 413 "Zend/zend_ini_scanner.l" { /* Variable end */ yy_pop_state(TSRMLS_C); - return '}'; + return TC_RBRACE; } -#line 4566 "Zend/zend_ini_scanner.c" -yy317: - YYDEBUG(317, *YYCURSOR); +#line 4674 "Zend/zend_ini_scanner.c" +yy337: + YYDEBUG(337, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy318: - YYDEBUG(318, *YYCURSOR); +yy338: + YYDEBUG(338, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy317; + goto yy337; } - goto yy312; + goto yy332; } } -#line 576 "Zend/zend_ini_scanner.l" +#line 596 "Zend/zend_ini_scanner.l" } diff --git a/Zend/zend_ini_scanner.l b/Zend/zend_ini_scanner.l index 1c19a0978d..46f20a77c4 100644 --- a/Zend/zend_ini_scanner.l +++ b/Zend/zend_ini_scanner.l @@ -315,7 +315,7 @@ restart: if (YYCURSOR >= YYLIMIT) { if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) { BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } return 0; } @@ -374,7 +374,7 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <ST_SECTION_RAW,ST_SECTION_VALUE>"]"{TABS_AND_SPACES}*{NEWLINE}? { /* End of section */ BEGIN(INITIAL); SCNG(lineno)++; - return ']'; + return TC_RBRACKET; } <INITIAL>{LABEL}"["{TABS_AND_SPACES}* { /* Start of option with offset */ @@ -392,7 +392,7 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <ST_OFFSET>{TABS_AND_SPACES}*"]" { /* End of section or an option offset */ BEGIN(INITIAL); - return ']'; + return TC_RBRACKET; } <ST_DOUBLE_QUOTES,ST_SECTION_VALUE,ST_VALUE,ST_OFFSET>{DOLLAR_CURLY} { /* Variable start */ @@ -412,15 +412,15 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <ST_VARNAME>"}" { /* Variable end */ yy_pop_state(TSRMLS_C); - return '}'; + return TC_RBRACE; } <INITIAL,ST_VALUE>("true"|"on"|"yes"){TABS_AND_SPACES}* { /* TRUE value (when used outside option value/offset this causes parse error!) */ - RETURN_TOKEN(BOOL_TRUE, "1", 1); + RETURN_TOKEN(TC_BOOL_TRUE, "1", 1); } <INITIAL,ST_VALUE>("false"|"off"|"no"|"none"|"null"){TABS_AND_SPACES}* { /* FALSE value (when used outside option value/offset this causes parse error!)*/ - RETURN_TOKEN(BOOL_FALSE, "", 0); + RETURN_TOKEN(TC_BOOL_FALSE, "", 0); } <INITIAL>{LABEL} { /* Get option name */ @@ -439,7 +439,7 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) } else { yy_push_state(ST_VALUE TSRMLS_CC); } - return '='; + return TC_EQUAL; } <ST_RAW>{RAW_VALUE_CHARS}+ { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */ @@ -458,7 +458,7 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <ST_VALUE,ST_RAW>{TABS_AND_SPACES}*{NEWLINE} { /* End of option value */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } <ST_SECTION_VALUE,ST_VALUE,ST_OFFSET>{CONSTANT} { /* Get constant option value */ @@ -473,14 +473,34 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) return yytext[0]; } -<ST_VALUE>{OPERATORS}{TABS_AND_SPACES}* { /* Boolean operators */ - return yytext[0]; +<ST_VALUE>"|"{TABS_AND_SPACES}* { + return TC_BW_OR; +} + +<ST_VALUE>"&"{TABS_AND_SPACES}* { + return TC_BW_AND; +} + +<ST_VALUE>"~"{TABS_AND_SPACES}* { + return TC_BW_NOT; +} + +<ST_VALUE>"!"{TABS_AND_SPACES}* { + return TC_BOOL_NOT; +} + +<ST_VALUE>"("{TABS_AND_SPACES}* { + return TC_LPAREN; +} + +<ST_VALUE>")"{TABS_AND_SPACES}* { + return TC_RPAREN; } <ST_VALUE>[=] { /* Make = used in option value to trigger error */ yyless(0); BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } <ST_VALUE>{VALUE_CHARS}+ { /* Get everything else as option/offset value */ @@ -493,12 +513,12 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <ST_SECTION_VALUE,ST_VALUE,ST_OFFSET>{TABS_AND_SPACES}*["] { /* Double quoted '"' string start */ yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC); - return '"'; + return TC_QUOTE; } <ST_DOUBLE_QUOTES>["]{TABS_AND_SPACES}* { /* Double quoted '"' string ends */ yy_pop_state(TSRMLS_C); - return '"'; + return TC_QUOTE; } <ST_DOUBLE_QUOTES>[^] { /* Escape double quoted string contents */ @@ -548,25 +568,25 @@ SECTION_VALUE_CHARS ([^$\n\r;"'\]\\]|("\\"{ANY_CHAR})|{LITERAL_DOLLAR}) <INITIAL>{TABS_AND_SPACES}*{NEWLINE} { SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } <INITIAL,ST_VALUE,ST_RAW>{TABS_AND_SPACES}*[;][^\r\n]*{NEWLINE} { /* Comment */ BEGIN(INITIAL); SCNG(lineno)++; - return END_OF_LINE; + return TC_END_OF_LINE; } <INITIAL>{TABS_AND_SPACES}*[#][^\r\n]*{NEWLINE} { /* #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; + return TC_END_OF_LINE; } <ST_VALUE,ST_RAW>[^] { /* End of option value (if EOF is reached before EOL */ BEGIN(INITIAL); - return END_OF_LINE; + return TC_END_OF_LINE; } <*>[^] { diff --git a/Zend/zend_ini_scanner_defs.h b/Zend/zend_ini_scanner_defs.h index 4107238ad3..3ca2b7892f 100644 --- a/Zend/zend_ini_scanner_defs.h +++ b/Zend/zend_ini_scanner_defs.h @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Tue May 25 22:53:58 2010 */ +/* Generated by re2c 0.13.5 on Sun Jul 11 15:00:59 2010 */ #line 3 "Zend/zend_ini_scanner_defs.h" enum YYCONDTYPE { |