Coverage Report

Created: 2026-02-09 07:07

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.72M
#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
28.3M
#define YYFILL(n) { if (YYCURSOR > YYLIMIT) return 0; }
48
99.5M
#define YYCURSOR  SCNG(yy_cursor)
49
41.1M
#define YYLIMIT   SCNG(yy_limit)
50
7.59M
#define YYMARKER  SCNG(yy_marker)
51
52
11.8M
#define YYGETCONDITION()  SCNG(yy_state)
53
1.84M
#define YYSETCONDITION(s) SCNG(yy_state) = s
54
55
51.6k
#define STATE(name)  yyc##name
56
57
/* emulate flex constructs */
58
561k
#define BEGIN(state) YYSETCONDITION(STATE(state))
59
51.6k
#define YYSTATE      YYGETCONDITION()
60
3.83M
#define yytext       ((const char*)SCNG(yy_text))
61
7.72M
#define yyleng       SCNG(yy_leng)
62
5.56k
#define yyless(x)    do { YYCURSOR = (const unsigned char*)yytext + x; \
63
5.56k
              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
190M
#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
499k
  while (yyleng) {                                 \
120
499k
    if (yytext[0] == ' ' || yytext[0] == '\t') { \
121
36.8k
      SCNG(yy_text)++;                         \
122
36.8k
      yyleng--;                                \
123
462k
    } else {                                     \
124
462k
      break;                                   \
125
462k
    }                                            \
126
499k
  }
127
128
/* Eat trailing whitespace + extra char */
129
#define EAT_TRAILING_WHITESPACE_EX(ch)              \
130
576k
  while (yyleng && (                              \
131
574k
    (ch != 'X' && yytext[yyleng - 1] ==  ch) || \
132
574k
    yytext[yyleng - 1] == '\n' ||               \
133
574k
    yytext[yyleng - 1] == '\r' ||               \
134
574k
    yytext[yyleng - 1] == '\t' ||               \
135
574k
    yytext[yyleng - 1] == ' ')                  \
136
464k
  ) {                                             \
137
112k
    yyleng--;                                   \
138
112k
  }
139
140
/* Eat trailing whitespace */
141
454k
#define EAT_TRAILING_WHITESPACE() EAT_TRAILING_WHITESPACE_EX('X')
142
143
#define zend_ini_copy_value(retval, str, len) \
144
1.67M
  ZVAL_NEW_STR(retval, zend_string_init(str, len, ZEND_SYSTEM_INI))
145
146
147
1.32M
#define RETURN_TOKEN(type, str, len) {                             \
148
1.32M
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_TYPED &&            \
149
1.32M
    (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW))) {\
150
1.87k
    zend_ini_copy_typed_value(ini_lval, type, str, len);       \
151
1.32M
  } else {                                                       \
152
1.32M
    zend_ini_copy_value(ini_lval, str, len);                   \
153
1.32M
  }                                                              \
154
1.32M
  Z_EXTRA_P(ini_lval) = 0;                                       \
155
1.32M
  return type;                                                   \
156
1.32M
}
157
158
static void zend_ini_copy_typed_value(zval *retval, const int type, const char *str, int len)
159
1.87k
{
160
1.87k
  switch (type) {
161
1
    case BOOL_FALSE:
162
105
    case BOOL_TRUE:
163
105
      ZVAL_BOOL(retval, type == BOOL_TRUE);
164
105
      break;
165
166
22
    case NULL_NULL:
167
22
      ZVAL_NULL(retval);
168
22
      break;
169
170
1.74k
    default:
171
1.74k
      zend_ini_copy_value(retval, str, len);
172
1.87k
  }
173
1.87k
}
174
175
static void _yy_push_state(int new_state)
176
644k
{
177
644k
  zend_stack_push(&SCNG(state_stack), (void *) &YYGETCONDITION());
178
644k
  YYSETCONDITION(new_state);
179
644k
}
180
181
644k
#define yy_push_state(state_and_tsrm) _yy_push_state(yyc##state_and_tsrm)
182
183
static void yy_pop_state(void)
184
638k
{
185
638k
  int *stack_state = zend_stack_top(&SCNG(state_stack));
186
638k
  YYSETCONDITION(*stack_state);
187
638k
  zend_stack_del_top(&SCNG(state_stack));
188
638k
}
189
190
static void yy_scan_buffer(const char *str, unsigned int len)
191
61.5k
{
192
61.5k
  YYCURSOR = (const YYCTYPE*)str;
193
61.5k
  SCNG(yy_start) = YYCURSOR;
194
61.5k
  YYLIMIT  = YYCURSOR + len;
195
61.5k
}
196
197
165k
#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
61.5k
{
202
  /* Sanity check */
203
61.5k
  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
61.5k
  SCNG(lineno) = 1;
209
61.5k
  SCNG(scanner_mode) = scanner_mode;
210
61.5k
  SCNG(yy_in) = fh;
211
212
61.5k
  if (fh != NULL) {
213
0
    ini_filename = zend_string_copy(fh->filename);
214
61.5k
  } else {
215
61.5k
    ini_filename = NULL;
216
61.5k
  }
217
218
61.5k
  zend_stack_init(&SCNG(state_stack), sizeof(int));
219
61.5k
  BEGIN(INITIAL);
220
221
61.5k
  return SUCCESS;
222
61.5k
}
223
/* }}} */
224
225
/* {{{ shutdown_ini_scanner() */
226
void shutdown_ini_scanner(void)
227
61.5k
{
228
61.5k
  zend_stack_destroy(&SCNG(state_stack));
229
61.5k
  if (ini_filename) {
230
0
    zend_string_release(ini_filename);
231
0
  }
232
61.5k
}
233
/* }}} */
234
235
/* {{{ zend_ini_scanner_get_lineno() */
236
ZEND_COLD uint32_t zend_ini_scanner_get_lineno(void)
237
42.3k
{
238
42.3k
  return SCNG(lineno);
239
42.3k
}
240
/* }}} */
241
242
/* {{{ zend_ini_scanner_get_filename() */
243
ZEND_COLD const char *zend_ini_scanner_get_filename(void)
244
42.3k
{
245
42.3k
  return ini_filename ? ZSTR_VAL(ini_filename) : "Unknown";
246
42.3k
}
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
9
{
252
9
  char *buf;
253
9
  size_t size;
254
255
9
  if (zend_stream_fixup(fh, &buf, &size) == FAILURE) {
256
5
    return FAILURE;
257
5
  }
258
259
4
  if (init_ini_scanner(scanner_mode, fh) == FAILURE) {
260
4
    return FAILURE;
261
4
  }
262
263
0
  yy_scan_buffer(buf, (unsigned int)size);
264
265
0
  return SUCCESS;
266
4
}
267
/* }}} */
268
269
/* {{{ zend_ini_prepare_string_for_scanning() */
270
zend_result zend_ini_prepare_string_for_scanning(const char *str, int scanner_mode)
271
61.5k
{
272
61.5k
  int len = (int)strlen(str);
273
274
61.5k
  if (init_ini_scanner(scanner_mode, NULL) == FAILURE) {
275
0
    return FAILURE;
276
0
  }
277
278
61.5k
  yy_scan_buffer(str, len);
279
280
61.5k
  return SUCCESS;
281
61.5k
}
282
/* }}} */
283
284
/* {{{ zend_ini_escape_string() */
285
static void zend_ini_escape_string(zval *lval, const char *str, int len, char quote_type)
286
353k
{
287
353k
  char *s, *t;
288
353k
  char *end;
289
290
353k
  zend_ini_copy_value(lval, str, len);
291
292
  /* convert escape sequences */
293
353k
  s = t = Z_STRVAL_P(lval);
294
353k
  end = s + Z_STRLEN_P(lval);
295
296
8.43M
  while (s < end) {
297
8.08M
    if (*s == '\\') {
298
42.8k
      s++;
299
42.8k
      if (s >= end) {
300
58
        *t++ = '\\';
301
58
        continue;
302
58
      }
303
42.7k
      switch (*s) {
304
624
        case '"':
305
624
          if (*s != quote_type) {
306
0
            *t++ = '\\';
307
0
            *t++ = *s;
308
0
            break;
309
0
          }
310
624
          ZEND_FALLTHROUGH;
311
9.36k
        case '\\':
312
9.51k
        case '$':
313
9.51k
          *t++ = *s;
314
9.51k
          Z_STRLEN_P(lval)--;
315
9.51k
          break;
316
33.2k
        default:
317
33.2k
          *t++ = '\\';
318
33.2k
          *t++ = *s;
319
33.2k
          break;
320
42.7k
      }
321
8.04M
    } else {
322
8.04M
      *t++ = *s;
323
8.04M
    }
324
8.08M
    if (*s == '\n' || (*s == '\r' && (*(s+1) != '\n'))) {
325
198k
      SCNG(lineno)++;
326
198k
    }
327
8.08M
    s++;
328
8.08M
  }
329
353k
  *t = 0;
330
353k
}
331
/* }}} */
332
333
int ini_lex(zval *ini_lval)
334
3.73M
{
335
3.75M
restart:
336
3.75M
  SCNG(yy_text) = YYCURSOR;
337
338
/* yymore_restart: */
339
  /* detect EOF */
340
3.75M
  if (YYCURSOR >= YYLIMIT) {
341
24.6k
    if (YYSTATE == STATE(ST_VALUE) || YYSTATE == STATE(ST_RAW)) {
342
6.49k
      BEGIN(INITIAL);
343
6.49k
      return END_OF_LINE;
344
6.49k
    }
345
18.1k
    return 0;
346
24.6k
  }
347
348
  /* Eat any UTF-8 BOM we find in the first 3 bytes */
349
3.73M
  if (YYCURSOR == SCNG(yy_start) && YYCURSOR + 3 < YYLIMIT) {
350
59.3k
    if (memcmp(YYCURSOR, "\xef\xbb\xbf", 3) == 0) {
351
1.41k
      YYCURSOR += 3;
352
1.41k
      goto restart;
353
1.41k
    }
354
59.3k
  }
355
356
3.72M
#line 357 "Zend/zend_ini_scanner.c"
357
3.72M
{
358
3.72M
  YYCTYPE yych;
359
3.72M
  unsigned int yyaccept = 0;
360
3.72M
  if (YYGETCONDITION() < 4) {
361
2.73M
    if (YYGETCONDITION() < 2) {
362
1.55M
      if (YYGETCONDITION() < 1) {
363
1.00M
        goto yyc_INITIAL;
364
1.00M
      } else {
365
551k
        goto yyc_ST_OFFSET;
366
551k
      }
367
1.55M
    } else {
368
1.17M
      if (YYGETCONDITION() < 3) {
369
86.3k
        goto yyc_ST_SECTION_VALUE;
370
1.09M
      } else {
371
1.09M
        goto yyc_ST_VALUE;
372
1.09M
      }
373
1.17M
    }
374
2.73M
  } else {
375
992k
    if (YYGETCONDITION() < 6) {
376
991k
      if (YYGETCONDITION() < 5) {
377
44
        goto yyc_ST_SECTION_RAW;
378
991k
      } else {
379
991k
        goto yyc_ST_DOUBLE_QUOTES;
380
991k
      }
381
991k
    } else {
382
512
      if (YYGETCONDITION() < 7) {
383
17
        goto yyc_ST_VAR_FALLBACK;
384
495
      } else {
385
495
        if (YYGETCONDITION() < 8) {
386
42
          goto yyc_ST_VARNAME;
387
453
        } else {
388
453
          goto yyc_ST_RAW;
389
453
        }
390
495
      }
391
512
    }
392
992k
  }
393
/* *********************************** */
394
1.00M
yyc_INITIAL:
395
1.00M
  {
396
1.00M
    static const unsigned char yybm[] = {
397
1.00M
      128, 144, 144, 144, 144, 144, 144, 144, 
398
1.00M
      144, 160,   0, 144, 144,   0, 144, 144, 
399
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
400
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
401
1.00M
      240, 128, 128, 144, 128, 144, 128, 144, 
402
1.00M
      128, 128, 144, 144, 144, 144, 144, 144, 
403
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
404
1.00M
      144, 144, 144, 128, 144, 128, 144, 144, 
405
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
406
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
407
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
408
1.00M
      144, 144, 144, 128, 144, 128, 128, 144, 
409
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
410
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
411
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
412
1.00M
      144, 144, 144, 128, 128, 128, 128, 144, 
413
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
414
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
415
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
416
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
417
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
418
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
419
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
420
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
421
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
422
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
423
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
424
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
425
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
426
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
427
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
428
1.00M
      144, 144, 144, 144, 144, 144, 144, 144, 
429
1.00M
    };
430
1.00M
    YYDEBUG(1, *YYCURSOR);
431
1.00M
    YYFILL(5);
432
1.00M
    yych = *YYCURSOR;
433
1.00M
    if (yybm[0+yych] & 64) {
434
22.7k
      goto yy14;
435
22.7k
    }
436
984k
    if (yych <= 'M') {
437
703k
      if (yych <= '$') {
438
256k
        if (yych <= '\f') {
439
121k
          if (yych <= 0x08) {
440
4.50k
            if (yych >= 0x01) goto yy5;
441
117k
          } else {
442
117k
            if (yych <= '\t') goto yy8;
443
95.6k
            if (yych <= '\n') goto yy11;
444
13.7k
            goto yy5;
445
95.6k
          }
446
134k
        } else {
447
134k
          if (yych <= 0x1F) {
448
124k
            if (yych <= '\r') goto yy13;
449
3.67k
            goto yy5;
450
124k
          } else {
451
9.78k
            if (yych == '#') goto yy5;
452
3.78k
            goto yy16;
453
9.78k
          }
454
134k
        }
455
446k
      } else {
456
446k
        if (yych <= ':') {
457
149k
          if (yych <= '&') {
458
1.15k
            if (yych <= '%') goto yy5;
459
472
            goto yy16;
460
148k
          } else {
461
148k
            if (yych <= '\'') goto yy5;
462
147k
            if (yych <= ')') goto yy16;
463
145k
            goto yy5;
464
147k
          }
465
297k
        } else {
466
297k
          if (yych <= '=') {
467
290k
            if (yych <= ';') goto yy18;
468
202k
            if (yych <= '<') goto yy5;
469
198k
            goto yy20;
470
202k
          } else {
471
6.42k
            if (yych == 'F') goto yy23;
472
6.21k
            goto yy5;
473
6.42k
          }
474
297k
        }
475
446k
      }
476
703k
    } else {
477
281k
      if (yych <= 'e') {
478
75.2k
        if (yych <= 'X') {
479
15.9k
          if (yych <= 'O') {
480
4.44k
            if (yych <= 'N') goto yy24;
481
355
            goto yy25;
482
11.4k
          } else {
483
11.4k
            if (yych == 'T') goto yy26;
484
1.14k
            goto yy5;
485
11.4k
          }
486
59.2k
        } else {
487
59.2k
          if (yych <= '[') {
488
12.9k
            if (yych <= 'Y') goto yy27;
489
12.7k
            if (yych <= 'Z') goto yy5;
490
12.6k
            goto yy28;
491
46.3k
          } else {
492
46.3k
            if (yych <= '\\') goto yy5;
493
46.2k
            if (yych <= '^') goto yy16;
494
45.2k
            goto yy5;
495
46.2k
          }
496
59.2k
        }
497
205k
      } else {
498
205k
        if (yych <= 's') {
499
29.7k
          if (yych <= 'm') {
500
10.9k
            if (yych <= 'f') goto yy23;
501
8.99k
            goto yy5;
502
18.7k
          } else {
503
18.7k
            if (yych <= 'n') goto yy24;
504
18.0k
            if (yych <= 'o') goto yy25;
505
5.22k
            goto yy5;
506
18.0k
          }
507
176k
        } else {
508
176k
          if (yych <= 'y') {
509
11.8k
            if (yych <= 't') goto yy26;
510
4.23k
            if (yych <= 'x') goto yy5;
511
149
            goto yy27;
512
164k
          } else {
513
164k
            if (yych <= 'z') goto yy5;
514
163k
            if (yych <= '~') goto yy16;
515
162k
            goto yy5;
516
163k
          }
517
176k
        }
518
205k
      }
519
281k
    }
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
984k
}
528
0
#line 529 "Zend/zend_ini_scanner.c"
529
2.85M
yy5:
530
2.85M
    YYDEBUG(5, *YYCURSOR);
531
2.85M
    ++YYCURSOR;
532
2.85M
    YYFILL(1);
533
2.85M
    yych = *YYCURSOR;
534
2.87M
yy6:
535
2.87M
    YYDEBUG(6, *YYCURSOR);
536
2.87M
    if (yybm[0+yych] & 16) {
537
2.41M
      goto yy5;
538
2.41M
    }
539
462k
    if (yych <= '=') goto yy7;
540
11.1k
    if (yych <= '[') goto yy30;
541
454k
yy7:
542
454k
    YYDEBUG(7, *YYCURSOR);
543
454k
    yyleng = YYCURSOR - SCNG(yy_text);
544
454k
#line 503 "Zend/zend_ini_scanner.l"
545
454k
    { /* Get option name */
546
  /* Eat leading whitespace */
547
454k
  EAT_LEADING_WHITESPACE();
548
549
  /* Eat trailing whitespace */
550
454k
  EAT_TRAILING_WHITESPACE();
551
552
454k
  RETURN_TOKEN(TC_LABEL, yytext, yyleng);
553
0
}
554
0
#line 555 "Zend/zend_ini_scanner.c"
555
61.9k
yy8:
556
61.9k
    YYDEBUG(8, *YYCURSOR);
557
61.9k
    ++YYCURSOR;
558
61.9k
    YYFILL(2);
559
61.9k
    yych = *YYCURSOR;
560
61.9k
    YYDEBUG(9, *YYCURSOR);
561
61.9k
    if (yybm[0+yych] & 32) {
562
40.4k
      goto yy8;
563
40.4k
    }
564
21.5k
    if (yych <= '\r') {
565
851
      if (yych <= 0x08) goto yy10;
566
776
      if (yych <= '\n') goto yy11;
567
509
      if (yych >= '\r') goto yy13;
568
20.7k
    } else {
569
20.7k
      if (yych <= ';') {
570
2.42k
        if (yych >= ';') goto yy18;
571
18.2k
      } else {
572
18.2k
        if (yych == '=') goto yy20;
573
18.2k
      }
574
20.7k
    }
575
20.4k
yy10:
576
20.4k
    YYDEBUG(10, *YYCURSOR);
577
20.4k
    yyleng = YYCURSOR - SCNG(yy_text);
578
20.4k
#line 665 "Zend/zend_ini_scanner.l"
579
20.4k
    {
580
  /* eat whitespace */
581
20.4k
  goto restart;
582
21.5k
}
583
0
#line 584 "Zend/zend_ini_scanner.c"
584
102k
yy11:
585
102k
    YYDEBUG(11, *YYCURSOR);
586
102k
    ++YYCURSOR;
587
205k
yy12:
588
205k
    YYDEBUG(12, *YYCURSOR);
589
205k
    yyleng = YYCURSOR - SCNG(yy_text);
590
205k
#line 670 "Zend/zend_ini_scanner.l"
591
205k
    {
592
205k
  SCNG(lineno)++;
593
205k
  return END_OF_LINE;
594
102k
}
595
0
#line 596 "Zend/zend_ini_scanner.c"
596
121k
yy13:
597
121k
    YYDEBUG(13, *YYCURSOR);
598
121k
    yych = *++YYCURSOR;
599
121k
    if (yych == '\n') goto yy11;
600
102k
    goto yy12;
601
102k
yy14:
602
55.3k
    YYDEBUG(14, *YYCURSOR);
603
55.3k
    ++YYCURSOR;
604
55.3k
    YYFILL(2);
605
55.3k
    yych = *YYCURSOR;
606
55.3k
    YYDEBUG(15, *YYCURSOR);
607
55.3k
    if (yybm[0+yych] & 64) {
608
32.5k
      goto yy14;
609
32.5k
    }
610
22.7k
    if (yych <= '&') {
611
3.35k
      if (yych <= '\r') {
612
2.52k
        if (yych <= '\t') {
613
680
          if (yych <= 0x00) goto yy7;
614
371
          if (yych <= 0x08) goto yy5;
615
86
          goto yy8;
616
1.84k
        } else {
617
1.84k
          if (yych <= '\n') goto yy11;
618
611
          if (yych <= '\f') goto yy5;
619
608
          goto yy13;
620
611
        }
621
2.52k
      } else {
622
839
        if (yych <= '#') {
623
522
          if (yych <= 0x1F) goto yy5;
624
413
          if (yych <= '"') goto yy7;
625
10
          goto yy5;
626
413
        } else {
627
317
          if (yych == '%') goto yy5;
628
317
          goto yy7;
629
317
        }
630
839
      }
631
19.4k
    } else {
632
19.4k
      if (yych <= '=') {
633
10.1k
        if (yych <= ':') {
634
1.23k
          if (yych <= '\'') goto yy5;
635
873
          if (yych <= ')') goto yy7;
636
651
          goto yy5;
637
8.91k
        } else {
638
8.91k
          if (yych <= ';') goto yy18;
639
1.68k
          if (yych <= '<') goto yy5;
640
564
          goto yy20;
641
1.68k
        }
642
10.1k
      } else {
643
9.28k
        if (yych <= '\\') {
644
827
          if (yych == '[') goto yy30;
645
519
          goto yy5;
646
8.45k
        } else {
647
8.45k
          if (yych <= '^') goto yy7;
648
8.23k
          if (yych <= 'z') goto yy5;
649
4.33k
          if (yych <= '~') goto yy7;
650
4.18k
          goto yy5;
651
4.33k
        }
652
9.28k
      }
653
19.4k
    }
654
9.62k
yy16:
655
9.62k
    YYDEBUG(16, *YYCURSOR);
656
9.62k
    ++YYCURSOR;
657
9.62k
    YYDEBUG(17, *YYCURSOR);
658
9.62k
    yyleng = YYCURSOR - SCNG(yy_text);
659
9.62k
#line 584 "Zend/zend_ini_scanner.l"
660
9.62k
    { /* Disallow these chars outside option values */
661
9.62k
  return yytext[0];
662
22.7k
}
663
0
#line 664 "Zend/zend_ini_scanner.c"
664
3.89M
yy18:
665
3.89M
    YYDEBUG(18, *YYCURSOR);
666
3.89M
    ++YYCURSOR;
667
3.89M
    YYFILL(2);
668
3.89M
    yych = *YYCURSOR;
669
3.89M
    YYDEBUG(19, *YYCURSOR);
670
3.89M
    if (yybm[0+yych] & 128) {
671
3.79M
      goto yy18;
672
3.79M
    }
673
93.0k
    if (yych <= '\n') goto yy33;
674
8.59k
    goto yy35;
675
227k
yy20:
676
227k
    YYDEBUG(20, *YYCURSOR);
677
227k
    ++YYCURSOR;
678
227k
    YYFILL(1);
679
227k
    yych = *YYCURSOR;
680
227k
    YYDEBUG(21, *YYCURSOR);
681
227k
    if (yych == '\t') goto yy20;
682
226k
    if (yych == ' ') goto yy20;
683
199k
    YYDEBUG(22, *YYCURSOR);
684
199k
    yyleng = YYCURSOR - SCNG(yy_text);
685
199k
#line 513 "Zend/zend_ini_scanner.l"
686
199k
    { /* Start option value */
687
199k
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
688
248
    BEGIN(ST_RAW);
689
198k
  } else {
690
198k
    BEGIN(ST_VALUE);
691
198k
  }
692
199k
  return '=';
693
226k
}
694
0
#line 695 "Zend/zend_ini_scanner.c"
695
2.13k
yy23:
696
2.13k
    YYDEBUG(23, *YYCURSOR);
697
2.13k
    yych = *++YYCURSOR;
698
2.13k
    if (yych == 'A') goto yy36;
699
2.06k
    if (yych == 'a') goto yy36;
700
1.98k
    goto yy6;
701
4.80k
yy24:
702
4.80k
    YYDEBUG(24, *YYCURSOR);
703
4.80k
    yych = *++YYCURSOR;
704
4.80k
    if (yych <= 'U') {
705
3.93k
      if (yych == 'O') goto yy37;
706
3.93k
      if (yych <= 'T') goto yy6;
707
14
      goto yy39;
708
3.93k
    } else {
709
875
      if (yych <= 'o') {
710
637
        if (yych <= 'n') goto yy6;
711
258
        goto yy37;
712
637
      } else {
713
238
        if (yych == 'u') goto yy39;
714
229
        goto yy6;
715
238
      }
716
875
    }
717
13.1k
yy25:
718
13.1k
    YYDEBUG(25, *YYCURSOR);
719
13.1k
    yych = *++YYCURSOR;
720
13.1k
    if (yych <= 'N') {
721
11.1k
      if (yych == 'F') goto yy40;
722
11.1k
      if (yych <= 'M') goto yy6;
723
9.77k
      goto yy41;
724
11.1k
    } else {
725
2.07k
      if (yych <= 'f') {
726
137
        if (yych <= 'e') goto yy6;
727
3
        goto yy40;
728
1.94k
      } else {
729
1.94k
        if (yych == 'n') goto yy41;
730
485
        goto yy6;
731
1.94k
      }
732
2.07k
    }
733
18.0k
yy26:
734
18.0k
    YYDEBUG(26, *YYCURSOR);
735
18.0k
    yych = *++YYCURSOR;
736
18.0k
    if (yych == 'R') goto yy44;
737
18.0k
    if (yych == 'r') goto yy44;
738
17.5k
    goto yy6;
739
17.5k
yy27:
740
269
    YYDEBUG(27, *YYCURSOR);
741
269
    yych = *++YYCURSOR;
742
269
    if (yych == 'E') goto yy45;
743
269
    if (yych == 'e') goto yy45;
744
195
    goto yy6;
745
12.6k
yy28:
746
12.6k
    YYDEBUG(28, *YYCURSOR);
747
12.6k
    ++YYCURSOR;
748
12.6k
    YYDEBUG(29, *YYCURSOR);
749
12.6k
    yyleng = YYCURSOR - SCNG(yy_text);
750
12.6k
#line 379 "Zend/zend_ini_scanner.l"
751
12.6k
    { /* Section start */
752
  /* Enter section data lookup state */
753
12.6k
  if (SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW) {
754
23
    BEGIN(ST_SECTION_RAW);
755
12.6k
  } else {
756
12.6k
    BEGIN(ST_SECTION_VALUE);
757
12.6k
  }
758
12.6k
  return TC_SECTION;
759
269
}
760
0
#line 761 "Zend/zend_ini_scanner.c"
761
11.0k
yy30:
762
11.0k
    YYDEBUG(30, *YYCURSOR);
763
11.0k
    ++YYCURSOR;
764
11.0k
    YYFILL(1);
765
11.0k
    yych = *YYCURSOR;
766
11.0k
    YYDEBUG(31, *YYCURSOR);
767
11.0k
    if (yych == '\t') goto yy30;
768
10.8k
    if (yych == ' ') goto yy30;
769
9.85k
    YYDEBUG(32, *YYCURSOR);
770
9.85k
    yyleng = YYCURSOR - SCNG(yy_text);
771
9.85k
#line 404 "Zend/zend_ini_scanner.l"
772
9.85k
    { /* Start of option with offset */
773
  /* Eat leading whitespace */
774
9.85k
  EAT_LEADING_WHITESPACE();
775
776
  /* Eat trailing whitespace and [ */
777
9.85k
  EAT_TRAILING_WHITESPACE_EX('[');
778
779
  /* Enter offset lookup state */
780
9.85k
  BEGIN(ST_OFFSET);
781
782
9.85k
  RETURN_TOKEN(TC_OFFSET, yytext, yyleng);
783
0
}
784
0
#line 785 "Zend/zend_ini_scanner.c"
785
88.5k
yy33:
786
88.5k
    YYDEBUG(33, *YYCURSOR);
787
88.5k
    ++YYCURSOR;
788
93.0k
yy34:
789
93.0k
    YYDEBUG(34, *YYCURSOR);
790
93.0k
    yyleng = YYCURSOR - SCNG(yy_text);
791
93.0k
#line 675 "Zend/zend_ini_scanner.l"
792
93.0k
    { /* Comment */
793
93.0k
  BEGIN(INITIAL);
794
93.0k
  SCNG(lineno)++;
795
93.0k
  return END_OF_LINE;
796
88.5k
}
797
0
#line 798 "Zend/zend_ini_scanner.c"
798
8.59k
yy35:
799
8.59k
    YYDEBUG(35, *YYCURSOR);
800
8.59k
    yych = *++YYCURSOR;
801
8.59k
    if (yych == '\n') goto yy33;
802
4.47k
    goto yy34;
803
4.47k
yy36:
804
154
    YYDEBUG(36, *YYCURSOR);
805
154
    yych = *++YYCURSOR;
806
154
    if (yych == 'L') goto yy46;
807
154
    if (yych == 'l') goto yy46;
808
76
    goto yy6;
809
258
yy37:
810
258
    YYDEBUG(37, *YYCURSOR);
811
258
    yych = *++YYCURSOR;
812
258
    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
258
    } else {
832
258
      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
183
      } else {
842
183
        if (yych <= 'm') {
843
87
          if (yych <= '\\') goto yy6;
844
87
          if (yych >= '_') goto yy6;
845
96
        } else {
846
96
          if (yych <= 'n') goto yy51;
847
96
          if (yych <= 'z') goto yy6;
848
92
          if (yych >= 0x7F) goto yy6;
849
92
        }
850
183
      }
