Coverage Report

Created: 2026-04-01 06:49

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
4.46M
#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
35.3M
#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
48
123M
#define YYCURSOR  SCNG(yy_cursor)
49
51.2M
#define YYLIMIT   SCNG(yy_limit)
50
8.94M
#define YYMARKER  SCNG(yy_marker)
51
52
14.1M
#define YYGETCONDITION()  SCNG(yy_state)
53
2.17M
#define YYSETCONDITION(s) SCNG(yy_state) = s
54
55
70.2k
#define STATE(name)  yyc##name
56
57
/* emulate flex constructs */
58
719k
#define BEGIN(state) YYSETCONDITION(STATE(state))
59
70.2k
#define YYSTATE      YYGETCONDITION()
60
4.45M
#define yytext       ((const char*)SCNG(yy_text))
61
9.20M
#define yyleng       SCNG(yy_leng)
62
6.53k
#define yyless(x)    do { YYCURSOR = (const unsigned char*)yytext + x; \
63
6.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
233M
#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
577k
  while (yyleng) {                                 \
120
577k
    if (yytext[0] == ' ' || yytext[0] == '\t') { \
121
59.2k
      SCNG(yy_text)++;                         \
122
59.2k
      yyleng--;                                \
123
517k
    } else {                                     \
124
517k
      break;                                   \
125
517k
    }                                            \
126
577k
  }
127
128
/* Eat trailing whitespace + extra char */
129
#define EAT_TRAILING_WHITESPACE_EX(ch)              \
130
653k
  while (yyleng && (                              \
131
651k
    (ch != 'X' && yytext[yyleng - 1] ==  ch) || \
132
651k
    yytext[yyleng - 1] == '\n' ||               \
133
651k
    yytext[yyleng - 1] == '\r' ||               \
134
651k
    yytext[yyleng - 1] == '\t' ||               \
135
651k
    yytext[yyleng - 1] == ' ')                  \
136
519k
  ) {                                             \
137
134k
    yyleng--;                                   \
138
134k
  }
139
140
/* Eat trailing whitespace */
141
503k
#define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
142
143
#define zend_ini_copy_value(retval, str, len) \
144
2.08M
  ZVAL_NEW_STR(retval, zend_string_init(str, len, ZEND_SYSTEM_INI))
145
146
147
1.64M
#define RETURN_TOKEN(type, str, len) {                             \
148
1.64M
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_TYPED &&            \
149
1.64M
    (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW))) {\
150
4.05k
    zend_ini_copy_typed_value(ini_lval, type, str, len);       \
151
1.64M
  } else {                                                       \
152
1.64M
    zend_ini_copy_value(ini_lval, str, len);                   \
153
1.64M
  }                                                              \
154
1.64M
  Z_EXTRA_P(ini_lval) = 0;                                       \
155
1.64M
  return type;                                                   \
156
1.64M
}
157
158
static void zend_ini_copy_typed_value(zval *retval, const int type, const char *str, int len)
159
4.05k
{
160
4.05k
  switch (type) {
161
4
    case BOOL_FALSE:
162
281
    case BOOL_TRUE:
163
281
      ZVAL_BOOL(retval, type == BOOL_TRUE);
164
281
      break;
165
166
189
    case NULL_NULL:
167
189
      ZVAL_NULL(retval);
168
189
      break;
169
170
3.58k
    default:
171
3.58k
      zend_ini_copy_value(retval, str, len);
172
4.05k
  }
173
4.05k
}
174
175
static void _yy_push_state(int new_state)
176
733k
{
177
733k
  zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION());
178
733k
  YYSETCONDITION(new_state);
179
733k
}
180
181
733k
#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
182
183
static void yy_pop_state(void)
184
724k
{
185
724k
  int *stack_state = zend_stack_top(&SCNG(state_stack));
186
724k
  YYSETCONDITION(*stack_state);
187
724k
  zend_stack_del_top(&SCNG(state_stack));
188
724k
}
189
190
static void yy_scan_buffer(const char *str, unsigned int len)
191
72.6k
{
192
72.6k
  YYCURSOR = (const YYCTYPE*)str;
193
72.6k
  SCNG(yy_start) = YYCURSOR;
194
72.6k
  YYLIMIT  = YYCURSOR + len;
195
72.6k
}
196
197
195k
#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
72.6k
{
202
  /* Sanity check */
203
72.6k
  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
72.6k
  SCNG(lineno) = 1;
209
72.6k
  SCNG(scanner_mode) = scanner_mode;
210
72.6k
  SCNG(yy_in) = fh;
211
212
72.6k
  if (fh != NULL) {
213
0
    ini_filename = zend_string_copy(fh->filename);
214
72.6k
  } else {
215
72.6k
    ini_filename = NULL;
216
72.6k
  }
217
218
72.6k
  zend_stack_init(&SCNG(state_stack), sizeof(int));
219
72.6k
  BEGIN(INITIAL);
220
221
72.6k
  return SUCCESS;
222
72.6k
}
223
/* }}} */
224
225
/* {{{ shutdown_ini_scanner() */
226
void shutdown_ini_scanner(void)
227
72.6k
{
228
72.6k
  zend_stack_destroy(&SCNG(state_stack));
229
72.6k
  if (ini_filename) {
230
0
    zend_string_release(ini_filename);
231
0
  }
232
72.6k
}
233
/* }}} */
234
235
/* {{{ zend_ini_scanner_get_lineno() */
236
ZEND_COLD uint32_t zend_ini_scanner_get_lineno(void)
237
50.2k
{
238
50.2k
  return SCNG(lineno);
239
50.2k
}
240
/* }}} */
241
242
/* {{{ zend_ini_scanner_get_filename() */
243
ZEND_COLD const char *zend_ini_scanner_get_filename(void)
244
50.2k
{
245
50.2k
  return ini_filename ? ZSTR_VAL(ini_filename) : "Unknown";
246
50.2k
}
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
8
{
252
8
  char *buf;
253
8
  size_t size;
254
255
8
  if (zend_stream_fixup(fh, &buf, &size) == FAILURE) {
256
4
    return FAILURE;
257
4
  }
258
259
4
  if (init_ini_scanner(scanner_mode, fh) == FAILURE) {
260
4
    return FAILURE;
261
4
  }
262
263
0
  yy_scan_buffer(buf, (unsigned int)size);
264
265
0
  return SUCCESS;
266
4
}
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
72.6k
{
272
72.6k
  int len = (int)strlen(str);
273
274
72.6k
  if (init_ini_scanner(scanner_mode, NULL) == FAILURE) {
275
2
    return FAILURE;
276
2
  }
277
278
72.6k
  yy_scan_buffer(str, len);
279
280
72.6k
  return SUCCESS;
281
72.6k
}
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
432k
{
287
432k
  char *s, *t;
288
432k
  char *end;
289
290
432k
  zend_ini_copy_value(lval, str, len);
291
292
  /* convert escape sequences */
293
432k
  s = t = Z_STRVAL_P(lval);
294
432k
  end = s + Z_STRLEN_P(lval);
295
296
10.7M
  while (s < end) {
297
10.2M
    if (*s == '\\') {
298
68.6k
      s++;
299
68.6k
      if (s >= end) {
300
227
        *t++ = '\\';
301
227
        continue;
302
227
      }
303
68.4k
      switch (*s) {
304
891
        case '"':
305
891
          if (*s != quote_type) {
306
0
            *t++ = '\\';
307
0
            *t++ = *s;
308
0
            break;
309
0
          }
310
891
          ZEND_FALLTHROUGH;
311
9.45k
        case '\\':
312
9.60k
        case '$':
313
9.60k
          *t++ = *s;
314
9.60k
          Z_STRLEN_P(lval)--;
315
9.60k
          break;
316
58.8k
        default:
317
58.8k
          *t++ = '\\';
318
58.8k
          *t++ = *s;
319
58.8k
          break;
320
68.4k
      }
321
10.2M
    } else {
322
10.2M
      *t++ = *s;
323
10.2M
    }
324
10.2M
    if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
325
270k
      SCNG(lineno)++;
326
270k
    }
327
10.2M
    s++;
328
10.2M
  }
329
432k
  *t = 0;
330
432k
}
331
/* }}} */
332
333
int ini_lex(zval *ini_lval)
334
4.46M
{
335
4.50M
restart:
336
4.50M
  SCNG(yy_text) = YYCURSOR;
337
338
/* yymore_restart: */
339
  /* detect EOF */
340
4.50M
  if (YYCURSOR >= YYLIMIT) {
341
31.3k
    if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
342
8.19k
      BEGIN(INITIAL);
343
8.19k
      return END_OF_LINE;
344
8.19k
    }
345
23.1k
    return 0;
346
31.3k
  }
347
348
  /* Eat any UTF-8 BOM we find in the first 3 bytes */
349
4.47M
  if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
350
70.2k
    if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
351
6.51k
      YYCURSOR += 3;
352
6.51k
      goto restart;
353
6.51k
    }
354
70.2k
  }
355
356
4.46M
#line 357 "Zend/zend_ini_scanner.c"
357
4.46M
{
358
4.46M
  YYCTYPE yych;
359
4.46M
  unsigned int yyaccept = 0;
360
4.46M
  if (YYGETCONDITION() < 4) {
361
3.30M
    if (YYGETCONDITION() < 2) {
362
1.68M
      if (YYGETCONDITION() < 1) {
363
1.14M
        goto yyc_INITIAL;
364
1.14M
      } else {
365
548k
        goto yyc_ST_OFFSET;
366
548k
      }
367
1.68M
    } else {
368
1.61M
      if (YYGETCONDITION() < 3) {
369
129k
        goto yyc_ST_SECTION_VALUE;
370
1.48M
      } else {
371
1.48M
        goto yyc_ST_VALUE;
372
1.48M
      }
373
1.61M
    }
374
3.30M
  } else {
375
1.15M
    if (YYGETCONDITION() < 6) {
376
1.15M
      if (YYGETCONDITION() < 5) {
377
41
        goto yyc_ST_SECTION_RAW;
378
1.15M
      } else {
379
1.15M
        goto yyc_ST_DOUBLE_QUOTES;
380
1.15M
      }
381
1.15M
    } else {
382
1.76k
      if (YYGETCONDITION() < 7) {
383
95
        goto yyc_ST_VAR_FALLBACK;
384
1.66k
      } else {
385
1.66k
        if (YYGETCONDITION() < 8) {
386
1.22k
          goto yyc_ST_VARNAME;
387
1.22k
        } else {
388
445
          goto yyc_ST_RAW;
389
445
        }
390
1.66k
      }
391
1.76k
    }
392
1.15M
  }
393
/* *********************************** */
394
1.14M
yyc_INITIAL:
395
1.14M
  {
396
1.14M
    static const unsigned char yybm[] = {
397
1.14M
      128, 144, 144, 144, 144, 144, 144, 144, 
398
1.14M
      144, 160,   0, 144, 144,   0, 144, 144, 
399
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
400
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
401
1.14M
      240, 128, 128, 144, 128, 144, 128, 144, 
402
1.14M
      128, 128, 144, 144, 144, 144, 144, 144, 
403
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
404
1.14M
      144, 144, 144, 128, 144, 128, 144, 144, 
405
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
406
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
407
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
408
1.14M
      144, 144, 144, 128, 144, 128, 128, 144, 
409
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
410
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
411
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
412
1.14M
      144, 144, 144, 128, 128, 128, 128, 144, 
413
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
414
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
415
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
416
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
417
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
418
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
419
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
420
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
421
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
422
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
423
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
424
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
425
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
426
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
427
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
428
1.14M
      144, 144, 144, 144, 144, 144, 144, 144, 
429
1.14M
    };
430
1.14M
    YYDEBUG(1, *YYCURSOR);
431
1.14M
    YYFILL(5);
432
1.14M
    yych = *YYCURSOR;
433
1.14M
    if (yybm[0+yych] & 64) {
434
32.8k
      goto yy14;
435
32.8k
    }
436
1.10M
    if (yych <= 'M') {
437
801k
      if (yych <= '$') {
438
272k
        if (yych <= '\f') {
439
130k
          if (yych <= 0x08) {
440
4.42k
            if (yych >= 0x01) goto yy5;
441
126k
          } else {
442
126k
            if (yych <= '\t') goto yy8;
443
95.0k
            if (yych <= '\n') goto yy11;
444
13.9k
            goto yy5;
445
95.0k
          }
446
142k
        } else {
447
142k
          if (yych <= 0x1F) {
448
136k
            if (yych <= '\r') goto yy13;
449
13.6k
            goto yy5;
450
136k
          } else {
451
5.73k
            if (yych == '#') goto yy5;
452
3.07k
            goto yy16;
453
5.73k
          }
454
142k
        }
455
528k
      } else {
456
528k
        if (yych <= ':') {
457
178k
          if (yych <= '&') {
458
966
            if (yych <= '%') goto yy5;
459
532
            goto yy16;
460
177k
          } else {
461
177k
            if (yych <= '\'') goto yy5;
462
176k
            if (yych <= ')') goto yy16;
463
173k
            goto yy5;
464
176k
          }
465
349k
        } else {
466
349k
          if (yych <= '=') {
467
338k
            if (yych <= ';') goto yy18;
468
263k
            if (yych <= '<') goto yy5;
469
262k
            goto yy20;
470
263k
          } else {
471
10.6k
            if (yych == 'F') goto yy23;
472
10.5k
            goto yy5;
473
10.6k
          }
474
349k
        }
475
528k
      }
476
801k
    } else {
477
306k
      if (yych <= 'e') {
478
82.7k
        if (yych <= 'X') {
479
10.9k
          if (yych <= 'O') {
480
2.82k
            if (yych <= 'N') goto yy24;
481
499
            goto yy25;
482
8.11k
          } else {
483
8.11k
            if (yych == 'T') goto yy26;
484
2.62k
            goto yy5;
485
8.11k
          }
486
71.7k
        } else {
487
71.7k
          if (yych <= '[') {
488
24.8k
            if (yych <= 'Y') goto yy27;
489
24.7k
            if (yych <= 'Z') goto yy5;
490
24.6k
            goto yy28;
491
46.9k
          } else {
492
46.9k
            if (yych <= '\\') goto yy5;
493
46.5k
            if (yych <= '^') goto yy16;
494
45.4k
            goto yy5;
495
46.5k
          }
496
71.7k
        }
497
223k
      } else {
498
223k
        if (yych <= 's') {
499
28.9k
          if (yych <= 'm') {
500
9.55k
            if (yych <= 'f') goto yy23;
501
7.04k
            goto yy5;
502
19.3k
          } else {
503
19.3k
            if (yych <= 'n') goto yy24;
504
18.1k
            if (yych <= 'o') goto yy25;
505
5.18k
            goto yy5;
506
18.1k
          }
507
194k
        } else {
508
194k
          if (yych <= 'y') {
509
11.8k
            if (yych <= 't') goto yy26;
510
4.50k
            if (yych <= 'x') goto yy5;
511
292
            goto yy27;
512
183k
          } else {
513
183k
            if (yych <= 'z') goto yy5;
514
181k
            if (yych <= '~') goto yy16;
515
179k
            goto yy5;
516
181k
          }
517
194k
        }
518
223k
      }
519
306k
    }
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.10M
}
528
0
#line 529 "Zend/zend_ini_scanner.c"
529
3.89M
yy5:
530
3.89M
    YYDEBUG(5, *YYCURSOR);
531
3.89M
    ++YYCURSOR;
532
3.89M
    YYFILL(1);
533
3.89M
    yych = *YYCURSOR;
534
3.91M
yy6:
535
3.91M
    YYDEBUG(6, *YYCURSOR);
536
3.91M
    if (yybm[0+yych] & 16) {
537
3.39M
      goto yy5;
538
3.39M
    }
539
516k
    if (yych <= '=') goto yy7;
540
17.2k
    if (yych <= '[') goto yy30;
541
502k
yy7:
542
502k
    YYDEBUG(7, *YYCURSOR);
543
502k
    yyleng = YYCURSOR - SCNG(yy_text);
544
502k
#line 503 "Zend/zend_ini_scanner.l"
545
502k
    { /* Get option name */
546
  /* Eat leading whitespace */
547
502k
  EAT_LEADING_WHITESPACE();
548
549
  /* Eat trailing whitespace */
550
502k
  EAT_TRAILING_WHITESPACE();
551
552
502k
  RETURN_TOKEN(TC_LABEL, yytext, yyleng);
553
0
}
554
0
#line 555 "Zend/zend_ini_scanner.c"
555
72.6k
yy8:
556
72.6k
    YYDEBUG(8, *YYCURSOR);
557
72.6k
    ++YYCURSOR;
558
72.6k
    YYFILL(2);
559
72.6k
    yych = *YYCURSOR;
560
72.6k
    YYDEBUG(9, *YYCURSOR);
561
72.6k
    if (yybm[0+yych] & 32) {
562
41.5k
      goto yy8;
563
41.5k
    }
564
31.1k
    if (yych <= '\r') {
565
1.24k
      if (yych <= 0x08) goto yy10;
566
900
      if (yych <= '\n') goto yy11;
567
532
      if (yych >= '\r') goto yy13;
568
29.8k
    } else {
569
29.8k
      if (yych <= ';') {
570
12.8k
        if (yych >= ';') goto yy18;
571
17.0k
      } else {
572
17.0k
        if (yych == '=') goto yy20;
573
17.0k
      }
574
29.8k
    }
575
29.9k
yy10:
576
29.9k
    YYDEBUG(10, *YYCURSOR);
577
29.9k
    yyleng = YYCURSOR - SCNG(yy_text);
578
29.9k
#line 665 "Zend/zend_ini_scanner.l"
579
29.9k
    {
580
  /* eat whitespace */
581
29.9k
  goto restart;
582
31.1k
}
583
0
#line 584 "Zend/zend_ini_scanner.c"
584
98.7k
yy11:
585
98.7k
    YYDEBUG(11, *YYCURSOR);
586
98.7k
    ++YYCURSOR;
587
208k
yy12:
588
208k
    YYDEBUG(12, *YYCURSOR);
589
208k
    yyleng = YYCURSOR - SCNG(yy_text);
590
208k
#line 670 "Zend/zend_ini_scanner.l"
591
208k
    {
592
208k
  SCNG(lineno)++;
593
208k
  return END_OF_LINE;
594
98.7k
}
595
0
#line 596 "Zend/zend_ini_scanner.c"
596
125k
yy13:
597
125k
    YYDEBUG(13, *YYCURSOR);
598
125k
    yych = *++YYCURSOR;
599
125k
    if (yych == '\n') goto yy11;
600
109k
    goto yy12;
601
109k
yy14:
602
82.0k
    YYDEBUG(14, *YYCURSOR);
603
82.0k
    ++YYCURSOR;
604
82.0k
    YYFILL(2);
605
82.0k
    yych = *YYCURSOR;
606
82.0k
    YYDEBUG(15, *YYCURSOR);
607
82.0k
    if (yybm[0+yych] & 64) {
608
49.2k
      goto yy14;
609
49.2k
    }
610
32.8k
    if (yych <= '&') {
611
4.81k
      if (yych <= '\r') {
612
4.09k
        if (yych <= '\t') {
613
547
          if (yych <= 0x00) goto yy7;
614
370
          if (yych <= 0x08) goto yy5;
615
107
          goto yy8;
616
3.54k
        } else {
617
3.54k
          if (yych <= '\n') goto yy11;
618
2.31k
          if (yych <= '\f') goto yy5;
619
2.31k
          goto yy13;
620
2.31k
        }
621
4.09k
      } else {
622
723
        if (yych <= '#') {
623
577
          if (yych <= 0x1F) goto yy5;
624
466
          if (yych <= '"') goto yy7;
625
11
          goto yy5;
626
466
        } else {
627
146
          if (yych == '%') goto yy5;
628
146
          goto yy7;
629
146
        }
630
723
      }
631
28.0k
    } else {
632
28.0k
      if (yych <= '=') {
633
14.6k
        if (yych <= ':') {
634
2.61k
          if (yych <= '\'') goto yy5;
635
2.34k
          if (yych <= ')') goto yy7;
636
2.15k
          goto yy5;
637
12.0k
        } else {
638
12.0k
          if (yych <= ';') goto yy18;
639
2.45k
          if (yych <= '<') goto yy5;
640
675
          goto yy20;
641
2.45k
        }
642
14.6k
      } else {
643
13.3k
        if (yych <= '\\') {
644
879
          if (yych == '[') goto yy30;
645
399
          goto yy5;
646
12.4k
        } else {
647
12.4k
          if (yych <= '^') goto yy7;
648
12.2k
          if (yych <= 'z') goto yy5;
649
8.26k
          if (yych <= '~') goto yy7;
650
7.78k
          goto yy5;
651
8.26k
        }
652
13.3k
      }
653
28.0k
    }
654
9.79k
yy16:
655
9.79k
    YYDEBUG(16, *YYCURSOR);
656
9.79k
    ++YYCURSOR;
657
9.79k
    YYDEBUG(17, *YYCURSOR);
658
9.79k
    yyleng = YYCURSOR - SCNG(yy_text);
659
9.79k
#line 584 "Zend/zend_ini_scanner.l"
660
9.79k
    { /* Disallow these chars outside option values */
661
9.79k
  return yytext[0];
662
32.8k
}
663
0
#line 664 "Zend/zend_ini_scanner.c"
664
4.02M
yy18:
665
4.02M
    YYDEBUG(18, *YYCURSOR);
666
4.02M
    ++YYCURSOR;
667
4.02M
    YYFILL(2);
668
4.02M
    yych = *YYCURSOR;
669
4.02M
    YYDEBUG(19, *YYCURSOR);
670
4.02M
    if (yybm[0+yych] & 128) {
671
3.93M
      goto yy18;
672
3.93M
    }
673
82.7k
    if (yych <= '\n') goto yy33;
674
5.99k
    goto yy35;
675
317k
yy20:
676
317k
    YYDEBUG(20, *YYCURSOR);
677
317k
    ++YYCURSOR;
678
317k
    YYFILL(1);
679
317k
    yych = *YYCURSOR;
680
317k
    YYDEBUG(21, *YYCURSOR);
681
317k
    if (yych == '\t') goto yy20;
682
313k
    if (yych == ' ') goto yy20;
683
263k
    YYDEBUG(22, *YYCURSOR);
684
263k
    yyleng = YYCURSOR - SCNG(yy_text);
685
263k
#line 513 "Zend/zend_ini_scanner.l"
686
263k
    { /* Start option value */
687
263k
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
688
248
    BEGIN(ST_RAW);
689
263k
  } else {
690
263k
    BEGIN(ST_VALUE);
691
263k
  }
692
263k
  return '=';
693
313k
}
694
0
#line 695 "Zend/zend_ini_scanner.c"
695
2.66k
yy23:
696
2.66k
    YYDEBUG(23, *YYCURSOR);
