Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

* Refactor zend_multibyte facility.

  Now mbstring.script_encoding is superseded by zend.script_encoding.
  • Loading branch information...
commit bbf3d43c1ee0ad53b03c3821cd630f0746d5e954 1 parent c28cac4
Moriyoshi Koizumi authored
Showing with 1,696 additions and 2,317 deletions.
  1. +18 −1 Zend/zend.c
  2. +3 −8 Zend/zend_compile.c
  3. +2 −5 Zend/zend_globals.h
  4. +576 −384 Zend/zend_language_scanner.c
  5. +5 −2 Zend/zend_language_scanner.h
  6. +223 −31 Zend/zend_language_scanner.l
  7. +1 −1  Zend/zend_language_scanner_defs.h
  8. +121 −1,131 Zend/zend_multibyte.c
  9. +44 −41 Zend/zend_multibyte.h
  10. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_base64.c
  11. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_big5.c
  12. +5 −5 ext/mbstring/libmbfl/filters/mbfilter_cp5022x.c
  13. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_cp932.c
  14. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_cp936.c
  15. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_htmlent.c
  16. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_hz.c
  17. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_iso2022_jp_ms.c
  18. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_iso2022_kr.c
  19. +2 −2 ext/mbstring/libmbfl/filters/mbfilter_jis.c
  20. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_qprint.c
  21. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_sjis.c
  22. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
  23. +1 −1  ext/mbstring/libmbfl/filters/mbfilter_utf7.c
  24. +156 −36 ext/mbstring/libmbfl/mbfl/mbfilter.c
  25. +6 −6 ext/mbstring/libmbfl/mbfl/mbfilter.h
  26. +2 −1  ext/mbstring/libmbfl/mbfl/mbfl_consts.h
  27. +26 −4 ext/mbstring/libmbfl/mbfl/mbfl_ident.c
  28. +2 −0  ext/mbstring/libmbfl/mbfl/mbfl_ident.h
  29. +24 −23 ext/mbstring/mb_gpc.c
  30. +4 −4 ext/mbstring/mb_gpc.h
  31. +437 −601 ext/mbstring/mbstring.c
  32. +16 −18 ext/mbstring/mbstring.h
  33. +11 −1 ext/standard/info.c