851
258
    }
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
23
yy39:
861
23
    YYDEBUG(39, *YYCURSOR);
862
23
    yych = *++YYCURSOR;
863
23
    if (yych == 'L') goto yy52;
864
23
    if (yych == 'l') goto yy52;
865
17
    goto yy6;
866
17
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
11.7k
yy41:
873
11.7k
    YYDEBUG(41, *YYCURSOR);
874
11.7k
    ++YYCURSOR;
875
11.7k
    YYFILL(1);
876
11.7k
    yych = *YYCURSOR;
877
11.7k
    YYDEBUG(42, *YYCURSOR);
878
11.7k
    if (yych <= '&') {
879
840
      if (yych <= '\r') {
880
154
        if (yych <= '\t') {
881
100
          if (yych <= 0x00) goto yy43;
882
5
          if (yych <= 0x08) goto yy5;
883
0
          goto yy53;
884
54
        } else {
885
54
          if (yych <= '\n') goto yy43;
886
0
          if (yych <= '\f') goto yy5;
887
0
        }
888
686
      } else {
889
686
        if (yych <= '"') {
890
613
          if (yych <= 0x1F) goto yy5;
891
488
          if (yych <= ' ') goto yy41;
892
488
        } else {
893
73
          if (yych == '$') goto yy43;
894
73
          if (yych <= '%') goto yy5;
895
73
        }
896
686
      }
897
10.9k
    } else {
898
10.9k
      if (yych <= '=') {
899
1.20k
        if (yych <= ':') {
900
1.01k
          if (yych <= '\'') goto yy5;
901
630
          if (yych >= '*') goto yy5;
902
630
        } else {
903
192
          if (yych == '<') goto yy5;
904
192
        }
905
9.71k
      } else {
906
9.71k
        if (yych <= '\\') {
907
8.76k
          if (yych == '[') goto yy30;
908
8.76k
          goto yy5;
909
8.76k
        } else {
910
951
          if (yych <= '^') goto yy43;
911
921
          if (yych <= 'z') goto yy5;
912
462
          if (yych >= 0x7F) goto yy5;
913
462
        }
914
9.71k
      }
915
10.9k
    }
916
368
yy43:
917
368
    YYDEBUG(43, *YYCURSOR);
918
368
    yyleng = YYCURSOR - SCNG(yy_text);
919
368
#line 491 "Zend/zend_ini_scanner.l"
920
368
    { /* TRUE value (when used outside option value/offset this causes parse error!) */
921
368
  RETURN_TOKEN(BOOL_TRUE, "1", 1);
922
0
}
923
0
#line 924 "Zend/zend_ini_scanner.c"
924
475
yy44:
925
475
    YYDEBUG(44, *YYCURSOR);
926
475
    yych = *++YYCURSOR;
927
475
    if (yych == 'U') goto yy55;
928
475
    if (yych == 'u') goto yy55;
929
473
    goto yy6;
930
473
yy45:
931
74
    YYDEBUG(45, *YYCURSOR);
932
74
    yych = *++YYCURSOR;
933
74
    if (yych == 'S') goto yy41;
934
74
    if (yych == 's') goto yy41;
935
0
    goto yy6;
936
78
yy46:
937
78
    YYDEBUG(46, *YYCURSOR);
938
78
    yych = *++YYCURSOR;
939
78
    if (yych == 'S') goto yy51;
940
78
    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
107
yy49:
952
107
    YYDEBUG(49, *YYCURSOR);
953
107
    ++YYCURSOR;
954
107
    YYFILL(1);
955
107
    yych = *YYCURSOR;
956
107
    YYDEBUG(50, *YYCURSOR);
957
107
    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
78
    } else {
980
78
      if (yych <= '=') {
981
78
        if (yych <= ':') {
982
49
          if (yych <= '\'') goto yy5;
983
49
          if (yych <= ')') goto yy38;
984
49
          goto yy5;
985
49
        } else {
986
29
          if (yych == '<') goto yy5;
987
29
          goto yy38;
988
29
        }
989
78
      } 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
78
    }
1001
78
yy51:
1002
78
    YYDEBUG(51, *YYCURSOR);
1003
78
    yych = *++YYCURSOR;
1004
78
    if (yych == 'E') goto yy49;
1005
78
    if (yych == 'e') goto yy49;
1006
0
    goto yy6;
1007
6
yy52:
1008
6
    YYDEBUG(52, *YYCURSOR);
1009
6
    yych = *++YYCURSOR;
1010
6
    if (yych == 'L') goto yy56;
1011
6
    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
6
yy56:
1029
6
    YYDEBUG(56, *YYCURSOR);
