summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2015-03-04 02:05:28 +0300
committerDmitry Stogov <dmitry@zend.com>2015-03-04 02:05:28 +0300
commit2fa8d67a5ce59ba9ba6192481e3c2522c3ff5542 (patch)
tree9d9d57215f756c387722e74d7d1e1c2de3276a1c
parent2841aa95db84f3563c94c90f84bf7f47ba159a2d (diff)
downloadphp-git-2fa8d67a5ce59ba9ba6192481e3c2522c3ff5542.tar.gz
Use zend_string* instead of char* for opened_patch handling. Avoid reallocations and improve string reuse.
-rw-r--r--Zend/zend.c10
-rw-r--r--Zend/zend.h8
-rw-r--r--Zend/zend_language_scanner.c5430
-rw-r--r--Zend/zend_language_scanner.l14
-rw-r--r--Zend/zend_language_scanner_defs.h2
-rw-r--r--Zend/zend_stream.c2
-rw-r--r--Zend/zend_stream.h2
-rw-r--r--Zend/zend_vm_def.h16
-rw-r--r--Zend/zend_vm_execute.h48
-rw-r--r--ext/bz2/bz2.c18
-rw-r--r--ext/bz2/php_bz2.h2
-rw-r--r--ext/dba/dba.c22
-rw-r--r--ext/gd/gd.c6
-rw-r--r--ext/opcache/ZendAccelerator.c75
-rw-r--r--ext/opcache/zend_accelerator_module.c19
-rw-r--r--ext/phar/dirstream.c2
-rw-r--r--ext/phar/dirstream.h2
-rw-r--r--ext/phar/func_interceptors.c33
-rw-r--r--ext/phar/phar.c37
-rw-r--r--ext/phar/phar_internal.h4
-rw-r--r--ext/phar/phar_object.c19
-rw-r--r--ext/phar/stream.c10
-rw-r--r--ext/phar/stream.h2
-rw-r--r--ext/phar/util.c17
-rw-r--r--ext/spl/php_spl.c4
-rw-r--r--ext/standard/file.c6
-rw-r--r--ext/standard/ftp_fopen_wrapper.c6
-rw-r--r--ext/standard/http_fopen_wrapper.c4
-rw-r--r--ext/standard/php_fopen_wrapper.c3
-rw-r--r--ext/standard/php_fopen_wrappers.h4
-rw-r--r--ext/standard/streamsfuncs.c8
-rw-r--r--ext/zip/php_zip.h2
-rw-r--r--ext/zip/zip_stream.c4
-rw-r--r--ext/zlib/php_zlib.h2
-rw-r--r--ext/zlib/zlib_fopen_wrapper.c2
-rw-r--r--main/fopen_wrappers.c29
-rw-r--r--main/fopen_wrappers.h4
-rw-r--r--main/main.c11
-rw-r--r--main/php_ini.c16
-rw-r--r--main/php_open_temporary_file.c20
-rw-r--r--main/php_open_temporary_file.h6
-rw-r--r--main/php_streams.h6
-rw-r--r--main/rfc1867.c35
-rw-r--r--main/streams/cast.c4
-rw-r--r--main/streams/glob_wrapper.c4
-rw-r--r--main/streams/memory.c2
-rw-r--r--main/streams/php_stream_plain_wrapper.h8
-rw-r--r--main/streams/plain_wrapper.c54
-rw-r--r--main/streams/streams.c16
-rw-r--r--main/streams/userspace.c10
50 files changed, 3023 insertions, 3047 deletions
diff --git a/Zend/zend.c b/Zend/zend.c
index 397fe879ba..50857bc688 100644
--- a/Zend/zend.c
+++ b/Zend/zend.c
@@ -48,7 +48,7 @@
ZEND_API zend_class_entry *zend_standard_class_def = NULL;
ZEND_API size_t (*zend_printf)(const char *format, ...);
ZEND_API zend_write_func_t zend_write;
-ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path);
+ZEND_API FILE *(*zend_fopen)(const char *filename, zend_string **opened_path);
ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle);
ZEND_API void (*zend_block_interruptions)(void);
ZEND_API void (*zend_unblock_interruptions)(void);
@@ -57,7 +57,7 @@ ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint
size_t (*zend_vspprintf)(char **pbuf, size_t max_len, const char *format, va_list ap);
zend_string *(*zend_vstrpprintf)(size_t max_len, const char *format, va_list ap);
ZEND_API char *(*zend_getenv)(char *name, size_t name_len);
-ZEND_API char *(*zend_resolve_path)(const char *filename, int filename_len);
+ZEND_API zend_string *(*zend_resolve_path)(const char *filename, int filename_len);
void (*zend_on_timeout)(int seconds);
@@ -374,10 +374,10 @@ ZEND_API void zend_print_zval_r_ex(zend_write_func_t write_func, zval *expr, int
}
/* }}} */
-static FILE *zend_fopen_wrapper(const char *filename, char **opened_path) /* {{{ */
+static FILE *zend_fopen_wrapper(const char *filename, zend_string **opened_path) /* {{{ */
{
if (opened_path) {
- *opened_path = estrdup(filename);
+ *opened_path = zend_string_init(filename, strlen(filename), 0);
}
return fopen(filename, "rb");
}
@@ -1303,7 +1303,7 @@ ZEND_API int zend_execute_scripts(int type, zval *retval, int file_count, ...) /
op_array = zend_compile_file(file_handle, type);
if (file_handle->opened_path) {
- zend_hash_str_add_empty_element(&EG(included_files), file_handle->opened_path, strlen(file_handle->opened_path));
+ zend_hash_add_empty_element(&EG(included_files), file_handle->opened_path);
}
zend_destroy_file_handle(file_handle);
if (op_array) {
diff --git a/Zend/zend.h b/Zend/zend.h
index d7b5275c0a..4cf73225b7 100644
--- a/Zend/zend.h
+++ b/Zend/zend.h
@@ -193,7 +193,7 @@ typedef struct _zend_utility_functions {
void (*error_function)(int type, const char *error_filename, const uint error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0);
size_t (*printf_function)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
size_t (*write_function)(const char *str, size_t str_length);
- FILE *(*fopen_function)(const char *filename, char **opened_path);
+ FILE *(*fopen_function)(const char *filename, zend_string **opened_path);
void (*message_handler)(zend_long message, const void *data);
void (*block_interruptions)(void);
void (*unblock_interruptions)(void);
@@ -204,7 +204,7 @@ typedef struct _zend_utility_functions {
size_t (*vspprintf_function)(char **pbuf, size_t max_len, const char *format, va_list ap);
zend_string *(*vstrpprintf_function)(size_t max_len, const char *format, va_list ap);
char *(*getenv_function)(char *name, size_t name_len);
- char *(*resolve_path_function)(const char *filename, int filename_len);
+ zend_string *(*resolve_path_function)(const char *filename, int filename_len);
} zend_utility_functions;
typedef struct _zend_utility_values {
@@ -272,7 +272,7 @@ END_EXTERN_C()
BEGIN_EXTERN_C()
extern ZEND_API size_t (*zend_printf)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2);
extern ZEND_API zend_write_func_t zend_write;
-extern ZEND_API FILE *(*zend_fopen)(const char *filename, char **opened_path);
+extern ZEND_API FILE *(*zend_fopen)(const char *filename, zend_string **opened_path);
extern ZEND_API void (*zend_block_interruptions)(void);
extern ZEND_API void (*zend_unblock_interruptions)(void);
extern ZEND_API void (*zend_ticks_function)(int ticks);
@@ -282,7 +282,7 @@ extern ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file
extern size_t (*zend_vspprintf)(char **pbuf, size_t max_len, const char *format, va_list ap);
extern zend_string *(*zend_vstrpprintf)(size_t max_len, const char *format, va_list ap);
extern ZEND_API char *(*zend_getenv)(char *name, size_t name_len);
-extern ZEND_API char *(*zend_resolve_path)(const char *filename, int filename_len);
+extern ZEND_API zend_string *(*zend_resolve_path)(const char *filename, int filename_len);
ZEND_API void zend_error(int type, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3);
diff --git a/Zend/zend_language_scanner.c b/Zend/zend_language_scanner.c
index 02cbf584ba..f3638c6b7b 100644
--- a/Zend/zend_language_scanner.c
+++ b/Zend/zend_language_scanner.c
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.7.5 */
+/* Generated by re2c 0.13.5 */
#line 1 "Zend/zend_language_scanner.l"
/*
+----------------------------------------------------------------------+
@@ -484,7 +484,6 @@ ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding)
ZEND_API int open_file_for_scanning(zend_file_handle *file_handle)
{
- const char *file_path = NULL;
char *buf;
size_t size, offset = 0;
zend_string *compiled_filename;
@@ -538,12 +537,11 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle)
BEGIN(INITIAL);
if (file_handle->opened_path) {
- file_path = file_handle->opened_path;
+ compiled_filename = zend_string_copy(file_handle->opened_path);
} else {
- file_path = file_handle->filename;
+ compiled_filename = zend_string_init(file_handle->filename, strlen(file_handle->filename), 0);
}
- compiled_filename = zend_string_init(file_path, strlen(file_path), 0);
zend_set_compiled_filename(compiled_filename);
zend_string_release(compiled_filename);
@@ -625,7 +623,7 @@ zend_op_array *compile_filename(int type, zval *filename)
zend_file_handle file_handle;
zval tmp;
zend_op_array *retval;
- char *opened_path = NULL;
+ zend_string *opened_path = NULL;
if (Z_TYPE_P(filename) != IS_STRING) {
tmp = *filename;
@@ -642,13 +640,13 @@ zend_op_array *compile_filename(int type, zval *filename)
retval = zend_compile_file(&file_handle, type);
if (retval && file_handle.handle.stream.handle) {
if (!file_handle.opened_path) {
- file_handle.opened_path = opened_path = estrndup(Z_STRVAL_P(filename), Z_STRLEN_P(filename));
+ file_handle.opened_path = opened_path = zend_string_copy(Z_STR_P(filename));
}
- zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, strlen(file_handle.opened_path));
+ zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path);
if (opened_path) {
- efree(opened_path);
+ zend_string_release(opened_path);
}
}
zend_destroy_file_handle(&file_handle);
@@ -1085,7 +1083,7 @@ restart:
SCNG(yy_text) = YYCURSOR;
-#line 1089 "Zend/zend_language_scanner.c"
+#line 1087 "Zend/zend_language_scanner.c"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
@@ -1128,17 +1126,18 @@ restart:
}
/* *********************************** */
yyc_INITIAL:
- YYDEBUG(1, *YYCURSOR);
+
+ YYDEBUG(0, *YYCURSOR);
YYFILL(7);
yych = *YYCURSOR;
- if (yych != '<') goto yy5;
- YYDEBUG(3, *YYCURSOR);
+ if (yych != '<') goto yy4;
+ YYDEBUG(2, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '?') goto yy6;
-yy4:
- YYDEBUG(4, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '?') goto yy5;
+yy3:
+ YYDEBUG(3, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1770 "Zend/zend_language_scanner.l"
+#line 1768 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -1183,25 +1182,25 @@ inline_char_handler:
HANDLE_NEWLINES(yytext, yyleng);
return T_INLINE_HTML;
}
-#line 1187 "Zend/zend_language_scanner.c"
+#line 1186 "Zend/zend_language_scanner.c"
+yy4:
+ YYDEBUG(4, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy3;
yy5:
YYDEBUG(5, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy4;
-yy6:
- YYDEBUG(6, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'O') {
- if (yych == '=') goto yy8;
+ if (yych == '=') goto yy7;
} else {
- if (yych <= 'P') goto yy10;
- if (yych == 'p') goto yy10;
+ if (yych <= 'P') goto yy9;
+ if (yych == 'p') goto yy9;
}
-yy7:
- YYDEBUG(7, *YYCURSOR);
+yy6:
+ YYDEBUG(6, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1761 "Zend/zend_language_scanner.l"
+#line 1759 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
BEGIN(ST_IN_SCRIPTING);
@@ -1210,60 +1209,60 @@ yy7:
goto inline_char_handler;
}
}
-#line 1214 "Zend/zend_language_scanner.c"
-yy8:
- YYDEBUG(8, *YYCURSOR);
+#line 1213 "Zend/zend_language_scanner.c"
+yy7:
+ YYDEBUG(7, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(9, *YYCURSOR);
+ YYDEBUG(8, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1748 "Zend/zend_language_scanner.l"
+#line 1746 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return T_OPEN_TAG_WITH_ECHO;
}
-#line 1225 "Zend/zend_language_scanner.c"
+#line 1224 "Zend/zend_language_scanner.c"
+yy9:
+ YYDEBUG(9, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy11;
+ if (yych == 'h') goto yy11;
yy10:
YYDEBUG(10, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy12;
- if (yych == 'h') goto yy12;
+ YYCURSOR = YYMARKER;
+ goto yy6;
yy11:
YYDEBUG(11, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy7;
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy12;
+ if (yych != 'p') goto yy10;
yy12:
YYDEBUG(12, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy13;
- if (yych != 'p') goto yy11;
-yy13:
- YYDEBUG(13, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= '\f') {
- if (yych <= 0x08) goto yy11;
- if (yych >= '\v') goto yy11;
+ if (yych <= 0x08) goto yy10;
+ if (yych >= '\v') goto yy10;
} else {
- if (yych <= '\r') goto yy16;
- if (yych != ' ') goto yy11;
+ if (yych <= '\r') goto yy15;
+ if (yych != ' ') goto yy10;
}
+yy13:
+ YYDEBUG(13, *YYCURSOR);
+ ++YYCURSOR;
yy14:
YYDEBUG(14, *YYCURSOR);
- ++YYCURSOR;
-yy15:
- YYDEBUG(15, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1754 "Zend/zend_language_scanner.l"
+#line 1752 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINE(yytext[yyleng-1]);
BEGIN(ST_IN_SCRIPTING);
return T_OPEN_TAG;
}
-#line 1262 "Zend/zend_language_scanner.c"
-yy16:
- YYDEBUG(16, *YYCURSOR);
+#line 1261 "Zend/zend_language_scanner.c"
+yy15:
+ YYDEBUG(15, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy14;
- goto yy15;
+ if ((yych = *YYCURSOR) == '\n') goto yy13;
+ goto yy14;
/* *********************************** */
yyc_ST_BACKQUOTE:
{
@@ -1301,34 +1300,34 @@ yyc_ST_BACKQUOTE:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(17, *YYCURSOR);
+ YYDEBUG(16, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '_') {
- if (yych != '$') goto yy24;
+ if (yych != '$') goto yy23;
} else {
- if (yych <= '`') goto yy22;
- if (yych == '{') goto yy21;
- goto yy24;
+ if (yych <= '`') goto yy21;
+ if (yych == '{') goto yy20;
+ goto yy23;
}
- YYDEBUG(19, *YYCURSOR);
+ YYDEBUG(18, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy20;
- if (yych <= 'Z') goto yy27;
- if (yych >= '_') goto yy27;
+ if (yych <= '@') goto yy19;
+ if (yych <= 'Z') goto yy26;
+ if (yych >= '_') goto yy26;
} else {
if (yych <= 'z') {
- if (yych >= 'a') goto yy27;
+ if (yych >= 'a') goto yy26;
} else {
- if (yych <= '{') goto yy30;
- if (yych >= 0x7F) goto yy27;
+ if (yych <= '{') goto yy29;
+ if (yych >= 0x7F) goto yy26;
}
}
-yy20:
- YYDEBUG(20, *YYCURSOR);
+yy19:
+ YYDEBUG(19, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2180 "Zend/zend_language_scanner.l"
+#line 2178 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -1369,119 +1368,118 @@ yy20:
zend_scan_escape_string(zendlval, yytext, yyleng, '`');
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1373 "Zend/zend_language_scanner.c"
+#line 1372 "Zend/zend_language_scanner.c"
+yy20:
+ YYDEBUG(20, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy24;
+ goto yy19;
yy21:
YYDEBUG(21, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '$') goto yy25;
- goto yy20;
-yy22:
- YYDEBUG(22, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(23, *YYCURSOR);
+ YYDEBUG(22, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2124 "Zend/zend_language_scanner.l"
+#line 2122 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '`';
}
-#line 1389 "Zend/zend_language_scanner.c"
+#line 1388 "Zend/zend_language_scanner.c"
+yy23:
+ YYDEBUG(23, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy19;
yy24:
YYDEBUG(24, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy20;
-yy25:
- YYDEBUG(25, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(26, *YYCURSOR);
+ YYDEBUG(25, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2111 "Zend/zend_language_scanner.l"
+#line 2109 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1406 "Zend/zend_language_scanner.c"
-yy27:
- YYDEBUG(27, *YYCURSOR);
+#line 1405 "Zend/zend_language_scanner.c"
+yy26:
+ YYDEBUG(26, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(28, *YYCURSOR);
+ YYDEBUG(27, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy27;
+ goto yy26;
}
- if (yych == '-') goto yy32;
- if (yych <= '@') goto yy29;
- if (yych <= '[') goto yy34;
-yy29:
- YYDEBUG(29, *YYCURSOR);
+ if (yych == '-') goto yy31;
+ if (yych == '[') goto yy33;
+yy28:
+ YYDEBUG(28, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1835 "Zend/zend_language_scanner.l"
+#line 1833 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1428 "Zend/zend_language_scanner.c"
-yy30:
- YYDEBUG(30, *YYCURSOR);
+#line 1426 "Zend/zend_language_scanner.c"
+yy29:
+ YYDEBUG(29, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(31, *YYCURSOR);
+ YYDEBUG(30, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1559 "Zend/zend_language_scanner.l"
+#line 1557 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 1439 "Zend/zend_language_scanner.c"
+#line 1437 "Zend/zend_language_scanner.c"
+yy31:
+ YYDEBUG(31, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy35;
yy32:
YYDEBUG(32, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '>') goto yy36;
+ YYCURSOR = YYMARKER;
+ goto yy28;
yy33:
YYDEBUG(33, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy29;
-yy34:
- YYDEBUG(34, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(35, *YYCURSOR);
+ YYDEBUG(34, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1828 "Zend/zend_language_scanner.l"
+#line 1826 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1460 "Zend/zend_language_scanner.c"
-yy36:
- YYDEBUG(36, *YYCURSOR);
+#line 1458 "Zend/zend_language_scanner.c"
+yy35:
+ YYDEBUG(35, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy33;
- if (yych <= 'Z') goto yy37;
- if (yych <= '^') goto yy33;
+ if (yych <= '@') goto yy32;
+ if (yych <= 'Z') goto yy36;
+ if (yych <= '^') goto yy32;
} else {
- if (yych <= '`') goto yy33;
- if (yych <= 'z') goto yy37;
- if (yych <= '~') goto yy33;
+ if (yych <= '`') goto yy32;
+ if (yych <= 'z') goto yy36;
+ if (yych <= '~') goto yy32;
}
-yy37:
- YYDEBUG(37, *YYCURSOR);
+yy36:
+ YYDEBUG(36, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(38, *YYCURSOR);
+ YYDEBUG(37, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1819 "Zend/zend_language_scanner.l"
+#line 1817 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1485 "Zend/zend_language_scanner.c"
+#line 1483 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_DOUBLE_QUOTES:
@@ -1520,36 +1518,36 @@ yyc_ST_DOUBLE_QUOTES:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(39, *YYCURSOR);
+ YYDEBUG(38, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '#') {
- if (yych == '"') goto yy44;
- goto yy46;
+ if (yych == '"') goto yy43;
+ goto yy45;
} else {
- if (yych <= '$') goto yy41;
- if (yych == '{') goto yy43;
- goto yy46;
+ if (yych <= '$') goto yy40;
+ if (yych == '{') goto yy42;
+ goto yy45;
}
-yy41:
- YYDEBUG(41, *YYCURSOR);
+yy40:
+ YYDEBUG(40, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy42;
- if (yych <= 'Z') goto yy49;
- if (yych >= '_') goto yy49;
+ if (yych <= '@') goto yy41;
+ if (yych <= 'Z') goto yy48;
+ if (yych >= '_') goto yy48;
} else {
if (yych <= 'z') {
- if (yych >= 'a') goto yy49;
+ if (yych >= 'a') goto yy48;
} else {
- if (yych <= '{') goto yy52;
- if (yych >= 0x7F) goto yy49;
+ if (yych <= '{') goto yy51;
+ if (yych >= 0x7F) goto yy48;
}
}
-yy42:
- YYDEBUG(42, *YYCURSOR);
+yy41:
+ YYDEBUG(41, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2130 "Zend/zend_language_scanner.l"
+#line 2128 "Zend/zend_language_scanner.l"
{
if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
@@ -1598,130 +1596,129 @@ double_quotes_scan_done:
zend_scan_escape_string(zendlval, yytext, yyleng, '"');
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1602 "Zend/zend_language_scanner.c"
+#line 1600 "Zend/zend_language_scanner.c"
+yy42:
+ YYDEBUG(42, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy46;
+ goto yy41;
yy43:
YYDEBUG(43, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '$') goto yy47;
- goto yy42;
-yy44:
- YYDEBUG(44, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(45, *YYCURSOR);
+ YYDEBUG(44, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2119 "Zend/zend_language_scanner.l"
+#line 2117 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '"';
}
-#line 1618 "Zend/zend_language_scanner.c"
+#line 1616 "Zend/zend_language_scanner.c"
+yy45:
+ YYDEBUG(45, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy41;
yy46:
YYDEBUG(46, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy42;
-yy47:
- YYDEBUG(47, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(48, *YYCURSOR);
+ YYDEBUG(47, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2111 "Zend/zend_language_scanner.l"
+#line 2109 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1635 "Zend/zend_language_scanner.c"
-yy49:
- YYDEBUG(49, *YYCURSOR);
+#line 1633 "Zend/zend_language_scanner.c"
+yy48:
+ YYDEBUG(48, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(50, *YYCURSOR);
+ YYDEBUG(49, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy49;
+ goto yy48;
}
- if (yych == '-') goto yy54;
- if (yych <= '@') goto yy51;
- if (yych <= '[') goto yy56;
-yy51:
- YYDEBUG(51, *YYCURSOR);
+ if (yych == '-') goto yy53;
+ if (yych == '[') goto yy55;
+yy50:
+ YYDEBUG(50, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1835 "Zend/zend_language_scanner.l"
+#line 1833 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1657 "Zend/zend_language_scanner.c"
-yy52:
- YYDEBUG(52, *YYCURSOR);
+#line 1654 "Zend/zend_language_scanner.c"
+yy51:
+ YYDEBUG(51, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(53, *YYCURSOR);
+ YYDEBUG(52, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1559 "Zend/zend_language_scanner.l"
+#line 1557 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 1668 "Zend/zend_language_scanner.c"
+#line 1665 "Zend/zend_language_scanner.c"
+yy53:
+ YYDEBUG(53, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy57;
yy54:
YYDEBUG(54, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '>') goto yy58;
+ YYCURSOR = YYMARKER;
+ goto yy50;
yy55:
YYDEBUG(55, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy51;
-yy56:
- YYDEBUG(56, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(57, *YYCURSOR);
+ YYDEBUG(56, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1828 "Zend/zend_language_scanner.l"
+#line 1826 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1689 "Zend/zend_language_scanner.c"
-yy58:
- YYDEBUG(58, *YYCURSOR);
+#line 1686 "Zend/zend_language_scanner.c"
+yy57:
+ YYDEBUG(57, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy55;
- if (yych <= 'Z') goto yy59;
- if (yych <= '^') goto yy55;
+ if (yych <= '@') goto yy54;
+ if (yych <= 'Z') goto yy58;
+ if (yych <= '^') goto yy54;
} else {
- if (yych <= '`') goto yy55;
- if (yych <= 'z') goto yy59;
- if (yych <= '~') goto yy55;
+ if (yych <= '`') goto yy54;
+ if (yych <= 'z') goto yy58;
+ if (yych <= '~') goto yy54;
}
-yy59:
- YYDEBUG(59, *YYCURSOR);
+yy58:
+ YYDEBUG(58, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(60, *YYCURSOR);
+ YYDEBUG(59, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1819 "Zend/zend_language_scanner.l"
+#line 1817 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1714 "Zend/zend_language_scanner.c"
+#line 1711 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_END_HEREDOC:
- YYDEBUG(61, *YYCURSOR);
+ YYDEBUG(60, *YYCURSOR);
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(63, *YYCURSOR);
+ YYDEBUG(62, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(64, *YYCURSOR);
+ YYDEBUG(63, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2097 "Zend/zend_language_scanner.l"
+#line 2095 "Zend/zend_language_scanner.l"
{
zend_heredoc_label *heredoc_label = zend_ptr_stack_pop(&SCNG(heredoc_label_stack));
@@ -1734,7 +1731,7 @@ yyc_ST_END_HEREDOC:
BEGIN(ST_IN_SCRIPTING);
return T_END_HEREDOC;
}
-#line 1738 "Zend/zend_language_scanner.c"
+#line 1735 "Zend/zend_language_scanner.c"
/* *********************************** */
yyc_ST_HEREDOC:
{
@@ -1772,31 +1769,31 @@ yyc_ST_HEREDOC:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(65, *YYCURSOR);
+ YYDEBUG(64, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
- if (yych == '$') goto yy67;
- if (yych == '{') goto yy69;
- goto yy70;
-yy67:
- YYDEBUG(67, *YYCURSOR);
+ if (yych == '$') goto yy66;
+ if (yych == '{') goto yy68;
+ goto yy69;
+yy66:
+ YYDEBUG(66, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy68;
- if (yych <= 'Z') goto yy73;
- if (yych >= '_') goto yy73;
+ if (yych <= '@') goto yy67;
+ if (yych <= 'Z') goto yy72;
+ if (yych >= '_') goto yy72;
} else {
if (yych <= 'z') {
- if (yych >= 'a') goto yy73;
+ if (yych >= 'a') goto yy72;
} else {
- if (yych <= '{') goto yy76;
- if (yych >= 0x7F) goto yy73;
+ if (yych <= '{') goto yy75;
+ if (yych >= 0x7F) goto yy72;
}
}
-yy68:
- YYDEBUG(68, *YYCURSOR);
+yy67:
+ YYDEBUG(67, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2222 "Zend/zend_language_scanner.l"
+#line 2220 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -1869,108 +1866,107 @@ heredoc_scan_done:
zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1873 "Zend/zend_language_scanner.c"
+#line 1870 "Zend/zend_language_scanner.c"
+yy68:
+ YYDEBUG(68, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '$') goto yy70;
+ goto yy67;
yy69:
YYDEBUG(69, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '$') goto yy71;
- goto yy68;
+ goto yy67;
yy70:
YYDEBUG(70, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy68;
-yy71:
- YYDEBUG(71, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(72, *YYCURSOR);
+ YYDEBUG(71, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2111 "Zend/zend_language_scanner.l"
+#line 2109 "Zend/zend_language_scanner.l"
{
Z_LVAL_P(zendlval) = (zend_long) '{';
yy_push_state(ST_IN_SCRIPTING);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1895 "Zend/zend_language_scanner.c"
-yy73:
- YYDEBUG(73, *YYCURSOR);
+#line 1892 "Zend/zend_language_scanner.c"
+yy72:
+ YYDEBUG(72, *YYCURSOR);
yyaccept = 0;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(74, *YYCURSOR);
+ YYDEBUG(73, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy73;
+ goto yy72;
}
- if (yych == '-') goto yy78;
- if (yych <= '@') goto yy75;
- if (yych <= '[') goto yy80;
-yy75:
- YYDEBUG(75, *YYCURSOR);
+ if (yych == '-') goto yy77;
+ if (yych == '[') goto yy79;
+yy74:
+ YYDEBUG(74, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1835 "Zend/zend_language_scanner.l"
+#line 1833 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1917 "Zend/zend_language_scanner.c"
-yy76:
- YYDEBUG(76, *YYCURSOR);
+#line 1913 "Zend/zend_language_scanner.c"
+yy75:
+ YYDEBUG(75, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(77, *YYCURSOR);
+ YYDEBUG(76, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1559 "Zend/zend_language_scanner.l"
+#line 1557 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 1928 "Zend/zend_language_scanner.c"
+#line 1924 "Zend/zend_language_scanner.c"
+yy77:
+ YYDEBUG(77, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '>') goto yy81;
yy78:
YYDEBUG(78, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '>') goto yy82;
+ YYCURSOR = YYMARKER;
+ goto yy74;
yy79:
YYDEBUG(79, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy75;
-yy80:
- YYDEBUG(80, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(81, *YYCURSOR);
+ YYDEBUG(80, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1828 "Zend/zend_language_scanner.l"
+#line 1826 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1949 "Zend/zend_language_scanner.c"
-yy82:
- YYDEBUG(82, *YYCURSOR);
+#line 1945 "Zend/zend_language_scanner.c"
+yy81:
+ YYDEBUG(81, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy79;
- if (yych <= 'Z') goto yy83;
- if (yych <= '^') goto yy79;
+ if (yych <= '@') goto yy78;
+ if (yych <= 'Z') goto yy82;
+ if (yych <= '^') goto yy78;
} else {
- if (yych <= '`') goto yy79;
- if (yych <= 'z') goto yy83;
- if (yych <= '~') goto yy79;
+ if (yych <= '`') goto yy78;
+ if (yych <= 'z') goto yy82;
+ if (yych <= '~') goto yy78;
}
-yy83:
- YYDEBUG(83, *YYCURSOR);
+yy82:
+ YYDEBUG(82, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(84, *YYCURSOR);
+ YYDEBUG(83, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1819 "Zend/zend_language_scanner.l"
+#line 1817 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY);
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 1974 "Zend/zend_language_scanner.c"
+#line 1970 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_IN_SCRIPTING:
@@ -2009,7 +2005,7 @@ yyc_ST_IN_SCRIPTING:
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4,
};
- YYDEBUG(85, *YYCURSOR);
+ YYDEBUG(84, *YYCURSOR);
YYFILL(16);
yych = *YYCURSOR;
YYDEBUG(-1, yych);
@@ -2042,32 +2038,32 @@ yyc_ST_IN_SCRIPTING:
case 0x1C:
case 0x1D:
case 0x1E:
- case 0x1F: goto yy148;
+ case 0x1F: goto yy147;
case '\t':
case '\n':
case '\r':
- case ' ': goto yy104;
- case '!': goto yy119;
- case '"': goto yy144;
- case '#': goto yy140;
- case '$': goto yy130;
- case '%': goto yy124;
- case '&': goto yy125;
- case '\'': goto yy142;
- case '(': goto yy113;
+ case ' ': goto yy103;
+ case '!': goto yy118;
+ case '"': goto yy143;
+ case '#': goto yy139;
+ case '$': goto yy129;
+ case '%': goto yy123;
+ case '&': goto yy124;
+ case '\'': goto yy141;
+ case '(': goto yy112;
case ')':
case ',':
case ';':
case '@':
case '[':
case ']':
- case '~': goto yy131;
- case '*': goto yy122;
- case '+': goto yy118;
- case '-': goto yy102;
- case '.': goto yy109;
- case '/': goto yy123;
- case '0': goto yy136;
+ case '~': goto yy130;
+ case '*': goto yy121;
+ case '+': goto yy117;
+ case '-': goto yy101;
+ case '.': goto yy108;
+ case '/': goto yy122;
+ case '0': goto yy135;
case '1':
case '2':
case '3':
@@ -2076,594 +2072,594 @@ yyc_ST_IN_SCRIPTING:
case '6':
case '7':
case '8':
- case '9': goto yy138;
- case ':': goto yy106;
- case '<': goto yy120;
- case '=': goto yy116;
- case '>': goto yy121;
- case '?': goto yy110;
+ case '9': goto yy137;
+ case ':': goto yy105;
+ case '<': goto yy119;
+ case '=': goto yy115;
+ case '>': goto yy120;
+ case '?': goto yy109;
case 'A':
- case 'a': goto yy97;
+ case 'a': goto yy96;
case 'B':
- case 'b': goto yy99;
+ case 'b': goto yy98;
case 'C':
- case 'c': goto yy91;
+ case 'c': goto yy90;
case 'D':
- case 'd': goto yy89;
+ case 'd': goto yy88;
case 'E':
- case 'e': goto yy87;
+ case 'e': goto yy86;
case 'F':
- case 'f': goto yy90;
+ case 'f': goto yy89;
case 'G':
- case 'g': goto yy100;
+ case 'g': goto yy99;
case 'I':
- case 'i': goto yy95;
+ case 'i': goto yy94;
case 'L':
- case 'l': goto yy117;
+ case 'l': goto yy116;
case 'N':
- case 'n': goto yy111;
+ case 'n': goto yy110;
case 'O':
- case 'o': goto yy128;
+ case 'o': goto yy127;
case 'P':
- case 'p': goto yy101;
+ case 'p': goto yy100;
case 'R':
- case 'r': goto yy92;
+ case 'r': goto yy91;
case 'S':
- case 's': goto yy98;
+ case 's': goto yy97;
case 'T':
- case 't': goto yy94;
+ case 't': goto yy93;
case 'U':
- case 'u': goto yy114;
+ case 'u': goto yy113;
case 'V':
- case 'v': goto yy112;
+ case 'v': goto yy111;
case 'W':
- case 'w': goto yy96;
+ case 'w': goto yy95;
case 'X':
- case 'x': goto yy129;
+ case 'x': goto yy128;
case 'Y':
- case 'y': goto yy93;
- case '\\': goto yy107;
- case '^': goto yy127;
- case '_': goto yy115;
- case '`': goto yy146;
- case '{': goto yy132;
- case '|': goto yy126;
- case '}': goto yy134;
- default: goto yy139;
- }
-yy87:
- YYDEBUG(87, *YYCURSOR);
+ case 'y': goto yy92;
+ case '\\': goto yy106;
+ case '^': goto yy126;
+ case '_': goto yy114;
+ case '`': goto yy145;
+ case '{': goto yy131;
+ case '|': goto yy125;
+ case '}': goto yy133;
+ default: goto yy138;
+ }
+yy86:
+ YYDEBUG(86, *YYCURSOR);
++YYCURSOR;
YYDEBUG(-1, yych);
switch ((yych = *YYCURSOR)) {
case 'C':
- case 'c': goto yy698;
+ case 'c': goto yy697;
case 'L':
- case 'l': goto yy699;
+ case 'l': goto yy698;
case 'M':
- case 'm': goto yy700;
+ case 'm': goto yy699;
case 'N':
- case 'n': goto yy701;
+ case 'n': goto yy700;
case 'V':
- case 'v': goto yy702;
+ case 'v': goto yy701;
case 'X':
- case 'x': goto yy703;
- default: goto yy151;
+ case 'x': goto yy702;
+ default: goto yy150;
}
-yy88:
- YYDEBUG(88, *YYCURSOR);
+yy87:
+ YYDEBUG(87, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1858 "Zend/zend_language_scanner.l"
+#line 1856 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
return T_STRING;
}
-#line 2162 "Zend/zend_language_scanner.c"
-yy89:
- YYDEBUG(89, *YYCURSOR);
+#line 2158 "Zend/zend_language_scanner.c"
+yy88:
+ YYDEBUG(88, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'H') {
- if (yych == 'E') goto yy680;
- goto yy151;
+ if (yych == 'E') goto yy679;
+ goto yy150;
} else {
- if (yych <= 'I') goto yy681;
- if (yych <= 'N') goto yy151;
- goto yy682;
+ if (yych <= 'I') goto yy680;
+ if (yych <= 'N') goto yy150;
+ goto yy681;
}
} else {
if (yych <= 'h') {
- if (yych == 'e') goto yy680;
- goto yy151;
+ if (yych == 'e') goto yy679;
+ goto yy150;
} else {
- if (yych <= 'i') goto yy681;
- if (yych == 'o') goto yy682;
- goto yy151;
+ if (yych <= 'i') goto yy680;
+ if (yych == 'o') goto yy681;
+ goto yy150;
}
}
-yy90:
- YYDEBUG(90, *YYCURSOR);
+yy89:
+ YYDEBUG(89, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
if (yych <= 'N') {
- if (yych == 'I') goto yy656;
- goto yy151;
+ if (yych == 'I') goto yy655;
+ goto yy150;
} else {
- if (yych <= 'O') goto yy657;
- if (yych <= 'T') goto yy151;
- goto yy658;
+ if (yych <= 'O') goto yy656;
+ if (yych <= 'T') goto yy150;
+ goto yy657;
}
} else {
if (yych <= 'n') {
- if (yych == 'i') goto yy656;
- goto yy151;
+ if (yych == 'i') goto yy655;
+ goto yy150;
} else {
- if (yych <= 'o') goto yy657;
- if (yych == 'u') goto yy658;
- goto yy151;
+ if (yych <= 'o') goto yy656;
+ if (yych == 'u') goto yy657;
+ goto yy150;
}
}
-yy91:
- YYDEBUG(91, *YYCURSOR);
+yy90:
+ YYDEBUG(90, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
if (yych <= 'K') {
- if (yych == 'A') goto yy621;
- goto yy151;
+ if (yych == 'A') goto yy620;
+ goto yy150;
} else {
- if (yych <= 'L') goto yy622;
- if (yych <= 'N') goto yy151;
- goto yy623;
+ if (yych <= 'L') goto yy621;
+ if (yych <= 'N') goto yy150;
+ goto yy622;
}
} else {
if (yych <= 'k') {
- if (yych == 'a') goto yy621;
- goto yy151;
+ if (yych == 'a') goto yy620;
+ goto yy150;
} else {
- if (yych <= 'l') goto yy622;
- if (yych == 'o') goto yy623;
- goto yy151;
+ if (yych <= 'l') goto yy621;
+ if (yych == 'o') goto yy622;
+ goto yy150;
}
}
+yy91:
+ YYDEBUG(91, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy602;
+ if (yych == 'e') goto yy602;
+ goto yy150;
yy92:
YYDEBUG(92, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy603;
- if (yych == 'e') goto yy603;
- goto yy151;
+ if (yych == 'I') goto yy597;
+ if (yych == 'i') goto yy597;
+ goto yy150;
yy93:
YYDEBUG(93, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy598;
- if (yych == 'i') goto yy598;
- goto yy151;
-yy94:
- YYDEBUG(94, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'R') {
- if (yych == 'H') goto yy586;
- if (yych <= 'Q') goto yy151;
- goto yy587;
+ if (yych == 'H') goto yy585;
+ if (yych <= 'Q') goto yy150;
+ goto yy586;
} else {
if (yych <= 'h') {
- if (yych <= 'g') goto yy151;
- goto yy586;
+ if (yych <= 'g') goto yy150;
+ goto yy585;
} else {
- if (yych == 'r') goto yy587;
- goto yy151;
+ if (yych == 'r') goto yy586;
+ goto yy150;
}
}
-yy95:
- YYDEBUG(95, *YYCURSOR);
+yy94:
+ YYDEBUG(94, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'L') {
- if (yych == 'F') goto yy533;
- goto yy151;
+ if (yych == 'F') goto yy532;
+ goto yy150;
} else {
- if (yych <= 'M') goto yy535;
- if (yych <= 'N') goto yy536;
- if (yych <= 'R') goto yy151;
- goto yy537;
+ if (yych <= 'M') goto yy534;
+ if (yych <= 'N') goto yy535;
+ if (yych <= 'R') goto yy150;
+ goto yy536;
}
} else {
if (yych <= 'm') {
- if (yych == 'f') goto yy533;
- if (yych <= 'l') goto yy151;
- goto yy535;
+ if (yych == 'f') goto yy532;
+ if (yych <= 'l') goto yy150;
+ goto yy534;
} else {
- if (yych <= 'n') goto yy536;
- if (yych == 's') goto yy537;
- goto yy151;
+ if (yych <= 'n') goto yy535;
+ if (yych == 's') goto yy536;
+ goto yy150;
}
}
+yy95:
+ YYDEBUG(95, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy527;
+ if (yych == 'h') goto yy527;
+ goto yy150;
yy96:
YYDEBUG(96, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy528;
- if (yych == 'h') goto yy528;
- goto yy151;
-yy97:
- YYDEBUG(97, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'S') {
if (yych <= 'M') {
- if (yych == 'B') goto yy510;
- goto yy151;
+ if (yych == 'B') goto yy509;
+ goto yy150;
} else {
- if (yych <= 'N') goto yy511;
- if (yych <= 'Q') goto yy151;
- if (yych <= 'R') goto yy512;
- goto yy513;
+ if (yych <= 'N') goto yy510;
+ if (yych <= 'Q') goto yy150;
+ if (yych <= 'R') goto yy511;
+ goto yy512;
}
} else {
if (yych <= 'n') {
- if (yych == 'b') goto yy510;
- if (yych <= 'm') goto yy151;
- goto yy511;
+ if (yych == 'b') goto yy509;
+ if (yych <= 'm') goto yy150;
+ goto yy510;
} else {
- if (yych <= 'q') goto yy151;
- if (yych <= 'r') goto yy512;
- if (yych <= 's') goto yy513;
- goto yy151;
+ if (yych <= 'q') goto yy150;
+ if (yych <= 'r') goto yy511;
+ if (yych <= 's') goto yy512;
+ goto yy150;
}
}
-yy98:
- YYDEBUG(98, *YYCURSOR);
+yy97:
+ YYDEBUG(97, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'W') {
- if (yych == 'T') goto yy498;
- if (yych <= 'V') goto yy151;
- goto yy499;
+ if (yych == 'T') goto yy497;
+ if (yych <= 'V') goto yy150;
+ goto yy498;
} else {
if (yych <= 't') {
- if (yych <= 's') goto yy151;
- goto yy498;
+ if (yych <= 's') goto yy150;
+ goto yy497;
} else {
- if (yych == 'w') goto yy499;
- goto yy151;
+ if (yych == 'w') goto yy498;
+ goto yy150;
}
}
-yy99:
- YYDEBUG(99, *YYCURSOR);
+yy98:
+ YYDEBUG(98, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= ';') {
if (yych <= '"') {
- if (yych <= '!') goto yy151;
- goto yy490;
+ if (yych <= '!') goto yy150;
+ goto yy489;
} else {
- if (yych == '\'') goto yy491;
- goto yy151;
+ if (yych == '\'') goto yy490;
+ goto yy150;
}
} else {
if (yych <= 'R') {
- if (yych <= '<') goto yy489;
- if (yych <= 'Q') goto yy151;
- goto yy492;
+ if (yych <= '<') goto yy488;
+ if (yych <= 'Q') goto yy150;
+ goto yy491;
} else {
- if (yych == 'r') goto yy492;
- goto yy151;
+ if (yych == 'r') goto yy491;
+ goto yy150;
}
}
-yy100:
- YYDEBUG(100, *YYCURSOR);
+yy99:
+ YYDEBUG(99, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'L') goto yy479;
- if (yych <= 'N') goto yy151;
- goto yy480;
+ if (yych == 'L') goto yy478;
+ if (yych <= 'N') goto yy150;
+ goto yy479;
} else {
if (yych <= 'l') {
- if (yych <= 'k') goto yy151;
- goto yy479;
+ if (yych <= 'k') goto yy150;
+ goto yy478;
} else {
- if (yych == 'o') goto yy480;
- goto yy151;
+ if (yych == 'o') goto yy479;
+ goto yy150;
}
}
-yy101:
- YYDEBUG(101, *YYCURSOR);
+yy100:
+ YYDEBUG(100, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'R') goto yy455;
- if (yych <= 'T') goto yy151;
- goto yy456;
+ if (yych == 'R') goto yy454;
+ if (yych <= 'T') goto yy150;
+ goto yy455;
} else {
if (yych <= 'r') {
- if (yych <= 'q') goto yy151;
- goto yy455;
+ if (yych <= 'q') goto yy150;
+ goto yy454;
} else {
- if (yych == 'u') goto yy456;
- goto yy151;
+ if (yych == 'u') goto yy455;
+ goto yy150;
}
}
-yy102:
- YYDEBUG(102, *YYCURSOR);
+yy101:
+ YYDEBUG(101, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '<') {
- if (yych == '-') goto yy451;
+ if (yych == '-') goto yy450;
} else {
- if (yych <= '=') goto yy449;
- if (yych <= '>') goto yy453;
+ if (yych <= '=') goto yy448;
+ if (yych <= '>') goto yy452;
}
-yy103:
- YYDEBUG(103, *YYCURSOR);
+yy102:
+ YYDEBUG(102, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1548 "Zend/zend_language_scanner.l"
+#line 1546 "Zend/zend_language_scanner.l"
{
return yytext[0];
}
-#line 2398 "Zend/zend_language_scanner.c"
-yy104:
- YYDEBUG(104, *YYCURSOR);
+#line 2394 "Zend/zend_language_scanner.c"
+yy103:
+ YYDEBUG(103, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy448;
-yy105:
- YYDEBUG(105, *YYCURSOR);
+ goto yy447;
+yy104:
+ YYDEBUG(104, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1263 "Zend/zend_language_scanner.l"
+#line 1261 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
return T_WHITESPACE;
}
-#line 2412 "Zend/zend_language_scanner.c"
+#line 2408 "Zend/zend_language_scanner.c"
+yy105:
+ YYDEBUG(105, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == ':') goto yy444;
+ goto yy102;
yy106:
YYDEBUG(106, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == ':') goto yy445;
- goto yy103;
-yy107:
- YYDEBUG(107, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(108, *YYCURSOR);
+ YYDEBUG(107, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1288 "Zend/zend_language_scanner.l"
+#line 1286 "Zend/zend_language_scanner.l"
{
return T_NS_SEPARATOR;
}
-#line 2427 "Zend/zend_language_scanner.c"
-yy109:
- YYDEBUG(109, *YYCURSOR);
+#line 2423 "Zend/zend_language_scanner.c"
+yy108:
+ YYDEBUG(108, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '/') {
- if (yych == '.') goto yy442;
- goto yy103;
+ if (yych == '.') goto yy441;
+ goto yy102;
} else {
- if (yych <= '9') goto yy438;
- if (yych == '=') goto yy440;
- goto yy103;
+ if (yych <= '9') goto yy437;
+ if (yych == '=') goto yy439;
+ goto yy102;
}
+yy109:
+ YYDEBUG(109, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '=') goto yy102;
+ if (yych <= '>') goto yy431;
+ if (yych <= '?') goto yy433;
+ goto yy102;
yy110:
YYDEBUG(110, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '=') goto yy103;
- if (yych <= '>') goto yy432;
- if (yych <= '?') goto yy434;
- goto yy103;
-yy111:
- YYDEBUG(111, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'E') {
- if (yych == 'A') goto yy420;
- if (yych <= 'D') goto yy151;
- goto yy421;
+ if (yych == 'A') goto yy419;
+ if (yych <= 'D') goto yy150;
+ goto yy420;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy151;
- goto yy420;
+ if (yych <= '`') goto yy150;
+ goto yy419;
} else {
- if (yych == 'e') goto yy421;
- goto yy151;
+ if (yych == 'e') goto yy420;
+ goto yy150;
}
}
+yy111:
+ YYDEBUG(111, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy416;
+ if (yych == 'a') goto yy416;
+ goto yy150;
yy112:
YYDEBUG(112, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'A') goto yy417;
- if (yych == 'a') goto yy417;
- goto yy151;
-yy113:
- YYDEBUG(113, *YYCURSOR);
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy342;
- if (yych <= 0x1F) goto yy103;
- goto yy342;
+ if (yych == '\t') goto yy341;
+ if (yych <= 0x1F) goto yy102;
+ goto yy341;
} else {
- if (yych <= '@') goto yy103;
- if (yych == 'C') goto yy103;
- goto yy342;
+ if (yych <= '@') goto yy102;
+ if (yych == 'C') goto yy102;
+ goto yy341;
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy342;
- if (yych <= 'H') goto yy103;
- goto yy342;
+ if (yych == 'F') goto yy341;
+ if (yych <= 'H') goto yy102;
+ goto yy341;
} else {
- if (yych == 'O') goto yy342;
- if (yych <= 'Q') goto yy103;
- goto yy342;
+ if (yych == 'O') goto yy341;
+ if (yych <= 'Q') goto yy102;
+ goto yy341;
}
}
} else {
if (yych <= 'f') {
if (yych <= 'b') {
- if (yych == 'U') goto yy342;
- if (yych <= '`') goto yy103;
- goto yy342;
+ if (yych == 'U') goto yy341;
+ if (yych <= '`') goto yy102;
+ goto yy341;
} else {
- if (yych == 'd') goto yy342;
- if (yych <= 'e') goto yy103;
- goto yy342;
+ if (yych == 'd') goto yy341;
+ if (yych <= 'e') goto yy102;
+ goto yy341;
}
} else {
if (yych <= 'o') {
- if (yych == 'i') goto yy342;
- if (yych <= 'n') goto yy103;
- goto yy342;
+ if (yych == 'i') goto yy341;
+ if (yych <= 'n') goto yy102;
+ goto yy341;
} else {
if (yych <= 's') {
- if (yych <= 'q') goto yy103;
- goto yy342;
+ if (yych <= 'q') goto yy102;
+ goto yy341;
} else {
- if (yych == 'u') goto yy342;
- goto yy103;
+ if (yych == 'u') goto yy341;
+ goto yy102;
}
}
}
}
-yy114:
- YYDEBUG(114, *YYCURSOR);
+yy113:
+ YYDEBUG(113, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'S') {
- if (yych == 'N') goto yy333;
- if (yych <= 'R') goto yy151;
- goto yy334;
+ if (yych == 'N') goto yy332;
+ if (yych <= 'R') goto yy150;
+ goto yy333;
} else {
if (yych <= 'n') {
- if (yych <= 'm') goto yy151;
- goto yy333;
+ if (yych <= 'm') goto yy150;
+ goto yy332;
} else {
- if (yych == 's') goto yy334;
- goto yy151;
+ if (yych == 's') goto yy333;
+ goto yy150;
}
}
+yy114:
+ YYDEBUG(114, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '_') goto yy250;
+ goto yy150;
yy115:
YYDEBUG(115, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '_') goto yy251;
- goto yy151;
+ if (yych <= '<') goto yy102;
+ if (yych <= '=') goto yy244;
+ if (yych <= '>') goto yy246;
+ goto yy102;
yy116:
YYDEBUG(116, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '<') goto yy103;
- if (yych <= '=') goto yy245;
- if (yych <= '>') goto yy247;
- goto yy103;
+ if (yych == 'I') goto yy240;
+ if (yych == 'i') goto yy240;
+ goto yy150;
yy117:
YYDEBUG(117, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy241;
- if (yych == 'i') goto yy241;
- goto yy151;
+ if (yych == '+') goto yy238;
+ if (yych == '=') goto yy236;
+ goto yy102;
yy118:
YYDEBUG(118, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '+') goto yy239;
- if (yych == '=') goto yy237;
- goto yy103;
+ if (yych == '=') goto yy233;
+ goto yy102;
yy119:
YYDEBUG(119, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy234;
- goto yy103;
+ if (yych <= ';') goto yy102;
+ if (yych <= '<') goto yy209;
+ if (yych <= '=') goto yy211;
+ if (yych <= '>') goto yy213;
+ goto yy102;
yy120:
YYDEBUG(120, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= ';') goto yy103;
- if (yych <= '<') goto yy210;
- if (yych <= '=') goto yy212;
- if (yych <= '>') goto yy214;
- goto yy103;
+ if (yych <= '<') goto yy102;
+ if (yych <= '=') goto yy205;
+ if (yych <= '>') goto yy203;
+ goto yy102;
yy121:
YYDEBUG(121, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych <= '<') goto yy103;
- if (yych <= '=') goto yy206;
- if (yych <= '>') goto yy204;
- goto yy103;
+ if (yych == '*') goto yy197;
+ if (yych == '=') goto yy199;
+ goto yy102;
yy122:
YYDEBUG(122, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '*') goto yy198;
- if (yych == '=') goto yy200;
- goto yy103;
-yy123:
- YYDEBUG(123, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= '.') {
- if (yych == '*') goto yy190;
- goto yy103;
+ if (yych == '*') goto yy189;
+ goto yy102;
} else {
- if (yych <= '/') goto yy192;
- if (yych == '=') goto yy193;
- goto yy103;
+ if (yych <= '/') goto yy191;
+ if (yych == '=') goto yy192;
+ goto yy102;
}
+yy123:
+ YYDEBUG(123, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '=') goto yy187;
+ goto yy102;
yy124:
YYDEBUG(124, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy188;
- goto yy103;
+ if (yych == '&') goto yy183;
+ if (yych == '=') goto yy185;
+ goto yy102;
yy125:
YYDEBUG(125, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '&') goto yy184;
- if (yych == '=') goto yy186;
- goto yy103;
+ if (yych == '=') goto yy181;
+ if (yych == '|') goto yy179;
+ goto yy102;
yy126:
YYDEBUG(126, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy182;
- if (yych == '|') goto yy180;
- goto yy103;
+ if (yych == '=') goto yy177;
+ goto yy102;
yy127:
YYDEBUG(127, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '=') goto yy178;
- goto yy103;
+ if (yych == 'R') goto yy175;
+ if (yych == 'r') goto yy175;
+ goto yy150;
yy128:
YYDEBUG(128, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy176;
- if (yych == 'r') goto yy176;
- goto yy151;
+ if (yych == 'O') goto yy172;
+ if (yych == 'o') goto yy172;
+ goto yy150;
yy129:
YYDEBUG(129, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy173;
- if (yych == 'o') goto yy173;
- goto yy151;
-yy130:
- YYDEBUG(130, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy103;
- if (yych <= 'Z') goto yy170;
- if (yych <= '^') goto yy103;
- goto yy170;
+ if (yych <= '@') goto yy102;
+ if (yych <= 'Z') goto yy169;
+ if (yych <= '^') goto yy102;
+ goto yy169;
} else {
- if (yych <= '`') goto yy103;
- if (yych <= 'z') goto yy170;
- if (yych <= '~') goto yy103;
- goto yy170;
+ if (yych <= '`') goto yy102;
+ if (yych <= 'z') goto yy169;
+ if (yych <= '~') goto yy102;
+ goto yy169;
}
+yy130:
+ YYDEBUG(130, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy102;
yy131:
YYDEBUG(131, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy103;
-yy132:
- YYDEBUG(132, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(133, *YYCURSOR);
+ YYDEBUG(132, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1553 "Zend/zend_language_scanner.l"
+#line 1551 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_IN_SCRIPTING);
return '{';
}
-#line 2661 "Zend/zend_language_scanner.c"
-yy134:
- YYDEBUG(134, *YYCURSOR);
+#line 2657 "Zend/zend_language_scanner.c"
+yy133:
+ YYDEBUG(133, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(135, *YYCURSOR);
+ YYDEBUG(134, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1565 "Zend/zend_language_scanner.l"
+#line 1563 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -2671,35 +2667,35 @@ yy134:
}
return '}';
}
-#line 2675 "Zend/zend_language_scanner.c"
-yy136:
- YYDEBUG(136, *YYCURSOR);
+#line 2671 "Zend/zend_language_scanner.c"
+yy135:
+ YYDEBUG(135, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'E') {
if (yych <= '9') {
- if (yych == '.') goto yy152;
- if (yych >= '0') goto yy155;
+ if (yych == '.') goto yy151;
+ if (yych >= '0') goto yy154;
} else {
- if (yych == 'B') goto yy163;
- if (yych >= 'E') goto yy157;
+ if (yych == 'B') goto yy162;
+ if (yych >= 'E') goto yy156;
}
} else {
if (yych <= 'b') {
- if (yych == 'X') goto yy162;
- if (yych >= 'b') goto yy163;
+ if (yych == 'X') goto yy161;
+ if (yych >= 'b') goto yy162;
} else {
if (yych <= 'e') {
- if (yych >= 'e') goto yy157;
+ if (yych >= 'e') goto yy156;
} else {
- if (yych == 'x') goto yy162;
+ if (yych == 'x') goto yy161;
}
}
}
-yy137:
- YYDEBUG(137, *YYCURSOR);
+yy136:
+ YYDEBUG(136, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1618 "Zend/zend_language_scanner.l"
+#line 1616 "Zend/zend_language_scanner.l"
{
char *end;
if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
@@ -2738,35 +2734,35 @@ yy137:
}
return T_LNUMBER;
}
-#line 2742 "Zend/zend_language_scanner.c"
-yy138:
- YYDEBUG(138, *YYCURSOR);
+#line 2738 "Zend/zend_language_scanner.c"
+yy137:
+ YYDEBUG(137, *YYCURSOR);
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '9') {
- if (yych == '.') goto yy152;
- if (yych <= '/') goto yy137;
- goto yy155;
+ if (yych == '.') goto yy151;
+ if (yych <= '/') goto yy136;
+ goto yy154;
} else {
if (yych <= 'E') {
- if (yych <= 'D') goto yy137;
- goto yy157;
+ if (yych <= 'D') goto yy136;
+ goto yy156;
} else {
- if (yych == 'e') goto yy157;
- goto yy137;
+ if (yych == 'e') goto yy156;
+ goto yy136;
}
}
+yy138:
+ YYDEBUG(138, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy150;
yy139:
YYDEBUG(139, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy151;
+ ++YYCURSOR;
yy140:
YYDEBUG(140, *YYCURSOR);
- ++YYCURSOR;
-yy141:
- YYDEBUG(141, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1864 "Zend/zend_language_scanner.l"
+#line 1862 "Zend/zend_language_scanner.l"
{
while (YYCURSOR < YYLIMIT) {
switch (*YYCURSOR++) {
@@ -2795,14 +2791,14 @@ yy141:
return T_COMMENT;
}
-#line 2799 "Zend/zend_language_scanner.c"
+#line 2795 "Zend/zend_language_scanner.c"
+yy141:
+ YYDEBUG(141, *YYCURSOR);
+ ++YYCURSOR;
yy142:
YYDEBUG(142, *YYCURSOR);
- ++YYCURSOR;
-yy143:
- YYDEBUG(143, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1932 "Zend/zend_language_scanner.l"
+#line 1930 "Zend/zend_language_scanner.l"
{
register char *s, *t;
char *end;
@@ -2870,14 +2866,14 @@ yy143:
}
return T_CONSTANT_ENCAPSED_STRING;
}
-#line 2874 "Zend/zend_language_scanner.c"
+#line 2870 "Zend/zend_language_scanner.c"
+yy143:
+ YYDEBUG(143, *YYCURSOR);
+ ++YYCURSOR;
yy144:
YYDEBUG(144, *YYCURSOR);
- ++YYCURSOR;
-yy145:
- YYDEBUG(145, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2001 "Zend/zend_language_scanner.l"
+#line 1999 "Zend/zend_language_scanner.l"
{
int bprefix = (yytext[0] != '"') ? 1 : 0;
@@ -2918,24 +2914,24 @@ yy145:
BEGIN(ST_DOUBLE_QUOTES);
return '"';
}
-#line 2922 "Zend/zend_language_scanner.c"
-yy146:
- YYDEBUG(146, *YYCURSOR);
+#line 2918 "Zend/zend_language_scanner.c"
+yy145:
+ YYDEBUG(145, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(147, *YYCURSOR);
+ YYDEBUG(146, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2091 "Zend/zend_language_scanner.l"
+#line 2089 "Zend/zend_language_scanner.l"
{
BEGIN(ST_BACKQUOTE);
return '`';
}
-#line 2933 "Zend/zend_language_scanner.c"
-yy148:
- YYDEBUG(148, *YYCURSOR);
+#line 2929 "Zend/zend_language_scanner.c"
+yy147:
+ YYDEBUG(147, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(149, *YYCURSOR);
+ YYDEBUG(148, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2353 "Zend/zend_language_scanner.l"
+#line 2351 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -2944,34 +2940,34 @@ yy148:
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 2948 "Zend/zend_language_scanner.c"
-yy150:
- YYDEBUG(150, *YYCURSOR);
+#line 2944 "Zend/zend_language_scanner.c"
+yy149:
+ YYDEBUG(149, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy151:
- YYDEBUG(151, *YYCURSOR);
+yy150:
+ YYDEBUG(150, *YYCURSOR);
if (yybm[0+yych] & 4) {
- goto yy150;
+ goto yy149;
}
- goto yy88;
-yy152:
- YYDEBUG(152, *YYCURSOR);
+ goto yy87;
+yy151:
+ YYDEBUG(151, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(153, *YYCURSOR);
+ YYDEBUG(152, *YYCURSOR);
if (yybm[0+yych] & 8) {
- goto yy152;
+ goto yy151;
}
- if (yych == 'E') goto yy157;
- if (yych == 'e') goto yy157;
-yy154:
- YYDEBUG(154, *YYCURSOR);
+ if (yych == 'E') goto yy156;
+ if (yych == 'e') goto yy156;
+yy153:
+ YYDEBUG(153, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1706 "Zend/zend_language_scanner.l"
+#line 1704 "Zend/zend_language_scanner.l"
{
const char *end;
@@ -2980,99 +2976,99 @@ yy154:
ZEND_ASSERT(end == yytext + yyleng);
return T_DNUMBER;
}
-#line 2984 "Zend/zend_language_scanner.c"
-yy155:
- YYDEBUG(155, *YYCURSOR);
+#line 2980 "Zend/zend_language_scanner.c"
+yy154:
+ YYDEBUG(154, *YYCURSOR);
yyaccept = 2;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(156, *YYCURSOR);
+ YYDEBUG(155, *YYCURSOR);
if (yych <= '9') {
- if (yych == '.') goto yy152;
- if (yych <= '/') goto yy137;
- goto yy155;
+ if (yych == '.') goto yy151;
+ if (yych <= '/') goto yy136;
+ goto yy154;
} else {
if (yych <= 'E') {
- if (yych <= 'D') goto yy137;
+ if (yych <= 'D') goto yy136;
} else {
- if (yych != 'e') goto yy137;
+ if (yych != 'e') goto yy136;
}
}
-yy157:
- YYDEBUG(157, *YYCURSOR);
+yy156:
+ YYDEBUG(156, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= ',') {
- if (yych == '+') goto yy159;
+ if (yych == '+') goto yy158;
} else {
- if (yych <= '-') goto yy159;
- if (yych <= '/') goto yy158;
- if (yych <= '9') goto yy160;
+ if (yych <= '-') goto yy158;
+ if (yych <= '/') goto yy157;
+ if (yych <= '9') goto yy159;
}
-yy158:
- YYDEBUG(158, *YYCURSOR);
+yy157:
+ YYDEBUG(157, *YYCURSOR);
YYCURSOR = YYMARKER;
if (yyaccept <= 2) {
if (yyaccept <= 1) {
- if (yyaccept == 0) {
- goto yy88;
+ if (yyaccept <= 0) {
+ goto yy87;
} else {
- goto yy103;
+ goto yy102;
}
} else {
- goto yy137;
+ goto yy136;
}
} else {
if (yyaccept <= 4) {
- if (yyaccept == 3) {
- goto yy154;
+ if (yyaccept <= 3) {
+ goto yy153;
} else {
- goto yy191;
+ goto yy190;
}
} else {
- goto yy211;
+ goto yy210;
}
}
+yy158:
+ YYDEBUG(158, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych <= '/') goto yy157;
+ if (yych >= ':') goto yy157;
yy159:
YYDEBUG(159, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych <= '/') goto yy158;
- if (yych >= ':') goto yy158;
-yy160:
- YYDEBUG(160, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
+ YYDEBUG(160, *YYCURSOR);
+ if (yych <= '/') goto yy153;
+ if (yych <= '9') goto yy159;
+ goto yy153;
+yy161:
YYDEBUG(161, *YYCURSOR);
- if (yych <= '/') goto yy154;
- if (yych <= '9') goto yy160;
- goto yy154;
-yy162:
- YYDEBUG(162, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy167;
+ goto yy166;
}
- goto yy158;
-yy163:
- YYDEBUG(163, *YYCURSOR);
+ goto yy157;
+yy162:
+ YYDEBUG(162, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy164;
+ goto yy163;
}
- goto yy158;
-yy164:
- YYDEBUG(164, *YYCURSOR);
+ goto yy157;
+yy163:
+ YYDEBUG(163, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(165, *YYCURSOR);
+ YYDEBUG(164, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy164;
+ goto yy163;
}
- YYDEBUG(166, *YYCURSOR);
+ YYDEBUG(165, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1590 "Zend/zend_language_scanner.l"
+#line 1588 "Zend/zend_language_scanner.l"
{
char *bin = yytext + 2; /* Skip "0b" */
int len = yyleng - 2;
@@ -3100,19 +3096,19 @@ yy164:
return T_DNUMBER;
}
}
-#line 3104 "Zend/zend_language_scanner.c"
-yy167:
- YYDEBUG(167, *YYCURSOR);
+#line 3100 "Zend/zend_language_scanner.c"
+yy166:
+ YYDEBUG(166, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(168, *YYCURSOR);
+ YYDEBUG(167, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy167;
+ goto yy166;
}
- YYDEBUG(169, *YYCURSOR);
+ YYDEBUG(168, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1657 "Zend/zend_language_scanner.l"
+#line 1655 "Zend/zend_language_scanner.l"
{
char *hex = yytext + 2; /* Skip "0x" */
int len = yyleng - 2;
@@ -3140,137 +3136,137 @@ yy167:
return T_DNUMBER;
}
}
-#line 3144 "Zend/zend_language_scanner.c"
-yy170:
- YYDEBUG(170, *YYCURSOR);
+#line 3140 "Zend/zend_language_scanner.c"
+yy169:
+ YYDEBUG(169, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(171, *YYCURSOR);
+ YYDEBUG(170, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy170;
+ if (yych >= '0') goto yy169;
} else {
- if (yych <= '@') goto yy172;
- if (yych <= 'Z') goto yy170;
+ if (yych <= '@') goto yy171;
+ if (yych <= 'Z') goto yy169;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy170;
+ if (yych <= '_') goto yy169;
} else {
- if (yych <= 'z') goto yy170;
- if (yych >= 0x7F) goto yy170;
+ if (yych <= 'z') goto yy169;
+ if (yych >= 0x7F) goto yy169;
}
}
-yy172:
- YYDEBUG(172, *YYCURSOR);
+yy171:
+ YYDEBUG(171, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1835 "Zend/zend_language_scanner.l"
+#line 1833 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 3174 "Zend/zend_language_scanner.c"
+#line 3170 "Zend/zend_language_scanner.c"
+yy172:
+ YYDEBUG(172, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy173;
+ if (yych != 'r') goto yy150;
yy173:
YYDEBUG(173, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy174;
- if (yych != 'r') goto yy151;
-yy174:
- YYDEBUG(174, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(175, *YYCURSOR);
+ YYDEBUG(174, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1536 "Zend/zend_language_scanner.l"
+#line 1534 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_XOR;
}
-#line 3192 "Zend/zend_language_scanner.c"
-yy176:
- YYDEBUG(176, *YYCURSOR);
+#line 3188 "Zend/zend_language_scanner.c"
+yy175:
+ YYDEBUG(175, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(177, *YYCURSOR);
+ YYDEBUG(176, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1528 "Zend/zend_language_scanner.l"
+#line 1526 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_OR;
}
-#line 3205 "Zend/zend_language_scanner.c"
-yy178:
- YYDEBUG(178, *YYCURSOR);
+#line 3201 "Zend/zend_language_scanner.c"
+yy177:
+ YYDEBUG(177, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(179, *YYCURSOR);
+ YYDEBUG(178, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1516 "Zend/zend_language_scanner.l"
+#line 1514 "Zend/zend_language_scanner.l"
{
return T_XOR_EQUAL;
}
-#line 3215 "Zend/zend_language_scanner.c"
-yy180:
- YYDEBUG(180, *YYCURSOR);
+#line 3211 "Zend/zend_language_scanner.c"
+yy179:
+ YYDEBUG(179, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(181, *YYCURSOR);
+ YYDEBUG(180, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1520 "Zend/zend_language_scanner.l"
+#line 1518 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_OR;
}
-#line 3225 "Zend/zend_language_scanner.c"
-yy182:
- YYDEBUG(182, *YYCURSOR);
+#line 3221 "Zend/zend_language_scanner.c"
+yy181:
+ YYDEBUG(181, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(183, *YYCURSOR);
+ YYDEBUG(182, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1512 "Zend/zend_language_scanner.l"
+#line 1510 "Zend/zend_language_scanner.l"
{
return T_OR_EQUAL;
}
-#line 3235 "Zend/zend_language_scanner.c"
-yy184:
- YYDEBUG(184, *YYCURSOR);
+#line 3231 "Zend/zend_language_scanner.c"
+yy183:
+ YYDEBUG(183, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(185, *YYCURSOR);
+ YYDEBUG(184, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1524 "Zend/zend_language_scanner.l"
+#line 1522 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_AND;
}
-#line 3245 "Zend/zend_language_scanner.c"
-yy186:
- YYDEBUG(186, *YYCURSOR);
+#line 3241 "Zend/zend_language_scanner.c"
+yy185:
+ YYDEBUG(185, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(187, *YYCURSOR);
+ YYDEBUG(186, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1508 "Zend/zend_language_scanner.l"
+#line 1506 "Zend/zend_language_scanner.l"
{
return T_AND_EQUAL;
}
-#line 3255 "Zend/zend_language_scanner.c"
-yy188:
- YYDEBUG(188, *YYCURSOR);
+#line 3251 "Zend/zend_language_scanner.c"
+yy187:
+ YYDEBUG(187, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(189, *YYCURSOR);
+ YYDEBUG(188, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1496 "Zend/zend_language_scanner.l"
+#line 1494 "Zend/zend_language_scanner.l"
{
return T_MOD_EQUAL;
}
-#line 3265 "Zend/zend_language_scanner.c"
-yy190:
- YYDEBUG(190, *YYCURSOR);
+#line 3261 "Zend/zend_language_scanner.c"
+yy189:
+ YYDEBUG(189, *YYCURSOR);
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '*') goto yy195;
-yy191:
- YYDEBUG(191, *YYCURSOR);
+ if (yych == '*') goto yy194;
+yy190:
+ YYDEBUG(190, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1893 "Zend/zend_language_scanner.l"
+#line 1891 "Zend/zend_language_scanner.l"
{
int doc_com;
@@ -3303,262 +3299,262 @@ yy191:
return T_COMMENT;
}
-#line 3307 "Zend/zend_language_scanner.c"
+#line 3303 "Zend/zend_language_scanner.c"
+yy191:
+ YYDEBUG(191, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy140;
yy192:
YYDEBUG(192, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy141;
-yy193:
- YYDEBUG(193, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(194, *YYCURSOR);
+ YYDEBUG(193, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1488 "Zend/zend_language_scanner.l"
+#line 1486 "Zend/zend_language_scanner.l"
{
return T_DIV_EQUAL;
}
-#line 3321 "Zend/zend_language_scanner.c"
-yy195:
- YYDEBUG(195, *YYCURSOR);
+#line 3317 "Zend/zend_language_scanner.c"
+yy194:
+ YYDEBUG(194, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy196;
+ goto yy195;
}
- goto yy158;
-yy196:
- YYDEBUG(196, *YYCURSOR);
+ goto yy157;
+yy195:
+ YYDEBUG(195, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(197, *YYCURSOR);
+ YYDEBUG(196, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy196;
+ goto yy195;
}
- goto yy191;
-yy198:
- YYDEBUG(198, *YYCURSOR);
+ goto yy190;
+yy197:
+ YYDEBUG(197, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy202;
- YYDEBUG(199, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '=') goto yy201;
+ YYDEBUG(198, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1480 "Zend/zend_language_scanner.l"
+#line 1478 "Zend/zend_language_scanner.l"
{
return T_POW;
}
-#line 3349 "Zend/zend_language_scanner.c"
-yy200:
- YYDEBUG(200, *YYCURSOR);
+#line 3345 "Zend/zend_language_scanner.c"
+yy199:
+ YYDEBUG(199, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(201, *YYCURSOR);
+ YYDEBUG(200, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1476 "Zend/zend_language_scanner.l"
+#line 1474 "Zend/zend_language_scanner.l"
{
return T_MUL_EQUAL;
}
-#line 3359 "Zend/zend_language_scanner.c"
-yy202:
- YYDEBUG(202, *YYCURSOR);
+#line 3355 "Zend/zend_language_scanner.c"
+yy201:
+ YYDEBUG(201, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(203, *YYCURSOR);
+ YYDEBUG(202, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1484 "Zend/zend_language_scanner.l"
+#line 1482 "Zend/zend_language_scanner.l"
{
return T_POW_EQUAL;
}
-#line 3369 "Zend/zend_language_scanner.c"
-yy204:
- YYDEBUG(204, *YYCURSOR);
+#line 3365 "Zend/zend_language_scanner.c"
+yy203:
+ YYDEBUG(203, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy208;
- YYDEBUG(205, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '=') goto yy207;
+ YYDEBUG(204, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1544 "Zend/zend_language_scanner.l"
+#line 1542 "Zend/zend_language_scanner.l"
{
return T_SR;
}
-#line 3380 "Zend/zend_language_scanner.c"
-yy206:
- YYDEBUG(206, *YYCURSOR);
+#line 3376 "Zend/zend_language_scanner.c"
+yy205:
+ YYDEBUG(205, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(207, *YYCURSOR);
+ YYDEBUG(206, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1464 "Zend/zend_language_scanner.l"
+#line 1462 "Zend/zend_language_scanner.l"
{
return T_IS_GREATER_OR_EQUAL;
}
-#line 3390 "Zend/zend_language_scanner.c"
-yy208:
- YYDEBUG(208, *YYCURSOR);
+#line 3386 "Zend/zend_language_scanner.c"
+yy207:
+ YYDEBUG(207, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(209, *YYCURSOR);
+ YYDEBUG(208, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1504 "Zend/zend_language_scanner.l"
+#line 1502 "Zend/zend_language_scanner.l"
{
return T_SR_EQUAL;
}
-#line 3400 "Zend/zend_language_scanner.c"
-yy210:
- YYDEBUG(210, *YYCURSOR);
+#line 3396 "Zend/zend_language_scanner.c"
+yy209:
+ YYDEBUG(209, *YYCURSOR);
yyaccept = 5;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= ';') goto yy211;
- if (yych <= '<') goto yy220;
- if (yych <= '=') goto yy218;
-yy211:
- YYDEBUG(211, *YYCURSOR);
+ if (yych <= ';') goto yy210;
+ if (yych <= '<') goto yy219;
+ if (yych <= '=') goto yy217;
+yy210:
+ YYDEBUG(210, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1540 "Zend/zend_language_scanner.l"
+#line 1538 "Zend/zend_language_scanner.l"
{
return T_SL;
}
-#line 3415 "Zend/zend_language_scanner.c"
-yy212:
- YYDEBUG(212, *YYCURSOR);
+#line 3411 "Zend/zend_language_scanner.c"
+yy211:
+ YYDEBUG(211, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy216;
- YYDEBUG(213, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '>') goto yy215;
+ YYDEBUG(212, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1460 "Zend/zend_language_scanner.l"
+#line 1458 "Zend/zend_language_scanner.l"
{
return T_IS_SMALLER_OR_EQUAL;
}
-#line 3426 "Zend/zend_language_scanner.c"
+#line 3422 "Zend/zend_language_scanner.c"
+yy213:
+ YYDEBUG(213, *YYCURSOR);
+ ++YYCURSOR;
yy214:
YYDEBUG(214, *YYCURSOR);
- ++YYCURSOR;
-yy215:
- YYDEBUG(215, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1452 "Zend/zend_language_scanner.l"
+#line 1450 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_EQUAL;
}
-#line 3437 "Zend/zend_language_scanner.c"
-yy216:
- YYDEBUG(216, *YYCURSOR);
+#line 3433 "Zend/zend_language_scanner.c"
+yy215:
+ YYDEBUG(215, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(217, *YYCURSOR);
+ YYDEBUG(216, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1456 "Zend/zend_language_scanner.l"
+#line 1454 "Zend/zend_language_scanner.l"
{
return T_SPACESHIP;
}
-#line 3447 "Zend/zend_language_scanner.c"
-yy218:
- YYDEBUG(218, *YYCURSOR);
+#line 3443 "Zend/zend_language_scanner.c"
+yy217:
+ YYDEBUG(217, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(219, *YYCURSOR);
+ YYDEBUG(218, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1500 "Zend/zend_language_scanner.l"
+#line 1498 "Zend/zend_language_scanner.l"
{
return T_SL_EQUAL;
}
-#line 3457 "Zend/zend_language_scanner.c"
-yy220:
- YYDEBUG(220, *YYCURSOR);
+#line 3453 "Zend/zend_language_scanner.c"
+yy219:
+ YYDEBUG(219, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(221, *YYCURSOR);
+ YYDEBUG(220, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy220;
+ goto yy219;
}
if (yych <= 'Z') {
if (yych <= '&') {
- if (yych == '"') goto yy225;
- goto yy158;
+ if (yych == '"') goto yy224;
+ goto yy157;
} else {
- if (yych <= '\'') goto yy224;
- if (yych <= '@') goto yy158;
+ if (yych <= '\'') goto yy223;
+ if (yych <= '@') goto yy157;
}
} else {
if (yych <= '`') {
- if (yych != '_') goto yy158;
+ if (yych != '_') goto yy157;
} else {
- if (yych <= 'z') goto yy222;
- if (yych <= '~') goto yy158;
+ if (yych <= 'z') goto yy221;
+ if (yych <= '~') goto yy157;
}
}
-yy222:
- YYDEBUG(222, *YYCURSOR);
+yy221:
+ YYDEBUG(221, *YYCURSOR);
++YYCURSOR;
YYFILL(2);
yych = *YYCURSOR;
- YYDEBUG(223, *YYCURSOR);
+ YYDEBUG(222, *YYCURSOR);
if (yych <= '@') {
if (yych <= '\f') {
- if (yych == '\n') goto yy229;
- goto yy158;
+ if (yych == '\n') goto yy228;
+ goto yy157;
} else {
- if (yych <= '\r') goto yy231;
- if (yych <= '/') goto yy158;
- if (yych <= '9') goto yy222;
- goto yy158;
+ if (yych <= '\r') goto yy230;
+ if (yych <= '/') goto yy157;
+ if (yych <= '9') goto yy221;
+ goto yy157;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy222;
- if (yych <= '^') goto yy158;
- goto yy222;
+ if (yych <= 'Z') goto yy221;
+ if (yych <= '^') goto yy157;
+ goto yy221;
} else {
- if (yych <= '`') goto yy158;
- if (yych <= 'z') goto yy222;
- if (yych <= '~') goto yy158;
- goto yy222;
+ if (yych <= '`') goto yy157;
+ if (yych <= 'z') goto yy221;
+ if (yych <= '~') goto yy157;
+ goto yy221;
}
}
+yy223:
+ YYDEBUG(223, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\'') goto yy157;
+ if (yych <= '/') goto yy232;
+ if (yych <= '9') goto yy157;
+ goto yy232;
yy224:
YYDEBUG(224, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '\'') goto yy158;
- if (yych <= '/') goto yy233;
- if (yych <= '9') goto yy158;
- goto yy233;
+ if (yych == '"') goto yy157;
+ if (yych <= '/') goto yy226;
+ if (yych <= '9') goto yy157;
+ goto yy226;
yy225:
YYDEBUG(225, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '"') goto yy158;
- if (yych <= '/') goto yy227;
- if (yych <= '9') goto yy158;
- goto yy227;
-yy226:
- YYDEBUG(226, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy227:
- YYDEBUG(227, *YYCURSOR);
+yy226:
+ YYDEBUG(226, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
- if (yych != '"') goto yy158;
+ if (yych != '"') goto yy157;
} else {
- if (yych <= '9') goto yy226;
- if (yych <= '@') goto yy158;
- goto yy226;
+ if (yych <= '9') goto yy225;
+ if (yych <= '@') goto yy157;
+ goto yy225;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy226;
- goto yy158;
+ if (yych == '_') goto yy225;
+ goto yy157;
} else {
- if (yych <= 'z') goto yy226;
- if (yych <= '~') goto yy158;
- goto yy226;
+ if (yych <= 'z') goto yy225;
+ if (yych <= '~') goto yy157;
+ goto yy225;
}
}
+yy227:
+ YYDEBUG(227, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy228;
+ if (yych == '\r') goto yy230;
+ goto yy157;
yy228:
YYDEBUG(228, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy229;
- if (yych == '\r') goto yy231;
- goto yy158;
+ ++YYCURSOR;
yy229:
YYDEBUG(229, *YYCURSOR);
- ++YYCURSOR;
-yy230:
- YYDEBUG(230, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2043 "Zend/zend_language_scanner.l"
+#line 2041 "Zend/zend_language_scanner.l"
{
char *s;
int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -3605,3272 +3601,3272 @@ yy230:
return T_START_HEREDOC;
}
-#line 3609 "Zend/zend_language_scanner.c"
+#line 3605 "Zend/zend_language_scanner.c"
+yy230:
+ YYDEBUG(230, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '\n') goto yy228;
+ goto yy229;
yy231:
YYDEBUG(231, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy229;
- goto yy230;
-yy232:
- YYDEBUG(232, *YYCURSOR);
++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
-yy233:
- YYDEBUG(233, *YYCURSOR);
+yy232:
+ YYDEBUG(232, *YYCURSOR);
if (yych <= 'Z') {
if (yych <= '/') {
- if (yych == '\'') goto yy228;
- goto yy158;
+ if (yych == '\'') goto yy227;
+ goto yy157;
} else {
- if (yych <= '9') goto yy232;
- if (yych <= '@') goto yy158;
- goto yy232;
+ if (yych <= '9') goto yy231;
+ if (yych <= '@') goto yy157;
+ goto yy231;
}
} else {
if (yych <= '`') {
- if (yych == '_') goto yy232;
- goto yy158;
+ if (yych == '_') goto yy231;
+ goto yy157;
} else {
- if (yych <= 'z') goto yy232;
- if (yych <= '~') goto yy158;
- goto yy232;
+ if (yych <= 'z') goto yy231;
+ if (yych <= '~') goto yy157;
+ goto yy231;
}
}
-yy234:
- YYDEBUG(234, *YYCURSOR);
+yy233:
+ YYDEBUG(233, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '=') goto yy215;
- YYDEBUG(235, *YYCURSOR);
+ if (yych != '=') goto yy214;
+ YYDEBUG(234, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(236, *YYCURSOR);
+ YYDEBUG(235, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1444 "Zend/zend_language_scanner.l"
+#line 1442 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_IDENTICAL;
}
-#line 3653 "Zend/zend_language_scanner.c"
-yy237:
- YYDEBUG(237, *YYCURSOR);
+#line 3649 "Zend/zend_language_scanner.c"
+yy236:
+ YYDEBUG(236, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(238, *YYCURSOR);
+ YYDEBUG(237, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1468 "Zend/zend_language_scanner.l"
+#line 1466 "Zend/zend_language_scanner.l"
{
return T_PLUS_EQUAL;
}
-#line 3663 "Zend/zend_language_scanner.c"
-yy239:
- YYDEBUG(239, *YYCURSOR);
+#line 3659 "Zend/zend_language_scanner.c"
+yy238:
+ YYDEBUG(238, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(240, *YYCURSOR);
+ YYDEBUG(239, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1432 "Zend/zend_language_scanner.l"
+#line 1430 "Zend/zend_language_scanner.l"
{
return T_INC;
}
-#line 3673 "Zend/zend_language_scanner.c"
+#line 3669 "Zend/zend_language_scanner.c"
+yy240:
+ YYDEBUG(240, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy241;
+ if (yych != 's') goto yy150;
yy241:
YYDEBUG(241, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy242;
- if (yych != 's') goto yy151;
+ if (yych == 'T') goto yy242;
+ if (yych != 't') goto yy150;
yy242:
YYDEBUG(242, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy243;
- if (yych != 't') goto yy151;
-yy243:
- YYDEBUG(243, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(244, *YYCURSOR);
+ YYDEBUG(243, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1420 "Zend/zend_language_scanner.l"
+#line 1418 "Zend/zend_language_scanner.l"
{
return T_LIST;
}
-#line 3696 "Zend/zend_language_scanner.c"
-yy245:
- YYDEBUG(245, *YYCURSOR);
+#line 3692 "Zend/zend_language_scanner.c"
+yy244:
+ YYDEBUG(244, *YYCURSOR);
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy249;
- YYDEBUG(246, *YYCURSOR);
+ if ((yych = *YYCURSOR) == '=') goto yy248;
+ YYDEBUG(245, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1448 "Zend/zend_language_scanner.l"
+#line 1446 "Zend/zend_language_scanner.l"
{
return T_IS_EQUAL;
}
-#line 3707 "Zend/zend_language_scanner.c"
-yy247:
- YYDEBUG(247, *YYCURSOR);
+#line 3703 "Zend/zend_language_scanner.c"
+yy246:
+ YYDEBUG(246, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(248, *YYCURSOR);
+ YYDEBUG(247, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1416 "Zend/zend_language_scanner.l"
+#line 1414 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_ARROW;
}
-#line 3717 "Zend/zend_language_scanner.c"
-yy249:
- YYDEBUG(249, *YYCURSOR);
+#line 3713 "Zend/zend_language_scanner.c"
+yy248:
+ YYDEBUG(248, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(250, *YYCURSOR);
+ YYDEBUG(249, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1440 "Zend/zend_language_scanner.l"
+#line 1438 "Zend/zend_language_scanner.l"
{
return T_IS_IDENTICAL;
}
-#line 3727 "Zend/zend_language_scanner.c"
-yy251:
- YYDEBUG(251, *YYCURSOR);
+#line 3723 "Zend/zend_language_scanner.c"
+yy250:
+ YYDEBUG(250, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'C':
- case 'c': goto yy253;
+ case 'c': goto yy252;
case 'D':
- case 'd': goto yy258;
+ case 'd': goto yy257;
case 'F':
- case 'f': goto yy255;
+ case 'f': goto yy254;
case 'H':
- case 'h': goto yy252;
+ case 'h': goto yy251;
case 'L':
- case 'l': goto yy257;
+ case 'l': goto yy256;
case 'M':
- case 'm': goto yy256;
+ case 'm': goto yy255;
case 'N':
- case 'n': goto yy259;
+ case 'n': goto yy258;
case 'T':
- case 't': goto yy254;
- default: goto yy151;
+ case 't': goto yy253;
+ default: goto yy150;
}
+yy251:
+ YYDEBUG(251, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy319;
+ if (yych == 'a') goto yy319;
+ goto yy150;
yy252:
YYDEBUG(252, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy320;
- if (yych == 'a') goto yy320;
- goto yy151;
+ if (yych == 'L') goto yy312;
+ if (yych == 'l') goto yy312;
+ goto yy150;
yy253:
YYDEBUG(253, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy313;
- if (yych == 'l') goto yy313;
- goto yy151;
+ if (yych == 'R') goto yy305;
+ if (yych == 'r') goto yy305;
+ goto yy150;
yy254:
YYDEBUG(254, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy306;
- if (yych == 'r') goto yy306;
- goto yy151;
-yy255:
- YYDEBUG(255, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'U') {
- if (yych == 'I') goto yy290;
- if (yych <= 'T') goto yy151;
- goto yy291;
+ if (yych == 'I') goto yy289;
+ if (yych <= 'T') goto yy150;
+ goto yy290;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy151;
- goto yy290;
+ if (yych <= 'h') goto yy150;
+ goto yy289;
} else {
- if (yych == 'u') goto yy291;
- goto yy151;
+ if (yych == 'u') goto yy290;
+ goto yy150;
}
}
+yy255:
+ YYDEBUG(255, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy281;
+ if (yych == 'e') goto yy281;
+ goto yy150;
yy256:
YYDEBUG(256, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy282;
- if (yych == 'e') goto yy282;
- goto yy151;
+ if (yych == 'I') goto yy275;
+ if (yych == 'i') goto yy275;
+ goto yy150;
yy257:
YYDEBUG(257, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy276;
- if (yych == 'i') goto yy276;
- goto yy151;
+ if (yych == 'I') goto yy270;
+ if (yych == 'i') goto yy270;
+ goto yy150;
yy258:
YYDEBUG(258, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy271;
- if (yych == 'i') goto yy271;
- goto yy151;
+ if (yych == 'A') goto yy259;
+ if (yych != 'a') goto yy150;
yy259:
YYDEBUG(259, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy260;
- if (yych != 'a') goto yy151;
+ if (yych == 'M') goto yy260;
+ if (yych != 'm') goto yy150;
yy260:
YYDEBUG(260, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy261;
- if (yych != 'm') goto yy151;
+ if (yych == 'E') goto yy261;
+ if (yych != 'e') goto yy150;
yy261:
YYDEBUG(261, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy262;
- if (yych != 'e') goto yy151;
+ if (yych == 'S') goto yy262;
+ if (yych != 's') goto yy150;
yy262:
YYDEBUG(262, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy263;
- if (yych != 's') goto yy151;
+ if (yych == 'P') goto yy263;
+ if (yych != 'p') goto yy150;
yy263:
YYDEBUG(263, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy264;
- if (yych != 'p') goto yy151;
+ if (yych == 'A') goto yy264;
+ if (yych != 'a') goto yy150;
yy264:
YYDEBUG(264, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy265;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy265;
+ if (yych != 'c') goto yy150;
yy265:
YYDEBUG(265, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy266;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy266;
+ if (yych != 'e') goto yy150;
yy266:
YYDEBUG(266, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy267;
- if (yych != 'e') goto yy151;
-yy267:
+ if (yych != '_') goto yy150;
YYDEBUG(267, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(268, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(269, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(270, *YYCURSOR);
+ YYDEBUG(269, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1743 "Zend/zend_language_scanner.l"
+#line 1741 "Zend/zend_language_scanner.l"
{
return T_NS_C;
}
-#line 3861 "Zend/zend_language_scanner.c"
+#line 3857 "Zend/zend_language_scanner.c"
+yy270:
+ YYDEBUG(270, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy271;
+ if (yych != 'r') goto yy150;
yy271:
YYDEBUG(271, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy272;
- if (yych != 'r') goto yy151;
-yy272:
+ if (yych != '_') goto yy150;
YYDEBUG(272, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(273, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(274, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(275, *YYCURSOR);
+ YYDEBUG(274, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1739 "Zend/zend_language_scanner.l"
+#line 1737 "Zend/zend_language_scanner.l"
{
return T_DIR;
}
-#line 3885 "Zend/zend_language_scanner.c"
+#line 3881 "Zend/zend_language_scanner.c"
+yy275:
+ YYDEBUG(275, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy276;
+ if (yych != 'n') goto yy150;
yy276:
YYDEBUG(276, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy277;
- if (yych != 'n') goto yy151;
+ if (yych == 'E') goto yy277;
+ if (yych != 'e') goto yy150;
yy277:
YYDEBUG(277, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy278;
- if (yych != 'e') goto yy151;
-yy278:
+ if (yych != '_') goto yy150;
YYDEBUG(278, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(279, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(280, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(281, *YYCURSOR);
+ YYDEBUG(280, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1731 "Zend/zend_language_scanner.l"
+#line 1729 "Zend/zend_language_scanner.l"
{
return T_LINE;
}
-#line 3914 "Zend/zend_language_scanner.c"
+#line 3910 "Zend/zend_language_scanner.c"
+yy281:
+ YYDEBUG(281, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy282;
+ if (yych != 't') goto yy150;
yy282:
YYDEBUG(282, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy283;
- if (yych != 't') goto yy151;
+ if (yych == 'H') goto yy283;
+ if (yych != 'h') goto yy150;
yy283:
YYDEBUG(283, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy284;
- if (yych != 'h') goto yy151;
+ if (yych == 'O') goto yy284;
+ if (yych != 'o') goto yy150;
yy284:
YYDEBUG(284, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy285;
- if (yych != 'o') goto yy151;
+ if (yych == 'D') goto yy285;
+ if (yych != 'd') goto yy150;
yy285:
YYDEBUG(285, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy286;
- if (yych != 'd') goto yy151;
-yy286:
+ if (yych != '_') goto yy150;
YYDEBUG(286, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(287, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(288, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(289, *YYCURSOR);
+ YYDEBUG(288, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1727 "Zend/zend_language_scanner.l"
+#line 1725 "Zend/zend_language_scanner.l"
{
return T_METHOD_C;
}
-#line 3953 "Zend/zend_language_scanner.c"
+#line 3949 "Zend/zend_language_scanner.c"
+yy289:
+ YYDEBUG(289, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy300;
+ if (yych == 'l') goto yy300;
+ goto yy150;
yy290:
YYDEBUG(290, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy301;
- if (yych == 'l') goto yy301;
- goto yy151;
+ if (yych == 'N') goto yy291;
+ if (yych != 'n') goto yy150;
yy291:
YYDEBUG(291, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy292;
- if (yych != 'n') goto yy151;
+ if (yych == 'C') goto yy292;
+ if (yych != 'c') goto yy150;
yy292:
YYDEBUG(292, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy293;
- if (yych != 'c') goto yy151;
+ if (yych == 'T') goto yy293;
+ if (yych != 't') goto yy150;
yy293:
YYDEBUG(293, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy294;
- if (yych != 't') goto yy151;
+ if (yych == 'I') goto yy294;
+ if (yych != 'i') goto yy150;
yy294:
YYDEBUG(294, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy295;
- if (yych != 'i') goto yy151;
+ if (yych == 'O') goto yy295;
+ if (yych != 'o') goto yy150;
yy295:
YYDEBUG(295, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy296;
- if (yych != 'o') goto yy151;
+ if (yych == 'N') goto yy296;
+ if (yych != 'n') goto yy150;
yy296:
YYDEBUG(296, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy297;
- if (yych != 'n') goto yy151;
-yy297:
+ if (yych != '_') goto yy150;
YYDEBUG(297, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(298, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(299, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(300, *YYCURSOR);
+ YYDEBUG(299, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1723 "Zend/zend_language_scanner.l"
+#line 1721 "Zend/zend_language_scanner.l"
{
return T_FUNC_C;
}
-#line 4008 "Zend/zend_language_scanner.c"
+#line 4004 "Zend/zend_language_scanner.c"
+yy300:
+ YYDEBUG(300, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy301;
+ if (yych != 'e') goto yy150;
yy301:
YYDEBUG(301, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy302;
- if (yych != 'e') goto yy151;
-yy302:
+ if (yych != '_') goto yy150;
YYDEBUG(302, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(303, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(304, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(305, *YYCURSOR);
+ YYDEBUG(304, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1735 "Zend/zend_language_scanner.l"
+#line 1733 "Zend/zend_language_scanner.l"
{
return T_FILE;
}
-#line 4032 "Zend/zend_language_scanner.c"
+#line 4028 "Zend/zend_language_scanner.c"
+yy305:
+ YYDEBUG(305, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy306;
+ if (yych != 'a') goto yy150;
yy306:
YYDEBUG(306, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy307;
- if (yych != 'a') goto yy151;
+ if (yych == 'I') goto yy307;
+ if (yych != 'i') goto yy150;
yy307:
YYDEBUG(307, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy308;
- if (yych != 'i') goto yy151;
+ if (yych == 'T') goto yy308;
+ if (yych != 't') goto yy150;
yy308:
YYDEBUG(308, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy309;
- if (yych != 't') goto yy151;
-yy309:
+ if (yych != '_') goto yy150;
YYDEBUG(309, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(310, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(311, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(312, *YYCURSOR);
+ YYDEBUG(311, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1719 "Zend/zend_language_scanner.l"
+#line 1717 "Zend/zend_language_scanner.l"
{
return T_TRAIT_C;
}
-#line 4066 "Zend/zend_language_scanner.c"
+#line 4062 "Zend/zend_language_scanner.c"
+yy312:
+ YYDEBUG(312, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy313;
+ if (yych != 'a') goto yy150;
yy313:
YYDEBUG(313, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy314;
- if (yych != 'a') goto yy151;
+ if (yych == 'S') goto yy314;
+ if (yych != 's') goto yy150;
yy314:
YYDEBUG(314, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == 'S') goto yy315;
- if (yych != 's') goto yy151;
+ if (yych != 's') goto yy150;
yy315:
YYDEBUG(315, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy316;
- if (yych != 's') goto yy151;
-yy316:
+ if (yych != '_') goto yy150;
YYDEBUG(316, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych != '_') goto yy150;
YYDEBUG(317, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
- YYDEBUG(318, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(319, *YYCURSOR);
+ YYDEBUG(318, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1715 "Zend/zend_language_scanner.l"
+#line 1713 "Zend/zend_language_scanner.l"
{
return T_CLASS_C;
}
-#line 4100 "Zend/zend_language_scanner.c"
+#line 4096 "Zend/zend_language_scanner.c"
+yy319:
+ YYDEBUG(319, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy320;
+ if (yych != 'l') goto yy150;
yy320:
YYDEBUG(320, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy321;
- if (yych != 'l') goto yy151;
+ if (yych == 'T') goto yy321;
+ if (yych != 't') goto yy150;
yy321:
YYDEBUG(321, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy322;
- if (yych != 't') goto yy151;
-yy322:
+ if (yych != '_') goto yy150;
YYDEBUG(322, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '_') goto yy151;
+ if (yych == 'C') goto yy323;
+ if (yych != 'c') goto yy150;
+yy323:
YYDEBUG(323, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy324;
- if (yych != 'c') goto yy151;
+ if (yych == 'O') goto yy324;
+ if (yych != 'o') goto yy150;
yy324:
YYDEBUG(324, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy325;
- if (yych != 'o') goto yy151;
+ if (yych == 'M') goto yy325;
+ if (yych != 'm') goto yy150;
yy325:
YYDEBUG(325, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy326;
- if (yych != 'm') goto yy151;
+ if (yych == 'P') goto yy326;
+ if (yych != 'p') goto yy150;
yy326:
YYDEBUG(326, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy327;
- if (yych != 'p') goto yy151;
+ if (yych == 'I') goto yy327;
+ if (yych != 'i') goto yy150;
yy327:
YYDEBUG(327, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy328;
- if (yych != 'i') goto yy151;
+ if (yych == 'L') goto yy328;
+ if (yych != 'l') goto yy150;
yy328:
YYDEBUG(328, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy329;
- if (yych != 'l') goto yy151;
+ if (yych == 'E') goto yy329;
+ if (yych != 'e') goto yy150;
yy329:
YYDEBUG(329, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy330;
- if (yych != 'e') goto yy151;
+ if (yych == 'R') goto yy330;
+ if (yych != 'r') goto yy150;
yy330:
YYDEBUG(330, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy331;
- if (yych != 'r') goto yy151;
-yy331:
- YYDEBUG(331, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(332, *YYCURSOR);
+ YYDEBUG(331, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1384 "Zend/zend_language_scanner.l"
+#line 1382 "Zend/zend_language_scanner.l"
{
return T_HALT_COMPILER;
}
-#line 4166 "Zend/zend_language_scanner.c"
+#line 4162 "Zend/zend_language_scanner.c"
+yy332:
+ YYDEBUG(332, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy336;
+ if (yych == 's') goto yy336;
+ goto yy150;
yy333:
YYDEBUG(333, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy337;
- if (yych == 's') goto yy337;
- goto yy151;
+ if (yych == 'E') goto yy334;
+ if (yych != 'e') goto yy150;
yy334:
YYDEBUG(334, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy335;
- if (yych != 'e') goto yy151;
-yy335:
- YYDEBUG(335, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(336, *YYCURSOR);
+ YYDEBUG(335, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1364 "Zend/zend_language_scanner.l"
+#line 1362 "Zend/zend_language_scanner.l"
{
return T_USE;
}
-#line 4190 "Zend/zend_language_scanner.c"
+#line 4186 "Zend/zend_language_scanner.c"
+yy336:
+ YYDEBUG(336, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy337;
+ if (yych != 'e') goto yy150;
yy337:
YYDEBUG(337, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy338;
- if (yych != 'e') goto yy151;
+ if (yych == 'T') goto yy338;
+ if (yych != 't') goto yy150;
yy338:
YYDEBUG(338, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy339;
- if (yych != 't') goto yy151;
-yy339:
- YYDEBUG(339, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(340, *YYCURSOR);
+ YYDEBUG(339, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1412 "Zend/zend_language_scanner.l"
+#line 1410 "Zend/zend_language_scanner.l"
{
return T_UNSET;
}
-#line 4213 "Zend/zend_language_scanner.c"
-yy341:
- YYDEBUG(341, *YYCURSOR);
+#line 4209 "Zend/zend_language_scanner.c"
+yy340:
+ YYDEBUG(340, *YYCURSOR);
++YYCURSOR;
YYFILL(7);
yych = *YYCURSOR;
-yy342:
- YYDEBUG(342, *YYCURSOR);
+yy341:
+ YYDEBUG(341, *YYCURSOR);
if (yych <= 'S') {
if (yych <= 'D') {
if (yych <= ' ') {
- if (yych == '\t') goto yy341;
- if (yych <= 0x1F) goto yy158;
- goto yy341;
+ if (yych == '\t') goto yy340;
+ if (yych <= 0x1F) goto yy157;
+ goto yy340;
} else {
if (yych <= 'A') {
- if (yych <= '@') goto yy158;
- goto yy346;
+ if (yych <= '@') goto yy157;
+ goto yy345;
} else {
- if (yych <= 'B') goto yy344;
- if (yych <= 'C') goto yy158;
- goto yy349;
+ if (yych <= 'B') goto yy343;
+ if (yych <= 'C') goto yy157;
+ goto yy348;
}
}
} else {
if (yych <= 'I') {
- if (yych == 'F') goto yy350;
- if (yych <= 'H') goto yy158;
- goto yy351;
+ if (yych == 'F') goto yy349;
+ if (yych <= 'H') goto yy157;
+ goto yy350;
} else {
if (yych <= 'O') {
- if (yych <= 'N') goto yy158;
- goto yy345;
+ if (yych <= 'N') goto yy157;
+ goto yy344;
} else {
- if (yych <= 'Q') goto yy158;
- if (yych <= 'R') goto yy348;
- goto yy347;
+ if (yych <= 'Q') goto yy157;
+ if (yych <= 'R') goto yy347;
+ goto yy346;
}
}
}
} else {
if (yych <= 'f') {
if (yych <= 'a') {
- if (yych == 'U') goto yy343;
- if (yych <= '`') goto yy158;
- goto yy346;
+ if (yych == 'U') goto yy342;
+ if (yych <= '`') goto yy157;
+ goto yy345;
} else {
if (yych <= 'c') {
- if (yych <= 'b') goto yy344;
- goto yy158;
+ if (yych <= 'b') goto yy343;
+ goto yy157;
} else {
- if (yych <= 'd') goto yy349;
- if (yych <= 'e') goto yy158;
- goto yy350;
+ if (yych <= 'd') goto yy348;
+ if (yych <= 'e') goto yy157;
+ goto yy349;
}
}
} else {
if (yych <= 'q') {
if (yych <= 'i') {
- if (yych <= 'h') goto yy158;
- goto yy351;
+ if (yych <= 'h') goto yy157;
+ goto yy350;
} else {
- if (yych == 'o') goto yy345;
- goto yy158;
+ if (yych == 'o') goto yy344;
+ goto yy157;
}
} else {
if (yych <= 's') {
- if (yych <= 'r') goto yy348;
- goto yy347;
+ if (yych <= 'r') goto yy347;
+ goto yy346;
} else {
- if (yych != 'u') goto yy158;
+ if (yych != 'u') goto yy157;
}
}
}
}
+yy342:
+ YYDEBUG(342, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy409;
+ if (yych == 'n') goto yy409;
+ goto yy157;
yy343:
YYDEBUG(343, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy410;
- if (yych == 'n') goto yy410;
- goto yy158;
-yy344:
- YYDEBUG(344, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy397;
- if (yych <= 'N') goto yy158;
- goto yy398;
+ if (yych == 'I') goto yy396;
+ if (yych <= 'N') goto yy157;
+ goto yy397;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy158;
- goto yy397;
+ if (yych <= 'h') goto yy157;
+ goto yy396;
} else {
- if (yych == 'o') goto yy398;
- goto yy158;
+ if (yych == 'o') goto yy397;
+ goto yy157;
}
}
+yy344:
+ YYDEBUG(344, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy388;
+ if (yych == 'b') goto yy388;
+ goto yy157;
yy345:
YYDEBUG(345, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy389;
- if (yych == 'b') goto yy389;
- goto yy158;
+ if (yych == 'R') goto yy381;
+ if (yych == 'r') goto yy381;
+ goto yy157;
yy346:
YYDEBUG(346, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy382;
- if (yych == 'r') goto yy382;
- goto yy158;
+ if (yych == 'T') goto yy373;
+ if (yych == 't') goto yy373;
+ goto yy157;
yy347:
YYDEBUG(347, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy374;
- if (yych == 't') goto yy374;
- goto yy158;
+ if (yych == 'E') goto yy371;
+ if (yych == 'e') goto yy371;
+ goto yy157;
yy348:
YYDEBUG(348, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy372;
- if (yych == 'e') goto yy372;
- goto yy158;
+ if (yych == 'O') goto yy367;
+ if (yych == 'o') goto yy367;
+ goto yy157;
yy349:
YYDEBUG(349, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy368;
- if (yych == 'o') goto yy368;
- goto yy158;
+ if (yych == 'L') goto yy360;
+ if (yych == 'l') goto yy360;
+ goto yy157;
yy350:
YYDEBUG(350, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy361;
- if (yych == 'l') goto yy361;
- goto yy158;
+ if (yych == 'N') goto yy351;
+ if (yych != 'n') goto yy157;
yy351:
YYDEBUG(351, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy352;
- if (yych != 'n') goto yy158;
+ if (yych == 'T') goto yy352;
+ if (yych != 't') goto yy157;
yy352:
YYDEBUG(352, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy353;
- if (yych != 't') goto yy158;
+ if (yych == 'E') goto yy353;
+ if (yych != 'e') goto yy355;
yy353:
YYDEBUG(353, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy354;
- if (yych != 'e') goto yy356;
+ if (yych == 'G') goto yy358;
+ if (yych == 'g') goto yy358;
+ goto yy157;
yy354:
YYDEBUG(354, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'G') goto yy359;
- if (yych == 'g') goto yy359;
- goto yy158;
-yy355:
- YYDEBUG(355, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy356:
- YYDEBUG(356, *YYCURSOR);
+yy355:
+ YYDEBUG(355, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy355;
- goto yy158;
+ if (yych == '\t') goto yy354;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy355;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy354;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(357, *YYCURSOR);
+ YYDEBUG(356, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(358, *YYCURSOR);
+ YYDEBUG(357, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1312 "Zend/zend_language_scanner.l"
+#line 1310 "Zend/zend_language_scanner.l"
{
return T_INT_CAST;
}
-#line 4389 "Zend/zend_language_scanner.c"
+#line 4385 "Zend/zend_language_scanner.c"
+yy358:
+ YYDEBUG(358, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy359;
+ if (yych != 'e') goto yy157;
yy359:
YYDEBUG(359, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy360;
- if (yych != 'e') goto yy158;
+ if (yych == 'R') goto yy354;
+ if (yych == 'r') goto yy354;
+ goto yy157;
yy360:
YYDEBUG(360, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy355;
- if (yych == 'r') goto yy355;
- goto yy158;
+ if (yych == 'O') goto yy361;
+ if (yych != 'o') goto yy157;
yy361:
YYDEBUG(361, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy362;
- if (yych != 'o') goto yy158;
+ if (yych == 'A') goto yy362;
+ if (yych != 'a') goto yy157;
yy362:
YYDEBUG(362, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy363;
- if (yych != 'a') goto yy158;
+ if (yych == 'T') goto yy363;
+ if (yych != 't') goto yy157;
yy363:
YYDEBUG(363, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy364;
- if (yych != 't') goto yy158;
-yy364:
- YYDEBUG(364, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(365, *YYCURSOR);
+ YYDEBUG(364, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy364;
- goto yy158;
+ if (yych == '\t') goto yy363;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy364;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy363;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(366, *YYCURSOR);
+ YYDEBUG(365, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(367, *YYCURSOR);
+ YYDEBUG(366, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1316 "Zend/zend_language_scanner.l"
+#line 1314 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_CAST;
}
-#line 4437 "Zend/zend_language_scanner.c"
+#line 4433 "Zend/zend_language_scanner.c"
+yy367:
+ YYDEBUG(367, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy368;
+ if (yych != 'u') goto yy157;
yy368:
YYDEBUG(368, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy369;
- if (yych != 'u') goto yy158;
+ if (yych == 'B') goto yy369;
+ if (yych != 'b') goto yy157;
yy369:
YYDEBUG(369, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy370;
- if (yych != 'b') goto yy158;
+ if (yych == 'L') goto yy370;
+ if (yych != 'l') goto yy157;
yy370:
YYDEBUG(370, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy371;
- if (yych != 'l') goto yy158;
+ if (yych == 'E') goto yy363;
+ if (yych == 'e') goto yy363;
+ goto yy157;
yy371:
YYDEBUG(371, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy364;
- if (yych == 'e') goto yy364;
- goto yy158;
+ if (yych == 'A') goto yy372;
+ if (yych != 'a') goto yy157;
yy372:
YYDEBUG(372, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy373;
- if (yych != 'a') goto yy158;
+ if (yych == 'L') goto yy363;
+ if (yych == 'l') goto yy363;
+ goto yy157;
yy373:
YYDEBUG(373, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy364;
- if (yych == 'l') goto yy364;
- goto yy158;
+ if (yych == 'R') goto yy374;
+ if (yych != 'r') goto yy157;
yy374:
YYDEBUG(374, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy375;
- if (yych != 'r') goto yy158;
+ if (yych == 'I') goto yy375;
+ if (yych != 'i') goto yy157;
yy375:
YYDEBUG(375, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy376;
- if (yych != 'i') goto yy158;
+ if (yych == 'N') goto yy376;
+ if (yych != 'n') goto yy157;
yy376:
YYDEBUG(376, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy377;
- if (yych != 'n') goto yy158;
+ if (yych == 'G') goto yy377;
+ if (yych != 'g') goto yy157;
yy377:
YYDEBUG(377, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'G') goto yy378;
- if (yych != 'g') goto yy158;
-yy378:
- YYDEBUG(378, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(379, *YYCURSOR);
+ YYDEBUG(378, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy378;
- goto yy158;
+ if (yych == '\t') goto yy377;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy378;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy377;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(380, *YYCURSOR);
+ YYDEBUG(379, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(381, *YYCURSOR);
+ YYDEBUG(380, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1320 "Zend/zend_language_scanner.l"
+#line 1318 "Zend/zend_language_scanner.l"
{
return T_STRING_CAST;
}
-#line 4511 "Zend/zend_language_scanner.c"
+#line 4507 "Zend/zend_language_scanner.c"
+yy381:
+ YYDEBUG(381, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy382;
+ if (yych != 'r') goto yy157;
yy382:
YYDEBUG(382, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy383;
- if (yych != 'r') goto yy158;
+ if (yych == 'A') goto yy383;
+ if (yych != 'a') goto yy157;
yy383:
YYDEBUG(383, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy384;
- if (yych != 'a') goto yy158;
+ if (yych == 'Y') goto yy384;
+ if (yych != 'y') goto yy157;
yy384:
YYDEBUG(384, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy385;
- if (yych != 'y') goto yy158;
-yy385:
- YYDEBUG(385, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(386, *YYCURSOR);
+ YYDEBUG(385, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy385;
- goto yy158;
+ if (yych == '\t') goto yy384;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy385;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy384;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(387, *YYCURSOR);
+ YYDEBUG(386, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(388, *YYCURSOR);
+ YYDEBUG(387, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1324 "Zend/zend_language_scanner.l"
+#line 1322 "Zend/zend_language_scanner.l"
{
return T_ARRAY_CAST;
}
-#line 4548 "Zend/zend_language_scanner.c"
+#line 4544 "Zend/zend_language_scanner.c"
+yy388:
+ YYDEBUG(388, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'J') goto yy389;
+ if (yych != 'j') goto yy157;
yy389:
YYDEBUG(389, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'J') goto yy390;
- if (yych != 'j') goto yy158;
+ if (yych == 'E') goto yy390;
+ if (yych != 'e') goto yy157;
yy390:
YYDEBUG(390, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy391;
- if (yych != 'e') goto yy158;
+ if (yych == 'C') goto yy391;
+ if (yych != 'c') goto yy157;
yy391:
YYDEBUG(391, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy392;
- if (yych != 'c') goto yy158;
+ if (yych == 'T') goto yy392;
+ if (yych != 't') goto yy157;
yy392:
YYDEBUG(392, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy393;
- if (yych != 't') goto yy158;
-yy393:
- YYDEBUG(393, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(394, *YYCURSOR);
+ YYDEBUG(393, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy393;
- goto yy158;
+ if (yych == '\t') goto yy392;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy393;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy392;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(395, *YYCURSOR);
+ YYDEBUG(394, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(396, *YYCURSOR);
+ YYDEBUG(395, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1328 "Zend/zend_language_scanner.l"
+#line 1326 "Zend/zend_language_scanner.l"
{
return T_OBJECT_CAST;
}
-#line 4590 "Zend/zend_language_scanner.c"
+#line 4586 "Zend/zend_language_scanner.c"
+yy396:
+ YYDEBUG(396, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy406;
+ if (yych == 'n') goto yy406;
+ goto yy157;
yy397:
YYDEBUG(397, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy407;
- if (yych == 'n') goto yy407;
- goto yy158;
+ if (yych == 'O') goto yy398;
+ if (yych != 'o') goto yy157;
yy398:
YYDEBUG(398, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy399;
- if (yych != 'o') goto yy158;
+ if (yych == 'L') goto yy399;
+ if (yych != 'l') goto yy157;
yy399:
YYDEBUG(399, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy400;
- if (yych != 'l') goto yy158;
+ if (yych == 'E') goto yy404;
+ if (yych == 'e') goto yy404;
+ goto yy401;
yy400:
YYDEBUG(400, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy405;
- if (yych == 'e') goto yy405;
- goto yy402;
-yy401:
- YYDEBUG(401, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy402:
- YYDEBUG(402, *YYCURSOR);
+yy401:
+ YYDEBUG(401, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy401;
- goto yy158;
+ if (yych == '\t') goto yy400;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy401;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy400;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(403, *YYCURSOR);
+ YYDEBUG(402, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(404, *YYCURSOR);
+ YYDEBUG(403, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1332 "Zend/zend_language_scanner.l"
+#line 1330 "Zend/zend_language_scanner.l"
{
return T_BOOL_CAST;
}
-#line 4635 "Zend/zend_language_scanner.c"
+#line 4631 "Zend/zend_language_scanner.c"
+yy404:
+ YYDEBUG(404, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy405;
+ if (yych != 'a') goto yy157;
yy405:
YYDEBUG(405, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy406;
- if (yych != 'a') goto yy158;
+ if (yych == 'N') goto yy400;
+ if (yych == 'n') goto yy400;
+ goto yy157;
yy406:
YYDEBUG(406, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy401;
- if (yych == 'n') goto yy401;
- goto yy158;
+ if (yych == 'A') goto yy407;
+ if (yych != 'a') goto yy157;
yy407:
YYDEBUG(407, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy408;
- if (yych != 'a') goto yy158;
+ if (yych == 'R') goto yy408;
+ if (yych != 'r') goto yy157;
yy408:
YYDEBUG(408, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy409;
- if (yych != 'r') goto yy158;
+ if (yych == 'Y') goto yy377;
+ if (yych == 'y') goto yy377;
+ goto yy157;
yy409:
YYDEBUG(409, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'Y') goto yy378;
- if (yych == 'y') goto yy378;
- goto yy158;
+ if (yych == 'S') goto yy410;
+ if (yych != 's') goto yy157;
yy410:
YYDEBUG(410, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy411;
- if (yych != 's') goto yy158;
+ if (yych == 'E') goto yy411;
+ if (yych != 'e') goto yy157;
yy411:
YYDEBUG(411, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy412;
- if (yych != 'e') goto yy158;
+ if (yych == 'T') goto yy412;
+ if (yych != 't') goto yy157;
yy412:
YYDEBUG(412, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy413;
- if (yych != 't') goto yy158;
-yy413:
- YYDEBUG(413, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(414, *YYCURSOR);
+ YYDEBUG(413, *YYCURSOR);
if (yych <= 0x1F) {
- if (yych == '\t') goto yy413;
- goto yy158;
+ if (yych == '\t') goto yy412;
+ goto yy157;
} else {
- if (yych <= ' ') goto yy413;
- if (yych != ')') goto yy158;
+ if (yych <= ' ') goto yy412;
+ if (yych != ')') goto yy157;
}
- YYDEBUG(415, *YYCURSOR);
+ YYDEBUG(414, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(416, *YYCURSOR);
+ YYDEBUG(415, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1336 "Zend/zend_language_scanner.l"
+#line 1334 "Zend/zend_language_scanner.l"
{
return T_UNSET_CAST;
}
-#line 4699 "Zend/zend_language_scanner.c"
+#line 4695 "Zend/zend_language_scanner.c"
+yy416:
+ YYDEBUG(416, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy417;
+ if (yych != 'r') goto yy150;
yy417:
YYDEBUG(417, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy418;
- if (yych != 'r') goto yy151;
-yy418:
- YYDEBUG(418, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(419, *YYCURSOR);
+ YYDEBUG(418, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1308 "Zend/zend_language_scanner.l"
+#line 1306 "Zend/zend_language_scanner.l"
{
return T_VAR;
}
-#line 4717 "Zend/zend_language_scanner.c"
+#line 4713 "Zend/zend_language_scanner.c"
+yy419:
+ YYDEBUG(419, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'M') goto yy423;
+ if (yych == 'm') goto yy423;
+ goto yy150;
yy420:
YYDEBUG(420, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy424;
- if (yych == 'm') goto yy424;
- goto yy151;
+ if (yych == 'W') goto yy421;
+ if (yych != 'w') goto yy150;
yy421:
YYDEBUG(421, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'W') goto yy422;
- if (yych != 'w') goto yy151;
-yy422:
- YYDEBUG(422, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(423, *YYCURSOR);
+ YYDEBUG(422, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1300 "Zend/zend_language_scanner.l"
+#line 1298 "Zend/zend_language_scanner.l"
{
return T_NEW;
}
-#line 4741 "Zend/zend_language_scanner.c"
+#line 4737 "Zend/zend_language_scanner.c"
+yy423:
+ YYDEBUG(423, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy424;
+ if (yych != 'e') goto yy150;
yy424:
YYDEBUG(424, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy425;
- if (yych != 'e') goto yy151;
+ if (yych == 'S') goto yy425;
+ if (yych != 's') goto yy150;
yy425:
YYDEBUG(425, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy426;
- if (yych != 's') goto yy151;
+ if (yych == 'P') goto yy426;
+ if (yych != 'p') goto yy150;
yy426:
YYDEBUG(426, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy427;
- if (yych != 'p') goto yy151;
+ if (yych == 'A') goto yy427;
+ if (yych != 'a') goto yy150;
yy427:
YYDEBUG(427, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy428;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy428;
+ if (yych != 'c') goto yy150;
yy428:
YYDEBUG(428, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy429;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy429;
+ if (yych != 'e') goto yy150;
yy429:
YYDEBUG(429, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy430;
- if (yych != 'e') goto yy151;
-yy430:
- YYDEBUG(430, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(431, *YYCURSOR);
+ YYDEBUG(430, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1360 "Zend/zend_language_scanner.l"
+#line 1358 "Zend/zend_language_scanner.l"
{
return T_NAMESPACE;
}
-#line 4784 "Zend/zend_language_scanner.c"
+#line 4780 "Zend/zend_language_scanner.c"
+yy431:
+ YYDEBUG(431, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '\n') goto yy435;
+ if (yych == '\r') goto yy436;
yy432:
YYDEBUG(432, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '\n') goto yy436;
- if (yych == '\r') goto yy437;
-yy433:
- YYDEBUG(433, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1926 "Zend/zend_language_scanner.l"
+#line 1924 "Zend/zend_language_scanner.l"
{
BEGIN(INITIAL);
return T_CLOSE_TAG; /* implicit ';' at php-end tag */
}
-#line 4798 "Zend/zend_language_scanner.c"
-yy434:
- YYDEBUG(434, *YYCURSOR);
+#line 4794 "Zend/zend_language_scanner.c"
+yy433:
+ YYDEBUG(433, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(435, *YYCURSOR);
+ YYDEBUG(434, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1296 "Zend/zend_language_scanner.l"
+#line 1294 "Zend/zend_language_scanner.l"
{
return T_COALESCE;
}
-#line 4808 "Zend/zend_language_scanner.c"
+#line 4804 "Zend/zend_language_scanner.c"
+yy435:
+ YYDEBUG(435, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy432;
yy436:
YYDEBUG(436, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy433;
+ if (yych == '\n') goto yy435;
+ goto yy432;
yy437:
YYDEBUG(437, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == '\n') goto yy436;
- goto yy433;
-yy438:
- YYDEBUG(438, *YYCURSOR);
yyaccept = 3;
YYMARKER = ++YYCURSOR;
YYFILL(3);
yych = *YYCURSOR;
- YYDEBUG(439, *YYCURSOR);
+ YYDEBUG(438, *YYCURSOR);
if (yych <= 'D') {
- if (yych <= '/') goto yy154;
- if (yych <= '9') goto yy438;
- goto yy154;
+ if (yych <= '/') goto yy153;
+ if (yych <= '9') goto yy437;
+ goto yy153;
} else {
- if (yych <= 'E') goto yy157;
- if (yych == 'e') goto yy157;
- goto yy154;
+ if (yych <= 'E') goto yy156;
+ if (yych == 'e') goto yy156;
+ goto yy153;
}
-yy440:
- YYDEBUG(440, *YYCURSOR);
+yy439:
+ YYDEBUG(439, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(441, *YYCURSOR);
+ YYDEBUG(440, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1492 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
{
return T_CONCAT_EQUAL;
}
-#line 4843 "Zend/zend_language_scanner.c"
-yy442:
- YYDEBUG(442, *YYCURSOR);
+#line 4839 "Zend/zend_language_scanner.c"
+yy441:
+ YYDEBUG(441, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych != '.') goto yy158;
- YYDEBUG(443, *YYCURSOR);
+ if (yych != '.') goto yy157;
+ YYDEBUG(442, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(444, *YYCURSOR);
+ YYDEBUG(443, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1292 "Zend/zend_language_scanner.l"
+#line 1290 "Zend/zend_language_scanner.l"
{
return T_ELLIPSIS;
}
-#line 4856 "Zend/zend_language_scanner.c"
-yy445:
- YYDEBUG(445, *YYCURSOR);
+#line 4852 "Zend/zend_language_scanner.c"
+yy444:
+ YYDEBUG(444, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(446, *YYCURSOR);
+ YYDEBUG(445, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1284 "Zend/zend_language_scanner.l"
+#line 1282 "Zend/zend_language_scanner.l"
{
return T_PAAMAYIM_NEKUDOTAYIM;
}
-#line 4866 "Zend/zend_language_scanner.c"
-yy447:
- YYDEBUG(447, *YYCURSOR);
+#line 4862 "Zend/zend_language_scanner.c"
+yy446:
+ YYDEBUG(446, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy448:
- YYDEBUG(448, *YYCURSOR);
+yy447:
+ YYDEBUG(447, *YYCURSOR);
if (yych <= '\f') {
- if (yych <= 0x08) goto yy105;
- if (yych <= '\n') goto yy447;
- goto yy105;
+ if (yych <= 0x08) goto yy104;
+ if (yych <= '\n') goto yy446;
+ goto yy104;
} else {
- if (yych <= '\r') goto yy447;
- if (yych == ' ') goto yy447;
- goto yy105;
+ if (yych <= '\r') goto yy446;
+ if (yych == ' ') goto yy446;
+ goto yy104;
}
-yy449:
- YYDEBUG(449, *YYCURSOR);
+yy448:
+ YYDEBUG(448, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(450, *YYCURSOR);
+ YYDEBUG(449, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1472 "Zend/zend_language_scanner.l"
+#line 1470 "Zend/zend_language_scanner.l"
{
return T_MINUS_EQUAL;
}
-#line 4892 "Zend/zend_language_scanner.c"
-yy451:
- YYDEBUG(451, *YYCURSOR);
+#line 4888 "Zend/zend_language_scanner.c"
+yy450:
+ YYDEBUG(450, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(452, *YYCURSOR);
+ YYDEBUG(451, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1436 "Zend/zend_language_scanner.l"
+#line 1434 "Zend/zend_language_scanner.l"
{
return T_DEC;
}
-#line 4902 "Zend/zend_language_scanner.c"
-yy453:
- YYDEBUG(453, *YYCURSOR);
+#line 4898 "Zend/zend_language_scanner.c"
+yy452:
+ YYDEBUG(452, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(454, *YYCURSOR);
+ YYDEBUG(453, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1258 "Zend/zend_language_scanner.l"
+#line 1256 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_PROPERTY);
return T_OBJECT_OPERATOR;
}
-#line 4913 "Zend/zend_language_scanner.c"
-yy455:
- YYDEBUG(455, *YYCURSOR);
+#line 4909 "Zend/zend_language_scanner.c"
+yy454:
+ YYDEBUG(454, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'I') goto yy462;
- if (yych <= 'N') goto yy151;
- goto yy463;
+ if (yych == 'I') goto yy461;
+ if (yych <= 'N') goto yy150;
+ goto yy462;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy151;
- goto yy462;
+ if (yych <= 'h') goto yy150;
+ goto yy461;
} else {
- if (yych == 'o') goto yy463;
- goto yy151;
+ if (yych == 'o') goto yy462;
+ goto yy150;
}
}
+yy455:
+ YYDEBUG(455, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy456;
+ if (yych != 'b') goto yy150;
yy456:
YYDEBUG(456, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy457;
- if (yych != 'b') goto yy151;
+ if (yych == 'L') goto yy457;
+ if (yych != 'l') goto yy150;
yy457:
YYDEBUG(457, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy458;
- if (yych != 'l') goto yy151;
+ if (yych == 'I') goto yy458;
+ if (yych != 'i') goto yy150;
yy458:
YYDEBUG(458, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy459;
- if (yych != 'i') goto yy151;
+ if (yych == 'C') goto yy459;
+ if (yych != 'c') goto yy150;
yy459:
YYDEBUG(459, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy460;
- if (yych != 'c') goto yy151;
-yy460:
- YYDEBUG(460, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(461, *YYCURSOR);
+ YYDEBUG(460, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1408 "Zend/zend_language_scanner.l"
+#line 1406 "Zend/zend_language_scanner.l"
{
return T_PUBLIC;
}
-#line 4962 "Zend/zend_language_scanner.c"
-yy462:
- YYDEBUG(462, *YYCURSOR);
+#line 4958 "Zend/zend_language_scanner.c"
+yy461:
+ YYDEBUG(461, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'V') {
- if (yych == 'N') goto yy471;
- if (yych <= 'U') goto yy151;
- goto yy472;
+ if (yych == 'N') goto yy470;
+ if (yych <= 'U') goto yy150;
+ goto yy471;
} else {
if (yych <= 'n') {
- if (yych <= 'm') goto yy151;
- goto yy471;
+ if (yych <= 'm') goto yy150;
+ goto yy470;
} else {
- if (yych == 'v') goto yy472;
- goto yy151;
+ if (yych == 'v') goto yy471;
+ goto yy150;
}
}
+yy462:
+ YYDEBUG(462, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy463;
+ if (yych != 't') goto yy150;
yy463:
YYDEBUG(463, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy464;
- if (yych != 't') goto yy151;
+ if (yych == 'E') goto yy464;
+ if (yych != 'e') goto yy150;
yy464:
YYDEBUG(464, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy465;
- if (yych != 'e') goto yy151;
+ if (yych == 'C') goto yy465;
+ if (yych != 'c') goto yy150;
yy465:
YYDEBUG(465, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy466;
- if (yych != 'c') goto yy151;
+ if (yych == 'T') goto yy466;
+ if (yych != 't') goto yy150;
yy466:
YYDEBUG(466, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy467;
- if (yych != 't') goto yy151;
+ if (yych == 'E') goto yy467;
+ if (yych != 'e') goto yy150;
yy467:
YYDEBUG(467, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy468;
- if (yych != 'e') goto yy151;
+ if (yych == 'D') goto yy468;
+ if (yych != 'd') goto yy150;
yy468:
YYDEBUG(468, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy469;
- if (yych != 'd') goto yy151;
-yy469:
- YYDEBUG(469, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(470, *YYCURSOR);
+ YYDEBUG(469, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1404 "Zend/zend_language_scanner.l"
+#line 1402 "Zend/zend_language_scanner.l"
{
return T_PROTECTED;
}
-#line 5021 "Zend/zend_language_scanner.c"
+#line 5017 "Zend/zend_language_scanner.c"
+yy470:
+ YYDEBUG(470, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy476;
+ if (yych == 't') goto yy476;
+ goto yy150;
yy471:
YYDEBUG(471, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy477;
- if (yych == 't') goto yy477;
- goto yy151;
+ if (yych == 'A') goto yy472;
+ if (yych != 'a') goto yy150;
yy472:
YYDEBUG(472, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy473;
- if (yych != 'a') goto yy151;
+ if (yych == 'T') goto yy473;
+ if (yych != 't') goto yy150;
yy473:
YYDEBUG(473, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy474;
- if (yych != 't') goto yy151;
+ if (yych == 'E') goto yy474;
+ if (yych != 'e') goto yy150;
yy474:
YYDEBUG(474, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy475;
- if (yych != 'e') goto yy151;
-yy475:
- YYDEBUG(475, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(476, *YYCURSOR);
+ YYDEBUG(475, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1400 "Zend/zend_language_scanner.l"
+#line 1398 "Zend/zend_language_scanner.l"
{
return T_PRIVATE;
}
-#line 5055 "Zend/zend_language_scanner.c"
-yy477:
- YYDEBUG(477, *YYCURSOR);
+#line 5051 "Zend/zend_language_scanner.c"
+yy476:
+ YYDEBUG(476, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(478, *YYCURSOR);
+ YYDEBUG(477, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1234 "Zend/zend_language_scanner.l"
+#line 1232 "Zend/zend_language_scanner.l"
{
return T_PRINT;
}
-#line 5068 "Zend/zend_language_scanner.c"
+#line 5064 "Zend/zend_language_scanner.c"
+yy478:
+ YYDEBUG(478, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy483;
+ if (yych == 'o') goto yy483;
+ goto yy150;
yy479:
YYDEBUG(479, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy484;
- if (yych == 'o') goto yy484;
- goto yy151;
+ if (yych == 'T') goto yy480;
+ if (yych != 't') goto yy150;
yy480:
YYDEBUG(480, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy481;
- if (yych != 't') goto yy151;
+ if (yych == 'O') goto yy481;
+ if (yych != 'o') goto yy150;
yy481:
YYDEBUG(481, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy482;
- if (yych != 'o') goto yy151;
-yy482:
- YYDEBUG(482, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(483, *YYCURSOR);
+ YYDEBUG(482, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1226 "Zend/zend_language_scanner.l"
+#line 1224 "Zend/zend_language_scanner.l"
{
return T_GOTO;
}
-#line 5097 "Zend/zend_language_scanner.c"
+#line 5093 "Zend/zend_language_scanner.c"
+yy483:
+ YYDEBUG(483, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'B') goto yy484;
+ if (yych != 'b') goto yy150;
yy484:
YYDEBUG(484, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy485;
- if (yych != 'b') goto yy151;
+ if (yych == 'A') goto yy485;
+ if (yych != 'a') goto yy150;
yy485:
YYDEBUG(485, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy486;
- if (yych != 'a') goto yy151;
+ if (yych == 'L') goto yy486;
+ if (yych != 'l') goto yy150;
yy486:
YYDEBUG(486, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy487;
- if (yych != 'l') goto yy151;
-yy487:
- YYDEBUG(487, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(488, *YYCURSOR);
+ YYDEBUG(487, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1372 "Zend/zend_language_scanner.l"
+#line 1370 "Zend/zend_language_scanner.l"
{
return T_GLOBAL;
}
-#line 5125 "Zend/zend_language_scanner.c"
+#line 5121 "Zend/zend_language_scanner.c"
+yy488:
+ YYDEBUG(488, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy496;
+ goto yy157;
yy489:
YYDEBUG(489, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy497;
- goto yy158;
+ goto yy144;
yy490:
YYDEBUG(490, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy145;
+ goto yy142;
yy491:
YYDEBUG(491, *YYCURSOR);
yych = *++YYCURSOR;
- goto yy143;
+ if (yych == 'E') goto yy492;
+ if (yych != 'e') goto yy150;
yy492:
YYDEBUG(492, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy493;
- if (yych != 'e') goto yy151;
+ if (yych == 'A') goto yy493;
+ if (yych != 'a') goto yy150;
yy493:
YYDEBUG(493, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy494;
- if (yych != 'a') goto yy151;
+ if (yych == 'K') goto yy494;
+ if (yych != 'k') goto yy150;
yy494:
YYDEBUG(494, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'K') goto yy495;
- if (yych != 'k') goto yy151;
-yy495:
- YYDEBUG(495, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(496, *YYCURSOR);
+ YYDEBUG(495, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1218 "Zend/zend_language_scanner.l"
+#line 1216 "Zend/zend_language_scanner.l"
{
return T_BREAK;
}
-#line 5166 "Zend/zend_language_scanner.c"
+#line 5162 "Zend/zend_language_scanner.c"
+yy496:
+ YYDEBUG(496, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == '<') goto yy219;
+ goto yy157;
yy497:
YYDEBUG(497, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == '<') goto yy220;
- goto yy158;
+ if (yych == 'A') goto yy504;
+ if (yych == 'a') goto yy504;
+ goto yy150;
yy498:
YYDEBUG(498, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy505;
- if (yych == 'a') goto yy505;
- goto yy151;
+ if (yych == 'I') goto yy499;
+ if (yych != 'i') goto yy150;
yy499:
YYDEBUG(499, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy500;
- if (yych != 'i') goto yy151;
+ if (yych == 'T') goto yy500;
+ if (yych != 't') goto yy150;
yy500:
YYDEBUG(500, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy501;
- if (yych != 't') goto yy151;
+ if (yych == 'C') goto yy501;
+ if (yych != 'c') goto yy150;
yy501:
YYDEBUG(501, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy502;
- if (yych != 'c') goto yy151;
+ if (yych == 'H') goto yy502;
+ if (yych != 'h') goto yy150;
yy502:
YYDEBUG(502, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy503;
- if (yych != 'h') goto yy151;
-yy503:
- YYDEBUG(503, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(504, *YYCURSOR);
+ YYDEBUG(503, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1202 "Zend/zend_language_scanner.l"
+#line 1200 "Zend/zend_language_scanner.l"
{
return T_SWITCH;
}
-#line 5210 "Zend/zend_language_scanner.c"
+#line 5206 "Zend/zend_language_scanner.c"
+yy504:
+ YYDEBUG(504, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy505;
+ if (yych != 't') goto yy150;
yy505:
YYDEBUG(505, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy506;
- if (yych != 't') goto yy151;
+ if (yych == 'I') goto yy506;
+ if (yych != 'i') goto yy150;
yy506:
YYDEBUG(506, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy507;
- if (yych != 'i') goto yy151;
+ if (yych == 'C') goto yy507;
+ if (yych != 'c') goto yy150;
yy507:
YYDEBUG(507, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'C') goto yy508;
- if (yych != 'c') goto yy151;
-yy508:
- YYDEBUG(508, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(509, *YYCURSOR);
+ YYDEBUG(508, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1388 "Zend/zend_language_scanner.l"
+#line 1386 "Zend/zend_language_scanner.l"
{
return T_STATIC;
}
-#line 5238 "Zend/zend_language_scanner.c"
+#line 5234 "Zend/zend_language_scanner.c"
+yy509:
+ YYDEBUG(509, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy520;
+ if (yych == 's') goto yy520;
+ goto yy150;
yy510:
YYDEBUG(510, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy521;
- if (yych == 's') goto yy521;
- goto yy151;
+ if (yych == 'D') goto yy518;
+ if (yych == 'd') goto yy518;
+ goto yy150;
yy511:
YYDEBUG(511, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy519;
- if (yych == 'd') goto yy519;
- goto yy151;
+ if (yych == 'R') goto yy514;
+ if (yych == 'r') goto yy514;
+ goto yy150;
yy512:
YYDEBUG(512, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy515;
- if (yych == 'r') goto yy515;
- goto yy151;
-yy513:
- YYDEBUG(513, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(514, *YYCURSOR);
+ YYDEBUG(513, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1198 "Zend/zend_language_scanner.l"
+#line 1196 "Zend/zend_language_scanner.l"
{
return T_AS;
}
-#line 5269 "Zend/zend_language_scanner.c"
+#line 5265 "Zend/zend_language_scanner.c"
+yy514:
+ YYDEBUG(514, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy515;
+ if (yych != 'a') goto yy150;
yy515:
YYDEBUG(515, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy516;
- if (yych != 'a') goto yy151;
+ if (yych == 'Y') goto yy516;
+ if (yych != 'y') goto yy150;
yy516:
YYDEBUG(516, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy517;
- if (yych != 'y') goto yy151;
-yy517:
- YYDEBUG(517, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(518, *YYCURSOR);
+ YYDEBUG(517, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1424 "Zend/zend_language_scanner.l"
+#line 1422 "Zend/zend_language_scanner.l"
{
return T_ARRAY;
}
-#line 5292 "Zend/zend_language_scanner.c"
-yy519:
- YYDEBUG(519, *YYCURSOR);
+#line 5288 "Zend/zend_language_scanner.c"
+yy518:
+ YYDEBUG(518, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(520, *YYCURSOR);
+ YYDEBUG(519, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1532 "Zend/zend_language_scanner.l"
+#line 1530 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_AND;
}
-#line 5305 "Zend/zend_language_scanner.c"
+#line 5301 "Zend/zend_language_scanner.c"
+yy520:
+ YYDEBUG(520, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy521;
+ if (yych != 't') goto yy150;
yy521:
YYDEBUG(521, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy522;
- if (yych != 't') goto yy151;
+ if (yych == 'R') goto yy522;
+ if (yych != 'r') goto yy150;
yy522:
YYDEBUG(522, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy523;
- if (yych != 'r') goto yy151;
+ if (yych == 'A') goto yy523;
+ if (yych != 'a') goto yy150;
yy523:
YYDEBUG(523, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy524;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy524;
+ if (yych != 'c') goto yy150;
yy524:
YYDEBUG(524, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy525;
- if (yych != 'c') goto yy151;
+ if (yych == 'T') goto yy525;
+ if (yych != 't') goto yy150;
yy525:
YYDEBUG(525, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy526;
- if (yych != 't') goto yy151;
-yy526:
- YYDEBUG(526, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(527, *YYCURSOR);
+ YYDEBUG(526, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1392 "Zend/zend_language_scanner.l"
+#line 1390 "Zend/zend_language_scanner.l"
{
return T_ABSTRACT;
}
-#line 5343 "Zend/zend_language_scanner.c"
+#line 5339 "Zend/zend_language_scanner.c"
+yy527:
+ YYDEBUG(527, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy528;
+ if (yych != 'i') goto yy150;
yy528:
YYDEBUG(528, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy529;
- if (yych != 'i') goto yy151;
+ if (yych == 'L') goto yy529;
+ if (yych != 'l') goto yy150;
yy529:
YYDEBUG(529, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy530;
- if (yych != 'l') goto yy151;
+ if (yych == 'E') goto yy530;
+ if (yych != 'e') goto yy150;
yy530:
YYDEBUG(530, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy531;
- if (yych != 'e') goto yy151;
-yy531:
- YYDEBUG(531, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(532, *YYCURSOR);
+ YYDEBUG(531, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1158 "Zend/zend_language_scanner.l"
+#line 1156 "Zend/zend_language_scanner.l"
{
return T_WHILE;
}
-#line 5371 "Zend/zend_language_scanner.c"
-yy533:
- YYDEBUG(533, *YYCURSOR);
+#line 5367 "Zend/zend_language_scanner.c"
+yy532:
+ YYDEBUG(532, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(534, *YYCURSOR);
+ YYDEBUG(533, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1142 "Zend/zend_language_scanner.l"
+#line 1140 "Zend/zend_language_scanner.l"
{
return T_IF;
}
-#line 5384 "Zend/zend_language_scanner.c"
+#line 5380 "Zend/zend_language_scanner.c"
+yy534:
+ YYDEBUG(534, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'P') goto yy576;
+ if (yych == 'p') goto yy576;
+ goto yy150;
yy535:
YYDEBUG(535, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy577;
- if (yych == 'p') goto yy577;
- goto yy151;
-yy536:
- YYDEBUG(536, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'C') {
- if (yych <= 'B') goto yy151;
- goto yy544;
- } else {
- if (yych <= 'R') goto yy151;
- if (yych <= 'S') goto yy542;
+ if (yych <= 'B') goto yy150;
goto yy543;
+ } else {
+ if (yych <= 'R') goto yy150;
+ if (yych <= 'S') goto yy541;
+ goto yy542;
}
} else {
if (yych <= 'r') {
- if (yych == 'c') goto yy544;
- goto yy151;
+ if (yych == 'c') goto yy543;
+ goto yy150;
} else {
- if (yych <= 's') goto yy542;
- if (yych <= 't') goto yy543;
- goto yy151;
+ if (yych <= 's') goto yy541;
+ if (yych <= 't') goto yy542;
+ goto yy150;
}
}
+yy536:
+ YYDEBUG(536, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy537;
+ if (yych != 's') goto yy150;
yy537:
YYDEBUG(537, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy538;
- if (yych != 's') goto yy151;
+ if (yych == 'E') goto yy538;
+ if (yych != 'e') goto yy150;
yy538:
YYDEBUG(538, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy539;
- if (yych != 'e') goto yy151;
+ if (yych == 'T') goto yy539;
+ if (yych != 't') goto yy150;
yy539:
YYDEBUG(539, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy540;
- if (yych != 't') goto yy151;
-yy540:
- YYDEBUG(540, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(541, *YYCURSOR);
+ YYDEBUG(540, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1376 "Zend/zend_language_scanner.l"
+#line 1374 "Zend/zend_language_scanner.l"
{
return T_ISSET;
}
-#line 5440 "Zend/zend_language_scanner.c"
+#line 5436 "Zend/zend_language_scanner.c"
+yy541:
+ YYDEBUG(541, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy562;
+ if (yych == 't') goto yy562;
+ goto yy150;
yy542:
YYDEBUG(542, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy563;
- if (yych == 't') goto yy563;
- goto yy151;
+ if (yych == 'E') goto yy555;
+ if (yych == 'e') goto yy555;
+ goto yy150;
yy543:
YYDEBUG(543, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy556;
- if (yych == 'e') goto yy556;
- goto yy151;
+ if (yych == 'L') goto yy544;
+ if (yych != 'l') goto yy150;
yy544:
YYDEBUG(544, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy545;
- if (yych != 'l') goto yy151;
+ if (yych == 'U') goto yy545;
+ if (yych != 'u') goto yy150;
yy545:
YYDEBUG(545, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy546;
- if (yych != 'u') goto yy151;
+ if (yych == 'D') goto yy546;
+ if (yych != 'd') goto yy150;
yy546:
YYDEBUG(546, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy547;
- if (yych != 'd') goto yy151;
+ if (yych == 'E') goto yy547;
+ if (yych != 'e') goto yy150;
yy547:
YYDEBUG(547, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy548;
- if (yych != 'e') goto yy151;
-yy548:
- YYDEBUG(548, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy150;
+ if (yych >= '0') goto yy149;
} else {
- if (yych <= '@') goto yy549;
- if (yych <= 'Z') goto yy150;
+ if (yych <= '@') goto yy548;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy550;
+ if (yych <= '_') goto yy549;
} else {
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy549:
- YYDEBUG(549, *YYCURSOR);
+yy548:
+ YYDEBUG(548, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1344 "Zend/zend_language_scanner.l"
+#line 1342 "Zend/zend_language_scanner.l"
{
return T_INCLUDE;
}
-#line 5498 "Zend/zend_language_scanner.c"
+#line 5494 "Zend/zend_language_scanner.c"
+yy549:
+ YYDEBUG(549, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy550;
+ if (yych != 'o') goto yy150;
yy550:
YYDEBUG(550, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy551;
- if (yych != 'o') goto yy151;
+ if (yych == 'N') goto yy551;
+ if (yych != 'n') goto yy150;
yy551:
YYDEBUG(551, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy552;
- if (yych != 'n') goto yy151;
+ if (yych == 'C') goto yy552;
+ if (yych != 'c') goto yy150;
yy552:
YYDEBUG(552, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy553;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy553;
+ if (yych != 'e') goto yy150;
yy553:
YYDEBUG(553, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy554;
- if (yych != 'e') goto yy151;
-yy554:
- YYDEBUG(554, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(555, *YYCURSOR);
+ YYDEBUG(554, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1348 "Zend/zend_language_scanner.l"
+#line 1346 "Zend/zend_language_scanner.l"
{
return T_INCLUDE_ONCE;
}
-#line 5531 "Zend/zend_language_scanner.c"
+#line 5527 "Zend/zend_language_scanner.c"
+yy555:
+ YYDEBUG(555, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy556;
+ if (yych != 'r') goto yy150;
yy556:
YYDEBUG(556, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy557;
- if (yych != 'r') goto yy151;
+ if (yych == 'F') goto yy557;
+ if (yych != 'f') goto yy150;
yy557:
YYDEBUG(557, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy558;
- if (yych != 'f') goto yy151;
+ if (yych == 'A') goto yy558;
+ if (yych != 'a') goto yy150;
yy558:
YYDEBUG(558, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy559;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy559;
+ if (yych != 'c') goto yy150;
yy559:
YYDEBUG(559, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy560;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy560;
+ if (yych != 'e') goto yy150;
yy560:
YYDEBUG(560, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy561;
- if (yych != 'e') goto yy151;
-yy561:
- YYDEBUG(561, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(562, *YYCURSOR);
+ YYDEBUG(561, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1242 "Zend/zend_language_scanner.l"
+#line 1240 "Zend/zend_language_scanner.l"
{
return T_INTERFACE;
}
-#line 5569 "Zend/zend_language_scanner.c"
-yy563:
- YYDEBUG(563, *YYCURSOR);
+#line 5565 "Zend/zend_language_scanner.c"
+yy562:
+ YYDEBUG(562, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'E') {
- if (yych == 'A') goto yy564;
- if (yych <= 'D') goto yy151;
- goto yy565;
+ if (yych == 'A') goto yy563;
+ if (yych <= 'D') goto yy150;
+ goto yy564;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy151;
+ if (yych <= '`') goto yy150;
} else {
- if (yych == 'e') goto yy565;
- goto yy151;
+ if (yych == 'e') goto yy564;
+ goto yy150;
}
}
+yy563:
+ YYDEBUG(563, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy570;
+ if (yych == 'n') goto yy570;
+ goto yy150;
yy564:
YYDEBUG(564, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy571;
- if (yych == 'n') goto yy571;
- goto yy151;
+ if (yych == 'A') goto yy565;
+ if (yych != 'a') goto yy150;
yy565:
YYDEBUG(565, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy566;
- if (yych != 'a') goto yy151;
+ if (yych == 'D') goto yy566;
+ if (yych != 'd') goto yy150;
yy566:
YYDEBUG(566, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy567;
- if (yych != 'd') goto yy151;
+ if (yych == 'O') goto yy567;
+ if (yych != 'o') goto yy150;
yy567:
YYDEBUG(567, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy568;
- if (yych != 'o') goto yy151;
+ if (yych == 'F') goto yy568;
+ if (yych != 'f') goto yy150;
yy568:
YYDEBUG(568, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy569;
- if (yych != 'f') goto yy151;
-yy569:
- YYDEBUG(569, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(570, *YYCURSOR);
+ YYDEBUG(569, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1368 "Zend/zend_language_scanner.l"
+#line 1366 "Zend/zend_language_scanner.l"
{
return T_INSTEADOF;
}
-#line 5623 "Zend/zend_language_scanner.c"
+#line 5619 "Zend/zend_language_scanner.c"
+yy570:
+ YYDEBUG(570, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy571;
+ if (yych != 'c') goto yy150;
yy571:
YYDEBUG(571, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy572;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy572;
+ if (yych != 'e') goto yy150;
yy572:
YYDEBUG(572, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy573;
- if (yych != 'e') goto yy151;
+ if (yych == 'O') goto yy573;
+ if (yych != 'o') goto yy150;
yy573:
YYDEBUG(573, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy574;
- if (yych != 'o') goto yy151;
+ if (yych == 'F') goto yy574;
+ if (yych != 'f') goto yy150;
yy574:
YYDEBUG(574, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy575;
- if (yych != 'f') goto yy151;
-yy575:
- YYDEBUG(575, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(576, *YYCURSOR);
+ YYDEBUG(575, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1194 "Zend/zend_language_scanner.l"
+#line 1192 "Zend/zend_language_scanner.l"
{
return T_INSTANCEOF;
}
-#line 5656 "Zend/zend_language_scanner.c"
+#line 5652 "Zend/zend_language_scanner.c"
+yy576:
+ YYDEBUG(576, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy577;
+ if (yych != 'l') goto yy150;
yy577:
YYDEBUG(577, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy578;
- if (yych != 'l') goto yy151;
+ if (yych == 'E') goto yy578;
+ if (yych != 'e') goto yy150;
yy578:
YYDEBUG(578, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy579;
- if (yych != 'e') goto yy151;
+ if (yych == 'M') goto yy579;
+ if (yych != 'm') goto yy150;
yy579:
YYDEBUG(579, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'M') goto yy580;
- if (yych != 'm') goto yy151;
+ if (yych == 'E') goto yy580;
+ if (yych != 'e') goto yy150;
yy580:
YYDEBUG(580, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy581;
- if (yych != 'e') goto yy151;
+ if (yych == 'N') goto yy581;
+ if (yych != 'n') goto yy150;
yy581:
YYDEBUG(581, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy582;
- if (yych != 'n') goto yy151;
+ if (yych == 'T') goto yy582;
+ if (yych != 't') goto yy150;
yy582:
YYDEBUG(582, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy583;
- if (yych != 't') goto yy151;
+ if (yych == 'S') goto yy583;
+ if (yych != 's') goto yy150;
yy583:
YYDEBUG(583, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy584;
- if (yych != 's') goto yy151;
-yy584:
- YYDEBUG(584, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(585, *YYCURSOR);
+ YYDEBUG(584, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1254 "Zend/zend_language_scanner.l"
+#line 1252 "Zend/zend_language_scanner.l"
{
return T_IMPLEMENTS;
}
-#line 5704 "Zend/zend_language_scanner.c"
+#line 5700 "Zend/zend_language_scanner.c"
+yy585:
+ YYDEBUG(585, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy593;
+ if (yych == 'r') goto yy593;
+ goto yy150;
yy586:
YYDEBUG(586, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy594;
- if (yych == 'r') goto yy594;
- goto yy151;
-yy587:
- YYDEBUG(587, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'Y') {
- if (yych == 'A') goto yy590;
- if (yych <= 'X') goto yy151;
+ if (yych == 'A') goto yy589;
+ if (yych <= 'X') goto yy150;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy151;
- goto yy590;
+ if (yych <= '`') goto yy150;
+ goto yy589;
} else {
- if (yych != 'y') goto yy151;
+ if (yych != 'y') goto yy150;
}
}
- YYDEBUG(588, *YYCURSOR);
+ YYDEBUG(587, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(589, *YYCURSOR);
+ YYDEBUG(588, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1126 "Zend/zend_language_scanner.l"
+#line 1124 "Zend/zend_language_scanner.l"
{
return T_TRY;
}
-#line 5736 "Zend/zend_language_scanner.c"
+#line 5732 "Zend/zend_language_scanner.c"
+yy589:
+ YYDEBUG(589, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy590;
+ if (yych != 'i') goto yy150;
yy590:
YYDEBUG(590, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy591;
- if (yych != 'i') goto yy151;
+ if (yych == 'T') goto yy591;
+ if (yych != 't') goto yy150;
yy591:
YYDEBUG(591, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy592;
- if (yych != 't') goto yy151;
-yy592:
- YYDEBUG(592, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(593, *YYCURSOR);
+ YYDEBUG(592, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1246 "Zend/zend_language_scanner.l"
+#line 1244 "Zend/zend_language_scanner.l"
{
return T_TRAIT;
}
-#line 5759 "Zend/zend_language_scanner.c"
+#line 5755 "Zend/zend_language_scanner.c"
+yy593:
+ YYDEBUG(593, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy594;
+ if (yych != 'o') goto yy150;
yy594:
YYDEBUG(594, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy595;
- if (yych != 'o') goto yy151;
+ if (yych == 'W') goto yy595;
+ if (yych != 'w') goto yy150;
yy595:
YYDEBUG(595, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'W') goto yy596;
- if (yych != 'w') goto yy151;
-yy596:
- YYDEBUG(596, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(597, *YYCURSOR);
+ YYDEBUG(596, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1138 "Zend/zend_language_scanner.l"
+#line 1136 "Zend/zend_language_scanner.l"
{
return T_THROW;
}
-#line 5782 "Zend/zend_language_scanner.c"
+#line 5778 "Zend/zend_language_scanner.c"
+yy597:
+ YYDEBUG(597, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy598;
+ if (yych != 'e') goto yy150;
yy598:
YYDEBUG(598, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy599;
- if (yych != 'e') goto yy151;
+ if (yych == 'L') goto yy599;
+ if (yych != 'l') goto yy150;
yy599:
YYDEBUG(599, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy600;
- if (yych != 'l') goto yy151;
+ if (yych == 'D') goto yy600;
+ if (yych != 'd') goto yy150;
yy600:
YYDEBUG(600, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'D') goto yy601;
- if (yych != 'd') goto yy151;
-yy601:
- YYDEBUG(601, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(602, *YYCURSOR);
+ YYDEBUG(601, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1122 "Zend/zend_language_scanner.l"
+#line 1120 "Zend/zend_language_scanner.l"
{
return T_YIELD;
}
-#line 5810 "Zend/zend_language_scanner.c"
-yy603:
- YYDEBUG(603, *YYCURSOR);
+#line 5806 "Zend/zend_language_scanner.c"
+yy602:
+ YYDEBUG(602, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'Q') goto yy605;
- if (yych <= 'S') goto yy151;
+ if (yych == 'Q') goto yy604;
+ if (yych <= 'S') goto yy150;
} else {
if (yych <= 'q') {
- if (yych <= 'p') goto yy151;
- goto yy605;
+ if (yych <= 'p') goto yy150;
+ goto yy604;
} else {
- if (yych != 't') goto yy151;
+ if (yych != 't') goto yy150;
}
}
+ YYDEBUG(603, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'U') goto yy616;
+ if (yych == 'u') goto yy616;
+ goto yy150;
+yy604:
YYDEBUG(604, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy617;
- if (yych == 'u') goto yy617;
- goto yy151;
+ if (yych == 'U') goto yy605;
+ if (yych != 'u') goto yy150;
yy605:
YYDEBUG(605, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy606;
- if (yych != 'u') goto yy151;
+ if (yych == 'I') goto yy606;
+ if (yych != 'i') goto yy150;
yy606:
YYDEBUG(606, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy607;
- if (yych != 'i') goto yy151;
+ if (yych == 'R') goto yy607;
+ if (yych != 'r') goto yy150;
yy607:
YYDEBUG(607, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy608;
- if (yych != 'r') goto yy151;
+ if (yych == 'E') goto yy608;
+ if (yych != 'e') goto yy150;
yy608:
YYDEBUG(608, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy609;
- if (yych != 'e') goto yy151;
-yy609:
- YYDEBUG(609, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy150;
+ if (yych >= '0') goto yy149;
} else {
- if (yych <= '@') goto yy610;
- if (yych <= 'Z') goto yy150;
+ if (yych <= '@') goto yy609;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy611;
+ if (yych <= '_') goto yy610;
} else {
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy610:
- YYDEBUG(610, *YYCURSOR);
+yy609:
+ YYDEBUG(609, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1352 "Zend/zend_language_scanner.l"
+#line 1350 "Zend/zend_language_scanner.l"
{
return T_REQUIRE;
}
-#line 5875 "Zend/zend_language_scanner.c"
+#line 5871 "Zend/zend_language_scanner.c"
+yy610:
+ YYDEBUG(610, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy611;
+ if (yych != 'o') goto yy150;
yy611:
YYDEBUG(611, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy612;
- if (yych != 'o') goto yy151;
+ if (yych == 'N') goto yy612;
+ if (yych != 'n') goto yy150;
yy612:
YYDEBUG(612, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy613;
- if (yych != 'n') goto yy151;
+ if (yych == 'C') goto yy613;
+ if (yych != 'c') goto yy150;
yy613:
YYDEBUG(613, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy614;
- if (yych != 'c') goto yy151;
+ if (yych == 'E') goto yy614;
+ if (yych != 'e') goto yy150;
yy614:
YYDEBUG(614, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy615;
- if (yych != 'e') goto yy151;
-yy615:
- YYDEBUG(615, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(616, *YYCURSOR);
+ YYDEBUG(615, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1356 "Zend/zend_language_scanner.l"
+#line 1354 "Zend/zend_language_scanner.l"
{
return T_REQUIRE_ONCE;
}
-#line 5908 "Zend/zend_language_scanner.c"
+#line 5904 "Zend/zend_language_scanner.c"
+yy616:
+ YYDEBUG(616, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy617;
+ if (yych != 'r') goto yy150;
yy617:
YYDEBUG(617, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy618;
- if (yych != 'r') goto yy151;
+ if (yych == 'N') goto yy618;
+ if (yych != 'n') goto yy150;
yy618:
YYDEBUG(618, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'N') goto yy619;
- if (yych != 'n') goto yy151;
-yy619:
- YYDEBUG(619, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(620, *YYCURSOR);
+ YYDEBUG(619, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1118 "Zend/zend_language_scanner.l"
+#line 1116 "Zend/zend_language_scanner.l"
{
return T_RETURN;
}
-#line 5931 "Zend/zend_language_scanner.c"
-yy621:
- YYDEBUG(621, *YYCURSOR);
+#line 5927 "Zend/zend_language_scanner.c"
+yy620:
+ YYDEBUG(620, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'T') {
if (yych <= 'L') {
- if (yych <= 'K') goto yy151;
- goto yy644;
+ if (yych <= 'K') goto yy150;
+ goto yy643;
} else {
- if (yych <= 'R') goto yy151;
- if (yych <= 'S') goto yy643;
- goto yy642;
+ if (yych <= 'R') goto yy150;
+ if (yych <= 'S') goto yy642;
+ goto yy641;
}
} else {
if (yych <= 'r') {
- if (yych == 'l') goto yy644;
- goto yy151;
+ if (yych == 'l') goto yy643;
+ goto yy150;
} else {
- if (yych <= 's') goto yy643;
- if (yych <= 't') goto yy642;
- goto yy151;
+ if (yych <= 's') goto yy642;
+ if (yych <= 't') goto yy641;
+ goto yy150;
}
}
-yy622:
- YYDEBUG(622, *YYCURSOR);
+yy621:
+ YYDEBUG(621, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'O') {
- if (yych == 'A') goto yy634;
- if (yych <= 'N') goto yy151;
- goto yy635;
+ if (yych == 'A') goto yy633;
+ if (yych <= 'N') goto yy150;
+ goto yy634;
} else {
if (yych <= 'a') {
- if (yych <= '`') goto yy151;
- goto yy634;
+ if (yych <= '`') goto yy150;
+ goto yy633;
} else {
- if (yych == 'o') goto yy635;
- goto yy151;
+ if (yych == 'o') goto yy634;
+ goto yy150;
}
}
+yy622:
+ YYDEBUG(622, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy623;
+ if (yych != 'n') goto yy150;
yy623:
YYDEBUG(623, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy624;
- if (yych != 'n') goto yy151;
-yy624:
- YYDEBUG(624, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych <= 'R') goto yy151;
- if (yych >= 'T') goto yy626;
+ if (yych <= 'R') goto yy150;
+ if (yych >= 'T') goto yy625;
} else {
- if (yych <= 'r') goto yy151;
- if (yych <= 's') goto yy625;
- if (yych <= 't') goto yy626;
- goto yy151;
+ if (yych <= 'r') goto yy150;
+ if (yych <= 's') goto yy624;
+ if (yych <= 't') goto yy625;
+ goto yy150;
}
+yy624:
+ YYDEBUG(624, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy631;
+ if (yych == 't') goto yy631;
+ goto yy150;
yy625:
YYDEBUG(625, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy632;
- if (yych == 't') goto yy632;
- goto yy151;
+ if (yych == 'I') goto yy626;
+ if (yych != 'i') goto yy150;
yy626:
YYDEBUG(626, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy627;
- if (yych != 'i') goto yy151;
+ if (yych == 'N') goto yy627;
+ if (yych != 'n') goto yy150;
yy627:
YYDEBUG(627, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy628;
- if (yych != 'n') goto yy151;
+ if (yych == 'U') goto yy628;
+ if (yych != 'u') goto yy150;
yy628:
YYDEBUG(628, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy629;
- if (yych != 'u') goto yy151;
+ if (yych == 'E') goto yy629;
+ if (yych != 'e') goto yy150;
yy629:
YYDEBUG(629, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy630;
- if (yych != 'e') goto yy151;
-yy630:
- YYDEBUG(630, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(631, *YYCURSOR);
+ YYDEBUG(630, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1222 "Zend/zend_language_scanner.l"
+#line 1220 "Zend/zend_language_scanner.l"
{
return T_CONTINUE;
}
-#line 6025 "Zend/zend_language_scanner.c"
-yy632:
- YYDEBUG(632, *YYCURSOR);
+#line 6021 "Zend/zend_language_scanner.c"
+yy631:
+ YYDEBUG(631, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(633, *YYCURSOR);
+ YYDEBUG(632, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1114 "Zend/zend_language_scanner.l"
+#line 1112 "Zend/zend_language_scanner.l"
{
return T_CONST;
}
-#line 6038 "Zend/zend_language_scanner.c"
+#line 6034 "Zend/zend_language_scanner.c"
+yy633:
+ YYDEBUG(633, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy638;
+ if (yych == 's') goto yy638;
+ goto yy150;
yy634:
YYDEBUG(634, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy639;
- if (yych == 's') goto yy639;
- goto yy151;
+ if (yych == 'N') goto yy635;
+ if (yych != 'n') goto yy150;
yy635:
YYDEBUG(635, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy636;
- if (yych != 'n') goto yy151;
+ if (yych == 'E') goto yy636;
+ if (yych != 'e') goto yy150;
yy636:
YYDEBUG(636, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy637;
- if (yych != 'e') goto yy151;
-yy637:
- YYDEBUG(637, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(638, *YYCURSOR);
+ YYDEBUG(637, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1304 "Zend/zend_language_scanner.l"
+#line 1302 "Zend/zend_language_scanner.l"
{
return T_CLONE;
}
-#line 6067 "Zend/zend_language_scanner.c"
+#line 6063 "Zend/zend_language_scanner.c"
+yy638:
+ YYDEBUG(638, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'S') goto yy639;
+ if (yych != 's') goto yy150;
yy639:
YYDEBUG(639, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy640;
- if (yych != 's') goto yy151;
-yy640:
- YYDEBUG(640, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(641, *YYCURSOR);
+ YYDEBUG(640, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1238 "Zend/zend_language_scanner.l"
+#line 1236 "Zend/zend_language_scanner.l"
{
return T_CLASS;
}
-#line 6085 "Zend/zend_language_scanner.c"
+#line 6081 "Zend/zend_language_scanner.c"
+yy641:
+ YYDEBUG(641, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy652;
+ if (yych == 'c') goto yy652;
+ goto yy150;
yy642:
YYDEBUG(642, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy653;
- if (yych == 'c') goto yy653;
- goto yy151;
+ if (yych == 'E') goto yy650;
+ if (yych == 'e') goto yy650;
+ goto yy150;
yy643:
YYDEBUG(643, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy651;
- if (yych == 'e') goto yy651;
- goto yy151;
+ if (yych == 'L') goto yy644;
+ if (yych != 'l') goto yy150;
yy644:
YYDEBUG(644, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy645;
- if (yych != 'l') goto yy151;
+ if (yych == 'A') goto yy645;
+ if (yych != 'a') goto yy150;
yy645:
YYDEBUG(645, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy646;
- if (yych != 'a') goto yy151;
+ if (yych == 'B') goto yy646;
+ if (yych != 'b') goto yy150;
yy646:
YYDEBUG(646, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'B') goto yy647;
- if (yych != 'b') goto yy151;
+ if (yych == 'L') goto yy647;
+ if (yych != 'l') goto yy150;
yy647:
YYDEBUG(647, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy648;
- if (yych != 'l') goto yy151;
+ if (yych == 'E') goto yy648;
+ if (yych != 'e') goto yy150;
yy648:
YYDEBUG(648, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy649;
- if (yych != 'e') goto yy151;
-yy649:
- YYDEBUG(649, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(650, *YYCURSOR);
+ YYDEBUG(649, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1428 "Zend/zend_language_scanner.l"
+#line 1426 "Zend/zend_language_scanner.l"
{
return T_CALLABLE;
}
-#line 6135 "Zend/zend_language_scanner.c"
-yy651:
- YYDEBUG(651, *YYCURSOR);
+#line 6131 "Zend/zend_language_scanner.c"
+yy650:
+ YYDEBUG(650, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(652, *YYCURSOR);
+ YYDEBUG(651, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1210 "Zend/zend_language_scanner.l"
+#line 1208 "Zend/zend_language_scanner.l"
{
return T_CASE;
}
-#line 6148 "Zend/zend_language_scanner.c"
+#line 6144 "Zend/zend_language_scanner.c"
+yy652:
+ YYDEBUG(652, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy653;
+ if (yych != 'h') goto yy150;
yy653:
YYDEBUG(653, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy654;
- if (yych != 'h') goto yy151;
-yy654:
- YYDEBUG(654, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(655, *YYCURSOR);
+ YYDEBUG(654, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1130 "Zend/zend_language_scanner.l"
+#line 1128 "Zend/zend_language_scanner.l"
{
return T_CATCH;
}
-#line 6166 "Zend/zend_language_scanner.c"
+#line 6162 "Zend/zend_language_scanner.c"
+yy655:
+ YYDEBUG(655, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'N') goto yy672;
+ if (yych == 'n') goto yy672;
+ goto yy150;
yy656:
YYDEBUG(656, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy673;
- if (yych == 'n') goto yy673;
- goto yy151;
+ if (yych == 'R') goto yy665;
+ if (yych == 'r') goto yy665;
+ goto yy150;
yy657:
YYDEBUG(657, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy666;
- if (yych == 'r') goto yy666;
- goto yy151;
+ if (yych == 'N') goto yy658;
+ if (yych != 'n') goto yy150;
yy658:
YYDEBUG(658, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy659;
- if (yych != 'n') goto yy151;
+ if (yych == 'C') goto yy659;
+ if (yych != 'c') goto yy150;
yy659:
YYDEBUG(659, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy660;
- if (yych != 'c') goto yy151;
+ if (yych == 'T') goto yy660;
+ if (yych != 't') goto yy150;
yy660:
YYDEBUG(660, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy661;
- if (yych != 't') goto yy151;
+ if (yych == 'I') goto yy661;
+ if (yych != 'i') goto yy150;
yy661:
YYDEBUG(661, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy662;
- if (yych != 'i') goto yy151;
+ if (yych == 'O') goto yy662;
+ if (yych != 'o') goto yy150;
yy662:
YYDEBUG(662, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy663;
- if (yych != 'o') goto yy151;
+ if (yych == 'N') goto yy663;
+ if (yych != 'n') goto yy150;
yy663:
YYDEBUG(663, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'N') goto yy664;
- if (yych != 'n') goto yy151;
-yy664:
- YYDEBUG(664, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(665, *YYCURSOR);
+ YYDEBUG(664, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1110 "Zend/zend_language_scanner.l"
+#line 1108 "Zend/zend_language_scanner.l"
{
return T_FUNCTION;
}
-#line 6221 "Zend/zend_language_scanner.c"
-yy666:
- YYDEBUG(666, *YYCURSOR);
+#line 6217 "Zend/zend_language_scanner.c"
+yy665:
+ YYDEBUG(665, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy667;
- if (yych <= '9') goto yy150;
+ if (yych <= '/') goto yy666;
+ if (yych <= '9') goto yy149;
} else {
- if (yych == 'E') goto yy668;
- if (yych <= 'Z') goto yy150;
+ if (yych == 'E') goto yy667;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= 'd') {
- if (yych != '`') goto yy150;
+ if (yych != '`') goto yy149;
} else {
- if (yych <= 'e') goto yy668;
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'e') goto yy667;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy667:
- YYDEBUG(667, *YYCURSOR);
+yy666:
+ YYDEBUG(666, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1170 "Zend/zend_language_scanner.l"
+#line 1168 "Zend/zend_language_scanner.l"
{
return T_FOR;
}
-#line 6249 "Zend/zend_language_scanner.c"
+#line 6245 "Zend/zend_language_scanner.c"
+yy667:
+ YYDEBUG(667, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy668;
+ if (yych != 'a') goto yy150;
yy668:
YYDEBUG(668, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy669;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy669;
+ if (yych != 'c') goto yy150;
yy669:
YYDEBUG(669, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy670;
- if (yych != 'c') goto yy151;
+ if (yych == 'H') goto yy670;
+ if (yych != 'h') goto yy150;
yy670:
YYDEBUG(670, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy671;
- if (yych != 'h') goto yy151;
-yy671:
- YYDEBUG(671, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(672, *YYCURSOR);
+ YYDEBUG(671, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1178 "Zend/zend_language_scanner.l"
+#line 1176 "Zend/zend_language_scanner.l"
{
return T_FOREACH;
}
-#line 6277 "Zend/zend_language_scanner.c"
+#line 6273 "Zend/zend_language_scanner.c"
+yy672:
+ YYDEBUG(672, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy673;
+ if (yych != 'a') goto yy150;
yy673:
YYDEBUG(673, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy674;
- if (yych != 'a') goto yy151;
+ if (yych == 'L') goto yy674;
+ if (yych != 'l') goto yy150;
yy674:
YYDEBUG(674, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy675;
- if (yych != 'l') goto yy151;
-yy675:
- YYDEBUG(675, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy676;
- if (yych <= '9') goto yy150;
+ if (yych <= '/') goto yy675;
+ if (yych <= '9') goto yy149;
} else {
- if (yych == 'L') goto yy677;
- if (yych <= 'Z') goto yy150;
+ if (yych == 'L') goto yy676;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= 'k') {
- if (yych != '`') goto yy150;
+ if (yych != '`') goto yy149;
} else {
- if (yych <= 'l') goto yy677;
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'l') goto yy676;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy676:
- YYDEBUG(676, *YYCURSOR);
+yy675:
+ YYDEBUG(675, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1396 "Zend/zend_language_scanner.l"
+#line 1394 "Zend/zend_language_scanner.l"
{
return T_FINAL;
}
-#line 6315 "Zend/zend_language_scanner.c"
+#line 6311 "Zend/zend_language_scanner.c"
+yy676:
+ YYDEBUG(676, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'Y') goto yy677;
+ if (yych != 'y') goto yy150;
yy677:
YYDEBUG(677, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy678;
- if (yych != 'y') goto yy151;
-yy678:
- YYDEBUG(678, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(679, *YYCURSOR);
+ YYDEBUG(678, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1134 "Zend/zend_language_scanner.l"
+#line 1132 "Zend/zend_language_scanner.l"
{
return T_FINALLY;
}
-#line 6333 "Zend/zend_language_scanner.c"
-yy680:
- YYDEBUG(680, *YYCURSOR);
+#line 6329 "Zend/zend_language_scanner.c"
+yy679:
+ YYDEBUG(679, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= 'F') {
- if (yych == 'C') goto yy686;
- if (yych <= 'E') goto yy151;
- goto yy687;
+ if (yych == 'C') goto yy685;
+ if (yych <= 'E') goto yy150;
+ goto yy686;
} else {
if (yych <= 'c') {
- if (yych <= 'b') goto yy151;
- goto yy686;
+ if (yych <= 'b') goto yy150;
+ goto yy685;
} else {
- if (yych == 'f') goto yy687;
- goto yy151;
+ if (yych == 'f') goto yy686;
+ goto yy150;
}
}
+yy680:
+ YYDEBUG(680, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy683;
+ if (yych == 'e') goto yy683;
+ goto yy150;
yy681:
YYDEBUG(681, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy684;
- if (yych == 'e') goto yy684;
- goto yy151;
-yy682:
- YYDEBUG(682, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(683, *YYCURSOR);
+ YYDEBUG(682, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1166 "Zend/zend_language_scanner.l"
+#line 1164 "Zend/zend_language_scanner.l"
{
return T_DO;
}
-#line 6368 "Zend/zend_language_scanner.c"
-yy684:
- YYDEBUG(684, *YYCURSOR);
+#line 6364 "Zend/zend_language_scanner.c"
+yy683:
+ YYDEBUG(683, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(685, *YYCURSOR);
+ YYDEBUG(684, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1106 "Zend/zend_language_scanner.l"
+#line 1104 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 6381 "Zend/zend_language_scanner.c"
+#line 6377 "Zend/zend_language_scanner.c"
+yy685:
+ YYDEBUG(685, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy692;
+ if (yych == 'l') goto yy692;
+ goto yy150;
yy686:
YYDEBUG(686, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy693;
- if (yych == 'l') goto yy693;
- goto yy151;
+ if (yych == 'A') goto yy687;
+ if (yych != 'a') goto yy150;
yy687:
YYDEBUG(687, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy688;
- if (yych != 'a') goto yy151;
+ if (yych == 'U') goto yy688;
+ if (yych != 'u') goto yy150;
yy688:
YYDEBUG(688, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'U') goto yy689;
- if (yych != 'u') goto yy151;
+ if (yych == 'L') goto yy689;
+ if (yych != 'l') goto yy150;
yy689:
YYDEBUG(689, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy690;
- if (yych != 'l') goto yy151;
+ if (yych == 'T') goto yy690;
+ if (yych != 't') goto yy150;
yy690:
YYDEBUG(690, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'T') goto yy691;
- if (yych != 't') goto yy151;
-yy691:
- YYDEBUG(691, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(692, *YYCURSOR);
+ YYDEBUG(691, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1214 "Zend/zend_language_scanner.l"
+#line 1212 "Zend/zend_language_scanner.l"
{
return T_DEFAULT;
}
-#line 6420 "Zend/zend_language_scanner.c"
+#line 6416 "Zend/zend_language_scanner.c"
+yy692:
+ YYDEBUG(692, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy693;
+ if (yych != 'a') goto yy150;
yy693:
YYDEBUG(693, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy694;
- if (yych != 'a') goto yy151;
+ if (yych == 'R') goto yy694;
+ if (yych != 'r') goto yy150;
yy694:
YYDEBUG(694, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy695;
- if (yych != 'r') goto yy151;
+ if (yych == 'E') goto yy695;
+ if (yych != 'e') goto yy150;
yy695:
YYDEBUG(695, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy696;
- if (yych != 'e') goto yy151;
-yy696:
- YYDEBUG(696, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(697, *YYCURSOR);
+ YYDEBUG(696, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1186 "Zend/zend_language_scanner.l"
+#line 1184 "Zend/zend_language_scanner.l"
{
return T_DECLARE;
}
-#line 6448 "Zend/zend_language_scanner.c"
+#line 6444 "Zend/zend_language_scanner.c"
+yy697:
+ YYDEBUG(697, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'H') goto yy759;
+ if (yych == 'h') goto yy759;
+ goto yy150;
yy698:
YYDEBUG(698, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy760;
- if (yych == 'h') goto yy760;
- goto yy151;
+ if (yych == 'S') goto yy753;
+ if (yych == 's') goto yy753;
+ goto yy150;
yy699:
YYDEBUG(699, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'S') goto yy754;
- if (yych == 's') goto yy754;
- goto yy151;
+ if (yych == 'P') goto yy749;
+ if (yych == 'p') goto yy749;
+ goto yy150;
yy700:
YYDEBUG(700, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'P') goto yy750;
- if (yych == 'p') goto yy750;
- goto yy151;
+ if (yych == 'D') goto yy715;
+ if (yych == 'd') goto yy715;
+ goto yy150;
yy701:
YYDEBUG(701, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy716;
- if (yych == 'd') goto yy716;
- goto yy151;
+ if (yych == 'A') goto yy712;
+ if (yych == 'a') goto yy712;
+ goto yy150;
yy702:
YYDEBUG(702, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy713;
- if (yych == 'a') goto yy713;
- goto yy151;
-yy703:
- YYDEBUG(703, *YYCURSOR);
- yych = *++YYCURSOR;
if (yych <= 'T') {
- if (yych == 'I') goto yy704;
- if (yych <= 'S') goto yy151;
- goto yy705;
+ if (yych == 'I') goto yy703;
+ if (yych <= 'S') goto yy150;
+ goto yy704;
} else {
if (yych <= 'i') {
- if (yych <= 'h') goto yy151;
+ if (yych <= 'h') goto yy150;
} else {
- if (yych == 't') goto yy705;
- goto yy151;
+ if (yych == 't') goto yy704;
+ goto yy150;
}
}
+yy703:
+ YYDEBUG(703, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy710;
+ if (yych == 't') goto yy710;
+ goto yy150;
yy704:
YYDEBUG(704, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy711;
- if (yych == 't') goto yy711;
- goto yy151;
+ if (yych == 'E') goto yy705;
+ if (yych != 'e') goto yy150;
yy705:
YYDEBUG(705, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy706;
- if (yych != 'e') goto yy151;
+ if (yych == 'N') goto yy706;
+ if (yych != 'n') goto yy150;
yy706:
YYDEBUG(706, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'N') goto yy707;
- if (yych != 'n') goto yy151;
+ if (yych == 'D') goto yy707;
+ if (yych != 'd') goto yy150;
yy707:
YYDEBUG(707, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'D') goto yy708;
- if (yych != 'd') goto yy151;
+ if (yych == 'S') goto yy708;
+ if (yych != 's') goto yy150;
yy708:
YYDEBUG(708, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'S') goto yy709;
- if (yych != 's') goto yy151;
-yy709:
- YYDEBUG(709, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(710, *YYCURSOR);
+ YYDEBUG(709, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1250 "Zend/zend_language_scanner.l"
+#line 1248 "Zend/zend_language_scanner.l"
{
return T_EXTENDS;
}
-#line 6532 "Zend/zend_language_scanner.c"
-yy711:
- YYDEBUG(711, *YYCURSOR);
+#line 6528 "Zend/zend_language_scanner.c"
+yy710:
+ YYDEBUG(710, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(712, *YYCURSOR);
+ YYDEBUG(711, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1102 "Zend/zend_language_scanner.l"
+#line 1100 "Zend/zend_language_scanner.l"
{
return T_EXIT;
}
-#line 6545 "Zend/zend_language_scanner.c"
+#line 6541 "Zend/zend_language_scanner.c"
+yy712:
+ YYDEBUG(712, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'L') goto yy713;
+ if (yych != 'l') goto yy150;
yy713:
YYDEBUG(713, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'L') goto yy714;
- if (yych != 'l') goto yy151;
-yy714:
- YYDEBUG(714, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(715, *YYCURSOR);
+ YYDEBUG(714, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1340 "Zend/zend_language_scanner.l"
+#line 1338 "Zend/zend_language_scanner.l"
{
return T_EVAL;
}
-#line 6563 "Zend/zend_language_scanner.c"
-yy716:
- YYDEBUG(716, *YYCURSOR);
+#line 6559 "Zend/zend_language_scanner.c"
+yy715:
+ YYDEBUG(715, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(-1, yych);
switch (yych) {
case 'D':
- case 'd': goto yy717;
+ case 'd': goto yy716;
case 'F':
- case 'f': goto yy718;
+ case 'f': goto yy717;
case 'I':
- case 'i': goto yy719;
+ case 'i': goto yy718;
case 'S':
- case 's': goto yy720;
+ case 's': goto yy719;
case 'W':
- case 'w': goto yy721;
- default: goto yy151;
+ case 'w': goto yy720;
+ default: goto yy150;
}
+yy716:
+ YYDEBUG(716, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy742;
+ if (yych == 'e') goto yy742;
+ goto yy150;
yy717:
YYDEBUG(717, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'E') goto yy743;
- if (yych == 'e') goto yy743;
- goto yy151;
+ if (yych == 'O') goto yy734;
+ if (yych == 'o') goto yy734;
+ goto yy150;
yy718:
YYDEBUG(718, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'O') goto yy735;
- if (yych == 'o') goto yy735;
- goto yy151;
+ if (yych == 'F') goto yy732;
+ if (yych == 'f') goto yy732;
+ goto yy150;
yy719:
YYDEBUG(719, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'F') goto yy733;
- if (yych == 'f') goto yy733;
- goto yy151;
+ if (yych == 'W') goto yy726;
+ if (yych == 'w') goto yy726;
+ goto yy150;
yy720:
YYDEBUG(720, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'W') goto yy727;
- if (yych == 'w') goto yy727;
- goto yy151;
+ if (yych == 'H') goto yy721;
+ if (yych != 'h') goto yy150;
yy721:
YYDEBUG(721, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'H') goto yy722;
- if (yych != 'h') goto yy151;
+ if (yych == 'I') goto yy722;
+ if (yych != 'i') goto yy150;
yy722:
YYDEBUG(722, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy723;
- if (yych != 'i') goto yy151;
+ if (yych == 'L') goto yy723;
+ if (yych != 'l') goto yy150;
yy723:
YYDEBUG(723, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy724;
- if (yych != 'l') goto yy151;
+ if (yych == 'E') goto yy724;
+ if (yych != 'e') goto yy150;
yy724:
YYDEBUG(724, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy725;
- if (yych != 'e') goto yy151;
-yy725:
- YYDEBUG(725, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(726, *YYCURSOR);
+ YYDEBUG(725, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1162 "Zend/zend_language_scanner.l"
+#line 1160 "Zend/zend_language_scanner.l"
{
return T_ENDWHILE;
}
-#line 6637 "Zend/zend_language_scanner.c"
+#line 6633 "Zend/zend_language_scanner.c"
+yy726:
+ YYDEBUG(726, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'I') goto yy727;
+ if (yych != 'i') goto yy150;
yy727:
YYDEBUG(727, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'I') goto yy728;
- if (yych != 'i') goto yy151;
+ if (yych == 'T') goto yy728;
+ if (yych != 't') goto yy150;
yy728:
YYDEBUG(728, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy729;
- if (yych != 't') goto yy151;
+ if (yych == 'C') goto yy729;
+ if (yych != 'c') goto yy150;
yy729:
YYDEBUG(729, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy730;
- if (yych != 'c') goto yy151;
+ if (yych == 'H') goto yy730;
+ if (yych != 'h') goto yy150;
yy730:
YYDEBUG(730, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy731;
- if (yych != 'h') goto yy151;
-yy731:
- YYDEBUG(731, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(732, *YYCURSOR);
+ YYDEBUG(731, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1206 "Zend/zend_language_scanner.l"
+#line 1204 "Zend/zend_language_scanner.l"
{
return T_ENDSWITCH;
}
-#line 6670 "Zend/zend_language_scanner.c"
-yy733:
- YYDEBUG(733, *YYCURSOR);
+#line 6666 "Zend/zend_language_scanner.c"
+yy732:
+ YYDEBUG(732, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(734, *YYCURSOR);
+ YYDEBUG(733, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1150 "Zend/zend_language_scanner.l"
+#line 1148 "Zend/zend_language_scanner.l"
{
return T_ENDIF;
}
-#line 6683 "Zend/zend_language_scanner.c"
+#line 6679 "Zend/zend_language_scanner.c"
+yy734:
+ YYDEBUG(734, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'R') goto yy735;
+ if (yych != 'r') goto yy150;
yy735:
YYDEBUG(735, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'R') goto yy736;
- if (yych != 'r') goto yy151;
-yy736:
- YYDEBUG(736, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy737;
- if (yych <= '9') goto yy150;
+ if (yych <= '/') goto yy736;
+ if (yych <= '9') goto yy149;
} else {
- if (yych == 'E') goto yy738;
- if (yych <= 'Z') goto yy150;
+ if (yych == 'E') goto yy737;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= 'd') {
- if (yych != '`') goto yy150;
+ if (yych != '`') goto yy149;
} else {
- if (yych <= 'e') goto yy738;
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'e') goto yy737;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy737:
- YYDEBUG(737, *YYCURSOR);
+yy736:
+ YYDEBUG(736, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1174 "Zend/zend_language_scanner.l"
+#line 1172 "Zend/zend_language_scanner.l"
{
return T_ENDFOR;
}
-#line 6716 "Zend/zend_language_scanner.c"
+#line 6712 "Zend/zend_language_scanner.c"
+yy737:
+ YYDEBUG(737, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'A') goto yy738;
+ if (yych != 'a') goto yy150;
yy738:
YYDEBUG(738, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy739;
- if (yych != 'a') goto yy151;
+ if (yych == 'C') goto yy739;
+ if (yych != 'c') goto yy150;
yy739:
YYDEBUG(739, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy740;
- if (yych != 'c') goto yy151;
+ if (yych == 'H') goto yy740;
+ if (yych != 'h') goto yy150;
yy740:
YYDEBUG(740, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'H') goto yy741;
- if (yych != 'h') goto yy151;
-yy741:
- YYDEBUG(741, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(742, *YYCURSOR);
+ YYDEBUG(741, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1182 "Zend/zend_language_scanner.l"
+#line 1180 "Zend/zend_language_scanner.l"
{
return T_ENDFOREACH;
}
-#line 6744 "Zend/zend_language_scanner.c"
+#line 6740 "Zend/zend_language_scanner.c"
+yy742:
+ YYDEBUG(742, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'C') goto yy743;
+ if (yych != 'c') goto yy150;
yy743:
YYDEBUG(743, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'C') goto yy744;
- if (yych != 'c') goto yy151;
+ if (yych == 'L') goto yy744;
+ if (yych != 'l') goto yy150;
yy744:
YYDEBUG(744, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'L') goto yy745;
- if (yych != 'l') goto yy151;
+ if (yych == 'A') goto yy745;
+ if (yych != 'a') goto yy150;
yy745:
YYDEBUG(745, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'A') goto yy746;
- if (yych != 'a') goto yy151;
+ if (yych == 'R') goto yy746;
+ if (yych != 'r') goto yy150;
yy746:
YYDEBUG(746, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'R') goto yy747;
- if (yych != 'r') goto yy151;
+ if (yych == 'E') goto yy747;
+ if (yych != 'e') goto yy150;
yy747:
YYDEBUG(747, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy748;
- if (yych != 'e') goto yy151;
-yy748:
- YYDEBUG(748, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(749, *YYCURSOR);
+ YYDEBUG(748, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1190 "Zend/zend_language_scanner.l"
+#line 1188 "Zend/zend_language_scanner.l"
{
return T_ENDDECLARE;
}
-#line 6782 "Zend/zend_language_scanner.c"
+#line 6778 "Zend/zend_language_scanner.c"
+yy749:
+ YYDEBUG(749, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'T') goto yy750;
+ if (yych != 't') goto yy150;
yy750:
YYDEBUG(750, *YYCURSOR);
yych = *++YYCURSOR;
- if (yych == 'T') goto yy751;
- if (yych != 't') goto yy151;
+ if (yych == 'Y') goto yy751;
+ if (yych != 'y') goto yy150;
yy751:
YYDEBUG(751, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'Y') goto yy752;
- if (yych != 'y') goto yy151;
-yy752:
- YYDEBUG(752, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(753, *YYCURSOR);
+ YYDEBUG(752, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1380 "Zend/zend_language_scanner.l"
+#line 1378 "Zend/zend_language_scanner.l"
{
return T_EMPTY;
}
-#line 6805 "Zend/zend_language_scanner.c"
+#line 6801 "Zend/zend_language_scanner.c"
+yy753:
+ YYDEBUG(753, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'E') goto yy754;
+ if (yych != 'e') goto yy150;
yy754:
YYDEBUG(754, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'E') goto yy755;
- if (yych != 'e') goto yy151;
-yy755:
- YYDEBUG(755, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '^') {
if (yych <= '@') {
- if (yych <= '/') goto yy756;
- if (yych <= '9') goto yy150;
+ if (yych <= '/') goto yy755;
+ if (yych <= '9') goto yy149;
} else {
- if (yych == 'I') goto yy757;
- if (yych <= 'Z') goto yy150;
+ if (yych == 'I') goto yy756;
+ if (yych <= 'Z') goto yy149;
}
} else {
if (yych <= 'h') {
- if (yych != '`') goto yy150;
+ if (yych != '`') goto yy149;
} else {
- if (yych <= 'i') goto yy757;
- if (yych <= 'z') goto yy150;
- if (yych >= 0x7F) goto yy150;
+ if (yych <= 'i') goto yy756;
+ if (yych <= 'z') goto yy149;
+ if (yych >= 0x7F) goto yy149;
}
}
-yy756:
- YYDEBUG(756, *YYCURSOR);
+yy755:
+ YYDEBUG(755, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1154 "Zend/zend_language_scanner.l"
+#line 1152 "Zend/zend_language_scanner.l"
{
return T_ELSE;
}
-#line 6838 "Zend/zend_language_scanner.c"
+#line 6834 "Zend/zend_language_scanner.c"
+yy756:
+ YYDEBUG(756, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'F') goto yy757;
+ if (yych != 'f') goto yy150;
yy757:
YYDEBUG(757, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'F') goto yy758;
- if (yych != 'f') goto yy151;
-yy758:
- YYDEBUG(758, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(759, *YYCURSOR);
+ YYDEBUG(758, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1146 "Zend/zend_language_scanner.l"
+#line 1144 "Zend/zend_language_scanner.l"
{
return T_ELSEIF;
}
-#line 6856 "Zend/zend_language_scanner.c"
+#line 6852 "Zend/zend_language_scanner.c"
+yy759:
+ YYDEBUG(759, *YYCURSOR);
+ yych = *++YYCURSOR;
+ if (yych == 'O') goto yy760;
+ if (yych != 'o') goto yy150;
yy760:
YYDEBUG(760, *YYCURSOR);
- yych = *++YYCURSOR;
- if (yych == 'O') goto yy761;
- if (yych != 'o') goto yy151;
-yy761:
- YYDEBUG(761, *YYCURSOR);
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 4) {
- goto yy150;
+ goto yy149;
}
- YYDEBUG(762, *YYCURSOR);
+ YYDEBUG(761, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1230 "Zend/zend_language_scanner.l"
+#line 1228 "Zend/zend_language_scanner.l"
{
return T_ECHO;
}
-#line 6874 "Zend/zend_language_scanner.c"
+#line 6870 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_LOOKING_FOR_PROPERTY:
@@ -6909,111 +6905,111 @@ yyc_ST_LOOKING_FOR_PROPERTY:
64, 64, 64, 64, 64, 64, 64, 64,
64, 64, 64, 64, 64, 64, 64, 64,
};
- YYDEBUG(763, *YYCURSOR);
+ YYDEBUG(762, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '-') {
if (yych <= '\r') {
- if (yych <= 0x08) goto yy771;
- if (yych <= '\n') goto yy765;
- if (yych <= '\f') goto yy771;
+ if (yych <= 0x08) goto yy770;
+ if (yych <= '\n') goto yy764;
+ if (yych <= '\f') goto yy770;
} else {
- if (yych == ' ') goto yy765;
- if (yych <= ',') goto yy771;
- goto yy767;
+ if (yych == ' ') goto yy764;
+ if (yych <= ',') goto yy770;
+ goto yy766;
}
} else {
if (yych <= '_') {
- if (yych <= '@') goto yy771;
- if (yych <= 'Z') goto yy769;
- if (yych <= '^') goto yy771;
- goto yy769;
+ if (yych <= '@') goto yy770;
+ if (yych <= 'Z') goto yy768;
+ if (yych <= '^') goto yy770;
+ goto yy768;
} else {
- if (yych <= '`') goto yy771;
- if (yych <= 'z') goto yy769;
- if (yych <= '~') goto yy771;
- goto yy769;
+ if (yych <= '`') goto yy770;
+ if (yych <= 'z') goto yy768;
+ if (yych <= '~') goto yy770;
+ goto yy768;
}
}
-yy765:
- YYDEBUG(765, *YYCURSOR);
+yy764:
+ YYDEBUG(764, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy777;
-yy766:
- YYDEBUG(766, *YYCURSOR);
+ goto yy776;
+yy765:
+ YYDEBUG(765, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1263 "Zend/zend_language_scanner.l"
+#line 1261 "Zend/zend_language_scanner.l"
{
HANDLE_NEWLINES(yytext, yyleng);
return T_WHITESPACE;
}
-#line 6952 "Zend/zend_language_scanner.c"
+#line 6948 "Zend/zend_language_scanner.c"
+yy766:
+ YYDEBUG(766, *YYCURSOR);
+ ++YYCURSOR;
+ if ((yych = *YYCURSOR) == '>') goto yy773;
yy767:
YYDEBUG(767, *YYCURSOR);
- ++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy774;
-yy768:
- YYDEBUG(768, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1278 "Zend/zend_language_scanner.l"
+#line 1276 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state();
goto restart;
}
-#line 6966 "Zend/zend_language_scanner.c"
-yy769:
- YYDEBUG(769, *YYCURSOR);
+#line 6962 "Zend/zend_language_scanner.c"
+yy768:
+ YYDEBUG(768, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy773;
-yy770:
- YYDEBUG(770, *YYCURSOR);
+ goto yy772;
+yy769:
+ YYDEBUG(769, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1272 "Zend/zend_language_scanner.l"
+#line 1270 "Zend/zend_language_scanner.l"
{
yy_pop_state();
zend_copy_value(zendlval, yytext, yyleng);
return T_STRING;
}
-#line 6981 "Zend/zend_language_scanner.c"
+#line 6977 "Zend/zend_language_scanner.c"
+yy770:
+ YYDEBUG(770, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy767;
yy771:
YYDEBUG(771, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy768;
-yy772:
- YYDEBUG(772, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy773:
- YYDEBUG(773, *YYCURSOR);
+yy772:
+ YYDEBUG(772, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy772;
+ goto yy771;
}
- goto yy770;
-yy774:
- YYDEBUG(774, *YYCURSOR);
+ goto yy769;
+yy773:
+ YYDEBUG(773, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(775, *YYCURSOR);
+ YYDEBUG(774, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1268 "Zend/zend_language_scanner.l"
+#line 1266 "Zend/zend_language_scanner.l"
{
return T_OBJECT_OPERATOR;
}
-#line 7006 "Zend/zend_language_scanner.c"
-yy776:
- YYDEBUG(776, *YYCURSOR);
+#line 7002 "Zend/zend_language_scanner.c"
+yy775:
+ YYDEBUG(775, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy777:
- YYDEBUG(777, *YYCURSOR);
+yy776:
+ YYDEBUG(776, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy776;
+ goto yy775;
}
- goto yy766;
+ goto yy765;
}
/* *********************************** */
yyc_ST_LOOKING_FOR_VARNAME:
@@ -7052,76 +7048,74 @@ yyc_ST_LOOKING_FOR_VARNAME:
128, 128, 128, 128, 128, 128, 128, 128,
128, 128, 128, 128, 128, 128, 128, 128,
};
- YYDEBUG(778, *YYCURSOR);
+ YYDEBUG(777, *YYCURSOR);
YYFILL(2);
yych = *YYCURSOR;
if (yych <= '_') {
- if (yych <= '@') goto yy782;
- if (yych <= 'Z') goto yy780;
- if (yych <= '^') goto yy782;
+ if (yych <= '@') goto yy781;
+ if (yych <= 'Z') goto yy779;
+ if (yych <= '^') goto yy781;
} else {
- if (yych <= '`') goto yy782;
- if (yych <= 'z') goto yy780;
- if (yych <= '~') goto yy782;
+ if (yych <= '`') goto yy781;
+ if (yych <= 'z') goto yy779;
+ if (yych <= '~') goto yy781;
}
-yy780:
- YYDEBUG(780, *YYCURSOR);
+yy779:
+ YYDEBUG(779, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '_') {
if (yych <= '@') {
- if (yych <= '/') goto yy781;
- if (yych <= '9') goto yy784;
+ if (yych <= '/') goto yy780;
+ if (yych <= '9') goto yy783;
} else {
- if (yych <= '[') goto yy784;
- if (yych >= '_') goto yy784;
+ if (yych <= '[') goto yy783;
+ if (yych >= '_') goto yy783;
}
} else {
if (yych <= '|') {
- if (yych <= '`') goto yy781;
- if (yych <= 'z') goto yy784;
+ if (yych <= '`') goto yy780;
+ if (yych <= 'z') goto yy783;
} else {
- if (yych != '~') goto yy784;
+ if (yych != '~') goto yy783;
}
}
-yy781:
- YYDEBUG(781, *YYCURSOR);
+yy780:
+ YYDEBUG(780, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1583 "Zend/zend_language_scanner.l"
+#line 1581 "Zend/zend_language_scanner.l"
{
yyless(0);
yy_pop_state();
yy_push_state(ST_IN_SCRIPTING);
goto restart;
}
-#line 7098 "Zend/zend_language_scanner.c"
+#line 7094 "Zend/zend_language_scanner.c"
+yy781:
+ YYDEBUG(781, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy780;
yy782:
YYDEBUG(782, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy781;
-yy783:
- YYDEBUG(783, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy784:
- YYDEBUG(784, *YYCURSOR);
+yy783:
+ YYDEBUG(783, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy783;
+ goto yy782;
}
- if (yych <= '@') goto yy785;
- if (yych <= '[') goto yy786;
- if (yych == '}') goto yy786;
+ if (yych == '[') goto yy785;
+ if (yych == '}') goto yy785;
+ YYDEBUG(784, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy780;
yy785:
YYDEBUG(785, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy781;
-yy786:
- YYDEBUG(786, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(787, *YYCURSOR);
+ YYDEBUG(786, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1574 "Zend/zend_language_scanner.l"
+#line 1572 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
zend_copy_value(zendlval, yytext, yyleng);
@@ -7129,18 +7123,18 @@ yy786:
yy_push_state(ST_IN_SCRIPTING);
return T_STRING_VARNAME;
}
-#line 7133 "Zend/zend_language_scanner.c"
+#line 7127 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_NOWDOC:
- YYDEBUG(788, *YYCURSOR);
+ YYDEBUG(787, *YYCURSOR);
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(790, *YYCURSOR);
+ YYDEBUG(789, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(791, *YYCURSOR);
+ YYDEBUG(790, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2296 "Zend/zend_language_scanner.l"
+#line 2294 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -7196,7 +7190,7 @@ nowdoc_scan_done:
HANDLE_NEWLINES(yytext, yyleng - newline);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 7200 "Zend/zend_language_scanner.c"
+#line 7194 "Zend/zend_language_scanner.c"
/* *********************************** */
yyc_ST_VAR_OFFSET:
{
@@ -7234,76 +7228,76 @@ yyc_ST_VAR_OFFSET:
16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16,
};
- YYDEBUG(792, *YYCURSOR);
+ YYDEBUG(791, *YYCURSOR);
YYFILL(3);
yych = *YYCURSOR;
if (yych <= '/') {
if (yych <= ' ') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy806;
- if (yych <= '\n') goto yy802;
- goto yy806;
+ if (yych <= 0x08) goto yy805;
+ if (yych <= '\n') goto yy801;
+ goto yy805;
} else {
- if (yych <= '\r') goto yy802;
- if (yych <= 0x1F) goto yy806;
- goto yy802;
+ if (yych <= '\r') goto yy801;
+ if (yych <= 0x1F) goto yy805;
+ goto yy801;
}
} else {
if (yych <= '$') {
- if (yych <= '"') goto yy801;
- if (yych <= '#') goto yy802;
- goto yy797;
+ if (yych <= '"') goto yy800;
+ if (yych <= '#') goto yy801;
+ goto yy796;
} else {
- if (yych == '\'') goto yy802;
- goto yy801;
+ if (yych == '\'') goto yy801;
+ goto yy800;
}
}
} else {
if (yych <= '\\') {
if (yych <= '@') {
- if (yych <= '0') goto yy794;
- if (yych <= '9') goto yy796;
- goto yy801;
+ if (yych <= '0') goto yy793;
+ if (yych <= '9') goto yy795;
+ goto yy800;
} else {
- if (yych <= 'Z') goto yy804;
- if (yych <= '[') goto yy801;
- goto yy802;
+ if (yych <= 'Z') goto yy803;
+ if (yych <= '[') goto yy800;
+ goto yy801;
}
} else {
if (yych <= '_') {
- if (yych <= ']') goto yy799;
- if (yych <= '^') goto yy801;
- goto yy804;
+ if (yych <= ']') goto yy798;
+ if (yych <= '^') goto yy800;
+ goto yy803;
} else {
- if (yych <= '`') goto yy801;
- if (yych <= 'z') goto yy804;
- if (yych <= '~') goto yy801;
- goto yy804;
+ if (yych <= '`') goto yy800;
+ if (yych <= 'z') goto yy803;
+ if (yych <= '~') goto yy800;
+ goto yy803;
}
}
}
-yy794:
- YYDEBUG(794, *YYCURSOR);
+yy793:
+ YYDEBUG(793, *YYCURSOR);
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= 'W') {
if (yych <= '9') {
- if (yych >= '0') goto yy818;
+ if (yych >= '0') goto yy817;
} else {
- if (yych == 'B') goto yy815;
+ if (yych == 'B') goto yy814;
}
} else {
if (yych <= 'b') {
- if (yych <= 'X') goto yy817;
- if (yych >= 'b') goto yy815;
+ if (yych <= 'X') goto yy816;
+ if (yych >= 'b') goto yy814;
} else {
- if (yych == 'x') goto yy817;
+ if (yych == 'x') goto yy816;
}
}
-yy795:
- YYDEBUG(795, *YYCURSOR);
+yy794:
+ YYDEBUG(794, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1685 "Zend/zend_language_scanner.l"
+#line 1683 "Zend/zend_language_scanner.l"
{ /* Offset could be treated as a long */
if (yyleng < MAX_LENGTH_OF_LONG - 1 || (yyleng == MAX_LENGTH_OF_LONG - 1 && strcmp(yytext, long_min_digits) < 0)) {
char *end;
@@ -7319,53 +7313,53 @@ string:
}
return T_NUM_STRING;
}
-#line 7323 "Zend/zend_language_scanner.c"
+#line 7317 "Zend/zend_language_scanner.c"
+yy795:
+ YYDEBUG(795, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy813;
yy796:
YYDEBUG(796, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy814;
-yy797:
- YYDEBUG(797, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) <= '_') {
- if (yych <= '@') goto yy798;
- if (yych <= 'Z') goto yy810;
- if (yych >= '_') goto yy810;
+ if (yych <= '@') goto yy797;
+ if (yych <= 'Z') goto yy809;
+ if (yych >= '_') goto yy809;
} else {
- if (yych <= '`') goto yy798;
- if (yych <= 'z') goto yy810;
- if (yych >= 0x7F) goto yy810;
+ if (yych <= '`') goto yy797;
+ if (yych <= 'z') goto yy809;
+ if (yych >= 0x7F) goto yy809;
}
-yy798:
- YYDEBUG(798, *YYCURSOR);
+yy797:
+ YYDEBUG(797, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1845 "Zend/zend_language_scanner.l"
+#line 1843 "Zend/zend_language_scanner.l"
{
/* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */
return yytext[0];
}
-#line 7348 "Zend/zend_language_scanner.c"
-yy799:
- YYDEBUG(799, *YYCURSOR);
+#line 7342 "Zend/zend_language_scanner.c"
+yy798:
+ YYDEBUG(798, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(800, *YYCURSOR);
+ YYDEBUG(799, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1840 "Zend/zend_language_scanner.l"
+#line 1838 "Zend/zend_language_scanner.l"
{
yy_pop_state();
return ']';
}
-#line 7359 "Zend/zend_language_scanner.c"
+#line 7353 "Zend/zend_language_scanner.c"
+yy800:
+ YYDEBUG(800, *YYCURSOR);
+ yych = *++YYCURSOR;
+ goto yy797;
yy801:
YYDEBUG(801, *YYCURSOR);
- yych = *++YYCURSOR;
- goto yy798;
-yy802:
- YYDEBUG(802, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(803, *YYCURSOR);
+ YYDEBUG(802, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1850 "Zend/zend_language_scanner.l"
+#line 1848 "Zend/zend_language_scanner.l"
{
/* Invalid rule to return a more explicit parse error with proper line number */
yyless(0);
@@ -7373,27 +7367,27 @@ yy802:
ZVAL_NULL(zendlval);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 7377 "Zend/zend_language_scanner.c"
-yy804:
- YYDEBUG(804, *YYCURSOR);
+#line 7371 "Zend/zend_language_scanner.c"
+yy803:
+ YYDEBUG(803, *YYCURSOR);
++YYCURSOR;
yych = *YYCURSOR;
- goto yy809;
-yy805:
- YYDEBUG(805, *YYCURSOR);
+ goto yy808;
+yy804:
+ YYDEBUG(804, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1858 "Zend/zend_language_scanner.l"
+#line 1856 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
return T_STRING;
}
-#line 7391 "Zend/zend_language_scanner.c"
-yy806:
- YYDEBUG(806, *YYCURSOR);
+#line 7385 "Zend/zend_language_scanner.c"
+yy805:
+ YYDEBUG(805, *YYCURSOR);
++YYCURSOR;
- YYDEBUG(807, *YYCURSOR);
+ YYDEBUG(806, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2353 "Zend/zend_language_scanner.l"
+#line 2351 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -7402,115 +7396,115 @@ yy806:
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 7406 "Zend/zend_language_scanner.c"
-yy808:
- YYDEBUG(808, *YYCURSOR);
+#line 7400 "Zend/zend_language_scanner.c"
+yy807:
+ YYDEBUG(807, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy809:
- YYDEBUG(809, *YYCURSOR);
+yy808:
+ YYDEBUG(808, *YYCURSOR);
if (yybm[0+yych] & 16) {
- goto yy808;
+ goto yy807;
}
- goto yy805;
-yy810:
- YYDEBUG(810, *YYCURSOR);
+ goto yy804;
+yy809:
+ YYDEBUG(809, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(811, *YYCURSOR);
+ YYDEBUG(810, *YYCURSOR);
if (yych <= '^') {
if (yych <= '9') {
- if (yych >= '0') goto yy810;
+ if (yych >= '0') goto yy809;
} else {
- if (yych <= '@') goto yy812;
- if (yych <= 'Z') goto yy810;
+ if (yych <= '@') goto yy811;
+ if (yych <= 'Z') goto yy809;
}
} else {
if (yych <= '`') {
- if (yych <= '_') goto yy810;
+ if (yych <= '_') goto yy809;
} else {
- if (yych <= 'z') goto yy810;
- if (yych >= 0x7F) goto yy810;
+ if (yych <= 'z') goto yy809;
+ if (yych >= 0x7F) goto yy809;
}
}
-yy812:
- YYDEBUG(812, *YYCURSOR);
+yy811:
+ YYDEBUG(811, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1835 "Zend/zend_language_scanner.l"
+#line 1833 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
return T_VARIABLE;
}
-#line 7447 "Zend/zend_language_scanner.c"
-yy813:
- YYDEBUG(813, *YYCURSOR);
+#line 7441 "Zend/zend_language_scanner.c"
+yy812:
+ YYDEBUG(812, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
-yy814:
- YYDEBUG(814, *YYCURSOR);
+yy813:
+ YYDEBUG(813, *YYCURSOR);
if (yybm[0+yych] & 32) {
- goto yy813;
+ goto yy812;
}
- goto yy795;
-yy815:
- YYDEBUG(815, *YYCURSOR);
+ goto yy794;
+yy814:
+ YYDEBUG(814, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy823;
+ goto yy822;
}
+yy815:
+ YYDEBUG(815, *YYCURSOR);
+ YYCURSOR = YYMARKER;
+ goto yy794;
yy816:
YYDEBUG(816, *YYCURSOR);
- YYCURSOR = YYMARKER;
- goto yy795;
-yy817:
- YYDEBUG(817, *YYCURSOR);
yych = *++YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy821;
+ goto yy820;
}
- goto yy816;
-yy818:
- YYDEBUG(818, *YYCURSOR);
+ goto yy815;
+yy817:
+ YYDEBUG(817, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
+ YYDEBUG(818, *YYCURSOR);
+ if (yych <= '/') goto yy819;
+ if (yych <= '9') goto yy817;
+yy819:
YYDEBUG(819, *YYCURSOR);
- if (yych <= '/') goto yy820;
- if (yych <= '9') goto yy818;
-yy820:
- YYDEBUG(820, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1701 "Zend/zend_language_scanner.l"
+#line 1699 "Zend/zend_language_scanner.l"
{ /* Offset must be treated as a string */
ZVAL_STRINGL(zendlval, yytext, yyleng);
return T_NUM_STRING;
}
-#line 7492 "Zend/zend_language_scanner.c"
-yy821:
- YYDEBUG(821, *YYCURSOR);
+#line 7486 "Zend/zend_language_scanner.c"
+yy820:
+ YYDEBUG(820, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(822, *YYCURSOR);
+ YYDEBUG(821, *YYCURSOR);
if (yybm[0+yych] & 64) {
- goto yy821;
+ goto yy820;
}
- goto yy820;
-yy823:
- YYDEBUG(823, *YYCURSOR);
+ goto yy819;
+yy822:
+ YYDEBUG(822, *YYCURSOR);
++YYCURSOR;
YYFILL(1);
yych = *YYCURSOR;
- YYDEBUG(824, *YYCURSOR);
+ YYDEBUG(823, *YYCURSOR);
if (yybm[0+yych] & 128) {
- goto yy823;
+ goto yy822;
}
- goto yy820;
+ goto yy819;
}
}
-#line 2362 "Zend/zend_language_scanner.l"
+#line 2360 "Zend/zend_language_scanner.l"
}
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l
index 31c9a52a44..e4b1314f76 100644
--- a/Zend/zend_language_scanner.l
+++ b/Zend/zend_language_scanner.l
@@ -482,7 +482,6 @@ ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding)
ZEND_API int open_file_for_scanning(zend_file_handle *file_handle)
{
- const char *file_path = NULL;
char *buf;
size_t size, offset = 0;
zend_string *compiled_filename;
@@ -536,12 +535,11 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle)
BEGIN(INITIAL);
if (file_handle->opened_path) {
- file_path = file_handle->opened_path;
+ compiled_filename = zend_string_copy(file_handle->opened_path);
} else {
- file_path = file_handle->filename;
+ compiled_filename = zend_string_init(file_handle->filename, strlen(file_handle->filename), 0);
}
- compiled_filename = zend_string_init(file_path, strlen(file_path), 0);
zend_set_compiled_filename(compiled_filename);
zend_string_release(compiled_filename);
@@ -623,7 +621,7 @@ zend_op_array *compile_filename(int type, zval *filename)
zend_file_handle file_handle;
zval tmp;
zend_op_array *retval;
- char *opened_path = NULL;
+ zend_string *opened_path = NULL;
if (Z_TYPE_P(filename) != IS_STRING) {
tmp = *filename;
@@ -640,13 +638,13 @@ zend_op_array *compile_filename(int type, zval *filename)
retval = zend_compile_file(&file_handle, type);
if (retval && file_handle.handle.stream.handle) {
if (!file_handle.opened_path) {
- file_handle.opened_path = opened_path = estrndup(Z_STRVAL_P(filename), Z_STRLEN_P(filename));
+ file_handle.opened_path = opened_path = zend_string_copy(Z_STR_P(filename));
}
- zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, strlen(file_handle.opened_path));
+ zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path);
if (opened_path) {
- efree(opened_path);
+ zend_string_release(opened_path);
}
}
zend_destroy_file_handle(&file_handle);
diff --git a/Zend/zend_language_scanner_defs.h b/Zend/zend_language_scanner_defs.h
index baf859bcd4..5926e3c61d 100644
--- a/Zend/zend_language_scanner_defs.h
+++ b/Zend/zend_language_scanner_defs.h
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.7.5 */
+/* Generated by re2c 0.13.5 */
#line 3 "Zend/zend_language_scanner_defs.h"
enum YYCONDTYPE {
diff --git a/Zend/zend_stream.c b/Zend/zend_stream.c
index 717c9b12a4..7796edb0d6 100644
--- a/Zend/zend_stream.c
+++ b/Zend/zend_stream.c
@@ -322,7 +322,7 @@ ZEND_API void zend_file_handle_dtor(zend_file_handle *fh) /* {{{ */
break;
}
if (fh->opened_path) {
- efree(fh->opened_path);
+ zend_string_release(fh->opened_path);
fh->opened_path = NULL;
}
if (fh->free_filename && fh->filename) {
diff --git a/Zend/zend_stream.h b/Zend/zend_stream.h
index 47a9c7d7d3..3dfaaf474b 100644
--- a/Zend/zend_stream.h
+++ b/Zend/zend_stream.h
@@ -69,7 +69,7 @@ typedef struct _zend_file_handle {
zend_stream stream;
} handle;
const char *filename;
- char *opened_path;
+ zend_string *opened_path;
zend_stream_type type;
zend_bool free_filename;
} zend_file_handle;
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index 1f4fe799a3..7936af95b2 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -4589,24 +4589,24 @@ ZEND_VM_HANDLER(73, ZEND_INCLUDE_OR_EVAL, CONST|TMPVAR|CV, ANY)
case ZEND_INCLUDE_ONCE:
case ZEND_REQUIRE_ONCE: {
zend_file_handle file_handle;
- char *resolved_path;
+ zend_string *resolved_path;
resolved_path = zend_resolve_path(Z_STRVAL_P(inc_filename), (int)Z_STRLEN_P(inc_filename));
if (resolved_path) {
- failure_retval = zend_hash_str_exists(&EG(included_files), resolved_path, (int)strlen(resolved_path));
+ failure_retval = zend_hash_exists(&EG(included_files), resolved_path);
} else {
- resolved_path = Z_STRVAL_P(inc_filename);
+ resolved_path = zend_string_copy(Z_STR_P(inc_filename));
}
if (failure_retval) {
/* do nothing, file already included */
- } else if (SUCCESS == zend_stream_open(resolved_path, &file_handle)) {
+ } else if (SUCCESS == zend_stream_open(resolved_path->val, &file_handle)) {
if (!file_handle.opened_path) {
- file_handle.opened_path = estrdup(resolved_path);
+ file_handle.opened_path = zend_string_copy(resolved_path);
}
- if (zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, (int)strlen(file_handle.opened_path))) {
+ if (zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path)) {
new_op_array = zend_compile_file(&file_handle, (opline->extended_value==ZEND_INCLUDE_ONCE?ZEND_INCLUDE:ZEND_REQUIRE));
zend_destroy_file_handle(&file_handle);
} else {
@@ -4620,9 +4620,7 @@ ZEND_VM_HANDLER(73, ZEND_INCLUDE_OR_EVAL, CONST|TMPVAR|CV, ANY)
zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, Z_STRVAL_P(inc_filename));
}
}
- if (resolved_path != Z_STRVAL_P(inc_filename)) {
- efree(resolved_path);
- }
+ zend_string_release(resolved_path);
}
break;
case ZEND_INCLUDE:
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 0cff7d7baf..a850098865 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -3127,24 +3127,24 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HA
case ZEND_INCLUDE_ONCE:
case ZEND_REQUIRE_ONCE: {
zend_file_handle file_handle;
- char *resolved_path;
+ zend_string *resolved_path;
resolved_path = zend_resolve_path(Z_STRVAL_P(inc_filename), (int)Z_STRLEN_P(inc_filename));
if (resolved_path) {
- failure_retval = zend_hash_str_exists(&EG(included_files), resolved_path, (int)strlen(resolved_path));
+ failure_retval = zend_hash_exists(&EG(included_files), resolved_path);
} else {
- resolved_path = Z_STRVAL_P(inc_filename);
+ resolved_path = zend_string_copy(Z_STR_P(inc_filename));
}
if (failure_retval) {
/* do nothing, file already included */
- } else if (SUCCESS == zend_stream_open(resolved_path, &file_handle)) {
+ } else if (SUCCESS == zend_stream_open(resolved_path->val, &file_handle)) {
if (!file_handle.opened_path) {
- file_handle.opened_path = estrdup(resolved_path);
+ file_handle.opened_path = zend_string_copy(resolved_path);
}
- if (zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, (int)strlen(file_handle.opened_path))) {
+ if (zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path)) {
new_op_array = zend_compile_file(&file_handle, (opline->extended_value==ZEND_INCLUDE_ONCE?ZEND_INCLUDE:ZEND_REQUIRE));
zend_destroy_file_handle(&file_handle);
} else {
@@ -3158,9 +3158,7 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HA
zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, Z_STRVAL_P(inc_filename));
}
}
- if (resolved_path != Z_STRVAL_P(inc_filename)) {
- efree(resolved_path);
- }
+ zend_string_release(resolved_path);
}
break;
case ZEND_INCLUDE:
@@ -24687,24 +24685,24 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDL
case ZEND_INCLUDE_ONCE:
case ZEND_REQUIRE_ONCE: {
zend_file_handle file_handle;
- char *resolved_path;
+ zend_string *resolved_path;
resolved_path = zend_resolve_path(Z_STRVAL_P(inc_filename), (int)Z_STRLEN_P(inc_filename));
if (resolved_path) {
- failure_retval = zend_hash_str_exists(&EG(included_files), resolved_path, (int)strlen(resolved_path));
+ failure_retval = zend_hash_exists(&EG(included_files), resolved_path);
} else {
- resolved_path = Z_STRVAL_P(inc_filename);
+ resolved_path = zend_string_copy(Z_STR_P(inc_filename));
}
if (failure_retval) {
/* do nothing, file already included */
- } else if (SUCCESS == zend_stream_open(resolved_path, &file_handle)) {
+ } else if (SUCCESS == zend_stream_open(resolved_path->val, &file_handle)) {
if (!file_handle.opened_path) {
- file_handle.opened_path = estrdup(resolved_path);
+ file_handle.opened_path = zend_string_copy(resolved_path);
}
- if (zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, (int)strlen(file_handle.opened_path))) {
+ if (zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path)) {
new_op_array = zend_compile_file(&file_handle, (opline->extended_value==ZEND_INCLUDE_ONCE?ZEND_INCLUDE:ZEND_REQUIRE));
zend_destroy_file_handle(&file_handle);
} else {
@@ -24718,9 +24716,7 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDL
zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, Z_STRVAL_P(inc_filename));
}
}
- if (resolved_path != Z_STRVAL_P(inc_filename)) {
- efree(resolved_path);
- }
+ zend_string_release(resolved_path);
}
break;
case ZEND_INCLUDE:
@@ -34099,24 +34095,24 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_H
case ZEND_INCLUDE_ONCE:
case ZEND_REQUIRE_ONCE: {
zend_file_handle file_handle;
- char *resolved_path;
+ zend_string *resolved_path;
resolved_path = zend_resolve_path(Z_STRVAL_P(inc_filename), (int)Z_STRLEN_P(inc_filename));
if (resolved_path) {
- failure_retval = zend_hash_str_exists(&EG(included_files), resolved_path, (int)strlen(resolved_path));
+ failure_retval = zend_hash_exists(&EG(included_files), resolved_path);
} else {
- resolved_path = Z_STRVAL_P(inc_filename);
+ resolved_path = zend_string_copy(Z_STR_P(inc_filename));
}
if (failure_retval) {
/* do nothing, file already included */
- } else if (SUCCESS == zend_stream_open(resolved_path, &file_handle)) {
+ } else if (SUCCESS == zend_stream_open(resolved_path->val, &file_handle)) {
if (!file_handle.opened_path) {
- file_handle.opened_path = estrdup(resolved_path);
+ file_handle.opened_path = zend_string_copy(resolved_path);
}
- if (zend_hash_str_add_empty_element(&EG(included_files), file_handle.opened_path, (int)strlen(file_handle.opened_path))) {
+ if (zend_hash_add_empty_element(&EG(included_files), file_handle.opened_path)) {
new_op_array = zend_compile_file(&file_handle, (opline->extended_value==ZEND_INCLUDE_ONCE?ZEND_INCLUDE:ZEND_REQUIRE));
zend_destroy_file_handle(&file_handle);
} else {
@@ -34130,9 +34126,7 @@ static int ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_H
zend_message_dispatcher(ZMSG_FAILED_REQUIRE_FOPEN, Z_STRVAL_P(inc_filename));
}
}
- if (resolved_path != Z_STRVAL_P(inc_filename)) {
- efree(resolved_path);
- }
+ zend_string_release(resolved_path);
}
break;
case ZEND_INCLUDE:
diff --git a/ext/bz2/bz2.c b/ext/bz2/bz2.c
index 9b59942f26..969c5e131c 100644
--- a/ext/bz2/bz2.c
+++ b/ext/bz2/bz2.c
@@ -235,7 +235,7 @@ PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper,
const char *path,
const char *mode,
int options,
- char **opened_path,
+ zend_string **opened_path,
php_stream_context *context STREAMS_DC)
{
php_stream *retstream = NULL, *stream = NULL;
@@ -266,20 +266,8 @@ PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper,
bz_file = BZ2_bzopen(path_copy, mode);
if (opened_path && bz_file) {
-#ifdef VIRTUAL_DIR
- *opened_path = path_copy;
- path_copy = NULL;
-#else
- *opened_path = estrdup(path_copy);
-#endif
- }
-
-#ifdef VIRTUAL_DIR
- if (path_copy) {
- efree(path_copy);
+ *opened_path = zend_string_init(path_copy, strlen(path_copy), 0);
}
-#endif
- path_copy = NULL;
if (bz_file == NULL) {
/* that didn't work, so try and get something from the network/wrapper */
@@ -296,7 +284,7 @@ PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper,
* failed.
*/
if (opened_path && !bz_file && mode[0] == 'w') {
- VCWD_UNLINK(*opened_path);
+ VCWD_UNLINK((*opened_path)->val);
}
}
diff --git a/ext/bz2/php_bz2.h b/ext/bz2/php_bz2.h
index b3c0725086..b1aa4ca97c 100644
--- a/ext/bz2/php_bz2.h
+++ b/ext/bz2/php_bz2.h
@@ -47,7 +47,7 @@ extern zend_module_entry bz2_module_entry;
# define PHP_BZ2_API
#endif
-PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+PHP_BZ2_API php_stream *_php_stream_bz2open(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
PHP_BZ2_API php_stream *_php_stream_bz2open_from_BZFILE(BZFILE *bz, const char *mode, php_stream *innerstream STREAMS_DC);
#define php_stream_bz2open_from_BZFILE(bz, mode, innerstream) _php_stream_bz2open_from_BZFILE((bz), (mode), (innerstream) STREAMS_CC)
diff --git a/ext/dba/dba.c b/ext/dba/dba.c
index f4569071f1..8491ff6a38 100644
--- a/ext/dba/dba.c
+++ b/ext/dba/dba.c
@@ -627,7 +627,7 @@ static void php_dba_open(INTERNAL_FUNCTION_PARAMETERS, int persistent)
char *file_mode;
char mode[4], *pmode, *lock_file_mode = NULL;
int persistent_flag = persistent ? STREAM_OPEN_PERSISTENT : 0;
- char *opened_path = NULL;
+ zend_string *opened_path = NULL;
char *lock_name;
if (ac < 2) {
@@ -853,13 +853,9 @@ static void php_dba_open(INTERNAL_FUNCTION_PARAMETERS, int persistent)
/* when not in read mode or failed to open .lck file read only. now try again in create(write) mode and log errors */
lock_file_mode = "a+b";
} else {
- if (!persistent) {
- info->lock.name = opened_path;
- } else {
- if (opened_path) {
- info->lock.name = pestrdup(opened_path, persistent);
- efree(opened_path);
- }
+ if (opened_path) {
+ info->lock.name = pestrndup(opened_path->val, opened_path->len, persistent);
+ zend_string_release(opened_path);
}
}
}
@@ -869,15 +865,11 @@ static void php_dba_open(INTERNAL_FUNCTION_PARAMETERS, int persistent)
if (lock_dbf) {
/* replace the path info with the real path of the opened file */
pefree(info->path, persistent);
- info->path = pestrdup(opened_path, persistent);
+ info->path = pestrndup(opened_path->val, opened_path->len, persistent);
}
/* now store the name of the lock */
- if (!persistent) {
- info->lock.name = opened_path;
- } else {
- info->lock.name = pestrdup(opened_path, persistent);
- efree(opened_path);
- }
+ info->lock.name = pestrdup(opened_path->val, opened_path->len, persistent);
+ zend_string_release(opened_path);
}
}
if (!lock_dbf) {
diff --git a/ext/gd/gd.c b/ext/gd/gd.c
index 61050ba288..9c252f45fc 100644
--- a/ext/gd/gd.c
+++ b/ext/gd/gd.c
@@ -2686,7 +2686,7 @@ static void _php_image_output(INTERNAL_FUNCTION_PARAMETERS, int image_type, char
int b;
FILE *tmp;
char buf[4096];
- char *path;
+ zend_string *path;
tmp = php_open_temporary_file(NULL, NULL, &path);
if (tmp == NULL) {
@@ -2745,8 +2745,8 @@ static void _php_image_output(INTERNAL_FUNCTION_PARAMETERS, int image_type, char
}
fclose(tmp);
- VCWD_UNLINK((const char *)path); /* make sure that the temporary file is removed */
- efree(path);
+ VCWD_UNLINK((const char *)path->val); /* make sure that the temporary file is removed */
+ zend_string_release(path);
}
RETURN_TRUE;
}
diff --git a/ext/opcache/ZendAccelerator.c b/ext/opcache/ZendAccelerator.c
index 584a12dc42..efd0be4c8c 100644
--- a/ext/opcache/ZendAccelerator.c
+++ b/ext/opcache/ZendAccelerator.c
@@ -105,7 +105,7 @@ char *zps_api_failure_reason = NULL;
static zend_op_array *(*accelerator_orig_compile_file)(zend_file_handle *file_handle, int type);
static int (*accelerator_orig_zend_stream_open_function)(const char *filename, zend_file_handle *handle );
-static char *(*accelerator_orig_zend_resolve_path)(const char *filename, int filename_len);
+static zend_string *(*accelerator_orig_zend_resolve_path)(const char *filename, int filename_len);
static void (*orig_chdir)(INTERNAL_FUNCTION_PARAMETERS) = NULL;
static ZEND_INI_MH((*orig_include_path_on_modify)) = NULL;
@@ -765,25 +765,23 @@ static accel_time_t zend_get_file_handle_timestamp(zend_file_handle *file_handle
break;
case ZEND_HANDLE_FILENAME:
case ZEND_HANDLE_MAPPED:
- {
- char *file_path = file_handle->opened_path;
+ if (file_handle->opened_path) {
+ char *file_path = file_handle->opened_path->val;
- if (file_path) {
- if (is_stream_path(file_path)) {
- if (zend_get_stream_timestamp(file_path, &statbuf) == SUCCESS) {
- break;
- }
- }
- if (VCWD_STAT(file_path, &statbuf) != -1) {
+ if (is_stream_path(file_path)) {
+ if (zend_get_stream_timestamp(file_path, &statbuf) == SUCCESS) {
break;
}
}
-
- if (zend_get_stream_timestamp(file_handle->filename, &statbuf) != SUCCESS) {
- return 0;
+ if (VCWD_STAT(file_path, &statbuf) != -1) {
+ break;
}
- break;
}
+
+ if (zend_get_stream_timestamp(file_handle->filename, &statbuf) != SUCCESS) {
+ return 0;
+ }
+ break;
case ZEND_HANDLE_STREAM:
{
php_stream *stream = (php_stream *)file_handle->handle.stream.handle;
@@ -825,20 +823,25 @@ static accel_time_t zend_get_file_handle_timestamp(zend_file_handle *file_handle
static inline int do_validate_timestamps(zend_persistent_script *persistent_script, zend_file_handle *file_handle)
{
zend_file_handle ps_handle;
- char *full_path_ptr = NULL;
+ zend_string *full_path_ptr = NULL;
/** check that the persistent script is indeed the same file we cached
* (if part of the path is a symlink than it possible that the user will change it)
* See bug #15140
*/
if (file_handle->opened_path) {
- if (strcmp(persistent_script->full_path->val, file_handle->opened_path) != 0) {
+ if (persistent_script->full_path != file_handle->opened_path &&
+ (persistent_script->full_path->len != file_handle->opened_path->len ||
+ memcmp(persistent_script->full_path->val, file_handle->opened_path->val, file_handle->opened_path->len) != 0)) {
return FAILURE;
}
} else {
full_path_ptr = accelerator_orig_zend_resolve_path(file_handle->filename, strlen(file_handle->filename));
- if (full_path_ptr && strcmp(persistent_script->full_path->val, full_path_ptr) != 0) {
- efree(full_path_ptr);
+ if (full_path_ptr &&
+ persistent_script->full_path != full_path_ptr &&
+ (persistent_script->full_path->len != full_path_ptr->len ||
+ memcmp(persistent_script->full_path->val, full_path_ptr->val, full_path_ptr->len) != 0)) {
+ zend_string_release(full_path_ptr);
return FAILURE;
}
file_handle->opened_path = full_path_ptr;
@@ -846,7 +849,7 @@ static inline int do_validate_timestamps(zend_persistent_script *persistent_scri
if (persistent_script->timestamp == 0) {
if (full_path_ptr) {
- efree(full_path_ptr);
+ zend_string_release(full_path_ptr);
file_handle->opened_path = NULL;
}
return FAILURE;
@@ -854,19 +857,19 @@ static inline int do_validate_timestamps(zend_persistent_script *persistent_scri
if (zend_get_file_handle_timestamp(file_handle, NULL) == persistent_script->timestamp) {
if (full_path_ptr) {
- efree(full_path_ptr);
+ zend_string_release(full_path_ptr);
file_handle->opened_path = NULL;
}
return SUCCESS;
}
if (full_path_ptr) {
- efree(full_path_ptr);
+ zend_string_release(full_path_ptr);
file_handle->opened_path = NULL;
}
ps_handle.type = ZEND_HANDLE_FILENAME;
ps_handle.filename = persistent_script->full_path->val;
- ps_handle.opened_path = persistent_script->full_path->val;
+ ps_handle.opened_path = persistent_script->full_path;
if (zend_get_file_handle_timestamp(&ps_handle, NULL) == persistent_script->timestamp) {
return SUCCESS;
@@ -934,8 +937,8 @@ char *accel_make_persistent_key_ex(zend_file_handle *file_handle, int path_lengt
/* we don't handle this well for now. */
zend_accel_error(ACCEL_LOG_INFO, "getcwd() failed for '%s' (%d), please try to set opcache.use_cwd to 0 in ini file", file_handle->filename, errno);
if (file_handle->opened_path) {
- cwd = file_handle->opened_path;
- cwd_len = strlen(cwd);
+ cwd = file_handle->opened_path->val;
+ cwd_len = file_handle->opened_path->len;
} else {
ZCG(key_len) = 0;
return NULL;
@@ -1047,7 +1050,7 @@ static inline char *accel_make_persistent_key(zend_file_handle *file_handle, int
int zend_accel_invalidate(const char *filename, int filename_len, zend_bool force)
{
- char *realpath;
+ zend_string *realpath;
zend_persistent_script *persistent_script;
if (!ZCG(enabled) || !accel_startup_ok || !ZCSG(accelerator_enabled) || accelerator_shm_read_lock() != SUCCESS) {
@@ -1060,12 +1063,12 @@ int zend_accel_invalidate(const char *filename, int filename_len, zend_bool forc
return FAILURE;
}
- persistent_script = zend_accel_hash_find(&ZCSG(hash), realpath, strlen(realpath));
+ persistent_script = zend_accel_hash_find(&ZCSG(hash), realpath->val, realpath->len);
if (persistent_script && !persistent_script->corrupted) {
zend_file_handle file_handle;
file_handle.type = ZEND_HANDLE_FILENAME;
- file_handle.filename = realpath;
+ file_handle.filename = realpath->val;
file_handle.opened_path = realpath;
if (force ||
@@ -1317,7 +1320,7 @@ static zend_persistent_script *compile_and_cache_file(zend_file_handle *file_han
}
/* check blacklist right after ensuring that file was opened */
- if (file_handle->opened_path && zend_accel_blacklist_is_blacklisted(&accel_blacklist, file_handle->opened_path)) {
+ if (file_handle->opened_path && zend_accel_blacklist_is_blacklisted(&accel_blacklist, file_handle->opened_path->val)) {
ZCSG(blacklist_misses)++;
*op_array_p = accelerator_orig_compile_file(file_handle, type);
return NULL;
@@ -1439,7 +1442,7 @@ static zend_persistent_script *compile_and_cache_file(zend_file_handle *file_han
}
if (file_handle->opened_path) {
- new_persistent_script->full_path = zend_string_init(file_handle->opened_path, strlen(file_handle->opened_path), 0);
+ new_persistent_script->full_path = zend_string_copy(file_handle->opened_path);
} else {
new_persistent_script->full_path = zend_string_init(file_handle->filename, strlen(file_handle->filename), 0);
}
@@ -1521,7 +1524,7 @@ zend_op_array *persistent_compile_file(zend_file_handle *file_handle, int type)
}
if (file_handle->opened_path &&
- (bucket = zend_accel_hash_find_entry(&ZCSG(hash), file_handle->opened_path, strlen(file_handle->opened_path))) != NULL) {
+ (bucket = zend_accel_hash_find_entry(&ZCSG(hash), file_handle->opened_path->val, file_handle->opened_path->len)) != NULL) {
persistent_script = (zend_persistent_script *)bucket->data;
if (!ZCG(accel_directives).revalidate_path &&
@@ -1702,7 +1705,7 @@ static int persistent_stream_open_function(const char *filename, zend_file_handl
(EG(current_execute_data) &&
(ZCG(cache_opline) == EG(current_execute_data)->opline))) {
persistent_script = ZCG(cache_persistent_script);
- handle->opened_path = estrndup(persistent_script->full_path->val, persistent_script->full_path->len);
+ handle->opened_path = zend_string_copy(persistent_script->full_path);
handle->type = ZEND_HANDLE_FILENAME;
return SUCCESS;
#if 0
@@ -1733,7 +1736,7 @@ static int persistent_stream_open_function(const char *filename, zend_file_handl
}
/* zend_resolve_path() replacement for PHP 5.3 and above */
-static char* persistent_zend_resolve_path(const char *filename, int filename_len)
+static zend_string* persistent_zend_resolve_path(const char *filename, int filename_len)
{
if (ZCG(enabled) && accel_startup_ok &&
(ZCG(counted) || ZCSG(accelerator_enabled)) &&
@@ -1752,7 +1755,7 @@ static char* persistent_zend_resolve_path(const char *filename, int filename_len
zend_file_handle handle;
char *key = NULL;
int key_length;
- char *resolved_path;
+ zend_string *resolved_path;
zend_accel_hash_entry *bucket;
zend_persistent_script *persistent_script;
@@ -1766,7 +1769,7 @@ static char* persistent_zend_resolve_path(const char *filename, int filename_len
ZCG(key_len) = persistent_script->full_path->len;
ZCG(cache_opline) = EG(current_execute_data) ? EG(current_execute_data)->opline : NULL;
ZCG(cache_persistent_script) = persistent_script;
- return estrndup(persistent_script->full_path->val, persistent_script->full_path->len);
+ return zend_string_copy(persistent_script->full_path);
}
}
@@ -1783,7 +1786,7 @@ static char* persistent_zend_resolve_path(const char *filename, int filename_len
/* we have persistent script */
ZCG(cache_opline) = EG(current_execute_data) ? EG(current_execute_data)->opline : NULL;
ZCG(cache_persistent_script) = persistent_script;
- return estrndup(persistent_script->full_path->val, persistent_script->full_path->len);
+ return zend_string_copy(persistent_script->full_path);
}
/* find the full real path */
@@ -1791,7 +1794,7 @@ static char* persistent_zend_resolve_path(const char *filename, int filename_len
/* Check if requested file already cached (by real path) */
if (resolved_path &&
- (bucket = zend_accel_hash_find_entry(&ZCSG(hash), resolved_path, strlen(resolved_path))) != NULL) {
+ (bucket = zend_accel_hash_find_entry(&ZCSG(hash), resolved_path->val, resolved_path->len)) != NULL) {
persistent_script = (zend_persistent_script *)bucket->data;
if (persistent_script && !persistent_script->corrupted) {
diff --git a/ext/opcache/zend_accelerator_module.c b/ext/opcache/zend_accelerator_module.c
index 625fe65d4e..3af08d0123 100644
--- a/ext/opcache/zend_accelerator_module.c
+++ b/ext/opcache/zend_accelerator_module.c
@@ -278,25 +278,25 @@ ZEND_INI_BEGIN()
#endif
ZEND_INI_END()
-static int filename_is_in_cache(char *filename, int filename_len)
+static int filename_is_in_cache(zend_string *filename)
{
char *key;
int key_length;
zend_file_handle handle = {{0}, NULL, NULL, 0, 0};
zend_persistent_script *persistent_script;
- handle.filename = filename;
+ handle.filename = filename->val;
handle.type = ZEND_HANDLE_FILENAME;
- if (IS_ABSOLUTE_PATH(filename, filename_len)) {
- persistent_script = zend_accel_hash_find(&ZCSG(hash), filename, filename_len);
+ if (IS_ABSOLUTE_PATH(filename->val, filename->len)) {
+ persistent_script = zend_accel_hash_find(&ZCSG(hash), filename->val, filename->len);
if (persistent_script) {
return !persistent_script->corrupted &&
validate_timestamp_and_record(persistent_script, &handle) == SUCCESS;
}
}
- if ((key = accel_make_persistent_key_ex(&handle, filename_len, &key_length)) != NULL) {
+ if ((key = accel_make_persistent_key_ex(&handle, filename->len, &key_length)) != NULL) {
persistent_script = zend_accel_hash_find(&ZCSG(hash), key, key_length);
return persistent_script && !persistent_script->corrupted &&
validate_timestamp_and_record(persistent_script, &handle) == SUCCESS;
@@ -315,7 +315,7 @@ static int accel_file_in_cache(INTERNAL_FUNCTION_PARAMETERS)
Z_STRLEN(zfilename) == 0) {
return 0;
}
- return filename_is_in_cache(Z_STRVAL(zfilename), Z_STRLEN(zfilename));
+ return filename_is_in_cache(Z_STR(zfilename));
}
static void accel_file_exists(INTERNAL_FUNCTION_PARAMETERS)
@@ -734,8 +734,7 @@ static ZEND_FUNCTION(opcache_compile_file)
Return true if the script is cached in OPCache, false if it is not cached or if OPCache is not running. */
static ZEND_FUNCTION(opcache_is_script_cached)
{
- char *script_name;
- size_t script_name_len;
+ zend_string *script_name;
if (!validate_api_restriction()) {
RETURN_FALSE;
@@ -745,9 +744,9 @@ static ZEND_FUNCTION(opcache_is_script_cached)
RETURN_FALSE;
}
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &script_name, &script_name_len) == FAILURE) {
+ if (zend_parse_parameters(ZEND_NUM_ARGS(), "S", &script_name) == FAILURE) {
return;
}
- RETURN_BOOL(filename_is_in_cache(script_name, script_name_len));
+ RETURN_BOOL(filename_is_in_cache(script_name));
}
diff --git a/ext/phar/dirstream.c b/ext/phar/dirstream.c
index dcfc3ddcbc..9a81dbbe3a 100644
--- a/ext/phar/dirstream.c
+++ b/ext/phar/dirstream.c
@@ -300,7 +300,7 @@ PHAR_ADD_ENTRY:
/**
* Open a directory handle within a phar archive
*/
-php_stream *phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
+php_stream *phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
{
php_url *resource = NULL;
php_stream *ret;
diff --git a/ext/phar/dirstream.h b/ext/phar/dirstream.h
index 97cc4a4cb0..b0e5f50ae4 100644
--- a/ext/phar/dirstream.h
+++ b/ext/phar/dirstream.h
@@ -33,7 +33,7 @@ static int phar_dir_close(php_stream *stream, int close_handle);
static int phar_dir_flush(php_stream *stream);
static int phar_dir_seek( php_stream *stream, zend_off_t offset, int whence, zend_off_t *newoffset);
#else
-php_stream* phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+php_stream* phar_wrapper_open_dir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
#endif
END_EXTERN_C()
diff --git a/ext/phar/func_interceptors.c b/ext/phar/func_interceptors.c
index f71e1f34c2..e3bdf01cf1 100644
--- a/ext/phar/func_interceptors.c
+++ b/ext/phar/func_interceptors.c
@@ -118,6 +118,7 @@ PHAR_FUNC(phar_file_get_contents) /* {{{ */
if (use_include_path || (!IS_ABSOLUTE_PATH(filename, filename_len) && !strstr(filename, "://"))) {
char *arch, *entry, *fname;
+ zend_string *entry_str = NULL;
int arch_len, entry_len, fname_len;
php_stream_context *context = NULL;
@@ -148,8 +149,8 @@ PHAR_FUNC(phar_file_get_contents) /* {{{ */
goto skip_phar;
}
if (use_include_path) {
- if ((entry = phar_find_in_include_path(entry, entry_len, NULL))) {
- name = entry;
+ if ((entry_str = phar_find_in_include_path(entry, entry_len, NULL))) {
+ name = entry_str->val;
goto phar_it;
} else {
/* this file is not in the phar, use the original path */
@@ -188,7 +189,11 @@ phar_it:
context = php_stream_context_from_zval(zcontext, 0);
}
stream = php_stream_open_wrapper_ex(name, "rb", 0 | REPORT_ERRORS, NULL, context);
- efree(name);
+ if (entry_str) {
+ zend_string_release(entry_str);
+ } else {
+ efree(name);
+ }
if (!stream) {
RETURN_FALSE;
@@ -243,6 +248,7 @@ PHAR_FUNC(phar_readfile) /* {{{ */
}
if (use_include_path || (!IS_ABSOLUTE_PATH(filename, filename_len) && !strstr(filename, "://"))) {
char *arch, *entry, *fname;
+ zend_string *entry_str = NULL;
int arch_len, entry_len, fname_len;
php_stream_context *context = NULL;
char *name;
@@ -267,12 +273,12 @@ PHAR_FUNC(phar_readfile) /* {{{ */
goto skip_phar;
}
if (use_include_path) {
- if (!(entry = phar_find_in_include_path(entry, entry_len, NULL))) {
+ if (!(entry_str = phar_find_in_include_path(entry, entry_len, NULL))) {
/* this file is not in the phar, use the original path */
efree(arch);
goto skip_phar;
} else {
- name = entry;
+ name = entry_str->val;
}
} else {
entry = phar_fix_filepath(estrndup(entry, entry_len), &entry_len, 1);
@@ -301,7 +307,11 @@ notfound:
efree(arch);
context = php_stream_context_from_zval(zcontext, 0);
stream = php_stream_open_wrapper_ex(name, "rb", 0 | REPORT_ERRORS, NULL, context);
- efree(name);
+ if (entry_str) {
+ zend_string_release(entry_str);
+ } else {
+ efree(name);
+ }
if (stream == NULL) {
RETURN_FALSE;
}
@@ -339,6 +349,7 @@ PHAR_FUNC(phar_fopen) /* {{{ */
}
if (use_include_path || (!IS_ABSOLUTE_PATH(filename, filename_len) && !strstr(filename, "://"))) {
char *arch, *entry, *fname;
+ zend_string *entry_str = NULL;
int arch_len, entry_len, fname_len;
php_stream_context *context = NULL;
char *name;
@@ -363,12 +374,12 @@ PHAR_FUNC(phar_fopen) /* {{{ */
goto skip_phar;
}
if (use_include_path) {
- if (!(entry = phar_find_in_include_path(entry, entry_len, NULL))) {
+ if (!(entry_str = phar_find_in_include_path(entry, entry_len, NULL))) {
/* this file is not in the phar, use the original path */
efree(arch);
goto skip_phar;
} else {
- name = entry;
+ name = entry_str->val;
}
} else {
entry = phar_fix_filepath(estrndup(entry, entry_len), &entry_len, 1);
@@ -398,7 +409,11 @@ notfound:
efree(arch);
context = php_stream_context_from_zval(zcontext, 0);
stream = php_stream_open_wrapper_ex(name, mode, 0 | REPORT_ERRORS, NULL, context);
- efree(name);
+ if (entry_str) {
+ zend_string_release(entry_str);
+ } else {
+ efree(name);
+ }
if (stream == NULL) {
RETURN_FALSE;
}
diff --git a/ext/phar/phar.c b/ext/phar/phar.c
index cba275c30a..8448100f77 100644
--- a/ext/phar/phar.c
+++ b/ext/phar/phar.c
@@ -27,7 +27,7 @@
static void destroy_phar_data(zval *zv);
ZEND_DECLARE_MODULE_GLOBALS(phar)
-char *(*phar_save_resolve_path)(const char *filename, int filename_len);
+zend_string *(*phar_save_resolve_path)(const char *filename, int filename_len);
/**
* set's phar->is_writeable based on the current INI value
@@ -1322,7 +1322,8 @@ int phar_create_or_parse_filename(char *fname, int fname_len, char *alias, int a
{
phar_archive_data *mydata;
php_stream *fp;
- char *actual = NULL, *p;
+ zend_string *actual = NULL;
+ char *p;
if (!pphar) {
pphar = &mydata;
@@ -1340,8 +1341,8 @@ int phar_create_or_parse_filename(char *fname, int fname_len, char *alias, int a
fp = php_stream_open_wrapper(fname, "rb", IGNORE_URL|STREAM_MUST_SEEK|0, &actual);
if (actual) {
- fname = actual;
- fname_len = strlen(actual);
+ fname = actual->val;
+ fname_len = actual->len;
}
if (fp) {
@@ -1350,20 +1351,20 @@ int phar_create_or_parse_filename(char *fname, int fname_len, char *alias, int a
(*pphar)->is_writeable = 1;
}
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return SUCCESS;
} else {
/* file exists, but is either corrupt or not a phar archive */
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return FAILURE;
}
}
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
if (PHAR_G(readonly) && !is_data) {
@@ -1475,7 +1476,7 @@ int phar_create_or_parse_filename(char *fname, int fname_len, char *alias, int a
int phar_open_from_filename(char *fname, int fname_len, char *alias, int alias_len, int options, phar_archive_data** pphar, char **error) /* {{{ */
{
php_stream *fp;
- char *actual;
+ zend_string *actual;
int ret, is_data = 0;
if (error) {
@@ -1509,20 +1510,20 @@ int phar_open_from_filename(char *fname, int fname_len, char *alias, int alias_l
}
}
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return FAILURE;
}
if (actual) {
- fname = actual;
- fname_len = strlen(actual);
+ fname = actual->val;
+ fname_len = actual->len;
}
ret = phar_open_from_fp(fp, fname, fname_len, alias, alias_len, options, pphar, is_data, error);
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return ret;
@@ -2252,7 +2253,7 @@ int phar_open_executed_filename(char *alias, int alias_len, char **error) /* {{{
char *fname;
php_stream *fp;
int fname_len;
- char *actual = NULL;
+ zend_string *actual = NULL;
int ret;
if (error) {
@@ -2298,20 +2299,20 @@ int phar_open_executed_filename(char *alias, int alias_len, char **error) /* {{{
spprintf(error, 0, "unable to open phar for reading \"%s\"", fname);
}
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return FAILURE;
}
if (actual) {
- fname = actual;
- fname_len = strlen(actual);
+ fname = actual->val;
+ fname_len = actual->len;
}
ret = phar_open_from_fp(fp, fname, fname_len, alias, alias_len, REPORT_ERRORS, NULL, 0, error);
if (actual) {
- efree(actual);
+ zend_string_release(actual);
}
return ret;
@@ -3254,7 +3255,7 @@ static size_t phar_zend_stream_fsizer(void *handle) /* {{{ */
zend_op_array *(*phar_orig_compile_file)(zend_file_handle *file_handle, int type);
#define phar_orig_zend_open zend_stream_open_function
-static char *phar_resolve_path(const char *filename, int filename_len)
+static zend_string *phar_resolve_path(const char *filename, int filename_len)
{
return phar_find_in_include_path((char *) filename, filename_len, NULL);
}
diff --git a/ext/phar/phar_internal.h b/ext/phar/phar_internal.h
index 0f8323f065..ccff36770b 100644
--- a/ext/phar/phar_internal.h
+++ b/ext/phar/phar_internal.h
@@ -495,7 +495,7 @@ union _phar_entry_object {
#endif
#ifndef PHAR_MAIN
-extern char *(*phar_save_resolve_path)(const char *filename, int filename_len);
+extern zend_string *(*phar_save_resolve_path)(const char *filename, int filename_len);
#endif
BEGIN_EXTERN_C()
@@ -562,7 +562,7 @@ char *phar_compress_filter(phar_entry_info * entry, int return_unknown);
void phar_remove_virtual_dirs(phar_archive_data *phar, char *filename, int filename_len);
void phar_add_virtual_dirs(phar_archive_data *phar, char *filename, int filename_len);
int phar_mount_entry(phar_archive_data *phar, char *filename, int filename_len, char *path, int path_len);
-char *phar_find_in_include_path(char *file, int file_len, phar_archive_data **pphar);
+zend_string *phar_find_in_include_path(char *file, int file_len, phar_archive_data **pphar);
char *phar_fix_filepath(char *path, int *new_len, int use_cwd);
phar_entry_info * phar_open_jit(phar_archive_data *phar, phar_entry_info *entry, char **error);
int phar_parse_metadata(char **buffer, zval *metadata, int zip_metadata_len);
diff --git a/ext/phar/phar_object.c b/ext/phar/phar_object.c
index 0b173d1e0b..d5f84b87de 100644
--- a/ext/phar/phar_object.c
+++ b/ext/phar/phar_object.c
@@ -1399,11 +1399,11 @@ static int phar_build(zend_object_iterator *iter, void *puser) /* {{{ */
phar_entry_data *data;
php_stream *fp;
size_t contents_len;
- char *fname, *error = NULL, *base = p_obj->b, *opened, *save = NULL, *temp = NULL;
+ char *fname, *error = NULL, *base = p_obj->b, *save = NULL, *temp = NULL;
+ zend_string *opened;
char *str_key;
zend_class_entry *ce = p_obj->c;
phar_archive_object *phar_obj = p_obj->p;
- char *str = "[stream]";
value = iter->funcs->get_current_data(iter);
@@ -1453,7 +1453,7 @@ static int phar_build(zend_object_iterator *iter, void *puser) /* {{{ */
}
close_fp = 0;
- opened = (char *) estrndup(str, sizeof("[stream]") - 1);
+ opened = zend_string_init("[stream]", sizeof("[stream]") - 1, 0);
goto after_open_fp;
case IS_OBJECT:
if (instanceof_function(Z_OBJCE_P(value), spl_ce_SplFileInfo)) {
@@ -1638,7 +1638,7 @@ after_open_fp:
}
if (opened) {
- efree(opened);
+ zend_string_release(opened);
}
if (close_fp) {
@@ -1657,7 +1657,7 @@ after_open_fp:
}
if (opened) {
- efree(opened);
+ zend_string_release(opened);
}
if (temp) {
@@ -1692,9 +1692,7 @@ after_open_fp:
php_stream_close(fp);
}
- // TODO: avoid reallocation ???
- add_assoc_string(p_obj->ret, str_key, opened);
- efree(opened);
+ add_assoc_str(p_obj->ret, str_key, opened);
if (save) {
efree(save);
@@ -4202,7 +4200,7 @@ PHP_METHOD(Phar, extractTo)
php_stream *fp;
php_stream_statbuf ssb;
phar_entry_info *entry;
- char *pathto, *filename, *actual;
+ char *pathto, *filename;
size_t pathto_len, filename_len;
int ret, i;
int nelems;
@@ -4215,7 +4213,7 @@ PHP_METHOD(Phar, extractTo)
return;
}
- fp = php_stream_open_wrapper(phar_obj->archive->fname, "rb", IGNORE_URL|STREAM_MUST_SEEK, &actual);
+ fp = php_stream_open_wrapper(phar_obj->archive->fname, "rb", IGNORE_URL|STREAM_MUST_SEEK, NULL);
if (!fp) {
zend_throw_exception_ex(spl_ce_InvalidArgumentException, 0,
@@ -4223,7 +4221,6 @@ PHP_METHOD(Phar, extractTo)
return;
}
- efree(actual);
php_stream_close(fp);
if (pathto_len < 1) {
diff --git a/ext/phar/stream.c b/ext/phar/stream.c
index ac40b3e8dc..e05b1663c2 100644
--- a/ext/phar/stream.c
+++ b/ext/phar/stream.c
@@ -155,7 +155,7 @@ php_url* phar_parse_url(php_stream_wrapper *wrapper, const char *filename, const
/**
* used for fopen('phar://...') and company
*/
-static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
+static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
{
phar_archive_data *phar;
phar_entry_data *idata;
@@ -231,7 +231,7 @@ static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const cha
}
}
if (opened_path) {
- spprintf(opened_path, MAXPATHLEN, "phar://%s/%s", idata->phar->fname, idata->internal_file->filename);
+ *opened_path = zend_strpprintf(MAXPATHLEN, "phar://%s/%s", idata->phar->fname, idata->internal_file->filename);
}
return fpf;
} else {
@@ -249,7 +249,7 @@ static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const cha
}
efree(internal_file);
if (opened_path) {
- spprintf(opened_path, MAXPATHLEN, "%s", phar->fname);
+ *opened_path = zend_strpprintf(MAXPATHLEN, "%s", phar->fname);
}
php_url_free(resource);
goto phar_stub;
@@ -275,7 +275,7 @@ static php_stream * phar_wrapper_open_url(php_stream_wrapper *wrapper, const cha
++(entry->fp_refcount);
php_url_free(resource);
if (opened_path) {
- spprintf(opened_path, MAXPATHLEN, "%s", phar->fname);
+ *opened_path = zend_strpprintf(MAXPATHLEN, "%s", phar->fname);
}
efree(internal_file);
goto phar_stub;
@@ -332,7 +332,7 @@ idata_error:
}
}
if (opened_path) {
- spprintf(opened_path, MAXPATHLEN, "phar://%s/%s", idata->phar->fname, idata->internal_file->filename);
+ *opened_path = zend_strpprintf(MAXPATHLEN, "phar://%s/%s", idata->phar->fname, idata->internal_file->filename);
}
efree(internal_file);
phar_stub:
diff --git a/ext/phar/stream.h b/ext/phar/stream.h
index dc798c0d1b..2b637c0caf 100644
--- a/ext/phar/stream.h
+++ b/ext/phar/stream.h
@@ -24,7 +24,7 @@ BEGIN_EXTERN_C()
php_url* phar_parse_url(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options);
void phar_entry_remove(phar_entry_data *idata, char **error);
-static php_stream* phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+static php_stream* phar_wrapper_open_url(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
static int phar_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context);
static int phar_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context);
static int phar_wrapper_stat(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context);
diff --git a/ext/phar/util.c b/ext/phar/util.c
index 1c10ab13e0..190f69cf61 100644
--- a/ext/phar/util.c
+++ b/ext/phar/util.c
@@ -250,10 +250,11 @@ int phar_mount_entry(phar_archive_data *phar, char *filename, int filename_len,
}
/* }}} */
-char *phar_find_in_include_path(char *filename, int filename_len, phar_archive_data **pphar) /* {{{ */
+zend_string *phar_find_in_include_path(char *filename, int filename_len, phar_archive_data **pphar) /* {{{ */
{
- char *path, *fname, *arch, *entry, *ret, *test;
- int arch_len, entry_len, fname_len, ret_len;
+ zend_string *ret;
+ char *path, *fname, *arch, *entry, *test;
+ int arch_len, entry_len, fname_len;
phar_archive_data *phar;
if (pphar) {
@@ -299,14 +300,14 @@ splitted:
if (*test == '/') {
if (zend_hash_str_exists(&(phar->manifest), test + 1, try_len - 1)) {
- spprintf(&ret, 0, "phar://%s%s", arch, test);
+ ret = zend_strpprintf(0, "phar://%s%s", arch, test);
efree(arch);
efree(test);
return ret;
}
} else {
if (zend_hash_str_exists(&(phar->manifest), test, try_len)) {
- spprintf(&ret, 0, "phar://%s/%s", arch, test);
+ ret = zend_strpprintf(0, "phar://%s/%s", arch, test);
efree(arch);
efree(test);
return ret;
@@ -320,11 +321,9 @@ splitted:
ret = php_resolve_path(filename, filename_len, path);
efree(path);
- if (ret && strlen(ret) > 8 && !strncmp(ret, "phar://", 7)) {
- ret_len = strlen(ret);
+ if (ret && ret->len > 8 && !strncmp(ret->val, "phar://", 7)) {
/* found phar:// */
-
- if (SUCCESS != phar_split_fname(ret, ret_len, &arch, &arch_len, &entry, &entry_len, 1, 0)) {
+ if (SUCCESS != phar_split_fname(ret->val, ret->len, &arch, &arch_len, &entry, &entry_len, 1, 0)) {
return ret;
}
diff --git a/ext/spl/php_spl.c b/ext/spl/php_spl.c
index 9c7dc5caff..f16734422b 100644
--- a/ext/spl/php_spl.c
+++ b/ext/spl/php_spl.c
@@ -273,9 +273,9 @@ static int spl_autoload(zend_string *class_name, zend_string *lc_name, const cha
if (ret == SUCCESS) {
zend_string *opened_path;
if (!file_handle.opened_path) {
- file_handle.opened_path = estrndup(class_file, class_file_len);
+ file_handle.opened_path = zend_string_init(class_file, class_file_len, 0);
}
- opened_path = zend_string_init(file_handle.opened_path, strlen(file_handle.opened_path), 0);
+ opened_path = zend_string_copy(file_handle.opened_path);
ZVAL_NULL(&dummy);
if (zend_hash_add(&EG(included_files), opened_path, &dummy)) {
new_op_array = zend_compile_file(&file_handle, ZEND_REQUIRE);
diff --git a/ext/standard/file.c b/ext/standard/file.c
index 3599313a71..dae4235a99 100644
--- a/ext/standard/file.c
+++ b/ext/standard/file.c
@@ -802,7 +802,7 @@ PHP_FUNCTION(tempnam)
{
char *dir, *prefix;
size_t dir_len, prefix_len;
- char *opened_path;
+ zend_string *opened_path;
int fd;
zend_string *p;
@@ -823,9 +823,7 @@ PHP_FUNCTION(tempnam)
if ((fd = php_open_temporary_fd_ex(dir, p->val, &opened_path, 1)) >= 0) {
close(fd);
- // TODO: avoid reallocation ???
- RETVAL_STRING(opened_path);
- efree(opened_path);
+ RETVAL_STR(opened_path);
}
zend_string_release(p);
}
diff --git a/ext/standard/ftp_fopen_wrapper.c b/ext/standard/ftp_fopen_wrapper.c
index 1c83a9434c..b003ffda0f 100644
--- a/ext/standard/ftp_fopen_wrapper.c
+++ b/ext/standard/ftp_fopen_wrapper.c
@@ -131,7 +131,7 @@ static int php_stream_ftp_stream_close(php_stream_wrapper *wrapper, php_stream *
/* {{{ php_ftp_fopen_connect
*/
static php_stream *php_ftp_fopen_connect(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
- char **opened_path, php_stream_context *context, php_stream **preuseid,
+ zend_string **opened_path, php_stream_context *context, php_stream **preuseid,
php_url **presource, int *puse_ssl, int *puse_ssl_on_data)
{
php_stream *stream = NULL, *reuseid = NULL;
@@ -412,7 +412,7 @@ static unsigned short php_fopen_do_pasv(php_stream *stream, char *ip, size_t ip_
/* {{{ php_fopen_url_wrap_ftp
*/
php_stream * php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
php_stream *stream = NULL, *datastream = NULL;
php_url *resource = NULL;
@@ -684,7 +684,7 @@ static php_stream_ops php_ftp_dirstream_ops = {
/* {{{ php_stream_ftp_opendir
*/
php_stream * php_stream_ftp_opendir(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
- char **opened_path, php_stream_context *context STREAMS_DC)
+ zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
php_stream *stream, *reuseid, *datastream = NULL;
php_ftp_dirstream_data *dirsdata;
diff --git a/ext/standard/http_fopen_wrapper.c b/ext/standard/http_fopen_wrapper.c
index 6e0ea812a4..1f54f62c6c 100644
--- a/ext/standard/http_fopen_wrapper.c
+++ b/ext/standard/http_fopen_wrapper.c
@@ -110,7 +110,7 @@ static inline void strip_header(char *header_bag, char *lc_header_bag,
}
php_stream *php_stream_url_wrap_http_ex(php_stream_wrapper *wrapper,
- const char *path, const char *mode, int options, char **opened_path,
+ const char *path, const char *mode, int options, zend_string **opened_path,
php_stream_context *context, int redirect_max, int flags STREAMS_DC) /* {{{ */
{
php_stream *stream = NULL;
@@ -933,7 +933,7 @@ out:
}
/* }}} */
-php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
+php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
{
return php_stream_url_wrap_http_ex(wrapper, path, mode, options, opened_path, context, PHP_URL_REDIRECT_MAX, HTTP_WRAPPER_HEADER_INIT STREAMS_CC);
}
diff --git a/ext/standard/php_fopen_wrapper.c b/ext/standard/php_fopen_wrapper.c
index 5e85d4dc43..1dc6a21cf5 100644
--- a/ext/standard/php_fopen_wrapper.c
+++ b/ext/standard/php_fopen_wrapper.c
@@ -172,7 +172,7 @@ static void php_stream_apply_filter_list(php_stream *stream, char *filterlist, i
/* }}} */
php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
- char **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
+ zend_string **opened_path, php_stream_context *context STREAMS_DC) /* {{{ */
{
int fd = -1;
int mode_rw = 0;
@@ -345,6 +345,7 @@ php_stream * php_stream_url_wrap_php(php_stream_wrapper *wrapper, const char *pa
efree(pathdup);
return NULL;
}
+
if (!(stream = php_stream_open_wrapper(p + 10, mode, options, opened_path))) {
efree(pathdup);
return NULL;
diff --git a/ext/standard/php_fopen_wrappers.h b/ext/standard/php_fopen_wrappers.h
index 5217144755..3773edbc5d 100644
--- a/ext/standard/php_fopen_wrappers.h
+++ b/ext/standard/php_fopen_wrappers.h
@@ -23,8 +23,8 @@
#ifndef PHP_FOPEN_WRAPPERS_H
#define PHP_FOPEN_WRAPPERS_H
-php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
-php_stream *php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
+php_stream *php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
extern PHPAPI php_stream_wrapper php_stream_http_wrapper;
extern PHPAPI php_stream_wrapper php_stream_ftp_wrapper;
extern PHPAPI php_stream_wrapper php_stream_php_wrapper;
diff --git a/ext/standard/streamsfuncs.c b/ext/standard/streamsfuncs.c
index 46c2aaa9a1..a86aae25f0 100644
--- a/ext/standard/streamsfuncs.c
+++ b/ext/standard/streamsfuncs.c
@@ -1489,8 +1489,9 @@ PHP_FUNCTION(stream_socket_enable_crypto)
Determine what file will be opened by calls to fopen() with a relative path */
PHP_FUNCTION(stream_resolve_include_path)
{
- char *filename, *resolved_path;
+ char *filename;
size_t filename_len;
+ zend_string *resolved_path;
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &filename, &filename_len) == FAILURE) {
return;
@@ -1499,10 +1500,7 @@ PHP_FUNCTION(stream_resolve_include_path)
resolved_path = zend_resolve_path(filename, (int)filename_len);
if (resolved_path) {
- // TODO: avoid reallocation ???
- RETVAL_STRING(resolved_path);
- efree(resolved_path);
- return;
+ RETURN_STR(resolved_path);
}
RETURN_FALSE;
}
diff --git a/ext/zip/php_zip.h b/ext/zip/php_zip.h
index a1ae3d5d6f..31099053ef 100644
--- a/ext/zip/php_zip.h
+++ b/ext/zip/php_zip.h
@@ -90,7 +90,7 @@ static inline ze_zip_object *php_zip_fetch_object(zend_object *obj) {
#define Z_ZIP_P(zv) php_zip_fetch_object(Z_OBJ_P((zv)))
-php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
php_stream *php_stream_zip_open(const char *filename, const char *path, const char *mode STREAMS_DC);
extern php_stream_wrapper php_stream_zip_wrapper;
diff --git a/ext/zip/zip_stream.c b/ext/zip/zip_stream.c
index d56213d1d5..18707eed27 100644
--- a/ext/zip/zip_stream.c
+++ b/ext/zip/zip_stream.c
@@ -254,7 +254,7 @@ php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper,
const char *path,
const char *mode,
int options,
- char **opened_path,
+ zend_string **opened_path,
php_stream_context *context STREAMS_DC)
{
int path_len;
@@ -314,7 +314,7 @@ php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper,
stream = php_stream_alloc(&php_stream_zipio_ops, self, NULL, mode);
if (opened_path) {
- *opened_path = estrdup(path);
+ *opened_path = zend_string_init(path, strlen(path), 0);
}
} else {
zip_close(za);
diff --git a/ext/zlib/php_zlib.h b/ext/zlib/php_zlib.h
index 1ecf593e69..2a8e443eba 100644
--- a/ext/zlib/php_zlib.h
+++ b/ext/zlib/php_zlib.h
@@ -58,7 +58,7 @@ ZEND_BEGIN_MODULE_GLOBALS(zlib)
int compression_coding;
ZEND_END_MODULE_GLOBALS(zlib);
-php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
extern php_stream_ops php_stream_gzio_ops;
extern php_stream_wrapper php_stream_gzip_wrapper;
extern php_stream_filter_factory php_zlib_filter_factory;
diff --git a/ext/zlib/zlib_fopen_wrapper.c b/ext/zlib/zlib_fopen_wrapper.c
index 8b17eca12b..6e63cc2641 100644
--- a/ext/zlib/zlib_fopen_wrapper.c
+++ b/ext/zlib/zlib_fopen_wrapper.c
@@ -111,7 +111,7 @@ php_stream_ops php_stream_gzio_ops = {
};
php_stream *php_stream_gzopen(php_stream_wrapper *wrapper, const char *path, const char *mode, int options,
- char **opened_path, php_stream_context *context STREAMS_DC)
+ zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
struct php_gz_stream_data_t *self;
php_stream *stream = NULL, *innerstream = NULL;
diff --git a/main/fopen_wrappers.c b/main/fopen_wrappers.c
index 9414ebdf36..c516481298 100644
--- a/main/fopen_wrappers.c
+++ b/main/fopen_wrappers.c
@@ -340,7 +340,7 @@ PHPAPI int php_check_open_basedir_ex(const char *path, int warn)
/* {{{ php_fopen_and_set_opened_path
*/
-static FILE *php_fopen_and_set_opened_path(const char *path, const char *mode, char **opened_path)
+static FILE *php_fopen_and_set_opened_path(const char *path, const char *mode, zend_string **opened_path)
{
FILE *fp;
@@ -349,7 +349,12 @@ static FILE *php_fopen_and_set_opened_path(const char *path, const char *mode, c
}
fp = VCWD_FOPEN(path, mode);
if (fp && opened_path) {
- *opened_path = expand_filepath_with_mode(path, NULL, NULL, 0, CWD_EXPAND);
+ //TODO :avoid reallocation
+ char *tmp = expand_filepath_with_mode(path, NULL, NULL, 0, CWD_EXPAND);
+ if (tmp) {
+ *opened_path = zend_string_init(tmp, strlen(tmp), 0);
+ efree(tmp);
+ }
}
return fp;
}
@@ -361,7 +366,7 @@ PHPAPI int php_fopen_primary_script(zend_file_handle *file_handle)
{
char *path_info;
char *filename = NULL;
- char *resolved_path = NULL;
+ zend_string *resolved_path = NULL;
int length;
zend_bool orig_display_errors;
@@ -448,7 +453,7 @@ PHPAPI int php_fopen_primary_script(zend_file_handle *file_handle)
}
return FAILURE;
}
- efree(resolved_path);
+ zend_string_release(resolved_path);
orig_display_errors = PG(display_errors);
PG(display_errors) = 0;
@@ -481,7 +486,7 @@ PHPAPI int php_fopen_primary_script(zend_file_handle *file_handle)
/* {{{ php_resolve_path
* Returns the realpath for given filename according to include path
*/
-PHPAPI char *php_resolve_path(const char *filename, int filename_length, const char *path)
+PHPAPI zend_string *php_resolve_path(const char *filename, int filename_length, const char *path)
{
char resolved_path[MAXPATHLEN];
char trypath[MAXPATHLEN];
@@ -499,7 +504,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
wrapper = php_stream_locate_url_wrapper(filename, &actual_path, STREAM_OPEN_FOR_INCLUDE);
if (wrapper == &php_plain_files_wrapper) {
if (tsrm_realpath(actual_path, resolved_path)) {
- return estrdup(resolved_path);
+ return zend_string_init(resolved_path, strlen(resolved_path), 0);
}
}
return NULL;
@@ -512,7 +517,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
!path ||
!*path) {
if (tsrm_realpath(filename, resolved_path)) {
- return estrdup(resolved_path);
+ return zend_string_init(resolved_path, strlen(resolved_path), 0);
} else {
return NULL;
}
@@ -562,14 +567,14 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
php_stream_statbuf ssb;
if (SUCCESS == wrapper->wops->url_stat(wrapper, trypath, 0, &ssb, NULL)) {
- return estrdup(trypath);
+ return zend_string_init(trypath, strlen(trypath), 0);
}
}
continue;
}
}
if (tsrm_realpath(actual_path, resolved_path)) {
- return estrdup(resolved_path);
+ return zend_string_init(resolved_path, strlen(resolved_path), 0);
}
} /* end provided path */
@@ -598,7 +603,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
php_stream_statbuf ssb;
if (SUCCESS == wrapper->wops->url_stat(wrapper, trypath, 0, &ssb, NULL)) {
- return estrdup(trypath);
+ return zend_string_init(trypath, strlen(trypath), 0);
}
}
return NULL;
@@ -606,7 +611,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
}
if (tsrm_realpath(actual_path, resolved_path)) {
- return estrdup(resolved_path);
+ return zend_string_init(resolved_path, strlen(resolved_path), 0);
}
}
}
@@ -619,7 +624,7 @@ PHPAPI char *php_resolve_path(const char *filename, int filename_length, const c
* Tries to open a file with a PATH-style list of directories.
* If the filename starts with "." or "/", the path is ignored.
*/
-PHPAPI FILE *php_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path)
+PHPAPI FILE *php_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path)
{
char *pathbuf, *ptr, *end;
const char *exec_fname;
diff --git a/main/fopen_wrappers.h b/main/fopen_wrappers.h
index e54a499603..e693b03dba 100644
--- a/main/fopen_wrappers.h
+++ b/main/fopen_wrappers.h
@@ -46,9 +46,9 @@ PHPAPI int php_check_specific_open_basedir(const char *basedir, const char *path
PHPAPI int php_check_safe_mode_include_dir(const char *path);
-PHPAPI char *php_resolve_path(const char *filename, int filename_len, const char *path);
+PHPAPI zend_string *php_resolve_path(const char *filename, int filename_len, const char *path);
-PHPAPI FILE *php_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path);
+PHPAPI FILE *php_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path);
PHPAPI char *php_strip_url_passwd(char *path);
diff --git a/main/main.c b/main/main.c
index 3dcba48779..f5c04099ea 100644
--- a/main/main.c
+++ b/main/main.c
@@ -1350,7 +1350,7 @@ PHP_FUNCTION(set_time_limit)
/* {{{ php_fopen_wrapper_for_zend
*/
-static FILE *php_fopen_wrapper_for_zend(const char *filename, char **opened_path)
+static FILE *php_fopen_wrapper_for_zend(const char *filename, zend_string **opened_path)
{
return php_stream_open_wrapper_as_file((char *)filename, "rb", USE_PATH|IGNORE_URL_WIN|REPORT_ERRORS|STREAM_OPEN_FOR_INCLUDE, opened_path);
}
@@ -1428,7 +1428,7 @@ PHPAPI int php_stream_open_for_zend_ex(const char *filename, zend_file_handle *h
}
/* }}} */
-static char *php_resolve_path_for_zend(const char *filename, int filename_len) /* {{{ */
+static zend_string *php_resolve_path_for_zend(const char *filename, int filename_len) /* {{{ */
{
return php_resolve_path(filename, filename_len, PG(include_path));
}
@@ -2490,12 +2490,9 @@ PHPAPI int php_execute_script(zend_file_handle *primary_file)
primary_file->opened_path == NULL &&
primary_file->type != ZEND_HANDLE_FILENAME
) {
- int realfile_len;
-
if (expand_filepath(primary_file->filename, realfile)) {
- realfile_len = (int)strlen(realfile);
- zend_hash_str_add_empty_element(&EG(included_files), realfile, realfile_len);
- primary_file->opened_path = estrndup(realfile, realfile_len);
+ primary_file->opened_path = zend_string_init(realfile, strlen(realfile), 0);
+ zend_hash_add_empty_element(&EG(included_files), primary_file->opened_path);
}
}
diff --git a/main/php_ini.c b/main/php_ini.c
index 9c16aa327d..7914244147 100644
--- a/main/php_ini.c
+++ b/main/php_ini.c
@@ -389,6 +389,7 @@ int php_init_config(void)
char *open_basedir;
int free_ini_search_path = 0;
zend_file_handle fh;
+ zend_string *opened_path = NULL;
zend_hash_init(&configuration_hash, 8, NULL, config_zval_dtor, 1);
@@ -555,7 +556,8 @@ int php_init_config(void)
if (!((statbuf.st_mode & S_IFMT) == S_IFDIR)) {
fh.handle.fp = VCWD_FOPEN(php_ini_file_name, "r");
if (fh.handle.fp) {
- fh.filename = php_ini_opened_path = expand_filepath(php_ini_file_name, NULL);
+ fh.filename = expand_filepath(php_ini_file_name, NULL);
+ opened_path = zend_string_init(fh.filename, strlen(fh.filename), 0);
}
}
}
@@ -566,18 +568,18 @@ int php_init_config(void)
const char *fmt = "php-%s.ini";
char *ini_fname;
spprintf(&ini_fname, 0, fmt, sapi_module.name);
- fh.handle.fp = php_fopen_with_path(ini_fname, "r", php_ini_search_path, &php_ini_opened_path);
+ fh.handle.fp = php_fopen_with_path(ini_fname, "r", php_ini_search_path, &opened_path);
efree(ini_fname);
if (fh.handle.fp) {
- fh.filename = php_ini_opened_path;
+ fh.filename = opened_path->val;
}
}
/* If still no ini file found, search for php.ini file in search path */
if (!fh.handle.fp) {
- fh.handle.fp = php_fopen_with_path("php.ini", "r", php_ini_search_path, &php_ini_opened_path);
+ fh.handle.fp = php_fopen_with_path("php.ini", "r", php_ini_search_path, &opened_path);
if (fh.handle.fp) {
- fh.filename = php_ini_opened_path;
+ fh.filename = opened_path->val;
}
}
}
@@ -599,8 +601,8 @@ int php_init_config(void)
ZVAL_NEW_STR(&tmp, zend_string_init(fh.filename, strlen(fh.filename), 1));
zend_hash_str_update(&configuration_hash, "cfg_file_path", sizeof("cfg_file_path")-1, &tmp);
- if (php_ini_opened_path) {
- efree(php_ini_opened_path);
+ if (opened_path) {
+ zend_string_release(opened_path);
}
php_ini_opened_path = zend_strndup(Z_STRVAL(tmp), Z_STRLEN(tmp));
}
diff --git a/main/php_open_temporary_file.c b/main/php_open_temporary_file.c
index 9bb5bd77ee..a88c823eed 100644
--- a/main/php_open_temporary_file.c
+++ b/main/php_open_temporary_file.c
@@ -94,10 +94,10 @@
* SUCH DAMAGE.
*/
-static int php_do_open_temporary_file(const char *path, const char *pfx, char **opened_path_p)
+static int php_do_open_temporary_file(const char *path, const char *pfx, zend_string **opened_path_p)
{
char *trailing_slash;
- char *opened_path;
+ char opened_path[MAXPATHLEN];
char cwd[MAXPATHLEN];
cwd_state new_state;
int fd = -1;
@@ -138,8 +138,7 @@ static int php_do_open_temporary_file(const char *path, const char *pfx, char **
trailing_slash = "/";
}
- if (spprintf(&opened_path, 0, "%s%s%sXXXXXX", new_state.cwd, trailing_slash, pfx) >= MAXPATHLEN) {
- efree(opened_path);
+ if (snprintf(opened_path, MAXPATHLEN, "%s%s%sXXXXXX", new_state.cwd, trailing_slash, pfx) >= MAXPATHLEN) {
efree(new_state.cwd);
return -1;
}
@@ -150,7 +149,6 @@ static int php_do_open_temporary_file(const char *path, const char *pfx, char **
/* Some versions of windows set the temp file to be read-only,
* which means that opening it will fail... */
if (VCWD_CHMOD(opened_path, 0600)) {
- efree(opened_path);
efree(new_state.cwd);
return -1;
}
@@ -165,10 +163,8 @@ static int php_do_open_temporary_file(const char *path, const char *pfx, char **
}
#endif
- if (fd == -1 || !opened_path_p) {
- efree(opened_path);
- } else {
- *opened_path_p = opened_path;
+ if (fd != -1 && opened_path_p) {
+ *opened_path_p = zend_string_init(opened_path, strlen(opened_path), 0);
}
efree(new_state.cwd);
return fd;
@@ -264,7 +260,7 @@ PHPAPI const char* php_get_temporary_directory(void)
* This function should do its best to return a file pointer to a newly created
* unique file, on every platform.
*/
-PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, char **opened_path_p, zend_bool open_basedir_check)
+PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_string **opened_path_p, zend_bool open_basedir_check)
{
int fd;
const char *temp_dir;
@@ -296,12 +292,12 @@ def_tmp:
return fd;
}
-PHPAPI int php_open_temporary_fd(const char *dir, const char *pfx, char **opened_path_p)
+PHPAPI int php_open_temporary_fd(const char *dir, const char *pfx, zend_string **opened_path_p)
{
return php_open_temporary_fd_ex(dir, pfx, opened_path_p, 0);
}
-PHPAPI FILE *php_open_temporary_file(const char *dir, const char *pfx, char **opened_path_p)
+PHPAPI FILE *php_open_temporary_file(const char *dir, const char *pfx, zend_string **opened_path_p)
{
FILE *fp;
int fd = php_open_temporary_fd(dir, pfx, opened_path_p);
diff --git a/main/php_open_temporary_file.h b/main/php_open_temporary_file.h
index e63cc599f0..912f4a8adc 100644
--- a/main/php_open_temporary_file.h
+++ b/main/php_open_temporary_file.h
@@ -22,9 +22,9 @@
#define PHP_OPEN_TEMPORARY_FILE_H
BEGIN_EXTERN_C()
-PHPAPI FILE *php_open_temporary_file(const char *dir, const char *pfx, char **opened_path_p);
-PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, char **opened_path_p, zend_bool open_basedir_check);
-PHPAPI int php_open_temporary_fd(const char *dir, const char *pfx, char **opened_path_p);
+PHPAPI FILE *php_open_temporary_file(const char *dir, const char *pfx, zend_string **opened_path_p);
+PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_string **opened_path_p, zend_bool open_basedir_check);
+PHPAPI int php_open_temporary_fd(const char *dir, const char *pfx, zend_string **opened_path_p);
PHPAPI const char *php_get_temporary_directory(void);
PHPAPI void php_shutdown_temporary_directory(void);
END_EXTERN_C()
diff --git a/main/php_streams.h b/main/php_streams.h
index 3cd0c047cd..3035bd560b 100644
--- a/main/php_streams.h
+++ b/main/php_streams.h
@@ -134,7 +134,7 @@ typedef struct _php_stream_ops {
typedef struct _php_stream_wrapper_ops {
/* open/create a wrapped stream */
php_stream *(*stream_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC);
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
/* close/destroy a wrapped stream */
int (*stream_closer)(php_stream_wrapper *wrapper, php_stream *stream);
/* stat a wrapped stream */
@@ -143,7 +143,7 @@ typedef struct _php_stream_wrapper_ops {
int (*url_stat)(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context);
/* open a "directory" stream */
php_stream *(*dir_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC);
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
const char *label;
@@ -554,7 +554,7 @@ PHPAPI int php_register_url_stream_wrapper(const char *protocol, php_stream_wrap
PHPAPI int php_unregister_url_stream_wrapper(const char *protocol);
PHPAPI int php_register_url_stream_wrapper_volatile(const char *protocol, php_stream_wrapper *wrapper);
PHPAPI int php_unregister_url_stream_wrapper_volatile(const char *protocol);
-PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, const char **path_for_open, int options);
PHPAPI const char *php_stream_locate_eol(php_stream *stream, zend_string *buf);
diff --git a/main/rfc1867.c b/main/rfc1867.c
index a1d8232dd9..493f70b65e 100644
--- a/main/rfc1867.c
+++ b/main/rfc1867.c
@@ -191,16 +191,16 @@ static void register_http_post_files_variable_ex(char *var, zval *val, zval *htt
static int unlink_filename(zval *el) /* {{{ */
{
- char *filename = (char*)Z_PTR_P(el);
- VCWD_UNLINK(filename);
+ zend_string *filename = Z_STR_P(el);
+ VCWD_UNLINK(filename->val);
return 0;
}
/* }}} */
static void free_filename(zval *el) {
- char *filename = (char*)Z_PTR_P(el);
- efree(filename);
+ zend_string *filename = Z_STR_P(el);
+ zend_string_release(filename);
}
void destroy_uploaded_files_hash(void) /* {{{ */
@@ -685,7 +685,8 @@ static char *multipart_buffer_read_body(multipart_buffer *self, size_t *len)
SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
{
char *boundary, *s = NULL, *boundary_end = NULL, *start_arr = NULL, *array_index = NULL;
- char *temp_filename = NULL, *lbuf = NULL, *abuf = NULL;
+ char *lbuf = NULL, *abuf = NULL;
+ zend_string *temp_filename = NULL;
int boundary_len = 0, cancel_upload = 0, is_arr_upload = 0, array_len = 0;
int64_t total_bytes = 0, max_file_size = 0;
int skip_upload = 0, anonindex = 0, is_anonymous;
@@ -980,7 +981,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
event_file_start.name = param;
event_file_start.filename = &filename;
if (php_rfc1867_callback(MULTIPART_EVENT_FILE_START, &event_file_start, &event_extra_data) == FAILURE) {
- temp_filename = "";
+ temp_filename = NULL;
efree(param);
efree(filename);
continue;
@@ -1095,7 +1096,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
multipart_event_file_end event_file_end;
event_file_end.post_bytes_processed = SG(read_post_bytes);
- event_file_end.temp_filename = temp_filename;
+ event_file_end.temp_filename = temp_filename->val;
event_file_end.cancel_upload = cancel_upload;
if (php_rfc1867_callback(MULTIPART_EVENT_FILE_END, &event_file_end, &event_extra_data) == FAILURE) {
cancel_upload = UPLOAD_ERROR_X;
@@ -1105,13 +1106,13 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
if (cancel_upload) {
if (temp_filename) {
if (cancel_upload != UPLOAD_ERROR_E) { /* file creation failed */
- unlink(temp_filename);
+ unlink(temp_filename->val);
}
- efree(temp_filename);
+ zend_string_release(temp_filename);
}
- temp_filename = "";
+ temp_filename = NULL;
} else {
- zend_hash_str_add_ptr(SG(rfc1867_uploaded_files), temp_filename, strlen(temp_filename), temp_filename);
+ zend_hash_add_ptr(SG(rfc1867_uploaded_files), temp_filename, temp_filename);
}
/* is_arr_upload is true when name of file upload field
@@ -1211,7 +1212,11 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
/* if param is of form xxx[.*] this will cut it to xxx */
if (!is_anonymous) {
- ZVAL_STRING(&zfilename, temp_filename);
+ if (temp_filename) {
+ ZVAL_STR_COPY(&zfilename, temp_filename);
+ } else {
+ ZVAL_EMPTY_STRING(&zfilename);
+ }
safe_php_register_variable_ex(param, &zfilename, NULL, 1);
}
@@ -1222,7 +1227,11 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) /* {{{ */
snprintf(lbuf, llen, "%s[tmp_name]", param);
}
add_protected_variable(lbuf);
- ZVAL_STRING(&zfilename, temp_filename);
+ if (temp_filename) {
+ ZVAL_STR_COPY(&zfilename, temp_filename);
+ } else {
+ ZVAL_EMPTY_STRING(&zfilename);
+ }
register_http_post_files_variable_ex(lbuf, &zfilename, &PG(http_globals)[TRACK_VARS_FILES], 1);
}
diff --git a/main/streams/cast.c b/main/streams/cast.c
index da8c6f1de8..bc9cc805e8 100644
--- a/main/streams/cast.c
+++ b/main/streams/cast.c
@@ -342,7 +342,7 @@ exit_success:
/* }}} */
/* {{{ php_stream_open_wrapper_as_file */
-PHPAPI FILE * _php_stream_open_wrapper_as_file(char *path, char *mode, int options, char **opened_path STREAMS_DC)
+PHPAPI FILE * _php_stream_open_wrapper_as_file(char *path, char *mode, int options, zend_string **opened_path STREAMS_DC)
{
FILE *fp = NULL;
php_stream *stream = NULL;
@@ -356,7 +356,7 @@ PHPAPI FILE * _php_stream_open_wrapper_as_file(char *path, char *mode, int optio
if (php_stream_cast(stream, PHP_STREAM_AS_STDIO|PHP_STREAM_CAST_TRY_HARD|PHP_STREAM_CAST_RELEASE, (void**)&fp, REPORT_ERRORS) == FAILURE) {
php_stream_close(stream);
if (opened_path && *opened_path) {
- efree(*opened_path);
+ zend_string_release(*opened_path);
}
return NULL;
}
diff --git a/main/streams/glob_wrapper.c b/main/streams/glob_wrapper.c
index 3926fc6540..4dffc27ade 100644
--- a/main/streams/glob_wrapper.c
+++ b/main/streams/glob_wrapper.c
@@ -207,7 +207,7 @@ php_stream_ops php_glob_stream_ops = {
/* {{{ php_glob_stream_opener */
static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
glob_s_t *pglob;
int ret;
@@ -220,7 +220,7 @@ static php_stream *php_glob_stream_opener(php_stream_wrapper *wrapper, const cha
if (!strncmp(path, "glob://", sizeof("glob://")-1)) {
path += sizeof("glob://")-1;
if (opened_path) {
- *opened_path = estrdup(path);
+ *opened_path = zend_string_init(path, strlen(path), 0);
}
}
diff --git a/main/streams/memory.c b/main/streams/memory.c
index 2016a9898c..9a9b11fe07 100644
--- a/main/streams/memory.c
+++ b/main/streams/memory.c
@@ -619,7 +619,7 @@ PHPAPI php_stream_ops php_stream_rfc2397_ops = {
};
static php_stream * php_stream_url_wrap_rfc2397(php_stream_wrapper *wrapper, const char *path,
- const char *mode, int options, char **opened_path,
+ const char *mode, int options, zend_string **opened_path,
php_stream_context *context STREAMS_DC) /* {{{ */
{
php_stream *stream;
diff --git a/main/streams/php_stream_plain_wrapper.h b/main/streams/php_stream_plain_wrapper.h
index cdf91084ab..61fc09542b 100644
--- a/main/streams/php_stream_plain_wrapper.h
+++ b/main/streams/php_stream_plain_wrapper.h
@@ -27,10 +27,10 @@ PHPAPI extern php_stream_wrapper php_plain_files_wrapper;
BEGIN_EXTERN_C()
/* like fopen, but returns a stream */
-PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, char **opened_path, int options STREAMS_DC);
+PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, zend_string **opened_path, int options STREAMS_DC);
#define php_stream_fopen(filename, mode, opened) _php_stream_fopen((filename), (mode), (opened), 0 STREAMS_CC)
-PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path, int options STREAMS_DC);
+PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path, int options STREAMS_DC);
#define php_stream_fopen_with_path(filename, mode, path, opened) _php_stream_fopen_with_path((filename), (mode), (path), (opened), 0 STREAMS_CC)
PHPAPI php_stream *_php_stream_fopen_from_file(FILE *file, const char *mode STREAMS_DC);
@@ -45,13 +45,13 @@ PHPAPI php_stream *_php_stream_fopen_from_pipe(FILE *file, const char *mode STRE
PHPAPI php_stream *_php_stream_fopen_tmpfile(int dummy STREAMS_DC);
#define php_stream_fopen_tmpfile() _php_stream_fopen_tmpfile(0 STREAMS_CC)
-PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char *pfx, char **opened_path STREAMS_DC);
+PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char *pfx, zend_string **opened_path STREAMS_DC);
#define php_stream_fopen_temporary_file(dir, pfx, opened_path) _php_stream_fopen_temporary_file((dir), (pfx), (opened_path) STREAMS_CC)
/* This is a utility API for extensions that are opening a stream, converting it
* to a FILE* and then closing it again. Be warned that fileno() on the result
* will most likely fail on systems with fopencookie. */
-PHPAPI FILE * _php_stream_open_wrapper_as_file(char * path, char * mode, int options, char **opened_path STREAMS_DC);
+PHPAPI FILE * _php_stream_open_wrapper_as_file(char * path, char * mode, int options, zend_string **opened_path STREAMS_DC);
#define php_stream_open_wrapper_as_file(path, mode, options, opened_path) _php_stream_open_wrapper_as_file((path), (mode), (options), (opened_path) STREAMS_CC)
END_EXTERN_C()
diff --git a/main/streams/plain_wrapper.c b/main/streams/plain_wrapper.c
index fe256b767e..83bd059c34 100644
--- a/main/streams/plain_wrapper.c
+++ b/main/streams/plain_wrapper.c
@@ -124,7 +124,7 @@ typedef struct {
unsigned _reserved:29;
int lock_flag; /* stores the lock state */
- char *temp_file_name; /* if non-null, this is the path to a temporary file that
+ zend_string *temp_name; /* if non-null, this is the path to a temporary file that
* is to be deleted when the stream is closed */
#if HAVE_FLUSHIO
char last_op;
@@ -168,7 +168,7 @@ static php_stream *_php_stream_fopen_from_fd_int(int fd, const char *mode, const
self->is_pipe = 0;
self->lock_flag = LOCK_UN;
self->is_process_pipe = 0;
- self->temp_file_name = NULL;
+ self->temp_name = NULL;
self->fd = fd;
return php_stream_alloc_rel(&php_stream_stdio_ops, self, persistent_id, mode);
@@ -184,15 +184,15 @@ static php_stream *_php_stream_fopen_from_file_int(FILE *file, const char *mode
self->is_pipe = 0;
self->lock_flag = LOCK_UN;
self->is_process_pipe = 0;
- self->temp_file_name = NULL;
+ self->temp_name = NULL;
self->fd = fileno(file);
return php_stream_alloc_rel(&php_stream_stdio_ops, self, 0, mode);
}
-PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char *pfx, char **opened_path_ptr STREAMS_DC)
+PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char *pfx, zend_string **opened_path_ptr STREAMS_DC)
{
- char *opened_path = NULL;
+ zend_string *opened_path = NULL;
int fd;
fd = php_open_temporary_fd(dir, pfx, &opened_path);
@@ -207,9 +207,9 @@ PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char
if (stream) {
php_stdio_stream_data *self = (php_stdio_stream_data*)stream->abstract;
stream->wrapper = &php_plain_files_wrapper;
- stream->orig_path = estrdup(opened_path);
+ stream->orig_path = estrndup(opened_path->val, opened_path->len);
- self->temp_file_name = opened_path;
+ self->temp_name = opened_path;
self->lock_flag = LOCK_UN;
return stream;
@@ -311,7 +311,7 @@ PHPAPI php_stream *_php_stream_fopen_from_pipe(FILE *file, const char *mode STRE
self->lock_flag = LOCK_UN;
self->is_process_pipe = 1;
self->fd = fileno(file);
- self->temp_file_name = NULL;
+ self->temp_name = NULL;
stream = php_stream_alloc_rel(&php_stream_stdio_ops, self, 0, mode);
stream->flags |= PHP_STREAM_FLAG_NO_SEEK;
@@ -450,11 +450,11 @@ static int php_stdiop_close(php_stream *stream, int close_handle)
} else {
return 0; /* everything should be closed already -> success */
}
- if (data->temp_file_name) {
- unlink(data->temp_file_name);
+ if (data->temp_name) {
+ unlink(data->temp_name->val);
/* temporary streams are never persistent */
- efree(data->temp_file_name);
- data->temp_file_name = NULL;
+ zend_string_release(data->temp_name);
+ data->temp_name = NULL;
}
} else {
ret = 0;
@@ -890,7 +890,7 @@ static php_stream_ops php_plain_files_dirstream_ops = {
};
static php_stream *php_plain_files_dir_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
DIR *dir = NULL;
php_stream *stream = NULL;
@@ -928,9 +928,9 @@ static php_stream *php_plain_files_dir_opener(php_stream_wrapper *wrapper, const
/* }}} */
/* {{{ php_stream_fopen */
-PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, char **opened_path, int options STREAMS_DC)
+PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, zend_string **opened_path, int options STREAMS_DC)
{
- char *realpath = NULL;
+ char realpath[MAXPATHLEN];
int open_flags;
int fd;
php_stream *ret;
@@ -945,9 +945,9 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
}
if (options & STREAM_ASSUME_REALPATH) {
- realpath = estrdup(filename);
+ strlcpy(realpath, filename, sizeof(realpath));
} else {
- if ((realpath = expand_filepath(filename, NULL)) == NULL) {
+ if (expand_filepath(filename, realpath) == NULL) {
return NULL;
}
}
@@ -957,15 +957,12 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
switch (php_stream_from_persistent_id(persistent_id, &ret)) {
case PHP_STREAM_PERSISTENT_SUCCESS:
if (opened_path) {
- *opened_path = realpath;
- realpath = NULL;
+ //TODO: avoid reallocation???
+ *opened_path = zend_string_init(realpath, strlen(realpath), 0);
}
/* fall through */
case PHP_STREAM_PERSISTENT_FAILURE:
- if (realpath) {
- efree(realpath);
- }
efree(persistent_id);;
return ret;
}
@@ -983,11 +980,7 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
if (ret) {
if (opened_path) {
- *opened_path = realpath;
- realpath = NULL;
- }
- if (realpath) {
- efree(realpath);
+ *opened_path = zend_string_init(realpath, strlen(realpath), 0);
}
if (persistent_id) {
efree(persistent_id);
@@ -1005,7 +998,7 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
r = do_fstat(self, 0);
if ((r == 0 && !S_ISREG(self->sb.st_mode))) {
if (opened_path) {
- efree(*opened_path);
+ zend_string_release(*opened_path);
*opened_path = NULL;
}
php_stream_close(ret);
@@ -1018,7 +1011,6 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
}
close(fd);
}
- efree(realpath);
if (persistent_id) {
efree(persistent_id);
}
@@ -1028,7 +1020,7 @@ PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, cha
static php_stream *php_plain_files_stream_opener(php_stream_wrapper *wrapper, const char *path, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && php_check_open_basedir(path)) {
return NULL;
@@ -1393,7 +1385,7 @@ PHPAPI php_stream_wrapper php_plain_files_wrapper = {
};
/* {{{ php_stream_fopen_with_path */
-PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, char **opened_path, int options STREAMS_DC)
+PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path, int options STREAMS_DC)
{
/* code ripped off from fopen_wrappers.c */
char *pathbuf, *end;
diff --git a/main/streams/streams.c b/main/streams/streams.c
index 7821c44c2e..16149fbc92 100644
--- a/main/streams/streams.c
+++ b/main/streams/streams.c
@@ -2015,13 +2015,13 @@ PHPAPI php_stream_dirent *_php_stream_readdir(php_stream *dirstream, php_stream_
/* {{{ php_stream_open_wrapper_ex */
PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options,
- char **opened_path, php_stream_context *context STREAMS_DC)
+ zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
php_stream *stream = NULL;
php_stream_wrapper *wrapper = NULL;
const char *path_to_open;
int persistent = options & STREAM_OPEN_PERSISTENT;
- char *resolved_path = NULL;
+ zend_string *resolved_path = NULL;
char *copy_of_path = NULL;
if (opened_path) {
@@ -2036,7 +2036,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
if (options & USE_PATH) {
resolved_path = zend_resolve_path(path, (int)strlen(path));
if (resolved_path) {
- path = resolved_path;
+ path = resolved_path->val;
/* we've found this file, don't re-check include_path or run realpath */
options |= STREAM_ASSUME_REALPATH;
options &= ~USE_PATH;
@@ -2049,7 +2049,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
if (options & STREAM_USE_URL && (!wrapper || !wrapper->is_url)) {
php_error_docref(NULL, E_WARNING, "This function may only be used against URLs");
if (resolved_path) {
- efree(resolved_path);
+ zend_string_release(resolved_path);
}
return NULL;
}
@@ -2102,7 +2102,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
? PHP_STREAM_PREFER_STDIO : PHP_STREAM_NO_PREFERENCE)) {
case PHP_STREAM_UNCHANGED:
if (resolved_path) {
- efree(resolved_path);
+ zend_string_release(resolved_path);
}
return stream;
case PHP_STREAM_RELEASED:
@@ -2111,7 +2111,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
}
newstream->orig_path = pestrdup(path, persistent);
if (resolved_path) {
- efree(resolved_path);
+ zend_string_release(resolved_path);
}
return newstream;
default:
@@ -2141,7 +2141,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
if (stream == NULL && (options & REPORT_ERRORS)) {
php_stream_display_wrapper_errors(wrapper, path, "failed to open stream");
if (opened_path && *opened_path) {
- efree(*opened_path);
+ zend_string_release(*opened_path);
*opened_path = NULL;
}
}
@@ -2152,7 +2152,7 @@ PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mod
}
#endif
if (resolved_path) {
- efree(resolved_path);
+ zend_string_release(resolved_path);
}
return stream;
}
diff --git a/main/streams/userspace.c b/main/streams/userspace.c
index 8d40ec3e12..33dbbf8d67 100644
--- a/main/streams/userspace.c
+++ b/main/streams/userspace.c
@@ -45,7 +45,7 @@ struct php_user_stream_wrapper {
php_stream_wrapper wrapper;
};
-static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC);
+static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *filename, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
static int user_wrapper_stat_url(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context);
static int user_wrapper_unlink(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context);
static int user_wrapper_rename(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context);
@@ -53,7 +53,7 @@ static int user_wrapper_mkdir(php_stream_wrapper *wrapper, const char *url, int
static int user_wrapper_rmdir(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context);
static int user_wrapper_metadata(php_stream_wrapper *wrapper, const char *url, int option, void *value, php_stream_context *context);
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, const char *filename, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC);
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC);
static php_stream_wrapper_ops user_stream_wops = {
user_wrapper_opener,
@@ -325,7 +325,7 @@ static void user_stream_create_object(struct php_user_stream_wrapper *uwrap, php
}
static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *filename, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
php_userstream_data_t *us;
@@ -385,7 +385,7 @@ static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *
/* if the opened path is set, copy it out */
if (Z_ISREF(args[3]) && Z_TYPE_P(Z_REFVAL(args[3])) == IS_STRING && opened_path) {
- *opened_path = estrndup(Z_STRVAL_P(Z_REFVAL(args[3])), Z_STRLEN_P(Z_REFVAL(args[3])));
+ *opened_path = zend_string_copy(Z_STR_P(Z_REFVAL(args[3])));
}
/* set wrapper data to be a reference to our object */
@@ -415,7 +415,7 @@ static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *
}
static php_stream *user_wrapper_opendir(php_stream_wrapper *wrapper, const char *filename, const char *mode,
- int options, char **opened_path, php_stream_context *context STREAMS_DC)
+ int options, zend_string **opened_path, php_stream_context *context STREAMS_DC)
{
struct php_user_stream_wrapper *uwrap = (struct php_user_stream_wrapper*)wrapper->abstract;
php_userstream_data_t *us;