19 Zend/zend.c
View
@@ -89,11 +89,25 @@ static ZEND_INI_MH(OnUpdateGCEnabled) /* {{{ */
}
/* }}} */
+static ZEND_INI_MH(OnUpdateScriptEncoding) /* {{{ */
+{
+ if (!CG(multibyte)) {
+ return FAILURE;
+ }
+ if (!zend_multibyte_get_functions(TSRMLS_C)) {
+ return SUCCESS;
+ }
+ return zend_multibyte_set_script_encoding_by_string(new_value, new_value_length TSRMLS_CC);
+}
+/* }}} */
+
+
ZEND_INI_BEGIN()
ZEND_INI_ENTRY("error_reporting", NULL, ZEND_INI_ALL, OnUpdateErrorReporting)
STD_ZEND_INI_BOOLEAN("zend.enable_gc", "1", ZEND_INI_ALL, OnUpdateGCEnabled, gc_enabled, zend_gc_globals, gc_globals)
STD_ZEND_INI_BOOLEAN("zend.multibyte", "0", ZEND_INI_PERDIR, OnUpdateBool, multibyte, zend_compiler_globals, compiler_globals)
- STD_ZEND_INI_BOOLEAN("detect_unicode", "1", ZEND_INI_ALL, OnUpdateBool, detect_unicode, zend_compiler_globals, compiler_globals)
+ ZEND_INI_ENTRY("zend.script_encoding", NULL, ZEND_INI_ALL, OnUpdateScriptEncoding)
+ STD_ZEND_INI_BOOLEAN("zend.detect_unicode", "1", ZEND_INI_ALL, OnUpdateBool, detect_unicode, zend_compiler_globals, compiler_globals)
ZEND_INI_END()
@@ -528,6 +542,9 @@ static void compiler_globals_dtor(zend_compiler_globals *compiler_globals TSRMLS
if (compiler_globals->static_members_table) {
free(compiler_globals->static_members_table);
}
+ if (compiler_globals->script_encoding_list) {
+ pefree(compiler_globals->script_encoding_list, 1);
+ }
compiler_globals->last_static_member = 0;
}
/* }}} */
11 Zend/zend_compile.c
View
@@ -197,9 +197,6 @@ void zend_init_compiler_data_structures(TSRMLS_D) /* {{{ */
init_compiler_declarables(TSRMLS_C);
zend_stack_init(&CG(context_stack));
- CG(script_encoding_list) = NULL;
- CG(script_encoding_list_size) = 0;
- CG(internal_encoding) = NULL;
CG(encoding_declared) = 0;
}
/* }}} */
@@ -238,10 +235,6 @@ void shutdown_compiler(TSRMLS_D) /* {{{ */
zend_hash_destroy(&CG(filenames_table));
zend_llist_destroy(&CG(open_files));
zend_stack_destroy(&CG(context_stack));
-
- if (CG(script_encoding_list)) {
- efree(CG(script_encoding_list));
- }
}
/* }}} */
@@ -5864,7 +5857,7 @@ void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC) /* {{{ */
CG(encoding_declared) = 1;
convert_to_string(&val->u.constant);
- new_encoding = zend_multibyte_fetch_encoding(val->u.constant.value.str.val);
+ new_encoding = zend_multibyte_fetch_encoding(val->u.constant.value.str.val TSRMLS_CC);
if (!new_encoding) {
zend_error(E_COMPILE_WARNING, "Unsupported encoding [%s]", val->u.constant.value.str.val);
} else {
@@ -5879,6 +5872,8 @@ void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC) /* {{{ */
zend_multibyte_yyinput_again(old_input_filter, old_encoding TSRMLS_CC);
}
}
+ } else {
+ zend_error(E_COMPILE_WARNING, "declare(encoding=...) ignored because Zend multibyte feature is turned off by settings");
}
zval_dtor(&val->u.constant);
} else {
7 Zend/zend_globals.h
View
@@ -147,14 +147,12 @@ struct _zend_compiler_globals {
HashTable interned_strings;
- zend_encoding **script_encoding_list;
+ const zend_encoding **script_encoding_list;
size_t script_encoding_list_size;
zend_bool multibyte;
zend_bool detect_unicode;
zend_bool encoding_declared;
- zend_encoding *internal_encoding;
-
#ifdef ZTS
zval ***static_members_table;
int last_static_member;
@@ -310,8 +308,7 @@ struct _zend_php_scanner_globals {
/* input/ouput filters */
zend_encoding_filter input_filter;
zend_encoding_filter output_filter;
- zend_encoding *script_encoding;
- zend_encoding *internal_encoding;
+ const zend_encoding *script_encoding;
};
#endif /* ZEND_GLOBALS_H */
960 Zend/zend_language_scanner.c
View
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.5 on Thu Nov 25 23:17:48 2010 */
+/* Generated by re2c 0.13.5 on Mon Dec 20 01:33:18 2010 */
#line 1 "Zend/zend_language_scanner.l"
/*
+----------------------------------------------------------------------+
@@ -183,16 +183,13 @@ ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state TSRMLS_DC)
lex_state->filename = zend_get_compiled_filename(TSRMLS_C);
lex_state->lineno = CG(zend_lineno);
- if (CG(multibyte)) {
- lex_state->script_org = SCNG(script_org);
- lex_state->script_org_size = SCNG(script_org_size);
- lex_state->script_filtered = SCNG(script_filtered);
- lex_state->script_filtered_size = SCNG(script_filtered_size);
- lex_state->input_filter = SCNG(input_filter);
- lex_state->output_filter = SCNG(output_filter);
- lex_state->script_encoding = SCNG(script_encoding);
- lex_state->internal_encoding = SCNG(internal_encoding);
- }
+ lex_state->script_org = SCNG(script_org);
+ lex_state->script_org_size = SCNG(script_org_size);
+ lex_state->script_filtered = SCNG(script_filtered);
+ lex_state->script_filtered_size = SCNG(script_filtered_size);
+ lex_state->input_filter = SCNG(input_filter);
+ lex_state->output_filter = SCNG(output_filter);
+ lex_state->script_encoding = SCNG(script_encoding);
}
ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC)
@@ -211,24 +208,22 @@ ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state TSRMLS_DC)
YYSETCONDITION(lex_state->yy_state);
CG(zend_lineno) = lex_state->lineno;
zend_restore_compiled_filename(lex_state->filename TSRMLS_CC);
- if (CG(multibyte)) {
- if (SCNG(script_org)) {
- efree(SCNG(script_org));
- SCNG(script_org) = NULL;
- }
- if (SCNG(script_filtered)) {
- efree(SCNG(script_filtered));
- SCNG(script_filtered) = NULL;
- }
- SCNG(script_org) = lex_state->script_org;
- SCNG(script_org_size) = lex_state->script_org_size;
- SCNG(script_filtered) = lex_state->script_filtered;
- SCNG(script_filtered_size) = lex_state->script_filtered_size;
- SCNG(input_filter) = lex_state->input_filter;
- SCNG(output_filter) = lex_state->output_filter;
- SCNG(script_encoding) = lex_state->script_encoding;
- SCNG(internal_encoding) = lex_state->internal_encoding;
+
+ if (SCNG(script_org)) {
+ efree(SCNG(script_org));
+ SCNG(script_org) = NULL;
}
+ if (SCNG(script_filtered)) {
+ efree(SCNG(script_filtered));
+ SCNG(script_filtered) = NULL;
+ }
+ SCNG(script_org) = lex_state->script_org;
+ SCNG(script_org_size) = lex_state->script_org_size;
+ SCNG(script_filtered) = lex_state->script_filtered;
+ SCNG(script_filtered_size) = lex_state->script_filtered_size;
+ SCNG(input_filter) = lex_state->input_filter;
+ SCNG(output_filter) = lex_state->output_filter;
+ SCNG(script_encoding) = lex_state->script_encoding;
}
ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC)
@@ -241,6 +236,203 @@ ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle TSRMLS_DC)
}
}
+#define BOM_UTF32_BE "\x00\x00\xfe\xff"
+#define BOM_UTF32_LE "\xff\xfe\x00\x00"
+#define BOM_UTF16_BE "\xfe\xff"
+#define BOM_UTF16_LE "\xff\xfe"
+#define BOM_UTF8 "\xef\xbb\xbf"
+
+static const zend_encoding *zend_multibyte_detect_utf_encoding(const unsigned char *script, size_t script_size TSRMLS_DC)
+{
+ const unsigned char *p;
+ int wchar_size = 2;
+ int le = 0;
+
+ /* utf-16 or utf-32? */
+ p = script;
+ while ((p-script) < script_size) {
+ p = memchr(p, 0, script_size-(p-script)-2);
+ if (!p) {
+ break;
+ }
+ if (*(p+1) == '\0' && *(p+2) == '\0') {
+ wchar_size = 4;
+ break;
+ }
+
+ /* searching for UTF-32 specific byte orders, so this will do */
+ p += 4;
+ }
+
+ /* BE or LE? */
+ p = script;
+ while ((p-script) < script_size) {
+ if (*p == '\0' && *(p+wchar_size-1) != '\0') {
+ /* BE */
+ le = 0;
+ break;
+ } else if (*p != '\0' && *(p+wchar_size-1) == '\0') {
+ /* LE* */
+ le = 1;
+ break;
+ }
+ p += wchar_size;
+ }
+
+ if (wchar_size == 2) {
+ return le ? zend_multibyte_encoding_utf16le : zend_multibyte_encoding_utf16be;
+ } else {
+ return le ? zend_multibyte_encoding_utf32le : zend_multibyte_encoding_utf32be;
+ }
+
+ return NULL;
+}
+
+static const zend_encoding* zend_multibyte_detect_unicode(TSRMLS_D)
+{
+ const zend_encoding *script_encoding = NULL;
+ int bom_size;
+ unsigned char *script;
+ unsigned char *pos1, *pos2;
+
+ if (LANG_SCNG(script_org_size) < sizeof(BOM_UTF32_LE)-1) {
+ return NULL;
+ }
+
+ /* check out BOM */
+ if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_BE, sizeof(BOM_UTF32_BE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf32be;
+ bom_size = sizeof(BOM_UTF32_BE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF32_LE, sizeof(BOM_UTF32_LE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf32le;
+ bom_size = sizeof(BOM_UTF32_LE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_BE, sizeof(BOM_UTF16_BE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf16be;
+ bom_size = sizeof(BOM_UTF16_BE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF16_LE, sizeof(BOM_UTF16_LE)-1)) {
+ script_encoding = zend_multibyte_encoding_utf16le;
+ bom_size = sizeof(BOM_UTF16_LE)-1;
+ } else if (!memcmp(LANG_SCNG(script_org), BOM_UTF8, sizeof(BOM_UTF8)-1)) {
+ script_encoding = zend_multibyte_encoding_utf8;
+ bom_size = sizeof(BOM_UTF8)-1;
+ }
+
+ if (script_encoding) {
+ /* remove BOM */
+ script = (unsigned char*)emalloc(LANG_SCNG(script_org_size)+1-bom_size);
+ memcpy(script, LANG_SCNG(script_org)+bom_size, LANG_SCNG(script_org_size)+1-bom_size);
+ efree(LANG_SCNG(script_org));
+ LANG_SCNG(script_org) = script;
+ LANG_SCNG(script_org_size) -= bom_size;
+
+ return script_encoding;
+ }
+
+ /* script contains NULL bytes -> auto-detection */
+ if ((pos1 = memchr(LANG_SCNG(script_org), 0, LANG_SCNG(script_org_size)))) {
+ /* check if the NULL byte is after the __HALT_COMPILER(); */
+ pos2 = LANG_SCNG(script_org);
+
+ while (pos1 - pos2 >= sizeof("__HALT_COMPILER();")-1) {
+ pos2 = memchr(pos2, '_', pos1 - pos2);
+ if (!pos2) break;
+ pos2++;
+ if (strncasecmp((char*)pos2, "_HALT_COMPILER", sizeof("_HALT_COMPILER")-1) == 0) {
+ pos2 += sizeof("_HALT_COMPILER")-1;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == '(') {
+ pos2++;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == ')') {
+ pos2++;
+ while (*pos2 == ' ' ||
+ *pos2 == '\t' ||
+ *pos2 == '\r' ||
+ *pos2 == '\n') {
+ pos2++;
+ }
+ if (*pos2 == ';') {
+ return NULL;
+ }
+ }
+ }
+ }
+ }
+ /* make best effort if BOM is missing */
+ return zend_multibyte_detect_utf_encoding(LANG_SCNG(script_org), LANG_SCNG(script_org_size) TSRMLS_CC);
+ }
+
+ return NULL;
+}
+
+static const zend_encoding* zend_multibyte_find_script_encoding(TSRMLS_D)
+{
+ const zend_encoding *script_encoding;
+
+ if (CG(detect_unicode)) {
+ /* check out bom(byte order mark) and see if containing wchars */
+ script_encoding = zend_multibyte_detect_unicode(TSRMLS_C);
+ if (script_encoding != NULL) {
+ /* bom or wchar detection is prior to 'script_encoding' option */
+ return script_encoding;
+ }
+ }
+
+ /* if no script_encoding specified, just leave alone */
+ if (!CG(script_encoding_list) || !CG(script_encoding_list_size)) {
+ return NULL;
+ }
+
+ /* if multiple encodings specified, detect automagically */
+ if (CG(script_encoding_list_size) > 1) {
+ return zend_multibyte_encoding_detector(LANG_SCNG(script_org), LANG_SCNG(script_org_size), CG(script_encoding_list), CG(script_encoding_list_size) TSRMLS_CC);
+ }
+
+ return CG(script_encoding_list)[0];
+}
+
+ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding TSRMLS_DC)
+{
+ const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
+ const zend_encoding *script_encoding = onetime_encoding ? onetime_encoding: zend_multibyte_find_script_encoding(TSRMLS_C);
+
+ if (!script_encoding) {
+ return FAILURE;
+ }
+
+ /* judge input/output filter */
+ LANG_SCNG(script_encoding) = script_encoding;
+ LANG_SCNG(input_filter) = NULL;
+ LANG_SCNG(output_filter) = NULL;
+
+ if (!internal_encoding || LANG_SCNG(script_encoding) == internal_encoding) {
+ if (!zend_multibyte_check_lexer_compatibility(LANG_SCNG(script_encoding))) {
+ /* and if not, work around w/ script_encoding -> utf-8 -> script_encoding conversion */
+ LANG_SCNG(input_filter) = zend_multibyte_script_encoding_filter;
+ LANG_SCNG(output_filter) = zend_multibyte_internal_encoding_filter;
+ } else {
+ LANG_SCNG(input_filter) = NULL;
+ LANG_SCNG(output_filter) = NULL;
+ }
+ return SUCCESS;
+ }
+
+ /* both script and internal encodings are incompatible w/ flex */
+ LANG_SCNG(input_filter) = zend_multibyte_script_encoding_filter;
+ LANG_SCNG(output_filter) = zend_multibyte_internal_encoding_filter;
+
+ return 0;
+}
ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC)
{
@@ -288,13 +480,13 @@ ZEND_API int open_file_for_scanning(zend_file_handle *file_handle TSRMLS_DC)
SCNG(input_filter)(&SCNG(script_filtered), &SCNG(script_filtered_size), SCNG(script_org), SCNG(script_org_size) TSRMLS_CC);
if (SCNG(script_filtered) == NULL) {
zend_error_noreturn(E_COMPILE_ERROR, "Could not convert the script from the detected "
- "encoding \"%s\" to a compatible encoding", LANG_SCNG(script_encoding)->name);
+ "encoding \"%s\" to a compatible encoding", zend_multibyte_get_encoding_name(LANG_SCNG(script_encoding)));
}
}
SCNG(yy_start) = SCNG(script_filtered) - offset;
yy_scan_buffer((char *)SCNG(script_filtered), SCNG(script_filtered_size) TSRMLS_CC);
} else {
- SCNG(yy_start) = buf - offset;
+ SCNG(yy_start) = (unsigned char *)buf - offset;
yy_scan_buffer(buf, size TSRMLS_CC);
}
} else {
@@ -443,7 +635,7 @@ ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename TSRMLS_D
SCNG(script_org) = (unsigned char *)estrdup(str->value.str.val);
SCNG(script_org_size) = str->value.str.len;
- zend_multibyte_set_filter(CG(internal_encoding) TSRMLS_CC);
+ zend_multibyte_set_filter(zend_multibyte_get_internal_encoding(TSRMLS_C) TSRMLS_CC);
if (!SCNG(input_filter)) {
SCNG(script_filtered) = (unsigned char*)emalloc(SCNG(script_org_size)+1);
@@ -617,7 +809,7 @@ ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter
/* calculate current position */
offset = original_offset = YYCURSOR - SCNG(yy_start);
if (old_input_filter && offset > 0) {
- zend_encoding *new_encoding = SCNG(script_encoding);
+ const zend_encoding *new_encoding = SCNG(script_encoding);
zend_encoding_filter new_filter = SCNG(input_filter);
SCNG(script_encoding) = old_encoding;
SCNG(input_filter) = old_input_filter;
@@ -839,7 +1031,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yymore_restart:
-#line 843 "Zend/zend_language_scanner.c"
+#line 1035 "Zend/zend_language_scanner.c"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
@@ -938,7 +1130,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy3:
YYDEBUG(3, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1631 "Zend/zend_language_scanner.l"
+#line 1823 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -998,7 +1190,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
HANDLE_NEWLINES(yytext, yyleng);
return T_INLINE_HTML;
}
-#line 1002 "Zend/zend_language_scanner.c"
+#line 1194 "Zend/zend_language_scanner.c"
yy4:
YYDEBUG(4, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1016,7 +1208,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy6:
YYDEBUG(6, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1619 "Zend/zend_language_scanner.l"
+#line 1811 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1028,14 +1220,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
goto inline_char_handler;
}
}
-#line 1032 "Zend/zend_language_scanner.c"
+#line 1224 "Zend/zend_language_scanner.c"
yy7:
YYDEBUG(7, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) == '=') goto yy43;
YYDEBUG(8, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1596 "Zend/zend_language_scanner.l"
+#line 1788 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1047,7 +1239,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
goto inline_char_handler;
}
}
-#line 1051 "Zend/zend_language_scanner.c"
+#line 1243 "Zend/zend_language_scanner.c"
yy9:
YYDEBUG(9, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1233,7 +1425,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(38, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1552 "Zend/zend_language_scanner.l"
+#line 1744 "Zend/zend_language_scanner.l"
{
YYCTYPE *bracket = zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1));
@@ -1250,7 +1442,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
BEGIN(ST_IN_SCRIPTING);
return T_OPEN_TAG;
}
-#line 1254 "Zend/zend_language_scanner.c"
+#line 1446 "Zend/zend_language_scanner.c"
yy39:
YYDEBUG(39, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1277,7 +1469,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(44, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1570 "Zend/zend_language_scanner.l"
+#line 1762 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1289,13 +1481,13 @@ int lex_scan(zval *zendlval TSRMLS_DC)
goto inline_char_handler;
}
}
-#line 1293 "Zend/zend_language_scanner.c"
+#line 1485 "Zend/zend_language_scanner.c"
yy45:
YYDEBUG(45, *YYCURSOR);
++YYCURSOR;
YYDEBUG(46, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1583 "Zend/zend_language_scanner.l"
+#line 1775 "Zend/zend_language_scanner.l"
{
if (CG(short_tags)) {
zendlval->value.str.val = yytext; /* no copying - intentional */
@@ -1307,7 +1499,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
goto inline_char_handler;
}
}
-#line 1311 "Zend/zend_language_scanner.c"
+#line 1503 "Zend/zend_language_scanner.c"
yy47:
YYDEBUG(47, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1334,7 +1526,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy51:
YYDEBUG(51, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1609 "Zend/zend_language_scanner.l"
+#line 1801 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -1343,7 +1535,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
BEGIN(ST_IN_SCRIPTING);
return T_OPEN_TAG;
}
-#line 1347 "Zend/zend_language_scanner.c"
+#line 1539 "Zend/zend_language_scanner.c"
yy52:
YYDEBUG(52, *YYCURSOR);
++YYCURSOR;
@@ -1414,7 +1606,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy56:
YYDEBUG(56, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2082 "Zend/zend_language_scanner.l"
+#line 2274 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -1455,7 +1647,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zend_scan_escape_string(zendlval, yytext, yyleng, '`' TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1459 "Zend/zend_language_scanner.c"
+#line 1651 "Zend/zend_language_scanner.c"
yy57:
YYDEBUG(57, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1466,12 +1658,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(59, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2026 "Zend/zend_language_scanner.l"
+#line 2218 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '`';
}
-#line 1475 "Zend/zend_language_scanner.c"
+#line 1667 "Zend/zend_language_scanner.c"
yy60:
YYDEBUG(60, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1481,14 +1673,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(62, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2013 "Zend/zend_language_scanner.l"
+#line 2205 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1492 "Zend/zend_language_scanner.c"
+#line 1684 "Zend/zend_language_scanner.c"
yy63:
YYDEBUG(63, *YYCURSOR);
yyaccept = 0;
@@ -1504,24 +1696,24 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy65:
YYDEBUG(65, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1713 "Zend/zend_language_scanner.l"
+#line 1905 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1514 "Zend/zend_language_scanner.c"
+#line 1706 "Zend/zend_language_scanner.c"
yy66:
YYDEBUG(66, *YYCURSOR);
++YYCURSOR;
YYDEBUG(67, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1345 "Zend/zend_language_scanner.l"
+#line 1537 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 1525 "Zend/zend_language_scanner.c"
+#line 1717 "Zend/zend_language_scanner.c"
yy68:
YYDEBUG(68, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1535,7 +1727,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(71, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1705 "Zend/zend_language_scanner.l"
+#line 1897 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1543,7 +1735,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1547 "Zend/zend_language_scanner.c"
+#line 1739 "Zend/zend_language_scanner.c"
yy72:
YYDEBUG(72, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1561,7 +1753,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(74, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1695 "Zend/zend_language_scanner.l"
+#line 1887 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1569,7 +1761,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1573 "Zend/zend_language_scanner.c"
+#line 1765 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_DOUBLE_QUOTES:
@@ -1637,7 +1829,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy78:
YYDEBUG(78, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2032 "Zend/zend_language_scanner.l"
+#line 2224 "Zend/zend_language_scanner.l"
{
if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) {
YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1;
@@ -1686,7 +1878,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zend_scan_escape_string(zendlval, yytext, yyleng, '"' TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1690 "Zend/zend_language_scanner.c"
+#line 1882 "Zend/zend_language_scanner.c"
yy79:
YYDEBUG(79, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1697,12 +1889,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(81, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2021 "Zend/zend_language_scanner.l"
+#line 2213 "Zend/zend_language_scanner.l"
{
BEGIN(ST_IN_SCRIPTING);
return '"';
}
-#line 1706 "Zend/zend_language_scanner.c"
+#line 1898 "Zend/zend_language_scanner.c"
yy82:
YYDEBUG(82, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1712,14 +1904,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(84, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2013 "Zend/zend_language_scanner.l"
+#line 2205 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1723 "Zend/zend_language_scanner.c"
+#line 1915 "Zend/zend_language_scanner.c"
yy85:
YYDEBUG(85, *YYCURSOR);
yyaccept = 0;
@@ -1735,24 +1927,24 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy87:
YYDEBUG(87, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1713 "Zend/zend_language_scanner.l"
+#line 1905 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1745 "Zend/zend_language_scanner.c"
+#line 1937 "Zend/zend_language_scanner.c"
yy88:
YYDEBUG(88, *YYCURSOR);
++YYCURSOR;
YYDEBUG(89, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1345 "Zend/zend_language_scanner.l"
+#line 1537 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 1756 "Zend/zend_language_scanner.c"
+#line 1948 "Zend/zend_language_scanner.c"
yy90:
YYDEBUG(90, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1766,7 +1958,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(93, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1705 "Zend/zend_language_scanner.l"
+#line 1897 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -1774,7 +1966,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1778 "Zend/zend_language_scanner.c"
+#line 1970 "Zend/zend_language_scanner.c"
yy94:
YYDEBUG(94, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1792,7 +1984,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(96, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1695 "Zend/zend_language_scanner.l"
+#line 1887 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -1800,7 +1992,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 1804 "Zend/zend_language_scanner.c"
+#line 1996 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_END_HEREDOC:
@@ -1811,7 +2003,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(100, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2000 "Zend/zend_language_scanner.l"
+#line 2192 "Zend/zend_language_scanner.l"
{
YYCURSOR += CG(heredoc_len) - 1;
yyleng = CG(heredoc_len);
@@ -1823,7 +2015,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
BEGIN(ST_IN_SCRIPTING);
return T_END_HEREDOC;
}
-#line 1827 "Zend/zend_language_scanner.c"
+#line 2019 "Zend/zend_language_scanner.c"
/* *********************************** */
yyc_ST_HEREDOC:
{
@@ -1885,7 +2077,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy104:
YYDEBUG(104, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2124 "Zend/zend_language_scanner.l"
+#line 2316 "Zend/zend_language_scanner.l"
{
int newline = 0;
@@ -1956,7 +2148,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zend_scan_escape_string(zendlval, yytext, yyleng - newline, 0 TSRMLS_CC);
return T_ENCAPSED_AND_WHITESPACE;
}
-#line 1960 "Zend/zend_language_scanner.c"
+#line 2152 "Zend/zend_language_scanner.c"
yy105:
YYDEBUG(105, *YYCURSOR);
yych = *++YYCURSOR;
@@ -1971,14 +2163,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(108, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2013 "Zend/zend_language_scanner.l"
+#line 2205 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = (long) '{';
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
yyless(1);
return T_CURLY_OPEN;
}
-#line 1982 "Zend/zend_language_scanner.c"
+#line 2174 "Zend/zend_language_scanner.c"
yy109:
YYDEBUG(109, *YYCURSOR);
yyaccept = 0;
@@ -1994,24 +2186,24 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy111:
YYDEBUG(111, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1713 "Zend/zend_language_scanner.l"
+#line 1905 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 2004 "Zend/zend_language_scanner.c"
+#line 2196 "Zend/zend_language_scanner.c"
yy112:
YYDEBUG(112, *YYCURSOR);
++YYCURSOR;
YYDEBUG(113, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1345 "Zend/zend_language_scanner.l"
+#line 1537 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC);
return T_DOLLAR_OPEN_CURLY_BRACES;
}
-#line 2015 "Zend/zend_language_scanner.c"
+#line 2207 "Zend/zend_language_scanner.c"
yy114:
YYDEBUG(114, *YYCURSOR);
yych = *++YYCURSOR;
@@ -2025,7 +2217,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(117, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1705 "Zend/zend_language_scanner.l"
+#line 1897 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 1);
yy_push_state(ST_VAR_OFFSET TSRMLS_CC);
@@ -2033,7 +2225,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 2037 "Zend/zend_language_scanner.c"
+#line 2229 "Zend/zend_language_scanner.c"
yy118:
YYDEBUG(118, *YYCURSOR);
yych = *++YYCURSOR;
@@ -2051,7 +2243,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(120, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1695 "Zend/zend_language_scanner.l"
+#line 1887 "Zend/zend_language_scanner.l"
{
yyless(yyleng - 3);
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
@@ -2059,7 +2251,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 2063 "Zend/zend_language_scanner.c"
+#line 2255 "Zend/zend_language_scanner.c"
}
/* *********************************** */
yyc_ST_IN_SCRIPTING:
@@ -2240,13 +2432,13 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy124:
YYDEBUG(124, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1736 "Zend/zend_language_scanner.l"
+#line 1928 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, yytext, yyleng);
zendlval->type = IS_STRING;
return T_STRING;
}
-#line 2250 "Zend/zend_language_scanner.c"
+#line 2442 "Zend/zend_language_scanner.c"
yy125:
YYDEBUG(125, *YYCURSOR);
yych = *++YYCURSOR;
@@ -2500,11 +2692,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy138:
YYDEBUG(138, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1334 "Zend/zend_language_scanner.l"
+#line 1526 "Zend/zend_language_scanner.l"
{
return yytext[0];
}
-#line 2508 "Zend/zend_language_scanner.c"
+#line 2700 "Zend/zend_language_scanner.c"
yy139:
YYDEBUG(139, *YYCURSOR);
++YYCURSOR;
@@ -2513,7 +2705,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy140:
YYDEBUG(140, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1009 "Zend/zend_language_scanner.l"
+#line 1201 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -2521,7 +2713,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
HANDLE_NEWLINES(yytext, yyleng);
return T_WHITESPACE;
}
-#line 2525 "Zend/zend_language_scanner.c"
+#line 2717 "Zend/zend_language_scanner.c"
yy141:
YYDEBUG(141, *YYCURSOR);
yych = *++YYCURSOR;
@@ -2532,11 +2724,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(143, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1038 "Zend/zend_language_scanner.l"
+#line 1230 "Zend/zend_language_scanner.l"
{
return T_NS_SEPARATOR;
}
-#line 2540 "Zend/zend_language_scanner.c"
+#line 2732 "Zend/zend_language_scanner.c"
yy144:
YYDEBUG(144, *YYCURSOR);
yych = *++YYCURSOR;
@@ -2790,18 +2982,18 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(168, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1339 "Zend/zend_language_scanner.l"
+#line 1531 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_IN_SCRIPTING TSRMLS_CC);
return '{';
}
-#line 2799 "Zend/zend_language_scanner.c"
+#line 2991 "Zend/zend_language_scanner.c"
yy169:
YYDEBUG(169, *YYCURSOR);
++YYCURSOR;
YYDEBUG(170, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1351 "Zend/zend_language_scanner.l"
+#line 1543 "Zend/zend_language_scanner.l"
{
RESET_DOC_COMMENT();
if (!zend_stack_is_empty(&SCNG(state_stack))) {
@@ -2809,7 +3001,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
return '}';
}
-#line 2813 "Zend/zend_language_scanner.c"
+#line 3005 "Zend/zend_language_scanner.c"
yy171:
YYDEBUG(171, *YYCURSOR);
yyaccept = 2;
@@ -2832,7 +3024,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy172:
YYDEBUG(172, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1377 "Zend/zend_language_scanner.l"
+#line 1569 "Zend/zend_language_scanner.l"
{
if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */
zendlval->value.lval = strtol(yytext, NULL, 0);
@@ -2853,7 +3045,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_LONG;
return T_LNUMBER;
}
-#line 2857 "Zend/zend_language_scanner.c"
+#line 3049 "Zend/zend_language_scanner.c"
yy173:
YYDEBUG(173, *YYCURSOR);
yyaccept = 2;
@@ -2881,7 +3073,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy176:
YYDEBUG(176, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1743 "Zend/zend_language_scanner.l"
+#line 1935 "Zend/zend_language_scanner.l"
{
while (YYCURSOR < YYLIMIT) {
switch (*YYCURSOR++) {
@@ -2915,14 +3107,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
return T_COMMENT;
}
-#line 2919 "Zend/zend_language_scanner.c"
+#line 3111 "Zend/zend_language_scanner.c"
yy177:
YYDEBUG(177, *YYCURSOR);
++YYCURSOR;
yy178:
YYDEBUG(178, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1834 "Zend/zend_language_scanner.l"
+#line 2026 "Zend/zend_language_scanner.l"
{
register char *s, *t;
char *end;
@@ -2990,14 +3182,14 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
return T_CONSTANT_ENCAPSED_STRING;
}
-#line 2994 "Zend/zend_language_scanner.c"
+#line 3186 "Zend/zend_language_scanner.c"
yy179:
YYDEBUG(179, *YYCURSOR);
++YYCURSOR;
yy180:
YYDEBUG(180, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1903 "Zend/zend_language_scanner.l"
+#line 2095 "Zend/zend_language_scanner.l"
{
int bprefix = (yytext[0] != '"') ? 1 : 0;
@@ -3038,24 +3230,24 @@ int lex_scan(zval *zendlval TSRMLS_DC)
BEGIN(ST_DOUBLE_QUOTES);
return '"';
}
-#line 3042 "Zend/zend_language_scanner.c"
+#line 3234 "Zend/zend_language_scanner.c"
yy181:
YYDEBUG(181, *YYCURSOR);
++YYCURSOR;
YYDEBUG(182, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1994 "Zend/zend_language_scanner.l"
+#line 2186 "Zend/zend_language_scanner.l"
{
BEGIN(ST_BACKQUOTE);
return '`';
}
-#line 3053 "Zend/zend_language_scanner.c"
+#line 3245 "Zend/zend_language_scanner.c"
yy183:
YYDEBUG(183, *YYCURSOR);
++YYCURSOR;
YYDEBUG(184, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 2252 "Zend/zend_language_scanner.l"
+#line 2444 "Zend/zend_language_scanner.l"
{
if (YYCURSOR > YYLIMIT) {
return 0;
@@ -3064,7 +3256,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE);
goto restart;
}
-#line 3068 "Zend/zend_language_scanner.c"
+#line 3260 "Zend/zend_language_scanner.c"
yy185:
YYDEBUG(185, *YYCURSOR);
++YYCURSOR;
@@ -3091,13 +3283,13 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy189:
YYDEBUG(189, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1438 "Zend/zend_language_scanner.l"
+#line 1630 "Zend/zend_language_scanner.l"
{
zendlval->value.dval = zend_strtod(yytext, NULL);
zendlval->type = IS_DOUBLE;
return T_DNUMBER;
}
-#line 3101 "Zend/zend_language_scanner.c"
+#line 3293 "Zend/zend_language_scanner.c"
yy190:
YYDEBUG(190, *YYCURSOR);
yyaccept = 2;
@@ -3182,7 +3374,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(200, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1398 "Zend/zend_language_scanner.l"
+#line 1590 "Zend/zend_language_scanner.l"
{
char *hex = yytext + 2; /* Skip "0x" */
int len = yyleng - 2;
@@ -3203,7 +3395,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
return T_DNUMBER;
}
}
-#line 3207 "Zend/zend_language_scanner.c"
+#line 3399 "Zend/zend_language_scanner.c"
yy201:
YYDEBUG(201, *YYCURSOR);
++YYCURSOR;
@@ -3212,7 +3404,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy202:
YYDEBUG(202, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1811 "Zend/zend_language_scanner.l"
+#line 2003 "Zend/zend_language_scanner.l"
{
zendlval->value.str.val = yytext; /* no copying - intentional */
zendlval->value.str.len = yyleng;
@@ -3220,7 +3412,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
BEGIN(INITIAL);
return T_CLOSE_TAG; /* implicit ';' at php-end tag */
}
-#line 3224 "Zend/zend_language_scanner.c"
+#line 3416 "Zend/zend_language_scanner.c"
yy203:
YYDEBUG(203, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3254,13 +3446,13 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy207:
YYDEBUG(207, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1713 "Zend/zend_language_scanner.l"
+#line 1905 "Zend/zend_language_scanner.l"
{
zend_copy_value(zendlval, (yytext+1), (yyleng-1));
zendlval->type = IS_STRING;
return T_VARIABLE;
}
-#line 3264 "Zend/zend_language_scanner.c"
+#line 3456 "Zend/zend_language_scanner.c"
yy208:
YYDEBUG(208, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3274,61 +3466,61 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(210, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1322 "Zend/zend_language_scanner.l"
+#line 1514 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_XOR;
}
-#line 3282 "Zend/zend_language_scanner.c"
+#line 3474 "Zend/zend_language_scanner.c"
yy211:
YYDEBUG(211, *YYCURSOR);
++YYCURSOR;
YYDEBUG(212, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1302 "Zend/zend_language_scanner.l"
+#line 1494 "Zend/zend_language_scanner.l"
{
return T_XOR_EQUAL;
}
-#line 3292 "Zend/zend_language_scanner.c"
+#line 3484 "Zend/zend_language_scanner.c"
yy213:
YYDEBUG(213, *YYCURSOR);
++YYCURSOR;
YYDEBUG(214, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1306 "Zend/zend_language_scanner.l"
+#line 1498 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_OR;
}
-#line 3302 "Zend/zend_language_scanner.c"
+#line 3494 "Zend/zend_language_scanner.c"
yy215:
YYDEBUG(215, *YYCURSOR);
++YYCURSOR;
YYDEBUG(216, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1298 "Zend/zend_language_scanner.l"
+#line 1490 "Zend/zend_language_scanner.l"
{
return T_OR_EQUAL;
}
-#line 3312 "Zend/zend_language_scanner.c"
+#line 3504 "Zend/zend_language_scanner.c"
yy217:
YYDEBUG(217, *YYCURSOR);
++YYCURSOR;
YYDEBUG(218, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1310 "Zend/zend_language_scanner.l"
+#line 1502 "Zend/zend_language_scanner.l"
{
return T_BOOLEAN_AND;
}
-#line 3322 "Zend/zend_language_scanner.c"
+#line 3514 "Zend/zend_language_scanner.c"
yy219:
YYDEBUG(219, *YYCURSOR);
++YYCURSOR;
YYDEBUG(220, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1294 "Zend/zend_language_scanner.l"
+#line 1486 "Zend/zend_language_scanner.l"
{
return T_AND_EQUAL;
}
-#line 3332 "Zend/zend_language_scanner.c"
+#line 3524 "Zend/zend_language_scanner.c"
yy221:
YYDEBUG(221, *YYCURSOR);
++YYCURSOR;
@@ -3337,7 +3529,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy222:
YYDEBUG(222, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1820 "Zend/zend_language_scanner.l"
+#line 2012 "Zend/zend_language_scanner.l"
{
if (CG(asp_tags)) {
BEGIN(INITIAL);
@@ -3350,17 +3542,17 @@ int lex_scan(zval *zendlval TSRMLS_DC)
return yytext[0];
}
}
-#line 3354 "Zend/zend_language_scanner.c"
+#line 3546 "Zend/zend_language_scanner.c"
yy223:
YYDEBUG(223, *YYCURSOR);
++YYCURSOR;
YYDEBUG(224, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1282 "Zend/zend_language_scanner.l"
+#line 1474 "Zend/zend_language_scanner.l"
{
return T_MOD_EQUAL;
}
-#line 3364 "Zend/zend_language_scanner.c"
+#line 3556 "Zend/zend_language_scanner.c"
yy225:
YYDEBUG(225, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3391,11 +3583,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(230, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1278 "Zend/zend_language_scanner.l"
+#line 1470 "Zend/zend_language_scanner.l"
{
return T_CONCAT_EQUAL;
}
-#line 3399 "Zend/zend_language_scanner.c"
+#line 3591 "Zend/zend_language_scanner.c"
yy231:
YYDEBUG(231, *YYCURSOR);
yyaccept = 4;
@@ -3404,7 +3596,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy232:
YYDEBUG(232, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1777 "Zend/zend_language_scanner.l"
+#line 1969 "Zend/zend_language_scanner.l"
{
int doc_com;
@@ -3438,7 +3630,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
return T_COMMENT;
}
-#line 3442 "Zend/zend_language_scanner.c"
+#line 3634 "Zend/zend_language_scanner.c"
yy233:
YYDEBUG(233, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3448,11 +3640,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(235, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1274 "Zend/zend_language_scanner.l"
+#line 1466 "Zend/zend_language_scanner.l"
{
return T_DIV_EQUAL;
}
-#line 3456 "Zend/zend_language_scanner.c"
+#line 3648 "Zend/zend_language_scanner.c"
yy236:
YYDEBUG(236, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3475,42 +3667,42 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(240, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1270 "Zend/zend_language_scanner.l"
+#line 1462 "Zend/zend_language_scanner.l"
{
return T_MUL_EQUAL;
}
-#line 3483 "Zend/zend_language_scanner.c"
+#line 3675 "Zend/zend_language_scanner.c"
yy241:
YYDEBUG(241, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) == '=') goto yy245;
YYDEBUG(242, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1330 "Zend/zend_language_scanner.l"
+#line 1522 "Zend/zend_language_scanner.l"
{
return T_SR;
}
-#line 3494 "Zend/zend_language_scanner.c"
+#line 3686 "Zend/zend_language_scanner.c"
yy243:
YYDEBUG(243, *YYCURSOR);
++YYCURSOR;
YYDEBUG(244, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1258 "Zend/zend_language_scanner.l"
+#line 1450 "Zend/zend_language_scanner.l"
{
return T_IS_GREATER_OR_EQUAL;
}
-#line 3504 "Zend/zend_language_scanner.c"
+#line 3696 "Zend/zend_language_scanner.c"
yy245:
YYDEBUG(245, *YYCURSOR);
++YYCURSOR;
YYDEBUG(246, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1290 "Zend/zend_language_scanner.l"
+#line 1482 "Zend/zend_language_scanner.l"
{
return T_SR_EQUAL;
}
-#line 3514 "Zend/zend_language_scanner.c"
+#line 3706 "Zend/zend_language_scanner.c"
yy247:
YYDEBUG(247, *YYCURSOR);
yyaccept = 5;
@@ -3521,11 +3713,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy248:
YYDEBUG(248, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1326 "Zend/zend_language_scanner.l"
+#line 1518 "Zend/zend_language_scanner.l"
{
return T_SL;
}
-#line 3529 "Zend/zend_language_scanner.c"
+#line 3721 "Zend/zend_language_scanner.c"
yy249:
YYDEBUG(249, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3537,22 +3729,22 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(251, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1254 "Zend/zend_language_scanner.l"
+#line 1446 "Zend/zend_language_scanner.l"
{
return T_IS_SMALLER_OR_EQUAL;
}
-#line 3545 "Zend/zend_language_scanner.c"
+#line 3737 "Zend/zend_language_scanner.c"
yy252:
YYDEBUG(252, *YYCURSOR);
++YYCURSOR;
yy253:
YYDEBUG(253, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1250 "Zend/zend_language_scanner.l"
+#line 1442 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_EQUAL;
}
-#line 3556 "Zend/zend_language_scanner.c"
+#line 3748 "Zend/zend_language_scanner.c"
yy254:
YYDEBUG(254, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3603,11 +3795,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(262, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1286 "Zend/zend_language_scanner.l"
+#line 1478 "Zend/zend_language_scanner.l"
{
return T_SL_EQUAL;
}
-#line 3611 "Zend/zend_language_scanner.c"
+#line 3803 "Zend/zend_language_scanner.c"
yy263:
YYDEBUG(263, *YYCURSOR);
++YYCURSOR;
@@ -3712,7 +3904,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy273:
YYDEBUG(273, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1945 "Zend/zend_language_scanner.l"
+#line 2137 "Zend/zend_language_scanner.l"
{
char *s;
int bprefix = (yytext[0] != '<') ? 1 : 0;
@@ -3760,7 +3952,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
return T_START_HEREDOC;
}
-#line 3764 "Zend/zend_language_scanner.c"
+#line 3956 "Zend/zend_language_scanner.c"
yy274:
YYDEBUG(274, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3800,31 +3992,31 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(279, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1242 "Zend/zend_language_scanner.l"
+#line 1434 "Zend/zend_language_scanner.l"
{
return T_IS_NOT_IDENTICAL;
}
-#line 3808 "Zend/zend_language_scanner.c"
+#line 4000 "Zend/zend_language_scanner.c"
yy280:
YYDEBUG(280, *YYCURSOR);
++YYCURSOR;
YYDEBUG(281, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1262 "Zend/zend_language_scanner.l"
+#line 1454 "Zend/zend_language_scanner.l"
{
return T_PLUS_EQUAL;
}
-#line 3818 "Zend/zend_language_scanner.c"
+#line 4010 "Zend/zend_language_scanner.c"
yy282:
YYDEBUG(282, *YYCURSOR);
++YYCURSOR;
YYDEBUG(283, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1230 "Zend/zend_language_scanner.l"
+#line 1422 "Zend/zend_language_scanner.l"
{
return T_INC;
}
-#line 3828 "Zend/zend_language_scanner.c"
+#line 4020 "Zend/zend_language_scanner.c"
yy284:
YYDEBUG(284, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3839,11 +4031,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(286, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1314 "Zend/zend_language_scanner.l"
+#line 1506 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_OR;
}
-#line 3847 "Zend/zend_language_scanner.c"
+#line 4039 "Zend/zend_language_scanner.c"
yy287:
YYDEBUG(287, *YYCURSOR);
yych = *++YYCURSOR;
@@ -3922,12 +4114,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(296, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1225 "Zend/zend_language_scanner.l"
+#line 1417 "Zend/zend_language_scanner.l"
{
yyless((sizeof("object") - 1));
return T_OBJECT_HINT;
}
-#line 3931 "Zend/zend_language_scanner.c"
+#line 4123 "Zend/zend_language_scanner.c"
yy297:
YYDEBUG(297, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4020,7 +4212,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(306, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1198 "Zend/zend_language_scanner.l"
+#line 1390 "Zend/zend_language_scanner.l"
{
if (yytext[3] == 'e') {
yyless((sizeof("integer") - 1));
@@ -4031,7 +4223,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
return T_INT_HINT;
}
-#line 4035 "Zend/zend_language_scanner.c"
+#line 4227 "Zend/zend_language_scanner.c"
yy307:
YYDEBUG(307, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4045,42 +4237,42 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(309, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1166 "Zend/zend_language_scanner.l"
+#line 1358 "Zend/zend_language_scanner.l"
{
return T_LIST;
}
-#line 4053 "Zend/zend_language_scanner.c"
+#line 4245 "Zend/zend_language_scanner.c"
yy310:
YYDEBUG(310, *YYCURSOR);
++YYCURSOR;
if ((yych = *YYCURSOR) == '=') goto yy314;
YYDEBUG(311, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1246 "Zend/zend_language_scanner.l"
+#line 1438 "Zend/zend_language_scanner.l"
{
return T_IS_EQUAL;
}
-#line 4064 "Zend/zend_language_scanner.c"
+#line 4256 "Zend/zend_language_scanner.c"
yy312:
YYDEBUG(312, *YYCURSOR);
++YYCURSOR;
YYDEBUG(313, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1162 "Zend/zend_language_scanner.l"
+#line 1354 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_ARROW;
}
-#line 4074 "Zend/zend_language_scanner.c"
+#line 4266 "Zend/zend_language_scanner.c"
yy314:
YYDEBUG(314, *YYCURSOR);
++YYCURSOR;
YYDEBUG(315, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1238 "Zend/zend_language_scanner.l"
+#line 1430 "Zend/zend_language_scanner.l"
{
return T_IS_IDENTICAL;
}
-#line 4084 "Zend/zend_language_scanner.c"
+#line 4276 "Zend/zend_language_scanner.c"
yy316:
YYDEBUG(316, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4202,7 +4394,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(334, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1542 "Zend/zend_language_scanner.l"
+#line 1734 "Zend/zend_language_scanner.l"
{
if (CG(current_namespace)) {
*zendlval = *CG(current_namespace);
@@ -4212,7 +4404,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
return T_NS_C;
}
-#line 4216 "Zend/zend_language_scanner.c"
+#line 4408 "Zend/zend_language_scanner.c"
yy335:
YYDEBUG(335, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4232,7 +4424,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(339, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1515 "Zend/zend_language_scanner.l"
+#line 1707 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
const size_t filename_len = strlen(filename);
@@ -4259,7 +4451,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_DIR;
}
-#line 4263 "Zend/zend_language_scanner.c"
+#line 4455 "Zend/zend_language_scanner.c"
yy340:
YYDEBUG(340, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4284,13 +4476,13 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(345, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1497 "Zend/zend_language_scanner.l"
+#line 1689 "Zend/zend_language_scanner.l"
{
zendlval->value.lval = CG(zend_lineno);
zendlval->type = IS_LONG;
return T_LINE;
}
-#line 4294 "Zend/zend_language_scanner.c"
+#line 4486 "Zend/zend_language_scanner.c"
yy346:
YYDEBUG(346, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4325,7 +4517,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(353, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1476 "Zend/zend_language_scanner.l"
+#line 1668 "Zend/zend_language_scanner.l"
{
char *class_name = CG(active_class_entry) ? CG(active_class_entry)->name : NULL;
char *func_name = CG(active_op_array)? CG(active_op_array)->function_name : NULL;
@@ -4346,7 +4538,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_METHOD_C;
}
-#line 4350 "Zend/zend_language_scanner.c"
+#line 4542 "Zend/zend_language_scanner.c"
yy354:
YYDEBUG(354, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4397,7 +4589,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(364, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1460 "Zend/zend_language_scanner.l"
+#line 1652 "Zend/zend_language_scanner.l"
{
char *func_name = NULL;
@@ -4413,7 +4605,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_FUNC_C;
}
-#line 4417 "Zend/zend_language_scanner.c"
+#line 4609 "Zend/zend_language_scanner.c"
yy365:
YYDEBUG(365, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4433,7 +4625,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(369, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1503 "Zend/zend_language_scanner.l"
+#line 1695 "Zend/zend_language_scanner.l"
{
char *filename = zend_get_compiled_filename(TSRMLS_C);
@@ -4445,7 +4637,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_FILE;
}
-#line 4449 "Zend/zend_language_scanner.c"
+#line 4641 "Zend/zend_language_scanner.c"
yy370:
YYDEBUG(370, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4475,7 +4667,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(376, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1444 "Zend/zend_language_scanner.l"
+#line 1636 "Zend/zend_language_scanner.l"
{
char *class_name = NULL;
@@ -4491,7 +4683,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
zendlval->type = IS_STRING;
return T_CLASS_C;
}
-#line 4495 "Zend/zend_language_scanner.c"
+#line 4687 "Zend/zend_language_scanner.c"
yy377:
YYDEBUG(377, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4553,11 +4745,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(389, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1130 "Zend/zend_language_scanner.l"
+#line 1322 "Zend/zend_language_scanner.l"
{
return T_HALT_COMPILER;
}
-#line 4561 "Zend/zend_language_scanner.c"
+#line 4753 "Zend/zend_language_scanner.c"
yy390:
YYDEBUG(390, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4577,11 +4769,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(393, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1110 "Zend/zend_language_scanner.l"
+#line 1302 "Zend/zend_language_scanner.l"
{
return T_USE;
}
-#line 4585 "Zend/zend_language_scanner.c"
+#line 4777 "Zend/zend_language_scanner.c"
yy394:
YYDEBUG(394, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4600,11 +4792,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(397, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1158 "Zend/zend_language_scanner.l"
+#line 1350 "Zend/zend_language_scanner.l"
{
return T_UNSET;
}
-#line 4608 "Zend/zend_language_scanner.c"
+#line 4800 "Zend/zend_language_scanner.c"
yy398:
YYDEBUG(398, *YYCURSOR);
++YYCURSOR;
@@ -4786,11 +4978,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(415, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1054 "Zend/zend_language_scanner.l"
+#line 1246 "Zend/zend_language_scanner.l"
{
return T_INT_CAST;
}
-#line 4794 "Zend/zend_language_scanner.c"
+#line 4986 "Zend/zend_language_scanner.c"
yy416:
YYDEBUG(416, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4834,11 +5026,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(424, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1058 "Zend/zend_language_scanner.l"
+#line 1250 "Zend/zend_language_scanner.l"
{
return T_DOUBLE_CAST;
}
-#line 4842 "Zend/zend_language_scanner.c"
+#line 5034 "Zend/zend_language_scanner.c"
yy425:
YYDEBUG(425, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4914,11 +5106,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(439, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1066 "Zend/zend_language_scanner.l"
+#line 1258 "Zend/zend_language_scanner.l"
{
return T_SCALAR_CAST;
}
-#line 4922 "Zend/zend_language_scanner.c"
+#line 5114 "Zend/zend_language_scanner.c"
yy440:
YYDEBUG(440, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4951,11 +5143,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(446, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1062 "Zend/zend_language_scanner.l"
+#line 1254 "Zend/zend_language_scanner.l"
{
return T_STRING_CAST;
}
-#line 4959 "Zend/zend_language_scanner.c"
+#line 5151 "Zend/zend_language_scanner.c"
yy447:
YYDEBUG(447, *YYCURSOR);
yych = *++YYCURSOR;
@@ -4988,11 +5180,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(453, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1070 "Zend/zend_language_scanner.l"
+#line 1262 "Zend/zend_language_scanner.l"
{
return T_ARRAY_CAST;
}
-#line 4996 "Zend/zend_language_scanner.c"
+#line 5188 "Zend/zend_language_scanner.c"
yy454:
YYDEBUG(454, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5030,11 +5222,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(461, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1074 "Zend/zend_language_scanner.l"
+#line 1266 "Zend/zend_language_scanner.l"
{
return T_OBJECT_CAST;
}
-#line 5038 "Zend/zend_language_scanner.c"
+#line 5230 "Zend/zend_language_scanner.c"
yy462:
YYDEBUG(462, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5075,11 +5267,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(469, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1078 "Zend/zend_language_scanner.l"
+#line 1270 "Zend/zend_language_scanner.l"
{
return T_BOOL_CAST;
}
-#line 5083 "Zend/zend_language_scanner.c"
+#line 5275 "Zend/zend_language_scanner.c"
yy470:
YYDEBUG(470, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5139,11 +5331,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(481, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1082 "Zend/zend_language_scanner.l"
+#line 1274 "Zend/zend_language_scanner.l"
{
return T_UNSET_CAST;
}
-#line 5147 "Zend/zend_language_scanner.c"
+#line 5339 "Zend/zend_language_scanner.c"
yy482:
YYDEBUG(482, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5157,11 +5349,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(484, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1050 "Zend/zend_language_scanner.l"
+#line 1242 "Zend/zend_language_scanner.l"
{
return T_VAR;
}
-#line 5165 "Zend/zend_language_scanner.c"
+#line 5357 "Zend/zend_language_scanner.c"
yy485:
YYDEBUG(485, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5275,12 +5467,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(498, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1193 "Zend/zend_language_scanner.l"
+#line 1385 "Zend/zend_language_scanner.l"
{
yyless(7);
return T_NUMERIC_HINT;
}
-#line 5284 "Zend/zend_language_scanner.c"
+#line 5476 "Zend/zend_language_scanner.c"
yy499:
YYDEBUG(499, *YYCURSOR);
++YYCURSOR;
@@ -5289,11 +5481,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(500, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1042 "Zend/zend_language_scanner.l"
+#line 1234 "Zend/zend_language_scanner.l"
{
return T_NEW;
}
-#line 5297 "Zend/zend_language_scanner.c"
+#line 5489 "Zend/zend_language_scanner.c"
yy501:
YYDEBUG(501, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5332,21 +5524,21 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(508, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1106 "Zend/zend_language_scanner.l"
+#line 1298 "Zend/zend_language_scanner.l"
{
return T_NAMESPACE;
}
-#line 5340 "Zend/zend_language_scanner.c"
+#line 5532 "Zend/zend_language_scanner.c"
yy509:
YYDEBUG(509, *YYCURSOR);
++YYCURSOR;
YYDEBUG(510, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1034 "Zend/zend_language_scanner.l"
+#line 1226 "Zend/zend_language_scanner.l"
{
return T_PAAMAYIM_NEKUDOTAYIM;
}
-#line 5350 "Zend/zend_language_scanner.c"
+#line 5542 "Zend/zend_language_scanner.c"
yy511:
YYDEBUG(511, *YYCURSOR);
++YYCURSOR;
@@ -5368,32 +5560,32 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(514, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1266 "Zend/zend_language_scanner.l"
+#line 1458 "Zend/zend_language_scanner.l"
{
return T_MINUS_EQUAL;
}
-#line 5376 "Zend/zend_language_scanner.c"
+#line 5568 "Zend/zend_language_scanner.c"
yy515:
YYDEBUG(515, *YYCURSOR);
++YYCURSOR;
YYDEBUG(516, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1234 "Zend/zend_language_scanner.l"
+#line 1426 "Zend/zend_language_scanner.l"
{
return T_DEC;
}
-#line 5386 "Zend/zend_language_scanner.c"
+#line 5578 "Zend/zend_language_scanner.c"
yy517:
YYDEBUG(517, *YYCURSOR);
++YYCURSOR;
YYDEBUG(518, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1004 "Zend/zend_language_scanner.l"
+#line 1196 "Zend/zend_language_scanner.l"
{
yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC);
return T_OBJECT_OPERATOR;
}
-#line 5397 "Zend/zend_language_scanner.c"
+#line 5589 "Zend/zend_language_scanner.c"
yy519:
YYDEBUG(519, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5438,11 +5630,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(525, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1154 "Zend/zend_language_scanner.l"
+#line 1346 "Zend/zend_language_scanner.l"
{
return T_PUBLIC;
}
-#line 5446 "Zend/zend_language_scanner.c"
+#line 5638 "Zend/zend_language_scanner.c"
yy526:
YYDEBUG(526, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5497,11 +5689,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(534, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1150 "Zend/zend_language_scanner.l"
+#line 1342 "Zend/zend_language_scanner.l"
{
return T_PROTECTED;
}
-#line 5505 "Zend/zend_language_scanner.c"
+#line 5697 "Zend/zend_language_scanner.c"
yy535:
YYDEBUG(535, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5531,11 +5723,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(540, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1146 "Zend/zend_language_scanner.l"
+#line 1338 "Zend/zend_language_scanner.l"
{
return T_PRIVATE;
}
-#line 5539 "Zend/zend_language_scanner.c"
+#line 5731 "Zend/zend_language_scanner.c"
yy541:
YYDEBUG(541, *YYCURSOR);
++YYCURSOR;
@@ -5544,11 +5736,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(542, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 980 "Zend/zend_language_scanner.l"
+#line 1172 "Zend/zend_language_scanner.l"
{
return T_PRINT;
}
-#line 5552 "Zend/zend_language_scanner.c"
+#line 5744 "Zend/zend_language_scanner.c"
yy543:
YYDEBUG(543, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5573,11 +5765,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(547, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 972 "Zend/zend_language_scanner.l"
+#line 1164 "Zend/zend_language_scanner.l"
{
return T_GOTO;
}
-#line 5581 "Zend/zend_language_scanner.c"
+#line 5773 "Zend/zend_language_scanner.c"
yy548:
YYDEBUG(548, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5601,11 +5793,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(552, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1118 "Zend/zend_language_scanner.l"
+#line 1310 "Zend/zend_language_scanner.l"
{
return T_GLOBAL;
}
-#line 5609 "Zend/zend_language_scanner.c"
+#line 5801 "Zend/zend_language_scanner.c"
yy553:
YYDEBUG(553, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5654,11 +5846,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(562, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 964 "Zend/zend_language_scanner.l"
+#line 1156 "Zend/zend_language_scanner.l"
{
return T_BREAK;
}
-#line 5662 "Zend/zend_language_scanner.c"
+#line 5854 "Zend/zend_language_scanner.c"
yy563:
YYDEBUG(563, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5763,7 +5955,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(570, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1174 "Zend/zend_language_scanner.l"
+#line 1366 "Zend/zend_language_scanner.l"
{
if (yytext[4] == 'e') {
yyless((sizeof("boolean") - 1));
@@ -5772,7 +5964,7 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
return T_BOOL_HINT;
}
-#line 5776 "Zend/zend_language_scanner.c"
+#line 5968 "Zend/zend_language_scanner.c"
yy571:
YYDEBUG(571, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5899,12 +6091,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(583, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1183 "Zend/zend_language_scanner.l"
+#line 1375 "Zend/zend_language_scanner.l"
{
yyless(6);
return T_STRING_HINT;
}
-#line 5908 "Zend/zend_language_scanner.c"
+#line 6100 "Zend/zend_language_scanner.c"
yy584:
YYDEBUG(584, *YYCURSOR);
yych = *++YYCURSOR;
@@ -5960,11 +6152,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(592, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 948 "Zend/zend_language_scanner.l"
+#line 1140 "Zend/zend_language_scanner.l"
{
return T_SWITCH;
}
-#line 5968 "Zend/zend_language_scanner.c"
+#line 6160 "Zend/zend_language_scanner.c"
yy593:
YYDEBUG(593, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6005,11 +6197,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(600, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1134 "Zend/zend_language_scanner.l"
+#line 1326 "Zend/zend_language_scanner.l"
{
return T_STATIC;
}
-#line 6013 "Zend/zend_language_scanner.c"
+#line 6205 "Zend/zend_language_scanner.c"
yy601:
YYDEBUG(601, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6101,12 +6293,12 @@ int lex_scan(zval *zendlval TSRMLS_DC)
++YYCURSOR;
YYDEBUG(610, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1188 "Zend/zend_language_scanner.l"
+#line 1380 "Zend/zend_language_scanner.l"
{
yyless(6);
return T_SCALAR_HINT;
}
-#line 6110 "Zend/zend_language_scanner.c"
+#line 6302 "Zend/zend_language_scanner.c"
yy611:
YYDEBUG(611, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6133,11 +6325,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(615, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 944 "Zend/zend_language_scanner.l"
+#line 1136 "Zend/zend_language_scanner.l"
{
return T_AS;
}
-#line 6141 "Zend/zend_language_scanner.c"
+#line 6333 "Zend/zend_language_scanner.c"
yy616:
YYDEBUG(616, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6156,11 +6348,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(619, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1170 "Zend/zend_language_scanner.l"
+#line 1362 "Zend/zend_language_scanner.l"
{
return T_ARRAY;
}
-#line 6164 "Zend/zend_language_scanner.c"
+#line 6356 "Zend/zend_language_scanner.c"
yy620:
YYDEBUG(620, *YYCURSOR);
++YYCURSOR;
@@ -6169,11 +6361,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(621, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1318 "Zend/zend_language_scanner.l"
+#line 1510 "Zend/zend_language_scanner.l"
{
return T_LOGICAL_AND;
}
-#line 6177 "Zend/zend_language_scanner.c"
+#line 6369 "Zend/zend_language_scanner.c"
yy622:
YYDEBUG(622, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6207,11 +6399,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(628, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1138 "Zend/zend_language_scanner.l"
+#line 1330 "Zend/zend_language_scanner.l"
{
return T_ABSTRACT;
}
-#line 6215 "Zend/zend_language_scanner.c"
+#line 6407 "Zend/zend_language_scanner.c"
yy629:
YYDEBUG(629, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6235,11 +6427,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(633, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 904 "Zend/zend_language_scanner.l"
+#line 1096 "Zend/zend_language_scanner.l"
{
return T_WHILE;
}
-#line 6243 "Zend/zend_language_scanner.c"
+#line 6435 "Zend/zend_language_scanner.c"
yy634:
YYDEBUG(634, *YYCURSOR);
++YYCURSOR;
@@ -6248,11 +6440,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(635, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 888 "Zend/zend_language_scanner.l"
+#line 1080 "Zend/zend_language_scanner.l"
{
return T_IF;
}
-#line 6256 "Zend/zend_language_scanner.c"
+#line 6448 "Zend/zend_language_scanner.c"
yy636:
YYDEBUG(636, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6304,11 +6496,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
}
YYDEBUG(642, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1122 "Zend/zend_language_scanner.l"
+#line 1314 "Zend/zend_language_scanner.l"
{
return T_ISSET;
}
-#line 6312 "Zend/zend_language_scanner.c"
+#line 6504 "Zend/zend_language_scanner.c"
yy643:
YYDEBUG(643, *YYCURSOR);
yych = *++YYCURSOR;
@@ -6404,11 +6596,11 @@ int lex_scan(zval *zendlval TSRMLS_DC)
yy650:
YYDEBUG(650, *YYCURSOR);
yyleng = YYCURSOR - SCNG(yy_text);
-#line 1090 "Zend/zend_language_scanner.l"