1030
6
    ++YYCURSOR;
1031
6
    YYFILL(1);
1032
6
    yych = *YYCURSOR;
1033
6
    YYDEBUG(57, *YYCURSOR);
1034
6
    if (yych <= '&') {
1035
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
6
    } else {
1054
6
      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
6
      } else {
1062
6
        if (yych <= '\\') {
1063
0
          if (yych == '[') goto yy30;
1064
0
          goto yy5;
1065
6
        } else {
1066
6
          if (yych <= '^') goto yy58;
1067
6
          if (yych <= 'z') goto yy5;
1068
6
          if (yych >= 0x7F) goto yy5;
1069
6
        }
1070
6
      }
1071
6
    }
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
551k
yyc_ST_OFFSET:
1092
551k
  {
1093
551k
    static const unsigned char yybm[] = {
1094
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1095
551k
      132, 140, 128, 132, 132, 128, 132, 132, 
1096
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1097
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1098
551k
      140, 132, 128, 132, 192, 132, 132,   0, 
1099
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1100
551k
      180, 180, 180, 180, 180, 180, 180, 180, 
1101
551k
      180, 180, 132, 128, 132, 132, 132, 132, 
1102
551k
      132, 164, 164, 164, 164, 164, 164, 164, 
1103
551k
      164, 164, 164, 164, 164, 164, 164, 164, 
1104
551k
      164, 164, 164, 164, 164, 164, 164, 164, 
1105
551k
      164, 164, 164, 132, 192, 128, 132, 164, 
1106
551k
      132, 164, 164, 164, 164, 164, 164, 164, 
1107
551k
      164, 164, 164, 164, 164, 164, 164, 164, 
1108
551k
      164, 164, 164, 164, 164, 164, 164, 164, 
1109
551k
      164, 164, 164, 132, 132, 132, 132, 132, 
1110
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1111
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1112
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1113
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1114
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1115
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1116
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1117
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1118
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1119
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1120
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1121
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1122
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1123
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1124
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1125
551k
      132, 132, 132, 132, 132, 132, 132, 132, 
1126
551k
    };
1127
551k
    YYDEBUG(61, *YYCURSOR);
1128
551k
    YYFILL(2);
1129
551k
    yych = *YYCURSOR;
1130
551k
    if (yybm[0+yych] & 8) {
1131
5.54k
      goto yy66;
1132
5.54k
    }
1133
546k
    if (yych <= '/') {
1134
403k
      if (yych <= '"') {
1135
324k
        if (yych <= '\f') {
1136
5.49k
          if (yych <= 0x08) goto yy63;
1137
1.61k
          if (yych <= '\n') goto yy68;
1138
318k
        } else {
1139
318k
          if (yych <= '\r') goto yy68;
1140
318k
          if (yych >= '"') goto yy70;
1141
318k
        }
1142
324k
      } else {
1143
78.6k
        if (yych <= '&') {
1144
7.12k
          if (yych == '$') goto yy72;
1145
71.5k
        } else {
1146
71.5k
          if (yych <= '\'') goto yy73;
1147
26.0k
          if (yych <= ',') goto yy63;
1148
19.3k
          if (yych <= '.') goto yy74;
1149
19.3k
        }
1150
78.6k
      }
1151
403k
    } else {
1152
142k
      if (yych <= '[') {
1153
81.2k
        if (yych <= ';') {
1154
69.8k
          if (yych <= '9') goto yy75;
1155
4.22k
          if (yych >= ';') goto yy68;
1156
11.4k
        } else {
1157
11.4k
          if (yych <= '@') goto yy63;
1158
7.21k
          if (yych <= 'Z') goto yy78;
1159
7.21k
        }
1160
81.2k
      } else {
1161
61.7k
        if (yych <= '^') {
1162
3.27k
          if (yych <= '\\') goto yy81;
1163
558
          if (yych <= ']') goto yy82;
1164
58.4k
        } else {
1165
58.4k
          if (yych == '`') goto yy63;
1166
58.4k
          if (yych <= 'z') goto yy78;
1167
58.4k
        }
1168
61.7k
      }
1169
142k
    }
1170
2.20M
yy63:
1171
2.20M
    YYDEBUG(63, *YYCURSOR);
1172
2.20M
    yyaccept = 0;
1173
2.20M
    YYMARKER = ++YYCURSOR;
1174
2.20M
    YYFILL(1);
1175
2.20M
    yych = *YYCURSOR;
1176
2.21M
yy64:
1177
2.21M
    YYDEBUG(64, *YYCURSOR);
1178
2.21M
    if (yybm[0+yych] & 4) {
1179
1.99M
      goto yy63;
1180
1.99M
    }
1181
220k
    if (yych <= '"') goto yy65;
1182
107k
    if (yych <= '$') goto yy84;
1183
47.3k
    if (yych <= ';') goto yy65;
1184
23.4k
    if (yych <= '\\') goto yy81;
1185
137k
yy65:
1186
137k
    YYDEBUG(65, *YYCURSOR);
1187
137k
    yyleng = YYCURSOR - SCNG(yy_text);
1188
137k
#line 606 "Zend/zend_ini_scanner.l"
1189
137k
    { /* Get rest as section/offset value */
1190
137k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
1191
0
}
1192
0
#line 1193 "Zend/zend_ini_scanner.c"
1193
10.3k
yy66:
1194
10.3k
    YYDEBUG(66, *YYCURSOR);
1195
10.3k
    yyaccept = 0;
1196
10.3k
    YYMARKER = ++YYCURSOR;
1197
10.3k
    YYFILL(1);
1198
10.3k
    yych = *YYCURSOR;
1199
10.3k
    YYDEBUG(67, *YYCURSOR);
1200
10.3k
    if (yybm[0+yych] & 8) {
1201
4.83k
      goto yy66;
1202
4.83k
    }
1203
5.54k
    if (yych <= '$') {
1204
639
      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
605
      } else {
1210
605
        if (yych == '"') goto yy70;
1211
0
        if (yych <= '#') goto yy63;
1212
0
        goto yy84;
1213
0
      }
1214
4.90k
    } else {
1215
4.90k
      if (yych <= ';') {
1216
1.58k
        if (yych == '\'') goto yy65;
1217
1.58k
        if (yych <= ':') goto yy63;
1218
0
        goto yy65;
1219
3.32k
      } else {
1220
3.32k
        if (yych <= '[') goto yy63;
1221
1.22k
        if (yych <= '\\') goto yy81;
1222
1.22k
        if (yych <= ']') goto yy82;
1223
1.22k
        goto yy63;
1224
1.22k
      }
1225
4.90k
    }
1226
3.98k
yy68:
1227
3.98k
    YYDEBUG(68, *YYCURSOR);
1228
3.98k
    ++YYCURSOR;
1229
4.21k
yy69:
1230
4.21k
    YYDEBUG(69, *YYCURSOR);
1231
4.21k
    yyleng = YYCURSOR - SCNG(yy_text);
1232
4.21k
#line 686 "Zend/zend_ini_scanner.l"
1233
4.21k
    {
1234
4.21k
  return 0;
1235
3.98k
}
1236
0
#line 1237 "Zend/zend_ini_scanner.c"
1237
315k
yy70:
1238
315k
    YYDEBUG(70, *YYCURSOR);
1239
315k
    ++YYCURSOR;
1240
315k
    YYDEBUG(71, *YYCURSOR);
1241
315k
    yyleng = YYCURSOR - SCNG(yy_text);
1242
315k
#line 610 "Zend/zend_ini_scanner.l"
1243
315k
    { /* Double quoted '"' string start */
1244
315k
  yy_push_state(ST_DOUBLE_QUOTES);
1245
315k
  return '"';
1246
3.98k
}
1247
0
#line 1248 "Zend/zend_ini_scanner.c"
1248
4.47k
yy72:
1249
4.47k
    YYDEBUG(72, *YYCURSOR);
1250
4.47k
    yych = *++YYCURSOR;
1251
4.47k
    if (yych <= '\\') {
1252
2.48k
      if (yych <= 0x00) goto yy69;
1253
2.34k
      if (yych <= '[') goto yy63;
1254
0
      goto yy86;
1255
2.34k
    } else {
1256
1.99k
      if (yych == '{') goto yy88;
1257
1.99k
      goto yy63;
1258
1.99k
    }
1259
45.4k
yy73:
1260
45.4k
    YYDEBUG(73, *YYCURSOR);
1261
45.4k
    yych = *++YYCURSOR;
1262
45.4k
    if (yybm[0+yych] & 128) {
1263
45.3k
      goto yy90;
1264
45.3k
    }
1265
90
    goto yy69;
1266
18.6k
yy74:
1267
18.6k
    YYDEBUG(74, *YYCURSOR);
1268
18.6k
    yyaccept = 0;
1269
18.6k
    yych = *(YYMARKER = ++YYCURSOR);
1270
18.6k
    if (yych <= '/') goto yy64;
1271
18.1k
    if (yych <= '9') goto yy92;
1272
15.3k
    goto yy64;
1273
181k
yy75:
1274
181k
    YYDEBUG(75, *YYCURSOR);
1275
181k
    yyaccept = 1;
1276
181k
    YYMARKER = ++YYCURSOR;
1277
181k
    YYFILL(1);
1278
181k
    yych = *YYCURSOR;
1279
181k
    YYDEBUG(76, *YYCURSOR);
1280
181k
    if (yybm[0+yych] & 16) {
1281
115k
      goto yy75;
1282
115k
    }
1283
65.5k
    if (yych <= '&') {
1284
15.8k
      if (yych <= '\r') {
1285
557
        if (yych == '\n') goto yy77;
1286
461
        if (yych <= '\f') goto yy63;
1287
15.2k
      } else {
1288
15.2k
        if (yych <= '"') {
1289
14.3k
          if (yych <= '!') goto yy63;
1290
14.3k
        } else {
1291
890
          if (yych == '$') goto yy84;
1292
786
          goto yy63;
1293
890
        }
1294
15.2k
      }
1295
49.7k
    } else {
1296
49.7k
      if (yych <= ':') {
1297
38.5k
        if (yych <= '\'') goto yy77;
1298
32.4k
        if (yych == '.') goto yy92;
1299
7.90k
        goto yy63;
1300
32.4k
      } else {
1301
11.1k
        if (yych <= '[') {
1302
3.94k
          if (yych >= '<') goto yy63;
1303
7.25k
        } else {
1304
7.25k
          if (yych <= '\\') goto yy81;
1305
7.12k
          if (yych >= '^') goto yy63;
1306
7.12k
        }
1307
11.1k
      }
1308
49.7k
    }
1309
33.3k
yy77:
1310
33.3k
    YYDEBUG(77, *YYCURSOR);
1311
33.3k
    yyleng = YYCURSOR - SCNG(yy_text);
1312
33.3k
#line 580 "Zend/zend_ini_scanner.l"
1313
33.3k
    { /* Get number option value as string */
1314
33.3k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1315
0
}
1316
0
#line 1317 "Zend/zend_ini_scanner.c"
1317
164k
yy78:
1318
164k
    YYDEBUG(78, *YYCURSOR);
1319
164k
    yyaccept = 2;
1320
164k
    YYMARKER = ++YYCURSOR;
1321
164k
    YYFILL(1);
1322
164k
    yych = *YYCURSOR;
1323
164k
    YYDEBUG(79, *YYCURSOR);
1324
164k
    if (yybm[0+yych] & 32) {
1325
110k
      goto yy78;
1326
110k
    }
1327
54.5k
    if (yych <= '$') {
1328
23.9k
      if (yych <= '\r') {
1329
3.63k
        if (yych == '\n') goto yy80;
1330
3.42k
        if (yych <= '\f') goto yy63;
1331
20.3k
      } else {
1332
20.3k
        if (yych == '"') goto yy80;
1333
11.7k
        if (yych <= '#') goto yy63;
1334
3.23k
        goto yy84;
1335
11.7k
      }
1336
30.6k
    } else {
1337
30.6k
      if (yych <= ';') {
1338
14.5k
        if (yych == '\'') goto yy80;
1339
9.93k
        if (yych <= ':') goto yy63;
1340
16.1k
      } else {
1341
16.1k
        if (yych <= '[') goto yy63;
1342
14.9k
        if (yych <= '\\') goto yy81;
1343
11.1k
        if (yych >= '^') goto yy63;
1344
11.1k
      }
1345
30.6k
    }
1346
13.5k
yy80:
1347
13.5k
    YYDEBUG(80, *YYCURSOR);
1348
13.5k
    yyleng = YYCURSOR - SCNG(yy_text);
1349
13.5k
#line 576 "Zend/zend_ini_scanner.l"
1350
13.5k
    { /* Get constant option value */
1351
13.5k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1352
0
}
1353
0
#line 1354 "Zend/zend_ini_scanner.c"
1354
30.1k
yy81:
1355
30.1k
    YYDEBUG(81, *YYCURSOR);
1356
30.1k
    ++YYCURSOR;
1357
30.1k
    YYFILL(1);
1358
30.1k
    yych = *YYCURSOR;
1359
30.1k
    goto yy63;
1360
464
yy82:
1361
464
    YYDEBUG(82, *YYCURSOR);
1362
464
    ++YYCURSOR;
1363
464
    YYDEBUG(83, *YYCURSOR);
1364
464
    yyleng = YYCURSOR - SCNG(yy_text);
1365
464
#line 417 "Zend/zend_ini_scanner.l"
1366
464
    { /* End of section or an option offset */
1367
464
  BEGIN(INITIAL);
1368
464
  return ']';
1369
30.1k
}
1370
0
#line 1371 "Zend/zend_ini_scanner.c"
1371
63.4k
yy84:
1372
63.4k
    YYDEBUG(84, *YYCURSOR);
1373
63.4k
    ++YYCURSOR;
1374
63.4k
    YYFILL(1);
1375
63.4k
    yych = *YYCURSOR;
1376
63.4k
    if (yych <= '\\') {
1377
63.3k
      if (yych <= 0x00) goto yy85;
1378
63.1k
      if (yych <= '[') goto yy63;
1379
0
      goto yy86;
1380
63.1k
    } else {
1381
76
      if (yych != '{') goto yy63;
1382
76
    }
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.84M
yy90:
1417
1.84M
    YYDEBUG(90, *YYCURSOR);
1418
1.84M
    ++YYCURSOR;
1419
1.84M
    YYFILL(1);
1420
1.84M
    yych = *YYCURSOR;
1421
1.84M
    YYDEBUG(91, *YYCURSOR);
1422
1.84M
    if (yybm[0+yych] & 128) {
1423
1.80M
      goto yy90;
1424
1.80M
    }
1425
44.3k
    goto yy94;
1426
67.0k
yy92:
1427
67.0k
    YYDEBUG(92, *YYCURSOR);
1428
67.0k
    yyaccept = 1;
1429
67.0k
    YYMARKER = ++YYCURSOR;
1430
67.0k
    YYFILL(1);
1431
67.0k
    yych = *YYCURSOR;
1432
67.0k
    YYDEBUG(93, *YYCURSOR);
1433
67.0k
    if (yych <= '&') {
1434
13.1k
      if (yych <= '\r') {
1435
164
        if (yych == '\n') goto yy77;
1436
117
        if (yych <= '\f') goto yy63;
1437
87
        goto yy77;
1438
12.9k
      } else {
1439
12.9k
        if (yych <= '"') {
1440
12.2k
          if (yych <= '!') goto yy63;
1441
9.80k
          goto yy77;
1442
12.2k
        } else {
1443
684
          if (yych == '$') goto yy84;
1444
570
          goto yy63;
1445
684
        }
1446
12.9k
      }
1447
53.9k
    } else {
1448
53.9k
      if (yych <= ':') {
1449
48.0k
        if (yych <= '\'') goto yy77;
1450
45.4k
        if (yych <= '/') goto yy63;
1451
40.0k
        if (yych <= '9') goto yy92;
1452
320
        goto yy63;
1453
40.0k
      } else {
1454
5.91k
        if (yych <= '[') {
1455
450
          if (yych <= ';') goto yy77;
1456
423
          goto yy63;
1457
5.46k
        } else {
1458
5.46k
          if (yych <= '\\') goto yy81;
1459
5.24k
          if (yych <= ']') goto yy77;
1460
5.24k
          goto yy63;
1461
5.24k
        }
1462
5.91k
      }
1463
53.9k
    }
1464
44.3k
yy94:
1465
44.3k
    YYDEBUG(94, *YYCURSOR);
1466
44.3k
    ++YYCURSOR;
1467
44.3k
    YYDEBUG(95, *YYCURSOR);
1468
44.3k
    yyleng = YYCURSOR - SCNG(yy_text);
1469
44.3k
#line 389 "Zend/zend_ini_scanner.l"
1470
44.3k
    { /* Raw string */
1471
  /* Eat leading and trailing single quotes */
1472
44.3k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1473
44.3k
    SCNG(yy_text)++;
1474
44.3k
    yyleng = yyleng - 2;
1475
44.3k
  }
1476
44.3k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
1477
0
}
1478
0
#line 1479 "Zend/zend_ini_scanner.c"
1479
0
  }
