Coverage Report

Created: 2026-02-14 06:52

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