Coverage Report

Created: 2026-06-13 07:01

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