697
2.66k
    yych = *++YYCURSOR;
698
2.66k
    if (yych == 'A') goto yy36;
699
2.58k
    if (yych == 'a') goto yy36;
700
2.21k
    goto yy6;
701
3.60k
yy24:
702
3.60k
    YYDEBUG(24, *YYCURSOR);
703
3.60k
    yych = *++YYCURSOR;
704
3.60k
    if (yych <= 'U') {
705
2.07k
      if (yych == 'O') goto yy37;
706
2.07k
      if (yych <= 'T') goto yy6;
707
14
      goto yy39;
708
2.07k
    } else {
709
1.52k
      if (yych <= 'o') {
710
812
        if (yych <= 'n') goto yy6;
711
315
        goto yy37;
712
812
      } else {
713
715
        if (yych == 'u') goto yy39;
714
707
        goto yy6;
715
715
      }
716
1.52k
    }
717
13.4k
yy25:
718
13.4k
    YYDEBUG(25, *YYCURSOR);
719
13.4k
    yych = *++YYCURSOR;
720
13.4k
    if (yych <= 'N') {
721
10.4k
      if (yych == 'F') goto yy40;
722
10.4k
      if (yych <= 'M') goto yy6;
723
9.26k
      goto yy41;
724
10.4k
    } else {
725
2.99k
      if (yych <= 'f') {
726
247
        if (yych <= 'e') goto yy6;
727
3
        goto yy40;
728
2.74k
      } else {
729
2.74k
        if (yych == 'n') goto yy41;
730
530
        goto yy6;
731
2.74k
      }
732
2.99k
    }
733
12.8k
yy26:
734
12.8k
    YYDEBUG(26, *YYCURSOR);
735
12.8k
    yych = *++YYCURSOR;
736
12.8k
    if (yych == 'R') goto yy44;
737
12.8k
    if (yych == 'r') goto yy44;
738
12.4k
    goto yy6;
739
12.4k
yy27:
740
388
    YYDEBUG(27, *YYCURSOR);
741
388
    yych = *++YYCURSOR;
742
388
    if (yych == 'E') goto yy45;
743
388
    if (yych == 'e') goto yy45;
744
380
    goto yy6;
745
24.6k
yy28:
746
24.6k
    YYDEBUG(28, *YYCURSOR);
747
24.6k
    ++YYCURSOR;
748
24.6k
    YYDEBUG(29, *YYCURSOR);
749
24.6k
    yyleng = YYCURSOR - SCNG(yy_text);
750
24.6k
#line 379 "Zend/zend_ini_scanner.l"
751
24.6k
    { /* Section start */
752
  /* Enter section data lookup state */
753
24.6k
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
754
21
    BEGIN(ST_SECTION_RAW);
755
24.6k
  } else {
756
24.6k
    BEGIN(ST_SECTION_VALUE);
757
24.6k
  }
758
24.6k
  return TC_SECTION;
759
388
}
760
0
#line 761 "Zend/zend_ini_scanner.c"
761
22.1k
yy30:
762
22.1k
    YYDEBUG(30, *YYCURSOR);
763
22.1k
    ++YYCURSOR;
764
22.1k
    YYFILL(1);
765
22.1k
    yych = *YYCURSOR;
766
22.1k
    YYDEBUG(31, *YYCURSOR);
767
22.1k
    if (yych == '\t') goto yy30;
768
21.9k
    if (yych == ' ') goto yy30;
769
16.0k
    YYDEBUG(32, *YYCURSOR);
770
16.0k
    yyleng = YYCURSOR - SCNG(yy_text);
771
16.0k
#line 404 "Zend/zend_ini_scanner.l"
772
16.0k
    { /* Start of option with offset */
773
  /* Eat leading whitespace */
774
16.0k
  EAT_LEADING_WHITESPACE();
775
776
  /* Eat trailing whitespace and [ */
777
16.0k
  EAT_TRAILING_WHITESPACE_EX('[');
778
779
  /* Enter offset lookup state */
780
16.0k
  BEGIN(ST_OFFSET);
781
782
16.0k
  RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
783
0
}
784
0
#line 785 "Zend/zend_ini_scanner.c"
785
80.5k
yy33:
786
80.5k
    YYDEBUG(33, *YYCURSOR);
787
80.5k
    ++YYCURSOR;
788
82.7k
yy34:
789
82.7k
    YYDEBUG(34, *YYCURSOR);
790
82.7k
    yyleng = YYCURSOR - SCNG(yy_text);
791
82.7k
#line 675 "Zend/zend_ini_scanner.l"
792
82.7k
    { /* Comment */
793
82.7k
  BEGIN(INITIAL);
794
82.7k
  SCNG(lineno)++;
795
82.7k
  return END_OF_LINE;
796
80.5k
}
797
0
#line 798 "Zend/zend_ini_scanner.c"
798
5.99k
yy35:
799
5.99k
    YYDEBUG(35, *YYCURSOR);
800
5.99k
    yych = *++YYCURSOR;
801
5.99k
    if (yych == '\n') goto yy33;
802
2.22k
    goto yy34;
803
2.22k
yy36:
804
446
    YYDEBUG(36, *YYCURSOR);
805
446
    yych = *++YYCURSOR;
806
446
    if (yych == 'L') goto yy46;
807
446
    if (yych == 'l') goto yy46;
808
77
    goto yy6;
809
315
yy37:
810
315
    YYDEBUG(37, *YYCURSOR);
811
315
    yych = *++YYCURSOR;
812
315
    if (yych <= '\'') {
813
45
      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
45
      } else {
823
45
        if (yych <= '#') {
824
45
          if (yych <= ' ') goto yy49;
825
45
          if (yych >= '#') goto yy6;
826
45
        } else {
827
0
          if (yych == '%') goto yy6;
828
0
          if (yych >= '\'') goto yy6;
829
0
        }
830
45
      }
831
270
    } else {
832
270
      if (yych <= 'N') {
833
124
        if (yych <= ';') {
834
84
          if (yych <= ')') goto yy38;
835
84
          if (yych <= ':') goto yy6;
836
84
        } else {
837
40
          if (yych == '=') goto yy38;
838
40
          if (yych <= 'M') goto yy6;
839
0
          goto yy51;
840
40
        }
841
146
      } else {
842
146
        if (yych <= 'm') {
843
87
          if (yych <= '\\') goto yy6;
844
87
          if (yych >= '_') goto yy6;
845
87
        } else {
846
59
          if (yych <= 'n') goto yy51;
847
59
          if (yych <= 'z') goto yy6;
848
56
          if (yych >= 0x7F) goto yy6;
849
56
        }
850
146
      }
851
270
    }
852
333
yy38:
853
333
    YYDEBUG(38, *YYCURSOR);
854
333
    yyleng = YYCURSOR - SCNG(yy_text);
855
333
#line 495 "Zend/zend_ini_scanner.l"
856
333
    { /* FALSE value (when used outside option value/offset this causes parse error!)*/
857
333
  RETURN_TOKEN(BOOL_FALSE, "", 0);
858
0
}
859
0
#line 860 "Zend/zend_ini_scanner.c"
860
22
yy39:
861
22
    YYDEBUG(39, *YYCURSOR);
862
22
    yych = *++YYCURSOR;
863
22
    if (yych == 'L') goto yy52;
864
22
    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
12.0k
yy41:
873
12.0k
    YYDEBUG(41, *YYCURSOR);
874
12.0k
    ++YYCURSOR;
875
12.0k
    YYFILL(1);
876
12.0k
    yych = *YYCURSOR;
877
12.0k
    YYDEBUG(42, *YYCURSOR);
878
12.0k
    if (yych <= '&') {
879
1.01k
      if (yych <= '\r') {
880
184
        if (yych <= '\t') {
881
87
          if (yych <= 0x00) goto yy43;
882
5
          if (yych <= 0x08) goto yy5;
883
0
          goto yy53;
884
97
        } else {
885
97
          if (yych <= '\n') goto yy43;
886
76
          if (yych <= '\f') goto yy5;
887
76
        }
888
829
      } else {
889
829
        if (yych <= '"') {
890
762
          if (yych <= 0x1F) goto yy5;
891
639
          if (yych <= ' ') goto yy41;
892
639
        } else {
893
67
          if (yych == '$') goto yy43;
894
67
          if (yych <= '%') goto yy5;
895
67
        }
896
829
      }
897
11.0k
    } else {
898
11.0k
      if (yych <= '=') {
899
1.15k
        if (yych <= ':') {
900
962
          if (yych <= '\'') goto yy5;
901
666
          if (yych >= '*') goto yy5;
902
666
        } else {
903
195
          if (yych == '<') goto yy5;
904
195
        }
905
9.86k
      } else {
906
9.86k
        if (yych <= '\\') {
907
8.44k
          if (yych == '[') goto yy30;
908
8.44k
          goto yy5;
909
8.44k
        } else {
910
1.42k
          if (yych <= '^') goto yy43;
911
1.39k
          if (yych <= 'z') goto yy5;
912
646
          if (yych >= 0x7F) goto yy5;
913
646
        }
914
9.86k
      }
915
11.0k
    }
916
446
yy43:
917
446
    YYDEBUG(43, *YYCURSOR);
918
446
    yyleng = YYCURSOR - SCNG(yy_text);
919
446
#line 491 "Zend/zend_ini_scanner.l"
920
446
    { /* TRUE value (when used outside option value/offset this causes parse error!) */
921
446
  RETURN_TOKEN(BOOL_TRUE, "1", 1);
922
0
}
923
0
#line 924 "Zend/zend_ini_scanner.c"
924
363
yy44:
925
363
    YYDEBUG(44, *YYCURSOR);
926
363
    yych = *++YYCURSOR;
927
363
    if (yych == 'U') goto yy55;
928
363
    if (yych == 'u') goto yy55;
929
359
    goto yy6;
930
359
yy45:
931
8
    YYDEBUG(45, *YYCURSOR);
932
8
    yych = *++YYCURSOR;
933
8
    if (yych == 'S') goto yy41;
934
8
    if (yych == 's') goto yy41;
935
0
    goto yy6;
936
369
yy46:
937
369
    YYDEBUG(46, *YYCURSOR);
938
369
    yych = *++YYCURSOR;
939
369
    if (yych == 'S') goto yy51;
940
369
    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
4.12k
yy49:
952
4.12k
    YYDEBUG(49, *YYCURSOR);
953
4.12k
    ++YYCURSOR;
954
4.12k
    YYFILL(1);
955
4.12k
    yych = *YYCURSOR;
956
4.12k
    YYDEBUG(50, *YYCURSOR);
957
4.12k
    if (yych <= '&') {
958
3.84k
      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
3.84k
      } else {
969
3.84k
        if (yych <= '"') {
970
3.84k
          if (yych <= 0x1F) goto yy5;
971
3.84k
          if (yych <= ' ') goto yy49;
972
27
          goto yy38;
973
3.84k
        } else {
974
0
          if (yych == '$') goto yy38;
975
0
          if (yych <= '%') goto yy5;
976
0
          goto yy38;
977
0
        }
978
3.84k
      }
979
3.84k
    } else {
980
286
      if (yych <= '=') {
981
227
        if (yych <= ':') {
982
72
          if (yych <= '\'') goto yy5;
983
72
          if (yych <= ')') goto yy38;
984
1
          goto yy5;
985
155
        } else {
986
155
          if (yych == '<') goto yy5;
987
155
          goto yy38;
988
155
        }
989
227
      } else {
990
59
        if (yych <= '\\') {
991
33
          if (yych == '[') goto yy30;
992
33
          goto yy5;
993
33
        } else {
994
26
          if (yych <= '^') goto yy38;
995
26
          if (yych <= 'z') goto yy5;
996
0
          if (yych <= '~') goto yy38;
997
0
          goto yy5;
998
0
        }
999
59
      }
1000
286
    }
1001
369
yy51:
1002
369
    YYDEBUG(51, *YYCURSOR);
1003
369
    yych = *++YYCURSOR;
1004
369
    if (yych == 'E') goto yy49;
1005
369
    if (yych == 'e') goto yy49;
1006
56
    goto yy6;
1007
56
yy52:
1008
8
    YYDEBUG(52, *YYCURSOR);
1009
8
    yych = *++YYCURSOR;
1010
8
    if (yych == 'L') goto yy56;
1011
8
    if (yych == 'l') goto yy56;
1012
2
    goto yy6;
1013
2
yy53:
1014
0
    YYDEBUG(53, *YYCURSOR);
1015
0
    ++YYCURSOR;
1016
0
    YYFILL(1);
1017
0
    yych = *YYCURSOR;
1018
0
    YYDEBUG(54, *YYCURSOR);
1019
0
    if (yych == '\t') goto yy53;
1020
0
    if (yych == ' ') goto yy53;
1021
0
    goto yy43;
1022
4
yy55:
1023
4
    YYDEBUG(55, *YYCURSOR);
1024
4
    yych = *++YYCURSOR;
1025
4
    if (yych == 'E') goto yy41;
1026
4
    if (yych == 'e') goto yy41;
1027
0
    goto yy6;
1028
6
yy56:
1029
6
    YYDEBUG(56, *YYCURSOR);
1030
6
    ++YYCURSOR;
1031
6
    YYFILL(1);
1032
6
    yych = *YYCURSOR;
1033
6
    YYDEBUG(57, *YYCURSOR);
1034
6
    if (yych <= '&') {
1035
1
      if (yych <= '\r') {
1036
1
        if (yych <= '\t') {
1037
0
          if (yych <= 0x00) goto yy58;
1038
0
          if (yych <= 0x08) goto yy5;
1039
0
          goto yy59;
1040
1
        } else {
1041
1
          if (yych <= '\n') goto yy58;
1042
0
          if (yych <= '\f') goto yy5;
1043
0
        }
1044
1
      } 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
5
    } else {
1054
5
      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
5
      } else {
1062
5
        if (yych <= '\\') {
1063
1
          if (yych == '[') goto yy30;
1064
1
          goto yy5;
1065
4
        } else {
1066
4
          if (yych <= '^') goto yy58;
1067
4
          if (yych <= 'z') goto yy5;
1068
4
          if (yych >= 0x7F) goto yy5;
1069
4
        }
1070
5
      }
1071
5
    }
1072
1
yy58:
1073
1
    YYDEBUG(58, *YYCURSOR);
1074
1
    yyleng = YYCURSOR - SCNG(yy_text);
