1 /* Generated by re2c 0.13.5 on Fri Nov 16 17:44:02 2012 */
2 #line 1 "Zend/zend_ini_scanner.l"
3 /*
4 +----------------------------------------------------------------------+
5 | Zend Engine |
6 +----------------------------------------------------------------------+
7 | Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) |
8 +----------------------------------------------------------------------+
9 | This source file is subject to version 2.00 of the Zend license, |
10 | that is bundled with this package in the file LICENSE, and is |
11 | available through the world-wide-web at the following url: |
12 | http://www.zend.com/license/2_00.txt. |
13 | If you did not receive a copy of the Zend license and are unable to |
14 | obtain it through the world-wide-web, please send a note to |
15 | license@zend.com so we can mail you a copy immediately. |
16 +----------------------------------------------------------------------+
17 | Authors: Zeev Suraski <zeev@zend.com> |
18 | Jani Taskinen <jani@php.net> |
19 | Marcus Boerger <helly@php.net> |
20 | Nuno Lopes <nlopess@php.net> |
21 | Scott MacVicar <scottmac@php.net> |
22 +----------------------------------------------------------------------+
23 */
24
25 /* $Id$ */
26
27 #include <errno.h>
28 #include "zend.h"
29 #include "zend_globals.h"
30 #include <zend_ini_parser.h>
31 #include "zend_ini_scanner.h"
32
33 #if 0
34 # define YYDEBUG(s, c) printf("state: %d char: %c\n", s, c)
35 #else
36 # define YYDEBUG(s, c)
37 #endif
38
39 #include "zend_ini_scanner_defs.h"
40
41 #define YYCTYPE unsigned char
42 /* allow the scanner to read one null byte after the end of the string (from ZEND_MMAP_AHEAD)
43 * so that if will be able to terminate to match the current token (e.g. non-enclosed string) */
44 #define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
45 #define YYCURSOR SCNG(yy_cursor)
46 #define YYLIMIT SCNG(yy_limit)
47 #define YYMARKER SCNG(yy_marker)
48
49 #define YYGETCONDITION() SCNG(yy_state)
50 #define YYSETCONDITION(s) SCNG(yy_state) = s
51
52 #define STATE(name) yyc##name
53
54 /* emulate flex constructs */
55 #define BEGIN(state) YYSETCONDITION(STATE(state))
56 #define YYSTATE YYGETCONDITION()
57 #define yytext ((char*)SCNG(yy_text))
58 #define yyleng SCNG(yy_leng)
59 #define yyless(x) do { YYCURSOR = (unsigned char*)yytext + x; \
60 yyleng = (unsigned int)x; } while(0)
61
62 /* #define yymore() goto yymore_restart */
63
64 /* perform sanity check. If this message is triggered you should
65 increase the ZEND_MMAP_AHEAD value in the zend_streams.h file */
66 #define YYMAXFILL 6
67 #if ZEND_MMAP_AHEAD < (YYMAXFILL + 1)
68 # error ZEND_MMAP_AHEAD should be greater than YYMAXFILL
69 #endif
70
71
72 /* How it works (for the core ini directives):
73 * ===========================================
74 *
75 * 1. Scanner scans file for tokens and passes them to parser.
76 * 2. Parser parses the tokens and passes the name/value pairs to the callback
77 * function which stores them in the configuration hash table.
78 * 3. Later REGISTER_INI_ENTRIES() is called which triggers the actual
79 * registering of ini entries and uses zend_get_configuration_directive()
80 * to fetch the previously stored name/value pair from configuration hash table
81 * and registers the static ini entries which match the name to the value
82 * into EG(ini_directives) hash table.
83 * 4. PATH section entries are used per-request from down to top, each overriding
84 * previous if one exists. zend_alter_ini_entry() is called for each entry.
85 * Settings in PATH section are ZEND_INI_SYSTEM accessible and thus mimics the
86 * php_admin_* directives used within Apache httpd.conf when PHP is compiled as
87 * module for Apache.
88 * 5. User defined ini files (like .htaccess for apache) are parsed for each request and
89 * stored in separate hash defined by SAPI.
90 */
91
92 /* TODO: (ordered by importance :-)
93 * ===============================================================================
94 *
95 * - Separate constant lookup totally from plain strings (using CONSTANT pattern)
96 * - Add #if .. #else .. #endif and ==, !=, <, > , <=, >= operators
97 * - Add #include "some.ini"
98 * - Allow variables to refer to options also when using parse_ini_file()
99 *
100 */
101
102 /* Globals Macros */
103 #define SCNG INI_SCNG
104 #ifdef ZTS
105 ZEND_API ts_rsrc_id ini_scanner_globals_id;
106 #else
107 ZEND_API zend_ini_scanner_globals ini_scanner_globals;
108 #endif
109
110 /* Eat leading whitespace */
111 #define EAT_LEADING_WHITESPACE() \
112 while (yytext[0]) { \
113 if (yytext[0] == ' ' || yytext[0] == '\t') { \
114 SCNG(yy_text)++; \
115 yyleng--; \
116 } else { \
117 break; \
118 } \
119 }
120
121 /* Eat trailing whitespace + extra char */
122 #define EAT_TRAILING_WHITESPACE_EX(ch) \
123 while (yyleng > 0 && ( \
124 (ch != 'X' && yytext[yyleng - 1] == ch) || \
125 yytext[yyleng - 1] == '\n' || \
126 yytext[yyleng - 1] == '\r' || \
127 yytext[yyleng - 1] == '\t' || \
128 yytext[yyleng - 1] == ' ') \
129 ) { \
130 yyleng--; \
131 }
132
133 /* Eat trailing whitespace */
134 #define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
135
136 #define zend_ini_copy_value(retval, str, len) { \
137 Z_STRVAL_P(retval) = zend_strndup(str, len); \
138 Z_STRLEN_P(retval) = len; \
139 Z_TYPE_P(retval) = IS_STRING; \
140 }
141
142 #define RETURN_TOKEN(type, str, len) { \
143 zend_ini_copy_value(ini_lval, str, len); \
144 return type; \
145 }
146
_yy_push_state(int new_state TSRMLS_DC)147 static void _yy_push_state(int new_state TSRMLS_DC)
148 {
149 zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION(), sizeof(int));
150 YYSETCONDITION(new_state);
151 }
152
153 #define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
154
yy_pop_state(TSRMLS_D)155 static void yy_pop_state(TSRMLS_D)
156 {
157 int *stack_state;
158 zend_stack_top(&SCNG(state_stack), (void **) &stack_state);
159 YYSETCONDITION(*stack_state);
160 zend_stack_del_top(&SCNG(state_stack));
161 }
162
yy_scan_buffer(char * str,unsigned int len TSRMLS_DC)163 static void yy_scan_buffer(char *str, unsigned int len TSRMLS_DC)
164 {
165 YYCURSOR = (YYCTYPE*)str;
166 SCNG(yy_start) = YYCURSOR;
167 YYLIMIT = YYCURSOR + len;
168 }
169
170 #define ini_filename SCNG(filename)
171
172 /* {{{ init_ini_scanner()
173 */
init_ini_scanner(int scanner_mode,zend_file_handle * fh TSRMLS_DC)174 static int init_ini_scanner(int scanner_mode, zend_file_handle *fh TSRMLS_DC)
175 {
176 /* Sanity check */
177 if (scanner_mode != ZEND_INI_SCANNER_NORMAL && scanner_mode != ZEND_INI_SCANNER_RAW) {
178 zend_error(E_WARNING, "Invalid scanner mode");
179 return FAILURE;
180 }
181
182 SCNG(lineno) = 1;
183 SCNG(scanner_mode) = scanner_mode;
184 SCNG(yy_in) = fh;
185
186 if (fh != NULL) {
187 ini_filename = zend_strndup(fh->filename, strlen(fh->filename));
188 } else {
189 ini_filename = NULL;
190 }
191
192 zend_stack_init(&SCNG(state_stack));
193 BEGIN(INITIAL);
194
195 return SUCCESS;
196 }
197 /* }}} */
198
199 /* {{{ shutdown_ini_scanner()
200 */
shutdown_ini_scanner(TSRMLS_D)201 void shutdown_ini_scanner(TSRMLS_D)
202 {
203 zend_stack_destroy(&SCNG(state_stack));
204 if (ini_filename) {
205 free(ini_filename);
206 }
207 }
208 /* }}} */
209
210 /* {{{ zend_ini_scanner_get_lineno()
211 */
zend_ini_scanner_get_lineno(TSRMLS_D)212 int zend_ini_scanner_get_lineno(TSRMLS_D)
213 {
214 return SCNG(lineno);
215 }
216 /* }}} */
217
218 /* {{{ zend_ini_scanner_get_filename()
219 */
zend_ini_scanner_get_filename(TSRMLS_D)220 char *zend_ini_scanner_get_filename(TSRMLS_D)
221 {
222 return ini_filename ? ini_filename : "Unknown";
223 }
224 /* }}} */
225
226 /* {{{ zend_ini_open_file_for_scanning()
227 */
zend_ini_open_file_for_scanning(zend_file_handle * fh,int scanner_mode TSRMLS_DC)228 int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode TSRMLS_DC)
229 {
230 char *buf;
231 size_t size;
232
233 if (zend_stream_fixup(fh, &buf, &size TSRMLS_CC) == FAILURE) {
234 return FAILURE;
235 }
236
237 if (init_ini_scanner(scanner_mode, fh TSRMLS_CC) == FAILURE) {
238 zend_file_handle_dtor(fh TSRMLS_CC);
239 return FAILURE;
240 }
241
242 yy_scan_buffer(buf, size TSRMLS_CC);
243
244 return SUCCESS;
245 }
246 /* }}} */
247
248 /* {{{ zend_ini_prepare_string_for_scanning()
249 */
zend_ini_prepare_string_for_scanning(char * str,int scanner_mode TSRMLS_DC)250 int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode TSRMLS_DC)
251 {
252 int len = strlen(str);
253
254 if (init_ini_scanner(scanner_mode, NULL TSRMLS_CC) == FAILURE) {
255 return FAILURE;
256 }
257
258 yy_scan_buffer(str, len TSRMLS_CC);
259
260 return SUCCESS;
261 }
262 /* }}} */
263
264 /* {{{ zend_ini_escape_string()
265 */
zend_ini_escape_string(zval * lval,char * str,int len,char quote_type TSRMLS_DC)266 static void zend_ini_escape_string(zval *lval, char *str, int len, char quote_type TSRMLS_DC)
267 {
268 register char *s, *t;
269 char *end;
270
271 zend_ini_copy_value(lval, str, len);
272
273 /* convert escape sequences */
274 s = t = Z_STRVAL_P(lval);
275 end = s + Z_STRLEN_P(lval);
276
277 while (s < end) {
278 if (*s == '\\') {
279 s++;
280 if (s >= end) {
281 *t++ = '\\';
282 continue;
283 }
284 switch (*s) {
285 case '"':
286 if (*s != quote_type) {
287 *t++ = '\\';
288 *t++ = *s;
289 break;
290 }
291 case '\\':
292 case '$':
293 *t++ = *s;
294 Z_STRLEN_P(lval)--;
295 break;
296 default:
297 *t++ = '\\';
298 *t++ = *s;
299 break;
300 }
301 } else {
302 *t++ = *s;
303 }
304 if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
305 SCNG(lineno)++;
306 }
307 s++;
308 }
309 *t = 0;
310 }
311 /* }}} */
312
ini_lex(zval * ini_lval TSRMLS_DC)313 int ini_lex(zval *ini_lval TSRMLS_DC)
314 {
315 restart:
316 SCNG(yy_text) = YYCURSOR;
317
318 /* yymore_restart: */
319 /* detect EOF */
320 if (YYCURSOR >= YYLIMIT) {
321 if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
322 BEGIN(INITIAL);
323 return END_OF_LINE;
324 }
325 return 0;
326 }
327
328 /* Eat any UTF-8 BOM we find in the first 3 bytes */
329 if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
330 if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
331 YYCURSOR += 3;
332 goto restart;
333 }
334 }
335
336 #line 337 "Zend/zend_ini_scanner.c"
337 {
338 YYCTYPE yych;
339 unsigned int yyaccept = 0;
340 if (YYGETCONDITION() < 4) {
341 if (YYGETCONDITION() < 2) {
342 if (YYGETCONDITION() < 1) {
343 goto yyc_INITIAL;
344 } else {
345 goto yyc_ST_OFFSET;
346 }
347 } else {
348 if (YYGETCONDITION() < 3) {
349 goto yyc_ST_SECTION_VALUE;
350 } else {
351 goto yyc_ST_VALUE;
352 }
353 }
354 } else {
355 if (YYGETCONDITION() < 6) {
356 if (YYGETCONDITION() < 5) {
357 goto yyc_ST_SECTION_RAW;
358 } else {
359 goto yyc_ST_DOUBLE_QUOTES;
360 }
361 } else {
362 if (YYGETCONDITION() < 7) {
363 goto yyc_ST_VARNAME;
364 } else {
365 goto yyc_ST_RAW;
366 }
367 }
368 }
369 /* *********************************** */
370 yyc_INITIAL:
371 {
372 static const unsigned char yybm[] = {
373 144, 144, 144, 144, 144, 144, 144, 144,
374 144, 160, 0, 144, 144, 0, 144, 144,
375 144, 144, 144, 144, 144, 144, 144, 144,
376 144, 144, 144, 144, 144, 144, 144, 144,
377 240, 128, 128, 144, 128, 144, 128, 144,
378 128, 128, 144, 144, 144, 144, 144, 144,
379 144, 144, 144, 144, 144, 144, 144, 144,
380 144, 144, 144, 128, 144, 128, 144, 144,
381 144, 144, 144, 144, 144, 144, 144, 144,
382 144, 144, 144, 144, 144, 144, 144, 144,
383 144, 144, 144, 144, 144, 144, 144, 144,
384 144, 144, 144, 128, 144, 144, 144, 144,
385 144, 144, 144, 144, 144, 144, 144, 144,
386 144, 144, 144, 144, 144, 144, 144, 144,
387 144, 144, 144, 144, 144, 144, 144, 144,
388 144, 144, 144, 128, 128, 128, 128, 144,
389 144, 144, 144, 144, 144, 144, 144, 144,
390 144, 144, 144, 144, 144, 144, 144, 144,
391 144, 144, 144, 144, 144, 144, 144, 144,
392 144, 144, 144, 144, 144, 144, 144, 144,
393 144, 144, 144, 144, 144, 144, 144, 144,
394 144, 144, 144, 144, 144, 144, 144, 144,
395 144, 144, 144, 144, 144, 144, 144, 144,
396 144, 144, 144, 144, 144, 144, 144, 144,
397 144, 144, 144, 144, 144, 144, 144, 144,
398 144, 144, 144, 144, 144, 144, 144, 144,
399 144, 144, 144, 144, 144, 144, 144, 144,
400 144, 144, 144, 144, 144, 144, 144, 144,
401 144, 144, 144, 144, 144, 144, 144, 144,
402 144, 144, 144, 144, 144, 144, 144, 144,
403 144, 144, 144, 144, 144, 144, 144, 144,
404 144, 144, 144, 144, 144, 144, 144, 144,
405 };
406
407 YYDEBUG(0, *YYCURSOR);
408 YYFILL(5);
409 yych = *YYCURSOR;
410 YYDEBUG(-1, yych);
411 switch (yych) {
412 case '\t': goto yy4;
413 case '\n': goto yy6;
414 case '\r': goto yy8;
415 case ' ': goto yy9;
416 case '!':
417 case '"':
418 case '$':
419 case '&':
420 case '(':
421 case ')':
422 case '{':
423 case '|':
424 case '}':
425 case '~': goto yy10;
426 case '#': goto yy12;
427 case '%':
428 case '\'':
429 case '*':
430 case '+':
431 case ',':
432 case '-':
433 case '.':
434 case '/':
435 case ':':
436 case '<':
437 case '>':
438 case '?':
439 case '@':
440 case ']':
441 case '^': goto yy13;
442 case ';': goto yy14;
443 case '=': goto yy16;
444 case 'F':
445 case 'f': goto yy18;
446 case 'N':
447 case 'n': goto yy19;
448 case 'O':
449 case 'o': goto yy20;
450 case 'T':
451 case 't': goto yy21;
452 case 'Y':
453 case 'y': goto yy22;
454 case '[': goto yy23;
455 default: goto yy2;
456 }
457 yy2:
458 YYDEBUG(2, *YYCURSOR);
459 ++YYCURSOR;
460 yych = *YYCURSOR;
461 goto yy26;
462 yy3:
463 YYDEBUG(3, *YYCURSOR);
464 yyleng = YYCURSOR - SCNG(yy_text);
465 #line 429 "Zend/zend_ini_scanner.l"
466 { /* Get option name */
467 /* Eat leading whitespace */
468 EAT_LEADING_WHITESPACE();
469
470 /* Eat trailing whitespace */
471 EAT_TRAILING_WHITESPACE();
472
473 RETURN_TOKEN(TC_LABEL, yytext, yyleng);
474 }
475 #line 476 "Zend/zend_ini_scanner.c"
476 yy4:
477 YYDEBUG(4, *YYCURSOR);
478 yyaccept = 0;
479 yych = *(YYMARKER = ++YYCURSOR);
480 goto yy68;
481 yy5:
482 YYDEBUG(5, *YYCURSOR);
483 yyleng = YYCURSOR - SCNG(yy_text);
484 #line 575 "Zend/zend_ini_scanner.l"
485 {
486 /* eat whitespace */
487 goto restart;
488 }
489 #line 490 "Zend/zend_ini_scanner.c"
490 yy6:
491 YYDEBUG(6, *YYCURSOR);
492 ++YYCURSOR;
493 yy7:
494 YYDEBUG(7, *YYCURSOR);
495 yyleng = YYCURSOR - SCNG(yy_text);
496 #line 580 "Zend/zend_ini_scanner.l"
497 {
498 SCNG(lineno)++;
499 return END_OF_LINE;
500 }
501 #line 502 "Zend/zend_ini_scanner.c"
502 yy8:
503 YYDEBUG(8, *YYCURSOR);
504 yych = *++YYCURSOR;
505 if (yych == '\n') goto yy71;
506 goto yy7;
507 yy9:
508 YYDEBUG(9, *YYCURSOR);
509 yyaccept = 1;
510 yych = *(YYMARKER = ++YYCURSOR);
511 if (yych <= ' ') {
512 if (yych <= '\n') {
513 if (yych <= 0x08) goto yy26;
514 if (yych <= '\t') goto yy67;
515 goto yy71;
516 } else {
517 if (yych == '\r') goto yy72;
518 if (yych <= 0x1F) goto yy26;
519 goto yy69;
520 }
521 } else {
522 if (yych <= ':') {
523 if (yych == '#') goto yy58;
524 goto yy26;
525 } else {
526 if (yych <= ';') goto yy53;
527 if (yych == '=') goto yy51;
528 goto yy26;
529 }
530 }
531 yy10:
532 YYDEBUG(10, *YYCURSOR);
533 ++YYCURSOR;
534 YYDEBUG(11, *YYCURSOR);
535 yyleng = YYCURSOR - SCNG(yy_text);
536 #line 503 "Zend/zend_ini_scanner.l"
537 { /* Disallow these chars outside option values */
538 return yytext[0];
539 }
540 #line 541 "Zend/zend_ini_scanner.c"
541 yy12:
542 YYDEBUG(12, *YYCURSOR);
543 yyaccept = 1;
544 yych = *(YYMARKER = ++YYCURSOR);
545 goto yy59;
546 yy13:
547 YYDEBUG(13, *YYCURSOR);
548 yych = *++YYCURSOR;
549 goto yy26;
550 yy14:
551 YYDEBUG(14, *YYCURSOR);
552 yyaccept = 2;
553 yych = *(YYMARKER = ++YYCURSOR);
554 goto yy54;
555 YYDEBUG(15, *YYCURSOR);
556 yyleng = YYCURSOR - SCNG(yy_text);
557 #line 603 "Zend/zend_ini_scanner.l"
558 {
559 return 0;
560 }
561 #line 562 "Zend/zend_ini_scanner.c"
562 yy16:
563 YYDEBUG(16, *YYCURSOR);
564 ++YYCURSOR;
565 yych = *YYCURSOR;
566 goto yy52;
567 yy17:
568 YYDEBUG(17, *YYCURSOR);
569 yyleng = YYCURSOR - SCNG(yy_text);
570 #line 439 "Zend/zend_ini_scanner.l"
571 { /* Start option value */
572 if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
573 yy_push_state(ST_RAW TSRMLS_CC);
574 } else {
575 yy_push_state(ST_VALUE TSRMLS_CC);
576 }
577 return '=';
578 }
579 #line 580 "Zend/zend_ini_scanner.c"
580 yy18:
581 YYDEBUG(18, *YYCURSOR);
582 yych = *++YYCURSOR;
583 if (yych == 'A') goto yy48;
584 if (yych == 'a') goto yy48;
585 goto yy26;
586 yy19:
587 YYDEBUG(19, *YYCURSOR);
588 yych = *++YYCURSOR;
589 if (yych <= 'U') {
590 if (yych == 'O') goto yy44;
591 if (yych <= 'T') goto yy26;
592 goto yy45;
593 } else {
594 if (yych <= 'o') {
595 if (yych <= 'n') goto yy26;
596 goto yy44;
597 } else {
598 if (yych == 'u') goto yy45;
599 goto yy26;
600 }
601 }
602 yy20:
603 YYDEBUG(20, *YYCURSOR);
604 yych = *++YYCURSOR;
605 if (yych <= 'N') {
606 if (yych == 'F') goto yy38;
607 if (yych <= 'M') goto yy26;
608 goto yy31;
609 } else {
610 if (yych <= 'f') {
611 if (yych <= 'e') goto yy26;
612 goto yy38;
613 } else {
614 if (yych == 'n') goto yy31;
615 goto yy26;
616 }
617 }
618 yy21:
619 YYDEBUG(21, *YYCURSOR);
620 yych = *++YYCURSOR;
621 if (yych == 'R') goto yy36;
622 if (yych == 'r') goto yy36;
623 goto yy26;
624 yy22:
625 YYDEBUG(22, *YYCURSOR);
626 yych = *++YYCURSOR;
627 if (yych == 'E') goto yy27;
628 if (yych == 'e') goto yy27;
629 goto yy26;
630 yy23:
631 YYDEBUG(23, *YYCURSOR);
632 ++YYCURSOR;
633 YYDEBUG(24, *YYCURSOR);
634 yyleng = YYCURSOR - SCNG(yy_text);
635 #line 358 "Zend/zend_ini_scanner.l"
636 { /* Section start */
637 /* Enter section data lookup state */
638 if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
639 yy_push_state(ST_SECTION_RAW TSRMLS_CC);
640 } else {
641 yy_push_state(ST_SECTION_VALUE TSRMLS_CC);
642 }
643 return TC_SECTION;
644 }
645 #line 646 "Zend/zend_ini_scanner.c"
646 yy25:
647 YYDEBUG(25, *YYCURSOR);
648 ++YYCURSOR;
649 YYFILL(1);
650 yych = *YYCURSOR;
651 yy26:
652 YYDEBUG(26, *YYCURSOR);
653 if (yybm[0+yych] & 16) {
654 goto yy25;
655 }
656 if (yych == '[') goto yy28;
657 goto yy3;
658 yy27:
659 YYDEBUG(27, *YYCURSOR);
660 yych = *++YYCURSOR;
661 if (yych == 'S') goto yy31;
662 if (yych == 's') goto yy31;
663 goto yy26;
664 yy28:
665 YYDEBUG(28, *YYCURSOR);
666 ++YYCURSOR;
667 YYFILL(1);
668 yych = *YYCURSOR;
669 YYDEBUG(29, *YYCURSOR);
670 if (yybm[0+yych] & 32) {
671 goto yy28;
672 }
673 YYDEBUG(30, *YYCURSOR);
674 yyleng = YYCURSOR - SCNG(yy_text);
675 #line 383 "Zend/zend_ini_scanner.l"
676 { /* Start of option with offset */
677 /* Eat leading whitespace */
678 EAT_LEADING_WHITESPACE();
679
680 /* Eat trailing whitespace and [ */
681 EAT_TRAILING_WHITESPACE_EX('[');
682
683 /* Enter offset lookup state */
684 yy_push_state(ST_OFFSET TSRMLS_CC);
685
686 RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
687 }
688 #line 689 "Zend/zend_ini_scanner.c"
689 yy31:
690 YYDEBUG(31, *YYCURSOR);
691 ++YYCURSOR;
692 YYFILL(1);
693 yych = *YYCURSOR;
694 YYDEBUG(32, *YYCURSOR);
695 if (yybm[0+yych] & 64) {
696 goto yy31;
697 }
698 if (yych <= '&') {
699 if (yych <= '\r') {
700 if (yych <= '\t') {
701 if (yych <= 0x08) goto yy25;
702 goto yy34;
703 } else {
704 if (yych <= '\n') goto yy33;
705 if (yych <= '\f') goto yy25;
706 }
707 } else {
708 if (yych <= '#') {
709 if (yych <= ' ') goto yy25;
710 if (yych >= '#') goto yy25;
711 } else {
712 if (yych == '%') goto yy25;
713 }
714 }
715 } else {
716 if (yych <= '<') {
717 if (yych <= ')') {
718 if (yych <= '\'') goto yy25;
719 } else {
720 if (yych != ';') goto yy25;
721 }
722 } else {
723 if (yych <= '[') {
724 if (yych <= '=') goto yy33;
725 if (yych <= 'Z') goto yy25;
726 goto yy28;
727 } else {
728 if (yych <= 'z') goto yy25;
729 if (yych >= 0x7F) goto yy25;
730 }
731 }
732 }
733 yy33:
734 YYDEBUG(33, *YYCURSOR);
735 yyleng = YYCURSOR - SCNG(yy_text);
736 #line 421 "Zend/zend_ini_scanner.l"
737 { /* TRUE value (when used outside option value/offset this causes parse error!) */
738 RETURN_TOKEN(BOOL_TRUE, "1", 1);
739 }
740 #line 741 "Zend/zend_ini_scanner.c"
741 yy34:
742 YYDEBUG(34, *YYCURSOR);
743 ++YYCURSOR;
744 YYFILL(1);
745 yych = *YYCURSOR;
746 YYDEBUG(35, *YYCURSOR);
747 if (yych == '\t') goto yy34;
748 if (yych == ' ') goto yy34;
749 goto yy33;
750 yy36:
751 YYDEBUG(36, *YYCURSOR);
752 yych = *++YYCURSOR;
753 if (yych == 'U') goto yy37;
754 if (yych != 'u') goto yy26;
755 yy37:
756 YYDEBUG(37, *YYCURSOR);
757 yych = *++YYCURSOR;
758 if (yych == 'E') goto yy31;
759 if (yych == 'e') goto yy31;
760 goto yy26;
761 yy38:
762 YYDEBUG(38, *YYCURSOR);
763 yych = *++YYCURSOR;
764 if (yych == 'F') goto yy39;
765 if (yych != 'f') goto yy26;
766 yy39:
767 YYDEBUG(39, *YYCURSOR);
768 ++YYCURSOR;
769 YYFILL(1);
770 yych = *YYCURSOR;
771 YYDEBUG(40, *YYCURSOR);
772 if (yych <= '%') {
773 if (yych <= '\r') {
774 if (yych <= '\t') {
775 if (yych <= 0x08) goto yy25;
776 goto yy42;
777 } else {
778 if (yych <= '\n') goto yy41;
779 if (yych <= '\f') goto yy25;
780 }
781 } else {
782 if (yych <= '"') {
783 if (yych <= 0x1F) goto yy25;
784 if (yych <= ' ') goto yy39;
785 } else {
786 if (yych != '$') goto yy25;
787 }
788 }
789 } else {
790 if (yych <= '<') {
791 if (yych <= ')') {
792 if (yych == '\'') goto yy25;
793 } else {
794 if (yych != ';') goto yy25;
795 }
796 } else {
797 if (yych <= '[') {
798 if (yych <= '=') goto yy41;
799 if (yych <= 'Z') goto yy25;
800 goto yy28;
801 } else {
802 if (yych <= 'z') goto yy25;
803 if (yych >= 0x7F) goto yy25;
804 }
805 }
806 }
807 yy41:
808 YYDEBUG(41, *YYCURSOR);
809 yyleng = YYCURSOR - SCNG(yy_text);
810 #line 425 "Zend/zend_ini_scanner.l"
811 { /* FALSE value (when used outside option value/offset this causes parse error!)*/
812 RETURN_TOKEN(BOOL_FALSE, "", 0);
813 }
814 #line 815 "Zend/zend_ini_scanner.c"
815 yy42:
816 YYDEBUG(42, *YYCURSOR);
817 ++YYCURSOR;
818 YYFILL(1);
819 yych = *YYCURSOR;
820 YYDEBUG(43, *YYCURSOR);
821 if (yych == '\t') goto yy42;
822 if (yych == ' ') goto yy42;
823 goto yy41;
824 yy44:
825 YYDEBUG(44, *YYCURSOR);
826 yych = *++YYCURSOR;
827 if (yych <= '&') {
828 if (yych <= 0x1F) {
829 if (yych <= '\n') {
830 if (yych <= 0x08) goto yy26;
831 if (yych <= '\t') goto yy42;
832 goto yy41;
833 } else {
834 if (yych == '\r') goto yy41;
835 goto yy26;
836 }
837 } else {
838 if (yych <= '#') {
839 if (yych <= ' ') goto yy39;
840 if (yych <= '"') goto yy41;
841 goto yy26;
842 } else {
843 if (yych == '%') goto yy26;
844 goto yy41;
845 }
846 }
847 } else {
848 if (yych <= '=') {
849 if (yych <= ':') {
850 if (yych <= '\'') goto yy26;
851 if (yych <= ')') goto yy41;
852 goto yy26;
853 } else {
854 if (yych == '<') goto yy26;
855 goto yy41;
856 }
857 } else {
858 if (yych <= 'm') {
859 if (yych == 'N') goto yy47;
860 goto yy26;
861 } else {
862 if (yych <= 'n') goto yy47;
863 if (yych <= 'z') goto yy26;
864 if (yych <= '~') goto yy41;
865 goto yy26;
866 }
867 }
868 }
869 yy45:
870 YYDEBUG(45, *YYCURSOR);
871 yych = *++YYCURSOR;
872 if (yych == 'L') goto yy46;
873 if (yych != 'l') goto yy26;
874 yy46:
875 YYDEBUG(46, *YYCURSOR);
876 yych = *++YYCURSOR;
877 if (yych == 'L') goto yy39;
878 if (yych == 'l') goto yy39;
879 goto yy26;
880 yy47:
881 YYDEBUG(47, *YYCURSOR);
882 yych = *++YYCURSOR;
883 if (yych == 'E') goto yy39;
884 if (yych == 'e') goto yy39;
885 goto yy26;
886 yy48:
887 YYDEBUG(48, *YYCURSOR);
888 yych = *++YYCURSOR;
889 if (yych == 'L') goto yy49;
890 if (yych != 'l') goto yy26;
891 yy49:
892 YYDEBUG(49, *YYCURSOR);
893 yych = *++YYCURSOR;
894 if (yych == 'S') goto yy50;
895 if (yych != 's') goto yy26;
896 yy50:
897 YYDEBUG(50, *YYCURSOR);
898 yych = *++YYCURSOR;
899 if (yych == 'E') goto yy39;
900 if (yych == 'e') goto yy39;
901 goto yy26;
902 yy51:
903 YYDEBUG(51, *YYCURSOR);
904 ++YYCURSOR;
905 YYFILL(1);
906 yych = *YYCURSOR;
907 yy52:
908 YYDEBUG(52, *YYCURSOR);
909 if (yych == '\t') goto yy51;
910 if (yych == ' ') goto yy51;
911 goto yy17;
912 yy53:
913 YYDEBUG(53, *YYCURSOR);
914 ++YYCURSOR;
915 YYFILL(2);
916 yych = *YYCURSOR;
917 yy54:
918 YYDEBUG(54, *YYCURSOR);
919 if (yybm[0+yych] & 128) {
920 goto yy53;
921 }
922 if (yych >= '\r') goto yy57;
923 yy55:
924 YYDEBUG(55, *YYCURSOR);
925 ++YYCURSOR;
926 yy56:
927 YYDEBUG(56, *YYCURSOR);
928 yyleng = YYCURSOR - SCNG(yy_text);
929 #line 585 "Zend/zend_ini_scanner.l"
930 { /* Comment */
931 BEGIN(INITIAL);
932 SCNG(lineno)++;
933 return END_OF_LINE;
934 }
935 #line 936 "Zend/zend_ini_scanner.c"
936 yy57:
937 YYDEBUG(57, *YYCURSOR);
938 yych = *++YYCURSOR;
939 if (yych == '\n') goto yy55;
940 goto yy56;
941 yy58:
942 YYDEBUG(58, *YYCURSOR);
943 yyaccept = 1;
944 YYMARKER = ++YYCURSOR;
945 YYFILL(2);
946 yych = *YYCURSOR;
947 yy59:
948 YYDEBUG(59, *YYCURSOR);
949 if (yych <= '&') {
950 if (yych <= '\r') {
951 if (yych <= '\t') {
952 if (yych <= 0x08) goto yy58;
953 } else {
954 if (yych <= '\n') goto yy64;
955 if (yych <= '\f') goto yy58;
956 goto yy66;
957 }
958 } else {
959 if (yych <= '#') {
960 if (yych <= ' ') goto yy58;
961 if (yych >= '#') goto yy58;
962 } else {
963 if (yych == '%') goto yy58;
964 }
965 }
966 } else {
967 if (yych <= '<') {
968 if (yych <= ')') {
969 if (yych <= '\'') goto yy58;
970 } else {
971 if (yych != ';') goto yy58;
972 }
973 } else {
974 if (yych <= '[') {
975 if (yych <= '=') goto yy60;
976 if (yych <= 'Z') goto yy58;
977 goto yy62;
978 } else {
979 if (yych <= 'z') goto yy58;
980 if (yych >= 0x7F) goto yy58;
981 }
982 }
983 }
984 yy60:
985 YYDEBUG(60, *YYCURSOR);
986 ++YYCURSOR;
987 YYFILL(2);
988 yych = *YYCURSOR;
989 YYDEBUG(61, *YYCURSOR);
990 if (yych == '\n') goto yy64;
991 if (yych == '\r') goto yy66;
992 goto yy60;
993 yy62:
994 YYDEBUG(62, *YYCURSOR);
995 yyaccept = 3;
996 YYMARKER = ++YYCURSOR;
997 YYFILL(2);
998 yych = *YYCURSOR;
999 YYDEBUG(63, *YYCURSOR);
1000 if (yych <= '\f') {
1001 if (yych <= 0x08) goto yy60;
1002 if (yych <= '\t') goto yy62;
1003 if (yych >= '\v') goto yy60;
1004 } else {
1005 if (yych <= '\r') goto yy66;
1006 if (yych == ' ') goto yy62;
1007 goto yy60;
1008 }
1009 yy64:
1010 YYDEBUG(64, *YYCURSOR);
1011 ++YYCURSOR;
1012 yy65:
1013 YYDEBUG(65, *YYCURSOR);
1014 yyleng = YYCURSOR - SCNG(yy_text);
1015 #line 591 "Zend/zend_ini_scanner.l"
1016 { /* #Comment */
1017 zend_error(E_DEPRECATED, "Comments starting with '#' are deprecated in %s on line %d", zend_ini_scanner_get_filename(TSRMLS_C), SCNG(lineno));
1018 BEGIN(INITIAL);
1019 SCNG(lineno)++;
1020 return END_OF_LINE;
1021 }
1022 #line 1023 "Zend/zend_ini_scanner.c"
1023 yy66:
1024 YYDEBUG(66, *YYCURSOR);
1025 yych = *++YYCURSOR;
1026 if (yych == '\n') goto yy64;
1027 goto yy65;
1028 yy67:
1029 YYDEBUG(67, *YYCURSOR);
1030 yyaccept = 0;
1031 YYMARKER = ++YYCURSOR;
1032 YYFILL(2);
1033 yych = *YYCURSOR;
1034 yy68:
1035 YYDEBUG(68, *YYCURSOR);
1036 if (yych <= ' ') {
1037 if (yych <= '\n') {
1038 if (yych <= 0x08) goto yy5;
1039 if (yych <= '\t') goto yy67;
1040 goto yy71;
1041 } else {
1042 if (yych == '\r') goto yy72;
1043 if (yych <= 0x1F) goto yy5;
1044 goto yy67;
1045 }
1046 } else {
1047 if (yych <= ':') {
1048 if (yych == '#') goto yy60;
1049 goto yy5;
1050 } else {
1051 if (yych <= ';') goto yy53;
1052 if (yych == '=') goto yy51;
1053 goto yy5;
1054 }
1055 }
1056 yy69:
1057 YYDEBUG(69, *YYCURSOR);
1058 yyaccept = 1;
1059 YYMARKER = ++YYCURSOR;
1060 YYFILL(2);
1061 yych = *YYCURSOR;
1062 YYDEBUG(70, *YYCURSOR);
1063 if (yych <= '%') {
1064 if (yych <= '\r') {
1065 if (yych <= '\t') {
1066 if (yych <= 0x08) goto yy25;
1067 goto yy67;
1068 } else {
1069 if (yych <= '\n') goto yy71;
1070 if (yych <= '\f') goto yy25;
1071 goto yy72;
1072 }
1073 } else {
1074 if (yych <= '"') {
1075 if (yych <= 0x1F) goto yy25;
1076 if (yych <= ' ') goto yy69;
1077 goto yy3;
1078 } else {
1079 if (yych <= '#') goto yy58;
1080 if (yych <= '$') goto yy3;
1081 goto yy25;
1082 }
1083 }
1084 } else {
1085 if (yych <= '<') {
1086 if (yych <= ')') {
1087 if (yych == '\'') goto yy25;
1088 goto yy3;
1089 } else {
1090 if (yych == ';') goto yy53;
1091 goto yy25;
1092 }
1093 } else {
1094 if (yych <= '[') {
1095 if (yych <= '=') goto yy51;
1096 if (yych <= 'Z') goto yy25;
1097 goto yy28;
1098 } else {
1099 if (yych <= 'z') goto yy25;
1100 if (yych <= '~') goto yy3;
1101 goto yy25;
1102 }
1103 }
1104 }
1105 yy71:
1106 YYDEBUG(71, *YYCURSOR);
1107 yych = *++YYCURSOR;
1108 goto yy7;
1109 yy72:
1110 YYDEBUG(72, *YYCURSOR);
1111 ++YYCURSOR;
1112 if ((yych = *YYCURSOR) == '\n') goto yy71;
1113 goto yy7;
1114 }
1115 /* *********************************** */
1116 yyc_ST_DOUBLE_QUOTES:
1117 {
1118 static const unsigned char yybm[] = {
1119 0, 0, 0, 0, 0, 0, 0, 0,
1120 0, 128, 0, 0, 0, 0, 0, 0,
1121 0, 0, 0, 0, 0, 0, 0, 0,
1122 0, 0, 0, 0, 0, 0, 0, 0,
1123 128, 0, 0, 0, 0, 0, 0, 0,
1124 0, 0, 0, 0, 0, 0, 0, 0,
1125 0, 0, 0, 0, 0, 0, 0, 0,
1126 0, 0, 0, 0, 0, 0, 0, 0,
1127 0, 0, 0, 0, 0, 0, 0, 0,
1128 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, 0, 0, 0, 0, 0, 0, 0,
1130 0, 0, 0, 0, 0, 0, 0, 0,
1131 0, 0, 0, 0, 0, 0, 0, 0,
1132 0, 0, 0, 0, 0, 0, 0, 0,
1133 0, 0, 0, 0, 0, 0, 0, 0,
1134 0, 0, 0, 0, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0,
1136 0, 0, 0, 0, 0, 0, 0, 0,
1137 0, 0, 0, 0, 0, 0, 0, 0,
1138 0, 0, 0, 0, 0, 0, 0, 0,
1139 0, 0, 0, 0, 0, 0, 0, 0,
1140 0, 0, 0, 0, 0, 0, 0, 0,
1141 0, 0, 0, 0, 0, 0, 0, 0,
1142 0, 0, 0, 0, 0, 0, 0, 0,
1143 0, 0, 0, 0, 0, 0, 0, 0,
1144 0, 0, 0, 0, 0, 0, 0, 0,
1145 0, 0, 0, 0, 0, 0, 0, 0,
1146 0, 0, 0, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, 0, 0,
1148 0, 0, 0, 0, 0, 0, 0, 0,
1149 0, 0, 0, 0, 0, 0, 0, 0,
1150 0, 0, 0, 0, 0, 0, 0, 0,
1151 };
1152 YYDEBUG(73, *YYCURSOR);
1153 YYFILL(2);
1154 yych = *YYCURSOR;
1155 if (yych == '"') goto yy77;
1156 if (yych == '$') goto yy79;
1157 YYDEBUG(75, *YYCURSOR);
1158 ++YYCURSOR;
1159 yy76:
1160 YYDEBUG(76, *YYCURSOR);
1161 yyleng = YYCURSOR - SCNG(yy_text);
1162 #line 535 "Zend/zend_ini_scanner.l"
1163 { /* Escape double quoted string contents */
1164 if (YYCURSOR > YYLIMIT) {
1165 return 0;
1166 }
1167
1168 while (YYCURSOR < YYLIMIT) {
1169 switch (*YYCURSOR++) {
1170 case '"':
1171 if (YYCURSOR < YYLIMIT && YYCURSOR[-2] == '\\' && *YYCURSOR != '\r' && *YYCURSOR != '\n') {
1172 continue;
1173 }
1174 break;
1175 case '$':
1176 if (*YYCURSOR == '{') {
1177 break;
1178 }
1179 continue;
1180 case '\\':
1181 if (YYCURSOR < YYLIMIT && *YYCURSOR != '"') {
1182 YYCURSOR++;
1183 }
1184 /* fall through */
1185 default:
1186 continue;
1187 }
1188
1189 YYCURSOR--;
1190 break;
1191 }
1192
1193 yyleng = YYCURSOR - SCNG(yy_text);
1194
1195 zend_ini_escape_string(ini_lval, yytext, yyleng, '"' TSRMLS_CC);
1196 return TC_QUOTED_STRING;
1197 }
1198 #line 1199 "Zend/zend_ini_scanner.c"
1199 yy77:
1200 YYDEBUG(77, *YYCURSOR);
1201 ++YYCURSOR;
1202 yych = *YYCURSOR;
1203 goto yy83;
1204 yy78:
1205 YYDEBUG(78, *YYCURSOR);
1206 yyleng = YYCURSOR - SCNG(yy_text);
1207 #line 530 "Zend/zend_ini_scanner.l"
1208 { /* Double quoted '"' string ends */
1209 yy_pop_state(TSRMLS_C);
1210 return '"';
1211 }
1212 #line 1213 "Zend/zend_ini_scanner.c"
1213 yy79:
1214 YYDEBUG(79, *YYCURSOR);
1215 yych = *++YYCURSOR;
1216 if (yych != '{') goto yy76;
1217 YYDEBUG(80, *YYCURSOR);
1218 ++YYCURSOR;
1219 YYDEBUG(81, *YYCURSOR);
1220 yyleng = YYCURSOR - SCNG(yy_text);
1221 #line 401 "Zend/zend_ini_scanner.l"
1222 { /* Variable start */
1223 yy_push_state(ST_VARNAME TSRMLS_CC);
1224 return TC_DOLLAR_CURLY;
1225 }
1226 #line 1227 "Zend/zend_ini_scanner.c"
1227 yy82:
1228 YYDEBUG(82, *YYCURSOR);
1229 ++YYCURSOR;
1230 YYFILL(1);
1231 yych = *YYCURSOR;
1232 yy83:
1233 YYDEBUG(83, *YYCURSOR);
1234 if (yybm[0+yych] & 128) {
1235 goto yy82;
1236 }
1237 goto yy78;
1238 }
1239 /* *********************************** */
1240 yyc_ST_OFFSET:
1241 {
1242 static const unsigned char yybm[] = {
1243 66, 66, 66, 66, 66, 66, 66, 66,
1244 66, 194, 64, 66, 66, 64, 66, 66,
1245 66, 66, 66, 66, 66, 66, 66, 66,
1246 66, 66, 66, 66, 66, 66, 66, 66,
1247 194, 66, 64, 66, 68, 66, 66, 0,
1248 66, 66, 66, 66, 66, 66, 66, 66,
1249 114, 114, 114, 114, 114, 114, 114, 114,
1250 114, 114, 66, 64, 66, 66, 66, 66,
1251 66, 82, 82, 82, 82, 82, 82, 82,
1252 82, 82, 82, 82, 82, 82, 82, 82,
1253 82, 82, 82, 82, 82, 82, 82, 82,
1254 82, 82, 82, 66, 72, 64, 66, 82,
1255 66, 82, 82, 82, 82, 82, 82, 82,
1256 82, 82, 82, 82, 82, 82, 82, 82,
1257 82, 82, 82, 82, 82, 82, 82, 82,
1258 82, 82, 82, 66, 66, 66, 66, 66,
1259 66, 66, 66, 66, 66, 66, 66, 66,
1260 66, 66, 66, 66, 66, 66, 66, 66,
1261 66, 66, 66, 66, 66, 66, 66, 66,
1262 66, 66, 66, 66, 66, 66, 66, 66,
1263 66, 66, 66, 66, 66, 66, 66, 66,
1264 66, 66, 66, 66, 66, 66, 66, 66,
1265 66, 66, 66, 66, 66, 66, 66, 66,
1266 66, 66, 66, 66, 66, 66, 66, 66,
1267 66, 66, 66, 66, 66, 66, 66, 66,
1268 66, 66, 66, 66, 66, 66, 66, 66,
1269 66, 66, 66, 66, 66, 66, 66, 66,
1270 66, 66, 66, 66, 66, 66, 66, 66,
1271 66, 66, 66, 66, 66, 66, 66, 66,
1272 66, 66, 66, 66, 66, 66, 66, 66,
1273 66, 66, 66, 66, 66, 66, 66, 66,
1274 66, 66, 66, 66, 66, 66, 66, 66,
1275 };
1276 YYDEBUG(84, *YYCURSOR);
1277 YYFILL(2);
1278 yych = *YYCURSOR;
1279 if (yych <= '-') {
1280 if (yych <= ' ') {
1281 if (yych <= '\n') {
1282 if (yych <= 0x08) goto yy86;
1283 if (yych <= '\t') goto yy88;
1284 goto yy89;
1285 } else {
1286 if (yych == '\r') goto yy89;
1287 if (yych >= ' ') goto yy88;
1288 }
1289 } else {
1290 if (yych <= '$') {
1291 if (yych == '"') goto yy91;
1292 if (yych >= '$') goto yy93;
1293 } else {
1294 if (yych == '\'') goto yy94;
1295 if (yych >= '-') goto yy95;
1296 }
1297 }
1298 } else {
1299 if (yych <= 'Z') {
1300 if (yych <= '9') {
1301 if (yych <= '.') goto yy96;
1302 if (yych >= '0') goto yy97;
1303 } else {
1304 if (yych == ';') goto yy89;
1305 if (yych >= 'A') goto yy99;
1306 }
1307 } else {
1308 if (yych <= '^') {
1309 if (yych <= '[') goto yy86;
1310 if (yych <= '\\') goto yy101;
1311 if (yych <= ']') goto yy102;
1312 } else {
1313 if (yych == '`') goto yy86;
1314 if (yych <= 'z') goto yy99;
1315 }
1316 }
1317 }
1318 yy86:
1319 YYDEBUG(86, *YYCURSOR);
1320 yyaccept = 0;
1321 yych = *(YYMARKER = ++YYCURSOR);
1322 goto yy105;
1323 yy87:
1324 YYDEBUG(87, *YYCURSOR);
1325 yyleng = YYCURSOR - SCNG(yy_text);
1326 #line 521 "Zend/zend_ini_scanner.l"
1327 { /* Get rest as section/offset value */
1328 RETURN_TOKEN(TC_STRING, yytext, yyleng);
1329 }
1330 #line 1331 "Zend/zend_ini_scanner.c"
1331 yy88:
1332 YYDEBUG(88, *YYCURSOR);
1333 yyaccept = 0;
1334 yych = *(YYMARKER = ++YYCURSOR);
1335 if (yybm[0+yych] & 128) {
1336 goto yy131;
1337 }
1338 if (yych == '"') goto yy133;
1339 if (yych == ']') goto yy134;
1340 goto yy105;
1341 yy89:
1342 YYDEBUG(89, *YYCURSOR);
1343 ++YYCURSOR;
1344 yy90:
1345 YYDEBUG(90, *YYCURSOR);
1346 yyleng = YYCURSOR - SCNG(yy_text);
1347 #line 603 "Zend/zend_ini_scanner.l"
1348 {
1349 return 0;
1350 }
1351 #line 1352 "Zend/zend_ini_scanner.c"
1352 yy91:
1353 YYDEBUG(91, *YYCURSOR);
1354 ++YYCURSOR;
1355 yy92:
1356 YYDEBUG(92, *YYCURSOR);
1357 yyleng = YYCURSOR - SCNG(yy_text);
1358 #line 525 "Zend/zend_ini_scanner.l"
1359 { /* Double quoted '"' string start */
1360 yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
1361 return '"';
1362 }
1363 #line 1364 "Zend/zend_ini_scanner.c"
1364 yy93:
1365 YYDEBUG(93, *YYCURSOR);
1366 yych = *++YYCURSOR;
1367 if (yych <= '\\') {
1368 if (yych <= 0x00) goto yy90;
1369 if (yych <= '[') goto yy104;
1370 goto yy109;
1371 } else {
1372 if (yych == '{') goto yy129;
1373 goto yy104;
1374 }
1375 yy94:
1376 YYDEBUG(94, *YYCURSOR);
1377 yyaccept = 1;
1378 yych = *(YYMARKER = ++YYCURSOR);
1379 if (yybm[0+yych] & 64) {
1380 goto yy125;
1381 }
1382 goto yy90;
1383 yy95:
1384 YYDEBUG(95, *YYCURSOR);
1385 yyaccept = 0;
1386 yych = *(YYMARKER = ++YYCURSOR);
1387 if (yych <= '/') goto yy105;
1388 if (yych <= '9') goto yy123;
1389 goto yy105;
1390 yy96:
1391 YYDEBUG(96, *YYCURSOR);
1392 yyaccept = 0;
1393 yych = *(YYMARKER = ++YYCURSOR);
1394 if (yych <= '/') goto yy105;
1395 if (yych <= '9') goto yy121;
1396 goto yy105;
1397 yy97:
1398 YYDEBUG(97, *YYCURSOR);
1399 yyaccept = 2;
1400 yych = *(YYMARKER = ++YYCURSOR);
1401 if (yych <= '\'') {
1402 if (yych <= '\r') {
1403 if (yych == '\n') goto yy98;
1404 if (yych <= '\f') goto yy105;
1405 } else {
1406 if (yych == '"') goto yy98;
1407 if (yych <= '&') goto yy105;
1408 }
1409 } else {
1410 if (yych <= '9') {
1411 if (yych == '.') goto yy117;
1412 if (yych <= '/') goto yy105;
1413 goto yy119;
1414 } else {
1415 if (yych <= ';') {
1416 if (yych <= ':') goto yy105;
1417 } else {
1418 if (yych != ']') goto yy105;
1419 }
1420 }
1421 }
1422 yy98:
1423 YYDEBUG(98, *YYCURSOR);
1424 yyleng = YYCURSOR - SCNG(yy_text);
1425 #line 499 "Zend/zend_ini_scanner.l"
1426 { /* Get number option value as string */
1427 RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1428 }
1429 #line 1430 "Zend/zend_ini_scanner.c"
1430 yy99:
1431 YYDEBUG(99, *YYCURSOR);
1432 yyaccept = 3;
1433 yych = *(YYMARKER = ++YYCURSOR);
1434 if (yybm[0+yych] & 16) {
1435 goto yy115;
1436 }
1437 if (yych <= '"') {
1438 if (yych <= '\f') {
1439 if (yych != '\n') goto yy105;
1440 } else {
1441 if (yych <= '\r') goto yy100;
1442 if (yych <= '!') goto yy105;
1443 }
1444 } else {
1445 if (yych <= ':') {
1446 if (yych != '\'') goto yy105;
1447 } else {
1448 if (yych <= ';') goto yy100;
1449 if (yych != ']') goto yy105;
1450 }
1451 }
1452 yy100:
1453 YYDEBUG(100, *YYCURSOR);
1454 yyleng = YYCURSOR - SCNG(yy_text);
1455 #line 495 "Zend/zend_ini_scanner.l"
1456 { /* Get constant option value */
1457 RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1458 }
1459 #line 1460 "Zend/zend_ini_scanner.c"
1460 yy101:
1461 YYDEBUG(101, *YYCURSOR);
1462 yych = *++YYCURSOR;
1463 goto yy104;
1464 yy102:
1465 YYDEBUG(102, *YYCURSOR);
1466 ++YYCURSOR;
1467 yy103:
1468 YYDEBUG(103, *YYCURSOR);
1469 yyleng = YYCURSOR - SCNG(yy_text);
1470 #line 396 "Zend/zend_ini_scanner.l"
1471 { /* End of section or an option offset */
1472 BEGIN(INITIAL);
1473 return ']';
1474 }
1475 #line 1476 "Zend/zend_ini_scanner.c"
1476 yy104:
1477 YYDEBUG(104, *YYCURSOR);
1478 yyaccept = 0;
1479 YYMARKER = ++YYCURSOR;
1480 YYFILL(1);
1481 yych = *YYCURSOR;
1482 yy105:
1483 YYDEBUG(105, *YYCURSOR);
1484 if (yybm[0+yych] & 2) {
1485 goto yy104;
1486 }
1487 if (yych == '$') goto yy107;
1488 if (yych != '\\') goto yy87;
1489 yy106:
1490 YYDEBUG(106, *YYCURSOR);
1491 ++YYCURSOR;
1492 YYFILL(1);
1493 yych = *YYCURSOR;
1494 goto yy104;
1495 yy107:
1496 YYDEBUG(107, *YYCURSOR);
1497 ++YYCURSOR;
1498 YYFILL(1);
1499 yych = *YYCURSOR;
1500 if (yych <= '\\') {
1501 if (yych <= 0x00) goto yy108;
1502 if (yych <= '[') goto yy104;
1503 goto yy109;
1504 } else {
1505 if (yych != '{') goto yy104;
1506 }
1507 yy108:
1508 YYDEBUG(108, *YYCURSOR);
1509 YYCURSOR = YYMARKER;
1510 if (yyaccept <= 1) {
1511 if (yyaccept <= 0) {
1512 goto yy87;
1513 } else {
1514 goto yy90;
1515 }
1516 } else {
1517 if (yyaccept <= 2) {
1518 goto yy98;
1519 } else {
1520 goto yy100;
1521 }
1522 }
1523 yy109:
1524 YYDEBUG(109, *YYCURSOR);
1525 ++YYCURSOR;
1526 YYFILL(1);
1527 yych = *YYCURSOR;
1528 if (yybm[0+yych] & 4) {
1529 goto yy110;
1530 }
1531 if (yych == '\\') goto yy112;
1532 goto yy104;
1533 yy110:
1534 YYDEBUG(110, *YYCURSOR);
1535 ++YYCURSOR;
1536 YYFILL(1);
1537 yych = *YYCURSOR;
1538 YYDEBUG(111, *YYCURSOR);
1539 if (yybm[0+yych] & 4) {
1540 goto yy110;
1541 }
1542 if (yych == '\\') goto yy114;
1543 goto yy104;
1544 yy112:
1545 YYDEBUG(112, *YYCURSOR);
1546 ++YYCURSOR;
1547 YYFILL(1);
1548 yych = *YYCURSOR;
1549 YYDEBUG(113, *YYCURSOR);
1550 if (yybm[0+yych] & 4) {
1551 goto yy110;
1552 }
1553 if (yych == '\\') goto yy112;
1554 goto yy104;
1555 yy114:
1556 YYDEBUG(114, *YYCURSOR);
1557 ++YYCURSOR;
1558 YYFILL(1);
1559 yych = *YYCURSOR;
1560 if (yybm[0+yych] & 4) {
1561 goto yy110;
1562 }
1563 if (yych == '\\') goto yy112;
1564 goto yy104;
1565 yy115:
1566 YYDEBUG(115, *YYCURSOR);
1567 yyaccept = 3;
1568 YYMARKER = ++YYCURSOR;
1569 YYFILL(1);
1570 yych = *YYCURSOR;
1571 YYDEBUG(116, *YYCURSOR);
1572 if (yybm[0+yych] & 16) {
1573 goto yy115;
1574 }
1575 if (yych <= '$') {
1576 if (yych <= '\r') {
1577 if (yych == '\n') goto yy100;
1578 if (yych <= '\f') goto yy104;
1579 goto yy100;
1580 } else {
1581 if (yych == '"') goto yy100;
1582 if (yych <= '#') goto yy104;
1583 goto yy107;
1584 }
1585 } else {
1586 if (yych <= ';') {
1587 if (yych == '\'') goto yy100;
1588 if (yych <= ':') goto yy104;
1589 goto yy100;
1590 } else {
1591 if (yych <= '[') goto yy104;
1592 if (yych <= '\\') goto yy106;
1593 if (yych <= ']') goto yy100;
1594 goto yy104;
1595 }
1596 }
1597 yy117:
1598 YYDEBUG(117, *YYCURSOR);
1599 yyaccept = 2;
1600 YYMARKER = ++YYCURSOR;
1601 YYFILL(1);
1602 yych = *YYCURSOR;
1603 YYDEBUG(118, *YYCURSOR);
1604 if (yybm[0+yych] & 32) {
1605 goto yy117;
1606 }
1607 if (yych <= '$') {
1608 if (yych <= '\r') {
1609 if (yych == '\n') goto yy98;
1610 if (yych <= '\f') goto yy104;
1611 goto yy98;
1612 } else {
1613 if (yych == '"') goto yy98;
1614 if (yych <= '#') goto yy104;
1615 goto yy107;
1616 }
1617 } else {
1618 if (yych <= ';') {
1619 if (yych == '\'') goto yy98;
1620 if (yych <= ':') goto yy104;
1621 goto yy98;
1622 } else {
1623 if (yych <= '[') goto yy104;
1624 if (yych <= '\\') goto yy106;
1625 if (yych <= ']') goto yy98;
1626 goto yy104;
1627 }
1628 }
1629 yy119:
1630 YYDEBUG(119, *YYCURSOR);
1631 yyaccept = 2;
1632 YYMARKER = ++YYCURSOR;
1633 YYFILL(1);
1634 yych = *YYCURSOR;
1635 YYDEBUG(120, *YYCURSOR);
1636 if (yych <= '\'') {
1637 if (yych <= '!') {
1638 if (yych <= '\n') {
1639 if (yych <= '\t') goto yy104;
1640 goto yy98;
1641 } else {
1642 if (yych == '\r') goto yy98;
1643 goto yy104;
1644 }
1645 } else {
1646 if (yych <= '#') {
1647 if (yych <= '"') goto yy98;
1648 goto yy104;
1649 } else {
1650 if (yych <= '$') goto yy107;
1651 if (yych <= '&') goto yy104;
1652 goto yy98;
1653 }
1654 }
1655 } else {
1656 if (yych <= ':') {
1657 if (yych <= '.') {
1658 if (yych <= '-') goto yy104;
1659 goto yy117;
1660 } else {
1661 if (yych <= '/') goto yy104;
1662 if (yych <= '9') goto yy119;
1663 goto yy104;
1664 }
1665 } else {
1666 if (yych <= '[') {
1667 if (yych <= ';') goto yy98;
1668 goto yy104;
1669 } else {
1670 if (yych <= '\\') goto yy106;
1671 if (yych <= ']') goto yy98;
1672 goto yy104;
1673 }
1674 }
1675 }
1676 yy121:
1677 YYDEBUG(121, *YYCURSOR);
1678 yyaccept = 2;
1679 YYMARKER = ++YYCURSOR;
1680 YYFILL(1);
1681 yych = *YYCURSOR;
1682 YYDEBUG(122, *YYCURSOR);
1683 if (yych <= '&') {
1684 if (yych <= '\r') {
1685 if (yych == '\n') goto yy98;
1686 if (yych <= '\f') goto yy104;
1687 goto yy98;
1688 } else {
1689 if (yych <= '"') {
1690 if (yych <= '!') goto yy104;
1691 goto yy98;
1692 } else {
1693 if (yych == '$') goto yy107;
1694 goto yy104;
1695 }
1696 }
1697 } else {
1698 if (yych <= ':') {
1699 if (yych <= '\'') goto yy98;
1700 if (yych <= '/') goto yy104;
1701 if (yych <= '9') goto yy121;
1702 goto yy104;
1703 } else {
1704 if (yych <= '[') {
1705 if (yych <= ';') goto yy98;
1706 goto yy104;
1707 } else {
1708 if (yych <= '\\') goto yy106;
1709 if (yych <= ']') goto yy98;
1710 goto yy104;
1711 }
1712 }
1713 }
1714 yy123:
1715 YYDEBUG(123, *YYCURSOR);
1716 yyaccept = 2;
1717 YYMARKER = ++YYCURSOR;
1718 YYFILL(1);
1719 yych = *YYCURSOR;
1720 YYDEBUG(124, *YYCURSOR);
1721 if (yych <= '&') {
1722 if (yych <= '\r') {
1723 if (yych == '\n') goto yy98;
1724 if (yych <= '\f') goto yy104;
1725 goto yy98;
1726 } else {
1727 if (yych <= '"') {
1728 if (yych <= '!') goto yy104;
1729 goto yy98;
1730 } else {
1731 if (yych == '$') goto yy107;
1732 goto yy104;
1733 }
1734 }
1735 } else {
1736 if (yych <= ':') {
1737 if (yych <= '\'') goto yy98;
1738 if (yych <= '/') goto yy104;
1739 if (yych <= '9') goto yy123;
1740 goto yy104;
1741 } else {
1742 if (yych <= '[') {
1743 if (yych <= ';') goto yy98;
1744 goto yy104;
1745 } else {
1746 if (yych <= '\\') goto yy106;
1747 if (yych <= ']') goto yy98;
1748 goto yy104;
1749 }
1750 }
1751 }
1752 yy125:
1753 YYDEBUG(125, *YYCURSOR);
1754 ++YYCURSOR;
1755 YYFILL(1);
1756 yych = *YYCURSOR;
1757 YYDEBUG(126, *YYCURSOR);
1758 if (yybm[0+yych] & 64) {
1759 goto yy125;
1760 }
1761 YYDEBUG(127, *YYCURSOR);
1762 ++YYCURSOR;
1763 YYDEBUG(128, *YYCURSOR);
1764 yyleng = YYCURSOR - SCNG(yy_text);
1765 #line 368 "Zend/zend_ini_scanner.l"
1766 { /* Raw string */
1767 /* Eat leading and trailing single quotes */
1768 if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1769 SCNG(yy_text)++;
1770 yyleng = yyleng - 2;
1771 }
1772 RETURN_TOKEN(TC_RAW, yytext, yyleng);
1773 }
1774 #line 1775 "Zend/zend_ini_scanner.c"
1775 yy129:
1776 YYDEBUG(129, *YYCURSOR);
1777 ++YYCURSOR;
1778 YYDEBUG(130, *YYCURSOR);
1779 yyleng = YYCURSOR - SCNG(yy_text);
1780 #line 401 "Zend/zend_ini_scanner.l"
1781 { /* Variable start */
1782 yy_push_state(ST_VARNAME TSRMLS_CC);
1783 return TC_DOLLAR_CURLY;
1784 }
1785 #line 1786 "Zend/zend_ini_scanner.c"
1786 yy131:
1787 YYDEBUG(131, *YYCURSOR);
1788 yyaccept = 0;
1789 YYMARKER = ++YYCURSOR;
1790 YYFILL(1);
1791 yych = *YYCURSOR;
1792 YYDEBUG(132, *YYCURSOR);
1793 if (yybm[0+yych] & 128) {
1794 goto yy131;
1795 }
1796 if (yych <= '$') {
1797 if (yych <= '\r') {
1798 if (yych == '\n') goto yy87;
1799 if (yych <= '\f') goto yy104;
1800 goto yy87;
1801 } else {
1802 if (yych == '"') goto yy133;
1803 if (yych <= '#') goto yy104;
1804 goto yy107;
1805 }
1806 } else {
1807 if (yych <= ';') {
1808 if (yych == '\'') goto yy87;
1809 if (yych <= ':') goto yy104;
1810 goto yy87;
1811 } else {
1812 if (yych <= '[') goto yy104;
1813 if (yych <= '\\') goto yy106;
1814 if (yych <= ']') goto yy134;
1815 goto yy104;
1816 }
1817 }
1818 yy133:
1819 YYDEBUG(133, *YYCURSOR);
1820 yych = *++YYCURSOR;
1821 goto yy92;
1822 yy134:
1823 YYDEBUG(134, *YYCURSOR);
1824 ++YYCURSOR;
1825 yych = *YYCURSOR;
1826 goto yy103;
1827 }
1828 /* *********************************** */
1829 yyc_ST_RAW:
1830 {
1831 static const unsigned char yybm[] = {
1832 64, 64, 64, 64, 64, 64, 64, 64,
1833 64, 192, 0, 64, 64, 0, 64, 64,
1834 64, 64, 64, 64, 64, 64, 64, 64,
1835 64, 64, 64, 64, 64, 64, 64, 64,
1836 192, 64, 64, 64, 64, 64, 64, 64,
1837 64, 64, 64, 64, 64, 64, 64, 64,
1838 64, 64, 64, 64, 64, 64, 64, 64,
1839 64, 64, 64, 64, 64, 64, 64, 64,
1840 64, 64, 64, 64, 64, 64, 64, 64,
1841 64, 64, 64, 64, 64, 64, 64, 64,
1842 64, 64, 64, 64, 64, 64, 64, 64,
1843 64, 64, 64, 64, 64, 64, 64, 64,
1844 64, 64, 64, 64, 64, 64, 64, 64,
1845 64, 64, 64, 64, 64, 64, 64, 64,
1846 64, 64, 64, 64, 64, 64, 64, 64,
1847 64, 64, 64, 64, 64, 64, 64, 64,
1848 64, 64, 64, 64, 64, 64, 64, 64,
1849 64, 64, 64, 64, 64, 64, 64, 64,
1850 64, 64, 64, 64, 64, 64, 64, 64,
1851 64, 64, 64, 64, 64, 64, 64, 64,
1852 64, 64, 64, 64, 64, 64, 64, 64,
1853 64, 64, 64, 64, 64, 64, 64, 64,
1854 64, 64, 64, 64, 64, 64, 64, 64,
1855 64, 64, 64, 64, 64, 64, 64, 64,
1856 64, 64, 64, 64, 64, 64, 64, 64,
1857 64, 64, 64, 64, 64, 64, 64, 64,
1858 64, 64, 64, 64, 64, 64, 64, 64,
1859 64, 64, 64, 64, 64, 64, 64, 64,
1860 64, 64, 64, 64, 64, 64, 64, 64,
1861 64, 64, 64, 64, 64, 64, 64, 64,
1862 64, 64, 64, 64, 64, 64, 64, 64,
1863 64, 64, 64, 64, 64, 64, 64, 64,
1864 };
1865 YYDEBUG(135, *YYCURSOR);
1866 YYFILL(3);
1867 yych = *YYCURSOR;
1868 if (yych <= '\f') {
1869 if (yych <= 0x08) {
1870 if (yych >= 0x01) goto yy139;
1871 } else {
1872 if (yych <= '\t') goto yy141;
1873 if (yych <= '\n') goto yy142;
1874 goto yy139;
1875 }
1876 } else {
1877 if (yych <= ' ') {
1878 if (yych <= '\r') goto yy144;
1879 if (yych <= 0x1F) goto yy139;
1880 goto yy141;
1881 } else {
1882 if (yych == ';') goto yy145;
1883 goto yy139;
1884 }
1885 }
1886 YYDEBUG(137, *YYCURSOR);
1887 ++YYCURSOR;
1888 YYDEBUG(138, *YYCURSOR);
1889 yyleng = YYCURSOR - SCNG(yy_text);
1890 #line 598 "Zend/zend_ini_scanner.l"
1891 { /* End of option value (if EOF is reached before EOL */
1892 BEGIN(INITIAL);
1893 return END_OF_LINE;
1894 }
1895 #line 1896 "Zend/zend_ini_scanner.c"
1896 yy139:
1897 YYDEBUG(139, *YYCURSOR);
1898 ++YYCURSOR;
1899 yy140:
1900 YYDEBUG(140, *YYCURSOR);
1901 yyleng = YYCURSOR - SCNG(yy_text);
1902 #line 448 "Zend/zend_ini_scanner.l"
1903 { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
1904 char *sc = NULL;
1905 while (YYCURSOR < YYLIMIT) {
1906 switch (*YYCURSOR) {
1907 case '\n':
1908 case '\r':
1909 goto end_raw_value_chars;
1910 break;
1911 case ';':
1912 if (sc == NULL) {
1913 sc = YYCURSOR;
1914 }
1915 /* no break */
1916 default:
1917 YYCURSOR++;
1918 break;
1919 }
1920 }
1921 end_raw_value_chars:
1922 yyleng = YYCURSOR - SCNG(yy_text);
1923
1924 /* Eat trailing semicolons */
1925 while (yytext[yyleng - 1] == ';') {
1926 yyleng--;
1927 }
1928
1929 /* Eat leading and trailing double quotes */
1930 if (yytext[0] == '"' && yytext[yyleng - 1] == '"') {
1931 SCNG(yy_text)++;
1932 yyleng = yyleng - 2;
1933 } else if (sc) {
1934 YYCURSOR = sc;
1935 yyleng = YYCURSOR - SCNG(yy_text);
1936 }
1937 RETURN_TOKEN(TC_RAW, yytext, yyleng);
1938 }
1939 #line 1940 "Zend/zend_ini_scanner.c"
1940 yy141:
1941 YYDEBUG(141, *YYCURSOR);
1942 yyaccept = 0;
1943 yych = *(YYMARKER = ++YYCURSOR);
1944 if (yych <= '\r') {
1945 if (yych <= 0x08) goto yy140;
1946 if (yych <= '\n') goto yy153;
1947 if (yych <= '\f') goto yy140;
1948 goto yy153;
1949 } else {
1950 if (yych <= ' ') {
1951 if (yych <= 0x1F) goto yy140;
1952 goto yy153;
1953 } else {
1954 if (yych == ';') goto yy153;
1955 goto yy140;
1956 }
1957 }
1958 yy142:
1959 YYDEBUG(142, *YYCURSOR);
1960 ++YYCURSOR;
1961 yy143:
1962 YYDEBUG(143, *YYCURSOR);
1963 yyleng = YYCURSOR - SCNG(yy_text);
1964 #line 489 "Zend/zend_ini_scanner.l"
1965 { /* End of option value */
1966 BEGIN(INITIAL);
1967 SCNG(lineno)++;
1968 return END_OF_LINE;
1969 }
1970 #line 1971 "Zend/zend_ini_scanner.c"
1971 yy144:
1972 YYDEBUG(144, *YYCURSOR);
1973 yych = *++YYCURSOR;
1974 if (yych == '\n') goto yy151;
1975 goto yy143;
1976 yy145:
1977 YYDEBUG(145, *YYCURSOR);
1978 yyaccept = 1;
1979 yych = *(YYMARKER = ++YYCURSOR);
1980 goto yy147;
1981 yy146:
1982 YYDEBUG(146, *YYCURSOR);
1983 ++YYCURSOR;
1984 YYFILL(2);
1985 yych = *YYCURSOR;
1986 yy147:
1987 YYDEBUG(147, *YYCURSOR);
1988 if (yybm[0+yych] & 64) {
1989 goto yy146;
1990 }
1991 if (yych >= '\r') goto yy150;
1992 yy148:
1993 YYDEBUG(148, *YYCURSOR);
1994 ++YYCURSOR;
1995 yy149:
1996 YYDEBUG(149, *YYCURSOR);
1997 yyleng = YYCURSOR - SCNG(yy_text);
1998 #line 585 "Zend/zend_ini_scanner.l"
1999 { /* Comment */
2000 BEGIN(INITIAL);
2001 SCNG(lineno)++;
2002 return END_OF_LINE;
2003 }
2004 #line 2005 "Zend/zend_ini_scanner.c"
2005 yy150:
2006 YYDEBUG(150, *YYCURSOR);
2007 yych = *++YYCURSOR;
2008 if (yych == '\n') goto yy148;
2009 goto yy149;
2010 yy151:
2011 YYDEBUG(151, *YYCURSOR);
2012 yych = *++YYCURSOR;
2013 goto yy143;
2014 yy152:
2015 YYDEBUG(152, *YYCURSOR);
2016 yyaccept = 2;
2017 YYMARKER = ++YYCURSOR;
2018 YYFILL(2);
2019 yych = *YYCURSOR;
2020 yy153:
2021 YYDEBUG(153, *YYCURSOR);
2022 if (yybm[0+yych] & 128) {
2023 goto yy152;
2024 }
2025 if (yych <= '\f') {
2026 if (yych == '\n') goto yy151;
2027 } else {
2028 if (yych <= '\r') goto yy155;
2029 if (yych == ';') goto yy146;
2030 }
2031 YYDEBUG(154, *YYCURSOR);
2032 yyleng = YYCURSOR - SCNG(yy_text);
2033 #line 575 "Zend/zend_ini_scanner.l"
2034 {
2035 /* eat whitespace */
2036 goto restart;
2037 }
2038 #line 2039 "Zend/zend_ini_scanner.c"
2039 yy155:
2040 YYDEBUG(155, *YYCURSOR);
2041 ++YYCURSOR;
2042 if ((yych = *YYCURSOR) == '\n') goto yy151;
2043 goto yy143;
2044 }
2045 /* *********************************** */
2046 yyc_ST_SECTION_RAW:
2047 {
2048 static const unsigned char yybm[] = {
2049 128, 128, 128, 128, 128, 128, 128, 128,
2050 128, 192, 0, 128, 128, 0, 128, 128,
2051 128, 128, 128, 128, 128, 128, 128, 128,
2052 128, 128, 128, 128, 128, 128, 128, 128,
2053 192, 128, 128, 128, 128, 128, 128, 128,
2054 128, 128, 128, 128, 128, 128, 128, 128,
2055 128, 128, 128, 128, 128, 128, 128, 128,
2056 128, 128, 128, 128, 128, 128, 128, 128,
2057 128, 128, 128, 128, 128, 128, 128, 128,
2058 128, 128, 128, 128, 128, 128, 128, 128,
2059 128, 128, 128, 128, 128, 128, 128, 128,
2060 128, 128, 128, 128, 128, 0, 128, 128,
2061 128, 128, 128, 128, 128, 128, 128, 128,
2062 128, 128, 128, 128, 128, 128, 128, 128,
2063 128, 128, 128, 128, 128, 128, 128, 128,
2064 128, 128, 128, 128, 128, 128, 128, 128,
2065 128, 128, 128, 128, 128, 128, 128, 128,
2066 128, 128, 128, 128, 128, 128, 128, 128,
2067 128, 128, 128, 128, 128, 128, 128, 128,
2068 128, 128, 128, 128, 128, 128, 128, 128,
2069 128, 128, 128, 128, 128, 128, 128, 128,
2070 128, 128, 128, 128, 128, 128, 128, 128,
2071 128, 128, 128, 128, 128, 128, 128, 128,
2072 128, 128, 128, 128, 128, 128, 128, 128,
2073 128, 128, 128, 128, 128, 128, 128, 128,
2074 128, 128, 128, 128, 128, 128, 128, 128,
2075 128, 128, 128, 128, 128, 128, 128, 128,
2076 128, 128, 128, 128, 128, 128, 128, 128,
2077 128, 128, 128, 128, 128, 128, 128, 128,
2078 128, 128, 128, 128, 128, 128, 128, 128,
2079 128, 128, 128, 128, 128, 128, 128, 128,
2080 128, 128, 128, 128, 128, 128, 128, 128,
2081 };
2082 YYDEBUG(156, *YYCURSOR);
2083 YYFILL(3);
2084 yych = *YYCURSOR;
2085 if (yych <= '\f') {
2086 if (yych == '\n') goto yy160;
2087 } else {
2088 if (yych <= '\r') goto yy160;
2089 if (yych == ']') goto yy162;
2090 }
2091 YYDEBUG(158, *YYCURSOR);
2092 ++YYCURSOR;
2093 yych = *YYCURSOR;
2094 goto yy169;
2095 yy159:
2096 YYDEBUG(159, *YYCURSOR);
2097 yyleng = YYCURSOR - SCNG(yy_text);
2098 #line 485 "Zend/zend_ini_scanner.l"
2099 { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
2100 RETURN_TOKEN(TC_RAW, yytext, yyleng);
2101 }
2102 #line 2103 "Zend/zend_ini_scanner.c"
2103 yy160:
2104 YYDEBUG(160, *YYCURSOR);
2105 ++YYCURSOR;
2106 YYDEBUG(161, *YYCURSOR);
2107 yyleng = YYCURSOR - SCNG(yy_text);
2108 #line 603 "Zend/zend_ini_scanner.l"
2109 {
2110 return 0;
2111 }
2112 #line 2113 "Zend/zend_ini_scanner.c"
2113 yy162:
2114 YYDEBUG(162, *YYCURSOR);
2115 ++YYCURSOR;
2116 yych = *YYCURSOR;
2117 goto yy165;
2118 yy163:
2119 YYDEBUG(163, *YYCURSOR);
2120 yyleng = YYCURSOR - SCNG(yy_text);
2121 #line 377 "Zend/zend_ini_scanner.l"
2122 { /* End of section */
2123 BEGIN(INITIAL);
2124 SCNG(lineno)++;
2125 return ']';
2126 }
2127 #line 2128 "Zend/zend_ini_scanner.c"
2128 yy164:
2129 YYDEBUG(164, *YYCURSOR);
2130 ++YYCURSOR;
2131 YYFILL(2);
2132 yych = *YYCURSOR;
2133 yy165:
2134 YYDEBUG(165, *YYCURSOR);
2135 if (yybm[0+yych] & 64) {
2136 goto yy164;
2137 }
2138 if (yych == '\n') goto yy166;
2139 if (yych == '\r') goto yy167;
2140 goto yy163;
2141 yy166:
2142 YYDEBUG(166, *YYCURSOR);
2143 yych = *++YYCURSOR;
2144 goto yy163;
2145 yy167:
2146 YYDEBUG(167, *YYCURSOR);
2147 yych = *++YYCURSOR;
2148 if (yych == '\n') goto yy166;
2149 goto yy163;
2150 yy168:
2151 YYDEBUG(168, *YYCURSOR);
2152 ++YYCURSOR;
2153 YYFILL(1);
2154 yych = *YYCURSOR;
2155 yy169:
2156 YYDEBUG(169, *YYCURSOR);
2157 if (yybm[0+yych] & 128) {
2158 goto yy168;
2159 }
2160 goto yy159;
2161 }
2162 /* *********************************** */
2163 yyc_ST_SECTION_VALUE:
2164 {
2165 static const unsigned char yybm[] = {
2166 132, 132, 132, 132, 132, 132, 132, 132,
2167 132, 134, 128, 132, 132, 128, 132, 132,
2168 132, 132, 132, 132, 132, 132, 132, 132,
2169 132, 132, 132, 132, 132, 132, 132, 132,
2170 134, 132, 128, 132, 136, 132, 132, 0,
2171 132, 132, 132, 132, 132, 132, 132, 132,
2172 228, 228, 228, 228, 228, 228, 228, 228,
2173 228, 228, 132, 128, 132, 132, 132, 132,
2174 132, 164, 164, 164, 164, 164, 164, 164,
2175 164, 164, 164, 164, 164, 164, 164, 164,
2176 164, 164, 164, 164, 164, 164, 164, 164,
2177 164, 164, 164, 132, 144, 128, 132, 164,
2178 132, 164, 164, 164, 164, 164, 164, 164,
2179 164, 164, 164, 164, 164, 164, 164, 164,
2180 164, 164, 164, 164, 164, 164, 164, 164,
2181 164, 164, 164, 132, 132, 132, 132, 132,
2182 132, 132, 132, 132, 132, 132, 132, 132,
2183 132, 132, 132, 132, 132, 132, 132, 132,
2184 132, 132, 132, 132, 132, 132, 132, 132,
2185 132, 132, 132, 132, 132, 132, 132, 132,
2186 132, 132, 132, 132, 132, 132, 132, 132,
2187 132, 132, 132, 132, 132, 132, 132, 132,
2188 132, 132, 132, 132, 132, 132, 132, 132,
2189 132, 132, 132, 132, 132, 132, 132, 132,
2190 132, 132, 132, 132, 132, 132, 132, 132,
2191 132, 132, 132, 132, 132, 132, 132, 132,
2192 132, 132, 132, 132, 132, 132, 132, 132,
2193 132, 132, 132, 132, 132, 132, 132, 132,
2194 132, 132, 132, 132, 132, 132, 132, 132,
2195 132, 132, 132, 132, 132, 132, 132, 132,
2196 132, 132, 132, 132, 132, 132, 132, 132,
2197 132, 132, 132, 132, 132, 132, 132, 132,
2198 };
2199 YYDEBUG(170, *YYCURSOR);
2200 YYFILL(3);
2201 yych = *YYCURSOR;
2202 if (yych <= '-') {
2203 if (yych <= ' ') {
2204 if (yych <= '\n') {
2205 if (yych <= 0x08) goto yy172;
2206 if (yych <= '\t') goto yy174;
2207 goto yy175;
2208 } else {
2209 if (yych == '\r') goto yy175;
2210 if (yych >= ' ') goto yy174;
2211 }
2212 } else {
2213 if (yych <= '$') {
2214 if (yych == '"') goto yy177;
2215 if (yych >= '$') goto yy179;
2216 } else {
2217 if (yych == '\'') goto yy180;
2218 if (yych >= '-') goto yy181;
2219 }
2220 }
2221 } else {
2222 if (yych <= 'Z') {
2223 if (yych <= '9') {
2224 if (yych <= '.') goto yy182;
2225 if (yych >= '0') goto yy183;
2226 } else {
2227 if (yych == ';') goto yy175;
2228 if (yych >= 'A') goto yy185;
2229 }
2230 } else {
2231 if (yych <= '^') {
2232 if (yych <= '[') goto yy172;
2233 if (yych <= '\\') goto yy187;
2234 if (yych <= ']') goto yy188;
2235 } else {
2236 if (yych == '`') goto yy172;
2237 if (yych <= 'z') goto yy185;
2238 }
2239 }
2240 }
2241 yy172:
2242 YYDEBUG(172, *YYCURSOR);
2243 yyaccept = 0;
2244 yych = *(YYMARKER = ++YYCURSOR);
2245 goto yy195;
2246 yy173:
2247 YYDEBUG(173, *YYCURSOR);
2248 yyleng = YYCURSOR - SCNG(yy_text);
2249 #line 521 "Zend/zend_ini_scanner.l"
2250 { /* Get rest as section/offset value */
2251 RETURN_TOKEN(TC_STRING, yytext, yyleng);
2252 }
2253 #line 2254 "Zend/zend_ini_scanner.c"
2254 yy174:
2255 YYDEBUG(174, *YYCURSOR);
2256 yyaccept = 0;
2257 yych = *(YYMARKER = ++YYCURSOR);
2258 if (yych <= 0x1F) {
2259 if (yych == '\t') goto yy221;
2260 goto yy195;
2261 } else {
2262 if (yych <= ' ') goto yy221;
2263 if (yych == '"') goto yy223;
2264 goto yy195;
2265 }
2266 yy175:
2267 YYDEBUG(175, *YYCURSOR);
2268 ++YYCURSOR;
2269 yy176:
2270 YYDEBUG(176, *YYCURSOR);
2271 yyleng = YYCURSOR - SCNG(yy_text);
2272 #line 603 "Zend/zend_ini_scanner.l"
2273 {
2274 return 0;
2275 }
2276 #line 2277 "Zend/zend_ini_scanner.c"
2277 yy177:
2278 YYDEBUG(177, *YYCURSOR);
2279 ++YYCURSOR;
2280 yy178:
2281 YYDEBUG(178, *YYCURSOR);
2282 yyleng = YYCURSOR - SCNG(yy_text);
2283 #line 525 "Zend/zend_ini_scanner.l"
2284 { /* Double quoted '"' string start */
2285 yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
2286 return '"';
2287 }
2288 #line 2289 "Zend/zend_ini_scanner.c"
2289 yy179:
2290 YYDEBUG(179, *YYCURSOR);
2291 yych = *++YYCURSOR;
2292 if (yych <= '\\') {
2293 if (yych <= 0x00) goto yy176;
2294 if (yych <= '[') goto yy194;
2295 goto yy199;
2296 } else {
2297 if (yych == '{') goto yy219;
2298 goto yy194;
2299 }
2300 yy180:
2301 YYDEBUG(180, *YYCURSOR);
2302 yyaccept = 1;
2303 yych = *(YYMARKER = ++YYCURSOR);
2304 if (yybm[0+yych] & 128) {
2305 goto yy215;
2306 }
2307 goto yy176;
2308 yy181:
2309 YYDEBUG(181, *YYCURSOR);
2310 yyaccept = 0;
2311 yych = *(YYMARKER = ++YYCURSOR);
2312 if (yych <= '/') goto yy195;
2313 if (yych <= '9') goto yy213;
2314 goto yy195;
2315 yy182:
2316 YYDEBUG(182, *YYCURSOR);
2317 yyaccept = 0;
2318 yych = *(YYMARKER = ++YYCURSOR);
2319 if (yych <= '/') goto yy195;
2320 if (yych <= '9') goto yy211;
2321 goto yy195;
2322 yy183:
2323 YYDEBUG(183, *YYCURSOR);
2324 yyaccept = 2;
2325 yych = *(YYMARKER = ++YYCURSOR);
2326 if (yych <= '\'') {
2327 if (yych <= '\r') {
2328 if (yych == '\n') goto yy184;
2329 if (yych <= '\f') goto yy195;
2330 } else {
2331 if (yych == '"') goto yy184;
2332 if (yych <= '&') goto yy195;
2333 }
2334 } else {
2335 if (yych <= '9') {
2336 if (yych == '.') goto yy207;
2337 if (yych <= '/') goto yy195;
2338 goto yy209;
2339 } else {
2340 if (yych <= ';') {
2341 if (yych <= ':') goto yy195;
2342 } else {
2343 if (yych != ']') goto yy195;
2344 }
2345 }
2346 }
2347 yy184:
2348 YYDEBUG(184, *YYCURSOR);
2349 yyleng = YYCURSOR - SCNG(yy_text);
2350 #line 499 "Zend/zend_ini_scanner.l"
2351 { /* Get number option value as string */
2352 RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
2353 }
2354 #line 2355 "Zend/zend_ini_scanner.c"
2355 yy185:
2356 YYDEBUG(185, *YYCURSOR);
2357 yyaccept = 3;
2358 yych = *(YYMARKER = ++YYCURSOR);
2359 if (yybm[0+yych] & 32) {
2360 goto yy205;
2361 }
2362 if (yych <= '"') {
2363 if (yych <= '\f') {
2364 if (yych != '\n') goto yy195;
2365 } else {
2366 if (yych <= '\r') goto yy186;
2367 if (yych <= '!') goto yy195;
2368 }
2369 } else {
2370 if (yych <= ':') {
2371 if (yych != '\'') goto yy195;
2372 } else {
2373 if (yych <= ';') goto yy186;
2374 if (yych != ']') goto yy195;
2375 }
2376 }
2377 yy186:
2378 YYDEBUG(186, *YYCURSOR);
2379 yyleng = YYCURSOR - SCNG(yy_text);
2380 #line 495 "Zend/zend_ini_scanner.l"
2381 { /* Get constant option value */
2382 RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
2383 }
2384 #line 2385 "Zend/zend_ini_scanner.c"
2385 yy187:
2386 YYDEBUG(187, *YYCURSOR);
2387 yych = *++YYCURSOR;
2388 goto yy194;
2389 yy188:
2390 YYDEBUG(188, *YYCURSOR);
2391 ++YYCURSOR;
2392 yych = *YYCURSOR;
2393 goto yy191;
2394 yy189:
2395 YYDEBUG(189, *YYCURSOR);
2396 yyleng = YYCURSOR - SCNG(yy_text);
2397 #line 377 "Zend/zend_ini_scanner.l"
2398 { /* End of section */
2399 BEGIN(INITIAL);
2400 SCNG(lineno)++;
2401 return ']';
2402 }
2403 #line 2404 "Zend/zend_ini_scanner.c"
2404 yy190:
2405 YYDEBUG(190, *YYCURSOR);
2406 ++YYCURSOR;
2407 YYFILL(2);
2408 yych = *YYCURSOR;
2409 yy191:
2410 YYDEBUG(191, *YYCURSOR);
2411 if (yybm[0+yych] & 2) {
2412 goto yy190;
2413 }
2414 if (yych == '\n') goto yy192;
2415 if (yych == '\r') goto yy193;
2416 goto yy189;
2417 yy192:
2418 YYDEBUG(192, *YYCURSOR);
2419 yych = *++YYCURSOR;
2420 goto yy189;
2421 yy193:
2422 YYDEBUG(193, *YYCURSOR);
2423 yych = *++YYCURSOR;
2424 if (yych == '\n') goto yy192;
2425 goto yy189;
2426 yy194:
2427 YYDEBUG(194, *YYCURSOR);
2428 yyaccept = 0;
2429 YYMARKER = ++YYCURSOR;
2430 YYFILL(1);
2431 yych = *YYCURSOR;
2432 yy195:
2433 YYDEBUG(195, *YYCURSOR);
2434 if (yybm[0+yych] & 4) {
2435 goto yy194;
2436 }
2437 if (yych == '$') goto yy197;
2438 if (yych != '\\') goto yy173;
2439 yy196:
2440 YYDEBUG(196, *YYCURSOR);
2441 ++YYCURSOR;
2442 YYFILL(1);
2443 yych = *YYCURSOR;
2444 goto yy194;
2445 yy197:
2446 YYDEBUG(197, *YYCURSOR);
2447 ++YYCURSOR;
2448 YYFILL(1);
2449 yych = *YYCURSOR;
2450 if (yych <= '\\') {
2451 if (yych <= 0x00) goto yy198;
2452 if (yych <= '[') goto yy194;
2453 goto yy199;
2454 } else {
2455 if (yych != '{') goto yy194;
2456 }
2457 yy198:
2458 YYDEBUG(198, *YYCURSOR);
2459 YYCURSOR = YYMARKER;
2460 if (yyaccept <= 1) {
2461 if (yyaccept <= 0) {
2462 goto yy173;
2463 } else {
2464 goto yy176;
2465 }
2466 } else {
2467 if (yyaccept <= 2) {
2468 goto yy184;
2469 } else {
2470 goto yy186;
2471 }
2472 }
2473 yy199:
2474 YYDEBUG(199, *YYCURSOR);
2475 ++YYCURSOR;
2476 YYFILL(1);
2477 yych = *YYCURSOR;
2478 if (yybm[0+yych] & 8) {
2479 goto yy200;
2480 }
2481 if (yych == '\\') goto yy202;
2482 goto yy194;
2483 yy200:
2484 YYDEBUG(200, *YYCURSOR);
2485 ++YYCURSOR;
2486 YYFILL(1);
2487 yych = *YYCURSOR;
2488 YYDEBUG(201, *YYCURSOR);
2489 if (yybm[0+yych] & 8) {
2490 goto yy200;
2491 }
2492 if (yych == '\\') goto yy204;
2493 goto yy194;
2494 yy202:
2495 YYDEBUG(202, *YYCURSOR);
2496 ++YYCURSOR;
2497 YYFILL(1);
2498 yych = *YYCURSOR;
2499 YYDEBUG(203, *YYCURSOR);
2500 if (yybm[0+yych] & 8) {
2501 goto yy200;
2502 }
2503 if (yych == '\\') goto yy202;
2504 goto yy194;
2505 yy204:
2506 YYDEBUG(204, *YYCURSOR);
2507 ++YYCURSOR;
2508 YYFILL(1);
2509 yych = *YYCURSOR;
2510 if (yybm[0+yych] & 8) {
2511 goto yy200;
2512 }
2513 if (yych == '\\') goto yy202;
2514 goto yy194;
2515 yy205:
2516 YYDEBUG(205, *YYCURSOR);
2517 yyaccept = 3;
2518 YYMARKER = ++YYCURSOR;
2519 YYFILL(1);
2520 yych = *YYCURSOR;
2521 YYDEBUG(206, *YYCURSOR);
2522 if (yybm[0+yych] & 32) {
2523 goto yy205;
2524 }
2525 if (yych <= '$') {
2526 if (yych <= '\r') {
2527 if (yych == '\n') goto yy186;
2528 if (yych <= '\f') goto yy194;
2529 goto yy186;
2530 } else {
2531 if (yych == '"') goto yy186;
2532 if (yych <= '#') goto yy194;
2533 goto yy197;
2534 }
2535 } else {
2536 if (yych <= ';') {
2537 if (yych == '\'') goto yy186;
2538 if (yych <= ':') goto yy194;
2539 goto yy186;
2540 } else {
2541 if (yych <= '[') goto yy194;
2542 if (yych <= '\\') goto yy196;
2543 if (yych <= ']') goto yy186;
2544 goto yy194;
2545 }
2546 }
2547 yy207:
2548 YYDEBUG(207, *YYCURSOR);
2549 yyaccept = 2;
2550 YYMARKER = ++YYCURSOR;
2551 YYFILL(1);
2552 yych = *YYCURSOR;
2553 YYDEBUG(208, *YYCURSOR);
2554 if (yybm[0+yych] & 64) {
2555 goto yy207;
2556 }
2557 if (yych <= '$') {
2558 if (yych <= '\r') {
2559 if (yych == '\n') goto yy184;
2560 if (yych <= '\f') goto yy194;
2561 goto yy184;
2562 } else {
2563 if (yych == '"') goto yy184;
2564 if (yych <= '#') goto yy194;
2565 goto yy197;
2566 }
2567 } else {
2568 if (yych <= ';') {
2569 if (yych == '\'') goto yy184;
2570 if (yych <= ':') goto yy194;
2571 goto yy184;
2572 } else {
2573 if (yych <= '[') goto yy194;
2574 if (yych <= '\\') goto yy196;
2575 if (yych <= ']') goto yy184;
2576 goto yy194;
2577 }
2578 }
2579 yy209:
2580 YYDEBUG(209, *YYCURSOR);
2581 yyaccept = 2;
2582 YYMARKER = ++YYCURSOR;
2583 YYFILL(1);
2584 yych = *YYCURSOR;
2585 YYDEBUG(210, *YYCURSOR);
2586 if (yych <= '\'') {
2587 if (yych <= '!') {
2588 if (yych <= '\n') {
2589 if (yych <= '\t') goto yy194;
2590 goto yy184;
2591 } else {
2592 if (yych == '\r') goto yy184;
2593 goto yy194;
2594 }
2595 } else {
2596 if (yych <= '#') {
2597 if (yych <= '"') goto yy184;
2598 goto yy194;
2599 } else {
2600 if (yych <= '$') goto yy197;
2601 if (yych <= '&') goto yy194;
2602 goto yy184;
2603 }
2604 }
2605 } else {
2606 if (yych <= ':') {
2607 if (yych <= '.') {
2608 if (yych <= '-') goto yy194;
2609 goto yy207;
2610 } else {
2611 if (yych <= '/') goto yy194;
2612 if (yych <= '9') goto yy209;
2613 goto yy194;
2614 }
2615 } else {
2616 if (yych <= '[') {
2617 if (yych <= ';') goto yy184;
2618 goto yy194;
2619 } else {
2620 if (yych <= '\\') goto yy196;
2621 if (yych <= ']') goto yy184;
2622 goto yy194;
2623 }
2624 }
2625 }
2626 yy211:
2627 YYDEBUG(211, *YYCURSOR);
2628 yyaccept = 2;
2629 YYMARKER = ++YYCURSOR;
2630 YYFILL(1);
2631 yych = *YYCURSOR;
2632 YYDEBUG(212, *YYCURSOR);
2633 if (yych <= '&') {
2634 if (yych <= '\r') {
2635 if (yych == '\n') goto yy184;
2636 if (yych <= '\f') goto yy194;
2637 goto yy184;
2638 } else {
2639 if (yych <= '"') {
2640 if (yych <= '!') goto yy194;
2641 goto yy184;
2642 } else {
2643 if (yych == '$') goto yy197;
2644 goto yy194;
2645 }
2646 }
2647 } else {
2648 if (yych <= ':') {
2649 if (yych <= '\'') goto yy184;
2650 if (yych <= '/') goto yy194;
2651 if (yych <= '9') goto yy211;
2652 goto yy194;
2653 } else {
2654 if (yych <= '[') {
2655 if (yych <= ';') goto yy184;
2656 goto yy194;
2657 } else {
2658 if (yych <= '\\') goto yy196;
2659 if (yych <= ']') goto yy184;
2660 goto yy194;
2661 }
2662 }
2663 }
2664 yy213:
2665 YYDEBUG(213, *YYCURSOR);
2666 yyaccept = 2;
2667 YYMARKER = ++YYCURSOR;
2668 YYFILL(1);
2669 yych = *YYCURSOR;
2670 YYDEBUG(214, *YYCURSOR);
2671 if (yych <= '&') {
2672 if (yych <= '\r') {
2673 if (yych == '\n') goto yy184;
2674 if (yych <= '\f') goto yy194;
2675 goto yy184;
2676 } else {
2677 if (yych <= '"') {
2678 if (yych <= '!') goto yy194;
2679 goto yy184;
2680 } else {
2681 if (yych == '$') goto yy197;
2682 goto yy194;
2683 }
2684 }
2685 } else {
2686 if (yych <= ':') {
2687 if (yych <= '\'') goto yy184;
2688 if (yych <= '/') goto yy194;
2689 if (yych <= '9') goto yy213;
2690 goto yy194;
2691 } else {
2692 if (yych <= '[') {
2693 if (yych <= ';') goto yy184;
2694 goto yy194;
2695 } else {
2696 if (yych <= '\\') goto yy196;
2697 if (yych <= ']') goto yy184;
2698 goto yy194;
2699 }
2700 }
2701 }
2702 yy215:
2703 YYDEBUG(215, *YYCURSOR);
2704 ++YYCURSOR;
2705 YYFILL(1);
2706 yych = *YYCURSOR;
2707 YYDEBUG(216, *YYCURSOR);
2708 if (yybm[0+yych] & 128) {
2709 goto yy215;
2710 }
2711 YYDEBUG(217, *YYCURSOR);
2712 ++YYCURSOR;
2713 YYDEBUG(218, *YYCURSOR);
2714 yyleng = YYCURSOR - SCNG(yy_text);
2715 #line 368 "Zend/zend_ini_scanner.l"
2716 { /* Raw string */
2717 /* Eat leading and trailing single quotes */
2718 if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
2719 SCNG(yy_text)++;
2720 yyleng = yyleng - 2;
2721 }
2722 RETURN_TOKEN(TC_RAW, yytext, yyleng);
2723 }
2724 #line 2725 "Zend/zend_ini_scanner.c"
2725 yy219:
2726 YYDEBUG(219, *YYCURSOR);
2727 ++YYCURSOR;
2728 YYDEBUG(220, *YYCURSOR);
2729 yyleng = YYCURSOR - SCNG(yy_text);
2730 #line 401 "Zend/zend_ini_scanner.l"
2731 { /* Variable start */
2732 yy_push_state(ST_VARNAME TSRMLS_CC);
2733 return TC_DOLLAR_CURLY;
2734 }
2735 #line 2736 "Zend/zend_ini_scanner.c"
2736 yy221:
2737 YYDEBUG(221, *YYCURSOR);
2738 yyaccept = 0;
2739 YYMARKER = ++YYCURSOR;
2740 YYFILL(1);
2741 yych = *YYCURSOR;
2742 YYDEBUG(222, *YYCURSOR);
2743 if (yych <= '"') {
2744 if (yych <= '\f') {
2745 if (yych <= 0x08) goto yy194;
2746 if (yych <= '\t') goto yy221;
2747 if (yych <= '\n') goto yy173;
2748 goto yy194;
2749 } else {
2750 if (yych <= 0x1F) {
2751 if (yych <= '\r') goto yy173;
2752 goto yy194;
2753 } else {
2754 if (yych <= ' ') goto yy221;
2755 if (yych <= '!') goto yy194;
2756 }
2757 }
2758 } else {
2759 if (yych <= ':') {
2760 if (yych <= '$') {
2761 if (yych <= '#') goto yy194;
2762 goto yy197;
2763 } else {
2764 if (yych == '\'') goto yy173;
2765 goto yy194;
2766 }
2767 } else {
2768 if (yych <= '[') {
2769 if (yych <= ';') goto yy173;
2770 goto yy194;
2771 } else {
2772 if (yych <= '\\') goto yy196;
2773 if (yych <= ']') goto yy173;
2774 goto yy194;
2775 }
2776 }
2777 }
2778 yy223:
2779 YYDEBUG(223, *YYCURSOR);
2780 ++YYCURSOR;
2781 yych = *YYCURSOR;
2782 goto yy178;
2783 }
2784 /* *********************************** */
2785 yyc_ST_VALUE:
2786 {
2787 static const unsigned char yybm[] = {
2788 160, 162, 162, 162, 162, 162, 162, 162,
2789 162, 176, 128, 162, 162, 128, 162, 162,
2790 162, 162, 162, 162, 162, 162, 162, 162,
2791 162, 162, 162, 162, 162, 162, 162, 162,
2792 176, 160, 160, 162, 168, 162, 160, 32,
2793 160, 160, 162, 162, 162, 162, 162, 162,
2794 230, 230, 230, 230, 230, 230, 230, 230,
2795 230, 230, 162, 160, 162, 160, 162, 162,
2796 162, 166, 166, 166, 166, 166, 166, 166,
2797 166, 166, 166, 166, 166, 166, 166, 166,
2798 166, 166, 166, 166, 166, 166, 166, 166,
2799 166, 166, 166, 162, 162, 162, 162, 166,
2800 162, 166, 166, 166, 166, 166, 166, 166,
2801 166, 166, 166, 166, 166, 166, 166, 166,
2802 166, 166, 166, 166, 166, 166, 166, 166,
2803 166, 166, 166, 162, 160, 162, 160, 162,
2804 162, 162, 162, 162, 162, 162, 162, 162,
2805 162, 162, 162, 162, 162, 162, 162, 162,
2806 162, 162, 162, 162, 162, 162, 162, 162,
2807 162, 162, 162, 162, 162, 162, 162, 162,
2808 162, 162, 162, 162, 162, 162, 162, 162,
2809 162, 162, 162, 162, 162, 162, 162, 162,
2810 162, 162, 162, 162, 162, 162, 162, 162,
2811 162, 162, 162, 162, 162, 162, 162, 162,
2812 162, 162, 162, 162, 162, 162, 162, 162,
2813 162, 162, 162, 162, 162, 162, 162, 162,
2814 162, 162, 162, 162, 162, 162, 162, 162,
2815 162, 162, 162, 162, 162, 162, 162, 162,
2816 162, 162, 162, 162, 162, 162, 162, 162,
2817 162, 162, 162, 162, 162, 162, 162, 162,
2818 162, 162, 162, 162, 162, 162, 162, 162,
2819 162, 162, 162, 162, 162, 162, 162, 162,
2820 };
2821 YYDEBUG(224, *YYCURSOR);
2822 YYFILL(6);
2823 yych = *YYCURSOR;
2824 YYDEBUG(-1, yych);
2825 switch (yych) {
2826 case 0x00: goto yy226;
2827 case '\t':
2828 case ' ': goto yy230;
2829 case '\n': goto yy232;
2830 case '\r': goto yy234;
2831 case '!':
2832 case '&':
2833 case '(':
2834 case ')':
2835 case '|':
2836 case '~': goto yy235;
2837 case '"': goto yy237;
2838 case '$': goto yy239;
2839 case '\'': goto yy240;
2840 case '-': goto yy241;
2841 case '.': goto yy242;
2842 case '0':
2843 case '1':
2844 case '2':
2845 case '3':
2846 case '4':
2847 case '5':
2848 case '6':
2849 case '7':
2850 case '8':
2851 case '9': goto yy243;
2852 case ';': goto yy245;
2853 case '=': goto yy246;
2854 case 'A':
2855 case 'B':
2856 case 'C':
2857 case 'D':
2858 case 'E':
2859 case 'G':
2860 case 'H':
2861 case 'I':
2862 case 'J':
2863 case 'K':
2864 case 'L':
2865 case 'M':
2866 case 'P':
2867 case 'Q':
2868 case 'R':
2869 case 'S':
2870 case 'U':
2871 case 'V':
2872 case 'W':
2873 case 'X':
2874 case 'Z':
2875 case '_':
2876 case 'a':
2877 case 'b':
2878 case 'c':
2879 case 'd':
2880 case 'e':
2881 case 'g':
2882 case 'h':
2883 case 'i':
2884 case 'j':
2885 case 'k':
2886 case 'l':
2887 case 'm':
2888 case 'p':
2889 case 'q':
2890 case 'r':
2891 case 's':
2892 case 'u':
2893 case 'v':
2894 case 'w':
2895 case 'x':
2896 case 'z': goto yy248;
2897 case 'F':
2898 case 'f': goto yy250;
2899 case 'N':
2900 case 'n': goto yy251;
2901 case 'O':
2902 case 'o': goto yy252;
2903 case 'T':
2904 case 't': goto yy253;
2905 case 'Y':
2906 case 'y': goto yy254;
2907 default: goto yy228;
2908 }
2909 yy226:
2910 YYDEBUG(226, *YYCURSOR);
2911 ++YYCURSOR;
2912 yy227:
2913 YYDEBUG(227, *YYCURSOR);
2914 yyleng = YYCURSOR - SCNG(yy_text);
2915 #line 598 "Zend/zend_ini_scanner.l"
2916 { /* End of option value (if EOF is reached before EOL */
2917 BEGIN(INITIAL);
2918 return END_OF_LINE;
2919 }
2920 #line 2921 "Zend/zend_ini_scanner.c"
2921 yy228:
2922 YYDEBUG(228, *YYCURSOR);
2923 yyaccept = 0;
2924 yych = *(YYMARKER = ++YYCURSOR);
2925 goto yy256;
2926 yy229:
2927 YYDEBUG(229, *YYCURSOR);
2928 yyleng = YYCURSOR - SCNG(yy_text);
2929 #line 517 "Zend/zend_ini_scanner.l"
2930 { /* Get everything else as option/offset value */
2931 RETURN_TOKEN(TC_STRING, yytext, yyleng);
2932 }
2933 #line 2934 "Zend/zend_ini_scanner.c"
2934 yy230:
2935 YYDEBUG(230, *YYCURSOR);
2936 yyaccept = 1;
2937 yych = *(YYMARKER = ++YYCURSOR);
2938 goto yy306;
2939 yy231:
2940 YYDEBUG(231, *YYCURSOR);
2941 yyleng = YYCURSOR - SCNG(yy_text);
2942 #line 571 "Zend/zend_ini_scanner.l"
2943 {
2944 RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
2945 }
2946 #line 2947 "Zend/zend_ini_scanner.c"
2947 yy232:
2948 YYDEBUG(232, *YYCURSOR);
2949 ++YYCURSOR;
2950 yy233:
2951 YYDEBUG(233, *YYCURSOR);
2952 yyleng = YYCURSOR - SCNG(yy_text);
2953 #line 489 "Zend/zend_ini_scanner.l"
2954 { /* End of option value */
2955 BEGIN(INITIAL);
2956 SCNG(lineno)++;
2957 return END_OF_LINE;
2958 }
2959 #line 2960 "Zend/zend_ini_scanner.c"
2960 yy234:
2961 YYDEBUG(234, *YYCURSOR);
2962 yych = *++YYCURSOR;
2963 if (yych == '\n') goto yy304;
2964 goto yy233;
2965 yy235:
2966 YYDEBUG(235, *YYCURSOR);
2967 ++YYCURSOR;
2968 yych = *YYCURSOR;
2969 goto yy303;
2970 yy236:
2971 YYDEBUG(236, *YYCURSOR);
2972 yyleng = YYCURSOR - SCNG(yy_text);
2973 #line 507 "Zend/zend_ini_scanner.l"
2974 { /* Boolean operators */
2975 return yytext[0];
2976 }
2977 #line 2978 "Zend/zend_ini_scanner.c"
2978 yy237:
2979 YYDEBUG(237, *YYCURSOR);
2980 ++YYCURSOR;
2981 yy238:
2982 YYDEBUG(238, *YYCURSOR);
2983 yyleng = YYCURSOR - SCNG(yy_text);
2984 #line 525 "Zend/zend_ini_scanner.l"
2985 { /* Double quoted '"' string start */
2986 yy_push_state(ST_DOUBLE_QUOTES TSRMLS_CC);
2987 return '"';
2988 }
2989 #line 2990 "Zend/zend_ini_scanner.c"
2990 yy239:
2991 YYDEBUG(239, *YYCURSOR);
2992 yych = *++YYCURSOR;
2993 if (yych <= '\\') {
2994 if (yych <= 0x00) goto yy227;
2995 if (yych <= '[') goto yy255;
2996 goto yy262;
2997 } else {
2998 if (yych == '{') goto yy300;
2999 goto yy255;
3000 }
3001 yy240:
3002 YYDEBUG(240, *YYCURSOR);
3003 yyaccept = 2;
3004 yych = *(YYMARKER = ++YYCURSOR);
3005 if (yybm[0+yych] & 128) {
3006 goto yy296;
3007 }
3008 goto yy227;
3009 yy241:
3010 YYDEBUG(241, *YYCURSOR);
3011 yyaccept = 0;
3012 yych = *(YYMARKER = ++YYCURSOR);
3013 if (yych <= '/') goto yy256;
3014 if (yych <= '9') goto yy294;
3015 goto yy256;
3016 yy242:
3017 YYDEBUG(242, *YYCURSOR);
3018 yyaccept = 0;
3019 yych = *(YYMARKER = ++YYCURSOR);
3020 if (yych <= '/') goto yy256;
3021 if (yych <= '9') goto yy292;
3022 goto yy256;
3023 yy243:
3024 YYDEBUG(243, *YYCURSOR);
3025 yyaccept = 3;
3026 yych = *(YYMARKER = ++YYCURSOR);
3027 if (yych <= '.') {
3028 if (yych <= '\r') {
3029 if (yych <= 0x08) {
3030 if (yych >= 0x01) goto yy256;
3031 } else {
3032 if (yych <= '\n') goto yy244;
3033 if (yych <= '\f') goto yy256;
3034 }
3035 } else {
3036 if (yych <= '%') {
3037 if (yych <= 0x1F) goto yy256;
3038 if (yych >= '#') goto yy256;
3039 } else {
3040 if (yych <= ')') goto yy244;
3041 if (yych <= '-') goto yy256;
3042 goto yy288;
3043 }
3044 }
3045 } else {
3046 if (yych <= '<') {
3047 if (yych <= '9') {
3048 if (yych <= '/') goto yy256;
3049 goto yy290;
3050 } else {
3051 if (yych != ';') goto yy256;
3052 }
3053 } else {
3054 if (yych <= '|') {
3055 if (yych <= '=') goto yy244;
3056 if (yych <= '{') goto yy256;
3057 } else {
3058 if (yych != '~') goto yy256;
3059 }
3060 }
3061 }
3062 yy244:
3063 YYDEBUG(244, *YYCURSOR);
3064 yyleng = YYCURSOR - SCNG(yy_text);
3065 #line 499 "Zend/zend_ini_scanner.l"
3066 { /* Get number option value as string */
3067 RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
3068 }
3069 #line 3070 "Zend/zend_ini_scanner.c"
3070 yy245:
3071 YYDEBUG(245, *YYCURSOR);
3072 yyaccept = 2;
3073 yych = *(YYMARKER = ++YYCURSOR);
3074 goto yy284;
3075 yy246:
3076 YYDEBUG(246, *YYCURSOR);
3077 ++YYCURSOR;
3078 YYDEBUG(247, *YYCURSOR);
3079 yyleng = YYCURSOR - SCNG(yy_text);
3080 #line 511 "Zend/zend_ini_scanner.l"
3081 { /* Make = used in option value to trigger error */
3082 yyless(0);
3083 BEGIN(INITIAL);
3084 return END_OF_LINE;
3085 }
3086 #line 3087 "Zend/zend_ini_scanner.c"
3087 yy248:
3088 YYDEBUG(248, *YYCURSOR);
3089 yyaccept = 4;
3090 yych = *(YYMARKER = ++YYCURSOR);
3091 if (yybm[0+yych] & 4) {
3092 goto yy257;
3093 }
3094 if (yych <= ')') {
3095 if (yych <= '\f') {
3096 if (yych <= 0x00) goto yy249;
3097 if (yych <= 0x08) goto yy256;
3098 if (yych >= '\v') goto yy256;
3099 } else {
3100 if (yych <= 0x1F) {
3101 if (yych >= 0x0E) goto yy256;
3102 } else {
3103 if (yych <= '"') goto yy249;
3104 if (yych <= '%') goto yy256;
3105 }
3106 }
3107 } else {
3108 if (yych <= '=') {
3109 if (yych == ';') goto yy249;
3110 if (yych <= '<') goto yy256;
3111 } else {
3112 if (yych <= '|') {
3113 if (yych <= '{') goto yy256;
3114 } else {
3115 if (yych != '~') goto yy256;
3116 }
3117 }
3118 }
3119 yy249:
3120 YYDEBUG(249, *YYCURSOR);
3121 yyleng = YYCURSOR - SCNG(yy_text);
3122 #line 495 "Zend/zend_ini_scanner.l"
3123 { /* Get constant option value */
3124 RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
3125 }
3126 #line 3127 "Zend/zend_ini_scanner.c"
3127 yy250:
3128 YYDEBUG(250, *YYCURSOR);
3129 yyaccept = 4;
3130 yych = *(YYMARKER = ++YYCURSOR);
3131 if (yych <= '<') {
3132 if (yych <= '"') {
3133 if (yych <= '\n') {
3134 if (yych <= 0x00) goto yy249;
3135 if (yych <= 0x08) goto yy256;
3136 goto yy249;
3137 } else {
3138 if (yych == '\r') goto yy249;
3139 if (yych <= 0x1F) goto yy256;
3140 goto yy249;
3141 }
3142 } else {
3143 if (yych <= '/') {
3144 if (yych <= '%') goto yy256;
3145 if (yych <= ')') goto yy249;
3146 goto yy256;
3147 } else {
3148 if (yych <= '9') goto yy257;
3149 if (yych == ';') goto yy249;
3150 goto yy256;
3151 }
3152 }
3153 } else {
3154 if (yych <= '`') {
3155 if (yych <= 'A') {
3156 if (yych <= '=') goto yy249;
3157 if (yych <= '@') goto yy256;
3158 goto yy280;
3159 } else {
3160 if (yych <= 'Z') goto yy257;
3161 if (yych == '_') goto yy257;
3162 goto yy256;
3163 }
3164 } else {
3165 if (yych <= '{') {
3166 if (yych <= 'a') goto yy280;
3167 if (yych <= 'z') goto yy257;
3168 goto yy256;
3169 } else {
3170 if (yych == '}') goto yy256;
3171 if (yych <= '~') goto yy249;
3172 goto yy256;
3173 }
3174 }
3175 }
3176 yy251:
3177 YYDEBUG(251, *YYCURSOR);
3178 yyaccept = 4;
3179 yych = *(YYMARKER = ++YYCURSOR);
3180 if (yych <= 'N') {
3181 if (yych <= '%') {
3182 if (yych <= '\f') {
3183 if (yych <= 0x00) goto yy249;
3184 if (yych <= 0x08) goto yy256;
3185 if (yych <= '\n') goto yy249;
3186 goto yy256;
3187 } else {
3188 if (yych <= '\r') goto yy249;
3189 if (yych <= 0x1F) goto yy256;
3190 if (yych <= '"') goto yy249;
3191 goto yy256;
3192 }
3193 } else {
3194 if (yych <= ':') {
3195 if (yych <= ')') goto yy249;
3196 if (yych <= '/') goto yy256;
3197 if (yych <= '9') goto yy257;
3198 goto yy256;
3199 } else {
3200 if (yych <= '<') {
3201 if (yych <= ';') goto yy249;
3202 goto yy256;
3203 } else {
3204 if (yych <= '=') goto yy249;
3205 if (yych <= '@') goto yy256;
3206 goto yy257;
3207 }
3208 }
3209 }
3210 } else {
3211 if (yych <= 'n') {
3212 if (yych <= 'Z') {
3213 if (yych <= 'O') goto yy276;
3214 if (yych == 'U') goto yy277;
3215 goto yy257;
3216 } else {
3217 if (yych == '_') goto yy257;
3218 if (yych <= '`') goto yy256;
3219 goto yy257;
3220 }
3221 } else {
3222 if (yych <= 'z') {
3223 if (yych <= 'o') goto yy276;
3224 if (yych == 'u') goto yy277;
3225 goto yy257;
3226 } else {
3227 if (yych <= '|') {
3228 if (yych <= '{') goto yy256;
3229 goto yy249;
3230 } else {
3231 if (yych == '~') goto yy249;
3232 goto yy256;
3233 }
3234 }
3235 }
3236 }
3237 yy252:
3238 YYDEBUG(252, *YYCURSOR);
3239 yyaccept = 4;
3240 yych = *(YYMARKER = ++YYCURSOR);
3241 if (yych <= 'E') {
3242 if (yych <= '%') {
3243 if (yych <= '\f') {
3244 if (yych <= 0x00) goto yy249;
3245 if (yych <= 0x08) goto yy256;
3246 if (yych <= '\n') goto yy249;
3247 goto yy256;
3248 } else {
3249 if (yych <= '\r') goto yy249;
3250 if (yych <= 0x1F) goto yy256;
3251 if (yych <= '"') goto yy249;
3252 goto yy256;
3253 }
3254 } else {
3255 if (yych <= ':') {
3256 if (yych <= ')') goto yy249;
3257 if (yych <= '/') goto yy256;
3258 if (yych <= '9') goto yy257;
3259 goto yy256;
3260 } else {
3261 if (yych <= '<') {
3262 if (yych <= ';') goto yy249;
3263 goto yy256;
3264 } else {
3265 if (yych <= '=') goto yy249;
3266 if (yych <= '@') goto yy256;
3267 goto yy257;
3268 }
3269 }
3270 }
3271 } else {
3272 if (yych <= 'e') {
3273 if (yych <= 'Z') {
3274 if (yych <= 'F') goto yy271;
3275 if (yych == 'N') goto yy265;
3276 goto yy257;
3277 } else {
3278 if (yych == '_') goto yy257;
3279 if (yych <= '`') goto yy256;
3280 goto yy257;
3281 }
3282 } else {
3283 if (yych <= 'z') {
3284 if (yych <= 'f') goto yy271;
3285 if (yych == 'n') goto yy265;
3286 goto yy257;
3287 } else {
3288 if (yych <= '|') {
3289 if (yych <= '{') goto yy256;
3290 goto yy249;
3291 } else {
3292 if (yych == '~') goto yy249;
3293 goto yy256;
3294 }
3295 }
3296 }
3297 }
3298 yy253:
3299 YYDEBUG(253, *YYCURSOR);
3300 yyaccept = 4;
3301 yych = *(YYMARKER = ++YYCURSOR);
3302 if (yych <= '=') {
3303 if (yych <= '"') {
3304 if (yych <= '\n') {
3305 if (yych <= 0x00) goto yy249;
3306 if (yych <= 0x08) goto yy256;
3307 goto yy249;
3308 } else {
3309 if (yych == '\r') goto yy249;
3310 if (yych <= 0x1F) goto yy256;
3311 goto yy249;
3312 }
3313 } else {
3314 if (yych <= '9') {
3315 if (yych <= '%') goto yy256;
3316 if (yych <= ')') goto yy249;
3317 if (yych <= '/') goto yy256;
3318 goto yy257;
3319 } else {
3320 if (yych == ';') goto yy249;
3321 if (yych <= '<') goto yy256;
3322 goto yy249;
3323 }
3324 }
3325 } else {
3326 if (yych <= '`') {
3327 if (yych <= 'R') {
3328 if (yych <= '@') goto yy256;
3329 if (yych <= 'Q') goto yy257;
3330 goto yy269;
3331 } else {
3332 if (yych <= 'Z') goto yy257;
3333 if (yych == '_') goto yy257;
3334 goto yy256;
3335 }
3336 } else {
3337 if (yych <= '{') {
3338 if (yych == 'r') goto yy269;
3339 if (yych <= 'z') goto yy257;
3340 goto yy256;
3341 } else {
3342 if (yych == '}') goto yy256;
3343 if (yych <= '~') goto yy249;
3344 goto yy256;
3345 }
3346 }
3347 }
3348 yy254:
3349 YYDEBUG(254, *YYCURSOR);
3350 yyaccept = 4;
3351 yych = *(YYMARKER = ++YYCURSOR);
3352 if (yych <= '=') {
3353 if (yych <= '"') {
3354 if (yych <= '\n') {
3355 if (yych <= 0x00) goto yy249;
3356 if (yych <= 0x08) goto yy256;
3357 goto yy249;
3358 } else {
3359 if (yych == '\r') goto yy249;
3360 if (yych <= 0x1F) goto yy256;
3361 goto yy249;
3362 }
3363 } else {
3364 if (yych <= '9') {
3365 if (yych <= '%') goto yy256;
3366 if (yych <= ')') goto yy249;
3367 if (yych <= '/') goto yy256;
3368 goto yy257;
3369 } else {
3370 if (yych == ';') goto yy249;
3371 if (yych <= '<') goto yy256;
3372 goto yy249;
3373 }
3374 }
3375 } else {
3376 if (yych <= '`') {
3377 if (yych <= 'E') {
3378 if (yych <= '@') goto yy256;
3379 if (yych <= 'D') goto yy257;
3380 goto yy259;
3381 } else {
3382 if (yych <= 'Z') goto yy257;
3383 if (yych == '_') goto yy257;
3384 goto yy256;
3385 }
3386 } else {
3387 if (yych <= '{') {
3388 if (yych == 'e') goto yy259;
3389 if (yych <= 'z') goto yy257;
3390 goto yy256;
3391 } else {
3392 if (yych == '}') goto yy256;
3393 if (yych <= '~') goto yy249;
3394 goto yy256;
3395 }
3396 }
3397 }
3398 yy255:
3399 YYDEBUG(255, *YYCURSOR);
3400 yyaccept = 0;
3401 YYMARKER = ++YYCURSOR;
3402 YYFILL(1);
3403 yych = *YYCURSOR;
3404 yy256:
3405 YYDEBUG(256, *YYCURSOR);
3406 if (yybm[0+yych] & 2) {
3407 goto yy255;
3408 }
3409 if (yych == '$') goto yy260;
3410 goto yy229;
3411 yy257:
3412 YYDEBUG(257, *YYCURSOR);
3413 yyaccept = 4;
3414 YYMARKER = ++YYCURSOR;
3415 YYFILL(1);
3416 yych = *YYCURSOR;
3417 YYDEBUG(258, *YYCURSOR);
3418 if (yybm[0+yych] & 4) {
3419 goto yy257;
3420 }
3421 if (yych <= '%') {
3422 if (yych <= '\r') {
3423 if (yych <= 0x08) {
3424 if (yych <= 0x00) goto yy249;
3425 goto yy255;
3426 } else {
3427 if (yych <= '\n') goto yy249;
3428 if (yych <= '\f') goto yy255;
3429 goto yy249;
3430 }
3431 } else {
3432 if (yych <= '"') {
3433 if (yych <= 0x1F) goto yy255;
3434 goto yy249;
3435 } else {
3436 if (yych == '$') goto yy260;
3437 goto yy255;
3438 }
3439 }
3440 } else {
3441 if (yych <= '=') {
3442 if (yych <= ':') {
3443 if (yych <= ')') goto yy249;
3444 goto yy255;
3445 } else {
3446 if (yych == '<') goto yy255;
3447 goto yy249;
3448 }
3449 } else {
3450 if (yych <= '|') {
3451 if (yych <= '{') goto yy255;
3452 goto yy249;
3453 } else {
3454 if (yych == '~') goto yy249;
3455 goto yy255;
3456 }
3457 }
3458 }
3459 yy259:
3460 YYDEBUG(259, *YYCURSOR);
3461 yyaccept = 4;
3462 yych = *(YYMARKER = ++YYCURSOR);
3463 if (yych <= '=') {
3464 if (yych <= '"') {
3465 if (yych <= '\n') {
3466 if (yych <= 0x00) goto yy249;
3467 if (yych <= 0x08) goto yy256;
3468 goto yy249;
3469 } else {
3470 if (yych == '\r') goto yy249;
3471 if (yych <= 0x1F) goto yy256;
3472 goto yy249;
3473 }
3474 } else {
3475 if (yych <= '9') {
3476 if (yych <= '%') goto yy256;
3477 if (yych <= ')') goto yy249;
3478 if (yych <= '/') goto yy256;
3479 goto yy257;
3480 } else {
3481 if (yych == ';') goto yy249;
3482 if (yych <= '<') goto yy256;
3483 goto yy249;
3484 }
3485 }
3486 } else {
3487 if (yych <= '`') {
3488 if (yych <= 'S') {
3489 if (yych <= '@') goto yy256;
3490 if (yych <= 'R') goto yy257;
3491 goto yy265;
3492 } else {
3493 if (yych <= 'Z') goto yy257;
3494 if (yych == '_') goto yy257;
3495 goto yy256;
3496 }
3497 } else {
3498 if (yych <= '{') {
3499 if (yych == 's') goto yy265;
3500 if (yych <= 'z') goto yy257;
3501 goto yy256;
3502 } else {
3503 if (yych == '}') goto yy256;
3504 if (yych <= '~') goto yy249;
3505 goto yy256;
3506 }
3507 }
3508 }
3509 yy260:
3510 YYDEBUG(260, *YYCURSOR);
3511 ++YYCURSOR;
3512 YYFILL(1);
3513 yych = *YYCURSOR;
3514 if (yych <= '\\') {
3515 if (yych <= 0x00) goto yy261;
3516 if (yych <= '[') goto yy255;
3517 goto yy262;
3518 } else {
3519 if (yych != '{') goto yy255;
3520 }
3521 yy261:
3522 YYDEBUG(261, *YYCURSOR);
3523 YYCURSOR = YYMARKER;
3524 if (yyaccept <= 3) {
3525 if (yyaccept <= 1) {
3526 if (yyaccept <= 0) {
3527 goto yy229;
3528 } else {
3529 goto yy231;
3530 }
3531 } else {
3532 if (yyaccept <= 2) {
3533 goto yy227;
3534 } else {
3535 goto yy244;
3536 }
3537 }
3538 } else {
3539 if (yyaccept <= 5) {
3540 if (yyaccept <= 4) {
3541 goto yy249;
3542 } else {
3543 goto yy266;
3544 }
3545 } else {
3546 goto yy273;
3547 }
3548 }
3549 yy262:
3550 YYDEBUG(262, *YYCURSOR);
3551 ++YYCURSOR;
3552 YYFILL(1);
3553 yych = *YYCURSOR;
3554 if (yybm[0+yych] & 8) {
3555 goto yy263;
3556 }
3557 goto yy255;
3558 yy263:
3559 YYDEBUG(263, *YYCURSOR);
3560 ++YYCURSOR;
3561 YYFILL(1);
3562 yych = *YYCURSOR;
3563 YYDEBUG(264, *YYCURSOR);
3564 if (yybm[0+yych] & 8) {
3565 goto yy263;
3566 }
3567 if (yych <= 0x00) goto yy229;
3568 if (yych == '\\') goto yy262;
3569 goto yy255;
3570 yy265:
3571 YYDEBUG(265, *YYCURSOR);
3572 yyaccept = 5;
3573 yych = *(YYMARKER = ++YYCURSOR);
3574 if (yybm[0+yych] & 16) {
3575 goto yy267;
3576 }
3577 if (yych <= ';') {
3578 if (yych <= ' ') {
3579 if (yych <= '\n') {
3580 if (yych <= 0x00) goto yy266;
3581 if (yych <= '\t') goto yy256;
3582 } else {
3583 if (yych != '\r') goto yy256;
3584 }
3585 } else {
3586 if (yych <= ')') {
3587 if (yych <= '"') goto yy266;
3588 if (yych <= '%') goto yy256;
3589 } else {
3590 if (yych <= '/') goto yy256;
3591 if (yych <= '9') goto yy257;
3592 if (yych <= ':') goto yy256;
3593 }
3594 }
3595 } else {
3596 if (yych <= '_') {
3597 if (yych <= '@') {
3598 if (yych != '=') goto yy256;
3599 } else {
3600 if (yych <= 'Z') goto yy257;
3601 if (yych <= '^') goto yy256;
3602 goto yy257;
3603 }
3604 } else {
3605 if (yych <= '{') {
3606 if (yych <= '`') goto yy256;
3607 if (yych <= 'z') goto yy257;
3608 goto yy256;
3609 } else {
3610 if (yych == '}') goto yy256;
3611 if (yych >= 0x7F) goto yy256;
3612 }
3613 }
3614 }
3615 yy266:
3616 YYDEBUG(266, *YYCURSOR);
3617 yyleng = YYCURSOR - SCNG(yy_text);
3618 #line 421 "Zend/zend_ini_scanner.l"
3619 { /* TRUE value (when used outside option value/offset this causes parse error!) */
3620 RETURN_TOKEN(BOOL_TRUE, "1", 1);
3621 }
3622 #line 3623 "Zend/zend_ini_scanner.c"
3623 yy267:
3624 YYDEBUG(267, *YYCURSOR);
3625 ++YYCURSOR;
3626 YYFILL(1);
3627 yych = *YYCURSOR;
3628 YYDEBUG(268, *YYCURSOR);
3629 if (yybm[0+yych] & 16) {
3630 goto yy267;
3631 }
3632 goto yy266;
3633 yy269:
3634 YYDEBUG(269, *YYCURSOR);
3635 yyaccept = 4;
3636 yych = *(YYMARKER = ++YYCURSOR);
3637 if (yych <= '=') {
3638 if (yych <= '"') {
3639 if (yych <= '\n') {
3640 if (yych <= 0x00) goto yy249;
3641 if (yych <= 0x08) goto yy256;
3642 goto yy249;
3643 } else {
3644 if (yych == '\r') goto yy249;
3645 if (yych <= 0x1F) goto yy256;
3646 goto yy249;
3647 }
3648 } else {
3649 if (yych <= '9') {
3650 if (yych <= '%') goto yy256;
3651 if (yych <= ')') goto yy249;
3652 if (yych <= '/') goto yy256;
3653 goto yy257;
3654 } else {
3655 if (yych == ';') goto yy249;
3656 if (yych <= '<') goto yy256;
3657 goto yy249;
3658 }
3659 }
3660 } else {
3661 if (yych <= '`') {
3662 if (yych <= 'U') {
3663 if (yych <= '@') goto yy256;
3664 if (yych <= 'T') goto yy257;
3665 } else {
3666 if (yych <= 'Z') goto yy257;
3667 if (yych == '_') goto yy257;
3668 goto yy256;
3669 }
3670 } else {
3671 if (yych <= '{') {
3672 if (yych == 'u') goto yy270;
3673 if (yych <= 'z') goto yy257;
3674 goto yy256;
3675 } else {
3676 if (yych == '}') goto yy256;
3677 if (yych <= '~') goto yy249;
3678 goto yy256;
3679 }
3680 }
3681 }
3682 yy270:
3683 YYDEBUG(270, *YYCURSOR);
3684 yyaccept = 4;
3685 yych = *(YYMARKER = ++YYCURSOR);
3686 if (yych <= '=') {
3687 if (yych <= '"') {
3688 if (yych <= '\n') {
3689 if (yych <= 0x00) goto yy249;
3690 if (yych <= 0x08) goto yy256;
3691 goto yy249;
3692 } else {
3693 if (yych == '\r') goto yy249;
3694 if (yych <= 0x1F) goto yy256;
3695 goto yy249;
3696 }
3697 } else {
3698 if (yych <= '9') {
3699 if (yych <= '%') goto yy256;
3700 if (yych <= ')') goto yy249;
3701 if (yych <= '/') goto yy256;
3702 goto yy257;
3703 } else {
3704 if (yych == ';') goto yy249;
3705 if (yych <= '<') goto yy256;
3706 goto yy249;
3707 }
3708 }
3709 } else {
3710 if (yych <= '`') {
3711 if (yych <= 'E') {
3712 if (yych <= '@') goto yy256;
3713 if (yych <= 'D') goto yy257;
3714 goto yy265;
3715 } else {
3716 if (yych <= 'Z') goto yy257;
3717 if (yych == '_') goto yy257;
3718 goto yy256;
3719 }
3720 } else {
3721 if (yych <= '{') {
3722 if (yych == 'e') goto yy265;
3723 if (yych <= 'z') goto yy257;
3724 goto yy256;
3725 } else {
3726 if (yych == '}') goto yy256;
3727 if (yych <= '~') goto yy249;
3728 goto yy256;
3729 }
3730 }
3731 }
3732 yy271:
3733 YYDEBUG(271, *YYCURSOR);
3734 yyaccept = 4;
3735 yych = *(YYMARKER = ++YYCURSOR);
3736 if (yych <= '=') {
3737 if (yych <= '"') {
3738 if (yych <= '\n') {
3739 if (yych <= 0x00) goto yy249;
3740 if (yych <= 0x08) goto yy256;
3741 goto yy249;
3742 } else {
3743 if (yych == '\r') goto yy249;
3744 if (yych <= 0x1F) goto yy256;
3745 goto yy249;
3746 }
3747 } else {
3748 if (yych <= '9') {
3749 if (yych <= '%') goto yy256;
3750 if (yych <= ')') goto yy249;
3751 if (yych <= '/') goto yy256;
3752 goto yy257;
3753 } else {
3754 if (yych == ';') goto yy249;
3755 if (yych <= '<') goto yy256;
3756 goto yy249;
3757 }
3758 }
3759 } else {
3760 if (yych <= '`') {
3761 if (yych <= 'F') {
3762 if (yych <= '@') goto yy256;
3763 if (yych <= 'E') goto yy257;
3764 } else {
3765 if (yych <= 'Z') goto yy257;
3766 if (yych == '_') goto yy257;
3767 goto yy256;
3768 }
3769 } else {
3770 if (yych <= '{') {
3771 if (yych == 'f') goto yy272;
3772 if (yych <= 'z') goto yy257;
3773 goto yy256;
3774 } else {
3775 if (yych == '}') goto yy256;
3776 if (yych <= '~') goto yy249;
3777 goto yy256;
3778 }
3779 }
3780 }
3781 yy272:
3782 YYDEBUG(272, *YYCURSOR);
3783 yyaccept = 6;
3784 yych = *(YYMARKER = ++YYCURSOR);
3785 if (yybm[0+yych] & 4) {
3786 goto yy257;
3787 }
3788 if (yych <= '%') {
3789 if (yych <= '\f') {
3790 if (yych <= 0x08) {
3791 if (yych >= 0x01) goto yy256;
3792 } else {
3793 if (yych <= '\t') goto yy274;
3794 if (yych >= '\v') goto yy256;
3795 }
3796 } else {
3797 if (yych <= 0x1F) {
3798 if (yych >= 0x0E) goto yy256;
3799 } else {
3800 if (yych <= ' ') goto yy274;
3801 if (yych >= '#') goto yy256;
3802 }
3803 }
3804 } else {
3805 if (yych <= '=') {
3806 if (yych <= ':') {
3807 if (yych >= '*') goto yy256;
3808 } else {
3809 if (yych == '<') goto yy256;
3810 }
3811 } else {
3812 if (yych <= '|') {
3813 if (yych <= '{') goto yy256;
3814 } else {
3815 if (yych != '~') goto yy256;
3816 }
3817 }
3818 }
3819 yy273:
3820 YYDEBUG(273, *YYCURSOR);
3821 yyleng = YYCURSOR - SCNG(yy_text);
3822 #line 425 "Zend/zend_ini_scanner.l"
3823 { /* FALSE value (when used outside option value/offset this causes parse error!)*/
3824 RETURN_TOKEN(BOOL_FALSE, "", 0);
3825 }
3826 #line 3827 "Zend/zend_ini_scanner.c"
3827 yy274:
3828 YYDEBUG(274, *YYCURSOR);
3829 ++YYCURSOR;
3830 YYFILL(1);
3831 yych = *YYCURSOR;
3832 YYDEBUG(275, *YYCURSOR);
3833 if (yych == '\t') goto yy274;
3834 if (yych == ' ') goto yy274;
3835 goto yy273;
3836 yy276:
3837 YYDEBUG(276, *YYCURSOR);
3838 yyaccept = 6;
3839 yych = *(YYMARKER = ++YYCURSOR);
3840 if (yych <= '<') {
3841 if (yych <= ' ') {
3842 if (yych <= '\n') {
3843 if (yych <= 0x00) goto yy273;
3844 if (yych <= 0x08) goto yy256;
3845 if (yych <= '\t') goto yy274;
3846 goto yy273;
3847 } else {
3848 if (yych == '\r') goto yy273;
3849 if (yych <= 0x1F) goto yy256;
3850 goto yy274;
3851 }
3852 } else {
3853 if (yych <= '/') {
3854 if (yych <= '"') goto yy273;
3855 if (yych <= '%') goto yy256;
3856 if (yych <= ')') goto yy273;
3857 goto yy256;
3858 } else {
3859 if (yych <= '9') goto yy257;
3860 if (yych == ';') goto yy273;
3861 goto yy256;
3862 }
3863 }
3864 } else {
3865 if (yych <= '`') {
3866 if (yych <= 'N') {
3867 if (yych <= '=') goto yy273;
3868 if (yych <= '@') goto yy256;
3869 if (yych <= 'M') goto yy257;
3870 goto yy279;
3871 } else {
3872 if (yych <= 'Z') goto yy257;
3873 if (yych == '_') goto yy257;
3874 goto yy256;
3875 }
3876 } else {
3877 if (yych <= '{') {
3878 if (yych == 'n') goto yy279;
3879 if (yych <= 'z') goto yy257;
3880 goto yy256;
3881 } else {
3882 if (yych == '}') goto yy256;
3883 if (yych <= '~') goto yy273;
3884 goto yy256;
3885 }
3886 }
3887 }
3888 yy277:
3889 YYDEBUG(277, *YYCURSOR);
3890 yyaccept = 4;
3891 yych = *(YYMARKER = ++YYCURSOR);
3892 if (yych <= '=') {
3893 if (yych <= '"') {
3894 if (yych <= '\n') {
3895 if (yych <= 0x00) goto yy249;
3896 if (yych <= 0x08) goto yy256;
3897 goto yy249;
3898 } else {
3899 if (yych == '\r') goto yy249;
3900 if (yych <= 0x1F) goto yy256;
3901 goto yy249;
3902 }
3903 } else {
3904 if (yych <= '9') {
3905 if (yych <= '%') goto yy256;
3906 if (yych <= ')') goto yy249;
3907 if (yych <= '/') goto yy256;
3908 goto yy257;
3909 } else {
3910 if (yych == ';') goto yy249;
3911 if (yych <= '<') goto yy256;
3912 goto yy249;
3913 }
3914 }
3915 } else {
3916 if (yych <= '`') {
3917 if (yych <= 'L') {
3918 if (yych <= '@') goto yy256;
3919 if (yych <= 'K') goto yy257;
3920 } else {
3921 if (yych <= 'Z') goto yy257;
3922 if (yych == '_') goto yy257;
3923 goto yy256;
3924 }
3925 } else {
3926 if (yych <= '{') {
3927 if (yych == 'l') goto yy278;
3928 if (yych <= 'z') goto yy257;
3929 goto yy256;
3930 } else {
3931 if (yych == '}') goto yy256;
3932 if (yych <= '~') goto yy249;
3933 goto yy256;
3934 }
3935 }
3936 }
3937 yy278:
3938 YYDEBUG(278, *YYCURSOR);
3939 yyaccept = 4;
3940 yych = *(YYMARKER = ++YYCURSOR);
3941 if (yych <= '=') {
3942 if (yych <= '"') {
3943 if (yych <= '\n') {
3944 if (yych <= 0x00) goto yy249;
3945 if (yych <= 0x08) goto yy256;
3946 goto yy249;
3947 } else {
3948 if (yych == '\r') goto yy249;
3949 if (yych <= 0x1F) goto yy256;
3950 goto yy249;
3951 }
3952 } else {
3953 if (yych <= '9') {
3954 if (yych <= '%') goto yy256;
3955 if (yych <= ')') goto yy249;
3956 if (yych <= '/') goto yy256;
3957 goto yy257;
3958 } else {
3959 if (yych == ';') goto yy249;
3960 if (yych <= '<') goto yy256;
3961 goto yy249;
3962 }
3963 }
3964 } else {
3965 if (yych <= '`') {
3966 if (yych <= 'L') {
3967 if (yych <= '@') goto yy256;
3968 if (yych <= 'K') goto yy257;
3969 goto yy272;
3970 } else {
3971 if (yych <= 'Z') goto yy257;
3972 if (yych == '_') goto yy257;
3973 goto yy256;
3974 }
3975 } else {
3976 if (yych <= '{') {
3977 if (yych == 'l') goto yy272;
3978 if (yych <= 'z') goto yy257;
3979 goto yy256;
3980 } else {
3981 if (yych == '}') goto yy256;
3982 if (yych <= '~') goto yy249;
3983 goto yy256;
3984 }
3985 }
3986 }
3987 yy279:
3988 YYDEBUG(279, *YYCURSOR);
3989 yyaccept = 4;
3990 yych = *(YYMARKER = ++YYCURSOR);
3991 if (yych <= '=') {
3992 if (yych <= '"') {
3993 if (yych <= '\n') {
3994 if (yych <= 0x00) goto yy249;
3995 if (yych <= 0x08) goto yy256;
3996 goto yy249;
3997 } else {
3998 if (yych == '\r') goto yy249;
3999 if (yych <= 0x1F) goto yy256;
4000 goto yy249;
4001 }
4002 } else {
4003 if (yych <= '9') {
4004 if (yych <= '%') goto yy256;
4005 if (yych <= ')') goto yy249;
4006 if (yych <= '/') goto yy256;
4007 goto yy257;
4008 } else {
4009 if (yych == ';') goto yy249;
4010 if (yych <= '<') goto yy256;
4011 goto yy249;
4012 }
4013 }
4014 } else {
4015 if (yych <= '`') {
4016 if (yych <= 'E') {
4017 if (yych <= '@') goto yy256;
4018 if (yych <= 'D') goto yy257;
4019 goto yy272;
4020 } else {
4021 if (yych <= 'Z') goto yy257;
4022 if (yych == '_') goto yy257;
4023 goto yy256;
4024 }
4025 } else {
4026 if (yych <= '{') {
4027 if (yych == 'e') goto yy272;
4028 if (yych <= 'z') goto yy257;
4029 goto yy256;
4030 } else {
4031 if (yych == '}') goto yy256;
4032 if (yych <= '~') goto yy249;
4033 goto yy256;
4034 }
4035 }
4036 }
4037 yy280:
4038 YYDEBUG(280, *YYCURSOR);
4039 yyaccept = 4;
4040 yych = *(YYMARKER = ++YYCURSOR);
4041 if (yych <= '=') {
4042 if (yych <= '"') {
4043 if (yych <= '\n') {
4044 if (yych <= 0x00) goto yy249;
4045 if (yych <= 0x08) goto yy256;
4046 goto yy249;
4047 } else {
4048 if (yych == '\r') goto yy249;
4049 if (yych <= 0x1F) goto yy256;
4050 goto yy249;
4051 }
4052 } else {
4053 if (yych <= '9') {
4054 if (yych <= '%') goto yy256;
4055 if (yych <= ')') goto yy249;
4056 if (yych <= '/') goto yy256;
4057 goto yy257;
4058 } else {
4059 if (yych == ';') goto yy249;
4060 if (yych <= '<') goto yy256;
4061 goto yy249;
4062 }
4063 }
4064 } else {
4065 if (yych <= '`') {
4066 if (yych <= 'L') {
4067 if (yych <= '@') goto yy256;
4068 if (yych <= 'K') goto yy257;
4069 } else {
4070 if (yych <= 'Z') goto yy257;
4071 if (yych == '_') goto yy257;
4072 goto yy256;
4073 }
4074 } else {
4075 if (yych <= '{') {
4076 if (yych == 'l') goto yy281;
4077 if (yych <= 'z') goto yy257;
4078 goto yy256;
4079 } else {
4080 if (yych == '}') goto yy256;
4081 if (yych <= '~') goto yy249;
4082 goto yy256;
4083 }
4084 }
4085 }
4086 yy281:
4087 YYDEBUG(281, *YYCURSOR);
4088 yyaccept = 4;
4089 yych = *(YYMARKER = ++YYCURSOR);
4090 if (yych <= '=') {
4091 if (yych <= '"') {
4092 if (yych <= '\n') {
4093 if (yych <= 0x00) goto yy249;
4094 if (yych <= 0x08) goto yy256;
4095 goto yy249;
4096 } else {
4097 if (yych == '\r') goto yy249;
4098 if (yych <= 0x1F) goto yy256;
4099 goto yy249;
4100 }
4101 } else {
4102 if (yych <= '9') {
4103 if (yych <= '%') goto yy256;
4104 if (yych <= ')') goto yy249;
4105 if (yych <= '/') goto yy256;
4106 goto yy257;
4107 } else {
4108 if (yych == ';') goto yy249;
4109 if (yych <= '<') goto yy256;
4110 goto yy249;
4111 }
4112 }
4113 } else {
4114 if (yych <= '`') {
4115 if (yych <= 'S') {
4116 if (yych <= '@') goto yy256;
4117 if (yych <= 'R') goto yy257;
4118 } else {
4119 if (yych <= 'Z') goto yy257;
4120 if (yych == '_') goto yy257;
4121 goto yy256;
4122 }
4123 } else {
4124 if (yych <= '{') {
4125 if (yych == 's') goto yy282;
4126 if (yych <= 'z') goto yy257;
4127 goto yy256;
4128 } else {
4129 if (yych == '}') goto yy256;
4130 if (yych <= '~') goto yy249;
4131 goto yy256;
4132 }
4133 }
4134 }
4135 yy282:
4136 YYDEBUG(282, *YYCURSOR);
4137 yyaccept = 4;
4138 yych = *(YYMARKER = ++YYCURSOR);
4139 if (yych <= '=') {
4140 if (yych <= '"') {
4141 if (yych <= '\n') {
4142 if (yych <= 0x00) goto yy249;
4143 if (yych <= 0x08) goto yy256;
4144 goto yy249;
4145 } else {
4146 if (yych == '\r') goto yy249;
4147 if (yych <= 0x1F) goto yy256;
4148 goto yy249;
4149 }
4150 } else {
4151 if (yych <= '9') {
4152 if (yych <= '%') goto yy256;
4153 if (yych <= ')') goto yy249;
4154 if (yych <= '/') goto yy256;
4155 goto yy257;
4156 } else {
4157 if (yych == ';') goto yy249;
4158 if (yych <= '<') goto yy256;
4159 goto yy249;
4160 }
4161 }
4162 } else {
4163 if (yych <= '`') {
4164 if (yych <= 'E') {
4165 if (yych <= '@') goto yy256;
4166 if (yych <= 'D') goto yy257;
4167 goto yy272;
4168 } else {
4169 if (yych <= 'Z') goto yy257;
4170 if (yych == '_') goto yy257;
4171 goto yy256;
4172 }
4173 } else {
4174 if (yych <= '{') {
4175 if (yych == 'e') goto yy272;
4176 if (yych <= 'z') goto yy257;
4177 goto yy256;
4178 } else {
4179 if (yych == '}') goto yy256;
4180 if (yych <= '~') goto yy249;
4181 goto yy256;
4182 }
4183 }
4184 }
4185 yy283:
4186 YYDEBUG(283, *YYCURSOR);
4187 ++YYCURSOR;
4188 YYFILL(2);
4189 yych = *YYCURSOR;
4190 yy284:
4191 YYDEBUG(284, *YYCURSOR);
4192 if (yybm[0+yych] & 32) {
4193 goto yy283;
4194 }
4195 if (yych >= '\r') goto yy287;
4196 yy285:
4197 YYDEBUG(285, *YYCURSOR);
4198 ++YYCURSOR;
4199 yy286:
4200 YYDEBUG(286, *YYCURSOR);
4201 yyleng = YYCURSOR - SCNG(yy_text);
4202 #line 585 "Zend/zend_ini_scanner.l"
4203 { /* Comment */
4204 BEGIN(INITIAL);
4205 SCNG(lineno)++;
4206 return END_OF_LINE;
4207 }
4208 #line 4209 "Zend/zend_ini_scanner.c"
4209 yy287:
4210 YYDEBUG(287, *YYCURSOR);
4211 yych = *++YYCURSOR;
4212 if (yych == '\n') goto yy285;
4213 goto yy286;
4214 yy288:
4215 YYDEBUG(288, *YYCURSOR);
4216 yyaccept = 3;
4217 YYMARKER = ++YYCURSOR;
4218 YYFILL(1);
4219 yych = *YYCURSOR;
4220 YYDEBUG(289, *YYCURSOR);
4221 if (yybm[0+yych] & 64) {
4222 goto yy288;
4223 }
4224 if (yych <= '%') {
4225 if (yych <= '\r') {
4226 if (yych <= 0x08) {
4227 if (yych <= 0x00) goto yy244;
4228 goto yy255;
4229 } else {
4230 if (yych <= '\n') goto yy244;
4231 if (yych <= '\f') goto yy255;
4232 goto yy244;
4233 }
4234 } else {
4235 if (yych <= '"') {
4236 if (yych <= 0x1F) goto yy255;
4237 goto yy244;
4238 } else {
4239 if (yych == '$') goto yy260;
4240 goto yy255;
4241 }
4242 }
4243 } else {
4244 if (yych <= '=') {
4245 if (yych <= ':') {
4246 if (yych <= ')') goto yy244;
4247 goto yy255;
4248 } else {
4249 if (yych == '<') goto yy255;
4250 goto yy244;
4251 }
4252 } else {
4253 if (yych <= '|') {
4254 if (yych <= '{') goto yy255;
4255 goto yy244;
4256 } else {
4257 if (yych == '~') goto yy244;
4258 goto yy255;
4259 }
4260 }
4261 }
4262 yy290:
4263 YYDEBUG(290, *YYCURSOR);
4264 yyaccept = 3;
4265 YYMARKER = ++YYCURSOR;
4266 YYFILL(1);
4267 yych = *YYCURSOR;
4268 YYDEBUG(291, *YYCURSOR);
4269 if (yych <= '-') {
4270 if (yych <= 0x1F) {
4271 if (yych <= '\n') {
4272 if (yych <= 0x00) goto yy244;
4273 if (yych <= 0x08) goto yy255;
4274 goto yy244;
4275 } else {
4276 if (yych == '\r') goto yy244;
4277 goto yy255;
4278 }
4279 } else {
4280 if (yych <= '$') {
4281 if (yych <= '"') goto yy244;
4282 if (yych <= '#') goto yy255;
4283 goto yy260;
4284 } else {
4285 if (yych <= '%') goto yy255;
4286 if (yych <= ')') goto yy244;
4287 goto yy255;
4288 }
4289 }
4290 } else {
4291 if (yych <= '<') {
4292 if (yych <= '9') {
4293 if (yych <= '.') goto yy288;
4294 if (yych <= '/') goto yy255;
4295 goto yy290;
4296 } else {
4297 if (yych == ';') goto yy244;
4298 goto yy255;
4299 }
4300 } else {
4301 if (yych <= '|') {
4302 if (yych <= '=') goto yy244;
4303 if (yych <= '{') goto yy255;
4304 goto yy244;
4305 } else {
4306 if (yych == '~') goto yy244;
4307 goto yy255;
4308 }
4309 }
4310 }
4311 yy292:
4312 YYDEBUG(292, *YYCURSOR);
4313 yyaccept = 3;
4314 YYMARKER = ++YYCURSOR;
4315 YYFILL(1);
4316 yych = *YYCURSOR;
4317 YYDEBUG(293, *YYCURSOR);
4318 if (yych <= ')') {
4319 if (yych <= '\r') {
4320 if (yych <= 0x08) {
4321 if (yych <= 0x00) goto yy244;
4322 goto yy255;
4323 } else {
4324 if (yych <= '\n') goto yy244;
4325 if (yych <= '\f') goto yy255;
4326 goto yy244;
4327 }
4328 } else {
4329 if (yych <= '#') {
4330 if (yych <= 0x1F) goto yy255;
4331 if (yych <= '"') goto yy244;
4332 goto yy255;
4333 } else {
4334 if (yych <= '$') goto yy260;
4335 if (yych <= '%') goto yy255;
4336 goto yy244;
4337 }
4338 }
4339 } else {
4340 if (yych <= '<') {
4341 if (yych <= '9') {
4342 if (yych <= '/') goto yy255;
4343 goto yy292;
4344 } else {
4345 if (yych == ';') goto yy244;
4346 goto yy255;
4347 }
4348 } else {
4349 if (yych <= '|') {
4350 if (yych <= '=') goto yy244;
4351 if (yych <= '{') goto yy255;
4352 goto yy244;
4353 } else {
4354 if (yych == '~') goto yy244;
4355 goto yy255;
4356 }
4357 }
4358 }
4359 yy294:
4360 YYDEBUG(294, *YYCURSOR);
4361 yyaccept = 3;
4362 YYMARKER = ++YYCURSOR;
4363 YYFILL(1);
4364 yych = *YYCURSOR;
4365 YYDEBUG(295, *YYCURSOR);
4366 if (yych <= ')') {
4367 if (yych <= '\r') {
4368 if (yych <= 0x08) {
4369 if (yych <= 0x00) goto yy244;
4370 goto yy255;
4371 } else {
4372 if (yych <= '\n') goto yy244;
4373 if (yych <= '\f') goto yy255;
4374 goto yy244;
4375 }
4376 } else {
4377 if (yych <= '#') {
4378 if (yych <= 0x1F) goto yy255;
4379 if (yych <= '"') goto yy244;
4380 goto yy255;
4381 } else {
4382 if (yych <= '$') goto yy260;
4383 if (yych <= '%') goto yy255;
4384 goto yy244;
4385 }
4386 }
4387 } else {
4388 if (yych <= '<') {
4389 if (yych <= '9') {
4390 if (yych <= '/') goto yy255;
4391 goto yy294;
4392 } else {
4393 if (yych == ';') goto yy244;
4394 goto yy255;
4395 }
4396 } else {
4397 if (yych <= '|') {
4398 if (yych <= '=') goto yy244;
4399 if (yych <= '{') goto yy255;
4400 goto yy244;
4401 } else {
4402 if (yych == '~') goto yy244;
4403 goto yy255;
4404 }
4405 }
4406 }
4407 yy296:
4408 YYDEBUG(296, *YYCURSOR);
4409 ++YYCURSOR;
4410 YYFILL(1);
4411 yych = *YYCURSOR;
4412 YYDEBUG(297, *YYCURSOR);
4413 if (yybm[0+yych] & 128) {
4414 goto yy296;
4415 }
4416 YYDEBUG(298, *YYCURSOR);
4417 ++YYCURSOR;
4418 YYDEBUG(299, *YYCURSOR);
4419 yyleng = YYCURSOR - SCNG(yy_text);
4420 #line 368 "Zend/zend_ini_scanner.l"
4421 { /* Raw string */
4422 /* Eat leading and trailing single quotes */
4423 if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
4424 SCNG(yy_text)++;
4425 yyleng = yyleng - 2;
4426 }
4427 RETURN_TOKEN(TC_RAW, yytext, yyleng);
4428 }
4429 #line 4430 "Zend/zend_ini_scanner.c"
4430 yy300:
4431 YYDEBUG(300, *YYCURSOR);
4432 ++YYCURSOR;
4433 YYDEBUG(301, *YYCURSOR);
4434 yyleng = YYCURSOR - SCNG(yy_text);
4435 #line 401 "Zend/zend_ini_scanner.l"
4436 { /* Variable start */
4437 yy_push_state(ST_VARNAME TSRMLS_CC);
4438 return TC_DOLLAR_CURLY;
4439 }
4440 #line 4441 "Zend/zend_ini_scanner.c"
4441 yy302:
4442 YYDEBUG(302, *YYCURSOR);
4443 ++YYCURSOR;
4444 YYFILL(1);
4445 yych = *YYCURSOR;
4446 yy303:
4447 YYDEBUG(303, *YYCURSOR);
4448 if (yych == '\t') goto yy302;
4449 if (yych == ' ') goto yy302;
4450 goto yy236;
4451 yy304:
4452 YYDEBUG(304, *YYCURSOR);
4453 yych = *++YYCURSOR;
4454 goto yy233;
4455 yy305:
4456 YYDEBUG(305, *YYCURSOR);
4457 yyaccept = 1;
4458 YYMARKER = ++YYCURSOR;
4459 YYFILL(2);
4460 yych = *YYCURSOR;
4461 yy306:
4462 YYDEBUG(306, *YYCURSOR);
4463 if (yych <= 0x1F) {
4464 if (yych <= '\n') {
4465 if (yych <= 0x08) goto yy231;
4466 if (yych <= '\t') goto yy305;
4467 goto yy304;
4468 } else {
4469 if (yych == '\r') goto yy308;
4470 goto yy231;
4471 }
4472 } else {
4473 if (yych <= '"') {
4474 if (yych <= ' ') goto yy305;
4475 if (yych <= '!') goto yy231;
4476 } else {
4477 if (yych == ';') goto yy283;
4478 goto yy231;
4479 }
4480 }
4481 YYDEBUG(307, *YYCURSOR);
4482 yych = *++YYCURSOR;
4483 goto yy238;
4484 yy308:
4485 YYDEBUG(308, *YYCURSOR);
4486 ++YYCURSOR;
4487 if ((yych = *YYCURSOR) == '\n') goto yy304;
4488 goto yy233;
4489 }
4490 /* *********************************** */
4491 yyc_ST_VARNAME:
4492 {
4493 static const unsigned char yybm[] = {
4494 128, 128, 128, 128, 128, 128, 128, 128,
4495 128, 0, 0, 128, 128, 0, 128, 128,
4496 128, 128, 128, 128, 128, 128, 128, 128,
4497 128, 128, 128, 128, 128, 128, 128, 128,
4498 128, 0, 0, 128, 0, 128, 0, 128,
4499 0, 0, 128, 128, 128, 128, 128, 128,
4500 128, 128, 128, 128, 128, 128, 128, 128,
4501 128, 128, 128, 0, 128, 0, 128, 128,
4502 128, 128, 128, 128, 128, 128, 128, 128,
4503 128, 128, 128, 128, 128, 128, 128, 128,
4504 128, 128, 128, 128, 128, 128, 128, 128,
4505 128, 128, 128, 0, 128, 128, 128, 128,
4506 128, 128, 128, 128, 128, 128, 128, 128,
4507 128, 128, 128, 128, 128, 128, 128, 128,
4508 128, 128, 128, 128, 128, 128, 128, 128,
4509 128, 128, 128, 0, 0, 0, 0, 128,
4510 128, 128, 128, 128, 128, 128, 128, 128,
4511 128, 128, 128, 128, 128, 128, 128, 128,
4512 128, 128, 128, 128, 128, 128, 128, 128,
4513 128, 128, 128, 128, 128, 128, 128, 128,
4514 128, 128, 128, 128, 128, 128, 128, 128,
4515 128, 128, 128, 128, 128, 128, 128, 128,
4516 128, 128, 128, 128, 128, 128, 128, 128,
4517 128, 128, 128, 128, 128, 128, 128, 128,
4518 128, 128, 128, 128, 128, 128, 128, 128,
4519 128, 128, 128, 128, 128, 128, 128, 128,
4520 128, 128, 128, 128, 128, 128, 128, 128,
4521 128, 128, 128, 128, 128, 128, 128, 128,
4522 128, 128, 128, 128, 128, 128, 128, 128,
4523 128, 128, 128, 128, 128, 128, 128, 128,
4524 128, 128, 128, 128, 128, 128, 128, 128,
4525 128, 128, 128, 128, 128, 128, 128, 128,
4526 };
4527 YYDEBUG(309, *YYCURSOR);
4528 YYFILL(2);
4529 yych = *YYCURSOR;
4530 if (yych <= '\'') {
4531 if (yych <= ' ') {
4532 if (yych <= '\n') {
4533 if (yych >= '\t') goto yy313;
4534 } else {
4535 if (yych == '\r') goto yy313;
4536 }
4537 } else {
4538 if (yych <= '$') {
4539 if (yych != '#') goto yy313;
4540 } else {
4541 if (yych == '&') goto yy313;
4542 }
4543 }
4544 } else {
4545 if (yych <= 'Z') {
4546 if (yych <= ';') {
4547 if (yych <= ')') goto yy313;
4548 if (yych >= ';') goto yy313;
4549 } else {
4550 if (yych == '=') goto yy313;
4551 }
4552 } else {
4553 if (yych <= '|') {
4554 if (yych <= '[') goto yy313;
4555 if (yych >= '{') goto yy313;
4556 } else {
4557 if (yych <= '}') goto yy315;
4558 if (yych <= '~') goto yy313;
4559 }
4560 }
4561 }
4562 YYDEBUG(311, *YYCURSOR);
4563 ++YYCURSOR;
4564 yych = *YYCURSOR;
4565 goto yy318;
4566 yy312:
4567 YYDEBUG(312, *YYCURSOR);
4568 yyleng = YYCURSOR - SCNG(yy_text);
4569 #line 406 "Zend/zend_ini_scanner.l"
4570 { /* Variable name */
4571 /* Eat leading whitespace */
4572 EAT_LEADING_WHITESPACE();
4573
4574 /* Eat trailing whitespace */
4575 EAT_TRAILING_WHITESPACE();
4576
4577 RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
4578 }
4579 #line 4580 "Zend/zend_ini_scanner.c"
4580 yy313:
4581 YYDEBUG(313, *YYCURSOR);
4582 ++YYCURSOR;
4583 YYDEBUG(314, *YYCURSOR);
4584 yyleng = YYCURSOR - SCNG(yy_text);
4585 #line 603 "Zend/zend_ini_scanner.l"
4586 {
4587 return 0;
4588 }
4589 #line 4590 "Zend/zend_ini_scanner.c"
4590 yy315:
4591 YYDEBUG(315, *YYCURSOR);
4592 ++YYCURSOR;
4593 YYDEBUG(316, *YYCURSOR);
4594 yyleng = YYCURSOR - SCNG(yy_text);
4595 #line 416 "Zend/zend_ini_scanner.l"
4596 { /* Variable end */
4597 yy_pop_state(TSRMLS_C);
4598 return '}';
4599 }
4600 #line 4601 "Zend/zend_ini_scanner.c"
4601 yy317:
4602 YYDEBUG(317, *YYCURSOR);
4603 ++YYCURSOR;
4604 YYFILL(1);
4605 yych = *YYCURSOR;
4606 yy318:
4607 YYDEBUG(318, *YYCURSOR);
4608 if (yybm[0+yych] & 128) {
4609 goto yy317;
4610 }
4611 goto yy312;
4612 }
4613 }
4614 #line 607 "Zend/zend_ini_scanner.l"
4615
4616 }
4617