1480
/* *********************************** */
1481
86.3k
yyc_ST_SECTION_VALUE:
1482
86.3k
  {
1483
86.3k
    static const unsigned char yybm[] = {
1484
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1485
86.3k
      132, 140, 128, 132, 132, 128, 132, 132, 
1486
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1487
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1488
86.3k
      140, 132, 128, 132, 192, 132, 132,   0, 
1489
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1490
86.3k
      180, 180, 180, 180, 180, 180, 180, 180, 
1491
86.3k
      180, 180, 132, 128, 132, 132, 132, 132, 
1492
86.3k
      132, 164, 164, 164, 164, 164, 164, 164, 
1493
86.3k
      164, 164, 164, 164, 164, 164, 164, 164, 
1494
86.3k
      164, 164, 164, 164, 164, 164, 164, 164, 
1495
86.3k
      164, 164, 164, 132, 192, 128, 132, 164, 
1496
86.3k
      132, 164, 164, 164, 164, 164, 164, 164, 
1497
86.3k
      164, 164, 164, 164, 164, 164, 164, 164, 
1498
86.3k
      164, 164, 164, 164, 164, 164, 164, 164, 
1499
86.3k
      164, 164, 164, 132, 132, 132, 132, 132, 
1500
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1501
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1502
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1503
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1504
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1505
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1506
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1507
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1508
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1509
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1510
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1511
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1512
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1513
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1514
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1515
86.3k
      132, 132, 132, 132, 132, 132, 132, 132, 
1516
86.3k
    };
1517
86.3k
    YYDEBUG(96, *YYCURSOR);
1518
86.3k
    YYFILL(2);
1519
86.3k
    yych = *YYCURSOR;
1520
86.3k
    if (yybm[0+yych] & 8) {
1521
7.68k
      goto yy101;
1522
7.68k
    }
1523
78.6k
    if (yych <= '/') {
1524
45.6k
      if (yych <= '"') {
1525
20.9k
        if (yych <= '\f') {
1526
1.84k
          if (yych <= 0x08) goto yy98;
1527
1.69k
          if (yych <= '\n') goto yy103;
1528
19.1k
        } else {
1529
19.1k
          if (yych <= '\r') goto yy103;
1530
18.8k
          if (yych >= '"') goto yy105;
1531
18.8k
        }
1532
24.7k
      } else {
1533
24.7k
        if (yych <= '&') {
1534
260
          if (yych == '$') goto yy107;
1535
24.4k
        } else {
1536
24.4k
          if (yych <= '\'') goto yy108;
1537
6.69k
          if (yych <= ',') goto yy98;
1538
6.48k
          if (yych <= '.') goto yy109;
1539
6.48k
        }
1540
24.7k
      }
1541
45.6k
    } else {
1542
32.9k
      if (yych <= '[') {
1543
14.5k
        if (yych <= ';') {
1544
8.41k
          if (yych <= '9') goto yy110;
1545
996
          if (yych >= ';') goto yy103;
1546
6.12k
        } else {
1547
6.12k
          if (yych <= '@') goto yy98;
1548
5.39k
          if (yych <= 'Z') goto yy113;
1549
5.39k
        }
1550
18.4k
      } else {
1551
18.4k
        if (yych <= '^') {
1552
5.94k
          if (yych <= '\\') goto yy116;
1553
5.64k
          if (yych <= ']') goto yy117;
1554
12.4k
        } else {
1555
12.4k
          if (yych == '`') goto yy98;
1556
12.4k
          if (yych <= 'z') goto yy113;
1557
12.4k
        }
1558
18.4k
      }
1559
32.9k
    }
1560
1.33M
yy98:
1561
1.33M
    YYDEBUG(98, *YYCURSOR);
1562
1.33M
    yyaccept = 0;
1563
1.33M
    YYMARKER = ++YYCURSOR;
1564
1.33M
    YYFILL(1);
1565
1.33M
    yych = *YYCURSOR;
1566
1.33M
yy99:
1567
1.33M
    YYDEBUG(99, *YYCURSOR);
1568
1.33M
    if (yybm[0+yych] & 4) {
1569
1.29M
      goto yy98;
1570
1.29M
    }
1571
46.1k
    if (yych <= '"') goto yy100;
1572
32.4k
    if (yych <= '$') goto yy120;
1573
22.5k
    if (yych <= ';') goto yy100;
1574
5.00k
    if (yych <= '\\') goto yy116;
1575
36.1k
yy100:
1576
36.1k
    YYDEBUG(100, *YYCURSOR);
1577
36.1k
    yyleng = YYCURSOR - SCNG(yy_text);
1578
36.1k
#line 606 "Zend/zend_ini_scanner.l"
1579
36.1k
    { /* Get rest as section/offset value */
1580
36.1k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
1581
0
}
1582
0
#line 1583 "Zend/zend_ini_scanner.c"
1583
27.6k
yy101:
1584
27.6k
    YYDEBUG(101, *YYCURSOR);
1585
27.6k
    yyaccept = 0;
1586
27.6k
    YYMARKER = ++YYCURSOR;
1587
27.6k
    YYFILL(1);
1588
27.6k
    yych = *YYCURSOR;
1589
27.6k
    YYDEBUG(102, *YYCURSOR);
1590
27.6k
    if (yybm[0+yych] & 8) {
1591
19.9k
      goto yy101;
1592
19.9k
    }
1593
7.68k
    if (yych <= '$') {
1594
1.02k
      if (yych <= '\r') {
1595
171
        if (yych <= 0x08) goto yy98;
1596
0
        if (yych <= '\n') goto yy100;
1597
0
        if (yych <= '\f') goto yy98;
1598
0
        goto yy100;
1599
850
      } else {
1600
850
        if (yych == '"') goto yy105;
1601
76
        if (yych <= '#') goto yy98;
1602
0
        goto yy120;
1603
76
      }
1604
6.66k
    } else {
1605
6.66k
      if (yych <= ';') {
1606
458
        if (yych == '\'') goto yy100;
1607
458
        if (yych <= ':') goto yy98;
1608
0
        goto yy100;
1609
6.20k
      } else {
1610
6.20k
        if (yych <= '[') goto yy98;
1611
514
        if (yych <= '\\') goto yy116;
1612
514
        if (yych <= ']') goto yy100;
1613
514
        goto yy98;
1614
514
      }
1615
6.66k
    }
1616
3.00k
yy103:
1617
3.00k
    YYDEBUG(103, *YYCURSOR);
1618
3.00k
    ++YYCURSOR;
1619
3.06k
yy104:
1620
3.06k
    YYDEBUG(104, *YYCURSOR);
1621
3.06k
    yyleng = YYCURSOR - SCNG(yy_text);
1622
3.06k
#line 686 "Zend/zend_ini_scanner.l"
1623
3.06k
    {
1624
3.06k
  return 0;
1625
3.00k
}
1626
0
#line 1627 "Zend/zend_ini_scanner.c"
1627
18.6k
yy105:
1628
18.6k
    YYDEBUG(105, *YYCURSOR);
1629
18.6k
    ++YYCURSOR;
1630
18.6k
    YYDEBUG(106, *YYCURSOR);
1631
18.6k
    yyleng = YYCURSOR - SCNG(yy_text);
1632
18.6k
#line 610 "Zend/zend_ini_scanner.l"
1633
18.6k
    { /* Double quoted '"' string start */
1634
18.6k
  yy_push_state(ST_DOUBLE_QUOTES);
1635
18.6k
  return '"';
1636
3.00k
}
1637
0
#line 1638 "Zend/zend_ini_scanner.c"
1638
153
yy107:
1639
153
    YYDEBUG(107, *YYCURSOR);
1640
153
    yych = *++YYCURSOR;
1641
153
    if (yych <= '\\') {
1642
139
      if (yych <= 0x00) goto yy104;
1643
139
      if (yych <= '[') goto yy98;
1644
0
      goto yy122;
1645
139
    } else {
1646
14
      if (yych == '{') goto yy124;
1647
0
      goto yy98;
1648
14
    }
1649
17.7k
yy108:
1650
17.7k
    YYDEBUG(108, *YYCURSOR);
1651
17.7k
    yych = *++YYCURSOR;
1652
17.7k
    if (yybm[0+yych] & 128) {
1653
17.7k
      goto yy126;
1654
17.7k
    }
1655
65
    goto yy104;
1656
6.40k
yy109:
1657
6.40k
    YYDEBUG(109, *YYCURSOR);
1658
6.40k
    yyaccept = 0;
1659
6.40k
    yych = *(YYMARKER = ++YYCURSOR);
1660
6.40k
    if (yych <= '/') goto yy99;
1661
4.27k
    if (yych <= '9') goto yy128;
1662
1.37k
    goto yy99;
1663
15.6k
yy110:
1664
15.6k
    YYDEBUG(110, *YYCURSOR);
1665
15.6k
    yyaccept = 1;
1666
15.6k
    YYMARKER = ++YYCURSOR;
1667
15.6k
    YYFILL(1);
1668
15.6k
    yych = *YYCURSOR;
1669
15.6k
    YYDEBUG(111, *YYCURSOR);
1670
15.6k
    if (yybm[0+yych] & 16) {
1671
8.23k
      goto yy110;
1672
8.23k
    }
1673
7.41k
    if (yych <= '&') {
1674
1.73k
      if (yych <= '\r') {
1675
111
        if (yych == '\n') goto yy112;
1676
111
        if (yych <= '\f') goto yy98;
1677
1.62k
      } else {
1678
1.62k
        if (yych <= '"') {
1679
1.37k
          if (yych <= '!') goto yy98;
1680
1.37k
        } else {
1681
246
          if (yych == '$') goto yy120;
1682
246
          goto yy98;
1683
246
        }
1684
1.62k
      }
1685
5.68k
    } else {
1686
5.68k
      if (yych <= ':') {
1687
870
        if (yych <= '\'') goto yy112;
1688
824
        if (yych == '.') goto yy128;
1689
678
        goto yy98;
1690
4.81k
      } else {
1691
4.81k
        if (yych <= '[') {
1692
257
          if (yych >= '<') goto yy98;
1693
4.55k
        } else {
1694
4.55k
          if (yych <= '\\') goto yy116;
1695
4.55k
          if (yych >= '^') goto yy98;
1696
4.55k
        }
1697
4.81k
      }
1698
5.68k
    }
1699
1.41k
yy112:
1700
1.41k
    YYDEBUG(112, *YYCURSOR);
1701
1.41k
    yyleng = YYCURSOR - SCNG(yy_text);
1702
1.41k
#line 580 "Zend/zend_ini_scanner.l"
1703
1.41k
    { /* Get number option value as string */
1704
1.41k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
1705
0
}
1706
0
#line 1707 "Zend/zend_ini_scanner.c"
1707
27.6k
yy113:
1708
27.6k
    YYDEBUG(113, *YYCURSOR);
1709
27.6k
    yyaccept = 2;
1710
27.6k
    YYMARKER = ++YYCURSOR;
1711
27.6k
    YYFILL(1);
1712
27.6k
    yych = *YYCURSOR;
1713
27.6k
    YYDEBUG(114, *YYCURSOR);
1714
27.6k
    if (yybm[0+yych] & 32) {
1715
20.0k
      goto yy113;
1716
20.0k
    }
1717
7.57k
    if (yych <= '$') {
1718
1.70k
      if (yych <= '\r') {
1719
928
        if (yych == '\n') goto yy115;
1720
353
        if (yych <= '\f') goto yy98;
1721
779
      } else {
1722
779
        if (yych == '"') goto yy115;
1723
337
        if (yych <= '#') goto yy98;
1724
53
        goto yy120;
1725
337
      }
1726
5.86k
    } else {
1727
5.86k
      if (yych <= ';') {
1728
1.43k
        if (yych == '\'') goto yy115;
1729
1.05k
        if (yych <= ':') goto yy98;
1730
4.43k
      } else {
1731
4.43k
        if (yych <= '[') goto yy98;
1732
4.03k
        if (yych <= '\\') goto yy116;
1733
3.88k
        if (yych >= '^') goto yy98;
1734
3.88k
      }
1735
5.86k
    }
1736
1.46k
yy115:
1737
1.46k
    YYDEBUG(115, *YYCURSOR);
1738
1.46k
    yyleng = YYCURSOR - SCNG(yy_text);
1739
1.46k
#line 576 "Zend/zend_ini_scanner.l"
1740
1.46k
    { /* Get constant option value */
1741
1.46k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
1742
0
}
1743
0
#line 1744 "Zend/zend_ini_scanner.c"
1744
622
yy116:
1745
622
    YYDEBUG(116, *YYCURSOR);
1746
622
    ++YYCURSOR;
1747
622
    YYFILL(1);
1748
622
    yych = *YYCURSOR;
1749
622
    goto yy98;
1750
5.75k
yy117:
1751
5.75k
    YYDEBUG(117, *YYCURSOR);
1752
5.75k
    ++YYCURSOR;
1753
5.75k
    YYFILL(2);
1754
5.75k
    yych = *YYCURSOR;
1755
5.75k
    YYDEBUG(118, *YYCURSOR);
1756
5.75k
    if (yych <= '\f') {
1757
4.77k
      if (yych <= 0x08) goto yy119;
1758
4.63k
      if (yych <= '\t') goto yy117;
1759
4.63k
      if (yych <= '\n') goto yy130;
1760
4.63k
    } else {
1761
976
      if (yych <= '\r') goto yy131;
1762
973
      if (yych == ' ') goto yy117;
1763
973
    }
1764
5.64k
yy119:
1765
5.64k
    YYDEBUG(119, *YYCURSOR);
1766
5.64k
    yyleng = YYCURSOR - SCNG(yy_text);
1767
5.64k
#line 398 "Zend/zend_ini_scanner.l"
1768
5.64k
    { /* End of section */
1769
5.64k
  BEGIN(INITIAL);
1770
5.64k
  SCNG(lineno)++;
1771
5.64k
  return ']';
1772
5.75k
}
1773
0
#line 1774 "Zend/zend_ini_scanner.c"
1774
9.89k
yy120:
1775
9.89k
    YYDEBUG(120, *YYCURSOR);
1776
9.89k
    ++YYCURSOR;
1777
9.89k
    YYFILL(1);
1778
9.89k
    yych = *YYCURSOR;
1779
9.89k
    if (yych <= '\\') {
1780
3.97k
      if (yych <= 0x00) goto yy121;
1781
3.97k
      if (yych <= '[') goto yy98;
1782
0
      goto yy122;
1783
5.91k
    } else {
1784
5.91k
      if (yych != '{') goto yy98;
1785
5.91k
    }
1786
7
yy121:
1787
7
    YYDEBUG(121, *YYCURSOR);
1788
7
    YYCURSOR = YYMARKER;
1789
7
    if (yyaccept <= 1) {
1790
1
      if (yyaccept == 0) {
1791
1
        goto yy100;
1792
1
      } else {
1793
0
        goto yy112;
1794
0
      }
1795
6
    } else {
1796
6
      goto yy115;
1797
6
    }
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
14
yy124:
1809
14
    YYDEBUG(124, *YYCURSOR);
1810
14
    ++YYCURSOR;
1811
14
    YYDEBUG(125, *YYCURSOR);
1812
14
    yyleng = YYCURSOR - SCNG(yy_text);
1813
14
#line 422 "Zend/zend_ini_scanner.l"
1814
14
    { /* Variable start */
1815
14
  yy_push_state(ST_VARNAME);
1816
14
  return TC_DOLLAR_CURLY;
1817
0
}
1818
0
#line 1819 "Zend/zend_ini_scanner.c"
1819
1.08M
yy126:
1820
1.08M
    YYDEBUG(126, *YYCURSOR);
1821
1.08M
    ++YYCURSOR;
1822
1.08M
    YYFILL(1);
1823
1.08M
    yych = *YYCURSOR;
1824
1.08M
    YYDEBUG(127, *YYCURSOR);
1825
1.08M
    if (yybm[0+yych] & 128) {
1826
1.06M
      goto yy126;
1827
1.06M
    }
1828
16.8k
    goto yy132;
1829
16.8k
yy128:
1830
3.92k
    YYDEBUG(128, *YYCURSOR);
1831
3.92k
    yyaccept = 1;
1832
3.92k
    YYMARKER = ++YYCURSOR;
1833
3.92k
    YYFILL(1);
1834
3.92k
    yych = *YYCURSOR;
1835
3.92k
    YYDEBUG(129, *YYCURSOR);
1836
3.92k
    if (yych <= '&') {
1837
276
      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
108
        if (yych <= '"') {
1843
108
          if (yych <= '!') goto yy98;
1844
22
          goto yy112;
1845
108
        } else {
1846
0
          if (yych == '$') goto yy120;
1847
0
          goto yy98;
1848
0
        }
1849
108
      }
1850
3.64k
    } else {
1851
3.64k
      if (yych <= ':') {
1852
989
        if (yych <= '\'') goto yy112;
1853
966
        if (yych <= '/') goto yy98;
1854
870
        if (yych <= '9') goto yy128;
1855
0
        goto yy98;
1856
2.65k
      } else {
1857
2.65k
        if (yych <= '[') {
1858
1.93k
          if (yych <= ';') goto yy112;
1859
1.82k
          goto yy98;
1860
1.93k
        } else {
1861
725
          if (yych <= '\\') goto yy116;
1862
725
          if (yych <= ']') goto yy112;
1863
629
          goto yy98;
1864
725
        }
1865
2.65k
      }
1866
3.64k
    }