1075
1
#line 499 "Zend/zend_ini_scanner.l"
1076
1
    {
1077
1
  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
548k
yyc_ST_OFFSET:
1092
548k
  {
1093
548k
    static const unsigned char yybm[] = {
1094
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1095
548k
      132, 140, 128, 132, 132, 128, 132, 132, 
1096
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1097
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1098
548k
      140, 132, 128, 132, 192, 132, 132,   0, 
1099
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1100
548k
      180, 180, 180, 180, 180, 180, 180, 180, 
1101
548k
      180, 180, 132, 128, 132, 132, 132, 132, 
1102
548k
      132, 164, 164, 164, 164, 164, 164, 164, 
1103
548k
      164, 164, 164, 164, 164, 164, 164, 164, 
1104
548k
      164, 164, 164, 164, 164, 164, 164, 164, 
1105
548k
      164, 164, 164, 132, 192, 128, 132, 164, 
1106
548k
      132, 164, 164, 164, 164, 164, 164, 164, 
1107
548k
      164, 164, 164, 164, 164, 164, 164, 164, 
1108
548k
      164, 164, 164, 164, 164, 164, 164, 164, 
1109
548k
      164, 164, 164, 132, 132, 132, 132, 132, 
1110
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1111
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1112
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1113
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1114
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1115
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1116
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1117
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1118
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1119
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1120
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1121
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1122
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1123
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1124
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1125
548k
      132, 132, 132, 132, 132, 132, 132, 132, 
1126
548k
    };
1127
548k
    YYDEBUG(61, *YYCURSOR);
1128
548k
    YYFILL(2);
1129
548k
    yych = *YYCURSOR;
1130
548k
    if (yybm[0+yych] & 8) {
1131
11.4k
      goto yy66;
1132
11.4k
    }
1133
537k
    if (yych <= '/') {
1134
389k
      if (yych <= '"') {
1135
301k
        if (yych <= '\f') {
1136
6.41k
          if (yych <= 0x08) goto yy63;
1137
2.02k
          if (yych <= '\n') goto yy68;
1138
294k
        } else {
1139
294k
          if (yych <= '\r') goto yy68;
1140
293k
          if (yych >= '"') goto yy70;
1141
293k
        }
1142
301k
      } else {
1143
88.6k
        if (yych <= '&') {
1144
6.67k
          if (yych == '$') goto yy72;
1145
81.9k
        } else {
1146
81.9k
          if (yych <= '\'') goto yy73;
1147
26.3k
          if (yych <= ',') goto yy63;
1148
19.0k
          if (yych <= '.') goto yy74;
1149
19.0k
        }
1150
88.6k
      }
1151
389k
    } else {
1152
147k
      if (yych <= '[') {
1153
85.8k
        if (yych <= ';') {
1154
70.8k
          if (yych <= '9') goto yy75;
1155
4.67k
          if (yych >= ';') goto yy68;
1156
14.9k
        } else {
1157
14.9k
          if (yych <= '@') goto yy63;
1158
10.9k
          if (yych <= 'Z') goto yy78;
1159
10.9k
        }
1160
85.8k
      } else {
1161
61.7k
        if (yych <= '^') {
1162
7.82k
          if (yych <= '\\') goto yy81;
1163
5.18k
          if (yych <= ']') goto yy82;
1164
53.9k
        } else {
1165
53.9k
          if (yych == '`') goto yy63;
1166
53.9k
          if (yych <= 'z') goto yy78;
1167
53.9k
        }
1168
61.7k
      }
1169
147k
    }
1170
1.96M
yy63:
1171
1.96M
    YYDEBUG(63, *YYCURSOR);
1172
1.96M
    yyaccept = 0;
1173
1.96M
    YYMARKER = ++YYCURSOR;
1174
1.96M
    YYFILL(1);
1175
1.95M
    yych = *YYCURSOR;
1176
1.97M
yy64:
1177
1.97M
    YYDEBUG(64, *YYCURSOR);
1178
1.97M
    if (yybm[0+yych] & 4) {
1179
1.75M
      goto yy63;
1180
1.75M
    }
1181
216k
    if (yych <= '"') goto yy65;
1182
109k
    if (yych <= '$') goto yy84;
1183
49.7k
    if (yych <= ';') goto yy65;
1184
21.2k
    if (yych <= '\\') goto yy81;
1185
140k
yy65:
1186
140k
    YYDEBUG(65, *YYCURSOR);
1187
140k
    yyleng = YYCURSOR - SCNG(yy_text);
1188
140k
#line 606 "Zend/zend_ini_scanner.l"
1189
140k
    { /* Get rest as section/offset value */
1190
140k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
1191
0
}
1192
0
#line 1193 "Zend/zend_ini_scanner.c"
1193
27.5k
yy66:
1194
27.5k
    YYDEBUG(66, *YYCURSOR);
1195
27.5k
    yyaccept = 0;
1196
27.5k
    YYMARKER = ++YYCURSOR;
1197
27.5k
    YYFILL(1);
1198
27.5k
    yych = *YYCURSOR;
1199
27.5k
    YYDEBUG(67, *YYCURSOR);
1200
27.5k
    if (yybm[0+yych] & 8) {
1201
16.0k
      goto yy66;
1202
16.0k
    }
1203
11.4k
    if (yych <= '$') {
1204
929
      if (yych <= '\r') {
1205
317
        if (yych <= 0x08) goto yy63;
1206
69
        if (yych <= '\n') goto yy65;
1207
0
        if (yych <= '\f') goto yy63;
1208
0
        goto yy65;
1209
612
      } else {
1210
612
        if (yych == '"') goto yy70;
1211
15
        if (yych <= '#') goto yy63;
1212
15
        goto yy84;
1213
15
      }
1214
10.5k
    } else {
1215
10.5k
      if (yych <= ';') {
1216
3.29k
        if (yych == '\'') goto yy65;
1217
3.23k
        if (yych <= ':') goto yy63;
1218
76
        goto yy65;
1219
7.24k
      } else {
1220
7.24k
        if (yych <= '[') goto yy63;
1221
3.69k
        if (yych <= '\\') goto yy81;
1222
3.63k
        if (yych <= ']') goto yy82;
1223
3.60k
        goto yy63;
1224
3.63k
      }
1225
10.5k
    }
1226
4.78k
yy68:
1227
4.78k
    YYDEBUG(68, *YYCURSOR);
1228
4.78k
    ++YYCURSOR;
1229
5.01k
yy69:
1230
5.01k
    YYDEBUG(69, *YYCURSOR);
1231
5.01k
    yyleng = YYCURSOR - SCNG(yy_text);
1232
5.01k
#line 686 "Zend/zend_ini_scanner.l"
1233
5.01k
    {
1234
5.01k
  return 0;
1235
4.78k
}
1236
0
#line 1237 "Zend/zend_ini_scanner.c"
1237
291k
yy70:
1238
291k
    YYDEBUG(70, *YYCURSOR);
1239
291k
    ++YYCURSOR;
1240
291k
    YYDEBUG(71, *YYCURSOR);
1241
291k
    yyleng = YYCURSOR - SCNG(yy_text);
1242
291k
#line 610 "Zend/zend_ini_scanner.l"
1243
291k
    { /* Double quoted '"' string start */
1244
291k
  yy_push_state(ST_DOUBLE_QUOTES);
1245
291k
  return '"';
1246
4.78k
}
1247
0
#line 1248 "Zend/zend_ini_scanner.c"
1248
4.20k
yy72:
1249
4.20k
    YYDEBUG(72, *YYCURSOR);
1250
4.20k
    yych = *++YYCURSOR;
1251
4.20k
    if (yych <= '\\') {
1252
2.22k
      if (yych <= 0x00) goto yy69;
1253
2.08k
      if (yych <= '[') goto yy63;
1254
0
      goto yy86;
1255
2.08k
    } else {
1256
1.98k
      if (yych == '{') goto yy88;
1257
1.96k
      goto yy63;
1258
1.98k
    }
1259
55.6k
yy73:
1260
55.6k
    YYDEBUG(73, *YYCURSOR);
1261
55.6k
    yych = *++YYCURSOR;
1262
55.6k
    if (yybm[0+yych] & 128) {
1263
55.5k
      goto yy90;
1264
55.5k
    }
1265
85
    goto yy69;
1266
18.2k
yy74:
1267
18.2k
    YYDEBUG(74, *YYCURSOR);
1268
18.2k
    yyaccept = 0;
1269
18.2k
    yych = *(YYMARKER = ++YYCURSOR);
1270
18.2k
    if (yych <= '/') goto yy64;
1271
17.6k
    if (yych <= '9') goto yy92;
1272
14.8k
    goto yy64;
1273
172k
yy75:
1274
172k
    YYDEBUG(75, *YYCURSOR);
1275
172k
    yyaccept = 1;
1276
172k
    YYMARKER = ++YYCURSOR;
1277
172k
    YYFILL(1);
1278
172k
    yych = *YYCURSOR;
1279
172k
    YYDEBUG(76, *YYCURSOR);
1280
172k
    if (yybm[0+yych] & 16) {
1281
106k
      goto yy75;
1282
106k
    }
1283
66.1k
    if (yych <= '&') {
1284
17.1k
      if (yych <= '\r') {
1285
514
        if (yych == '\n') goto yy77;
1286
422
        if (yych <= '\f') goto yy63;
1287
16.6k
      } else {
1288
16.6k
        if (yych <= '"') {
1289
15.7k
          if (yych <= '!') goto yy63;
1290
15.7k
        } else {
1291
896
          if (yych == '$') goto yy84;
1292
859
          goto yy63;
1293
896
        }
1294
16.6k
      }
1295
48.9k
    } else {
1296
48.9k
      if (yych <= ':') {
1297
34.4k
        if (yych <= '\'') goto yy77;
1298
28.7k
        if (yych == '.') goto yy92;
1299
6.77k
        goto yy63;
1300
28.7k
      } else {
1301
14.5k
        if (yych <= '[') {
1302
492
          if (yych >= '<') goto yy63;
1303
14.0k
        } else {
1304
14.0k
          if (yych <= '\\') goto yy81;
1305
13.8k
          if (yych >= '^') goto yy63;
1306
13.8k
        }
1307
14.5k
      }
1308
48.9k
    }
1309
32.7k
yy77:
1310
32.7k
    YYDEBUG(77, *YYCURSOR);
1311
32.7k
    yyleng = YYCURSOR - SCNG(yy_text);
1312
32.7k
#line 580 "Zend/zend_ini_scanner.l"
1313
32.7k
    { /* Get number option value as string */
1314
32.7k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1315
0
}
1316
0
#line 1317 "Zend/zend_ini_scanner.c"
1317
179k
yy78:
1318
179k
    YYDEBUG(78, *YYCURSOR);
1319
179k
    yyaccept = 2;
1320
179k
    YYMARKER = ++YYCURSOR;
1321
179k
    YYFILL(1);
1322
179k
    yych = *YYCURSOR;
1323
179k
    YYDEBUG(79, *YYCURSOR);
1324
179k
    if (yybm[0+yych] & 32) {
1325
125k
      goto yy78;
1326
125k
    }
1327
53.8k
    if (yych <= '$') {
1328
19.4k
      if (yych <= '\r') {
1329
2.35k
        if (yych == '\n') goto yy80;
1330
2.08k
        if (yych <= '\f') goto yy63;
1331
17.1k
      } else {
1332
17.1k
        if (yych == '"') goto yy80;
1333
10.2k
        if (yych <= '#') goto yy63;
1334
3.29k
        goto yy84;
1335
10.2k
      }
1336
34.3k
    } else {
1337
34.3k
      if (yych <= ';') {
1338
16.9k
        if (yych == '\'') goto yy80;
1339
7.99k
        if (yych <= ':') goto yy63;
1340
17.3k
      } else {
1341
17.3k
        if (yych <= '[') goto yy63;
1342
15.4k
        if (yych <= '\\') goto yy81;
1343
11.8k
        if (yych >= '^') goto yy63;
1344
11.8k
      }
1345
34.3k
    }
1346
16.2k
yy80:
1347
16.2k
    YYDEBUG(80, *YYCURSOR);
1348
16.2k
    yyleng = YYCURSOR - SCNG(yy_text);
1349
16.2k
#line 576 "Zend/zend_ini_scanner.l"
1350
16.2k
    { /* Get constant option value */
1351
16.2k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1352
0
}
1353
0
#line 1354 "Zend/zend_ini_scanner.c"
1354
23.4k
yy81:
1355
23.4k
    YYDEBUG(81, *YYCURSOR);
1356
23.4k
    ++YYCURSOR;
1357
23.4k
    YYFILL(1);
1358
23.4k
    yych = *YYCURSOR;
1359
23.4k
    goto yy63;
1360
5.10k
yy82:
1361
5.10k
    YYDEBUG(82, *YYCURSOR);
1362
5.10k
    ++YYCURSOR;
1363
5.10k
    YYDEBUG(83, *YYCURSOR);
1364
5.10k
    yyleng = YYCURSOR - SCNG(yy_text);
1365
5.10k
#line 417 "Zend/zend_ini_scanner.l"
1366
5.10k
    { /* End of section or an option offset */
1367
5.10k
  BEGIN(INITIAL);
1368
5.10k
  return ']';
1369
23.4k
}
1370
0
#line 1371 "Zend/zend_ini_scanner.c"
1371
63.4k
yy84:
1372
63.4k
    YYDEBUG(84, *YYCURSOR);
1373
63.4k
    ++YYCURSOR;
1374
63.4k
    YYFILL(1);
1375
63.4k
    yych = *YYCURSOR;
1376
63.4k
    if (yych <= '\\') {
1377
63.3k
      if (yych <= 0x00) goto yy85;
1378
63.2k
      if (yych <= '[') goto yy63;
1379
3
      goto yy86;
1380
63.2k
    } else {
1381
79
      if (yych != '{') goto yy63;
1382
79
    }
1383
151
yy85:
1384
151
    YYDEBUG(85, *YYCURSOR);
1385
151
    YYCURSOR = YYMARKER;
1386
151
    if (yyaccept <= 1) {
1387
149
      if (yyaccept == 0) {
1388
149
        goto yy65;
1389
149
      } else {
1390
0
        goto yy77;
1391
0
      }
1392
149
    } else {
1393
2
      goto yy80;
1394
2
    }
1395
13
yy86:
1396
13
    YYDEBUG(86, *YYCURSOR);
1397
13
    ++YYCURSOR;
1398
13
    YYFILL(1);
1399
13
    yych = *YYCURSOR;
1400
13
    YYDEBUG(87, *YYCURSOR);
1401
13
    if (yybm[0+yych] & 64) {
1402
10
      goto yy86;
1403
10
    }
1404
3
    goto yy63;
1405
17
yy88:
1406
17
    YYDEBUG(88, *YYCURSOR);
1407
17
    ++YYCURSOR;
1408
17
    YYDEBUG(89, *YYCURSOR);
1409
17
    yyleng = YYCURSOR - SCNG(yy_text);
1410
17
#line 422 "Zend/zend_ini_scanner.l"
1411
17
    { /* Variable start */
1412
17
  yy_push_state(ST_VARNAME);
1413
17
  return TC_DOLLAR_CURLY;
1414
13
}
1415
0
#line 1416 "Zend/zend_ini_scanner.c"
1416
2.03M
yy90:
1417
2.03M
    YYDEBUG(90, *YYCURSOR);
1418
2.03M
    ++YYCURSOR;
1419
2.03M
    YYFILL(1);
1420
2.03M
    yych = *YYCURSOR;
1421
2.03M
    YYDEBUG(91, *YYCURSOR);
1422
2.03M
    if (yybm[0+yych] & 128) {
1423
1.97M
      goto yy90;
1424
1.97M
    }
1425
54.0k
    goto yy94;
1426
55.5k
yy92:
1427
55.5k
    YYDEBUG(92, *YYCURSOR);
1428
55.5k
    yyaccept = 1;
1429
55.5k
    YYMARKER = ++YYCURSOR;
1430
55.5k
    YYFILL(1);
1431
55.5k
    yych = *YYCURSOR;
1432
55.5k
    YYDEBUG(93, *YYCURSOR);
1433
55.5k
    if (yych <= '&') {
1434
11.0k
      if (yych <= '\r') {
1435
602
        if (yych == '\n') goto yy77;
1436
517
        if (yych <= '\f') goto yy63;
1437
79
        goto yy77;
1438
10.4k
      } else {
1439
10.4k
        if (yych <= '"') {
1440
9.80k
          if (yych <= '!') goto yy63;
1441
7.33k
          goto yy77;
1442
9.80k
        } else {
1443
671
          if (yych == '$') goto yy84;
1444
557
          goto yy63;
1445
671
        }
1446
10.4k
      }
1447
44.5k
    } else {
1448
44.5k
      if (yych <= ':') {
1449
39.0k
        if (yych <= '\'') goto yy77;
1450
35.6k
        if (yych <= '/') goto yy63;
1451
31.1k
        if (yych <= '9') goto yy92;
1452
320
        goto yy63;
1453
31.1k
      } else {
1454
5.41k
        if (yych <= '[') {
1455
452
          if (yych <= ';') goto yy77;
1456
425
          goto yy63;
1457
4.96k
        } else {
1458
4.96k
          if (yych <= '\\') goto yy81;
1459
4.85k
          if (yych <= ']') goto yy77;
1460
4.84k
          goto yy63;
1461
4.85k
        }
1462
5.41k
      }
1463
44.5k
    }
1464
54.0k
yy94:
1465
54.0k
    YYDEBUG(94, *YYCURSOR);
1466
54.0k
    ++YYCURSOR;
1467
54.0k
    YYDEBUG(95, *YYCURSOR);
1468
54.0k
    yyleng = YYCURSOR - SCNG(yy_text);
1469
54.0k
#line 389 "Zend/zend_ini_scanner.l"
1470
54.0k
    { /* Raw string */
1471
  /* Eat leading and trailing single quotes */
1472
54.0k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1473
54.0k
    SCNG(yy_text)++;
1474
54.0k
    yyleng = yyleng - 2;
1475
54.0k
  }
1476
54.0k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
1477
0
}
1478
0
#line 1479 "Zend/zend_ini_scanner.c"
1479
0
  }
