Coverage Report

Created: 2025-12-14 06:10

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