1867
4.63k
yy130:
1868
4.63k
    YYDEBUG(130, *YYCURSOR);
1869
4.63k
    ++YYCURSOR;
1870
4.63k
    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
16.8k
yy132:
1877
16.8k
    YYDEBUG(132, *YYCURSOR);
1878
16.8k
    ++YYCURSOR;
1879
16.8k
    YYDEBUG(133, *YYCURSOR);
1880
16.8k
    yyleng = YYCURSOR - SCNG(yy_text);
1881
16.8k
#line 389 "Zend/zend_ini_scanner.l"
1882
16.8k
    { /* Raw string */
1883
  /* Eat leading and trailing single quotes */
1884
16.8k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
1885
16.8k
    SCNG(yy_text)++;
1886
16.8k
    yyleng = yyleng - 2;
1887
16.8k
  }
1888
16.8k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
1889
0
}
1890
0
#line 1891 "Zend/zend_ini_scanner.c"
1891
0
  }
1892
/* *********************************** */
1893
1.09M
yyc_ST_VALUE:
1894
1.09M
  {
1895
1.09M
    static const unsigned char yybm[] = {
1896
1.09M
       80,  82,  82,  82,  82,  82,  82,  82, 
1897
1.09M
       82,  84,  64,  82,  82,  64,  82,  82, 
1898
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1899
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1900
1.09M
       84,  80,  80,  82, 208,  82,  80,  16, 
1901
1.09M
       80,  80,  82,  82,  82,  82,  82,  82, 
1902
1.09M
      122, 122, 122, 122, 122, 122, 122, 122, 
1903
1.09M
      122, 122,  82,  80,  82,  80,  82,  82, 
1904
1.09M
       82, 114, 114, 114, 114, 114, 114, 114, 
1905
1.09M
      114, 114, 114, 114, 114, 114, 114, 114, 
1906
1.09M
      114, 114, 114, 114, 114, 114, 114, 114, 
1907
1.09M
      114, 114, 114,  82,  82,  82,  80, 114, 
1908
1.09M
       82, 114, 114, 114, 114, 114, 114, 114, 
1909
1.09M
      114, 114, 114, 114, 114, 114, 114, 114, 
1910
1.09M
      114, 114, 114, 114, 114, 114, 114, 114, 
1911
1.09M
      114, 114, 114,  82,  80,  82,  80,  82, 
1912
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1913
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1914
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1915
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1916
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1917
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1918
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1919
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1920
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1921
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1922
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1923
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1924
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1925
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1926
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1927
1.09M
       82,  82,  82,  82,  82,  82,  82,  82, 
1928
1.09M
    };
1929
1.09M
    YYDEBUG(134, *YYCURSOR);
1930
1.09M
    YYFILL(6);
1931
1.09M
    yych = *YYCURSOR;
1932
1.09M
    if (yybm[0+yych] & 4) {
1933
116k
      goto yy141;
1934
116k
    }
1935
974k
    switch (yych) {
1936
0
    case 0x00:  goto yy136;
1937
0
    case '\t':
1938
67.9k
    case '\n':  goto yy144;
1939
12.8k
    case '\r':  goto yy146;
1940
0
    case ' ':
1941
2.84k
    case '!':
1942
5.27k
    case '&':
1943
8.55k
    case '(':
1944
9.34k
    case ')':
1945
20.1k
    case '^':
1946
27.5k
    case '|':
1947
29.2k
    case '~': goto yy147;
1948
307k
    case '"': goto yy150;
1949
4.09k
    case '$': goto yy152;
1950
37.3k
    case '\'':  goto yy153;
1951
2.55k
    case '-':
1952
3.57k
    case '.': goto yy154;
1953
5.32k
    case '0':
1954
14.6k
    case '1':
1955
54.8k
    case '2':
1956
57.0k
    case '3':
1957
67.9k
    case '4':
1958
74.5k
    case '5':
1959
80.4k
    case '6':
1960
85.2k
    case '7':
1961
90.5k
    case '8':
1962
101k
    case '9': goto yy155;
1963
80.4k
    case ';': goto yy158;
1964
5.56k
    case '=': goto yy160;
1965
14.6k
    case 'A':
1966
15.4k
    case 'B':
1967
16.2k
    case 'C':
1968
16.6k
    case 'D':
1969
16.7k
    case 'E':
1970
17.0k
    case 'G':
1971
21.7k
    case 'H':
1972
26.7k
    case 'I':
1973
26.8k
    case 'J':
1974
27.1k
    case 'K':
1975
29.3k
    case 'L':
1976
29.4k
    case 'M':
1977
30.0k
    case 'P':
1978
30.0k
    case 'Q':
1979
30.0k
    case 'R':
1980
30.2k
    case 'S':
1981
31.0k
    case 'U':
1982
31.2k
    case 'V':
1983
31.5k
    case 'W':
1984
32.2k
    case 'X':
1985
32.3k
    case 'Z':
1986
36.9k
    case '_':
1987
40.9k
    case 'a':
1988
41.8k
    case 'b':
1989
51.1k
    case 'c':
1990
51.4k
    case 'd':
1991
53.9k
    case 'e':
1992
56.0k
    case 'g':
1993
59.6k
    case 'h':
1994
72.2k
    case 'i':
1995
72.2k
    case 'j':
1996
72.9k
    case 'k':
1997
73.6k
    case 'l':
1998
75.7k
    case 'm':
1999
88.1k
    case 'p':
2000
88.7k
    case 'q':
2001
94.9k
    case 'r':
2002
103k
    case 's':
2003
104k
    case 'u':
2004
116k
    case 'v':
2005
116k
    case 'w':
2006
117k
    case 'x':
2007
125k
    case 'z': goto yy162;
2008
1.31k
    case 'F':
2009
12.7k
    case 'f': goto yy165;
2010
9.25k
    case 'N':
2011
21.7k
    case 'n': goto yy166;
2012
355
    case 'O':
2013
33.1k
    case 'o': goto yy167;
2014
1.00k
    case 'T':
2015
5.12k
    case 't': goto yy168;
2016
140
    case 'Y':
2017
1.79k
    case 'y': goto yy169;
2018
124k
    default:  goto yy138;
2019
974k
    }
2020
0
yy136:
2021
0
    YYDEBUG(136, *YYCURSOR);
2022
0
    ++YYCURSOR;
2023
444
yy137:
2024
444
    YYDEBUG(137, *YYCURSOR);
2025
444
    yyleng = YYCURSOR - SCNG(yy_text);
2026
444
#line 681 "Zend/zend_ini_scanner.l"
2027
444
    { /* End of option value (if EOF is reached before EOL */
2028
444
  BEGIN(INITIAL);
2029
444
  return END_OF_LINE;
2030
0
}
2031
0
#line 2032 "Zend/zend_ini_scanner.c"
2032
2.51M
yy138:
2033
2.51M
    YYDEBUG(138, *YYCURSOR);
2034
2.51M
    yyaccept = 0;
2035
2.51M
    YYMARKER = ++YYCURSOR;
2036
2.51M
    YYFILL(1);
2037
2.51M
    yych = *YYCURSOR;
2038
2.55M
yy139:
2039
2.55M
    YYDEBUG(139, *YYCURSOR);
2040
2.55M
    if (yybm[0+yych] & 2) {
2041
2.27M
      goto yy138;
2042
2.27M
    }
2043
274k
    if (yych <= '"') goto yy140;
2044
76.6k
    if (yych <= '$') goto yy170;
2045
261k
yy140:
2046
261k
    YYDEBUG(140, *YYCURSOR);
2047
261k
    yyleng = YYCURSOR - SCNG(yy_text);
2048
261k
#line 598 "Zend/zend_ini_scanner.l"
2049
261k
    { /* Get everything else as option/offset value */
2050
261k
  RETURN_TOKEN(TC_STRING, yytext, yyleng);
2051
0
}
2052
0
#line 2053 "Zend/zend_ini_scanner.c"
2053
186k
yy141:
2054
186k
    YYDEBUG(141, *YYCURSOR);
2055
186k
    ++YYCURSOR;
2056
186k
    YYFILL(2);
2057
186k
    yych = *YYCURSOR;
2058
186k
    YYDEBUG(142, *YYCURSOR);
2059
186k
    if (yybm[0+yych] & 4) {
2060
69.5k
      goto yy141;
2061
69.5k
    }
2062
116k
    if (yych <= '\r') {
2063
3.16k
      if (yych <= 0x08) goto yy143;
2064
2.01k
      if (yych <= '\n') goto yy144;
2065
331
      if (yych >= '\r') goto yy146;
2066
113k
    } else {
2067
113k
      if (yych <= '"') {
2068
8.70k
        if (yych >= '"') goto yy150;
2069
104k
      } else {
2070
104k
        if (yych == ';') goto yy158;
2071
104k
      }
2072
113k
    }
2073
107k
yy143:
2074
107k
    YYDEBUG(143, *YYCURSOR);
2075
107k
    yyleng = YYCURSOR - SCNG(yy_text);
2076
107k
#line 661 "Zend/zend_ini_scanner.l"
2077
107k
    {
2078
107k
  RETURN_TOKEN(TC_WHITESPACE, yytext, yyleng);
2079
0
}
2080
0
#line 2081 "Zend/zend_ini_scanner.c"
2081
70.9k
yy144:
2082
70.9k
    YYDEBUG(144, *YYCURSOR);
2083
70.9k
    ++YYCURSOR;
2084
82.4k
yy145:
2085
82.4k
    YYDEBUG(145, *YYCURSOR);
2086
82.4k
    yyleng = YYCURSOR - SCNG(yy_text);
2087
82.4k
#line 570 "Zend/zend_ini_scanner.l"
2088
82.4k
    { /* End of option value */
2089
82.4k
  BEGIN(INITIAL);
2090
82.4k
  SCNG(lineno)++;
2091
82.4k
  return END_OF_LINE;
2092
70.9k
}
2093
0
#line 2094 "Zend/zend_ini_scanner.c"
2094
12.8k
yy146:
2095
12.8k
    YYDEBUG(146, *YYCURSOR);
2096
12.8k
    yych = *++YYCURSOR;
2097
12.8k
    if (yych == '\n') goto yy144;
2098
11.5k
    goto yy145;
2099
35.6k
yy147:
2100
35.6k
    YYDEBUG(147, *YYCURSOR);
2101
35.6k
    ++YYCURSOR;
2102
35.6k
    YYFILL(1);
2103
35.6k
    yych = *YYCURSOR;
2104
35.6k
    YYDEBUG(148, *YYCURSOR);
2105
35.6k
    if (yych == '\t') goto yy147;
2106
35.5k
    if (yych == ' ') goto yy147;
2107
29.2k
    YYDEBUG(149, *YYCURSOR);
2108
29.2k
    yyleng = YYCURSOR - SCNG(yy_text);
2109
29.2k
#line 588 "Zend/zend_ini_scanner.l"
2110
29.2k
    { /* Boolean operators */
2111
29.2k
  return yytext[0];
2112
35.5k
}
2113
0
#line 2114 "Zend/zend_ini_scanner.c"
2114
310k
yy150:
2115
310k
    YYDEBUG(150, *YYCURSOR);
2116
310k
    ++YYCURSOR;
2117
310k
    YYDEBUG(151, *YYCURSOR);
2118
310k
    yyleng = YYCURSOR - SCNG(yy_text);
2119
310k
#line 610 "Zend/zend_ini_scanner.l"
2120
310k
    { /* Double quoted '"' string start */
2121
310k
  yy_push_state(ST_DOUBLE_QUOTES);
2122
310k
  return '"';
2123
35.5k
}
2124
0
#line 2125 "Zend/zend_ini_scanner.c"
2125
4.09k
yy152:
2126
4.09k
    YYDEBUG(152, *YYCURSOR);
2127
4.09k
    yych = *++YYCURSOR;
2128
4.09k
    if (yych <= '\\') {
2129
4.06k
      if (yych <= 0x00) goto yy137;
2130
3.87k
      if (yych <= '[') goto yy138;
2131
0
      goto yy172;
2132
3.87k
    } else {
2133
33
      if (yych == '{') goto yy173;
2134
33
      goto yy138;
2135
33
    }
2136
37.3k
yy153:
2137
37.3k
    YYDEBUG(153, *YYCURSOR);
2138
37.3k
    yych = *++YYCURSOR;
2139
37.3k
    if (yybm[0+yych] & 64) {
2140
37.0k
      goto yy175;
2141
37.0k
    }
2142
257
    goto yy137;
2143
3.57k
yy154:
2144
3.57k
    YYDEBUG(154, *YYCURSOR);
2145
3.57k
    yyaccept = 0;
2146
3.57k
    yych = *(YYMARKER = ++YYCURSOR);
2147
3.57k
    if (yych <= '/') goto yy139;
2148
3.16k
    if (yych <= '9') goto yy177;
2149
1.08k
    goto yy139;
2150
174k
yy155:
2151
174k
    YYDEBUG(155, *YYCURSOR);
2152
174k
    yyaccept = 1;
2153
174k
    YYMARKER = ++YYCURSOR;
2154
174k
    YYFILL(1);
2155
174k
    yych = *YYCURSOR;
2156
174k
    YYDEBUG(156, *YYCURSOR);
2157
174k
    if (yybm[0+yych] & 8) {
2158
72.9k
      goto yy155;
2159
72.9k
    }
2160
101k
    if (yych <= '-') {
2161
28.1k
      if (yych <= 0x1F) {
2162
1.56k
        if (yych <= '\n') {
2163
1.21k
          if (yych <= 0x00) goto yy157;
2164
1.02k
          if (yych <= 0x08) goto yy138;
2165
1.02k
        } else {
2166
348
          if (yych != '\r') goto yy138;
2167
348
        }
2168
26.5k
      } else {
2169
26.5k
        if (yych <= '$') {
2170
18.1k
          if (yych <= '"') goto yy157;
2171
234
          if (yych <= '#') goto yy138;
2172
176
          goto yy170;
2173
8.42k
        } else {
2174
8.42k
          if (yych <= '%') goto yy138;
2175
8.40k
          if (yych >= '*') goto yy138;
2176
8.40k
        }
2177
26.5k
      }
2178
73.7k
    } else {
2179
73.7k
      if (yych <= ']') {
2180
52.1k
        if (yych <= ';') {
2181
43.2k
          if (yych <= '.') goto yy177;
2182
39.4k
          if (yych <= ':') goto yy138;
2183
39.4k
        } else {
2184
8.90k
          if (yych != '=') goto yy138;
2185
8.90k
        }
2186
52.1k
      } else {
2187
21.6k
        if (yych <= '|') {
2188
10.6k
          if (yych <= '^') goto yy157;
2189
8.45k
          if (yych <= '{') goto yy138;
2190
10.9k
        } else {
2191
10.9k
          if (yych != '~') goto yy138;
2192
10.9k
        }
2193
21.6k
      }
2194
73.7k
    }
2195
61.6k
yy157:
2196
61.6k
    YYDEBUG(157, *YYCURSOR);
2197
61.6k
    yyleng = YYCURSOR - SCNG(yy_text);
2198
61.6k
#line 580 "Zend/zend_ini_scanner.l"
2199
61.6k
    { /* Get number option value as string */
2200
61.6k
  RETURN_TOKEN(TC_NUMBER, yytext, yyleng);
2201
0
}
2202
0
#line 2203 "Zend/zend_ini_scanner.c"
2203
4.69M
yy158:
2204
4.69M
    YYDEBUG(158, *YYCURSOR);
2205
4.69M
    ++YYCURSOR;
2206
4.69M
    YYFILL(2);
2207
4.69M
    yych = *YYCURSOR;
2208
4.69M
    YYDEBUG(159, *YYCURSOR);
2209
4.69M
    if (yybm[0+yych] & 16) {
2210
4.61M
      goto yy158;
2211
4.61M
    }
2212
83.4k
    if (yych <= '\n') goto yy179;
2213
5.45k
    goto yy181;
2214
5.56k
yy160:
2215
5.56k
    YYDEBUG(160, *YYCURSOR);
2216
5.56k
    ++YYCURSOR;
2217
5.56k
    YYDEBUG(161, *YYCURSOR);
2218
5.56k
    yyleng = YYCURSOR - SCNG(yy_text);
2219
5.56k
#line 592 "Zend/zend_ini_scanner.l"
2220
5.56k
    { /* Make = used in option value to trigger error */
2221
5.56k
  yyless(0);
2222
5.56k
  BEGIN(INITIAL);
2223
5.56k
  return END_OF_LINE;
2224
83.4k
}
2225
0
#line 2226 "Zend/zend_ini_scanner.c"
2226
689k
yy162:
2227
689k
    YYDEBUG(162, *YYCURSOR);
2228
689k
    yyaccept = 2;
2229
689k
    YYMARKER = ++YYCURSOR;
2230
689k
    YYFILL(1);
2231
689k
    yych = *YYCURSOR;
2232
689k
    YYDEBUG(163, *YYCURSOR);
2233
689k
    if (yybm[0+yych] & 32) {
2234
527k
      goto yy162;
2235
527k
    }
2236
161k
    if (yych <= ')') {
2237
103k
      if (yych <= '\r') {
2238
19.1k
        if (yych <= 0x08) {
2239
3.38k
          if (yych >= 0x01) goto yy138;
2240
15.7k
        } else {
2241
15.7k
          if (yych <= '\n') goto yy164;
2242
1.07k
          if (yych <= '\f') goto yy138;
2243
1.07k
        }
2244
83.9k
      } else {
2245
83.9k
        if (yych <= '#') {
2246
71.9k
          if (yych <= 0x1F) goto yy138;
2247
62.5k
          if (yych >= '#') goto yy138;
2248
62.5k
        } else {
2249
12.0k
          if (yych <= '$') goto yy170;
2250
7.82k
          if (yych <= '%') goto yy138;
2251
7.82k
        }
2252
83.9k
      }
2253
103k
    } else {
2254
58.6k
      if (yych <= ']') {
2255
26.1k
        if (yych <= ';') {
2256
17.0k
          if (yych <= ':') goto yy138;
2257
17.0k
        } else {
2258
9.08k
          if (yych != '=') goto yy138;
2259
9.08k
        }
2260
32.5k
      } else {
2261
32.5k
        if (yych <= '|') {
2262
8.66k
          if (yych <= '^') goto yy164;
2263
3.31k
          if (yych <= '{') goto yy138;
2264
23.8k
        } else {
2265
23.8k
          if (yych != '~') goto yy138;
2266
23.8k
        }
2267
32.5k
      }
2268
58.6k
    }
2269
109k
yy164:
2270
109k
    YYDEBUG(164, *YYCURSOR);
2271
109k
    yyleng = YYCURSOR - SCNG(yy_text);
2272
109k
#line 576 "Zend/zend_ini_scanner.l"
2273
109k
    { /* Get constant option value */
2274
109k
  RETURN_TOKEN(TC_CONSTANT, yytext, yyleng);
2275
0
}
2276
0
#line 2277 "Zend/zend_ini_scanner.c"
2277
12.7k
yy165:
2278
12.7k
    YYDEBUG(165, *YYCURSOR);
2279
12.7k
    yyaccept = 2;
2280
12.7k
    yych = *(YYMARKER = ++YYCURSOR);
2281
12.7k
    if (yych <= '<') {
2282
4.01k
      if (yych <= '"') {
2283
1.93k
        if (yych <= '\n') {
2284
348
          if (yych <= 0x00) goto yy164;
2285
116
          if (yych <= 0x08) goto yy139;
2286
116
          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
2.08k
      } else {
2293
2.08k
        if (yych <= '/') {
2294
336
          if (yych <= '%') goto yy139;
2295
336
          if (yych <= ')') goto yy164;
2296
252
          goto yy139;
2297
1.75k
        } else {
2298
1.75k
          if (yych <= '9') goto yy162;
2299
238
          if (yych == ';') goto yy164;
2300
194
          goto yy139;
2301
238
        }
2302
2.08k
      }
2303
8.72k
    } else {
2304
8.72k
      if (yych <= '_') {
2305
408
        if (yych <= 'A') {
2306
103
          if (yych <= '=') goto yy164;
2307
34
          if (yych <= '@') goto yy139;
2308
3
          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
8.31k
      } else {
2316
8.31k
        if (yych <= '{') {
2317
7.19k
          if (yych <= '`') goto yy139;
2318
7.19k
          if (yych <= 'a') goto yy182;
2319
3.63k
          if (yych <= 'z') goto yy162;
2320
83
          goto yy139;
2321
3.63k
        } else {
2322
1.12k
          if (yych == '}') goto yy139;
2323
1.12k
          if (yych <= '~') goto yy164;
2324
1.03k
          goto yy139;
2325
1.12k
        }
2326
8.31k
      }
2327
8.72k
    }
2328
21.7k
yy166:
2329
21.7k
    YYDEBUG(166, *YYCURSOR);
2330
21.7k
    yyaccept = 2;
2331
21.7k
    yych = *(YYMARKER = ++YYCURSOR);
2332
21.7k
    if (yych <= 'N') {
2333
10.7k
      if (yych <= '%') {
2334
3.88k
        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.88k
        } else {
2340
3.88k
          if (yych <= '\r') goto yy164;
2341
3.88k
          if (yych <= 0x1F) goto yy139;
2342
3.88k
          if (yych <= '"') goto yy164;
2343
2.60k
          goto yy139;
2344
3.88k
        }
2345
6.90k
      } else {
2346
6.90k
        if (yych <= ':') {
2347
4.10k
          if (yych <= ')') goto yy164;
2348
3.84k
          if (yych <= '/') goto yy139;
2349
3.71k
          if (yych <= '9') goto yy162;
2350
191
          goto yy139;
2351
3.71k
        } else {
2352
2.79k
          if (yych <= '<') {
2353
1.63k
            if (yych <= ';') goto yy164;
2354
1.63k
            goto yy139;
2355
1.63k
          } else {
2356
1.16k
            if (yych <= '=') goto yy164;
2357
970
            if (yych <= '@') goto yy139;
2358
970
            goto yy162;
2359
970
          }
2360
2.79k
        }
2361
6.90k
      }
2362
10.9k
    } else {
2363
10.9k
      if (yych <= 'n') {
2364
8.44k
        if (yych <= 'Z') {
2365
2.90k
          if (yych <= 'O') goto yy183;
2366
2.90k
          if (yych == 'U') goto yy185;
2367
2.90k
          goto yy162;
2368
5.53k
        } else {
2369
5.53k
          if (yych <= '^') {
2370
4.56k
            if (yych <= ']') goto yy139;
2371
1
            goto yy164;
2372
4.56k
          } else {
2373
968
            if (yych == '`') goto yy139;
2374
968
            goto yy162;
2375
968
          }
2376
5.53k
        }
2377
8.44k
      } else {
2378
2.47k
        if (yych <= 'z') {
2379
1.29k
          if (yych <= 'o') goto yy183;
2380
712
          if (yych == 'u') goto yy185;
2381
267
          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.47k
      }
2392
10.9k
    }
2393
33.1k
yy167:
2394
33.1k
    YYDEBUG(167, *YYCURSOR);
2395
33.1k
    yyaccept = 2;
2396
33.1k
    yych = *(YYMARKER = ++YYCURSOR);
2397
33.1k
    if (yych <= 'E') {
2398
9.25k
      if (yych <= '%') {
2399
8.38k
        if (yych <= '\f') {
2400
7.44k
          if (yych <= 0x00) goto yy164;
2401
7.41k
          if (yych <= 0x08) goto yy139;
2402
61
          if (yych <= '\n') goto yy164;
2403
60
          goto yy139;
2404
941
        } else {
2405
941
          if (yych <= '\r') goto yy164;
2406
941
          if (yych <= 0x1F) goto yy139;
2407
926
          if (yych <= '"') goto yy164;
2408
924
          goto yy139;
2409
926
        }
2410
8.38k
      } else {
2411
863
        if (yych <= ':') {
2412
604
          if (yych <= ')') goto yy164;
2413
593
          if (yych <= '/') goto yy139;
2414
396
          if (yych <= '9') goto yy162;
2415
16
          goto yy139;
2416
396
        } else {
2417
259
          if (yych <= '<') {
2418
68
            if (yych <= ';') goto yy164;
2419
68
            goto yy139;
2420
191
          } else {
2421
191
            if (yych <= '=') goto yy164;
2422
115
            if (yych <= '@') goto yy139;
2423
18
            goto yy162;
2424
115
          }
2425
259
        }
2426
863
      }
2427
23.8k
    } else {
2428
23.8k
      if (yych <= 'e') {
2429
7.69k
        if (yych <= 'Z') {
2430
7.44k
          if (yych <= 'F') goto yy186;
2431
7.34k
          if (yych == 'N') goto yy187;
2432
157
          goto yy162;
2433
7.34k
        } else {
2434
254
          if (yych <= '^') {
2435
49
            if (yych <= ']') goto yy139;
2436
1
            goto yy164;
2437
205
          } else {
2438
205
            if (yych == '`') goto yy139;
2439
163
            goto yy162;
2440
205
          }
2441
254
        }
2442
16.1k
      } else {
2443
16.1k
        if (yych <= 'z') {
2444
16.0k
          if (yych <= 'f') goto yy186;
2445
909
          if (yych == 'n') goto yy187;
2446
655
          goto yy162;
2447
909
        } else {
2448
178
          if (yych <= '|') {
2449
130
            if (yych <= '{') goto yy139;
2450
100
            goto yy164;
2451
130
          } else {
2452
48
            if (yych == '~') goto yy164;
2453
48
            goto yy139;
2454
48
          }
2455
178
        }
2456
16.1k
      }
2457
23.8k
    }
2458
5.12k
yy168:
2459
5.12k
    YYDEBUG(168, *YYCURSOR);
2460
5.12k
    yyaccept = 2;
2461
5.12k
    yych = *(YYMARKER = ++YYCURSOR);
2462
5.12k
    if (yych <= '=') {
2463
981
      if (yych <= '"') {
2464
658
        if (yych <= '\n') {
2465
112
          if (yych <= 0x00) goto yy164;
2466
106
          if (yych <= 0x08) goto yy139;
2467
106
          goto yy164;
2468
546
        } else {
2469
546
          if (yych == '\r') goto yy164;
2470
546
          if (yych <= 0x1F) goto yy139;
2471
200
          goto yy164;
2472
546
        }
2473
658
      } else {
2474
323
        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
72
          if (yych == ';') goto yy164;
2481
65
          if (yych <= '<') goto yy139;
2482
3
          goto yy164;
2483
65
        }
2484
323
      }
2485
4.14k
    } else {
2486
4.14k
      if (yych <= '`') {
2487
1.76k
        if (yych <= 'Z') {
2488
87
          if (yych <= '@') goto yy139;
2489
87
          if (yych == 'R') goto yy189;
2490
68
          goto yy162;
2491
1.68k
        } else {
2492
1.68k
          if (yych <= ']') goto yy139;
2493
309
          if (yych <= '^') goto yy164;
2494
308
          if (yych <= '_') goto yy162;
2495
0
          goto yy139;
2496
308
        }
2497
2.37k
      } else {
2498
2.37k
        if (yych <= '{') {
2499
1.73k
          if (yych == 'r') goto yy189;
2500
685
          if (yych <= 'z') goto yy162;
2501
0
          goto yy139;
2502
685
        } else {
2503
641
          if (yych == '}') goto yy139;
2504
641
          if (yych <= '~') goto yy164;
2505
639
          goto yy139;
2506
641
        }
2507
2.37k
      }
2508
4.14k
    }
2509
1.79k
yy169:
2510
1.79k
    YYDEBUG(169, *YYCURSOR);
2511
1.79k
    yyaccept = 2;
2512
1.79k
    yych = *(YYMARKER = ++YYCURSOR);
2513
1.79k
    if (yych <= '=') {
2514
1.25k
      if (yych <= '"') {
2515
34
        if (yych <= '\n') {
2516
1
          if (yych <= 0x00) goto yy164;
2517
0
          if (yych <= 0x08) goto yy139;
2518
0
          goto yy164;
2519
33
        } else {
2520
33
          if (yych == '\r') goto yy164;
2521
26
          if (yych <= 0x1F) goto yy139;
2522
26
          goto yy164;
2523
26
        }
2524
1.22k
      } else {
2525
1.22k
        if (yych <= '9') {
2526
168
          if (yych <= '%') goto yy139;
2527
168
          if (yych <= ')') goto yy164;
2528
167
          if (yych <= '/') goto yy139;
2529
166
          goto yy162;
2530
1.05k
        } else {
2531
1.05k
          if (yych == ';') goto yy164;
2532
1
          if (yych <= '<') goto yy139;
2533
0
          goto yy164;
2534
1
        }
2535
1.22k
      }
2536
1.25k
    } else {
2537
542
      if (yych <= '`') {
2538
74
        if (yych <= 'Z') {
2539
73
          if (yych <= '@') goto yy139;
2540
73
          if (yych == 'E') goto yy190;
2541
2
          goto yy162;
2542
73
        } else {
2543
1
          if (yych <= ']') goto yy139;
2544
1
          if (yych <= '^') goto yy164;
2545
0
          if (yych <= '_') goto yy162;
2546
0
          goto yy139;
2547
0
        }
2548
468
      } else {
2549
468
        if (yych <= '{') {
2550
165
          if (yych == 'e') goto yy190;
2551
148
          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
468
      }
2559
542
    }
2560
17.4k
yy170:
2561
17.4k
    YYDEBUG(170, *YYCURSOR);
2562
17.4k
    ++YYCURSOR;
2563
17.4k
    YYFILL(1);
2564
17.4k
    yych = *YYCURSOR;
2565
17.4k
    if (yych <= '\\') {
2566
14.5k
      if (yych <= 0x00) goto yy171;
2567
14.3k
      if (yych <= '[') goto yy138;
2568
3
      goto yy172;
2569
14.3k
    } else {
2570
2.94k
      if (yych != '{') goto yy138;
2571
2.94k
    }
2572
144
yy171:
2573
144
    YYDEBUG(171, *YYCURSOR);
2574
144
    YYCURSOR = YYMARKER;
2575
144
    if (yyaccept <= 2) {
2576
144
      if (yyaccept <= 1) {
2577
144
        if (yyaccept == 0) {
2578
67
          goto yy140;
2579
77
        } else {
2580
77
          goto yy157;
2581
77
        }
2582
144
      } else {
2583
0
        goto yy164;
2584
0
      }
2585
144
    } 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.37M
yy175:
2617
1.37M
    YYDEBUG(175, *YYCURSOR);
2618
1.37M
    ++YYCURSOR;
2619
1.37M
    YYFILL(1);
2620
1.36M
    yych = *YYCURSOR;
2621
1.36M
    YYDEBUG(176, *YYCURSOR);
2622
1.36M
    if (yybm[0+yych] & 64) {
2623
1.33M
      goto yy175;
2624
1.33M
    }
2625
34.2k
    goto yy193;
2626
34.2k
yy177:
2627
25.6k
    YYDEBUG(177, *YYCURSOR);
2628
25.6k
    yyaccept = 1;
2629
25.6k
    YYMARKER = ++YYCURSOR;
2630
25.6k
    YYFILL(1);
2631
25.6k
    yych = *YYCURSOR;
2632
25.6k
    YYDEBUG(178, *YYCURSOR);
2633
25.6k
    if (yych <= '/') {
2634
2.38k
      if (yych <= 0x1F) {
2635
656
        if (yych <= '\n') {
2636
193
          if (yych <= 0x00) goto yy157;
2637
84
          if (yych <= 0x08) goto yy138;
2638
84
          goto yy157;
2639
463
        } else {
2640
463
          if (yych == '\r') goto yy157;
2641
294
          goto yy138;
2642
463
        }
2643
1.73k
      } else {
2644
1.73k
        if (yych <= '$') {
2645
465
          if (yych <= '"') goto yy157;
2646
248
          if (yych <= '#') goto yy138;
2647
171
          goto yy170;
2648
1.26k
        } else {
2649
1.26k
          if (yych <= '%') goto yy138;
2650
1.01k
          if (yych <= ')') goto yy157;
2651
926
          goto yy138;
2652
1.01k
        }
2653
1.73k
      }
2654
23.2k
    } else {
2655
23.2k
      if (yych <= ']') {
2656
21.9k
        if (yych <= ';') {
2657
21.5k
          if (yych <= '9') goto yy177;
2658
1.80k
          if (yych <= ':') goto yy138;
2659
1.80k
          goto yy157;
2660
1.80k
        } else {
2661
421
          if (yych == '=') goto yy157;
2662
156
          goto yy138;
2663
421
        }
2664
21.9k
      } else {
2665
1.23k
        if (yych <= '|') {
2666
753
          if (yych <= '^') goto yy157;
2667
365
          if (yych <= '{') goto yy138;
2668
0
          goto yy157;
2669
483
        } else {
2670
483
          if (yych == '~') goto yy157;
2671
483
          goto yy138;
2672
483
        }
2673
1.23k
      }
2674
23.2k
    }
2675
82.1k
yy179:
2676
82.1k
    YYDEBUG(179, *YYCURSOR);
2677
82.1k
    ++YYCURSOR;
2678
83.4k
yy180:
2679
83.4k
    YYDEBUG(180, *YYCURSOR);
2680
83.4k
    yyleng = YYCURSOR - SCNG(yy_text);
2681
83.4k
#line 675 "Zend/zend_ini_scanner.l"
2682
83.4k
    { /* Comment */
2683
83.4k
  BEGIN(INITIAL);
2684
83.4k
  SCNG(lineno)++;
2685
83.4k
  return END_OF_LINE;
2686
82.1k
}
2687
0
#line 2688 "Zend/zend_ini_scanner.c"
2688
5.45k
yy181:
2689
5.45k
    YYDEBUG(181, *YYCURSOR);
2690
5.45k
    yych = *++YYCURSOR;
2691
5.45k
    if (yych == '\n') goto yy179;
2692
1.33k
    goto yy180;
2693
3.56k
yy182:
2694
3.56k
    YYDEBUG(182, *YYCURSOR);
2695
3.56k
    yyaccept = 2;
2696
3.56k
    yych = *(YYMARKER = ++YYCURSOR);
2697
3.56k
    if (yych <= '=') {
2698
594
      if (yych <= '"') {
2699
594
        if (yych <= '\n') {
2700
594
          if (yych <= 0x00) goto yy164;
2701
594
          if (yych <= 0x08) goto yy139;
2702
216
          goto yy164;
2703
594
        } else {
2704
0
          if (yych == '\r') goto yy164;
2705
0
          if (yych <= 0x1F) goto yy139;
2706
0
          goto yy164;
2707
0
        }
2708
594
      } 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
2.96k
    } else {
2721
2.96k
      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
2.96k
      } else {
2733
2.96k
        if (yych <= '{') {
2734
2.96k
          if (yych == 'l') goto yy195;
2735
2.87k
          if (yych <= 'z') goto yy162;
2736
0
          goto yy139;
2737
2.87k
        } else {
2738
0
          if (yych == '}') goto yy139;
2739
0
          if (yych <= '~') goto yy164;
2740
0
          goto yy139;
2741
0
        }
2742
2.96k
      }
2743
2.96k
    }
2744
584
yy183:
2745
584
    YYDEBUG(183, *YYCURSOR);
2746
584
    yyaccept = 3;
2747
584
    yych = *(YYMARKER = ++YYCURSOR);
2748
584
    if (yych <= '<') {
2749
432
      if (yych <= ' ') {
2750
431
        if (yych <= '\n') {
2751
431
          if (yych <= 0x00) goto yy184;
2752
431
          if (yych <= 0x08) goto yy139;
2753
351
          if (yych <= '\t') goto yy196;
2754
351
        } else {
2755
0
          if (yych == '\r') goto yy184;
2756
0
          if (yych <= 0x1F) goto yy139;
2757
0
          goto yy196;
2758
0
        }
2759
431
      } 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
432
    } 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.40k
yy184:
2796
1.40k
    YYDEBUG(184, *YYCURSOR);
2797
1.40k
    yyleng = YYCURSOR - SCNG(yy_text);
2798
1.40k
#line 495 "Zend/zend_ini_scanner.l"
2799
1.40k
    { /* FALSE value (when used outside option value/offset this causes parse error!)*/
2800
1.40k
  RETURN_TOKEN(BOOL_FALSE, "", 0);
2801
0
}
2802
0
#line 2803 "Zend/zend_ini_scanner.c"
2803
445
yy185:
2804
445
    YYDEBUG(185, *YYCURSOR);
2805
445
    yyaccept = 2;
2806
445
    yych = *(YYMARKER = ++YYCURSOR);
2807
445
    if (yych <= '=') {
2808
177
      if (yych <= '"') {
2809
174
        if (yych <= '\n') {
2810
3
          if (yych <= 0x00) goto yy164;
2811
0
          if (yych <= 0x08) goto yy139;
2812
0
          goto yy164;
2813
171
        } else {
2814
171
          if (yych == '\r') goto yy164;
2815
171
          if (yych <= 0x1F) goto yy139;
2816
5
          goto yy164;
2817
171
        }
2818
174
      } 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
268
    } else {
2831
268
      if (yych <= '`') {
2832
3
        if (yych <= 'Z') {
2833
3
          if (yych <= '@') goto yy139;
2834
3
          if (yych == 'L') goto yy199;
2835
3
          goto yy162;
2836
3
        } 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
265
      } else {
2843
265
        if (yych <= '{') {
2844
263
          if (yych == 'l') goto yy199;
2845
130
          if (yych <= 'z') goto yy162;
2846
0
          goto yy139;
2847
130
        } else {
2848
2
          if (yych == '}') goto yy139;
2849
2
          if (yych <= '~') goto yy164;
2850
2
          goto yy139;
2851
2
        }
2852
265
      }
2853
268
    }
2854
15.1k
yy186:
2855
15.1k
    YYDEBUG(186, *YYCURSOR);
2856
15.1k
    yyaccept = 2;
2857
15.1k
    yych = *(YYMARKER = ++YYCURSOR);
2858
15.1k
    if (yych <= '=') {
2859
1.39k
      if (yych <= '"') {
2860
470
        if (yych <= '\n') {
2861
43
          if (yych <= 0x00) goto yy164;
2862
8
          if (yych <= 0x08) goto yy139;
2863
5
          goto yy164;
2864
427
        } else {
2865
427
          if (yych == '\r') goto yy164;
2866
427
          if (yych <= 0x1F) goto yy139;
2867
284
          goto yy164;
2868
427
        }
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.8k
    } else {
2882
13.8k
      if (yych <= '`') {
2883
899
        if (yych <= 'Z') {
2884
402
          if (yych <= '@') goto yy139;
2885
370
          if (yych == 'F') goto yy200;
2886
370
          goto yy162;
2887
497
        } else {
2888
497
          if (yych <= ']') goto yy139;
2889
481
          if (yych <= '^') goto yy164;
2890
481
          if (yych <= '_') goto yy162;
2891
481
          goto yy139;
2892
481
        }
2893
12.9k
      } else {
2894
12.9k
        if (yych <= '{') {
2895
12.4k
          if (yych == 'f') goto yy200;
2896
3.19k
          if (yych <= 'z') goto yy162;
2897
55
          goto yy139;
2898
3.19k
        } else {
2899
406
          if (yych == '}') goto yy139;
2900
406
          if (yych <= '~') goto yy164;
2901
406
          goto yy139;
2902
406
        }
2903
12.9k
      }
2904
13.8k
    }
2905
7.56k
yy187:
2906
7.56k
    YYDEBUG(187, *YYCURSOR);
2907
7.56k
    yyaccept = 4;
2908
7.56k
    yych = *(YYMARKER = ++YYCURSOR);
2909
7.56k
    if (yybm[0+yych] & 32) {
2910
5.82k
      goto yy162;
2911
5.82k
    }
2912
1.74k
    if (yych <= ')') {
2913
246
      if (yych <= '\f') {
2914
207
        if (yych <= 0x08) {
2915
12
          if (yych >= 0x01) goto yy139;
2916
195
        } else {
2917
195
          if (yych <= '\t') goto yy201;
2918
195
          if (yych >= '\v') goto yy139;
2919
195
        }
2920
207
      } 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.49k
    } else {
2931
1.49k
      if (yych <= ']') {
2932
47
        if (yych <= ';') {
2933
0
          if (yych <= ':') goto yy139;
2934
47
        } else {
2935
47
          if (yych != '=') goto yy139;
2936
47
        }
2937
1.44k
      } else {
2938
1.44k
        if (yych <= '|') {
2939
0
          if (yych <= '^') goto yy188;
2940
0
          if (yych <= '{') goto yy139;
2941
1.44k
        } else {
2942
1.44k
          if (yych != '~') goto yy139;
2943
1.44k
        }
2944
1.44k
      }
2945
1.49k
    }
2946
183
yy188:
2947
183
    YYDEBUG(188, *YYCURSOR);
2948
183
    yyleng = YYCURSOR - SCNG(yy_text);
2949
183
#line 491 "Zend/zend_ini_scanner.l"
2950
183
    { /* TRUE value (when used outside option value/offset this causes parse error!) */
2951
183
  RETURN_TOKEN(BOOL_TRUE, "1", 1);
2952
0
}
2953
0
#line 2954 "Zend/zend_ini_scanner.c"
2954
1.06k
yy189:
2955
1.06k
    YYDEBUG(189, *YYCURSOR);
2956
1.06k
    yyaccept = 2;
2957
1.06k
    yych = *(YYMARKER = ++YYCURSOR);
2958
1.06k
    if (yych <= '=') {
2959
7
      if (yych <= '"') {
2960
2
        if (yych <= '\n') {
2961
0
          if (yych <= 0x00) goto yy164;
2962
0
          if (yych <= 0x08) goto yy139;
2963
0
          goto yy164;
2964
2
        } else {
2965
2
          if (yych == '\r') goto yy164;
2966
2
          if (yych <= 0x1F) goto yy139;
2967
0
          goto yy164;
2968
2
        }
2969
5
      } else {
2970
5
        if (yych <= '9') {
2971
5
          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
5
      }
2981
1.06k
    } else {
2982
1.06k
      if (yych <= '`') {
2983
863
        if (yych <= 'Z') {
2984
861
          if (yych <= '@') goto yy139;
2985
861
          if (yych == 'U') goto yy203;
2986
861
          goto yy162;
2987
861
        } else {
2988
2
          if (yych <= ']') goto yy139;
2989
2
          if (yych <= '^') goto yy164;
2990
2
          if (yych <= '_') goto yy162;
2991
0
          goto yy139;
2992
2
        }
2993
863
      } else {
2994
198
        if (yych <= '{') {
2995
197
          if (yych == 'u') goto yy203;
2996
57
          if (yych <= 'z') goto yy162;
2997
0
          goto yy139;
2998
57
        } else {
2999
1
          if (yych == '}') goto yy139;
3000
0
          if (yych <= '~') goto yy164;
3001
0
          goto yy139;
3002
0
        }
3003
198
      }
3004
1.06k
    }
3005
88
yy190:
3006
88
    YYDEBUG(190, *YYCURSOR);
3007
88
    yyaccept = 2;
3008
88
    yych = *(YYMARKER = ++YYCURSOR);
3009
88
    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
85
    } else {
3033
85
      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
14
        if (yych <= '{') {
3046
13
          if (yych == 's') goto yy187;
3047
3
          if (yych <= 'z') goto yy162;
3048
0
          goto yy139;
3049
3
        } else {
3050
1
          if (yych == '}') goto yy139;
3051
1
          if (yych <= '~') goto yy164;
3052
1
          goto yy139;
3053
1
        }
3054
14
      }
3055
85
    }
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
34.2k
yy193:
3069
34.2k
    YYDEBUG(193, *YYCURSOR);
3070
34.2k
    ++YYCURSOR;
3071
34.2k
    YYDEBUG(194, *YYCURSOR);
3072
34.2k
    yyleng = YYCURSOR - SCNG(yy_text);
3073
34.2k
#line 389 "Zend/zend_ini_scanner.l"
3074
34.2k
    { /* Raw string */
3075
  /* Eat leading and trailing single quotes */
3076
34.2k
  if (yytext[0] == '\'' && yytext[yyleng - 1] == '\'') {
3077
34.2k
    SCNG(yy_text)++;
3078
34.2k
    yyleng = yyleng - 2;
3079
34.2k
  }
3080
34.2k
  RETURN_TOKEN(TC_RAW, yytext, yyleng);
3081
0
}
3082
0
#line 3083 "Zend/zend_ini_scanner.c"
3083
90
yy195:
3084
90
    YYDEBUG(195, *YYCURSOR);
3085
90
    yyaccept = 2;
3086
90
    yych = *(YYMARKER = ++YYCURSOR);
3087
90
    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
90
    } else {
3111
90
      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
90
      } else {
3123
90
        if (yych <= '{') {
3124
90
          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
90
      }
3133
90
    }
3134
921
yy196:
3135
921
    YYDEBUG(196, *YYCURSOR);
3136
921
    ++YYCURSOR;
3137
921
    YYFILL(1);
3138
921
    yych = *YYCURSOR;
3139
921
    YYDEBUG(197, *YYCURSOR);
3140
921
    if (yych == '\t') goto yy196;
3141
921
    if (yych == ' ') goto yy196;
3142
218
    goto yy184;
3143
218
yy198:
3144
178
    YYDEBUG(198, *YYCURSOR);
3145
178
    yyaccept = 2;
3146
178
    yych = *(YYMARKER = ++YYCURSOR);
3147
178
    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
90
    } else {
3171
90
      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
90
      } else {
3183
90
        if (yych <= '{') {
3184
90
          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
90
      }
3193
90
    }