1480
/* *********************************** */
1481
129k
yyc_ST_SECTION_VALUE:
1482
129k
  {
1483
129k
    static const unsigned char yybm[] = {
1484
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1485
129k
      132, 140, 128, 132, 132, 128, 132, 132, 
1486
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1487
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1488
129k
      140, 132, 128, 132, 192, 132, 132,   0, 
1489
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1490
129k
      180, 180, 180, 180, 180, 180, 180, 180, 
1491
129k
      180, 180, 132, 128, 132, 132, 132, 132, 
1492
129k
      132, 164, 164, 164, 164, 164, 164, 164, 
1493
129k
      164, 164, 164, 164, 164, 164, 164, 164, 
1494
129k
      164, 164, 164, 164, 164, 164, 164, 164, 
1495
129k
      164, 164, 164, 132, 192, 128, 132, 164, 
1496
129k
      132, 164, 164, 164, 164, 164, 164, 164, 
1497
129k
      164, 164, 164, 164, 164, 164, 164, 164, 
1498
129k
      164, 164, 164, 164, 164, 164, 164, 164, 
1499
129k
      164, 164, 164, 132, 132, 132, 132, 132, 
1500
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1501
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1502
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1503
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1504
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1505
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1506
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1507
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1508
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1509
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1510
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1511
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1512
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1513
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1514
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1515
129k
      132, 132, 132, 132, 132, 132, 132, 132, 
1516
129k
    };
1517
129k
    YYDEBUG(96, *YYCURSOR);
1518
129k
    YYFILL(2);
1519
129k
    yych = *YYCURSOR;
1520
129k
    if (yybm[0+yych] & 8) {
1521
7.66k
      goto yy101;
1522
7.66k
    }
1523
121k
    if (yych <= '/') {
1524
59.7k
      if (yych <= '"') {
1525
31.4k
        if (yych <= '\f') {
1526
1.84k
          if (yych <= 0x08) goto yy98;
1527
1.56k
          if (yych <= '\n') goto yy103;
1528
29.6k
        } else {
1529
29.6k
          if (yych <= '\r') goto yy103;
1530
29.1k
          if (yych >= '"') goto yy105;
1531
29.1k
        }
1532
31.4k
      } else {
1533
28.2k
        if (yych <= '&') {
1534
519
          if (yych == '$') goto yy107;
1535
27.7k
        } else {
1536
27.7k
          if (yych <= '\'') goto yy108;
1537
7.90k
          if (yych <= ',') goto yy98;
1538
7.20k
          if (yych <= '.') goto yy109;
1539
7.20k
        }
1540
28.2k
      }
1541
61.6k
    } else {
1542
61.6k
      if (yych <= '[') {
1543
23.7k
        if (yych <= ';') {
1544
15.2k
          if (yych <= '9') goto yy110;
1545
1.11k
          if (yych >= ';') goto yy103;
1546
8.49k
        } else {
1547
8.49k
          if (yych <= '@') goto yy98;
1548
6.83k
          if (yych <= 'Z') goto yy113;
1549
6.83k
        }
1550
37.8k
      } else {
1551
37.8k
        if (yych <= '^') {
1552
16.6k
          if (yych <= '\\') goto yy116;
1553
15.8k
          if (yych <= ']') goto yy117;
1554
21.1k
        } else {
1555
21.1k
          if (yych == '`') goto yy98;
1556
21.1k
          if (yych <= 'z') goto yy113;
1557
21.1k
        }
1558
37.8k
      }
1559
61.6k
    }
1560
1.95M
yy98:
1561
1.95M
    YYDEBUG(98, *YYCURSOR);
1562
1.95M
    yyaccept = 0;
1563
1.95M
    YYMARKER = ++YYCURSOR;
1564
1.95M
    YYFILL(1);
1565
1.95M
    yych = *YYCURSOR;
1566
1.95M
yy99:
1567
1.95M
    YYDEBUG(99, *YYCURSOR);
1568
1.95M
    if (yybm[0+yych] & 4) {
1569
1.88M
      goto yy98;
1570
1.88M
    }
1571
73.3k
    if (yych <= '"') goto yy100;
1572
52.3k
    if (yych <= '$') goto yy120;
1573
37.1k
    if (yych <= ';') goto yy100;
1574
18.2k
    if (yych <= '\\') goto yy116;
1575
54.9k
yy100:
1576
54.9k
    YYDEBUG(100, *YYCURSOR);
1577
54.9k
    yyleng = YYCURSOR - SCNG(yy_text);
1578
54.9k
#line 606 "Zend/zend_ini_scanner.l"
1579
54.9k
    { /* Get rest as section/offset value */
1580
54.9k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
1581
0
}
1582
0
#line 1583 "Zend/zend_ini_scanner.c"
1583
27.7k
yy101:
1584
27.7k
    YYDEBUG(101, *YYCURSOR);
1585
27.7k
    yyaccept = 0;
1586
27.7k
    YYMARKER = ++YYCURSOR;
1587
27.7k
    YYFILL(1);
1588
27.7k
    yych = *YYCURSOR;
1589
27.7k
    YYDEBUG(102, *YYCURSOR);
1590
27.7k
    if (yybm[0+yych] & 8) {
1591
20.1k
      goto yy101;
1592
20.1k
    }
1593
7.66k
    if (yych <= '$') {
1594
1.43k
      if (yych <= '\r') {
1595
136
        if (yych <= 0x08) goto yy98;
1596
0
        if (yych <= '\n') goto yy100;
1597
0
        if (yych <= '\f') goto yy98;
1598
0
        goto yy100;
1599
1.30k
      } else {
1600
1.30k
        if (yych == '"') goto yy105;
1601
0
        if (yych <= '#') goto yy98;
1602
0
        goto yy120;
1603
0
      }
1604
6.22k
    } else {
1605
6.22k
      if (yych <= ';') {
1606
522
        if (yych == '\'') goto yy100;
1607
461
        if (yych <= ':') goto yy98;
1608
0
        goto yy100;
1609
5.70k
      } else {
1610
5.70k
        if (yych <= '[') goto yy98;
1611
594
        if (yych <= '\\') goto yy116;
1612
551
        if (yych <= ']') goto yy100;
1613
517
        goto yy98;
1614
551
      }
1615
6.22k
    }
1616
3.17k
yy103:
1617
3.17k
    YYDEBUG(103, *YYCURSOR);
1618
3.17k
    ++YYCURSOR;
1619
3.39k
yy104:
1620
3.39k
    YYDEBUG(104, *YYCURSOR);
1621
3.39k
    yyleng = YYCURSOR - SCNG(yy_text);
1622
3.39k
#line 686 "Zend/zend_ini_scanner.l"
1623
3.39k
    {
1624
3.39k
  return 0;
1625
3.17k
}
1626
0
#line 1627 "Zend/zend_ini_scanner.c"
1627
29.4k
yy105:
1628
29.4k
    YYDEBUG(105, *YYCURSOR);
1629
29.4k
    ++YYCURSOR;
1630
29.4k
    YYDEBUG(106, *YYCURSOR);
1631
29.4k
    yyleng = YYCURSOR - SCNG(yy_text);
1632
29.4k
#line 610 "Zend/zend_ini_scanner.l"
1633
29.4k
    { /* Double quoted '"' string start */
1634
29.4k
  yy_push_state(ST_DOUBLE_QUOTES);
1635
29.4k
  return '"';
1636
3.17k
}
1637
0
#line 1638 "Zend/zend_ini_scanner.c"
1638
291
yy107:
1639
291
    YYDEBUG(107, *YYCURSOR);
1640
291
    yych = *++YYCURSOR;
1641
291
    if (yych <= '\\') {
1642
241
      if (yych <= 0x00) goto yy104;
1643
151
      if (yych <= '[') goto yy98;
1644
0
      goto yy122;
1645
151
    } else {
1646
50
      if (yych == '{') goto yy124;
1647
12
      goto yy98;
1648
50
    }
1649
19.8k
yy108:
1650
19.8k
    YYDEBUG(108, *YYCURSOR);
1651
19.8k
    yych = *++YYCURSOR;
1652
19.8k
    if (yybm[0+yych] & 128) {
1653
19.7k
      goto yy126;
1654
19.7k
    }
1655
136
    goto yy104;
1656
7.18k
yy109:
1657
7.18k
    YYDEBUG(109, *YYCURSOR);
1658
7.18k
    yyaccept = 0;
1659
7.18k
    yych = *(YYMARKER = ++YYCURSOR);
1660
7.18k
    if (yych <= '/') goto yy99;
1661
3.30k
    if (yych <= '9') goto yy128;
1662
884
    goto yy99;
1663
30.9k
yy110:
1664
30.9k
    YYDEBUG(110, *YYCURSOR);
1665
30.9k
    yyaccept = 1;
1666
30.9k
    YYMARKER = ++YYCURSOR;
1667
30.9k
    YYFILL(1);
1668
30.9k
    yych = *YYCURSOR;
1669
30.9k
    YYDEBUG(111, *YYCURSOR);
1670
30.9k
    if (yybm[0+yych] & 16) {
1671
16.8k
      goto yy110;
1672
16.8k
    }
1673
14.1k
    if (yych <= '&') {
1674
2.26k
      if (yych <= '\r') {
1675
171
        if (yych == '\n') goto yy112;
1676
171
        if (yych <= '\f') goto yy98;
1677
2.09k
      } else {
1678
2.09k
        if (yych <= '"') {
1679
1.30k
          if (yych <= '!') goto yy98;
1680
1.30k
        } else {
1681
790
          if (yych == '$') goto yy120;
1682
790
          goto yy98;
1683
790
        }
1684
2.09k
      }
1685
11.8k
    } else {
1686
11.8k
      if (yych <= ':') {
1687
1.13k
        if (yych <= '\'') goto yy112;
1688
1.12k
        if (yych == '.') goto yy128;
1689
930
        goto yy98;
1690
10.7k
      } else {
1691
10.7k
        if (yych <= '[') {
1692
5.55k
          if (yych >= '<') goto yy98;
1693
5.55k
        } else {
1694
5.21k
          if (yych <= '\\') goto yy116;
1695
5.21k
          if (yych >= '^') goto yy98;
1696
5.21k
        }
1697
10.7k
      }
1698
11.8k
    }
1699
1.39k
yy112:
1700
1.39k
    YYDEBUG(112, *YYCURSOR);
1701
1.39k
    yyleng = YYCURSOR - SCNG(yy_text);
1702
1.39k
#line 580 "Zend/zend_ini_scanner.l"
1703
1.39k
    { /* Get number option value as string */
1704
1.39k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1705
0
}
1706
0
#line 1707 "Zend/zend_ini_scanner.c"
1707
54.8k
yy113:
1708
54.8k
    YYDEBUG(113, *YYCURSOR);
1709
54.8k
    yyaccept = 2;
1710
54.8k
    YYMARKER = ++YYCURSOR;
1711
54.8k
    YYFILL(1);
1712
54.8k
    yych = *YYCURSOR;
1713
54.8k
    YYDEBUG(114, *YYCURSOR);
1714
54.8k
    if (yybm[0+yych] & 32) {
1715
38.1k
      goto yy113;
1716
38.1k
    }
1717
16.7k
    if (yych <= '$') {
1718
4.31k
      if (yych <= '\r') {
1719
722
        if (yych == '\n') goto yy115;
1720
332
        if (yych <= '\f') goto yy98;
1721
3.58k
      } else {
1722
3.58k
        if (yych == '"') goto yy115;
1723
3.26k
        if (yych <= '#') goto yy98;
1724
48
        goto yy120;
1725
3.26k
      }
1726
12.4k
    } else {
1727
12.4k
      if (yych <= ';') {
1728
5.56k
        if (yych == '\'') goto yy115;
1729
4.99k
        if (yych <= ':') goto yy98;
1730
6.87k
      } else {
1731
6.87k
        if (yych <= '[') goto yy98;
1732
5.91k
        if (yych <= '\\') goto yy116;
1733
4.38k
        if (yych >= '^') goto yy98;
1734
4.38k
      }
1735
12.4k
    }
1736
1.40k
yy115:
1737
1.40k
    YYDEBUG(115, *YYCURSOR);
1738
1.40k
    yyleng = YYCURSOR - SCNG(yy_text);
1739
1.40k
#line 576 "Zend/zend_ini_scanner.l"
1740
1.40k
    { /* Get constant option value */
1741
1.40k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1742
0
}
1743
0
#line 1744 "Zend/zend_ini_scanner.c"
1744
5.78k
yy116:
1745
5.78k
    YYDEBUG(116, *YYCURSOR);
1746
5.78k
    ++YYCURSOR;
1747
5.78k
    YYFILL(1);
1748
5.78k
    yych = *YYCURSOR;
1749
5.78k
    goto yy98;
1750
18.6k
yy117:
1751
18.6k
    YYDEBUG(117, *YYCURSOR);
1752
18.6k
    ++YYCURSOR;
1753
18.6k
    YYFILL(2);
1754
18.6k
    yych = *YYCURSOR;
1755
18.6k
    YYDEBUG(118, *YYCURSOR);
1756
18.6k
    if (yych <= '\f') {
1757
16.8k
      if (yych <= 0x08) goto yy119;
1758
16.7k
      if (yych <= '\t') goto yy117;
1759
14.3k
      if (yych <= '\n') goto yy130;
1760
14.3k
    } else {
1761
1.72k
      if (yych <= '\r') goto yy131;
1762
1.69k
      if (yych == ' ') goto yy117;
1763
1.69k
    }
1764
15.8k
yy119:
1765
15.8k
    YYDEBUG(119, *YYCURSOR);
1766
15.8k
    yyleng = YYCURSOR - SCNG(yy_text);
1767
15.8k
#line 398 "Zend/zend_ini_scanner.l"
1768
15.8k
    { /* End of section */
1769
15.8k
  BEGIN(INITIAL);
1770
15.8k
  SCNG(lineno)++;
1771
15.8k
  return ']';
1772
18.6k
}
1773
0
#line 1774 "Zend/zend_ini_scanner.c"
1774
15.2k
yy120:
1775
15.2k
    YYDEBUG(120, *YYCURSOR);
1776
15.2k
    ++YYCURSOR;
1777
15.2k
    YYFILL(1);
1778
15.2k
    yych = *YYCURSOR;
1779
15.2k
    if (yych <= '\\') {
1780
8.73k
      if (yych <= 0x00) goto yy121;
1781
8.64k
      if (yych <= '[') goto yy98;
1782
0
      goto yy122;
1783
8.64k
    } else {
1784
6.52k
      if (yych != '{') goto yy98;
1785
6.52k
    }
1786
102
yy121:
1787
102
    YYDEBUG(121, *YYCURSOR);
1788
102
    YYCURSOR = YYMARKER;
1789
102
    if (yyaccept <= 1) {
1790
102
      if (yyaccept == 0) {
1791
102
        goto yy100;
1792
102
      } else {
1793
0
        goto yy112;
1794
0
      }
1795
102
    } 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
38
yy124:
1809
38
    YYDEBUG(124, *YYCURSOR);
1810
38
    ++YYCURSOR;
1811
38
    YYDEBUG(125, *YYCURSOR);
1812
38
    yyleng = YYCURSOR - SCNG(yy_text);
1813
38
#line 422 "Zend/zend_ini_scanner.l"
1814
38
    { /* Variable start */
1815
38
  yy_push_state(ST_VARNAME);
1816
38
  return TC_DOLLAR_CURLY;
1817
0
}
1818
0
#line 1819 "Zend/zend_ini_scanner.c"
1819
1.30M
yy126:
1820
1.30M
    YYDEBUG(126, *YYCURSOR);
1821
1.30M
    ++YYCURSOR;
1822
1.30M
    YYFILL(1);
1823
1.29M
    yych = *YYCURSOR;
1824
1.29M
    YYDEBUG(127, *YYCURSOR);
1825
1.29M
    if (yybm[0+yych] & 128) {
1826
1.28M
      goto yy126;
1827
1.28M
    }
1828
18.8k
    goto yy132;
1829
18.8k
yy128:
1830
3.93k
    YYDEBUG(128, *YYCURSOR);
1831
3.93k
    yyaccept = 1;
1832
3.93k
    YYMARKER = ++YYCURSOR;
1833
3.93k
    YYFILL(1);
1834
3.93k
    yych = *YYCURSOR;
1835
3.93k
    YYDEBUG(129, *YYCURSOR);
1836
3.93k
    if (yych <= '&') {
1837
338
      if (yych <= '\r') {
1838
168
        if (yych == '\n') goto yy112;
1839
168
        if (yych <= '\f') goto yy98;
1840
0
        goto yy112;
1841
170
      } else {
1842
170
        if (yych <= '"') {
1843
170
          if (yych <= '!') goto yy98;
1844
22
          goto yy112;
1845
170
        } else {
1846
0
          if (yych == '$') goto yy120;
1847
0
          goto yy98;
1848
0
        }
1849
170
      }
1850
3.59k
    } else {
1851
3.59k
      if (yych <= ':') {
1852
1.48k
        if (yych <= '\'') goto yy112;
1853
1.48k
        if (yych <= '/') goto yy98;
1854
1.33k
        if (yych <= '9') goto yy128;
1855
21
        goto yy98;
1856
2.10k
      } else {
1857
2.10k
        if (yych <= '[') {
1858
1.37k
          if (yych <= ';') goto yy112;
1859
1.25k
          goto yy98;
1860
1.37k
        } else {
1861
736
          if (yych <= '\\') goto yy116;
1862
736
          if (yych <= ']') goto yy112;
1863
625
          goto yy98;
1864
736
        }
1865
2.10k
      }
1866
3.59k
    }
1867
14.3k
yy130:
1868
14.3k
    YYDEBUG(130, *YYCURSOR);
1869
14.3k
    ++YYCURSOR;
1870
14.3k
    goto yy119;
1871
31
yy131:
1872
31
    YYDEBUG(131, *YYCURSOR);
1873
31
    yych = *++YYCURSOR;
1874
31
    if (yych == '\n') goto yy130;
1875
31
    goto yy119;
1876
18.8k
yy132:
1877
18.8k
    YYDEBUG(132, *YYCURSOR);
1878
18.8k
    ++YYCURSOR;
1879
18.8k
    YYDEBUG(133, *YYCURSOR);
1880
18.8k
    yyleng = YYCURSOR - SCNG(yy_text);
1881
18.8k
#line 389 "Zend/zend_ini_scanner.l"
1882
18.8k
    { /* Raw string */
1883
  /* Eat leading and trailing single quotes */
1884
18.8k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1885
18.8k
    SCNG(yy_text)++;
1886
18.8k
    yyleng = yyleng - 2;
1887
18.8k
  }
1888
18.8k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
1889
0
}
1890
0
#line 1891 "Zend/zend_ini_scanner.c"
1891
0
  }
1892
/* *********************************** */
1893
1.48M
yyc_ST_VALUE:
1894
1.48M
  {
1895
1.48M
    static const unsigned char yybm[] = {
1896
1.48M
       80,  82,  82,  82,  82,  82,  82,  82, 
1897
1.48M
       82,  84,  64,  82,  82,  64,  82,  82, 
1898
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1899
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1900
1.48M
       84,  80,  80,  82, 208,  82,  80,  16, 
1901
1.48M
       80,  80,  82,  82,  82,  82,  82,  82, 
1902
1.48M
      122, 122, 122, 122, 122, 122, 122, 122, 
1903
1.48M
      122, 122,  82,  80,  82,  80,  82,  82, 
1904
1.48M
       82, 114, 114, 114, 114, 114, 114, 114, 
1905
1.48M
      114, 114, 114, 114, 114, 114, 114, 114, 
1906
1.48M
      114, 114, 114, 114, 114, 114, 114, 114, 
1907
1.48M
      114, 114, 114,  82,  82,  82,  80, 114, 
1908
1.48M
       82, 114, 114, 114, 114, 114, 114, 114, 
1909
1.48M
      114, 114, 114, 114, 114, 114, 114, 114, 
1910
1.48M
      114, 114, 114, 114, 114, 114, 114, 114, 
1911
1.48M
      114, 114, 114,  82,  80,  82,  80,  82, 
1912
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1913
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1914
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1915
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1916
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1917
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1918
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1919
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1920
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1921
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1922
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1923
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1924
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1925
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1926
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1927
1.48M
       82,  82,  82,  82,  82,  82,  82,  82, 
1928
1.48M
    };
1929
1.48M
    YYDEBUG(134, *YYCURSOR);
1930
1.48M
    YYFILL(6);
1931
1.48M
    yych = *YYCURSOR;
1932
1.48M
    if (yybm[0+yych] & 4) {
1933
147k
      goto yy141;
1934
147k
    }
1935
1.33M
    switch (yych) {
1936
0
    case 0x00:  goto yy136;
1937
0
    case '\t':
1938
117k
    case '\n':  goto yy144;
1939
14.6k
    case '\r':  goto yy146;
1940
0
    case ' ':
1941
2.82k
    case '!':
1942
8.38k
    case '&':
1943
12.2k
    case '(':
1944
12.8k
    case ')':
1945
23.2k
    case '^':
1946
27.9k
    case '|':
1947
29.7k
    case '~': goto yy147;
1948
405k
    case '"': goto yy150;
1949
4.14k
    case '$': goto yy152;
1950
81.6k
    case '\'':  goto yy153;
1951
4.59k
    case '-':
1952
7.83k
    case '.': goto yy154;
1953
8.29k
    case '0':
1954
17.8k
    case '1':
1955
55.8k
    case '2':
1956
59.5k
    case '3':
1957
68.6k
    case '4':
1958
73.1k
    case '5':
1959
92.9k
    case '6':
1960
114k
    case '7':
1961
115k
    case '8':
1962
128k
    case '9': goto yy155;
1963
78.9k
    case ';': goto yy158;
1964
6.53k
    case '=': goto yy160;
1965
14.3k
    case 'A':
1966
15.5k
    case 'B':
1967
16.2k
    case 'C':
1968
16.6k
    case 'D':
1969
17.8k
    case 'E':
1970
19.2k
    case 'G':
1971
21.7k
    case 'H':
1972
27.7k
    case 'I':
1973
27.7k
    case 'J':
1974
27.8k
    case 'K':
1975
28.6k
    case 'L':
1976
29.7k
    case 'M':
1977
30.4k
    case 'P':
1978
30.4k
    case 'Q':
1979
30.5k
    case 'R':
1980
30.6k
    case 'S':
1981
31.7k
    case 'U':
1982
31.9k
    case 'V':
1983
32.3k
    case 'W':
1984
33.7k
    case 'X':
1985
34.0k
    case 'Z':
1986
39.1k
    case '_':
1987
44.6k
    case 'a':
1988
47.7k
    case 'b':
1989
60.4k
    case 'c':
1990
60.9k
    case 'd':
1991
67.9k
    case 'e':
1992
70.0k
    case 'g':
1993
75.0k
    case 'h':
1994
91.7k
    case 'i':
1995
92.9k
    case 'j':
1996
94.4k
    case 'k':
1997
94.8k
    case 'l':
1998
97.1k
    case 'm':
1999
105k
    case 'p':
2000
107k
    case 'q':
2001
113k
    case 'r':
2002
121k
    case 's':
2003
123k
    case 'u':
2004
135k
    case 'v':
2005
136k
    case 'w':
2006
137k
    case 'x':
2007
146k
    case 'z': goto yy162;
2008
1.39k
    case 'F':
2009
15.4k
    case 'f': goto yy165;
2010
27.9k
    case 'N':
2011
71.1k
    case 'n': goto yy166;
2012
707
    case 'O':
2013
40.2k
    case 'o': goto yy167;
2014
3.06k
    case 'T':
2015
9.75k
    case 't': goto yy168;
2016
2.51k
    case 'Y':
2017
9.56k
    case 'y': goto yy169;
2018
171k
    default:  goto yy138;
2019
1.33M
    }
2020
0
yy136:
2021
0
    YYDEBUG(136, *YYCURSOR);
2022
0
    ++YYCURSOR;
2023
1.19k
yy137:
2024
1.19k
    YYDEBUG(137, *YYCURSOR);
2025
1.19k
    yyleng = YYCURSOR - SCNG(yy_text);
2026
1.19k
#line 681 "Zend/zend_ini_scanner.l"
2027
1.19k
    { /* End of option value (if EOF is reached before EOL */
2028
1.19k
  BEGIN(INITIAL);
2029
1.19k
  return END_OF_LINE;
2030
0
}
2031
0
#line 2032 "Zend/zend_ini_scanner.c"
2032
3.10M
yy138:
2033
3.10M
    YYDEBUG(138, *YYCURSOR);
2034
3.10M
    yyaccept = 0;
2035
3.10M
    YYMARKER = ++YYCURSOR;
2036
3.10M
    YYFILL(1);
2037
3.10M
    yych = *YYCURSOR;
2038
3.15M
yy139:
2039
3.15M
    YYDEBUG(139, *YYCURSOR);
2040
3.15M
    if (yybm[0+yych] & 2) {
2041
2.78M
      goto yy138;
2042
2.78M
    }
2043
370k
    if (yych <= '"') goto yy140;
2044
87.1k
    if (yych <= '$') goto yy170;
2045
360k
yy140:
2046
360k
    YYDEBUG(140, *YYCURSOR);
2047
360k
    yyleng = YYCURSOR - SCNG(yy_text);
2048
360k
#line 598 "Zend/zend_ini_scanner.l"
2049
360k
    { /* Get everything else as option/offset value */
2050
360k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
2051
0
}
2052
0
#line 2053 "Zend/zend_ini_scanner.c"
2053
203k
yy141:
2054
203k
    YYDEBUG(141, *YYCURSOR);
2055
203k
    ++YYCURSOR;
2056
203k
    YYFILL(2);
2057
203k
    yych = *YYCURSOR;
2058
203k
    YYDEBUG(142, *YYCURSOR);
2059
203k
    if (yybm[0+yych] & 4) {
2060
55.5k
      goto yy141;
2061
55.5k
    }
2062
147k
    if (yych <= '\r') {
2063
9.30k
      if (yych <= 0x08) goto yy143;
2064
8.11k
      if (yych <= '\n') goto yy144;
2065
5.66k
      if (yych >= '\r') goto yy146;
2066
138k
    } else {
2067
138k
      if (yych <= '"') {
2068
13.0k
        if (yych >= '"') goto yy150;
2069
125k
      } else {
2070
125k
        if (yych == ';') goto yy158;
2071
125k
      }
2072
138k
    }
2073
127k
yy143:
2074
127k
    YYDEBUG(143, *YYCURSOR);
2075
127k
    yyleng = YYCURSOR - SCNG(yy_text);
2076
127k
#line 661 "Zend/zend_ini_scanner.l"
2077
127k
    {
2078
127k
  RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
2079
0
}
2080
0
#line 2081 "Zend/zend_ini_scanner.c"
2081
121k
yy144:
2082
121k
    YYDEBUG(144, *YYCURSOR);
2083
121k
    ++YYCURSOR;
2084
139k
yy145:
2085
139k
    YYDEBUG(145, *YYCURSOR);
2086
139k
    yyleng = YYCURSOR - SCNG(yy_text);
2087
139k
#line 570 "Zend/zend_ini_scanner.l"
2088
139k
    { /* End of option value */
2089
139k
  BEGIN(INITIAL);
2090
139k
  SCNG(lineno)++;
2091
139k
  return END_OF_LINE;
2092
121k
}
2093
0
#line 2094 "Zend/zend_ini_scanner.c"
2094
20.0k
yy146:
2095
20.0k
    YYDEBUG(146, *YYCURSOR);
2096
20.0k
    yych = *++YYCURSOR;
2097
20.0k
    if (yych == '\n') goto yy144;
2098
18.8k
    goto yy145;
2099
38.5k
yy147:
2100
38.5k
    YYDEBUG(147, *YYCURSOR);
2101
38.5k
    ++YYCURSOR;
2102
38.5k
    YYFILL(1);
2103
38.5k
    yych = *YYCURSOR;
2104
38.5k
    YYDEBUG(148, *YYCURSOR);
2105
38.5k
    if (yych == '\t') goto yy147;
2106
38.4k
    if (yych == ' ') goto yy147;
2107
29.7k
    YYDEBUG(149, *YYCURSOR);
2108
29.7k
    yyleng = YYCURSOR - SCNG(yy_text);
2109
29.7k
#line 588 "Zend/zend_ini_scanner.l"
2110
29.7k
    { /* Boolean operators */
2111
29.7k
  return yytext[0];
2112
38.4k
}
2113
0
#line 2114 "Zend/zend_ini_scanner.c"
2114
412k
yy150:
2115
412k
    YYDEBUG(150, *YYCURSOR);
2116
412k
    ++YYCURSOR;
2117
412k
    YYDEBUG(151, *YYCURSOR);
2118
412k
    yyleng = YYCURSOR - SCNG(yy_text);
2119
412k
#line 610 "Zend/zend_ini_scanner.l"
2120
412k
    { /* Double quoted '"' string start */
2121
412k
  yy_push_state(ST_DOUBLE_QUOTES);
2122
412k
  return '"';
2123
38.4k
}
2124
0
#line 2125 "Zend/zend_ini_scanner.c"
2125
4.14k
yy152:
2126
4.14k
    YYDEBUG(152, *YYCURSOR);
2127
4.14k
    yych = *++YYCURSOR;
2128
4.14k
    if (yych <= '\\') {
2129
3.63k
      if (yych <= 0x00) goto yy137;
2130
3.44k
      if (yych <= '[') goto yy138;
2131
0
      goto yy172;
2132
3.44k
    } else {
2133
514
      if (yych == '{') goto yy173;
2134
40
      goto yy138;
2135
514
    }
2136
81.6k
yy153:
2137
81.6k
    YYDEBUG(153, *YYCURSOR);
2138
81.6k
    yych = *++YYCURSOR;
2139
81.6k
    if (yybm[0+yych] & 64) {
2140
80.6k
      goto yy175;
2141
80.6k
    }
2142
1.00k
    goto yy137;
2143
7.83k
yy154:
2144
7.83k
    YYDEBUG(154, *YYCURSOR);
2145
7.83k
    yyaccept = 0;
2146
7.83k
    yych = *(YYMARKER = ++YYCURSOR);
2147
7.83k
    if (yych <= '/') goto yy139;
2148
7.38k
    if (yych <= '9') goto yy177;
2149
1.75k
    goto yy139;
2150
199k
yy155:
2151
199k
    YYDEBUG(155, *YYCURSOR);
2152
199k
    yyaccept = 1;
2153
199k
    YYMARKER = ++YYCURSOR;
2154
199k
    YYFILL(1);
2155
199k
    yych = *YYCURSOR;
2156
199k
    YYDEBUG(156, *YYCURSOR);
2157
199k
    if (yybm[0+yych] & 8) {
2158
71.3k
      goto yy155;
2159
71.3k
    }
2160
128k
    if (yych <= '-') {
2161
42.4k
      if (yych <= 0x1F) {
2162
5.60k
        if (yych <= '\n') {
2163
5.00k
          if (yych <= 0x00) goto yy157;
2164
4.78k
          if (yych <= 0x08) goto yy138;
2165
4.78k
        } else {
2166
607
          if (yych != '\r') goto yy138;
2167
607
        }
2168
36.8k
      } else {
2169
36.8k
        if (yych <= '$') {
2170
30.5k
          if (yych <= '"') goto yy157;
2171
787
          if (yych <= '#') goto yy138;
2172
663
          goto yy170;
2173
6.29k
        } else {
2174
6.29k
          if (yych <= '%') goto yy138;
2175
6.26k
          if (yych >= '*') goto yy138;
2176
6.26k
        }
2177
36.8k
      }
2178
85.6k
    } else {
2179
85.6k
      if (yych <= ']') {
2180
45.5k
        if (yych <= ';') {
2181
39.6k
          if (yych <= '.') goto yy177;
2182
35.9k
          if (yych <= ':') goto yy138;
2183
35.9k
        } else {
2184
5.96k
          if (yych != '=') goto yy138;
2185
5.96k
        }
2186
45.5k
      } else {
2187
40.0k
        if (yych <= '|') {
2188
8.02k
          if (yych <= '^') goto yy157;
2189
5.17k
          if (yych <= '{') goto yy138;
2190
32.0k
        } else {
2191
32.0k
          if (yych != '~') goto yy138;
2192
32.0k
        }
2193
40.0k
      }
2194
85.6k
    }
2195
71.7k
yy157:
2196
71.7k
    YYDEBUG(157, *YYCURSOR);
2197
71.7k
    yyleng = YYCURSOR - SCNG(yy_text);
2198
71.7k
#line 580 "Zend/zend_ini_scanner.l"
2199
71.7k
    { /* Get number option value as string */
2200
71.7k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
2201
0
}
2202
0
#line 2203 "Zend/zend_ini_scanner.c"
2203
5.57M
yy158:
2204
5.57M
    YYDEBUG(158, *YYCURSOR);
2205
5.57M
    ++YYCURSOR;
2206
5.57M
    YYFILL(2);
2207
5.57M
    yych = *YYCURSOR;
2208
5.57M
    YYDEBUG(159, *YYCURSOR);
2209
5.57M
    if (yybm[0+yych] & 16) {
2210
5.48M
      goto yy158;
2211
5.48M
    }
2212
82.8k
    if (yych <= '\n') goto yy179;
2213
5.29k
    goto yy181;
2214
6.53k
yy160:
2215
6.53k
    YYDEBUG(160, *YYCURSOR);
2216
6.53k
    ++YYCURSOR;
2217
6.53k
    YYDEBUG(161, *YYCURSOR);
2218
6.53k
    yyleng = YYCURSOR - SCNG(yy_text);
2219
6.53k
#line 592 "Zend/zend_ini_scanner.l"
2220
6.53k
    { /* Make = used in option value to trigger error */
2221
6.53k
  yyless(0);
2222
6.53k
  BEGIN(INITIAL);
2223
6.53k
  return END_OF_LINE;
2224
82.8k
}
2225
0
#line 2226 "Zend/zend_ini_scanner.c"
2226
905k
yy162:
2227
905k
    YYDEBUG(162, *YYCURSOR);
2228
905k
    yyaccept = 2;
2229
905k
    YYMARKER = ++YYCURSOR;
2230
905k
    YYFILL(1);
2231
905k
    yych = *YYCURSOR;
2232
905k
    YYDEBUG(163, *YYCURSOR);
2233
905k
    if (yybm[0+yych] & 32) {
2234
679k
      goto yy162;
2235
679k
    }
2236
225k
    if (yych <= ')') {
2237
152k
      if (yych <= '\r') {
2238
40.7k
        if (yych <= 0x08) {
2239
8.52k
          if (yych >= 0x01) goto yy138;
2240
32.2k
        } else {
2241
32.2k
          if (yych <= '\n') goto yy164;
2242
885
          if (yych <= '\f') goto yy138;
2243
885
        }
2244
111k
      } else {
2245
111k
        if (yych <= '#') {
2246
83.4k
          if (yych <= 0x1F) goto yy138;
2247
73.7k
          if (yych >= '#') goto yy138;
2248
73.7k
        } else {
2249
28.2k
          if (yych <= '$') goto yy170;
2250
25.1k
          if (yych <= '%') goto yy138;
2251
25.1k
        }
2252
111k
      }
2253
152k
    } else {
2254
72.6k
      if (yych <= ']') {
2255
35.2k
        if (yych <= ';') {
2256
20.1k
          if (yych <= ':') goto yy138;
2257
20.1k
        } else {
2258
15.1k
          if (yych != '=') goto yy138;
2259
15.1k
        }
2260
37.3k
      } else {
2261
37.3k
        if (yych <= '|') {
2262
5.26k
          if (yych <= '^') goto yy164;
2263
3.25k
          if (yych <= '{') goto yy138;
2264
32.1k
        } else {
2265
32.1k
          if (yych != '~') goto yy138;
2266
32.1k
        }
2267
37.3k
      }
2268
72.6k
    }
2269
167k
yy164:
2270
167k
    YYDEBUG(164, *YYCURSOR);
2271
167k
    yyleng = YYCURSOR - SCNG(yy_text);
2272
167k
#line 576 "Zend/zend_ini_scanner.l"
2273
167k
    { /* Get constant option value */
2274
167k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
2275
0
}
2276
0
#line 2277 "Zend/zend_ini_scanner.c"
2277
15.4k
yy165:
2278
15.4k
    YYDEBUG(165, *YYCURSOR);
2279
15.4k
    yyaccept = 2;
2280
15.4k
    yych = *(YYMARKER = ++YYCURSOR);
2281
15.4k
    if (yych <= '<') {
2282
5.50k
      if (yych <= '"') {
2283
3.32k
        if (yych <= '\n') {
2284
482
          if (yych <= 0x00) goto yy164;
2285
248
          if (yych <= 0x08) goto yy139;
2286
248
          goto yy164;
2287
2.83k
        } else {
2288
2.83k
          if (yych == '\r') goto yy164;
2289
2.78k
          if (yych <= 0x1F) goto yy139;
2290
2.39k
          goto yy164;
2291
2.78k
        }
2292
3.32k
      } else {
2293
2.18k
        if (yych <= '/') {
2294
492
          if (yych <= '%') goto yy139;
2295
389
          if (yych <= ')') goto yy164;
2296
370
          goto yy139;
2297
1.69k
        } else {
2298
1.69k
          if (yych <= '9') goto yy162;
2299
207
          if (yych == ';') goto yy164;
2300
163
          goto yy139;
2301
207
        }
2302
2.18k
      }
2303
9.98k
    } else {
2304
9.98k
      if (yych <= '_') {
2305
845
        if (yych <= 'A') {
2306
484
          if (yych <= '=') goto yy164;
2307
409
          if (yych <= '@') goto yy139;
2308
314
          goto yy182;
2309
409
        } else {
2310
361
          if (yych <= 'Z') goto yy162;
2311
142
          if (yych <= ']') goto yy139;
2312
142
          if (yych <= '^') goto yy164;
2313
142
          goto yy162;
2314
142
        }
2315
9.14k
      } else {
2316
9.14k
        if (yych <= '{') {
2317
7.08k
          if (yych <= '`') goto yy139;
2318
7.08k
          if (yych <= 'a') goto yy182;
2319
4.75k
          if (yych <= 'z') goto yy162;
2320
83
          goto yy139;
2321
4.75k
        } else {
2322
2.06k
          if (yych == '}') goto yy139;
2323
2.06k
          if (yych <= '~') goto yy164;
2324
1.97k
          goto yy139;
2325
2.06k
        }
2326
9.14k
      }
2327
9.98k
    }
2328
71.1k
yy166:
2329
71.1k
    YYDEBUG(166, *YYCURSOR);
2330
71.1k
    yyaccept = 2;
2331
71.1k
    yych = *(YYMARKER = ++YYCURSOR);
2332
71.1k
    if (yych <= 'N') {
2333
48.6k
      if (yych <= '%') {
2334
7.74k
        if (yych <= '\f') {
2335
1.03k
          if (yych <= 0x00) goto yy164;
2336
1.02k
          if (yych <= 0x08) goto yy139;
2337
442
          if (yych <= '\n') goto yy164;
2338
0
          goto yy139;
2339
6.70k
        } else {
2340
6.70k
          if (yych <= '\r') goto yy164;
2341
6.48k
          if (yych <= 0x1F) goto yy139;
2342
6.48k
          if (yych <= '"') goto yy164;
2343
2.61k
          goto yy139;
2344
6.48k
        }
2345
40.8k
      } else {
2346
40.8k
        if (yych <= ':') {
2347
22.8k
          if (yych <= ')') goto yy164;
2348
21.0k
          if (yych <= '/') goto yy139;
2349
20.0k
          if (yych <= '9') goto yy162;
2350
191
          goto yy139;
2351
20.0k
        } else {
2352
18.0k
          if (yych <= '<') {
2353
1.65k
            if (yych <= ';') goto yy164;
2354
1.65k
            goto yy139;
2355
16.4k
          } else {
2356
16.4k
            if (yych <= '=') goto yy164;
2357
16.1k
            if (yych <= '@') goto yy139;
2358
16.1k
            goto yy162;
2359
16.1k
          }
2360
18.0k
        }
2361
40.8k
      }
2362
48.6k
    } else {
2363
22.5k
      if (yych <= 'n') {
2364
13.2k
        if (yych <= 'Z') {
2365
4.17k
          if (yych <= 'O') goto yy183;
2366
4.09k
          if (yych == 'U') goto yy185;
2367
4.09k
          goto yy162;
2368
9.06k
        } else {
2369
9.06k
          if (yych <= '^') {
2370
7.73k
            if (yych <= ']') goto yy139;
2371
55
            goto yy164;
2372
7.73k
          } else {
2373
1.33k
            if (yych == '`') goto yy139;
2374
406
            goto yy162;
2375
1.33k
          }
2376
9.06k
        }
2377
13.2k
      } else {
2378
9.30k
        if (yych <= 'z') {
2379
5.71k
          if (yych <= 'o') goto yy183;
2380
5.05k
          if (yych == 'u') goto yy185;
2381
1.93k
          goto yy162;
2382
5.05k
        } else {
2383
3.59k
          if (yych <= '|') {
2384
1.44k
            if (yych <= '{') goto yy139;
2385
1.44k
            goto yy164;
2386
2.14k
          } else {
2387
2.14k
            if (yych == '~') goto yy164;
2388
2.09k
            goto yy139;
2389
2.14k
          }
2390
3.59k
        }
2391
9.30k
      }
2392
22.5k
    }
2393
40.2k
yy167:
2394
40.2k
    YYDEBUG(167, *YYCURSOR);
2395
40.2k
    yyaccept = 2;
2396
40.2k
    yych = *(YYMARKER = ++YYCURSOR);
2397
40.2k
    if (yych <= 'E') {
2398
10.8k
      if (yych <= '%') {
2399
9.38k
        if (yych <= '\f') {
2400
7.25k
          if (yych <= 0x00) goto yy164;
2401
7.23k
          if (yych <= 0x08) goto yy139;
2402
195
          if (yych <= '\n') goto yy164;
2403
192
          goto yy139;
2404
2.13k
        } else {
2405
2.13k
          if (yych <= '\r') goto yy164;
2406
2.09k
          if (yych <= 0x1F) goto yy139;
2407
2.08k
          if (yych <= '"') goto yy164;
2408
1.78k
          goto yy139;
2409
2.08k
        }
2410
9.38k
      } else {
2411
1.44k
        if (yych <= ':') {
2412
1.18k
          if (yych <= ')') goto yy164;
2413
1.11k
          if (yych <= '/') goto yy139;
2414
1.01k
          if (yych <= '9') goto yy162;
2415
39
          goto yy139;
2416
1.01k
        } else {
2417
265
          if (yych <= '<') {
2418
70
            if (yych <= ';') goto yy164;
2419
70
            goto yy139;
2420
195
          } else {
2421
195
            if (yych <= '=') goto yy164;
2422
172
            if (yych <= '@') goto yy139;
2423
3
            goto yy162;
2424
172
          }
2425
265
        }
2426
1.44k
      }
2427
29.4k
    } else {
2428
29.4k
      if (yych <= 'e') {
2429
7.74k
        if (yych <= 'Z') {
2430
7.39k
          if (yych <= 'F') goto yy186;
2431
7.15k
          if (yych == 'N') goto yy187;
2432
217
          goto yy162;
2433
7.15k
        } else {
2434
353
          if (yych <= '^') {
2435
96
            if (yych <= ']') goto yy139;
2436
1
            goto yy164;
2437
257
          } else {
2438
257
            if (yych == '`') goto yy139;
2439
215
            goto yy162;
2440
257
          }
2441
353
        }
2442
21.7k
      } else {
2443
21.7k
        if (yych <= 'z') {
2444
21.2k
          if (yych <= 'f') goto yy186;
2445
1.85k
          if (yych == 'n') goto yy187;
2446
1.48k
          goto yy162;
2447
1.85k
        } else {
2448
497
          if (yych <= '|') {
2449
210
            if (yych <= '{') goto yy139;
2450
103
            goto yy164;
2451
287
          } else {
2452
287
            if (yych == '~') goto yy164;
2453
204
            goto yy139;
2454
287
          }
2455
497
        }
2456
21.7k
      }
2457
29.4k
    }
2458
9.75k
yy168:
2459
9.75k
    YYDEBUG(168, *YYCURSOR);
2460
9.75k
    yyaccept = 2;
2461
9.75k
    yych = *(YYMARKER = ++YYCURSOR);
2462
9.75k
    if (yych <= '=') {
2463
1.04k
      if (yych <= '"') {
2464
707
        if (yych <= '\n') {
2465
294
          if (yych <= 0x00) goto yy164;
2466
145
          if (yych <= 0x08) goto yy139;
2467
145
          goto yy164;
2468
413
        } else {
2469
413
          if (yych == '\r') goto yy164;
2470
413
          if (yych <= 0x1F) goto yy139;
2471
36
          goto yy164;
2472
413
        }
2473
707
      } else {
2474
339
        if (yych <= '9') {
2475
270
          if (yych <= '%') goto yy139;
2476
270
          if (yych <= ')') goto yy164;
2477
269
          if (yych <= '/') goto yy139;
2478
151
          goto yy162;
2479
269
        } else {
2480
69
          if (yych == ';') goto yy164;
2481
56
          if (yych <= '<') goto yy139;
2482
38
          goto yy164;
2483
56
        }
2484
339
      }
2485
8.71k
    } else {
2486
8.71k
      if (yych <= '`') {
2487
1.63k
        if (yych <= 'Z') {
2488
195
          if (yych <= '@') goto yy139;
2489
195
          if (yych == 'R') goto yy189;
2490
86
          goto yy162;
2491
1.43k
        } else {
2492
1.43k
          if (yych <= ']') goto yy139;
2493
316
          if (yych <= '^') goto yy164;
2494
316
          if (yych <= '_') goto yy162;
2495
0
          goto yy139;
2496
316
        }
2497
7.07k
      } else {
2498
7.07k
        if (yych <= '{') {
2499
5.84k
          if (yych == 'r') goto yy189;
2500
1.49k
          if (yych <= 'z') goto yy162;
2501
29
          goto yy139;
2502
1.49k
        } else {
2503
1.23k
          if (yych == '}') goto yy139;
2504
1.23k
          if (yych <= '~') goto yy164;
2505
1.23k
          goto yy139;
2506
1.23k
        }
2507
7.07k
      }
2508
8.71k
    }
2509
9.56k
yy169:
2510
9.56k
    YYDEBUG(169, *YYCURSOR);
2511
9.56k
    yyaccept = 2;
2512
9.56k
    yych = *(YYMARKER = ++YYCURSOR);
2513
9.56k
    if (yych <= '=') {
2514
3.62k
      if (yych <= '"') {
2515
227
        if (yych <= '\n') {
2516
192
          if (yych <= 0x00) goto yy164;
2517
187
          if (yych <= 0x08) goto yy139;
2518
0
          goto yy164;
2519
187
        } else {
2520
35
          if (yych == '\r') goto yy164;
2521
28
          if (yych <= 0x1F) goto yy139;
2522
28
          goto yy164;
2523
28
        }
2524
3.39k
      } else {
2525
3.39k
        if (yych <= '9') {
2526
686
          if (yych <= '%') goto yy139;
2527
686
          if (yych <= ')') goto yy164;
2528
686
          if (yych <= '/') goto yy139;
2529
166
          goto yy162;
2530
2.71k
        } else {
2531
2.71k
          if (yych == ';') goto yy164;
2532
495
          if (yych <= '<') goto yy139;
2533
0
          goto yy164;
2534
495
        }
2535
3.39k
      }
2536
5.94k
    } else {
2537
5.94k
      if (yych <= '`') {
2538
3.46k
        if (yych <= 'Z') {
2539
3.15k
          if (yych <= '@') goto yy139;
2540
3.11k
          if (yych == 'E') goto yy190;
2541
2.27k
          goto yy162;
2542
3.11k
        } else {
2543
304
          if (yych <= ']') goto yy139;
2544
0
          if (yych <= '^') goto yy164;
2545
0
          if (yych <= '_') goto yy162;
2546
0
          goto yy139;
2547
0
        }
2548
3.46k
      } else {
2549
2.48k
        if (yych <= '{') {
2550
1.78k
          if (yych == 'e') goto yy190;
2551
1.48k
          if (yych <= 'z') goto yy162;
2552
0
          goto yy139;
2553
1.48k
        } else {
2554
700
          if (yych == '}') goto yy139;
2555
700
          if (yych <= '~') goto yy164;
2556
700
          goto yy139;
2557
700
        }
2558
2.48k
      }
2559
5.94k
    }
2560
13.7k
yy170:
2561
13.7k
    YYDEBUG(170, *YYCURSOR);
2562
13.7k
    ++YYCURSOR;
2563
13.7k
    YYFILL(1);
2564
13.7k
    yych = *YYCURSOR;
2565
13.7k
    if (yych <= '\\') {
2566
12.5k
      if (yych <= 0x00) goto yy171;
2567
12.4k
      if (yych <= '[') goto yy138;
2568
4
      goto yy172;
2569
12.4k
    } else {
2570
1.19k
      if (yych != '{') goto yy138;
2571
1.19k
    }
2572
643
yy171:
2573
643
    YYDEBUG(171, *YYCURSOR);
2574
643
    YYCURSOR = YYMARKER;
2575
643
    if (yyaccept <= 2) {
2576
643
      if (yyaccept <= 1) {
2577
643
        if (yyaccept == 0) {
2578
533
          goto yy140;
2579
533
        } else {
2580
110
          goto yy157;
2581
110
        }
2582
643
      } else {
2583
0
        goto yy164;
2584
0
      }
2585
643
    } 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
4
yy172:
2597
4
    YYDEBUG(172, *YYCURSOR);
2598
4
    ++YYCURSOR;
2599
4
    YYFILL(1);
2600
4
    yych = *YYCURSOR;
2601
4
    if (yybm[0+yych] & 128) {
2602
0
      goto yy191;
2603
0
    }
2604
4
    goto yy138;
2605
474
yy173:
2606
474
    YYDEBUG(173, *YYCURSOR);
2607
474
    ++YYCURSOR;
2608
474
    YYDEBUG(174, *YYCURSOR);
2609
474
    yyleng = YYCURSOR - SCNG(yy_text);
2610
474
#line 422 "Zend/zend_ini_scanner.l"
2611
474
    { /* Variable start */
2612
474
  yy_push_state(ST_VARNAME);
2613
474
  return TC_DOLLAR_CURLY;
2614
4
}
2615
0
#line 2616 "Zend/zend_ini_scanner.c"
2616
3.61M
yy175:
2617
3.61M
    YYDEBUG(175, *YYCURSOR);
2618
3.61M
    ++YYCURSOR;
2619
3.61M
    YYFILL(1);
2620
3.61M
    yych = *YYCURSOR;
2621
3.61M
    YYDEBUG(176, *YYCURSOR);
2622
3.61M
    if (yybm[0+yych] & 64) {
2623
3.53M
      goto yy175;
2624
3.53M
    }
2625
77.4k
    goto yy193;
2626
77.4k
yy177:
2627
34.8k
    YYDEBUG(177, *YYCURSOR);
2628
34.8k
    yyaccept = 1;
2629
34.8k
    YYMARKER = ++YYCURSOR;
2630
34.8k
    YYFILL(1);
2631
34.8k
    yych = *YYCURSOR;
2632
34.8k
    YYDEBUG(178, *YYCURSOR);
2633
34.8k
    if (yych <= '/') {
2634
4.08k
      if (yych <= 0x1F) {
2635
964
        if (yych <= '\n') {
2636
472
          if (yych <= 0x00) goto yy157;
2637
363
          if (yych <= 0x08) goto yy138;
2638
81
          goto yy157;
2639
492
        } else {
2640
492
          if (yych == '\r') goto yy157;
2641
380
          goto yy138;
2642
492
        }
2643
3.12k
      } else {
2644
3.12k
        if (yych <= '$') {
2645
518
          if (yych <= '"') goto yy157;
2646
66
          if (yych <= '#') goto yy138;
2647
0
          goto yy170;
2648
2.60k
        } else {
2649
2.60k
          if (yych <= '%') goto yy138;
2650
2.02k
          if (yych <= ')') goto yy157;
2651
2.02k
          goto yy138;
2652
2.02k
        }
2653
3.12k
      }
2654
30.7k
    } else {
2655
30.7k
      if (yych <= ']') {
2656
27.8k
        if (yych <= ';') {
2657
27.3k
          if (yych <= '9') goto yy177;
2658
1.82k
          if (yych <= ':') goto yy138;
2659
1.82k
          goto yy157;
2660
1.82k
        } else {
2661
486
          if (yych == '=') goto yy157;
2662
225
          goto yy138;
2663
486
        }
2664
27.8k
      } else {
2665
2.91k
        if (yych <= '|') {
2666
1.39k
          if (yych <= '^') goto yy157;
2667
942
          if (yych <= '{') goto yy138;
2668
0
          goto yy157;
2669
1.51k
        } else {
2670
1.51k
          if (yych == '~') goto yy157;
2671
1.51k
          goto yy138;
2672
1.51k
        }
2673
2.91k
      }
2674
30.7k
    }
2675
82.0k
yy179:
2676
82.0k
    YYDEBUG(179, *YYCURSOR);
2677
82.0k
    ++YYCURSOR;
2678
82.8k
yy180:
2679
82.8k
    YYDEBUG(180, *YYCURSOR);
2680
82.8k
    yyleng = YYCURSOR - SCNG(yy_text);
2681
82.8k
#line 675 "Zend/zend_ini_scanner.l"
2682
82.8k
    { /* Comment */
2683
82.8k
  BEGIN(INITIAL);
2684
82.8k
  SCNG(lineno)++;
2685
82.8k
  return END_OF_LINE;
2686
82.0k
}
2687
0
#line 2688 "Zend/zend_ini_scanner.c"
2688
5.29k
yy181:
2689
5.29k
    YYDEBUG(181, *YYCURSOR);
2690
5.29k
    yych = *++YYCURSOR;
2691
5.29k
    if (yych == '\n') goto yy179;
2692
821
    goto yy180;
2693
2.64k
yy182:
2694
2.64k
    YYDEBUG(182, *YYCURSOR);
2695
2.64k
    yyaccept = 2;
2696
2.64k
    yych = *(YYMARKER = ++YYCURSOR);
2697
2.64k
    if (yych <= '=') {
2698
719
      if (yych <= '"') {
2699
681
        if (yych <= '\n') {
2700
681
          if (yych <= 0x00) goto yy164;
2701
681
          if (yych <= 0x08) goto yy139;
2702
218
          goto yy164;
2703
681
        } else {
2704
0
          if (yych == '\r') goto yy164;
2705
0
          if (yych <= 0x1F) goto yy139;
2706
0
          goto yy164;
2707
0
        }
2708
681
      } else {
2709
38
        if (yych <= '9') {
2710
38
          if (yych <= '%') goto yy139;
2711
37
          if (yych <= ')') goto yy164;
2712
37
          if (yych <= '/') goto yy139;
2713
0
          goto yy162;
2714
37
        } else {
2715
0
          if (yych == ';') goto yy164;
2716
0
          if (yych <= '<') goto yy139;
2717
0
          goto yy164;
2718
0
        }
2719
38
      }
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
734
yy183:
2745
734
    YYDEBUG(183, *YYCURSOR);
2746
734
    yyaccept = 3;
2747
734
    yych = *(YYMARKER = ++YYCURSOR);
2748
734
    if (yych <= '<') {
2749
492
      if (yych <= ' ') {
2750
490
        if (yych <= '\n') {
2751
412
          if (yych <= 0x00) goto yy184;
2752
412
          if (yych <= 0x08) goto yy139;
2753
351
          if (yych <= '\t') goto yy196;
2754
351
        } else {
2755
78
          if (yych == '\r') goto yy184;
2756
78
          if (yych <= 0x1F) goto yy139;
2757
2
          goto yy196;
2758
78
        }
2759
490
      } else {
2760
2
        if (yych <= '/') {
2761
1
          if (yych <= '"') goto yy184;
2762
1
          if (yych <= '%') goto yy139;
2763
1
          if (yych >= '*') goto yy139;
2764
1
        } else {
2765
1
          if (yych <= '9') goto yy162;
2766
1
          if (yych != ';') goto yy139;
2767
1
        }
2768
2
      }
2769
492
    } else {
2770
242
      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
242
      } else {
2782
242
        if (yych <= 'z') {
2783
169
          if (yych <= '`') goto yy139;
2784
169
          if (yych == 'n') goto yy198;
2785
81
          goto yy162;
2786
169
        } else {
2787
73
          if (yych <= '|') {
2788
0
            if (yych <= '{') goto yy139;
2789
73
          } else {
2790
73
            if (yych != '~') goto yy139;
2791
73
          }
2792
73
        }
2793
242
      }
2794
242
    }
2795
1.47k
yy184:
2796
1.47k
    YYDEBUG(184, *YYCURSOR);
2797
1.47k
    yyleng = YYCURSOR - SCNG(yy_text);
2798
1.47k
#line 495 "Zend/zend_ini_scanner.l"
2799
1.47k
    { /* FALSE value (when used outside option value/offset this causes parse error!)*/
2800
1.47k
  RETURN_TOKEN(BOOL_FALSE, "", 0);
2801
0
}
2802
0
#line 2803 "Zend/zend_ini_scanner.c"
2803
3.11k
yy185:
2804
3.11k
    YYDEBUG(185, *YYCURSOR);
2805
3.11k
    yyaccept = 2;
2806
3.11k
    yych = *(YYMARKER = ++YYCURSOR);
2807
3.11k
    if (yych <= '=') {
2808
746
      if (yych <= '"') {
2809
738
        if (yych <= '\n') {
2810
0
          if (yych <= 0x00) goto yy164;
2811
0
          if (yych <= 0x08) goto yy139;
2812
0
          goto yy164;
2813
738
        } else {
2814
738
          if (yych == '\r') goto yy164;
2815
738
          if (yych <= 0x1F) goto yy139;
2816
10
          goto yy164;
2817
738
        }
2818
738
      } else {
2819
8
        if (yych <= '9') {
2820
8
          if (yych <= '%') goto yy139;
2821
8
          if (yych <= ')') goto yy164;
2822
2
          if (yych <= '/') goto yy139;
2823
0
          goto yy162;
2824
2
        } else {
2825
0
          if (yych == ';') goto yy164;
2826
0
          if (yych <= '<') goto yy139;
2827
0
          goto yy164;
2828
0
        }
2829
8
      }
2830
2.36k
    } else {
2831
2.36k
      if (yych <= '`') {
2832
3
        if (yych <= 'Z') {
2833
2
          if (yych <= '@') goto yy139;
2834
2
          if (yych == 'L') goto yy199;
2835
2
          goto yy162;
2836
2
        } else {
2837
1
          if (yych <= ']') goto yy139;
2838
1
          if (yych <= '^') goto yy164;
2839
1
          if (yych <= '_') goto yy162;
2840
0
          goto yy139;
2841
1
        }
2842
2.36k
      } else {
2843
2.36k
        if (yych <= '{') {
2844
2.36k
          if (yych == 'l') goto yy199;
2845
203
          if (yych <= 'z') goto yy162;
2846
0
          goto yy139;
2847
203
        } else {
2848
2
          if (yych == '}') goto yy139;
2849
1
          if (yych <= '~') goto yy164;
2850
0
          goto yy139;
2851
1
        }
2852
2.36k
      }
2853
2.36k
    }
2854
19.5k
yy186:
2855
19.5k
    YYDEBUG(186, *YYCURSOR);
2856
19.5k
    yyaccept = 2;
2857
19.5k
    yych = *(YYMARKER = ++YYCURSOR);
2858
19.5k
    if (yych <= '=') {
2859
4.70k
      if (yych <= '"') {
2860
3.55k
        if (yych <= '\n') {
2861
985
          if (yych <= 0x00) goto yy164;
2862
848
          if (yych <= 0x08) goto yy139;
2863
13
          goto yy164;
2864
2.57k
        } else {
2865
2.57k
          if (yych == '\r') goto yy164;
2866
2.57k
          if (yych <= 0x1F) goto yy139;
2867
2.34k
          goto yy164;
2868
2.57k
        }
2869
3.55k
      } else {
2870
1.14k
        if (yych <= '9') {
2871
1.04k
          if (yych <= '%') goto yy139;
2872
1.04k
          if (yych <= ')') goto yy164;
2873
1.04k
          if (yych <= '/') goto yy139;
2874
901
          goto yy162;
2875
1.04k
        } else {
2876
99
          if (yych == ';') goto yy164;
2877
99
          if (yych <= '<') goto yy139;
2878
3
          goto yy164;
2879
99
        }
2880
1.14k
      }
2881
14.8k
    } else {
2882
14.8k
      if (yych <= '`') {
2883
2.36k
        if (yych <= 'Z') {
2884
1.86k
          if (yych <= '@') goto yy139;
2885
1.29k
          if (yych == 'F') goto yy200;
2886
1.29k
          goto yy162;
2887
1.29k
        } else {
2888
495
          if (yych <= ']') goto yy139;
2889
495
          if (yych <= '^') goto yy164;
2890
495
          if (yych <= '_') goto yy162;
2891
495
          goto yy139;
2892
495
        }
2893
12.5k
      } else {
2894
12.5k
        if (yych <= '{') {
2895
12.0k
          if (yych == 'f') goto yy200;
2896
3.27k
          if (yych <= 'z') goto yy162;
2897
76
          goto yy139;
2898
3.27k
        } else {
2899
460
          if (yych == '}') goto yy139;
2900
460
          if (yych <= '~') goto yy164;
2901
458
          goto yy139;
2902
460
        }
2903
12.5k
      }
2904
14.8k
    }
2905
7.75k
yy187:
2906
7.75k
    YYDEBUG(187, *YYCURSOR);
2907
7.75k
    yyaccept = 4;
2908
7.75k
    yych = *(YYMARKER = ++YYCURSOR);
2909
7.75k
    if (yybm[0+yych] & 32) {
2910
5.84k
      goto yy162;
2911
5.84k
    }
2912
1.90k
    if (yych <= ')') {
2913
412
      if (yych <= '\f') {
2914
239
        if (yych <= 0x08) {
2915
11
          if (yych >= 0x01) goto yy139;
2916
228
        } else {
2917
228
          if (yych <= '\t') goto yy201;
2918
228
          if (yych >= '\v') goto yy139;
2919
228
        }
2920
239
      } else {
2921
173
        if (yych <= ' ') {
2922
138
          if (yych <= '\r') goto yy188;
2923
138
          if (yych <= 0x1F) goto yy139;
2924
122
          goto yy201;
2925
138
        } else {
2926
35
          if (yych <= '"') goto yy188;
2927
35
          if (yych <= '%') goto yy139;
2928
35
        }
2929
173
      }
2930
1.49k
    } else {
2931
1.49k
      if (yych <= ']') {
2932
302
        if (yych <= ';') {
2933
91
          if (yych <= ':') goto yy139;
2934
211
        } else {
2935
211
          if (yych != '=') goto yy139;
2936
211
        }
2937
1.19k
      } else {
2938
1.19k
        if (yych <= '|') {
2939
0
          if (yych <= '^') goto yy188;
2940
0
          if (yych <= '{') goto yy139;
2941
1.19k
        } else {
2942
1.19k
          if (yych != '~') goto yy139;
2943
1.19k
        }
2944
1.19k
      }
2945
1.49k
    }
2946
600
yy188:
2947
600
    YYDEBUG(188, *YYCURSOR);
2948
600
    yyleng = YYCURSOR - SCNG(yy_text);
2949
600
#line 491 "Zend/zend_ini_scanner.l"
2950
600
    { /* TRUE value (when used outside option value/offset this causes parse error!) */
2951
600
  RETURN_TOKEN(BOOL_TRUE, "1", 1);
2952
0
}
2953
0
#line 2954 "Zend/zend_ini_scanner.c"
2954
4.45k
yy189:
2955
4.45k
    YYDEBUG(189, *YYCURSOR);
2956
4.45k
    yyaccept = 2;
2957
4.45k
    yych = *(YYMARKER = ++YYCURSOR);
2958
4.45k
    if (yych <= '=') {
2959
1.29k
      if (yych <= '"') {
2960
3
        if (yych <= '\n') {
2961
2
          if (yych <= 0x00) goto yy164;
2962
2
          if (yych <= 0x08) goto yy139;
2963
0
          goto yy164;
2964
2
        } else {
2965
1
          if (yych == '\r') goto yy164;
2966
1
          if (yych <= 0x1F) goto yy139;
2967
0
          goto yy164;
2968
1
        }
2969
1.29k
      } else {
2970
1.29k
        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
1.29k
        } else {
2976
1.29k
          if (yych == ';') goto yy164;
2977
1.29k
          if (yych <= '<') goto yy139;
2978
36
          goto yy164;
2979
1.29k
        }
2980
1.29k
      }
2981
3.16k
    } else {
2982
3.16k
      if (yych <= '`') {
2983
2.55k
        if (yych <= 'Z') {
2984
2.54k
          if (yych <= '@') goto yy139;
2985
2.54k
          if (yych == 'U') goto yy203;
2986
2.35k
          goto yy162;
2987
2.54k
        } else {
2988
3
          if (yych <= ']') goto yy139;
2989
1
          if (yych <= '^') goto yy164;
2990
1
          if (yych <= '_') goto yy162;
2991
0
          goto yy139;
2992
1
        }
2993
2.55k
      } else {
2994
610
        if (yych <= '{') {
2995
573
          if (yych == 'u') goto yy203;
2996
315
          if (yych <= 'z') goto yy162;
2997
0
          goto yy139;
2998
315
        } else {
2999
37
          if (yych == '}') goto yy139;
3000
0
          if (yych <= '~') goto yy164;
3001
0
          goto yy139;
3002
0
        }
3003
610
      }
3004
3.16k
    }