3194
133
yy199:
3195
133
    YYDEBUG(199, *YYCURSOR);
3196
133
    yyaccept = 2;
3197
133
    yych = *(YYMARKER = ++YYCURSOR);
3198
133
    if (yych <= '=') {
3199
5
      if (yych <= '"') {
3200
3
        if (yych <= '\n') {
3201
3
          if (yych <= 0x00) goto yy164;
3202
0
          if (yych <= 0x08) goto yy139;
3203
0
          goto yy164;
3204
0
        } else {
3205
0
          if (yych == '\r') goto yy164;
3206
0
          if (yych <= 0x1F) goto yy139;
3207
0
          goto yy164;
3208
0
        }
3209
3
      } else {
3210
2
        if (yych <= '9') {
3211
2
          if (yych <= '%') goto yy139;
3212
2
          if (yych <= ')') goto yy164;
3213
2
          if (yych <= '/') goto yy139;
3214
0
          goto yy162;
3215
2
        } else {
3216
0
          if (yych == ';') goto yy164;
3217
0
          if (yych <= '<') goto yy139;
3218
0
          goto yy164;
3219
0
        }
3220
2
      }
3221
128
    } else {
3222
128
      if (yych <= '`') {
3223
0
        if (yych <= 'Z') {
3224
0
          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
128
    }
3245
9.39k
yy200:
3246
9.39k
    YYDEBUG(200, *YYCURSOR);
3247
9.39k
    yyaccept = 3;
3248
9.39k
    yych = *(YYMARKER = ++YYCURSOR);
3249
9.39k
    if (yybm[0+yych] & 32) {
3250
5.18k
      goto yy162;
3251
5.18k
    }
3252
4.21k
    if (yych <= ')') {
3253
1.48k
      if (yych <= '\f') {
3254
1.02k
        if (yych <= 0x08) {
3255
676
          if (yych <= 0x00) goto yy184;
3256
606
          goto yy139;
3257
676
        } else {
3258
348
          if (yych <= '\t') goto yy196;
3259
161
          if (yych <= '\n') goto yy184;
3260
34
          goto yy139;
3261
161
        }
3262
1.02k
      } else {
3263
460
        if (yych <= ' ') {
3264
138
          if (yych <= '\r') goto yy184;
3265
138
          if (yych <= 0x1F) goto yy139;
3266
31
          goto yy196;
3267
322
        } else {
3268
322
          if (yych <= '"') goto yy184;
3269
160
          if (yych <= '%') goto yy139;
3270
142
          goto yy184;
3271
160
        }
3272
460
      }
3273
2.73k
    } else {
3274
2.73k
      if (yych <= ']') {
3275
562
        if (yych <= ';') {
3276
269
          if (yych <= ':') goto yy139;
3277
72
          goto yy184;
3278
293
        } else {
3279
293
          if (yych == '=') goto yy184;
3280
237
          goto yy139;
3281
293
        }
3282
2.16k
      } else {
3283
2.16k
        if (yych <= '|') {
3284
1.63k
          if (yych <= '^') goto yy184;
3285
1.55k
          if (yych <= '{') goto yy139;
3286
0
          goto yy184;
3287
1.55k
        } else {
3288
530
          if (yych == '~') goto yy184;
3289
412
          goto yy139;
3290
530
        }
3291
2.16k
      }
3292
2.73k
    }
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
140
yy203:
3303
140
    YYDEBUG(203, *YYCURSOR);
3304
140
    yyaccept = 2;
3305
140
    yych = *(YYMARKER = ++YYCURSOR);
3306
140
    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
140
    } else {
3330
140
      if (yych <= '`') {
3331
0
        if (yych <= 'Z') {
3332
0
          if (yych <= '@') goto yy139;
3333
0
          if (yych == 'E') goto yy187;
3334
0
          goto yy162;
3335
0
        } else {
3336
0
          if (yych <= ']') goto yy139;
3337
0
          if (yych <= '^') goto yy164;
3338
0
          if (yych <= '_') goto yy162;
3339
0
          goto yy139;
3340
0
        }
3341
140
      } else {
3342
140
        if (yych <= '{') {
3343
109
          if (yych == 'e') goto yy187;
3344
0
          if (yych <= 'z') goto yy162;
3345
0
          goto yy139;
3346
31
        } else {
3347
31
          if (yych == '}') goto yy139;
3348
31
          if (yych <= '~') goto yy164;
3349
31
          goto yy139;
3350
31
        }
3351
140
      }
3352
140
    }
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
18
    goto yy215;
3457
356
yy210:
3458
356
    YYDEBUG(210, *YYCURSOR);
3459
356
    ++YYCURSOR;
3460
356
    YYFILL(1);
3461
354
    yych = *YYCURSOR;
3462
354
    YYDEBUG(211, *YYCURSOR);
3463
354
    if (yybm[0+yych] & 64) {
3464
333
      goto yy210;
3465
333
    }
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
3
yy213:
3474
3
    YYDEBUG(213, *YYCURSOR);
3475
3
    ++YYCURSOR;
3476
3
    YYDEBUG(214, *YYCURSOR);
3477
3
    yyleng = YYCURSOR - SCNG(yy_text);
3478
3
#line 686 "Zend/zend_ini_scanner.l"
3479
3
    {
3480
3
  return 0;
3481
0
}
3482
0
#line 3483 "Zend/zend_ini_scanner.c"
3483
18
yy215:
3484
18
    YYDEBUG(215, *YYCURSOR);
3485
18
    ++YYCURSOR;
3486
18
    YYFILL(2);
3487
18
    yych = *YYCURSOR;
3488
18
    YYDEBUG(216, *YYCURSOR);
3489
18
    if (yybm[0+yych] & 128) {
3490
0
      goto yy215;
3491
0
    }
3492
18
    if (yych <= 0x08) goto yy217;
3493
18
    if (yych <= '\n') goto yy218;
3494
1
    if (yych == '\r') goto yy219;
3495
18
yy217:
3496
18
    YYDEBUG(217, *YYCURSOR);
3497
18
    yyleng = YYCURSOR - SCNG(yy_text);
3498
18
#line 398 "Zend/zend_ini_scanner.l"
3499
18
    { /* End of section */
3500
18
  BEGIN(INITIAL);
3501
18
  SCNG(lineno)++;
3502
18
  return ']';
3503
1
}
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
991k
yyc_ST_DOUBLE_QUOTES:
3517
991k
  {
3518
991k
    static const unsigned char yybm[] = {
3519
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3520
991k
        0, 128,   0,   0,   0,   0,   0,   0, 
3521
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3522
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3523
991k
      128,   0,   0,   0,   0,   0,   0,   0, 
3524
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3525
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3526
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3527
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3528
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3529
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3530
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3531
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3532
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3533
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3534
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3535
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3536
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3537
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3538
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3539
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3540
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3541
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3542
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3543
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3544
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3545
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3546
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3547
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3548
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3549
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3550
991k
        0,   0,   0,   0,   0,   0,   0,   0, 
3551
991k
    };
3552
991k
    YYDEBUG(220, *YYCURSOR);
3553
991k
    YYFILL(2);
3554
991k
    yych = *YYCURSOR;
3555
991k
    if (yych == '"') goto yy224;
3556
353k
    if (yych == '$') goto yy227;
3557
346k
    YYDEBUG(222, *YYCURSOR);
3558
346k
    ++YYCURSOR;
3559
353k
yy223:
3560
353k
    YYDEBUG(223, *YYCURSOR);
3561
353k
    yyleng = YYCURSOR - SCNG(yy_text);
3562
353k
#line 620 "Zend/zend_ini_scanner.l"
3563
353k
    { /* Escape double quoted string contents */
3564
353k
  if (YYCURSOR > YYLIMIT) {
3565
0
    return 0;
3566
0
  }
3567
3568
353k
  const unsigned char *s = SCNG(yy_text);
3569
3570
8.43M
  while (s < YYLIMIT) {
3571
8.43M
    switch (*s++) {
3572
347k
      case '"':
3573
347k
        break;
3574
72.3k
      case '$':
3575
72.3k
        if (s < YYLIMIT && *s == '{') {
3576
2
          break;
3577
2
        }
3578
72.3k
        continue;
3579
72.3k
      case '\\':
3580
42.8k
        if (s < YYLIMIT) {
3581
42.7k
          unsigned char escaped = *s++;
3582
          /* A special case for Windows paths, e.g. key="C:\path\" */
3583
42.7k
          if (escaped == '"' && (s >= YYLIMIT || *s == '\n' || *s == '\r')) {
3584
1
            break;
3585
1
          }
3586
42.7k
        }
3587
42.8k
        ZEND_FALLTHROUGH;
3588
8.01M
      default:
3589
8.01M
        continue;
3590
8.43M
    }
3591
3592
347k
    s--;
3593
347k
    break;
3594
8.43M
  }
3595
3596
353k
  YYCURSOR = s;
3597
353k
  yyleng = YYCURSOR - SCNG(yy_text);
3598
3599
353k
  zend_ini_escape_string(ini_lval, yytext, yyleng, '"');
3600
353k
  Z_EXTRA_P(ini_lval) = 0;
3601
353k
  return TC_QUOTED_STRING;
3602
353k
}
3603
0
#line 3604 "Zend/zend_ini_scanner.c"
3604
694k
yy224:
3605
694k
    YYDEBUG(224, *YYCURSOR);
3606
694k
    ++YYCURSOR;
3607
694k
    YYFILL(1);
3608
694k
    yych = *YYCURSOR;
3609
694k
    YYDEBUG(225, *YYCURSOR);
3610
694k
    if (yybm[0+yych] & 128) {
3611
56.6k
      goto yy224;
3612
56.6k
    }
3613
638k
    YYDEBUG(226, *YYCURSOR);
3614
638k
    yyleng = YYCURSOR - SCNG(yy_text);
3615
638k
#line 615 "Zend/zend_ini_scanner.l"
3616
638k
    { /* Double quoted '"' string ends */
3617
638k
  yy_pop_state();
3618
638k
  return '"';
3619
694k
}
3620
0
#line 3621 "Zend/zend_ini_scanner.c"
3621
7.40k
yy227:
3622
7.40k
    YYDEBUG(227, *YYCURSOR);
3623
7.40k
    yych = *++YYCURSOR;
3624
7.40k
    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.40k
}
3634
7.40k
#line 3635 "Zend/zend_ini_scanner.c"
3635
7.40k
  }