3005
1.13k
yy190:
3006
1.13k
    YYDEBUG(190, *YYCURSOR);
3007
1.13k
    yyaccept = 2;
3008
1.13k
    yych = *(YYMARKER = ++YYCURSOR);
3009
1.13k
    if (yych <= '=') {
3010
769
      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
769
      } else {
3021
769
        if (yych <= '9') {
3022
3
          if (yych <= '%') goto yy139;
3023
3
          if (yych <= ')') goto yy164;
3024
3
          if (yych <= '/') goto yy139;
3025
3
          goto yy162;
3026
766
        } else {
3027
766
          if (yych == ';') goto yy164;
3028
2
          if (yych <= '<') goto yy139;
3029
0
          goto yy164;
3030
2
        }
3031
769
      }
3032
769
    } else {
3033
366
      if (yych <= '`') {
3034
72
        if (yych <= 'Z') {
3035
72
          if (yych <= '@') goto yy139;
3036
71
          if (yych == 'S') goto yy187;
3037
71
          goto yy162;
3038
71
        } 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
294
      } else {
3045
294
        if (yych <= '{') {
3046
293
          if (yych == 's') goto yy187;
3047
112
          if (yych <= 'z') goto yy162;
3048
0
          goto yy139;
3049
112
        } else {
3050
1
          if (yych == '}') goto yy139;
3051
1
          if (yych <= '~') goto yy164;
3052
1
          goto yy139;
3053
1
        }
3054
294
      }
3055
366
    }
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
77.4k
yy193:
3069
77.4k
    YYDEBUG(193, *YYCURSOR);
3070
77.4k
    ++YYCURSOR;
3071
77.4k
    YYDEBUG(194, *YYCURSOR);
3072
77.4k
    yyleng = YYCURSOR - SCNG(yy_text);
3073
77.4k
#line 389 "Zend/zend_ini_scanner.l"
3074
77.4k
    { /* Raw string */
3075
  /* Eat leading and trailing single quotes */
3076
77.4k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
3077
77.4k
    SCNG(yy_text)++;
3078
77.4k
    yyleng = yyleng - 2;
3079
77.4k
  }
3080
77.4k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
3081
0
}
3082
0
#line 3083 "Zend/zend_ini_scanner.c"
3083
1
yy195:
3084
1
    YYDEBUG(195, *YYCURSOR);
3085
1
    yyaccept = 2;
3086
1
    yych = *(YYMARKER = ++YYCURSOR);
3087
1
    if (yych <= '=') {
3088
1
      if (yych <= '"') {
3089
1
        if (yych <= '\n') {
3090
1
          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
1
      } 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
1
    } 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
1.11k
yy196:
3135
1.11k
    YYDEBUG(196, *YYCURSOR);
3136
1.11k
    ++YYCURSOR;
3137
1.11k
    YYFILL(1);
3138
1.11k
    yych = *YYCURSOR;
3139
1.11k
    YYDEBUG(197, *YYCURSOR);
3140
1.11k
    if (yych == '\t') goto yy196;
3141
1.11k
    if (yych == ' ') goto yy196;
3142
306
    goto yy184;
3143
306
yy198:
3144
88
    YYDEBUG(198, *YYCURSOR);
3145
88
    yyaccept = 2;
3146
88
    yych = *(YYMARKER = ++YYCURSOR);
3147
88
    if (yych <= '=') {
3148
88
      if (yych <= '"') {
3149
88
        if (yych <= '\n') {
3150
0
          if (yych <= 0x00) goto yy164;
3151
0
          if (yych <= 0x08) goto yy139;
3152
0
          goto yy164;
3153
88
        } else {
3154
88
          if (yych == '\r') goto yy164;
3155
88
          if (yych <= 0x1F) goto yy139;
3156
0
          goto yy164;
3157
88
        }
3158
88
      } 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
88
    } 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
2.16k
yy199:
3195
2.16k
    YYDEBUG(199, *YYCURSOR);
3196
2.16k
    yyaccept = 2;
3197
2.16k
    yych = *(YYMARKER = ++YYCURSOR);
3198
2.16k
    if (yych <= '=') {
3199
1.76k
      if (yych <= '"') {
3200
1.71k
        if (yych <= '\n') {
3201
83
          if (yych <= 0x00) goto yy164;
3202
0
          if (yych <= 0x08) goto yy139;
3203
0
          goto yy164;
3204
1.63k
        } else {
3205
1.63k
          if (yych == '\r') goto yy164;
3206
1.63k
          if (yych <= 0x1F) goto yy139;
3207
1.42k
          goto yy164;
3208
1.63k
        }
3209
1.71k
      } else {
3210
50
        if (yych <= '9') {
3211
50
          if (yych <= '%') goto yy139;
3212
2
          if (yych <= ')') goto yy164;
3213
2
          if (yych <= '/') goto yy139;
3214
2
          goto yy162;
3215
2
        } else {
3216
0
          if (yych == ';') goto yy164;
3217
0
          if (yych <= '<') goto yy139;
3218
0
          goto yy164;
3219
0
        }
3220
50
      }
3221
1.76k
    } else {
3222
397
      if (yych <= '`') {
3223
40
        if (yych <= 'Z') {
3224
40
          if (yych <= '@') goto yy139;
3225
38
          if (yych == 'L') goto yy204;
3226
38
          goto yy162;
3227
38
        } 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
357
      } else {
3234
357
        if (yych <= '{') {
3235
355
          if (yych == 'l') goto yy204;
3236
0
          if (yych <= 'z') goto yy162;
3237
0
          goto yy139;
3238
2
        } else {
3239
2
          if (yych == '}') goto yy139;
3240
2
          if (yych <= '~') goto yy164;
3241
2
          goto yy139;
3242
2
        }
3243
357
      }
3244
397
    }
3245
8.80k
yy200:
3246
8.80k
    YYDEBUG(200, *YYCURSOR);
3247
8.80k
    yyaccept = 3;
3248
8.80k
    yych = *(YYMARKER = ++YYCURSOR);
3249
8.80k
    if (yybm[0+yych] & 32) {
3250
4.98k
      goto yy162;
3251
4.98k
    }
3252
3.82k
    if (yych <= ')') {
3253
1.42k
      if (yych <= '\f') {
3254
908
        if (yych <= 0x08) {
3255
609
          if (yych <= 0x00) goto yy184;
3256
598
          goto yy139;
3257
609
        } else {
3258
299
          if (yych <= '\t') goto yy196;
3259
129
          if (yych <= '\n') goto yy184;
3260
6
          goto yy139;
3261
129
        }
3262
908
      } else {
3263
513
        if (yych <= ' ') {
3264
172
          if (yych <= '\r') goto yy184;
3265
172
          if (yych <= 0x1F) goto yy139;
3266
134
          goto yy196;
3267
341
        } else {
3268
341
          if (yych <= '"') goto yy184;
3269
131
          if (yych <= '%') goto yy139;
3270
113
          goto yy184;
3271
131
        }
3272
513
      }
3273
2.40k
    } else {
3274
2.40k
      if (yych <= ']') {
3275
273
        if (yych <= ';') {
3276
124
          if (yych <= ':') goto yy139;
3277
34
          goto yy184;
3278
149
        } else {
3279
149
          if (yych == '=') goto yy184;
3280
93
          goto yy139;
3281
149
        }
3282
2.12k
      } else {
3283
2.12k
        if (yych <= '|') {
3284
1.62k
          if (yych <= '^') goto yy184;
3285
1.54k
          if (yych <= '{') goto yy139;
3286
0
          goto yy184;
3287
1.54k
        } else {
3288
501
          if (yych == '~') goto yy184;
3289
383
          goto yy139;
3290
501
        }
3291
2.12k
      }
3292
2.40k
    }
3293
185
yy201:
3294
185
    YYDEBUG(201, *YYCURSOR);
3295
185
    ++YYCURSOR;
3296
185
    YYFILL(1);
3297
185
    yych = *YYCURSOR;
3298
185
    YYDEBUG(202, *YYCURSOR);
3299
185
    if (yych == '\t') goto yy201;
3300
122
    if (yych == ' ') goto yy201;
3301
122
    goto yy188;
3302
446
yy203:
3303
446
    YYDEBUG(203, *YYCURSOR);
3304
446
    yyaccept = 2;
3305
446
    yych = *(YYMARKER = ++YYCURSOR);
3306
446
    if (yych <= '=') {
3307
160
      if (yych <= '"') {
3308
147
        if (yych <= '\n') {
3309
2
          if (yych <= 0x00) goto yy164;
3310
0
          if (yych <= 0x08) goto yy139;
3311
0
          goto yy164;
3312
145
        } else {
3313
145
          if (yych == '\r') goto yy164;
3314
145
          if (yych <= 0x1F) goto yy139;
3315
79
          goto yy164;
3316
145
        }
3317
147
      } else {
3318
13
        if (yych <= '9') {
3319
13
          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
13
      }
3329
286
    } else {
3330
286
      if (yych <= '`') {
3331
4
        if (yych <= 'Z') {
3332
4
          if (yych <= '@') goto yy139;
3333
4
          if (yych == 'E') goto yy187;
3334
0
          goto yy162;
3335
4
        } 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
282
      } else {
3342
282
        if (yych <= '{') {
3343
251
          if (yych == 'e') goto yy187;
3344
1
          if (yych <= 'z') goto yy162;
3345
1
          goto yy139;
3346
31
        } else {
3347
31
          if (yych == '}') goto yy139;
3348
31
          if (yych <= '~') goto yy164;
3349
31
          goto yy139;
3350
31
        }
3351
282
      }
3352
286
    }
3353
355
yy204:
3354
355
    YYDEBUG(204, *YYCURSOR);
3355
355
    yyaccept = 5;
3356
355
    yych = *(YYMARKER = ++YYCURSOR);
3357
355
    if (yybm[0+yych] & 32) {
3358
2
      goto yy162;
3359
2
    }
3360
353
    if (yych <= ')') {
3361
198
      if (yych <= '\f') {
3362
194
        if (yych <= 0x08) {
3363
1
          if (yych >= 0x01) goto yy139;
3364
193
        } else {
3365
193
          if (yych <= '\t') goto yy206;
3366
193
          if (yych >= '\v') goto yy139;
3367
193
        }
3368
194
      } else {
3369
4
        if (yych <= ' ') {
3370
4
          if (yych <= '\r') goto yy205;
3371
4
          if (yych <= 0x1F) goto yy139;
3372
1
          goto yy206;
3373
4
        } else {
3374
0
          if (yych <= '"') goto yy205;
3375
0
          if (yych <= '%') goto yy139;
3376
0
        }
3377
4
      }
3378
198
    } else {
3379
155
      if (yych <= ']') {
3380
147
        if (yych <= ';') {
3381
145
          if (yych <= ':') goto yy139;
3382
145
        } else {
3383
2
          if (yych != '=') goto yy139;
3384
2
        }
3385
147
      } else {
3386
8
        if (yych <= '|') {
3387
0
          if (yych <= '^') goto yy205;
3388
0
          if (yych <= '{') goto yy139;
3389
8
        } else {
3390
8
          if (yych != '~') goto yy139;
3391
8
        }
3392
8
      }
3393
155
    }
3394
337
yy205:
3395
337
    YYDEBUG(205, *YYCURSOR);
3396
337
    yyleng = YYCURSOR - SCNG(yy_text);
3397
337
#line 499 "Zend/zend_ini_scanner.l"
3398
337
    {
3399
337
  RETURN_TOKEN(NULL_NULL, "", 0);
3400
0
}
3401
0
#line 3402 "Zend/zend_ini_scanner.c"
3402
2
yy206:
3403
2
    YYDEBUG(206, *YYCURSOR);
3404
2
    ++YYCURSOR;
3405
2
    YYFILL(1);
3406
2
    yych = *YYCURSOR;
3407
2
    YYDEBUG(207, *YYCURSOR);
3408
2
    if (yych == '\t') goto yy206;
3409
2
    if (yych == ' ') goto yy206;
3410
1
    goto yy205;
3411
2
  }
3412
/* *********************************** */
3413
41
yyc_ST_SECTION_RAW:
3414
41
  {
3415
41
    static const unsigned char yybm[] = {
3416
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3417
41
       64, 192,   0,  64,  64,   0,  64,  64, 
3418
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3419
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3420
41
      192,  64,  64,  64,  64,  64,  64,  64, 
3421
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3422
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3423
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3424
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3425
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3426
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3427
41
       64,  64,  64,  64,  64,   0,  64,  64, 
3428
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3429
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3430
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3431
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3432
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3433
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3434
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3435
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3436
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3437
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3438
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3439
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3440
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3441
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3442
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3443
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3444
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3445
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3446
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3447
41
       64,  64,  64,  64,  64,  64,  64,  64, 
3448
41
    };
3449
41
    YYDEBUG(208, *YYCURSOR);
3450
41
    YYFILL(1);
3451
41
    yych = *YYCURSOR;
3452
41
    if (yybm[0+yych] & 64) {
3453
21
      goto yy210;
3454
21
    }
3455
20
    if (yych <= '\r') goto yy213;
3456
16
    goto yy215;
3457
343
yy210:
3458
343
    YYDEBUG(210, *YYCURSOR);
3459
343
    ++YYCURSOR;
3460
343
    YYFILL(1);
3461
342
    yych = *YYCURSOR;
3462
342
    YYDEBUG(211, *YYCURSOR);
3463
342
    if (yybm[0+yych] & 64) {
3464
322
      goto yy210;
3465
322
    }
3466
20
    YYDEBUG(212, *YYCURSOR);
3467
20
    yyleng = YYCURSOR - SCNG(yy_text);
3468
20
#line 566 "Zend/zend_ini_scanner.l"
3469
20
    { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
3470
20
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
3471
0
}
3472
0
#line 3473 "Zend/zend_ini_scanner.c"
3473
4
yy213:
3474
4
    YYDEBUG(213, *YYCURSOR);
3475
4
    ++YYCURSOR;
3476
4
    YYDEBUG(214, *YYCURSOR);
3477
4
    yyleng = YYCURSOR - SCNG(yy_text);
3478
4
#line 686 "Zend/zend_ini_scanner.l"
3479
4
    {
3480
4
  return 0;
3481
0
}
3482
0
#line 3483 "Zend/zend_ini_scanner.c"
3483
18
yy215:
3484
18
    YYDEBUG(215, *YYCURSOR);
3485
18
    ++YYCURSOR;
3486
18
    YYFILL(2);
3487
18
    yych = *YYCURSOR;
3488
18
    YYDEBUG(216, *YYCURSOR);
3489
18
    if (yybm[0+yych] & 128) {
3490
2
      goto yy215;
3491
2
    }
3492
16
    if (yych <= 0x08) goto yy217;
3493
16
    if (yych <= '\n') goto yy218;
3494
2
    if (yych == '\r') goto yy219;
3495
16
yy217:
3496
16
    YYDEBUG(217, *YYCURSOR);
3497
16
    yyleng = YYCURSOR - SCNG(yy_text);
3498
16
#line 398 "Zend/zend_ini_scanner.l"
3499
16
    { /* End of section */
3500
16
  BEGIN(INITIAL);
3501
16
  SCNG(lineno)++;
3502
16
  return ']';
3503
2
}
3504
0
#line 3505 "Zend/zend_ini_scanner.c"
3505
14
yy218:
3506
14
    YYDEBUG(218, *YYCURSOR);
3507
14
    ++YYCURSOR;
3508
14
    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.15M
yyc_ST_DOUBLE_QUOTES:
3517
1.15M
  {
3518
1.15M
    static const unsigned char yybm[] = {
3519
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3520
1.15M
        0, 128,   0,   0,   0,   0,   0,   0, 
3521
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3522
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3523
1.15M
      128,   0,   0,   0,   0,   0,   0,   0, 
3524
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3525
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3526
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3527
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3528
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3529
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3530
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3531
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3532
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3533
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3534
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3535
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3536
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3537
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3538
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3539
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3540
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3541
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3542
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3543
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3544
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3545
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3546
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3547
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3548
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3549
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3550
1.15M
        0,   0,   0,   0,   0,   0,   0,   0, 
3551
1.15M
    };
3552
1.15M
    YYDEBUG(220, *YYCURSOR);
3553
1.15M
    YYFILL(2);
3554
1.15M
    yych = *YYCURSOR;
3555
1.15M
    if (yych == '"') goto yy224;
3556
432k
    if (yych == '$') goto yy227;
3557
424k
    YYDEBUG(222, *YYCURSOR);
3558
424k
    ++YYCURSOR;
3559
432k
yy223:
3560
432k
    YYDEBUG(223, *YYCURSOR);
3561
432k
    yyleng = YYCURSOR - SCNG(yy_text);
3562
432k
#line 620 "Zend/zend_ini_scanner.l"
3563
432k
    { /* Escape double quoted string contents */
3564
432k
  if (YYCURSOR > YYLIMIT) {
3565
0
    return 0;
3566
0
  }
3567
3568
432k
  const unsigned char *s = SCNG(yy_text);
3569
3570
10.7M
  while (s < YYLIMIT) {
3571
10.7M
    switch (*s++) {
3572
425k
      case '"':
3573
425k
        break;
3574
74.4k
      case '$':
3575
74.4k
        if (s < YYLIMIT && *s == '{') {
3576
83
          break;
3577
83
        }
3578
74.3k
        continue;
3579
74.3k
      case '\\':
3580
68.6k
        if (s < YYLIMIT) {
3581
68.5k
          unsigned char escaped = *s++;
3582
          /* A special case for Windows paths, e.g. key="C:\path\" */
3583
68.5k
          if (escaped == '"' && (s >= YYLIMIT || *s == '\n' || *s == '\r')) {
3584
90
            break;
3585
90
          }
3586
68.5k
        }
3587
68.5k
        ZEND_FALLTHROUGH;
3588
10.2M
      default:
3589
10.2M
        continue;
3590
10.7M
    }
3591
3592
425k
    s--;
3593
425k
    break;
3594
10.7M
  }
3595
3596
432k
  YYCURSOR = s;
3597
432k
  yyleng = YYCURSOR - SCNG(yy_text);
3598
3599
432k
  zend_ini_escape_string(ini_lval, yytext, yyleng, '"');
3600
432k
  Z_EXTRA_P(ini_lval) = 0;
3601
432k
  return TC_QUOTED_STRING;
3602
432k
}
3603
0
#line 3604 "Zend/zend_ini_scanner.c"
3604
789k
yy224:
3605
789k
    YYDEBUG(224, *YYCURSOR);
3606
789k
    ++YYCURSOR;
3607
789k
    YYFILL(1);
3608
789k
    yych = *YYCURSOR;
3609
789k
    YYDEBUG(225, *YYCURSOR);
3610
789k
    if (yybm[0+yych] & 128) {
3611
64.3k
      goto yy224;
3612
64.3k
    }
3613
724k
    YYDEBUG(226, *YYCURSOR);
3614
724k
    yyleng = YYCURSOR - SCNG(yy_text);
3615
724k
#line 615 "Zend/zend_ini_scanner.l"
3616
724k
    { /* Double quoted '"' string ends */
3617
724k
  yy_pop_state();
3618
724k
  return '"';
3619
789k
}
3620
0
#line 3621 "Zend/zend_ini_scanner.c"
3621
8.42k
yy227:
3622
8.42k
    YYDEBUG(227, *YYCURSOR);
3623
8.42k
    yych = *++YYCURSOR;
3624
8.42k
    if (yych != '{') goto yy223;
3625
85
    YYDEBUG(228, *YYCURSOR);
3626
85
    ++YYCURSOR;
3627
85
    YYDEBUG(229, *YYCURSOR);
3628
85
    yyleng = YYCURSOR - SCNG(yy_text);
3629
85
#line 422 "Zend/zend_ini_scanner.l"
3630
85
    { /* Variable start */
3631
85
  yy_push_state(ST_VARNAME);
3632
85
  return TC_DOLLAR_CURLY;
3633
8.42k
}
3634
8.42k
#line 3635 "Zend/zend_ini_scanner.c"
3635
8.42k
  }
3636
/* *********************************** */
3637
95
yyc_ST_VAR_FALLBACK:
3638
95
  {
3639
95
    static const unsigned char yybm[] = {
3640
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3641
95
        8,  24,   0,   8,   8,   0,   8,   8, 
3642
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3643
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3644
95
       24,   8,   0,   8, 128,   8,   8,   0, 
3645
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3646
95
      104, 104, 104, 104, 104, 104, 104, 104, 
3647
95
      104, 104,   8,   0,   8,   8,   8,   8, 
3648
95
        8,  72,  72,  72,  72,  72,  72,  72, 
3649
95
       72,  72,  72,  72,  72,  72,  72,  72, 
3650
95
       72,  72,  72,  72,  72,  72,  72,  72, 
3651
95
       72,  72,  72,   8, 128,   8,   8,  72, 
3652
95
        8,  72,  72,  72,  72,  72,  72,  72, 
3653
95
       72,  72,  72,  72,  72,  72,  72,  72, 
3654
95
       72,  72,  72,  72,  72,  72,  72,  72, 
3655
95
       72,  72,  72,   8,   8,   0,   8,   8, 
3656
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3657
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3658
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3659
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3660
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3661
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3662
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3663
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3664
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3665
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3666
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3667
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3668
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3669
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3670
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3671
95
        8,   8,   8,   8,   8,   8,   8,   8, 
3672
95
    };
3673
95
    YYDEBUG(230, *YYCURSOR);
3674
95
    YYFILL(2);
3675
95
    yych = *YYCURSOR;
3676
95
    if (yybm[0+yych] & 16) {
3677
1
      goto yy235;
3678
1
    }
3679
94
    if (yych <= '/') {
3680
51
      if (yych <= '"') {
3681
37
        if (yych <= '\f') {
3682
12
          if (yych <= 0x08) goto yy232;
3683
12
          if (yych <= '\n') goto yy237;
3684
25
        } else {
3685
25
          if (yych <= '\r') goto yy237;
3686
23
          if (yych >= '"') goto yy239;
3687
23
        }
3688
37
      } else {
3689
14
        if (yych <= '&') {
3690
6
          if (yych == '$') goto yy241;
3691
8
        } else {
3692
8
          if (yych <= '\'') goto yy237;
3693
6
          if (yych <= ',') goto yy232;
3694
6
          if (yych <= '.') goto yy242;
3695
6
        }
3696
14
      }
3697
51
    } else {
3698
43
      if (yych <= '\\') {
3699
8
        if (yych <= ';') {
3700
6
          if (yych <= '9') goto yy243;
3701
0
          if (yych >= ';') goto yy237;
3702
2
        } else {
3703
2
          if (yych <= '@') goto yy232;
3704
2
          if (yych <= 'Z') goto yy246;
3705
2
          if (yych >= '\\') goto yy249;
3706
2
        }
3707
35
      } else {
3708
35
        if (yych <= '`') {
3709
0
          if (yych == '_') goto yy246;
3710
35
        } else {
3711
35
          if (yych <= 'z') goto yy246;
3712
14
          if (yych == '}') goto yy250;
3713
14
        }
3714
35
      }
3715
43
    }
3716
968
yy232:
3717
968
    YYDEBUG(232, *YYCURSOR);
3718
968
    yyaccept = 0;
3719
968
    YYMARKER = ++YYCURSOR;
3720
968
    YYFILL(1);
3721
963
    yych = *YYCURSOR;
3722
969
yy233:
3723
969
    YYDEBUG(233, *YYCURSOR);
3724
969
    if (yybm[0+yych] & 8) {
3725
912
      goto yy232;
3726
912
    }
3727
57
    if (yych <= '"') goto yy234;
3728
36
    if (yych <= '$') goto yy252;
3729
24
    if (yych <= ';') goto yy234;
3730
22
    if (yych <= '\\') goto yy249;
3731
33
yy234:
3732
33
    YYDEBUG(234, *YYCURSOR);
3733
33
    yyleng = YYCURSOR - SCNG(yy_text);
3734
33
#line 602 "Zend/zend_ini_scanner.l"
3735
33
    { /* Same as below, but excluding '}' */
3736
33
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
3737
0
}
3738
0
#line 3739 "Zend/zend_ini_scanner.c"
3739
1
yy235:
3740
1
    YYDEBUG(235, *YYCURSOR);
3741
1
    yyaccept = 0;
3742
1
    YYMARKER = ++YYCURSOR;
3743
1
    YYFILL(1);
3744
1
    yych = *YYCURSOR;
3745
1
    YYDEBUG(236, *YYCURSOR);
3746
1
    if (yybm[0+yych] & 16) {
3747
0
      goto yy235;
3748
0
    }
3749
1
    if (yych <= '$') {
3750
1
      if (yych <= '\r') {
3751
1
        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
1
    } 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
16
yy237:
3776
16
    YYDEBUG(237, *YYCURSOR);
3777
16
    ++YYCURSOR;
3778
16
yy238:
3779
16
    YYDEBUG(238, *YYCURSOR);
3780
16
    yyleng = YYCURSOR - SCNG(yy_text);
3781
16
#line 686 "Zend/zend_ini_scanner.l"
3782
16
    {
3783
16
  return 0;
3784
16
}
3785
0
#line 3786 "Zend/zend_ini_scanner.c"
3786
21
yy239:
3787
21
    YYDEBUG(239, *YYCURSOR);
3788
21
    ++YYCURSOR;
3789
21
    YYDEBUG(240, *YYCURSOR);
3790
21
    yyleng = YYCURSOR - SCNG(yy_text);
3791
21
#line 610 "Zend/zend_ini_scanner.l"
3792
21
    { /* Double quoted '"' string start */
3793
21
  yy_push_state(ST_DOUBLE_QUOTES);
3794
21
  return '"';
3795
16
}
3796
0
#line 3797 "Zend/zend_ini_scanner.c"
3797
2
yy241:
3798
2
    YYDEBUG(241, *YYCURSOR);
3799
2
    yych = *++YYCURSOR;
3800
2
    if (yych <= '\\') {
3801
0
      if (yych <= 0x00) goto yy238;
3802
0
      if (yych <= '[') goto yy232;
3803
0
      goto yy254;
3804
2
    } else {
3805
2
      if (yych == '{') goto yy256;
3806
0
      goto yy232;
3807
2
    }
3808
6
yy242:
3809
6
    YYDEBUG(242, *YYCURSOR);
3810
6
    yyaccept = 0;
3811
6
    yych = *(YYMARKER = ++YYCURSOR);
3812
6
    if (yych <= '/') goto yy233;
3813
0
    if (yych <= '9') goto yy258;
3814
0
    goto yy233;
3815
26
yy243:
3816
26
    YYDEBUG(243, *YYCURSOR);
3817
26
    yyaccept = 1;
3818
26
    YYMARKER = ++YYCURSOR;
3819
26
    YYFILL(1);
3820
26
    yych = *YYCURSOR;
3821
26
    YYDEBUG(244, *YYCURSOR);
3822
26
    if (yybm[0+yych] & 32) {
3823
20
      goto yy243;
3824
20
    }
3825
6
    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
6
    } else {
3838
6
      if (yych <= ';') {
3839
2
        if (yych <= '-') {
3840
0
          if (yych >= '(') goto yy232;
3841
2
        } else {
3842
2
          if (yych <= '.') goto yy258;
3843
0
          if (yych <= ':') goto yy232;
3844
0
        }
3845
4
      } else {
3846
4
        if (yych <= '\\') {
3847
0
          if (yych <= '[') goto yy232;
3848
0
          goto yy249;
3849
4
        } else {
3850
4
          if (yych != '}') goto yy232;
3851
4
        }
3852
4
      }
3853
6
    }
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
182
yy246:
3863
182
    YYDEBUG(246, *YYCURSOR);
3864
182
    yyaccept = 2;
3865
182
    YYMARKER = ++YYCURSOR;
3866
182
    YYFILL(1);
3867
182
    yych = *YYCURSOR;
3868
182
    YYDEBUG(247, *YYCURSOR);
3869
182
    if (yybm[0+yych] & 64) {
3870
161
      goto yy246;
3871
161
    }
3872
21
    if (yych <= '$') {
3873
13
      if (yych <= '\r') {
3874
6
        if (yych == '\n') goto yy248;
3875
0
        if (yych <= '\f') goto yy232;
3876
7
      } else {
3877
7
        if (yych == '"') goto yy248;
3878
3
        if (yych <= '#') goto yy232;
3879
0
        goto yy252;
3880
3
      }
3881
13
    } else {
3882
8
      if (yych <= ';') {
3883
0
        if (yych == '\'') goto yy248;
3884
0
        if (yych <= ':') goto yy232;
3885
8
      } else {
3886
8
        if (yych <= '\\') {
3887
6
          if (yych <= '[') goto yy232;
3888
0
          goto yy249;
3889
6
        } else {
3890
2
          if (yych != '}') goto yy232;
3891
2
        }
3892
8
      }
3893
8
    }
3894
10
yy248:
3895
10
    YYDEBUG(248, *YYCURSOR);
3896
10
    yyleng = YYCURSOR - SCNG(yy_text);
3897
10
#line 576 "Zend/zend_ini_scanner.l"
3898
10
    { /* Get constant option value */
3899
10
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
3900
0
}
3901
0
#line 3902 "Zend/zend_ini_scanner.c"
3902
14
yy249:
3903
14
    YYDEBUG(249, *YYCURSOR);
3904
14
    ++YYCURSOR;
3905
14
    YYFILL(1);
3906
14
    yych = *YYCURSOR;
3907
14
    goto yy232;
3908
8
yy250:
3909
8
    YYDEBUG(250, *YYCURSOR);
3910
8
    ++YYCURSOR;
3911
8
    YYDEBUG(251, *YYCURSOR);
3912
8
    yyleng = YYCURSOR - SCNG(yy_text);
3913
8
#line 486 "Zend/zend_ini_scanner.l"
3914
8
    { /* Variable/fallback end */
3915
8
  yy_pop_state();
3916
8
  return '}';
3917
14
}
3918
0
#line 3919 "Zend/zend_ini_scanner.c"
3919
12
yy252:
3920
12
    YYDEBUG(252, *YYCURSOR);
3921
12
    ++YYCURSOR;
3922
12
    YYFILL(1);
3923
12
    yych = *YYCURSOR;
3924
12
    if (yych <= '\\') {
3925
10
      if (yych <= 0x00) goto yy253;
3926
10
      if (yych <= '[') goto yy232;
3927
0
      goto yy254;
3928
10
    } else {
3929
2
      if (yych != '{') goto yy232;
3930
2
    }
3931
2
yy253:
3932
2
    YYDEBUG(253, *YYCURSOR);
3933
2
    YYCURSOR = YYMARKER;
3934
2
    if (yyaccept <= 1) {
3935
2
      if (yyaccept == 0) {
3936
2
        goto yy234;
3937
2
      } else {
3938
0
        goto yy245;
3939
0
      }
3940
2
    } 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
2
yy256:
3954
2
    YYDEBUG(256, *YYCURSOR);
3955
2
    ++YYCURSOR;
3956
2
    YYDEBUG(257, *YYCURSOR);
3957
2
    yyleng = YYCURSOR - SCNG(yy_text);
3958
2
#line 422 "Zend/zend_ini_scanner.l"
3959
2
    { /* Variable start */
3960
2
  yy_push_state(ST_VARNAME);
3961
2
  return TC_DOLLAR_CURLY;
3962
0
}
3963
0
#line 3964 "Zend/zend_ini_scanner.c"
3964
10
yy258:
3965
10
    YYDEBUG(258, *YYCURSOR);
3966
10
    yyaccept = 1;
3967
10
    YYMARKER = ++YYCURSOR;
3968
10
    YYFILL(1);
3969
10
    yych = *YYCURSOR;
3970
10
    YYDEBUG(259, *YYCURSOR);
3971
10
    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
10
    } else {
3986
10
      if (yych <= ';') {
3987
8
        if (yych <= '/') {
3988
0
          if (yych <= '\'') goto yy245;
3989
0
          goto yy232;
3990
8
        } else {
3991
8
          if (yych <= '9') goto yy258;
3992
0
          if (yych <= ':') goto yy232;
3993
0
          goto yy245;
3994
0
        }
3995
8
      } else {
3996
2
        if (yych <= '\\') {
3997
0
          if (yych <= '[') goto yy232;
3998
0
          goto yy249;
3999
2
        } else {
4000
2
          if (yych == '}') goto yy245;
4001
2
          goto yy232;
4002
2
        }
4003
2
      }
4004
10
    }
4005
10
  }
4006
/* *********************************** */
4007
1.22k
yyc_ST_VARNAME:
4008
1.22k
  YYDEBUG(260, *YYCURSOR);
4009
1.22k
  YYFILL(2);
4010
1.22k
  yych = *YYCURSOR;
4011
1.22k
  if (yych <= ')') {
4012
566
    if (yych <= ' ') {
4013
84
      if (yych <= '\n') {
4014
4
        if (yych <= 0x00) goto yy262;
4015
4
        if (yych <= 0x08) goto yy264;
4016
80
      } else {
4017
80
        if (yych != '\r') goto yy264;
4018
80
      }
4019
482
    } else {
4020
482
      if (yych <= '$') {
4021
333
        if (yych == '#') goto yy264;
4022
333
      } else {
4023
149
        if (yych == '&') goto yy262;
4024
148
        if (yych <= '\'') goto yy264;
4025
148
      }
4026
482
    }
4027
656
  } else {
4028
656
    if (yych <= '[') {
4029
431
      if (yych <= ';') {
4030
123
        if (yych <= '9') goto yy264;
4031
37
        if (yych <= ':') goto yy266;
4032
308
      } else {
4033
308
        if (yych == '=') goto yy262;
4034
308
        if (yych <= 'Z') goto yy264;
4035
308
      }
4036
431
    } else {
4037
225
      if (yych <= 'z') {
4038
48
        if (yych <= '\\') goto yy264;
4039
48
        if (yych >= '_') goto yy264;
4040
177
      } else {
4041
177
        if (yych == '}') goto yy267;
4042
174
        if (yych >= 0x7F) goto yy264;
4043
174
      }
4044
225
    }
4045
656
  }
4046
571
yy262:
4047
571
  YYDEBUG(262, *YYCURSOR);
4048
571
  ++YYCURSOR;
4049
571
  YYDEBUG(263, *YYCURSOR);
4050
571
  yyleng = YYCURSOR - SCNG(yy_text);
4051
571
#line 686 "Zend/zend_ini_scanner.l"
4052
571
  {
4053
571
  return 0;
4054
1.22k
}
4055
0
#line 4056 "Zend/zend_ini_scanner.c"
4056
612
yy264:
4057
612
  YYDEBUG(264, *YYCURSOR);
4058
612
  ++YYCURSOR;
4059
612
yy265:
4060
612
  YYDEBUG(265, *YYCURSOR);
4061
612
  yyleng = YYCURSOR - SCNG(yy_text);
4062
612
#line 434 "Zend/zend_ini_scanner.l"
4063
612
  { /* Variable name */
4064
612
  if (YYCURSOR[0] == ':' && YYCURSOR[1] == '-') {
4065
0
    YYCURSOR++;
4066
0
    goto fallback_lexing;
4067
0
  }
4068
4069
14.7k
  while (YYCURSOR < YYLIMIT) {
4070
14.7k
    switch (*YYCURSOR++) {
4071
0
      case '=':
4072
4
      case '\n':
4073
83
      case '\r':
4074
83
      case '\t':
4075
84
      case ';':
4076
85
      case '&':
4077
85
      case '|':
4078
85
      case '^':
4079
86
      case '$':
4080
89
      case '~':
4081
92
      case '(':
4082
237
      case ')':
4083
237
      case '{':
4084
238
      case '}':
4085
238
      case '!':
4086
570
      case '"':
4087
570
      case '[':
4088
570
      case ']':
4089
570
        break;
4090
      /* ':' is only allowed if it isn't followed by '-'. */
4091
451
      case ':':
4092
451
        if (YYCURSOR[0] == '-') {
4093
36
          break;
4094
415
        } else {
4095
415
          continue;
4096
415
        }
4097
13.7k
      default:
4098
13.7k
        continue;
4099
14.7k
    }
4100
4101
606
    YYCURSOR--;
4102
606
    yyleng = YYCURSOR - SCNG(yy_text);
4103
606
    break;
4104
14.7k
  }
4105
4106
  /* Eat leading whitespace */
4107
612
  EAT_LEADING_WHITESPACE();
4108
4109
  /* Eat trailing whitespace */
4110
612
  EAT_TRAILING_WHITESPACE();
4111
4112
612
  RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
4113
0
}
4114
0
#line 4115 "Zend/zend_ini_scanner.c"
4115
36
yy266:
4116
36
  YYDEBUG(266, *YYCURSOR);
4117
36
  yych = *++YYCURSOR;
4118
36
  if (yych == '-') goto yy269;
4119
0
  goto yy265;
4120
3
yy267:
4121
3
  YYDEBUG(267, *YYCURSOR);
4122
3
  ++YYCURSOR;
4123
3
  YYDEBUG(268, *YYCURSOR);
4124
3
  yyleng = YYCURSOR - SCNG(yy_text);
4125
3
#line 486 "Zend/zend_ini_scanner.l"
4126
3
  { /* Variable/fallback end */
4127
3
  yy_pop_state();
4128
3
  return '}';
4129
36
}
4130
0
#line 4131 "Zend/zend_ini_scanner.c"
4131
36
yy269:
4132
36
  YYDEBUG(269, *YYCURSOR);
4133
36
  ++YYCURSOR;
4134
36
  YYDEBUG(270, *YYCURSOR);
4135
36
  yyleng = YYCURSOR - SCNG(yy_text);
4136
36
#line 427 "Zend/zend_ini_scanner.l"
4137
36
  { /* End Variable name, fallback start */
4138
36
fallback_lexing:
4139
36
  yy_pop_state();
4140
36
  yy_push_state(ST_VAR_FALLBACK);
4141
36
  return TC_FALLBACK;
4142
36
}
4143
0
#line 4144 "Zend/zend_ini_scanner.c"
4144
/* *********************************** */
4145
445
yyc_ST_RAW:
4146
445
  {
4147
445
    static const unsigned char yybm[] = {
4148
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4149
445
       64, 192,   0,  64,  64,   0,  64,  64, 
4150
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4151
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4152
445
      192,  64,  64,  64,  64,  64,  64,  64, 
4153
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4154
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4155
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4156
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4157
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4158
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4159
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4160
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4161
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4162
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4163
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4164
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4165
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4166
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4167
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4168
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4169
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4170
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4171
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4172
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4173
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4174
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4175
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4176
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4177
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4178
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4179
445
       64,  64,  64,  64,  64,  64,  64,  64, 
4180
445
    };
4181
445
    YYDEBUG(271, *YYCURSOR);
4182
445
    YYFILL(3);
4183
445
    yych = *YYCURSOR;
4184
445
    if (yych <= '\f') {
4185
200
      if (yych <= 0x08) {
4186
2
        if (yych >= 0x01) goto yy275;
4187
198
      } else {
4188
198
        if (yych <= '\t') goto yy277;
4189
198
        if (yych <= '\n') goto yy278;
4190
0
        goto yy275;
4191
198
      }
4192
245
    } else {
4193
245
      if (yych <= ' ') {
4194
7
        if (yych <= '\r') goto yy280;
4195
1
        if (yych <= 0x1F) goto yy275;
4196
0
        goto yy277;
4197
238
      } else {
4198
238
        if (yych == ';') goto yy281;
4199
232
        goto yy275;
4200
238
      }
4201
245
    }
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
445
}
4211
0
#line 4212 "Zend/zend_ini_scanner.c"
4212
235
yy275:
4213
235
    YYDEBUG(275, *YYCURSOR);
4214
235
    ++YYCURSOR;
4215
235
yy276:
4216
235
    YYDEBUG(276, *YYCURSOR);
4217
235
    yyleng = YYCURSOR - SCNG(yy_text);
4218
235
#line 522 "Zend/zend_ini_scanner.l"
4219
235
    { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
4220
235
  const unsigned char *sc = NULL;
4221
235
  EAT_LEADING_WHITESPACE();
4222
3.39k
  while (YYCURSOR < YYLIMIT) {
4223
3.36k
    switch (*YYCURSOR) {
4224
198
      case '\n':
4225
204
      case '\r':
4226
204
        goto end_raw_value_chars;
4227
0
        break;
4228
173
      case ';':
4229
173
        if (sc == NULL) {
4230
149
          sc = YYCURSOR;
4231
149
        }
4232
173
        YYCURSOR++;
4233
173
        break;
4234
265
      case '"':
4235
265
        if (yytext[0] == '"') {
4236
152
          sc = NULL;
4237
152
        }
4238
265
        YYCURSOR++;
4239
265
        break;
4240
2.71k
      default:
4241
2.71k
        YYCURSOR++;
4242
2.71k
        break;
4243
3.36k
    }
4244
3.36k
  }
4245
235
end_raw_value_chars:
4246
235
  if (sc) {
4247
104
    yyleng = sc - SCNG(yy_text);
4248
131
  } else {
4249
131
    yyleng = YYCURSOR - SCNG(yy_text);
4250
131
  }
4251
4252
235
  EAT_TRAILING_WHITESPACE();
4253
4254
  /* Eat leading and trailing double quotes */
4255
235
  if (yyleng > 1 && yytext[0] == '"' && yytext[yyleng - 1] == '"') {
4256
123
    SCNG(yy_text)++;
4257
123
    yyleng = yyleng - 2;
4258
123
  }
4259
4260
235
  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
198
yy278:
4281
198
    YYDEBUG(278, *YYCURSOR);
4282
198
    ++YYCURSOR;
4283
204
yy279:
4284
204
    YYDEBUG(279, *YYCURSOR);
4285
204
    yyleng = YYCURSOR - SCNG(yy_text);
4286
204
#line 570 "Zend/zend_ini_scanner.l"
4287
204
    { /* End of option value */
4288
204
  BEGIN(INITIAL);
4289
204
  SCNG(lineno)++;
4290
204
  return END_OF_LINE;
4291
198
}
4292
0
#line 4293 "Zend/zend_ini_scanner.c"
4293
6
yy280:
4294
6
    YYDEBUG(280, *YYCURSOR);
4295
6
    yych = *++YYCURSOR;
4296
6
    if (yych == '\n') goto yy278;
4297
6
    goto yy279;
4298
28
yy281:
4299
28
    YYDEBUG(281, *YYCURSOR);
4300
28
    ++YYCURSOR;
4301
28
    YYFILL(2);
4302
24
    yych = *YYCURSOR;
4303
24
    YYDEBUG(282, *YYCURSOR);
4304
24
    if (yybm[0+yych] & 64) {
4305
22
      goto yy281;
4306
22
    }
4307
2
    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
2
yy286:
4336
2
    YYDEBUG(286, *YYCURSOR);
4337
2
    ++YYCURSOR;
4338
2
yy287:
4339
2
    YYDEBUG(287, *YYCURSOR);
4340
2
    yyleng = YYCURSOR - SCNG(yy_text);
4341
2
#line 675 "Zend/zend_ini_scanner.l"
4342
2
    { /* Comment */
4343
2
  BEGIN(INITIAL);
4344
2
  SCNG(lineno)++;
4345
2
  return END_OF_LINE;
4346
2
}
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
}