3636
/* *********************************** */
3637
17
yyc_ST_VAR_FALLBACK:
3638
17
  {
3639
17
    static const unsigned char yybm[] = {
3640
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3641
17
        8,  24,   0,   8,   8,   0,   8,   8, 
3642
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3643
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3644
17
       24,   8,   0,   8, 128,   8,   8,   0, 
3645
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3646
17
      104, 104, 104, 104, 104, 104, 104, 104, 
3647
17
      104, 104,   8,   0,   8,   8,   8,   8, 
3648
17
        8,  72,  72,  72,  72,  72,  72,  72, 
3649
17
       72,  72,  72,  72,  72,  72,  72,  72, 
3650
17
       72,  72,  72,  72,  72,  72,  72,  72, 
3651
17
       72,  72,  72,   8, 128,   8,   8,  72, 
3652
17
        8,  72,  72,  72,  72,  72,  72,  72, 
3653
17
       72,  72,  72,  72,  72,  72,  72,  72, 
3654
17
       72,  72,  72,  72,  72,  72,  72,  72, 
3655
17
       72,  72,  72,   8,   8,   0,   8,   8, 
3656
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3657
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3658
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3659
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3660
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3661
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3662
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3663
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3664
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3665
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3666
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3667
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3668
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3669
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3670
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3671
17
        8,   8,   8,   8,   8,   8,   8,   8, 
3672
17
    };
3673
17
    YYDEBUG(230, *YYCURSOR);
3674
17
    YYFILL(2);
3675
17
    yych = *YYCURSOR;
3676
17
    if (yybm[0+yych] & 16) {
3677
0
      goto yy235;
3678
0
    }
3679
17
    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
8
      if (yych <= '\\') {
3699
3
        if (yych <= ';') {
3700
2
          if (yych <= '9') goto yy243;
3701
0
          if (yych >= ';') goto yy237;
3702
1
        } else {
3703
1
          if (yych <= '@') goto yy232;
3704
1
          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
8
    }
3716
8
yy232:
3717
8
    YYDEBUG(232, *YYCURSOR);
3718
8
    yyaccept = 0;
3719
8
    YYMARKER = ++YYCURSOR;
3720
8
    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
18
yy246:
3863
18
    YYDEBUG(246, *YYCURSOR);
3864
18
    yyaccept = 2;
3865
18
    YYMARKER = ++YYCURSOR;
3866
18
    YYFILL(1);
3867
18
    yych = *YYCURSOR;
3868
18
    YYDEBUG(247, *YYCURSOR);
3869
18
    if (yybm[0+yych] & 64) {
3870
12
      goto yy246;
3871
12
    }
3872
6
    if (yych <= '$') {
3873
6
      if (yych <= '\r') {
3874
5
        if (yych == '\n') goto yy248;
3875
1
        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
6
    } 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
42
yyc_ST_VARNAME:
4008
42
  YYDEBUG(260, *YYCURSOR);
4009
42
  YYFILL(2);
4010
42
  yych = *YYCURSOR;
4011
42
  if (yych <= ')') {
4012
10
    if (yych <= ' ') {
4013
3
      if (yych <= '\n') {
4014
2
        if (yych <= 0x00) goto yy262;
4015
2
        if (yych <= 0x08) goto yy264;
4016
2
      } 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
12
      if (yych <= ';') {
4030
12
        if (yych <= '9') goto yy264;
4031
11
        if (yych <= ':') goto yy266;
4032
11
      } else {
4033
0
        if (yych == '=') goto yy262;
4034
0
        if (yych <= 'Z') goto yy264;
4035
0
      }
4036
20
    } else {
4037
20
      if (yych <= 'z') {
4038
18
        if (yych <= '\\') goto yy264;
4039
18
        if (yych >= '_') goto yy264;
4040
18
      } else {
4041
2
        if (yych == '}') goto yy267;
4042
0
        if (yych >= 0x7F) goto yy264;
4043
0
      }
4044
20
    }
4045
32
  }
4046
12
yy262:
4047
12
  YYDEBUG(262, *YYCURSOR);
4048
12
  ++YYCURSOR;
4049
12
  YYDEBUG(263, *YYCURSOR);
4050
12
  yyleng = YYCURSOR - SCNG(yy_text);
4051
12
#line 686 "Zend/zend_ini_scanner.l"
4052
12
  {
4053
12
  return 0;
4054
42
}
4055
0
#line 4056 "Zend/zend_ini_scanner.c"
4056
20
yy264:
4057
20
  YYDEBUG(264, *YYCURSOR);
4058
20
  ++YYCURSOR;
4059
20
yy265:
4060
20
  YYDEBUG(265, *YYCURSOR);
4061
20
  yyleng = YYCURSOR - SCNG(yy_text);
4062
20
#line 434 "Zend/zend_ini_scanner.l"
4063
20
  { /* Variable name */
4064
20
  if (YYCURSOR[0] == ':' && YYCURSOR[1] == '-') {
4065
0
    YYCURSOR++;
4066
0
    goto fallback_lexing;
4067
0
  }
4068
4069
276
  while (YYCURSOR < YYLIMIT) {
4070
276
    switch (*YYCURSOR++) {
4071
0
      case '=':
4072
2
      case '\n':
4073
2
      case '\r':
4074
2
      case '\t':
4075
5
      case ';':
4076
6
      case '&':
4077
6
      case '|':
4078
6
      case '^':
4079
7
      case '$':
4080
7
      case '~':
4081
11
      case '(':
4082
12
      case ')':
4083
12
      case '{':
4084
12
      case '}':
4085
12
      case '!':
4086
12
      case '"':
4087
12
      case '[':
4088
12
      case ']':
4089
12
        break;
4090
      /* ':' is only allowed if it isn't followed by '-'. */
4091
39
      case ':':
4092
39
        if (YYCURSOR[0] == '-') {
4093
8
          break;
4094
31
        } else {
4095
31
          continue;
4096
31
        }
4097
225
      default:
4098
225
        continue;
4099
276
    }
4100
4101
20
    YYCURSOR--;
4102
20
    yyleng = YYCURSOR - SCNG(yy_text);
4103
20
    break;
4104
276
  }
4105
4106
  /* Eat leading whitespace */
4107
20
  EAT_LEADING_WHITESPACE();
4108
4109
  /* Eat trailing whitespace */
4110
20
  EAT_TRAILING_WHITESPACE();
4111
4112
20
  RETURN_TOKEN(TC_VARNAME, yytext, yyleng);
4113
0
}
4114
0
#line 4115 "Zend/zend_ini_scanner.c"
4115
8
yy266:
4116
8
  YYDEBUG(266, *YYCURSOR);
4117
8
  yych = *++YYCURSOR;
4118
8
  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
8
}
4130
0
#line 4131 "Zend/zend_ini_scanner.c"
4131
8
yy269:
4132
8
  YYDEBUG(269, *YYCURSOR);
4133
8
  ++YYCURSOR;
4134
8
  YYDEBUG(270, *YYCURSOR);
4135
8
  yyleng = YYCURSOR - SCNG(yy_text);
4136
8
#line 427 "Zend/zend_ini_scanner.l"
4137
8
  { /* End Variable name, fallback start */
4138
8
fallback_lexing:
4139
8
  yy_pop_state();
4140
8
  yy_push_state(ST_VAR_FALLBACK);
4141
8
  return TC_FALLBACK;
4142
8
}
4143
0
#line 4144 "Zend/zend_ini_scanner.c"
4144
/* *********************************** */
4145
453
yyc_ST_RAW:
4146
453
  {
4147
453
    static const unsigned char yybm[] = {
4148
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4149
453
       64, 192,   0,  64,  64,   0,  64,  64, 
4150
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4151
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4152
453
      192,  64,  64,  64,  64,  64,  64,  64, 
4153
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4154
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4155
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4156
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4157
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4158
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4159
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4160
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4161
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4162
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4163
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4164
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4165
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4166
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4167
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4168
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4169
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4170
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4171
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4172
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4173
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4174
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4175
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4176
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4177
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4178
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4179
453
       64,  64,  64,  64,  64,  64,  64,  64, 
4180
453
    };
4181
453
    YYDEBUG(271, *YYCURSOR);
4182
453
    YYFILL(3);
4183
453
    yych = *YYCURSOR;
4184
453
    if (yych <= '\f') {
4185
202
      if (yych <= 0x08) {
4186
0
        if (yych >= 0x01) goto yy275;
4187
202
      } else {
4188
202
        if (yych <= '\t') goto yy277;
4189
202
        if (yych <= '\n') goto yy278;
4190
0
        goto yy275;
4191
202
      }
4192
251
    } else {
4193
251
      if (yych <= ' ') {
4194
9
        if (yych <= '\r') goto yy280;
4195
3
        if (yych <= 0x1F) goto yy275;
4196
0
        goto yy277;
4197
242
      } else {
4198
242
        if (yych == ';') goto yy281;
4199
239
        goto yy275;
4200
242
      }
4201
251
    }
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
453
}
4211
0
#line 4212 "Zend/zend_ini_scanner.c"
4212
242
yy275:
4213
242
    YYDEBUG(275, *YYCURSOR);
4214
242
    ++YYCURSOR;
4215
242
yy276:
4216
242
    YYDEBUG(276, *YYCURSOR);
4217
242
    yyleng = YYCURSOR - SCNG(yy_text);
4218
242
#line 522 "Zend/zend_ini_scanner.l"
4219
242
    { /* Raw value, only used when SCNG(scanner_mode) == ZEND_INI_SCANNER_RAW. */
4220
242
  const unsigned char *sc = NULL;
4221
242
  EAT_LEADING_WHITESPACE();
4222
3.64k
  while (YYCURSOR < YYLIMIT) {
4223
3.61k
    switch (*YYCURSOR) {
4224
202
      case '\n':
4225
208
      case '\r':
4226
208
        goto end_raw_value_chars;
4227
0
        break;
4228
185
      case ';':
4229
185
        if (sc == NULL) {
4230
156
          sc = YYCURSOR;
4231
156
        }
4232
185
        YYCURSOR++;
4233
185
        break;
4234
235
      case '"':
4235
235
        if (yytext[0] == '"') {
4236
144
          sc = NULL;
4237
144
        }
4238
235
        YYCURSOR++;
4239
235
        break;
4240
2.98k
      default:
4241
2.98k
        YYCURSOR++;
4242
2.98k
        break;
4243
3.61k
    }
4244
3.61k
  }
4245
242
end_raw_value_chars:
4246
242
  if (sc) {
4247
117
    yyleng = sc - SCNG(yy_text);
4248
125
  } else {
4249
125
    yyleng = YYCURSOR - SCNG(yy_text);
4250
125
  }
4251
4252
242
  EAT_TRAILING_WHITESPACE();
4253
4254
  /* Eat leading and trailing double quotes */
4255
242
  if (yyleng > 1 && yytext[0] == '"' && yytext[yyleng - 1] == '"') {
4256
126
    SCNG(yy_text)++;
4257
126
    yyleng = yyleng - 2;
4258
126
  }
4259
4260
242
  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
202
yy278:
4281
202
    YYDEBUG(278, *YYCURSOR);
4282
202
    ++YYCURSOR;
4283
208
yy279:
4284
208
    YYDEBUG(279, *YYCURSOR);
4285
208
    yyleng = YYCURSOR - SCNG(yy_text);
4286
208
#line 570 "Zend/zend_ini_scanner.l"
4287
208
    { /* End of option value */
4288
208
  BEGIN(INITIAL);
4289
208
  SCNG(lineno)++;
4290
208
  return END_OF_LINE;
4291
202
}
4292
0
#line 4293 "Zend/zend_ini_scanner.c"
4293
6
yy280:
4294
6
    YYDEBUG(280, *YYCURSOR);
4295
6
    yych = *++YYCURSOR;
4296
6
    if (yych == '\n') goto yy278;
4297
6
    goto yy279;
4298
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
}