Index: Zend/zend_execute.c =================================================================== --- Zend/zend_execute.c (revision 300267) +++ Zend/zend_execute.c (working copy) @@ -619,7 +619,7 @@ } } -static inline int zend_verify_arg_error(const zend_function *zf, zend_uint arg_num, const char *need_msg, const char *need_kind, const char *given_msg, char *given_kind TSRMLS_DC) +static int zend_verify_arg_error(const zend_function *zf, zend_uint arg_num, const char *need_msg, const char *need_kind, const char *given_msg, char *given_kind TSRMLS_DC) { zend_execute_data *ptr = EG(current_execute_data)->prev_execute_data; char *fname = zf->common.function_name; @@ -642,26 +642,37 @@ return 0; } -static inline int zend_verify_arg_type(zend_function *zf, zend_uint arg_num, zval *arg, ulong fetch_type TSRMLS_DC) +static int zend_verify_null_arg(zend_function *zf, zend_uint arg_num, ulong fetch_type TSRMLS_DC) { zend_arg_info *cur_arg_info; char *need_msg; zend_class_entry *ce; - if (!zf->common.arg_info - || arg_num>zf->common.num_args) { - return 1; + cur_arg_info = &zf->common.arg_info[arg_num-1]; + + if (cur_arg_info->class_name) { + const char *class_name; + + need_msg = zend_verify_arg_class_kind(cur_arg_info, fetch_type, &class_name, &ce TSRMLS_CC); + return zend_verify_arg_error(zf, arg_num, need_msg, class_name, "none", "" TSRMLS_CC); + } else if (cur_arg_info->type_hint) { + return zend_verify_arg_error(zf, arg_num, "be of the type ", zend_get_type_by_const(cur_arg_info->type_hint), "none", "" TSRMLS_CC); } + return 1; +} +static int zend_verify_arg_type(zend_function *zf, zend_uint arg_num, zval **arg_ptr, ulong fetch_type TSRMLS_DC) +{ + zend_arg_info *cur_arg_info; + char *need_msg; + zend_class_entry *ce; + zval *arg = *arg_ptr; + cur_arg_info = &zf->common.arg_info[arg_num-1]; if (cur_arg_info->class_name) { const char *class_name; - if (!arg) { - need_msg = zend_verify_arg_class_kind(cur_arg_info, fetch_type, &class_name, &ce TSRMLS_CC); - return zend_verify_arg_error(zf, arg_num, need_msg, class_name, "none", "" TSRMLS_CC); - } if (Z_TYPE_P(arg) == IS_OBJECT) { need_msg = zend_verify_arg_class_kind(cur_arg_info, fetch_type, &class_name, &ce TSRMLS_CC); if (!ce || !instanceof_function(Z_OBJCE_P(arg), ce TSRMLS_CC)) { @@ -672,31 +683,82 @@ return zend_verify_arg_error(zf, arg_num, need_msg, class_name, zend_zval_type_name(arg), "" TSRMLS_CC); } } else if (cur_arg_info->type_hint) { - if (!arg) { - return zend_verify_arg_error(zf, arg_num, "be of the type ", zend_get_type_by_const(cur_arg_info->type_hint), "none", "" TSRMLS_CC); - } - /* existing type already matches the hint or forced type */ if (Z_TYPE_P(arg) == cur_arg_info->type_hint) { return 1; - } - /* NULL type given, check if parameter is optional */ - if (Z_TYPE_P(arg) == IS_NULL && cur_arg_info->allow_null) { + } else if (Z_TYPE_P(arg) == IS_NULL && cur_arg_info->allow_null) { return 1; - } + } else if (cur_arg_info->type_hint == IS_SCALAR) { + if (Z_TYPE_P(arg) != IS_NULL && + Z_TYPE_P(arg) != IS_ARRAY && + Z_TYPE_P(arg) != IS_OBJECT && + Z_TYPE_P(arg) != IS_RESOURCE) { + return 1; + } + } else if (cur_arg_info->type_hint == IS_NUMERIC) { + zend_uchar type; + long lval; + double dval; - if (cur_arg_info->type_hint == IS_SCALAR && Z_TYPE_P(arg) != IS_NULL && Z_TYPE_P(arg) != IS_ARRAY && Z_TYPE_P(arg) != IS_OBJECT && Z_TYPE_P(arg) != IS_RESOURCE) { - return 1; + if (Z_TYPE_P(arg) == IS_LONG || Z_TYPE_P(arg) == IS_DOUBLE) { + return 1; + } else if (!Z_ISREF_PP(arg_ptr)) { + /* perform auto-conversion only for non-references */ +#if 0 + if (Z_TYPE_P(arg) == IS_STRING) { + type = is_numeric_string(Z_STRVAL_P(arg), Z_STRLEN_P(arg), &lval, &dval, 0); + if (type != 0) { + SEPARATE_ZVAL_IF_NOT_REF(arg_ptr); + zval_dtor(*arg_ptr); + if (type == IS_LONG) { + ZVAL_LONG(*arg_ptr, lval); + } else { + ZVAL_DOUBLE(*arg_ptr, dval); + } + return 1; + } + } else { +#endif + SEPARATE_ZVAL_IF_NOT_REF(arg_ptr); + convert_scalar_to_number(*arg_ptr TSRMLS_CC); + if (Z_TYPE_PP(arg_ptr) == IS_LONG || Z_TYPE_PP(arg_ptr) == IS_DOUBLE) return 1; +#if 0 + } +#endif + } + } else if (!Z_ISREF_PP(arg_ptr)) { + /* perform auto-conversion only for non-references */ + switch (cur_arg_info->type_hint) { + case IS_BOOL: + convert_to_boolean_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_BOOL) return 1; + break; + case IS_LONG: + convert_to_long_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_LONG) return 1; + break; + case IS_DOUBLE: + convert_to_double_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_DOUBLE) return 1; + break; + case IS_STRING: + convert_to_string_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_STRING) return 1; +#if 0 + case IS_ARRAY: + convert_to_array_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_ARRAY) return 1; + break; + case IS_OBJECT: + convert_to_object_ex(arg_ptr); + if (Z_TYPE_PP(arg_ptr) == IS_OBJECT) return 1; + break; +#endif + default: + break; + } } - - if (cur_arg_info->type_hint == IS_NUMERIC && ( - (Z_TYPE_P(arg) == IS_LONG || Z_TYPE_P(arg) == IS_DOUBLE) - || (Z_TYPE_P(arg) == IS_STRING && is_numeric_string(Z_STRVAL_P(arg), Z_STRLEN_P(arg), NULL, NULL, 0)) - )) { - return 1; - } - return zend_verify_arg_error(zf, arg_num, "be of the type ", zend_get_type_by_const(cur_arg_info->type_hint), "", zend_zval_type_name(arg) TSRMLS_CC); } return 1; Index: Zend/zend_language_scanner_defs.h =================================================================== --- Zend/zend_language_scanner_defs.h (revision 300267) +++ Zend/zend_language_scanner_defs.h (working copy) @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Mon May 24 14:07:57 2010 */ +/* Generated by re2c 0.13.5 on Thu Jun 3 15:53:01 2010 */ #line 3 "Zend/zend_language_scanner_defs.h" enum YYCONDTYPE { Index: Zend/zend_compile.c =================================================================== --- Zend/zend_compile.c (revision 300267) +++ Zend/zend_compile.c (working copy) @@ -1846,66 +1846,107 @@ if (class_type->op_type != IS_UNUSED) { cur_arg_info->allow_null = 0; - cur_arg_info->type_hint = class_type->u.constant.type; - - switch (class_type->u.constant.type) { - case IS_CLASS: - if (ZEND_FETCH_CLASS_DEFAULT == zend_get_class_fetch_type(Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant))) { - zend_resolve_class_name(class_type, &opline->extended_value, 1 TSRMLS_CC); + + if (class_type->u.constant.type == IS_STRING) { + if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "int", sizeof("int")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "integer", sizeof("integer")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "long", sizeof("long")-1)) { + cur_arg_info->type_hint = IS_LONG; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "real", sizeof("real")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "double", sizeof("double")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "float", sizeof("float")-1)) { + cur_arg_info->type_hint = IS_DOUBLE; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "string", sizeof("string")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "binary", sizeof("binary")-1)) { + cur_arg_info->type_hint = IS_STRING; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "bool", sizeof("bool")-1) || + !zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "boolean", sizeof("boolean")-1)) { + cur_arg_info->type_hint = IS_BOOL; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "object", sizeof("object")-1)) { + cur_arg_info->type_hint = IS_OBJECT; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "resource", sizeof("resource")-1)) { + cur_arg_info->type_hint = IS_RESOURCE; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "scalar", sizeof("scalar")-1)) { + cur_arg_info->type_hint = IS_SCALAR; + zval_dtor(&class_type->u.constant); + } else if (!zend_binary_strcasecmp( + Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant), + "numeric", sizeof("numeric")-1)) { + cur_arg_info->type_hint = IS_NUMERIC; + zval_dtor(&class_type->u.constant); + } else { + /* class name */ + cur_arg_info->type_hint = IS_CLASS; + if (ZEND_FETCH_CLASS_DEFAULT == zend_get_class_fetch_type(Z_STRVAL(class_type->u.constant), Z_STRLEN(class_type->u.constant))) { + zend_resolve_class_name(class_type, &opline->extended_value, 1 TSRMLS_CC); + } + class_type->u.constant.value.str.val = zend_new_interned_string(class_type->u.constant.value.str.val, class_type->u.constant.value.str.len + 1, 1 TSRMLS_CC); + cur_arg_info->class_name = class_type->u.constant.value.str.val; + cur_arg_info->class_name_len = class_type->u.constant.value.str.len; } - class_type->u.constant.value.str.val = zend_new_interned_string(class_type->u.constant.value.str.val, class_type->u.constant.value.str.len + 1, 1 TSRMLS_CC); - cur_arg_info->class_name = class_type->u.constant.value.str.val; - cur_arg_info->class_name_len = class_type->u.constant.value.str.len; - if (op == ZEND_RECV_INIT) { - if (Z_TYPE(initialization->u.constant) == IS_NULL || (Z_TYPE(initialization->u.constant) == IS_CONSTANT && !strcasecmp(Z_STRVAL(initialization->u.constant), "NULL"))) { - cur_arg_info->allow_null = 1; - } else { + } else { + cur_arg_info->type_hint = IS_ARRAY; + } + if (op == ZEND_RECV_INIT) { + if (Z_TYPE(initialization->u.constant) == IS_NULL || (Z_TYPE(initialization->u.constant) == IS_CONSTANT && !strcasecmp(Z_STRVAL(initialization->u.constant), "NULL"))) { + cur_arg_info->allow_null = 1; + } else { + if (cur_arg_info->type_hint == IS_CLASS) { zend_error(E_COMPILE_ERROR, "Default value for parameters with a class type hint can only be NULL"); + } else if (cur_arg_info->type_hint != Z_TYPE(initialization->u.constant)) { + if ((Z_TYPE(initialization->u.constant) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT) { + /* pass, check is delayed to run-time */ + } else if (cur_arg_info->type_hint == IS_NUMERIC && + (Z_TYPE(initialization->u.constant) == IS_LONG || + Z_TYPE(initialization->u.constant) == IS_DOUBLE)) { + /* pass */ + } else if (cur_arg_info->type_hint == IS_ARRAY && + Z_TYPE(initialization->u.constant) == IS_CONSTANT_ARRAY) { + /* pass */ + } else if (cur_arg_info->type_hint == IS_SCALAR) { + if (Z_TYPE(initialization->u.constant) == IS_CONSTANT_ARRAY) { + zend_error(E_COMPILE_ERROR, "Default value for parameters with scalar type hint can only be scalar or NULL"); + } + } else if (cur_arg_info->type_hint == IS_ARRAY && + Z_TYPE(initialization->u.constant) != IS_CONSTANT_ARRAY) { + zend_error(E_COMPILE_ERROR, "Default value for parameters with array type hint can only be an array or NULL"); + } else { + zend_error(E_COMPILE_ERROR, "Default value for parameter %d is incompatible with type hint", CG(active_op_array)->num_args); + } } } - break; - - case IS_ARRAY: - if (op == ZEND_RECV_INIT) { - if (Z_TYPE(initialization->u.constant) == IS_NULL || (Z_TYPE(initialization->u.constant) == IS_CONSTANT && !strcasecmp(Z_STRVAL(initialization->u.constant), "NULL"))) { - cur_arg_info->allow_null = 1; - } else if (Z_TYPE(initialization->u.constant) != IS_ARRAY && Z_TYPE(initialization->u.constant) != IS_CONSTANT_ARRAY) { - zend_error(E_COMPILE_ERROR, "Default value for parameters with array type hint can only be an array or NULL"); - } - } - break; - - /* scalar type hinting */ - case IS_SCALAR: - if (op == ZEND_RECV_INIT && Z_TYPE(initialization->u.constant) != IS_ARRAY && Z_TYPE(initialization->u.constant) != IS_CONSTANT_ARRAY) { - break; - } - /* fall through */ - - /* scalar type hinting */ - case IS_NUMERIC: - if (op == ZEND_RECV_INIT && (Z_TYPE(initialization->u.constant) == IS_LONG || Z_TYPE(initialization->u.constant) == IS_DOUBLE)) { - break; - } - /* fall through */ - - case IS_BOOL: - case IS_STRING: - case IS_LONG: - case IS_DOUBLE: - case IS_RESOURCE: - case IS_OBJECT: - if (op == ZEND_RECV_INIT) { - if (Z_TYPE(initialization->u.constant) != class_type->u.constant.type && Z_TYPE(initialization->u.constant) != IS_NULL && (Z_TYPE(initialization->u.constant) & IS_CONSTANT_TYPE_MASK) != IS_CONSTANT) { - zend_error(E_COMPILE_ERROR, "Default value for parameters with %s type hint can only be %s or NULL", zend_get_type_by_const(class_type->u.constant.type), zend_get_type_by_const(class_type->u.constant.type)); - } else if (Z_TYPE(initialization->u.constant) == IS_NULL) { - cur_arg_info->allow_null = 1; - } - } - break; - - default: - zend_error(E_COMPILE_ERROR, "Unknown type hint"); } } } Index: Zend/zend_language_parser.y =================================================================== --- Zend/zend_language_parser.y (revision 300267) +++ Zend/zend_language_parser.y (working copy) @@ -69,7 +69,7 @@ %left '*' '/' '%' %right '!' %nonassoc T_INSTANCEOF -%right '~' T_INC T_DEC T_INT_CAST T_NUMERIC_CAST T_SCALAR_CAST T_DOUBLE_CAST T_STRING_CAST T_ARRAY_CAST T_OBJECT_CAST T_BOOL_CAST T_UNSET_CAST '@' +%right '~' T_INC T_DEC T_INT_CAST T_NUMERIC_CAST T_DOUBLE_CAST T_STRING_CAST T_ARRAY_CAST T_OBJECT_CAST T_BOOL_CAST T_UNSET_CAST '@' %right '[' %nonassoc T_NEW T_CLONE %token T_EXIT @@ -130,14 +130,6 @@ %token T_DOUBLE_ARROW %token T_LIST %token T_ARRAY -%token T_BOOL_HINT -%token T_STRING_HINT -%token T_INT_HINT -%token T_DOUBLE_HINT -%token T_RESOURCE_HINT -%token T_OBJECT_HINT -%token T_SCALAR_HINT -%token T_NUMERIC_HINT %token T_CLASS_C %token T_METHOD_C %token T_FUNC_C @@ -471,22 +463,12 @@ | non_empty_parameter_list ',' optional_class_type T_VARIABLE '=' static_scalar { $$=$1; $$.u.op.num++; zend_do_receive_arg(ZEND_RECV_INIT, &$4, &$$, &$6, &$3, 0 TSRMLS_CC); } ; - optional_class_type: /* empty */ { $$.op_type = IS_UNUSED; } - | T_ARRAY { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_ARRAY; } - | T_BOOL_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_BOOL; } - | T_STRING_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_STRING; } - | T_INT_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_LONG; } - | T_DOUBLE_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_DOUBLE; } - | T_RESOURCE_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_RESOURCE; } - | T_OBJECT_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_OBJECT; } - | T_SCALAR_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_SCALAR; } - | T_NUMERIC_HINT { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_NUMERIC; } - | fully_qualified_class_name { $$ = $1; $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_CLASS; } + | fully_qualified_class_name { $$ = $1; } + | T_ARRAY { $$.op_type = IS_CONST; Z_TYPE($$.u.constant)=IS_NULL;} ; - function_call_parameter_list: non_empty_function_call_parameter_list { $$ = $1; } | /* empty */ { Z_LVAL($$.u.constant) = 0; } @@ -716,7 +698,6 @@ | T_ARRAY_CAST expr { zend_do_cast(&$$, &$2, IS_ARRAY TSRMLS_CC); } | T_OBJECT_CAST expr { zend_do_cast(&$$, &$2, IS_OBJECT TSRMLS_CC); } | T_BOOL_CAST expr { zend_do_cast(&$$, &$2, IS_BOOL TSRMLS_CC); } - | T_SCALAR_CAST expr { zend_do_cast(&$$, &$2, IS_SCALAR TSRMLS_CC); } | T_NUMERIC_CAST expr { zend_do_cast(&$$, &$2, IS_NUMERIC TSRMLS_CC); } | T_UNSET_CAST expr { zend_do_cast(&$$, &$2, IS_NULL TSRMLS_CC); } | T_EXIT exit_expr { zend_do_exit(&$$, &$2 TSRMLS_CC); } Index: Zend/zend_vm_def.h =================================================================== --- Zend/zend_vm_def.h (revision 300267) +++ Zend/zend_vm_def.h (working copy) @@ -2610,13 +2610,20 @@ ret->var.ptr_ptr = &ret->var.ptr; ret->var.fcall_returned_reference = fbc->common.return_reference; - if (fbc->common.arg_info) { + if (fbc->common.num_args) { zend_uint i=0; zval **p = (zval**)EX(function_state).arguments; ulong arg_count = opline->extended_value; + if (opline->extended_value > fbc->common.num_args) { + p -= opline->extended_value - fbc->common.num_args; + arg_count = fbc->common.num_args; + } + while (arg_count>0) { - zend_verify_arg_type(fbc, ++i, *(p-arg_count), 0 TSRMLS_CC); + if (fbc->common.arg_info[i++].type_hint) { + zend_verify_arg_type(fbc, i, p-arg_count, 0 TSRMLS_CC); + } arg_count--; } } @@ -3106,7 +3113,10 @@ SAVE_OPLINE(); if (UNEXPECTED(param == NULL)) { - if (zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, NULL, opline->extended_value TSRMLS_CC)) { + if (arg_num > EG(active_op_array)->num_args || + !EG(active_op_array)->arg_info[arg_num-1].type_hint || + zend_verify_null_arg((zend_function *) EG(active_op_array), arg_num, opline->extended_value TSRMLS_CC)) { + char *space; char *class_name; zend_execute_data *ptr; @@ -3128,7 +3138,11 @@ } else { zval **var_ptr; - zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, *param, opline->extended_value TSRMLS_CC); + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, param, opline->extended_value TSRMLS_CC); + } + } var_ptr = _get_zval_ptr_ptr_cv_BP_VAR_W(EX_CVs(), opline->result.var TSRMLS_CC); Z_DELREF_PP(var_ptr); *var_ptr = *param; @@ -3151,8 +3165,15 @@ if (param == NULL) { ALLOC_ZVAL(assignment_value); *assignment_value = *opline->op2.zv; - if ((Z_TYPE_P(assignment_value) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT || - Z_TYPE_P(assignment_value)==IS_CONSTANT_ARRAY) { + if ((Z_TYPE_P(assignment_value) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT) { + INIT_PZVAL(assignment_value); + zval_update_constant(&assignment_value, 0 TSRMLS_CC); + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, &assignment_value, opline->extended_value TSRMLS_CC); + } + } + } else if (Z_TYPE_P(assignment_value) == IS_CONSTANT_ARRAY) { Z_SET_REFCOUNT_P(assignment_value, 1); zval_update_constant(&assignment_value, 0 TSRMLS_CC); } else { @@ -3160,11 +3181,15 @@ } INIT_PZVAL(assignment_value); } else { + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, param, opline->extended_value TSRMLS_CC); + } + } assignment_value = *param; Z_ADDREF_P(assignment_value); } - zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, assignment_value, opline->extended_value TSRMLS_CC); var_ptr = _get_zval_ptr_ptr_cv_BP_VAR_W(EX_CVs(), opline->result.var TSRMLS_CC); Z_DELREF_PP(var_ptr); *var_ptr = assignment_value; @@ -3638,6 +3663,9 @@ case IS_OBJECT: convert_to_object(result); break; + case IS_NUMERIC: + convert_scalar_to_number(result TSRMLS_CC); + break; } FREE_OP1_IF_VAR(); CHECK_EXCEPTION(); Index: Zend/zend_language_scanner.c =================================================================== --- Zend/zend_language_scanner.c (revision 300267) +++ Zend/zend_language_scanner.c (working copy) @@ -1,4 +1,4 @@ -/* Generated by re2c 0.13.5 on Mon May 24 14:07:57 2010 */ +/* Generated by re2c 0.13.5 on Thu Jun 3 15:53:01 2010 */ #line 1 "Zend/zend_language_scanner.l" /* +----------------------------------------------------------------------+ @@ -939,7 +939,7 @@ yy3: YYDEBUG(3, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1632 "Zend/zend_language_scanner.l" +#line 1576 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1022,7 +1022,7 @@ yy6: YYDEBUG(6, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1620 "Zend/zend_language_scanner.l" +#line 1564 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1041,7 +1041,7 @@ if ((yych = *YYCURSOR) == '=') goto yy43; YYDEBUG(8, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1597 "Zend/zend_language_scanner.l" +#line 1541 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1239,7 +1239,7 @@ ++YYCURSOR; YYDEBUG(38, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1553 "Zend/zend_language_scanner.l" +#line 1497 "Zend/zend_language_scanner.l" { YYCTYPE *bracket = zend_memrchr(yytext, '<', yyleng - (sizeof("script language=php>") - 1)); @@ -1283,7 +1283,7 @@ ++YYCURSOR; YYDEBUG(44, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1571 "Zend/zend_language_scanner.l" +#line 1515 "Zend/zend_language_scanner.l" { if (CG(asp_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1301,7 +1301,7 @@ ++YYCURSOR; YYDEBUG(46, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1584 "Zend/zend_language_scanner.l" +#line 1528 "Zend/zend_language_scanner.l" { if (CG(short_tags)) { zendlval->value.str.val = yytext; /* no copying - intentional */ @@ -1340,7 +1340,7 @@ yy51: YYDEBUG(51, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1610 "Zend/zend_language_scanner.l" +#line 1554 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -1420,7 +1420,7 @@ yy56: YYDEBUG(56, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2090 "Zend/zend_language_scanner.l" +#line 2034 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -1472,7 +1472,7 @@ ++YYCURSOR; YYDEBUG(59, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2034 "Zend/zend_language_scanner.l" +#line 1978 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '`'; @@ -1487,7 +1487,7 @@ ++YYCURSOR; YYDEBUG(62, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2021 "Zend/zend_language_scanner.l" +#line 1965 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@ -1510,7 +1510,7 @@ yy65: YYDEBUG(65, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@ -1522,7 +1522,7 @@ ++YYCURSOR; YYDEBUG(67, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1346 "Zend/zend_language_scanner.l" +#line 1290 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@ -1541,7 +1541,7 @@ ++YYCURSOR; YYDEBUG(71, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1711 "Zend/zend_language_scanner.l" +#line 1655 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1567,7 +1567,7 @@ ++YYCURSOR; YYDEBUG(74, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1701 "Zend/zend_language_scanner.l" +#line 1645 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1643,7 +1643,7 @@ yy78: YYDEBUG(78, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2040 "Zend/zend_language_scanner.l" +#line 1984 "Zend/zend_language_scanner.l" { if (GET_DOUBLE_QUOTES_SCANNED_LENGTH()) { YYCURSOR += GET_DOUBLE_QUOTES_SCANNED_LENGTH() - 1; @@ -1703,7 +1703,7 @@ ++YYCURSOR; YYDEBUG(81, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2029 "Zend/zend_language_scanner.l" +#line 1973 "Zend/zend_language_scanner.l" { BEGIN(ST_IN_SCRIPTING); return '"'; @@ -1718,7 +1718,7 @@ ++YYCURSOR; YYDEBUG(84, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2021 "Zend/zend_language_scanner.l" +#line 1965 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@ -1741,7 +1741,7 @@ yy87: YYDEBUG(87, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@ -1753,7 +1753,7 @@ ++YYCURSOR; YYDEBUG(89, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1346 "Zend/zend_language_scanner.l" +#line 1290 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@ -1772,7 +1772,7 @@ ++YYCURSOR; YYDEBUG(93, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1711 "Zend/zend_language_scanner.l" +#line 1655 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -1798,7 +1798,7 @@ ++YYCURSOR; YYDEBUG(96, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1701 "Zend/zend_language_scanner.l" +#line 1645 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -1817,7 +1817,7 @@ ++YYCURSOR; YYDEBUG(100, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2008 "Zend/zend_language_scanner.l" +#line 1952 "Zend/zend_language_scanner.l" { YYCURSOR += CG(heredoc_len) - 1; yyleng = CG(heredoc_len); @@ -1891,7 +1891,7 @@ yy104: YYDEBUG(104, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2132 "Zend/zend_language_scanner.l" +#line 2076 "Zend/zend_language_scanner.l" { int newline = 0; @@ -1977,7 +1977,7 @@ ++YYCURSOR; YYDEBUG(108, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2021 "Zend/zend_language_scanner.l" +#line 1965 "Zend/zend_language_scanner.l" { zendlval->value.lval = (long) '{'; yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); @@ -2000,7 +2000,7 @@ yy111: YYDEBUG(111, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; @@ -2012,7 +2012,7 @@ ++YYCURSOR; YYDEBUG(113, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1346 "Zend/zend_language_scanner.l" +#line 1290 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_VARNAME TSRMLS_CC); return T_DOLLAR_OPEN_CURLY_BRACES; @@ -2031,7 +2031,7 @@ ++YYCURSOR; YYDEBUG(117, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1711 "Zend/zend_language_scanner.l" +#line 1655 "Zend/zend_language_scanner.l" { yyless(yyleng - 1); yy_push_state(ST_VAR_OFFSET TSRMLS_CC); @@ -2057,7 +2057,7 @@ ++YYCURSOR; YYDEBUG(120, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1701 "Zend/zend_language_scanner.l" +#line 1645 "Zend/zend_language_scanner.l" { yyless(yyleng - 3); yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); @@ -2072,37 +2072,37 @@ { static const unsigned char yybm[] = { 0, 0, 0, 0, 0, 0, 0, 0, - 0, 224, 160, 0, 0, 160, 0, 0, + 0, 192, 64, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 224, 0, 0, 0, 0, 0, 128, 0, + 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 28, 28, 28, 28, 28, 28, 28, 28, - 28, 28, 0, 0, 0, 0, 0, 0, - 0, 20, 20, 20, 20, 20, 20, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 4, - 0, 20, 20, 20, 20, 20, 20, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 0, 0, 0, 0, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, + 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 0, 0, 0, 0, 0, 0, + 0, 40, 40, 40, 40, 40, 40, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 0, 0, 0, 0, 8, + 0, 40, 40, 40, 40, 40, 40, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 0, 0, 0, 0, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, + 8, 8, 8, 8, 8, 8, 8, 8, }; YYDEBUG(121, *YYCURSOR); YYFILL(16); @@ -2142,12 +2142,12 @@ case '\n': case '\r': case ' ': goto yy139; - case '!': goto yy153; + case '!': goto yy152; case '"': goto yy179; case '#': goto yy175; case '$': goto yy164; - case '%': goto yy159; - case '&': goto yy160; + case '%': goto yy158; + case '&': goto yy159; case '\'': goto yy177; case '(': goto yy146; case ')': @@ -2157,11 +2157,11 @@ case '[': case ']': case '~': goto yy165; - case '*': goto yy156; - case '+': goto yy152; + case '*': goto yy155; + case '+': goto yy151; case '-': goto yy137; - case '.': goto yy158; - case '/': goto yy157; + case '.': goto yy157; + case '/': goto yy156; case '0': goto yy171; case '1': case '2': @@ -2173,9 +2173,9 @@ case '8': case '9': goto yy173; case ':': goto yy141; - case '<': goto yy154; + case '<': goto yy153; case '=': goto yy149; - case '>': goto yy155; + case '>': goto yy154; case '?': goto yy166; case 'A': case 'a': goto yy132; @@ -2198,7 +2198,7 @@ case 'N': case 'n': goto yy144; case 'O': - case 'o': goto yy151; + case 'o': goto yy162; case 'P': case 'p': goto yy136; case 'R': @@ -2216,11 +2216,11 @@ case 'X': case 'x': goto yy163; case '\\': goto yy142; - case '^': goto yy162; + case '^': goto yy161; case '_': goto yy148; case '`': goto yy181; case '{': goto yy167; - case '|': goto yy161; + case '|': goto yy160; case '}': goto yy169; default: goto yy174; } @@ -2230,23 +2230,23 @@ YYDEBUG(-1, yych); switch ((yych = *YYCURSOR)) { case 'C': - case 'c': goto yy812; + case 'c': goto yy720; case 'L': - case 'l': goto yy813; + case 'l': goto yy721; case 'M': - case 'm': goto yy814; + case 'm': goto yy722; case 'N': - case 'n': goto yy815; + case 'n': goto yy723; case 'V': - case 'v': goto yy816; + case 'v': goto yy724; case 'X': - case 'x': goto yy817; + case 'x': goto yy725; default: goto yy186; } yy124: YYDEBUG(124, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1742 "Zend/zend_language_scanner.l" +#line 1686 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; @@ -2258,20 +2258,20 @@ yych = *++YYCURSOR; if (yych <= 'O') { if (yych <= 'H') { - if (yych == 'E') goto yy791; + if (yych == 'E') goto yy702; goto yy186; } else { - if (yych <= 'I') goto yy792; + if (yych <= 'I') goto yy703; if (yych <= 'N') goto yy186; - goto yy793; + goto yy704; } } else { if (yych <= 'h') { - if (yych == 'e') goto yy791; + if (yych == 'e') goto yy702; goto yy186; } else { - if (yych <= 'i') goto yy792; - if (yych == 'o') goto yy793; + if (yych <= 'i') goto yy703; + if (yych == 'o') goto yy704; goto yy186; } } @@ -2279,28 +2279,22 @@ YYDEBUG(126, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'U') { - if (yych <= 'L') { - if (yych == 'I') goto yy767; - if (yych <= 'K') goto yy186; - goto yy768; + if (yych <= 'N') { + if (yych == 'I') goto yy681; + goto yy186; } else { - if (yych == 'O') goto yy769; + if (yych <= 'O') goto yy682; if (yych <= 'T') goto yy186; - goto yy770; + goto yy683; } } else { - if (yych <= 'l') { - if (yych == 'i') goto yy767; - if (yych <= 'k') goto yy186; - goto yy768; + if (yych <= 'n') { + if (yych == 'i') goto yy681; + goto yy186; } else { - if (yych <= 'o') { - if (yych <= 'n') goto yy186; - goto yy769; - } else { - if (yych == 'u') goto yy770; - goto yy186; - } + if (yych <= 'o') goto yy682; + if (yych == 'u') goto yy683; + goto yy186; } } yy127: @@ -2308,42 +2302,42 @@ yych = *++YYCURSOR; if (yych <= 'O') { if (yych <= 'K') { - if (yych == 'A') goto yy739; + if (yych == 'A') goto yy653; goto yy186; } else { - if (yych <= 'L') goto yy740; + if (yych <= 'L') goto yy654; if (yych <= 'N') goto yy186; - goto yy741; + goto yy655; } } else { if (yych <= 'k') { - if (yych == 'a') goto yy739; + if (yych == 'a') goto yy653; goto yy186; } else { - if (yych <= 'l') goto yy740; - if (yych == 'o') goto yy741; + if (yych <= 'l') goto yy654; + if (yych == 'o') goto yy655; goto yy186; } } yy128: YYDEBUG(128, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy701; - if (yych == 'e') goto yy701; + if (yych == 'E') goto yy635; + if (yych == 'e') goto yy635; goto yy186; yy129: YYDEBUG(129, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'R') { - if (yych == 'H') goto yy689; + if (yych == 'H') goto yy623; if (yych <= 'Q') goto yy186; - goto yy690; + goto yy624; } else { if (yych <= 'h') { if (yych <= 'g') goto yy186; - goto yy689; + goto yy623; } else { - if (yych == 'r') goto yy690; + if (yych == 'r') goto yy624; goto yy186; } } @@ -2352,53 +2346,53 @@ yych = *++YYCURSOR; if (yych <= 'S') { if (yych <= 'L') { - if (yych == 'F') goto yy634; + if (yych == 'F') goto yy570; goto yy186; } else { - if (yych <= 'M') goto yy636; - if (yych <= 'N') goto yy637; + if (yych <= 'M') goto yy572; + if (yych <= 'N') goto yy573; if (yych <= 'R') goto yy186; - goto yy638; + goto yy574; } } else { if (yych <= 'm') { - if (yych == 'f') goto yy634; + if (yych == 'f') goto yy570; if (yych <= 'l') goto yy186; - goto yy636; + goto yy572; } else { - if (yych <= 'n') goto yy637; - if (yych == 's') goto yy638; + if (yych <= 'n') goto yy573; + if (yych == 's') goto yy574; goto yy186; } } yy131: YYDEBUG(131, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy629; - if (yych == 'h') goto yy629; + if (yych == 'H') goto yy565; + if (yych == 'h') goto yy565; goto yy186; yy132: YYDEBUG(132, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'S') { if (yych <= 'M') { - if (yych == 'B') goto yy611; + if (yych == 'B') goto yy547; goto yy186; } else { - if (yych <= 'N') goto yy612; + if (yych <= 'N') goto yy548; if (yych <= 'Q') goto yy186; - if (yych <= 'R') goto yy613; - goto yy614; + if (yych <= 'R') goto yy549; + goto yy550; } } else { if (yych <= 'n') { - if (yych == 'b') goto yy611; + if (yych == 'b') goto yy547; if (yych <= 'm') goto yy186; - goto yy612; + goto yy548; } else { if (yych <= 'q') goto yy186; - if (yych <= 'r') goto yy613; - if (yych <= 's') goto yy614; + if (yych <= 'r') goto yy549; + if (yych <= 's') goto yy550; goto yy186; } } @@ -2406,21 +2400,15 @@ YYDEBUG(133, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'W') { - if (yych <= 'S') { - if (yych == 'C') goto yy585; - goto yy186; - } else { - if (yych <= 'T') goto yy586; - if (yych <= 'V') goto yy186; - goto yy587; - } + if (yych == 'T') goto yy535; + if (yych <= 'V') goto yy186; + goto yy536; } else { - if (yych <= 's') { - if (yych == 'c') goto yy585; - goto yy186; + if (yych <= 't') { + if (yych <= 's') goto yy186; + goto yy535; } else { - if (yych <= 't') goto yy586; - if (yych == 'w') goto yy587; + if (yych == 'w') goto yy536; goto yy186; } } @@ -2428,53 +2416,37 @@ YYDEBUG(134, *YYCURSOR); yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); - if (yych <= 'N') { - if (yych <= '\'') { - if (yych == '"') goto yy554; - if (yych <= '&') goto yy186; - goto yy555; + if (yych <= ';') { + if (yych <= '"') { + if (yych <= '!') goto yy186; + goto yy527; } else { - if (yych <= '<') { - if (yych <= ';') goto yy186; - goto yy553; - } else { - if (yych == 'I') goto yy556; - goto yy186; - } + if (yych == '\'') goto yy528; + goto yy186; } } else { - if (yych <= 'i') { - if (yych <= 'Q') { - if (yych <= 'O') goto yy557; - goto yy186; - } else { - if (yych <= 'R') goto yy558; - if (yych <= 'h') goto yy186; - goto yy556; - } + if (yych <= 'R') { + if (yych <= '<') goto yy526; + if (yych <= 'Q') goto yy186; + goto yy529; } else { - if (yych <= 'o') { - if (yych <= 'n') goto yy186; - goto yy557; - } else { - if (yych == 'r') goto yy558; - goto yy186; - } + if (yych == 'r') goto yy529; + goto yy186; } } yy135: YYDEBUG(135, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'L') goto yy543; + if (yych == 'L') goto yy516; if (yych <= 'N') goto yy186; - goto yy544; + goto yy517; } else { if (yych <= 'l') { if (yych <= 'k') goto yy186; - goto yy543; + goto yy516; } else { - if (yych == 'o') goto yy544; + if (yych == 'o') goto yy517; goto yy186; } } @@ -2482,15 +2454,15 @@ YYDEBUG(136, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'U') { - if (yych == 'R') goto yy519; + if (yych == 'R') goto yy492; if (yych <= 'T') goto yy186; - goto yy520; + goto yy493; } else { if (yych <= 'r') { if (yych <= 'q') goto yy186; - goto yy519; + goto yy492; } else { - if (yych == 'u') goto yy520; + if (yych == 'u') goto yy493; goto yy186; } } @@ -2498,24 +2470,24 @@ YYDEBUG(137, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '<') { - if (yych == '-') goto yy515; + if (yych == '-') goto yy488; } else { - if (yych <= '=') goto yy513; - if (yych <= '>') goto yy517; + if (yych <= '=') goto yy486; + if (yych <= '>') goto yy490; } yy138: YYDEBUG(138, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1335 "Zend/zend_language_scanner.l" +#line 1279 "Zend/zend_language_scanner.l" { return yytext[0]; } -#line 2514 "Zend/zend_language_scanner.c" +#line 2486 "Zend/zend_language_scanner.c" yy139: YYDEBUG(139, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy512; + goto yy485; yy140: YYDEBUG(140, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); @@ -2527,11 +2499,11 @@ HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 2531 "Zend/zend_language_scanner.c" +#line 2503 "Zend/zend_language_scanner.c" yy141: YYDEBUG(141, *YYCURSOR); yych = *++YYCURSOR; - if (yych == ':') goto yy509; + if (yych == ':') goto yy482; goto yy138; yy142: YYDEBUG(142, *YYCURSOR); @@ -2542,83 +2514,94 @@ { return T_NS_SEPARATOR; } -#line 2546 "Zend/zend_language_scanner.c" +#line 2518 "Zend/zend_language_scanner.c" yy144: YYDEBUG(144, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'U') { - if (yych <= 'D') { - if (yych == 'A') goto yy485; - goto yy186; - } else { - if (yych <= 'E') goto yy486; - if (yych <= 'T') goto yy186; - goto yy487; - } + if (yych <= 'E') { + if (yych == 'A') goto yy470; + if (yych <= 'D') goto yy186; + goto yy471; } else { - if (yych <= 'd') { - if (yych == 'a') goto yy485; - goto yy186; + if (yych <= 'a') { + if (yych <= '`') goto yy186; + goto yy470; } else { - if (yych <= 'e') goto yy486; - if (yych == 'u') goto yy487; + if (yych == 'e') goto yy471; goto yy186; } } yy145: YYDEBUG(145, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy482; - if (yych == 'a') goto yy482; + if (yych == 'A') goto yy467; + if (yych == 'a') goto yy467; goto yy186; yy146: YYDEBUG(146, *YYCURSOR); yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'S') { - if (yych <= 'D') { + if (yych <= 'E') { if (yych <= ' ') { - if (yych == '\t') goto yy399; + if (yych == '\t') goto yy379; if (yych <= 0x1F) goto yy138; - goto yy399; + goto yy379; } else { - if (yych <= '@') goto yy138; - if (yych == 'C') goto yy138; - goto yy399; + if (yych <= 'B') { + if (yych <= '@') goto yy138; + goto yy379; + } else { + if (yych == 'D') goto yy379; + goto yy138; + } } } else { - if (yych <= 'I') { - if (yych == 'F') goto yy399; - if (yych <= 'H') goto yy138; - goto yy399; + if (yych <= 'K') { + if (yych <= 'F') goto yy379; + if (yych == 'I') goto yy379; + goto yy138; } else { - if (yych == 'O') goto yy399; - if (yych <= 'Q') goto yy138; - goto yy399; + if (yych <= 'M') { + if (yych <= 'L') goto yy379; + goto yy138; + } else { + if (yych <= 'O') goto yy379; + if (yych <= 'Q') goto yy138; + goto yy379; + } } } } else { - if (yych <= 'f') { + if (yych <= 'h') { if (yych <= 'b') { - if (yych == 'U') goto yy399; + if (yych == 'U') goto yy379; if (yych <= '`') goto yy138; - goto yy399; + goto yy379; } else { - if (yych == 'd') goto yy399; - if (yych <= 'e') goto yy138; - goto yy399; + if (yych <= 'd') { + if (yych <= 'c') goto yy138; + goto yy379; + } else { + if (yych == 'f') goto yy379; + goto yy138; + } } } else { if (yych <= 'o') { - if (yych == 'i') goto yy399; - if (yych <= 'n') goto yy138; - goto yy399; + if (yych <= 'k') { + if (yych <= 'i') goto yy379; + goto yy138; + } else { + if (yych == 'm') goto yy138; + goto yy379; + } } else { if (yych <= 's') { if (yych <= 'q') goto yy138; - goto yy399; + goto yy379; } else { - if (yych == 'u') goto yy399; + if (yych == 'u') goto yy379; goto yy138; } } @@ -2628,140 +2611,120 @@ YYDEBUG(147, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'S') { - if (yych == 'N') goto yy390; + if (yych == 'N') goto yy370; if (yych <= 'R') goto yy186; - goto yy391; + goto yy371; } else { if (yych <= 'n') { if (yych <= 'm') goto yy186; - goto yy390; + goto yy370; } else { - if (yych == 's') goto yy391; + if (yych == 's') goto yy371; goto yy186; } } yy148: YYDEBUG(148, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '_') goto yy316; + if (yych == '_') goto yy296; goto yy186; yy149: YYDEBUG(149, *YYCURSOR); yych = *++YYCURSOR; if (yych <= '<') goto yy138; - if (yych <= '=') goto yy310; - if (yych <= '>') goto yy312; + if (yych <= '=') goto yy290; + if (yych <= '>') goto yy292; goto yy138; yy150: YYDEBUG(150, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'O') { - if (yych == 'I') goto yy297; - if (yych <= 'N') goto yy186; - goto yy298; - } else { - if (yych <= 'i') { - if (yych <= 'h') goto yy186; - goto yy297; - } else { - if (yych == 'o') goto yy298; - goto yy186; - } - } + if (yych == 'I') goto yy286; + if (yych == 'i') goto yy286; + goto yy186; yy151: YYDEBUG(151, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'R') { - if (yych == 'B') goto yy284; - if (yych <= 'Q') goto yy186; - goto yy285; - } else { - if (yych <= 'b') { - if (yych <= 'a') goto yy186; - goto yy284; - } else { - if (yych == 'r') goto yy285; - goto yy186; - } - } + if (yych == '+') goto yy284; + if (yych == '=') goto yy282; + goto yy138; yy152: YYDEBUG(152, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '+') goto yy282; - if (yych == '=') goto yy280; + if (yych == '=') goto yy279; goto yy138; yy153: YYDEBUG(153, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '=') goto yy277; - goto yy138; -yy154: - YYDEBUG(154, *YYCURSOR); yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= ';') { - if (yych == '/') goto yy249; + if (yych == '/') goto yy251; goto yy138; } else { - if (yych <= '<') goto yy247; - if (yych <= '=') goto yy250; - if (yych <= '>') goto yy252; + if (yych <= '<') goto yy249; + if (yych <= '=') goto yy252; + if (yych <= '>') goto yy254; goto yy138; } +yy154: + YYDEBUG(154, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '<') goto yy138; + if (yych <= '=') goto yy245; + if (yych <= '>') goto yy243; + goto yy138; yy155: YYDEBUG(155, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= '<') goto yy138; - if (yych <= '=') goto yy243; - if (yych <= '>') goto yy241; + if (yych == '=') goto yy241; goto yy138; yy156: YYDEBUG(156, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '=') goto yy239; - goto yy138; -yy157: - YYDEBUG(157, *YYCURSOR); - yych = *++YYCURSOR; if (yych <= '.') { - if (yych == '*') goto yy231; + if (yych == '*') goto yy233; goto yy138; } else { - if (yych <= '/') goto yy233; - if (yych == '=') goto yy234; + if (yych <= '/') goto yy235; + if (yych == '=') goto yy236; goto yy138; } +yy157: + YYDEBUG(157, *YYCURSOR); + yych = *++YYCURSOR; + if (yych <= '/') goto yy138; + if (yych <= '9') goto yy229; + if (yych == '=') goto yy231; + goto yy138; yy158: YYDEBUG(158, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= '/') goto yy138; - if (yych <= '9') goto yy227; - if (yych == '=') goto yy229; + if (yych <= '<') goto yy138; + if (yych <= '=') goto yy225; + if (yych <= '>') goto yy223; goto yy138; yy159: YYDEBUG(159, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= '<') goto yy138; - if (yych <= '=') goto yy223; - if (yych <= '>') goto yy221; + if (yych == '&') goto yy219; + if (yych == '=') goto yy221; goto yy138; yy160: YYDEBUG(160, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '&') goto yy217; - if (yych == '=') goto yy219; + if (yych == '=') goto yy217; + if (yych == '|') goto yy215; goto yy138; yy161: YYDEBUG(161, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '=') goto yy215; - if (yych == '|') goto yy213; + if (yych == '=') goto yy213; goto yy138; yy162: YYDEBUG(162, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '=') goto yy211; - goto yy138; + if (yych == 'R') goto yy211; + if (yych == 'r') goto yy211; + goto yy186; yy163: YYDEBUG(163, *YYCURSOR); yych = *++YYCURSOR; @@ -2796,18 +2759,18 @@ ++YYCURSOR; YYDEBUG(168, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1340 "Zend/zend_language_scanner.l" +#line 1284 "Zend/zend_language_scanner.l" { yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return '{'; } -#line 2805 "Zend/zend_language_scanner.c" +#line 2768 "Zend/zend_language_scanner.c" yy169: YYDEBUG(169, *YYCURSOR); ++YYCURSOR; YYDEBUG(170, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1352 "Zend/zend_language_scanner.l" +#line 1296 "Zend/zend_language_scanner.l" { RESET_DOC_COMMENT(); if (!zend_stack_is_empty(&SCNG(state_stack))) { @@ -2815,7 +2778,7 @@ } return '}'; } -#line 2819 "Zend/zend_language_scanner.c" +#line 2782 "Zend/zend_language_scanner.c" yy171: YYDEBUG(171, *YYCURSOR); yyaccept = 2; @@ -2838,7 +2801,7 @@ yy172: YYDEBUG(172, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1378 "Zend/zend_language_scanner.l" +#line 1322 "Zend/zend_language_scanner.l" { if (yyleng < MAX_LENGTH_OF_LONG - 1) { /* Won't overflow */ zendlval->value.lval = strtol(yytext, NULL, 0); @@ -2859,7 +2822,7 @@ zendlval->type = IS_LONG; return T_LNUMBER; } -#line 2863 "Zend/zend_language_scanner.c" +#line 2826 "Zend/zend_language_scanner.c" yy173: YYDEBUG(173, *YYCURSOR); yyaccept = 2; @@ -2887,7 +2850,7 @@ yy176: YYDEBUG(176, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1749 "Zend/zend_language_scanner.l" +#line 1693 "Zend/zend_language_scanner.l" { while (YYCURSOR < YYLIMIT) { switch (*YYCURSOR++) { @@ -2921,14 +2884,14 @@ return T_COMMENT; } -#line 2925 "Zend/zend_language_scanner.c" +#line 2888 "Zend/zend_language_scanner.c" yy177: YYDEBUG(177, *YYCURSOR); ++YYCURSOR; yy178: YYDEBUG(178, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1840 "Zend/zend_language_scanner.l" +#line 1784 "Zend/zend_language_scanner.l" { register char *s, *t; char *end; @@ -2998,14 +2961,14 @@ #endif /* ZEND_MULTIBYTE */ return T_CONSTANT_ENCAPSED_STRING; } -#line 3002 "Zend/zend_language_scanner.c" +#line 2965 "Zend/zend_language_scanner.c" yy179: YYDEBUG(179, *YYCURSOR); ++YYCURSOR; yy180: YYDEBUG(180, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1911 "Zend/zend_language_scanner.l" +#line 1855 "Zend/zend_language_scanner.l" { int bprefix = (yytext[0] != '"') ? 1 : 0; @@ -3046,24 +3009,24 @@ BEGIN(ST_DOUBLE_QUOTES); return '"'; } -#line 3050 "Zend/zend_language_scanner.c" +#line 3013 "Zend/zend_language_scanner.c" yy181: YYDEBUG(181, *YYCURSOR); ++YYCURSOR; YYDEBUG(182, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2002 "Zend/zend_language_scanner.l" +#line 1946 "Zend/zend_language_scanner.l" { BEGIN(ST_BACKQUOTE); return '`'; } -#line 3061 "Zend/zend_language_scanner.c" +#line 3024 "Zend/zend_language_scanner.c" yy183: YYDEBUG(183, *YYCURSOR); ++YYCURSOR; YYDEBUG(184, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2260 "Zend/zend_language_scanner.l" +#line 2204 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -3072,7 +3035,7 @@ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 3076 "Zend/zend_language_scanner.c" +#line 3039 "Zend/zend_language_scanner.c" yy185: YYDEBUG(185, *YYCURSOR); ++YYCURSOR; @@ -3080,7 +3043,7 @@ yych = *YYCURSOR; yy186: YYDEBUG(186, *YYCURSOR); - if (yybm[0+yych] & 4) { + if (yybm[0+yych] & 8) { goto yy185; } goto yy124; @@ -3091,7 +3054,7 @@ YYFILL(3); yych = *YYCURSOR; YYDEBUG(188, *YYCURSOR); - if (yybm[0+yych] & 8) { + if (yybm[0+yych] & 16) { goto yy187; } if (yych == 'E') goto yy192; @@ -3099,13 +3062,13 @@ yy189: YYDEBUG(189, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1439 "Zend/zend_language_scanner.l" +#line 1383 "Zend/zend_language_scanner.l" { zendlval->value.dval = zend_strtod(yytext, NULL); zendlval->type = IS_DOUBLE; return T_DNUMBER; } -#line 3109 "Zend/zend_language_scanner.c" +#line 3072 "Zend/zend_language_scanner.c" yy190: YYDEBUG(190, *YYCURSOR); yyaccept = 2; @@ -3152,10 +3115,10 @@ if (yyaccept <= 3) { goto yy189; } else { - goto yy232; + goto yy234; } } else { - goto yy248; + goto yy250; } } yy194: @@ -3175,7 +3138,7 @@ yy197: YYDEBUG(197, *YYCURSOR); yych = *++YYCURSOR; - if (yybm[0+yych] & 16) { + if (yybm[0+yych] & 32) { goto yy198; } goto yy193; @@ -3185,12 +3148,12 @@ YYFILL(1); yych = *YYCURSOR; YYDEBUG(199, *YYCURSOR); - if (yybm[0+yych] & 16) { + if (yybm[0+yych] & 32) { goto yy198; } YYDEBUG(200, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1399 "Zend/zend_language_scanner.l" +#line 1343 "Zend/zend_language_scanner.l" { char *hex = yytext + 2; /* Skip "0x" */ int len = yyleng - 2; @@ -3211,7 +3174,7 @@ return T_DNUMBER; } } -#line 3215 "Zend/zend_language_scanner.c" +#line 3178 "Zend/zend_language_scanner.c" yy201: YYDEBUG(201, *YYCURSOR); ++YYCURSOR; @@ -3220,7 +3183,7 @@ yy202: YYDEBUG(202, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1817 "Zend/zend_language_scanner.l" +#line 1761 "Zend/zend_language_scanner.l" { zendlval->value.str.val = yytext; /* no copying - intentional */ zendlval->value.str.len = yyleng; @@ -3228,7 +3191,7 @@ BEGIN(INITIAL); return T_CLOSE_TAG; /* implicit ';' at php-end tag */ } -#line 3232 "Zend/zend_language_scanner.c" +#line 3195 "Zend/zend_language_scanner.c" yy203: YYDEBUG(203, *YYCURSOR); yych = *++YYCURSOR; @@ -3262,13 +3225,13 @@ yy207: YYDEBUG(207, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 3272 "Zend/zend_language_scanner.c" +#line 3235 "Zend/zend_language_scanner.c" yy208: YYDEBUG(208, *YYCURSOR); yych = *++YYCURSOR; @@ -3277,76 +3240,89 @@ yy209: YYDEBUG(209, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } YYDEBUG(210, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1323 "Zend/zend_language_scanner.l" +#line 1267 "Zend/zend_language_scanner.l" { return T_LOGICAL_XOR; } -#line 3290 "Zend/zend_language_scanner.c" +#line 3253 "Zend/zend_language_scanner.c" yy211: YYDEBUG(211, *YYCURSOR); ++YYCURSOR; + if (yybm[0+(yych = *YYCURSOR)] & 8) { + goto yy185; + } YYDEBUG(212, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1303 "Zend/zend_language_scanner.l" +#line 1259 "Zend/zend_language_scanner.l" { - return T_XOR_EQUAL; + return T_LOGICAL_OR; } -#line 3300 "Zend/zend_language_scanner.c" +#line 3266 "Zend/zend_language_scanner.c" yy213: YYDEBUG(213, *YYCURSOR); ++YYCURSOR; YYDEBUG(214, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1307 "Zend/zend_language_scanner.l" +#line 1247 "Zend/zend_language_scanner.l" { - return T_BOOLEAN_OR; + return T_XOR_EQUAL; } -#line 3310 "Zend/zend_language_scanner.c" +#line 3276 "Zend/zend_language_scanner.c" yy215: YYDEBUG(215, *YYCURSOR); ++YYCURSOR; YYDEBUG(216, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1299 "Zend/zend_language_scanner.l" +#line 1251 "Zend/zend_language_scanner.l" { - return T_OR_EQUAL; + return T_BOOLEAN_OR; } -#line 3320 "Zend/zend_language_scanner.c" +#line 3286 "Zend/zend_language_scanner.c" yy217: YYDEBUG(217, *YYCURSOR); ++YYCURSOR; YYDEBUG(218, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1311 "Zend/zend_language_scanner.l" +#line 1243 "Zend/zend_language_scanner.l" { - return T_BOOLEAN_AND; + return T_OR_EQUAL; } -#line 3330 "Zend/zend_language_scanner.c" +#line 3296 "Zend/zend_language_scanner.c" yy219: YYDEBUG(219, *YYCURSOR); ++YYCURSOR; YYDEBUG(220, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1295 "Zend/zend_language_scanner.l" +#line 1255 "Zend/zend_language_scanner.l" { - return T_AND_EQUAL; + return T_BOOLEAN_AND; } -#line 3340 "Zend/zend_language_scanner.c" +#line 3306 "Zend/zend_language_scanner.c" yy221: YYDEBUG(221, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '\n') goto yy225; - if (yych == '\r') goto yy226; -yy222: YYDEBUG(222, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1826 "Zend/zend_language_scanner.l" +#line 1239 "Zend/zend_language_scanner.l" { + return T_AND_EQUAL; +} +#line 3316 "Zend/zend_language_scanner.c" +yy223: + YYDEBUG(223, *YYCURSOR); + ++YYCURSOR; + if ((yych = *YYCURSOR) == '\n') goto yy227; + if (yych == '\r') goto yy228; +yy224: + YYDEBUG(224, *YYCURSOR); + yyleng = YYCURSOR - SCNG(yy_text); +#line 1770 "Zend/zend_language_scanner.l" + { if (CG(asp_tags)) { BEGIN(INITIAL); zendlval->value.str.len = yyleng; @@ -3358,61 +3334,61 @@ return yytext[0]; } } -#line 3362 "Zend/zend_language_scanner.c" -yy223: - YYDEBUG(223, *YYCURSOR); +#line 3338 "Zend/zend_language_scanner.c" +yy225: + YYDEBUG(225, *YYCURSOR); ++YYCURSOR; - YYDEBUG(224, *YYCURSOR); + YYDEBUG(226, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1283 "Zend/zend_language_scanner.l" +#line 1227 "Zend/zend_language_scanner.l" { return T_MOD_EQUAL; } -#line 3372 "Zend/zend_language_scanner.c" -yy225: - YYDEBUG(225, *YYCURSOR); - yych = *++YYCURSOR; - goto yy222; -yy226: - YYDEBUG(226, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '\n') goto yy225; - goto yy222; +#line 3348 "Zend/zend_language_scanner.c" yy227: YYDEBUG(227, *YYCURSOR); + yych = *++YYCURSOR; + goto yy224; +yy228: + YYDEBUG(228, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == '\n') goto yy227; + goto yy224; +yy229: + YYDEBUG(229, *YYCURSOR); yyaccept = 3; YYMARKER = ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(228, *YYCURSOR); + YYDEBUG(230, *YYCURSOR); if (yych <= 'D') { if (yych <= '/') goto yy189; - if (yych <= '9') goto yy227; + if (yych <= '9') goto yy229; goto yy189; } else { if (yych <= 'E') goto yy192; if (yych == 'e') goto yy192; goto yy189; } -yy229: - YYDEBUG(229, *YYCURSOR); +yy231: + YYDEBUG(231, *YYCURSOR); ++YYCURSOR; - YYDEBUG(230, *YYCURSOR); + YYDEBUG(232, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1279 "Zend/zend_language_scanner.l" +#line 1223 "Zend/zend_language_scanner.l" { return T_CONCAT_EQUAL; } -#line 3407 "Zend/zend_language_scanner.c" -yy231: - YYDEBUG(231, *YYCURSOR); +#line 3383 "Zend/zend_language_scanner.c" +yy233: + YYDEBUG(233, *YYCURSOR); yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); - if (yych == '*') goto yy236; -yy232: - YYDEBUG(232, *YYCURSOR); + if (yych == '*') goto yy238; +yy234: + YYDEBUG(234, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1783 "Zend/zend_language_scanner.l" +#line 1727 "Zend/zend_language_scanner.l" { int doc_com; @@ -3446,281 +3422,281 @@ return T_COMMENT; } -#line 3450 "Zend/zend_language_scanner.c" -yy233: - YYDEBUG(233, *YYCURSOR); +#line 3426 "Zend/zend_language_scanner.c" +yy235: + YYDEBUG(235, *YYCURSOR); yych = *++YYCURSOR; goto yy176; -yy234: - YYDEBUG(234, *YYCURSOR); +yy236: + YYDEBUG(236, *YYCURSOR); ++YYCURSOR; - YYDEBUG(235, *YYCURSOR); + YYDEBUG(237, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1275 "Zend/zend_language_scanner.l" +#line 1219 "Zend/zend_language_scanner.l" { return T_DIV_EQUAL; } -#line 3464 "Zend/zend_language_scanner.c" -yy236: - YYDEBUG(236, *YYCURSOR); +#line 3440 "Zend/zend_language_scanner.c" +yy238: + YYDEBUG(238, *YYCURSOR); yych = *++YYCURSOR; - if (yybm[0+yych] & 32) { - goto yy237; + if (yybm[0+yych] & 64) { + goto yy239; } goto yy193; -yy237: - YYDEBUG(237, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(238, *YYCURSOR); - if (yybm[0+yych] & 32) { - goto yy237; - } - goto yy232; yy239: YYDEBUG(239, *YYCURSOR); ++YYCURSOR; + YYFILL(1); + yych = *YYCURSOR; YYDEBUG(240, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1271 "Zend/zend_language_scanner.l" - { - return T_MUL_EQUAL; -} -#line 3491 "Zend/zend_language_scanner.c" + if (yybm[0+yych] & 64) { + goto yy239; + } + goto yy234; yy241: YYDEBUG(241, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy245; YYDEBUG(242, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1331 "Zend/zend_language_scanner.l" +#line 1215 "Zend/zend_language_scanner.l" { - return T_SR; + return T_MUL_EQUAL; } -#line 3502 "Zend/zend_language_scanner.c" +#line 3467 "Zend/zend_language_scanner.c" yy243: YYDEBUG(243, *YYCURSOR); ++YYCURSOR; + if ((yych = *YYCURSOR) == '=') goto yy247; YYDEBUG(244, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1259 "Zend/zend_language_scanner.l" +#line 1275 "Zend/zend_language_scanner.l" { - return T_IS_GREATER_OR_EQUAL; + return T_SR; } -#line 3512 "Zend/zend_language_scanner.c" +#line 3478 "Zend/zend_language_scanner.c" yy245: YYDEBUG(245, *YYCURSOR); ++YYCURSOR; YYDEBUG(246, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1291 "Zend/zend_language_scanner.l" +#line 1203 "Zend/zend_language_scanner.l" { - return T_SR_EQUAL; + return T_IS_GREATER_OR_EQUAL; } -#line 3522 "Zend/zend_language_scanner.c" +#line 3488 "Zend/zend_language_scanner.c" yy247: YYDEBUG(247, *YYCURSOR); - yyaccept = 5; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= ';') goto yy248; - if (yych <= '<') goto yy263; - if (yych <= '=') goto yy261; -yy248: + ++YYCURSOR; YYDEBUG(248, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1327 "Zend/zend_language_scanner.l" +#line 1235 "Zend/zend_language_scanner.l" { - return T_SL; + return T_SR_EQUAL; } -#line 3537 "Zend/zend_language_scanner.c" +#line 3498 "Zend/zend_language_scanner.c" yy249: YYDEBUG(249, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy254; - if (yych == 's') goto yy254; - goto yy193; + yyaccept = 5; + yych = *(YYMARKER = ++YYCURSOR); + if (yych <= ';') goto yy250; + if (yych <= '<') goto yy265; + if (yych <= '=') goto yy263; yy250: YYDEBUG(250, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(251, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1255 "Zend/zend_language_scanner.l" +#line 1271 "Zend/zend_language_scanner.l" { - return T_IS_SMALLER_OR_EQUAL; + return T_SL; } -#line 3553 "Zend/zend_language_scanner.c" +#line 3513 "Zend/zend_language_scanner.c" +yy251: + YYDEBUG(251, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'S') goto yy256; + if (yych == 's') goto yy256; + goto yy193; yy252: YYDEBUG(252, *YYCURSOR); ++YYCURSOR; -yy253: YYDEBUG(253, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1251 "Zend/zend_language_scanner.l" +#line 1199 "Zend/zend_language_scanner.l" { - return T_IS_NOT_EQUAL; + return T_IS_SMALLER_OR_EQUAL; } -#line 3564 "Zend/zend_language_scanner.c" +#line 3529 "Zend/zend_language_scanner.c" yy254: YYDEBUG(254, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy255; - if (yych != 'c') goto yy193; + ++YYCURSOR; yy255: YYDEBUG(255, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy256; - if (yych != 'r') goto yy193; + yyleng = YYCURSOR - SCNG(yy_text); +#line 1195 "Zend/zend_language_scanner.l" + { + return T_IS_NOT_EQUAL; +} +#line 3540 "Zend/zend_language_scanner.c" yy256: YYDEBUG(256, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy257; - if (yych != 'i') goto yy193; + if (yych == 'C') goto yy257; + if (yych != 'c') goto yy193; yy257: YYDEBUG(257, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy258; - if (yych != 'p') goto yy193; + if (yych == 'R') goto yy258; + if (yych != 'r') goto yy193; yy258: YYDEBUG(258, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy259; - if (yych != 't') goto yy193; + if (yych == 'I') goto yy259; + if (yych != 'i') goto yy193; yy259: YYDEBUG(259, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'P') goto yy260; + if (yych != 'p') goto yy193; +yy260: + YYDEBUG(260, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'T') goto yy261; + if (yych != 't') goto yy193; +yy261: + YYDEBUG(261, *YYCURSOR); ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; - YYDEBUG(260, *YYCURSOR); + YYDEBUG(262, *YYCURSOR); if (yych <= '\r') { if (yych <= 0x08) goto yy193; - if (yych <= '\n') goto yy259; + if (yych <= '\n') goto yy261; if (yych <= '\f') goto yy193; - goto yy259; + goto yy261; } else { if (yych <= ' ') { if (yych <= 0x1F) goto yy193; - goto yy259; + goto yy261; } else { if (yych == '>') goto yy201; goto yy193; } } -yy261: - YYDEBUG(261, *YYCURSOR); +yy263: + YYDEBUG(263, *YYCURSOR); ++YYCURSOR; - YYDEBUG(262, *YYCURSOR); + YYDEBUG(264, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1287 "Zend/zend_language_scanner.l" +#line 1231 "Zend/zend_language_scanner.l" { return T_SL_EQUAL; } -#line 3619 "Zend/zend_language_scanner.c" -yy263: - YYDEBUG(263, *YYCURSOR); +#line 3595 "Zend/zend_language_scanner.c" +yy265: + YYDEBUG(265, *YYCURSOR); ++YYCURSOR; YYFILL(2); yych = *YYCURSOR; - YYDEBUG(264, *YYCURSOR); - if (yybm[0+yych] & 64) { - goto yy263; + YYDEBUG(266, *YYCURSOR); + if (yybm[0+yych] & 128) { + goto yy265; } if (yych <= 'Z') { if (yych <= '&') { - if (yych == '"') goto yy268; + if (yych == '"') goto yy270; goto yy193; } else { - if (yych <= '\'') goto yy267; + if (yych <= '\'') goto yy269; if (yych <= '@') goto yy193; } } else { if (yych <= '`') { if (yych != '_') goto yy193; } else { - if (yych <= 'z') goto yy265; + if (yych <= 'z') goto yy267; if (yych <= '~') goto yy193; } } -yy265: - YYDEBUG(265, *YYCURSOR); +yy267: + YYDEBUG(267, *YYCURSOR); ++YYCURSOR; YYFILL(2); yych = *YYCURSOR; - YYDEBUG(266, *YYCURSOR); + YYDEBUG(268, *YYCURSOR); if (yych <= '@') { if (yych <= '\f') { - if (yych == '\n') goto yy272; + if (yych == '\n') goto yy274; goto yy193; } else { - if (yych <= '\r') goto yy274; + if (yych <= '\r') goto yy276; if (yych <= '/') goto yy193; - if (yych <= '9') goto yy265; + if (yych <= '9') goto yy267; goto yy193; } } else { if (yych <= '_') { - if (yych <= 'Z') goto yy265; + if (yych <= 'Z') goto yy267; if (yych <= '^') goto yy193; - goto yy265; + goto yy267; } else { if (yych <= '`') goto yy193; - if (yych <= 'z') goto yy265; + if (yych <= 'z') goto yy267; if (yych <= '~') goto yy193; - goto yy265; + goto yy267; } } -yy267: - YYDEBUG(267, *YYCURSOR); +yy269: + YYDEBUG(269, *YYCURSOR); yych = *++YYCURSOR; if (yych == '\'') goto yy193; - if (yych <= '/') goto yy276; + if (yych <= '/') goto yy278; if (yych <= '9') goto yy193; - goto yy276; -yy268: - YYDEBUG(268, *YYCURSOR); + goto yy278; +yy270: + YYDEBUG(270, *YYCURSOR); yych = *++YYCURSOR; if (yych == '"') goto yy193; - if (yych <= '/') goto yy270; + if (yych <= '/') goto yy272; if (yych <= '9') goto yy193; - goto yy270; -yy269: - YYDEBUG(269, *YYCURSOR); + goto yy272; +yy271: + YYDEBUG(271, *YYCURSOR); ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; -yy270: - YYDEBUG(270, *YYCURSOR); +yy272: + YYDEBUG(272, *YYCURSOR); if (yych <= 'Z') { if (yych <= '/') { if (yych != '"') goto yy193; } else { - if (yych <= '9') goto yy269; + if (yych <= '9') goto yy271; if (yych <= '@') goto yy193; - goto yy269; + goto yy271; } } else { if (yych <= '`') { - if (yych == '_') goto yy269; + if (yych == '_') goto yy271; goto yy193; } else { - if (yych <= 'z') goto yy269; + if (yych <= 'z') goto yy271; if (yych <= '~') goto yy193; - goto yy269; + goto yy271; } } -yy271: - YYDEBUG(271, *YYCURSOR); +yy273: + YYDEBUG(273, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '\n') goto yy272; - if (yych == '\r') goto yy274; + if (yych == '\n') goto yy274; + if (yych == '\r') goto yy276; goto yy193; -yy272: - YYDEBUG(272, *YYCURSOR); +yy274: + YYDEBUG(274, *YYCURSOR); ++YYCURSOR; -yy273: - YYDEBUG(273, *YYCURSOR); +yy275: + YYDEBUG(275, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1953 "Zend/zend_language_scanner.l" +#line 1897 "Zend/zend_language_scanner.l" { char *s; int bprefix = (yytext[0] != '<') ? 1 : 0; @@ -3768,449 +3744,247 @@ return T_START_HEREDOC; } -#line 3772 "Zend/zend_language_scanner.c" -yy274: - YYDEBUG(274, *YYCURSOR); +#line 3748 "Zend/zend_language_scanner.c" +yy276: + YYDEBUG(276, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '\n') goto yy272; - goto yy273; -yy275: - YYDEBUG(275, *YYCURSOR); + if (yych == '\n') goto yy274; + goto yy275; +yy277: + YYDEBUG(277, *YYCURSOR); ++YYCURSOR; YYFILL(3); yych = *YYCURSOR; -yy276: - YYDEBUG(276, *YYCURSOR); +yy278: + YYDEBUG(278, *YYCURSOR); if (yych <= 'Z') { if (yych <= '/') { - if (yych == '\'') goto yy271; + if (yych == '\'') goto yy273; goto yy193; } else { - if (yych <= '9') goto yy275; + if (yych <= '9') goto yy277; if (yych <= '@') goto yy193; - goto yy275; + goto yy277; } } else { if (yych <= '`') { - if (yych == '_') goto yy275; + if (yych == '_') goto yy277; goto yy193; } else { - if (yych <= 'z') goto yy275; + if (yych <= 'z') goto yy277; if (yych <= '~') goto yy193; - goto yy275; + goto yy277; } } -yy277: - YYDEBUG(277, *YYCURSOR); - yych = *++YYCURSOR; - if (yych != '=') goto yy253; - YYDEBUG(278, *YYCURSOR); - ++YYCURSOR; +yy279: YYDEBUG(279, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1243 "Zend/zend_language_scanner.l" - { - return T_IS_NOT_IDENTICAL; -} -#line 3816 "Zend/zend_language_scanner.c" -yy280: + yych = *++YYCURSOR; + if (yych != '=') goto yy255; YYDEBUG(280, *YYCURSOR); ++YYCURSOR; YYDEBUG(281, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1263 "Zend/zend_language_scanner.l" +#line 1187 "Zend/zend_language_scanner.l" { - return T_PLUS_EQUAL; + return T_IS_NOT_IDENTICAL; } -#line 3826 "Zend/zend_language_scanner.c" +#line 3792 "Zend/zend_language_scanner.c" yy282: YYDEBUG(282, *YYCURSOR); ++YYCURSOR; YYDEBUG(283, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1231 "Zend/zend_language_scanner.l" +#line 1207 "Zend/zend_language_scanner.l" { - return T_INC; + return T_PLUS_EQUAL; } -#line 3836 "Zend/zend_language_scanner.c" +#line 3802 "Zend/zend_language_scanner.c" yy284: YYDEBUG(284, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'J') goto yy287; - if (yych == 'j') goto yy287; - goto yy186; -yy285: - YYDEBUG(285, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; - } - YYDEBUG(286, *YYCURSOR); + YYDEBUG(285, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1315 "Zend/zend_language_scanner.l" +#line 1175 "Zend/zend_language_scanner.l" { - return T_LOGICAL_OR; + return T_INC; } -#line 3855 "Zend/zend_language_scanner.c" +#line 3812 "Zend/zend_language_scanner.c" +yy286: + YYDEBUG(286, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'S') goto yy287; + if (yych != 's') goto yy186; yy287: YYDEBUG(287, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy288; - if (yych != 'e') goto yy186; + if (yych == 'T') goto yy288; + if (yych != 't') goto yy186; yy288: YYDEBUG(288, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy289; - if (yych != 'c') goto yy186; -yy289: - YYDEBUG(289, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy290; - if (yych != 't') goto yy186; -yy290: - YYDEBUG(290, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy292; - } else { - if (yych == '\r') goto yy292; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy292; - if (yych <= '#') goto yy124; - goto yy292; - } else { - if (yych == '&') goto yy292; - goto yy124; - } - } -yy291: - YYDEBUG(291, *YYCURSOR); ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy292: - YYDEBUG(292, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy291; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy291; - if (yych <= '#') goto yy193; - goto yy295; - } else { - if (yych != '&') goto yy193; - } - } -yy293: - YYDEBUG(293, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(294, *YYCURSOR); - if (yybm[0+yych] & 128) { - goto yy293; - } - if (yych != '$') goto yy193; -yy295: - YYDEBUG(295, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(296, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1226 "Zend/zend_language_scanner.l" - { - yyless((sizeof("object") - 1)); - return T_OBJECT_HINT; -} -#line 3939 "Zend/zend_language_scanner.c" -yy297: - YYDEBUG(297, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy307; - if (yych == 's') goto yy307; - goto yy186; -yy298: - YYDEBUG(298, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy299; - if (yych != 'n') goto yy186; -yy299: - YYDEBUG(299, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'G') goto yy300; - if (yych != 'g') goto yy186; -yy300: - YYDEBUG(300, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy302; - } else { - if (yych == '\r') goto yy302; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy302; - if (yych <= '#') goto yy124; - goto yy302; - } else { - if (yych == '&') goto yy302; - goto yy124; - } - } -yy301: - YYDEBUG(301, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy302: - YYDEBUG(302, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy301; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy301; - if (yych <= '#') goto yy193; - goto yy305; - } else { - if (yych != '&') goto yy193; - } - } -yy303: - YYDEBUG(303, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(304, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy303; - } else { - if (yych == '\r') goto yy303; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy303; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy303; - goto yy193; - } - } -yy305: - YYDEBUG(305, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(306, *YYCURSOR); + YYDEBUG(289, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1199 "Zend/zend_language_scanner.l" - { - if (yytext[3] == 'e') { - yyless((sizeof("integer") - 1)); - } else if (yytext[3] == 'g') { - yyless((sizeof("long") - 1)); - } else { - yyless(3); - } - return T_INT_HINT; -} -#line 4043 "Zend/zend_language_scanner.c" -yy307: - YYDEBUG(307, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'T') goto yy308; - if (yych != 't') goto yy186; -yy308: - YYDEBUG(308, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { - goto yy185; - } - YYDEBUG(309, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); #line 1167 "Zend/zend_language_scanner.l" { return T_LIST; } -#line 4061 "Zend/zend_language_scanner.c" -yy310: - YYDEBUG(310, *YYCURSOR); +#line 3835 "Zend/zend_language_scanner.c" +yy290: + YYDEBUG(290, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '=') goto yy314; - YYDEBUG(311, *YYCURSOR); + if ((yych = *YYCURSOR) == '=') goto yy294; + YYDEBUG(291, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1247 "Zend/zend_language_scanner.l" +#line 1191 "Zend/zend_language_scanner.l" { return T_IS_EQUAL; } -#line 4072 "Zend/zend_language_scanner.c" -yy312: - YYDEBUG(312, *YYCURSOR); +#line 3846 "Zend/zend_language_scanner.c" +yy292: + YYDEBUG(292, *YYCURSOR); ++YYCURSOR; - YYDEBUG(313, *YYCURSOR); + YYDEBUG(293, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1163 "Zend/zend_language_scanner.l" { return T_DOUBLE_ARROW; } -#line 4082 "Zend/zend_language_scanner.c" -yy314: - YYDEBUG(314, *YYCURSOR); +#line 3856 "Zend/zend_language_scanner.c" +yy294: + YYDEBUG(294, *YYCURSOR); ++YYCURSOR; - YYDEBUG(315, *YYCURSOR); + YYDEBUG(295, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1239 "Zend/zend_language_scanner.l" +#line 1183 "Zend/zend_language_scanner.l" { return T_IS_IDENTICAL; } -#line 4092 "Zend/zend_language_scanner.c" -yy316: - YYDEBUG(316, *YYCURSOR); +#line 3866 "Zend/zend_language_scanner.c" +yy296: + YYDEBUG(296, *YYCURSOR); yych = *++YYCURSOR; YYDEBUG(-1, yych); switch (yych) { case 'C': - case 'c': goto yy318; + case 'c': goto yy298; case 'D': - case 'd': goto yy322; + case 'd': goto yy302; case 'F': - case 'f': goto yy319; + case 'f': goto yy299; case 'H': - case 'h': goto yy317; + case 'h': goto yy297; case 'L': - case 'l': goto yy321; + case 'l': goto yy301; case 'M': - case 'm': goto yy320; + case 'm': goto yy300; case 'N': - case 'n': goto yy323; + case 'n': goto yy303; default: goto yy186; } -yy317: - YYDEBUG(317, *YYCURSOR); +yy297: + YYDEBUG(297, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy377; - if (yych == 'a') goto yy377; + if (yych == 'A') goto yy357; + if (yych == 'a') goto yy357; goto yy186; -yy318: - YYDEBUG(318, *YYCURSOR); +yy298: + YYDEBUG(298, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy370; - if (yych == 'l') goto yy370; + if (yych == 'L') goto yy350; + if (yych == 'l') goto yy350; goto yy186; -yy319: - YYDEBUG(319, *YYCURSOR); +yy299: + YYDEBUG(299, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'U') { - if (yych == 'I') goto yy354; + if (yych == 'I') goto yy334; if (yych <= 'T') goto yy186; - goto yy355; + goto yy335; } else { if (yych <= 'i') { if (yych <= 'h') goto yy186; - goto yy354; + goto yy334; } else { - if (yych == 'u') goto yy355; + if (yych == 'u') goto yy335; goto yy186; } } -yy320: - YYDEBUG(320, *YYCURSOR); +yy300: + YYDEBUG(300, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy346; - if (yych == 'e') goto yy346; + if (yych == 'E') goto yy326; + if (yych == 'e') goto yy326; goto yy186; -yy321: - YYDEBUG(321, *YYCURSOR); +yy301: + YYDEBUG(301, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy340; - if (yych == 'i') goto yy340; + if (yych == 'I') goto yy320; + if (yych == 'i') goto yy320; goto yy186; -yy322: - YYDEBUG(322, *YYCURSOR); +yy302: + YYDEBUG(302, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy335; - if (yych == 'i') goto yy335; + if (yych == 'I') goto yy315; + if (yych == 'i') goto yy315; goto yy186; -yy323: - YYDEBUG(323, *YYCURSOR); +yy303: + YYDEBUG(303, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy324; + if (yych == 'A') goto yy304; if (yych != 'a') goto yy186; -yy324: - YYDEBUG(324, *YYCURSOR); +yy304: + YYDEBUG(304, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'M') goto yy325; + if (yych == 'M') goto yy305; if (yych != 'm') goto yy186; -yy325: - YYDEBUG(325, *YYCURSOR); +yy305: + YYDEBUG(305, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy326; + if (yych == 'E') goto yy306; if (yych != 'e') goto yy186; -yy326: - YYDEBUG(326, *YYCURSOR); +yy306: + YYDEBUG(306, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy327; + if (yych == 'S') goto yy307; if (yych != 's') goto yy186; -yy327: - YYDEBUG(327, *YYCURSOR); +yy307: + YYDEBUG(307, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy328; + if (yych == 'P') goto yy308; if (yych != 'p') goto yy186; -yy328: - YYDEBUG(328, *YYCURSOR); +yy308: + YYDEBUG(308, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy329; + if (yych == 'A') goto yy309; if (yych != 'a') goto yy186; -yy329: - YYDEBUG(329, *YYCURSOR); +yy309: + YYDEBUG(309, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy330; + if (yych == 'C') goto yy310; if (yych != 'c') goto yy186; -yy330: - YYDEBUG(330, *YYCURSOR); +yy310: + YYDEBUG(310, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy331; + if (yych == 'E') goto yy311; if (yych != 'e') goto yy186; -yy331: - YYDEBUG(331, *YYCURSOR); +yy311: + YYDEBUG(311, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(332, *YYCURSOR); + YYDEBUG(312, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(333, *YYCURSOR); + YYDEBUG(313, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(334, *YYCURSOR); + YYDEBUG(314, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1543 "Zend/zend_language_scanner.l" +#line 1487 "Zend/zend_language_scanner.l" { if (CG(current_namespace)) { *zendlval = *CG(current_namespace); @@ -4220,27 +3994,27 @@ } return T_NS_C; } -#line 4224 "Zend/zend_language_scanner.c" -yy335: - YYDEBUG(335, *YYCURSOR); +#line 3998 "Zend/zend_language_scanner.c" +yy315: + YYDEBUG(315, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy336; + if (yych == 'R') goto yy316; if (yych != 'r') goto yy186; -yy336: - YYDEBUG(336, *YYCURSOR); +yy316: + YYDEBUG(316, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(337, *YYCURSOR); + YYDEBUG(317, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(338, *YYCURSOR); + YYDEBUG(318, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(339, *YYCURSOR); + YYDEBUG(319, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1516 "Zend/zend_language_scanner.l" +#line 1460 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); const size_t filename_len = strlen(filename); @@ -4267,73 +4041,73 @@ zendlval->type = IS_STRING; return T_DIR; } -#line 4271 "Zend/zend_language_scanner.c" -yy340: - YYDEBUG(340, *YYCURSOR); +#line 4045 "Zend/zend_language_scanner.c" +yy320: + YYDEBUG(320, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy341; + if (yych == 'N') goto yy321; if (yych != 'n') goto yy186; -yy341: - YYDEBUG(341, *YYCURSOR); +yy321: + YYDEBUG(321, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy342; + if (yych == 'E') goto yy322; if (yych != 'e') goto yy186; -yy342: - YYDEBUG(342, *YYCURSOR); +yy322: + YYDEBUG(322, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(343, *YYCURSOR); + YYDEBUG(323, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(344, *YYCURSOR); + YYDEBUG(324, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(345, *YYCURSOR); + YYDEBUG(325, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1498 "Zend/zend_language_scanner.l" +#line 1442 "Zend/zend_language_scanner.l" { zendlval->value.lval = CG(zend_lineno); zendlval->type = IS_LONG; return T_LINE; } -#line 4302 "Zend/zend_language_scanner.c" -yy346: - YYDEBUG(346, *YYCURSOR); +#line 4076 "Zend/zend_language_scanner.c" +yy326: + YYDEBUG(326, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy347; + if (yych == 'T') goto yy327; if (yych != 't') goto yy186; -yy347: - YYDEBUG(347, *YYCURSOR); +yy327: + YYDEBUG(327, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy348; + if (yych == 'H') goto yy328; if (yych != 'h') goto yy186; -yy348: - YYDEBUG(348, *YYCURSOR); +yy328: + YYDEBUG(328, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy349; + if (yych == 'O') goto yy329; if (yych != 'o') goto yy186; -yy349: - YYDEBUG(349, *YYCURSOR); +yy329: + YYDEBUG(329, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy350; + if (yych == 'D') goto yy330; if (yych != 'd') goto yy186; -yy350: - YYDEBUG(350, *YYCURSOR); +yy330: + YYDEBUG(330, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(351, *YYCURSOR); + YYDEBUG(331, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(352, *YYCURSOR); + YYDEBUG(332, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(353, *YYCURSOR); + YYDEBUG(333, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1477 "Zend/zend_language_scanner.l" +#line 1421 "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; @@ -4354,58 +4128,58 @@ zendlval->type = IS_STRING; return T_METHOD_C; } -#line 4358 "Zend/zend_language_scanner.c" -yy354: - YYDEBUG(354, *YYCURSOR); +#line 4132 "Zend/zend_language_scanner.c" +yy334: + YYDEBUG(334, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy365; - if (yych == 'l') goto yy365; + if (yych == 'L') goto yy345; + if (yych == 'l') goto yy345; goto yy186; -yy355: - YYDEBUG(355, *YYCURSOR); +yy335: + YYDEBUG(335, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy356; + if (yych == 'N') goto yy336; if (yych != 'n') goto yy186; -yy356: - YYDEBUG(356, *YYCURSOR); +yy336: + YYDEBUG(336, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy357; + if (yych == 'C') goto yy337; if (yych != 'c') goto yy186; -yy357: - YYDEBUG(357, *YYCURSOR); +yy337: + YYDEBUG(337, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy358; + if (yych == 'T') goto yy338; if (yych != 't') goto yy186; -yy358: - YYDEBUG(358, *YYCURSOR); +yy338: + YYDEBUG(338, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy359; + if (yych == 'I') goto yy339; if (yych != 'i') goto yy186; -yy359: - YYDEBUG(359, *YYCURSOR); +yy339: + YYDEBUG(339, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy360; + if (yych == 'O') goto yy340; if (yych != 'o') goto yy186; -yy360: - YYDEBUG(360, *YYCURSOR); +yy340: + YYDEBUG(340, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy361; + if (yych == 'N') goto yy341; if (yych != 'n') goto yy186; -yy361: - YYDEBUG(361, *YYCURSOR); +yy341: + YYDEBUG(341, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(362, *YYCURSOR); + YYDEBUG(342, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(363, *YYCURSOR); + YYDEBUG(343, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(364, *YYCURSOR); + YYDEBUG(344, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1461 "Zend/zend_language_scanner.l" +#line 1405 "Zend/zend_language_scanner.l" { char *func_name = NULL; @@ -4421,27 +4195,27 @@ zendlval->type = IS_STRING; return T_FUNC_C; } -#line 4425 "Zend/zend_language_scanner.c" -yy365: - YYDEBUG(365, *YYCURSOR); +#line 4199 "Zend/zend_language_scanner.c" +yy345: + YYDEBUG(345, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy366; + if (yych == 'E') goto yy346; if (yych != 'e') goto yy186; -yy366: - YYDEBUG(366, *YYCURSOR); +yy346: + YYDEBUG(346, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(367, *YYCURSOR); + YYDEBUG(347, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(368, *YYCURSOR); + YYDEBUG(348, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(369, *YYCURSOR); + YYDEBUG(349, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1504 "Zend/zend_language_scanner.l" +#line 1448 "Zend/zend_language_scanner.l" { char *filename = zend_get_compiled_filename(TSRMLS_C); @@ -4453,37 +4227,37 @@ zendlval->type = IS_STRING; return T_FILE; } -#line 4457 "Zend/zend_language_scanner.c" -yy370: - YYDEBUG(370, *YYCURSOR); +#line 4231 "Zend/zend_language_scanner.c" +yy350: + YYDEBUG(350, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy371; + if (yych == 'A') goto yy351; if (yych != 'a') goto yy186; -yy371: - YYDEBUG(371, *YYCURSOR); +yy351: + YYDEBUG(351, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy372; + if (yych == 'S') goto yy352; if (yych != 's') goto yy186; -yy372: - YYDEBUG(372, *YYCURSOR); +yy352: + YYDEBUG(352, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy373; + if (yych == 'S') goto yy353; if (yych != 's') goto yy186; -yy373: - YYDEBUG(373, *YYCURSOR); +yy353: + YYDEBUG(353, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(374, *YYCURSOR); + YYDEBUG(354, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(375, *YYCURSOR); + YYDEBUG(355, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(376, *YYCURSOR); + YYDEBUG(356, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1445 "Zend/zend_language_scanner.l" +#line 1389 "Zend/zend_language_scanner.l" { char *class_name = NULL; @@ -4499,3470 +4273,2629 @@ zendlval->type = IS_STRING; return T_CLASS_C; } -#line 4503 "Zend/zend_language_scanner.c" -yy377: - YYDEBUG(377, *YYCURSOR); +#line 4277 "Zend/zend_language_scanner.c" +yy357: + YYDEBUG(357, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy378; + if (yych == 'L') goto yy358; if (yych != 'l') goto yy186; -yy378: - YYDEBUG(378, *YYCURSOR); +yy358: + YYDEBUG(358, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy379; + if (yych == 'T') goto yy359; if (yych != 't') goto yy186; -yy379: - YYDEBUG(379, *YYCURSOR); +yy359: + YYDEBUG(359, *YYCURSOR); yych = *++YYCURSOR; if (yych != '_') goto yy186; - YYDEBUG(380, *YYCURSOR); + YYDEBUG(360, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy381; + if (yych == 'C') goto yy361; if (yych != 'c') goto yy186; -yy381: - YYDEBUG(381, *YYCURSOR); +yy361: + YYDEBUG(361, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy382; + if (yych == 'O') goto yy362; if (yych != 'o') goto yy186; -yy382: - YYDEBUG(382, *YYCURSOR); +yy362: + YYDEBUG(362, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'M') goto yy383; + if (yych == 'M') goto yy363; if (yych != 'm') goto yy186; -yy383: - YYDEBUG(383, *YYCURSOR); +yy363: + YYDEBUG(363, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy384; + if (yych == 'P') goto yy364; if (yych != 'p') goto yy186; -yy384: - YYDEBUG(384, *YYCURSOR); +yy364: + YYDEBUG(364, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy385; + if (yych == 'I') goto yy365; if (yych != 'i') goto yy186; -yy385: - YYDEBUG(385, *YYCURSOR); +yy365: + YYDEBUG(365, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy386; + if (yych == 'L') goto yy366; if (yych != 'l') goto yy186; -yy386: - YYDEBUG(386, *YYCURSOR); +yy366: + YYDEBUG(366, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy387; + if (yych == 'E') goto yy367; if (yych != 'e') goto yy186; -yy387: - YYDEBUG(387, *YYCURSOR); +yy367: + YYDEBUG(367, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy388; + if (yych == 'R') goto yy368; if (yych != 'r') goto yy186; -yy388: - YYDEBUG(388, *YYCURSOR); +yy368: + YYDEBUG(368, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(389, *YYCURSOR); + YYDEBUG(369, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1131 "Zend/zend_language_scanner.l" { return T_HALT_COMPILER; } -#line 4569 "Zend/zend_language_scanner.c" -yy390: - YYDEBUG(390, *YYCURSOR); +#line 4343 "Zend/zend_language_scanner.c" +yy370: + YYDEBUG(370, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy394; - if (yych == 's') goto yy394; + if (yych == 'S') goto yy374; + if (yych == 's') goto yy374; goto yy186; -yy391: - YYDEBUG(391, *YYCURSOR); +yy371: + YYDEBUG(371, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy392; + if (yych == 'E') goto yy372; if (yych != 'e') goto yy186; -yy392: - YYDEBUG(392, *YYCURSOR); +yy372: + YYDEBUG(372, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(393, *YYCURSOR); + YYDEBUG(373, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1111 "Zend/zend_language_scanner.l" { return T_USE; } -#line 4593 "Zend/zend_language_scanner.c" -yy394: - YYDEBUG(394, *YYCURSOR); +#line 4367 "Zend/zend_language_scanner.c" +yy374: + YYDEBUG(374, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy395; + if (yych == 'E') goto yy375; if (yych != 'e') goto yy186; -yy395: - YYDEBUG(395, *YYCURSOR); +yy375: + YYDEBUG(375, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy396; + if (yych == 'T') goto yy376; if (yych != 't') goto yy186; -yy396: - YYDEBUG(396, *YYCURSOR); +yy376: + YYDEBUG(376, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(397, *YYCURSOR); + YYDEBUG(377, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1159 "Zend/zend_language_scanner.l" { return T_UNSET; } -#line 4616 "Zend/zend_language_scanner.c" -yy398: - YYDEBUG(398, *YYCURSOR); +#line 4390 "Zend/zend_language_scanner.c" +yy378: + YYDEBUG(378, *YYCURSOR); ++YYCURSOR; YYFILL(7); yych = *YYCURSOR; -yy399: - YYDEBUG(399, *YYCURSOR); - if (yych <= 'S') { - if (yych <= 'D') { - if (yych <= ' ') { - if (yych == '\t') goto yy398; - if (yych <= 0x1F) goto yy193; - goto yy398; - } else { - if (yych <= 'A') { - if (yych <= '@') goto yy193; - goto yy403; - } else { - if (yych <= 'B') goto yy401; - if (yych <= 'C') goto yy193; - goto yy406; - } - } - } else { - if (yych <= 'I') { - if (yych == 'F') goto yy407; - if (yych <= 'H') goto yy193; - goto yy408; - } else { - if (yych <= 'O') { - if (yych <= 'N') goto yy193; - goto yy402; - } else { - if (yych <= 'Q') goto yy193; - if (yych <= 'R') goto yy405; - goto yy404; - } - } - } - } else { - if (yych <= 'f') { - if (yych <= 'a') { - if (yych == 'U') goto yy400; - if (yych <= '`') goto yy193; - goto yy403; - } else { - if (yych <= 'c') { - if (yych <= 'b') goto yy401; - goto yy193; - } else { - if (yych <= 'd') goto yy406; - if (yych <= 'e') goto yy193; - goto yy407; - } - } - } else { - if (yych <= 'q') { - if (yych <= 'i') { - if (yych <= 'h') goto yy193; - goto yy408; - } else { - if (yych == 'o') goto yy402; - goto yy193; - } - } else { - if (yych <= 's') { - if (yych <= 'r') goto yy405; - goto yy404; - } else { - if (yych != 'u') goto yy193; - } - } - } +yy379: + YYDEBUG(379, *YYCURSOR); + YYDEBUG(-1, yych); + switch (yych) { + case '\t': + case ' ': goto yy378; + case 'A': + case 'a': goto yy383; + case 'B': + case 'b': goto yy381; + case 'D': + case 'd': goto yy387; + case 'F': + case 'f': goto yy388; + case 'I': + case 'i': goto yy389; + case 'L': + case 'l': goto yy390; + case 'N': + case 'n': goto yy384; + case 'O': + case 'o': goto yy382; + case 'R': + case 'r': goto yy386; + case 'S': + case 's': goto yy385; + case 'U': + case 'u': goto yy380; + default: goto yy193; } -yy400: - YYDEBUG(400, *YYCURSOR); +yy380: + YYDEBUG(380, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy475; - if (yych == 'n') goto yy475; + if (yych == 'N') goto yy460; + if (yych == 'n') goto yy460; goto yy193; -yy401: - YYDEBUG(401, *YYCURSOR); +yy381: + YYDEBUG(381, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'I') goto yy462; + if (yych == 'I') goto yy447; if (yych <= 'N') goto yy193; - goto yy463; + goto yy448; } else { if (yych <= 'i') { if (yych <= 'h') goto yy193; - goto yy462; + goto yy447; } else { - if (yych == 'o') goto yy463; + if (yych == 'o') goto yy448; goto yy193; } } -yy402: - YYDEBUG(402, *YYCURSOR); +yy382: + YYDEBUG(382, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'B') goto yy454; - if (yych == 'b') goto yy454; + if (yych == 'B') goto yy439; + if (yych == 'b') goto yy439; goto yy193; -yy403: - YYDEBUG(403, *YYCURSOR); +yy383: + YYDEBUG(383, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy447; - if (yych == 'r') goto yy447; + if (yych == 'R') goto yy432; + if (yych == 'r') goto yy432; goto yy193; -yy404: - YYDEBUG(404, *YYCURSOR); +yy384: + YYDEBUG(384, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'T') { - if (yych == 'C') goto yy432; - if (yych <= 'S') goto yy193; - goto yy431; - } else { - if (yych <= 'c') { - if (yych <= 'b') goto yy193; - goto yy432; - } else { - if (yych == 't') goto yy431; - goto yy193; - } - } -yy405: - YYDEBUG(405, *YYCURSOR); + if (yych == 'U') goto yy423; + if (yych == 'u') goto yy423; + goto yy193; +yy385: + YYDEBUG(385, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy429; - if (yych == 'e') goto yy429; + if (yych == 'T') goto yy415; + if (yych == 't') goto yy415; goto yy193; -yy406: - YYDEBUG(406, *YYCURSOR); +yy386: + YYDEBUG(386, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy425; - if (yych == 'o') goto yy425; + if (yych == 'E') goto yy413; + if (yych == 'e') goto yy413; goto yy193; -yy407: - YYDEBUG(407, *YYCURSOR); +yy387: + YYDEBUG(387, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy418; - if (yych == 'l') goto yy418; + if (yych == 'O') goto yy409; + if (yych == 'o') goto yy409; goto yy193; -yy408: - YYDEBUG(408, *YYCURSOR); +yy388: + YYDEBUG(388, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy409; - if (yych != 'n') goto yy193; -yy409: - YYDEBUG(409, *YYCURSOR); + if (yych == 'L') goto yy402; + if (yych == 'l') goto yy402; + goto yy193; +yy389: + YYDEBUG(389, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy410; - if (yych != 't') goto yy193; -yy410: - YYDEBUG(410, *YYCURSOR); + if (yych == 'N') goto yy397; + if (yych == 'n') goto yy397; + goto yy193; +yy390: + YYDEBUG(390, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy411; - if (yych != 'e') goto yy413; -yy411: - YYDEBUG(411, *YYCURSOR); + if (yych == 'O') goto yy391; + if (yych != 'o') goto yy193; +yy391: + YYDEBUG(391, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'G') goto yy416; - if (yych == 'g') goto yy416; - goto yy193; -yy412: - YYDEBUG(412, *YYCURSOR); + if (yych == 'N') goto yy392; + if (yych != 'n') goto yy193; +yy392: + YYDEBUG(392, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'G') goto yy393; + if (yych != 'g') goto yy193; +yy393: + YYDEBUG(393, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy413: - YYDEBUG(413, *YYCURSOR); +yy394: + YYDEBUG(394, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy412; + if (yych == '\t') goto yy393; goto yy193; } else { - if (yych <= ' ') goto yy412; + if (yych <= ' ') goto yy393; if (yych != ')') goto yy193; } - YYDEBUG(414, *YYCURSOR); + YYDEBUG(395, *YYCURSOR); ++YYCURSOR; - YYDEBUG(415, *YYCURSOR); + YYDEBUG(396, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1055 "Zend/zend_language_scanner.l" { return T_INT_CAST; } -#line 4802 "Zend/zend_language_scanner.c" -yy416: - YYDEBUG(416, *YYCURSOR); +#line 4533 "Zend/zend_language_scanner.c" +yy397: + YYDEBUG(397, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy417; + if (yych == 'T') goto yy398; + if (yych != 't') goto yy193; +yy398: + YYDEBUG(398, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy399; + if (yych != 'e') goto yy394; +yy399: + YYDEBUG(399, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'G') goto yy400; + if (yych != 'g') goto yy193; +yy400: + YYDEBUG(400, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'E') goto yy401; if (yych != 'e') goto yy193; -yy417: - YYDEBUG(417, *YYCURSOR); +yy401: + YYDEBUG(401, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy412; - if (yych == 'r') goto yy412; + if (yych == 'R') goto yy393; + if (yych == 'r') goto yy393; goto yy193; -yy418: - YYDEBUG(418, *YYCURSOR); +yy402: + YYDEBUG(402, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy419; + if (yych == 'O') goto yy403; if (yych != 'o') goto yy193; -yy419: - YYDEBUG(419, *YYCURSOR); +yy403: + YYDEBUG(403, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy420; + if (yych == 'A') goto yy404; if (yych != 'a') goto yy193; -yy420: - YYDEBUG(420, *YYCURSOR); +yy404: + YYDEBUG(404, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy421; + if (yych == 'T') goto yy405; if (yych != 't') goto yy193; -yy421: - YYDEBUG(421, *YYCURSOR); +yy405: + YYDEBUG(405, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(422, *YYCURSOR); + YYDEBUG(406, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy421; + if (yych == '\t') goto yy405; goto yy193; } else { - if (yych <= ' ') goto yy421; + if (yych <= ' ') goto yy405; if (yych != ')') goto yy193; } - YYDEBUG(423, *YYCURSOR); + YYDEBUG(407, *YYCURSOR); ++YYCURSOR; - YYDEBUG(424, *YYCURSOR); + YYDEBUG(408, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1059 "Zend/zend_language_scanner.l" { return T_DOUBLE_CAST; } -#line 4850 "Zend/zend_language_scanner.c" -yy425: - YYDEBUG(425, *YYCURSOR); +#line 4596 "Zend/zend_language_scanner.c" +yy409: + YYDEBUG(409, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy426; + if (yych == 'U') goto yy410; if (yych != 'u') goto yy193; -yy426: - YYDEBUG(426, *YYCURSOR); +yy410: + YYDEBUG(410, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'B') goto yy427; + if (yych == 'B') goto yy411; if (yych != 'b') goto yy193; -yy427: - YYDEBUG(427, *YYCURSOR); +yy411: + YYDEBUG(411, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy428; + if (yych == 'L') goto yy412; if (yych != 'l') goto yy193; -yy428: - YYDEBUG(428, *YYCURSOR); +yy412: + YYDEBUG(412, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy421; - if (yych == 'e') goto yy421; + if (yych == 'E') goto yy405; + if (yych == 'e') goto yy405; goto yy193; -yy429: - YYDEBUG(429, *YYCURSOR); +yy413: + YYDEBUG(413, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy430; + if (yych == 'A') goto yy414; if (yych != 'a') goto yy193; -yy430: - YYDEBUG(430, *YYCURSOR); +yy414: + YYDEBUG(414, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy421; - if (yych == 'l') goto yy421; + if (yych == 'L') goto yy405; + if (yych == 'l') goto yy405; goto yy193; -yy431: - YYDEBUG(431, *YYCURSOR); +yy415: + YYDEBUG(415, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy440; - if (yych == 'r') goto yy440; - goto yy193; -yy432: - YYDEBUG(432, *YYCURSOR); + if (yych == 'R') goto yy416; + if (yych != 'r') goto yy193; +yy416: + YYDEBUG(416, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy433; - if (yych != 'a') goto yy193; -yy433: - YYDEBUG(433, *YYCURSOR); + if (yych == 'I') goto yy417; + if (yych != 'i') goto yy193; +yy417: + YYDEBUG(417, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy434; - if (yych != 'l') goto yy193; -yy434: - YYDEBUG(434, *YYCURSOR); + if (yych == 'N') goto yy418; + if (yych != 'n') goto yy193; +yy418: + YYDEBUG(418, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy435; - if (yych != 'a') goto yy193; -yy435: - YYDEBUG(435, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy436; - if (yych != 'r') goto yy193; -yy436: - YYDEBUG(436, *YYCURSOR); + if (yych == 'G') goto yy419; + if (yych != 'g') goto yy193; +yy419: + YYDEBUG(419, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(437, *YYCURSOR); + YYDEBUG(420, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy436; + if (yych == '\t') goto yy419; goto yy193; } else { - if (yych <= ' ') goto yy436; + if (yych <= ' ') goto yy419; if (yych != ')') goto yy193; } - YYDEBUG(438, *YYCURSOR); + YYDEBUG(421, *YYCURSOR); ++YYCURSOR; - YYDEBUG(439, *YYCURSOR); + YYDEBUG(422, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1067 "Zend/zend_language_scanner.l" +#line 1063 "Zend/zend_language_scanner.l" { - return T_SCALAR_CAST; + return T_STRING_CAST; } -#line 4930 "Zend/zend_language_scanner.c" -yy440: - YYDEBUG(440, *YYCURSOR); +#line 4670 "Zend/zend_language_scanner.c" +yy423: + YYDEBUG(423, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy441; - if (yych != 'i') goto yy193; -yy441: - YYDEBUG(441, *YYCURSOR); + if (yych == 'M') goto yy424; + if (yych != 'm') goto yy193; +yy424: + YYDEBUG(424, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy442; - if (yych != 'n') goto yy193; -yy442: - YYDEBUG(442, *YYCURSOR); + if (yych == 'E') goto yy425; + if (yych != 'e') goto yy193; +yy425: + YYDEBUG(425, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'G') goto yy443; - if (yych != 'g') goto yy193; -yy443: - YYDEBUG(443, *YYCURSOR); + if (yych == 'R') goto yy426; + if (yych != 'r') goto yy193; +yy426: + YYDEBUG(426, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'I') goto yy427; + if (yych != 'i') goto yy193; +yy427: + YYDEBUG(427, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'C') goto yy428; + if (yych != 'c') goto yy193; +yy428: + YYDEBUG(428, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(444, *YYCURSOR); + YYDEBUG(429, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy443; + if (yych == '\t') goto yy428; goto yy193; } else { - if (yych <= ' ') goto yy443; + if (yych <= ' ') goto yy428; if (yych != ')') goto yy193; } - YYDEBUG(445, *YYCURSOR); + YYDEBUG(430, *YYCURSOR); ++YYCURSOR; - YYDEBUG(446, *YYCURSOR); + YYDEBUG(431, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1063 "Zend/zend_language_scanner.l" +#line 1067 "Zend/zend_language_scanner.l" { - return T_STRING_CAST; + return T_NUMERIC_CAST; } -#line 4967 "Zend/zend_language_scanner.c" -yy447: - YYDEBUG(447, *YYCURSOR); +#line 4717 "Zend/zend_language_scanner.c" +yy432: + YYDEBUG(432, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy448; + if (yych == 'R') goto yy433; if (yych != 'r') goto yy193; -yy448: - YYDEBUG(448, *YYCURSOR); +yy433: + YYDEBUG(433, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy449; + if (yych == 'A') goto yy434; if (yych != 'a') goto yy193; -yy449: - YYDEBUG(449, *YYCURSOR); +yy434: + YYDEBUG(434, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy450; + if (yych == 'Y') goto yy435; if (yych != 'y') goto yy193; -yy450: - YYDEBUG(450, *YYCURSOR); +yy435: + YYDEBUG(435, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(451, *YYCURSOR); + YYDEBUG(436, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy450; + if (yych == '\t') goto yy435; goto yy193; } else { - if (yych <= ' ') goto yy450; + if (yych <= ' ') goto yy435; if (yych != ')') goto yy193; } - YYDEBUG(452, *YYCURSOR); + YYDEBUG(437, *YYCURSOR); ++YYCURSOR; - YYDEBUG(453, *YYCURSOR); + YYDEBUG(438, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1071 "Zend/zend_language_scanner.l" { return T_ARRAY_CAST; } -#line 5004 "Zend/zend_language_scanner.c" -yy454: - YYDEBUG(454, *YYCURSOR); +#line 4754 "Zend/zend_language_scanner.c" +yy439: + YYDEBUG(439, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'J') goto yy455; + if (yych == 'J') goto yy440; if (yych != 'j') goto yy193; -yy455: - YYDEBUG(455, *YYCURSOR); +yy440: + YYDEBUG(440, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy456; + if (yych == 'E') goto yy441; if (yych != 'e') goto yy193; -yy456: - YYDEBUG(456, *YYCURSOR); +yy441: + YYDEBUG(441, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy457; + if (yych == 'C') goto yy442; if (yych != 'c') goto yy193; -yy457: - YYDEBUG(457, *YYCURSOR); +yy442: + YYDEBUG(442, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy458; + if (yych == 'T') goto yy443; if (yych != 't') goto yy193; -yy458: - YYDEBUG(458, *YYCURSOR); +yy443: + YYDEBUG(443, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(459, *YYCURSOR); + YYDEBUG(444, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy458; + if (yych == '\t') goto yy443; goto yy193; } else { - if (yych <= ' ') goto yy458; + if (yych <= ' ') goto yy443; if (yych != ')') goto yy193; } - YYDEBUG(460, *YYCURSOR); + YYDEBUG(445, *YYCURSOR); ++YYCURSOR; - YYDEBUG(461, *YYCURSOR); + YYDEBUG(446, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1075 "Zend/zend_language_scanner.l" { return T_OBJECT_CAST; } -#line 5046 "Zend/zend_language_scanner.c" -yy462: - YYDEBUG(462, *YYCURSOR); +#line 4796 "Zend/zend_language_scanner.c" +yy447: + YYDEBUG(447, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy472; - if (yych == 'n') goto yy472; + if (yych == 'N') goto yy457; + if (yych == 'n') goto yy457; goto yy193; -yy463: - YYDEBUG(463, *YYCURSOR); +yy448: + YYDEBUG(448, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy464; + if (yych == 'O') goto yy449; if (yych != 'o') goto yy193; -yy464: - YYDEBUG(464, *YYCURSOR); +yy449: + YYDEBUG(449, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy465; + if (yych == 'L') goto yy450; if (yych != 'l') goto yy193; -yy465: - YYDEBUG(465, *YYCURSOR); +yy450: + YYDEBUG(450, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy470; - if (yych == 'e') goto yy470; - goto yy467; -yy466: - YYDEBUG(466, *YYCURSOR); + if (yych == 'E') goto yy455; + if (yych == 'e') goto yy455; + goto yy452; +yy451: + YYDEBUG(451, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy467: - YYDEBUG(467, *YYCURSOR); +yy452: + YYDEBUG(452, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy466; + if (yych == '\t') goto yy451; goto yy193; } else { - if (yych <= ' ') goto yy466; + if (yych <= ' ') goto yy451; if (yych != ')') goto yy193; } - YYDEBUG(468, *YYCURSOR); + YYDEBUG(453, *YYCURSOR); ++YYCURSOR; - YYDEBUG(469, *YYCURSOR); + YYDEBUG(454, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1079 "Zend/zend_language_scanner.l" { return T_BOOL_CAST; } -#line 5091 "Zend/zend_language_scanner.c" -yy470: - YYDEBUG(470, *YYCURSOR); +#line 4841 "Zend/zend_language_scanner.c" +yy455: + YYDEBUG(455, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy471; + if (yych == 'A') goto yy456; if (yych != 'a') goto yy193; -yy471: - YYDEBUG(471, *YYCURSOR); +yy456: + YYDEBUG(456, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy466; - if (yych == 'n') goto yy466; + if (yych == 'N') goto yy451; + if (yych == 'n') goto yy451; goto yy193; -yy472: - YYDEBUG(472, *YYCURSOR); +yy457: + YYDEBUG(457, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy473; + if (yych == 'A') goto yy458; if (yych != 'a') goto yy193; -yy473: - YYDEBUG(473, *YYCURSOR); +yy458: + YYDEBUG(458, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy474; + if (yych == 'R') goto yy459; if (yych != 'r') goto yy193; -yy474: - YYDEBUG(474, *YYCURSOR); +yy459: + YYDEBUG(459, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy443; - if (yych == 'y') goto yy443; + if (yych == 'Y') goto yy419; + if (yych == 'y') goto yy419; goto yy193; -yy475: - YYDEBUG(475, *YYCURSOR); +yy460: + YYDEBUG(460, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy476; + if (yych == 'S') goto yy461; if (yych != 's') goto yy193; -yy476: - YYDEBUG(476, *YYCURSOR); +yy461: + YYDEBUG(461, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy477; + if (yych == 'E') goto yy462; if (yych != 'e') goto yy193; -yy477: - YYDEBUG(477, *YYCURSOR); +yy462: + YYDEBUG(462, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy478; + if (yych == 'T') goto yy463; if (yych != 't') goto yy193; -yy478: - YYDEBUG(478, *YYCURSOR); +yy463: + YYDEBUG(463, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(479, *YYCURSOR); + YYDEBUG(464, *YYCURSOR); if (yych <= 0x1F) { - if (yych == '\t') goto yy478; + if (yych == '\t') goto yy463; goto yy193; } else { - if (yych <= ' ') goto yy478; + if (yych <= ' ') goto yy463; if (yych != ')') goto yy193; } - YYDEBUG(480, *YYCURSOR); + YYDEBUG(465, *YYCURSOR); ++YYCURSOR; - YYDEBUG(481, *YYCURSOR); + YYDEBUG(466, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1083 "Zend/zend_language_scanner.l" { return T_UNSET_CAST; } -#line 5155 "Zend/zend_language_scanner.c" -yy482: - YYDEBUG(482, *YYCURSOR); +#line 4905 "Zend/zend_language_scanner.c" +yy467: + YYDEBUG(467, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy483; + if (yych == 'R') goto yy468; if (yych != 'r') goto yy186; -yy483: - YYDEBUG(483, *YYCURSOR); +yy468: + YYDEBUG(468, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(484, *YYCURSOR); + YYDEBUG(469, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1051 "Zend/zend_language_scanner.l" { return T_VAR; } -#line 5173 "Zend/zend_language_scanner.c" -yy485: - YYDEBUG(485, *YYCURSOR); +#line 4923 "Zend/zend_language_scanner.c" +yy470: + YYDEBUG(470, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'M') goto yy501; - if (yych == 'm') goto yy501; + if (yych == 'M') goto yy474; + if (yych == 'm') goto yy474; goto yy186; -yy486: - YYDEBUG(486, *YYCURSOR); +yy471: + YYDEBUG(471, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'W') goto yy499; - if (yych == 'w') goto yy499; - goto yy186; -yy487: - YYDEBUG(487, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'M') goto yy488; - if (yych != 'm') goto yy186; -yy488: - YYDEBUG(488, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy489; - if (yych != 'e') goto yy186; -yy489: - YYDEBUG(489, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy490; - if (yych != 'r') goto yy186; -yy490: - YYDEBUG(490, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy491; - if (yych != 'i') goto yy186; -yy491: - YYDEBUG(491, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy492; - if (yych != 'c') goto yy186; -yy492: - YYDEBUG(492, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy494; - } else { - if (yych == '\r') goto yy494; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy494; - if (yych <= '#') goto yy124; - goto yy494; - } else { - if (yych == '&') goto yy494; - goto yy124; - } - } -yy493: - YYDEBUG(493, *YYCURSOR); + if (yych == 'W') goto yy472; + if (yych != 'w') goto yy186; +yy472: + YYDEBUG(472, *YYCURSOR); ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy494: - YYDEBUG(494, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy493; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy493; - if (yych <= '#') goto yy193; - goto yy497; - } else { - if (yych != '&') goto yy193; - } - } -yy495: - YYDEBUG(495, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(496, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy495; - } else { - if (yych == '\r') goto yy495; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy495; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy495; - goto yy193; - } - } -yy497: - YYDEBUG(497, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(498, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1194 "Zend/zend_language_scanner.l" - { - yyless(7); - return T_NUMERIC_HINT; -} -#line 5292 "Zend/zend_language_scanner.c" -yy499: - YYDEBUG(499, *YYCURSOR); - ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(500, *YYCURSOR); + YYDEBUG(473, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1043 "Zend/zend_language_scanner.l" { return T_NEW; } -#line 5305 "Zend/zend_language_scanner.c" -yy501: - YYDEBUG(501, *YYCURSOR); +#line 4947 "Zend/zend_language_scanner.c" +yy474: + YYDEBUG(474, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy502; + if (yych == 'E') goto yy475; if (yych != 'e') goto yy186; -yy502: - YYDEBUG(502, *YYCURSOR); +yy475: + YYDEBUG(475, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy503; + if (yych == 'S') goto yy476; if (yych != 's') goto yy186; -yy503: - YYDEBUG(503, *YYCURSOR); +yy476: + YYDEBUG(476, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy504; + if (yych == 'P') goto yy477; if (yych != 'p') goto yy186; -yy504: - YYDEBUG(504, *YYCURSOR); +yy477: + YYDEBUG(477, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy505; + if (yych == 'A') goto yy478; if (yych != 'a') goto yy186; -yy505: - YYDEBUG(505, *YYCURSOR); +yy478: + YYDEBUG(478, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy506; + if (yych == 'C') goto yy479; if (yych != 'c') goto yy186; -yy506: - YYDEBUG(506, *YYCURSOR); +yy479: + YYDEBUG(479, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy507; + if (yych == 'E') goto yy480; if (yych != 'e') goto yy186; -yy507: - YYDEBUG(507, *YYCURSOR); +yy480: + YYDEBUG(480, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(508, *YYCURSOR); + YYDEBUG(481, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1107 "Zend/zend_language_scanner.l" { return T_NAMESPACE; } -#line 5348 "Zend/zend_language_scanner.c" -yy509: - YYDEBUG(509, *YYCURSOR); +#line 4990 "Zend/zend_language_scanner.c" +yy482: + YYDEBUG(482, *YYCURSOR); ++YYCURSOR; - YYDEBUG(510, *YYCURSOR); + YYDEBUG(483, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1035 "Zend/zend_language_scanner.l" { return T_PAAMAYIM_NEKUDOTAYIM; } -#line 5358 "Zend/zend_language_scanner.c" -yy511: - YYDEBUG(511, *YYCURSOR); +#line 5000 "Zend/zend_language_scanner.c" +yy484: + YYDEBUG(484, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy512: - YYDEBUG(512, *YYCURSOR); +yy485: + YYDEBUG(485, *YYCURSOR); if (yych <= '\f') { if (yych <= 0x08) goto yy140; - if (yych <= '\n') goto yy511; + if (yych <= '\n') goto yy484; goto yy140; } else { - if (yych <= '\r') goto yy511; - if (yych == ' ') goto yy511; + if (yych <= '\r') goto yy484; + if (yych == ' ') goto yy484; goto yy140; } -yy513: - YYDEBUG(513, *YYCURSOR); +yy486: + YYDEBUG(486, *YYCURSOR); ++YYCURSOR; - YYDEBUG(514, *YYCURSOR); + YYDEBUG(487, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1267 "Zend/zend_language_scanner.l" +#line 1211 "Zend/zend_language_scanner.l" { return T_MINUS_EQUAL; } -#line 5384 "Zend/zend_language_scanner.c" -yy515: - YYDEBUG(515, *YYCURSOR); +#line 5026 "Zend/zend_language_scanner.c" +yy488: + YYDEBUG(488, *YYCURSOR); ++YYCURSOR; - YYDEBUG(516, *YYCURSOR); + YYDEBUG(489, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1235 "Zend/zend_language_scanner.l" +#line 1179 "Zend/zend_language_scanner.l" { return T_DEC; } -#line 5394 "Zend/zend_language_scanner.c" -yy517: - YYDEBUG(517, *YYCURSOR); +#line 5036 "Zend/zend_language_scanner.c" +yy490: + YYDEBUG(490, *YYCURSOR); ++YYCURSOR; - YYDEBUG(518, *YYCURSOR); + YYDEBUG(491, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1005 "Zend/zend_language_scanner.l" { yy_push_state(ST_LOOKING_FOR_PROPERTY TSRMLS_CC); return T_OBJECT_OPERATOR; } -#line 5405 "Zend/zend_language_scanner.c" -yy519: - YYDEBUG(519, *YYCURSOR); +#line 5047 "Zend/zend_language_scanner.c" +yy492: + YYDEBUG(492, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'I') goto yy526; + if (yych == 'I') goto yy499; if (yych <= 'N') goto yy186; - goto yy527; + goto yy500; } else { if (yych <= 'i') { if (yych <= 'h') goto yy186; - goto yy526; + goto yy499; } else { - if (yych == 'o') goto yy527; + if (yych == 'o') goto yy500; goto yy186; } } -yy520: - YYDEBUG(520, *YYCURSOR); +yy493: + YYDEBUG(493, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'B') goto yy521; + if (yych == 'B') goto yy494; if (yych != 'b') goto yy186; -yy521: - YYDEBUG(521, *YYCURSOR); +yy494: + YYDEBUG(494, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy522; + if (yych == 'L') goto yy495; if (yych != 'l') goto yy186; -yy522: - YYDEBUG(522, *YYCURSOR); +yy495: + YYDEBUG(495, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy523; + if (yych == 'I') goto yy496; if (yych != 'i') goto yy186; -yy523: - YYDEBUG(523, *YYCURSOR); +yy496: + YYDEBUG(496, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy524; + if (yych == 'C') goto yy497; if (yych != 'c') goto yy186; -yy524: - YYDEBUG(524, *YYCURSOR); +yy497: + YYDEBUG(497, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(525, *YYCURSOR); + YYDEBUG(498, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1155 "Zend/zend_language_scanner.l" { return T_PUBLIC; } -#line 5454 "Zend/zend_language_scanner.c" -yy526: - YYDEBUG(526, *YYCURSOR); +#line 5096 "Zend/zend_language_scanner.c" +yy499: + YYDEBUG(499, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'V') { - if (yych == 'N') goto yy535; + if (yych == 'N') goto yy508; if (yych <= 'U') goto yy186; - goto yy536; + goto yy509; } else { if (yych <= 'n') { if (yych <= 'm') goto yy186; - goto yy535; + goto yy508; } else { - if (yych == 'v') goto yy536; + if (yych == 'v') goto yy509; goto yy186; } } -yy527: - YYDEBUG(527, *YYCURSOR); +yy500: + YYDEBUG(500, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy528; + if (yych == 'T') goto yy501; if (yych != 't') goto yy186; -yy528: - YYDEBUG(528, *YYCURSOR); +yy501: + YYDEBUG(501, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy529; + if (yych == 'E') goto yy502; if (yych != 'e') goto yy186; -yy529: - YYDEBUG(529, *YYCURSOR); +yy502: + YYDEBUG(502, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy530; + if (yych == 'C') goto yy503; if (yych != 'c') goto yy186; -yy530: - YYDEBUG(530, *YYCURSOR); +yy503: + YYDEBUG(503, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy531; + if (yych == 'T') goto yy504; if (yych != 't') goto yy186; -yy531: - YYDEBUG(531, *YYCURSOR); +yy504: + YYDEBUG(504, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy532; + if (yych == 'E') goto yy505; if (yych != 'e') goto yy186; -yy532: - YYDEBUG(532, *YYCURSOR); +yy505: + YYDEBUG(505, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy533; + if (yych == 'D') goto yy506; if (yych != 'd') goto yy186; -yy533: - YYDEBUG(533, *YYCURSOR); +yy506: + YYDEBUG(506, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(534, *YYCURSOR); + YYDEBUG(507, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1151 "Zend/zend_language_scanner.l" { return T_PROTECTED; } -#line 5513 "Zend/zend_language_scanner.c" -yy535: - YYDEBUG(535, *YYCURSOR); +#line 5155 "Zend/zend_language_scanner.c" +yy508: + YYDEBUG(508, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy541; - if (yych == 't') goto yy541; + if (yych == 'T') goto yy514; + if (yych == 't') goto yy514; goto yy186; -yy536: - YYDEBUG(536, *YYCURSOR); +yy509: + YYDEBUG(509, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy537; + if (yych == 'A') goto yy510; if (yych != 'a') goto yy186; -yy537: - YYDEBUG(537, *YYCURSOR); +yy510: + YYDEBUG(510, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy538; + if (yych == 'T') goto yy511; if (yych != 't') goto yy186; -yy538: - YYDEBUG(538, *YYCURSOR); +yy511: + YYDEBUG(511, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy539; + if (yych == 'E') goto yy512; if (yych != 'e') goto yy186; -yy539: - YYDEBUG(539, *YYCURSOR); +yy512: + YYDEBUG(512, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(540, *YYCURSOR); + YYDEBUG(513, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1147 "Zend/zend_language_scanner.l" { return T_PRIVATE; } -#line 5547 "Zend/zend_language_scanner.c" -yy541: - YYDEBUG(541, *YYCURSOR); +#line 5189 "Zend/zend_language_scanner.c" +yy514: + YYDEBUG(514, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(542, *YYCURSOR); + YYDEBUG(515, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 981 "Zend/zend_language_scanner.l" { return T_PRINT; } -#line 5560 "Zend/zend_language_scanner.c" -yy543: - YYDEBUG(543, *YYCURSOR); +#line 5202 "Zend/zend_language_scanner.c" +yy516: + YYDEBUG(516, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy548; - if (yych == 'o') goto yy548; + if (yych == 'O') goto yy521; + if (yych == 'o') goto yy521; goto yy186; -yy544: - YYDEBUG(544, *YYCURSOR); +yy517: + YYDEBUG(517, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy545; + if (yych == 'T') goto yy518; if (yych != 't') goto yy186; -yy545: - YYDEBUG(545, *YYCURSOR); +yy518: + YYDEBUG(518, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy546; + if (yych == 'O') goto yy519; if (yych != 'o') goto yy186; -yy546: - YYDEBUG(546, *YYCURSOR); +yy519: + YYDEBUG(519, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(547, *YYCURSOR); + YYDEBUG(520, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 973 "Zend/zend_language_scanner.l" { return T_GOTO; } -#line 5589 "Zend/zend_language_scanner.c" -yy548: - YYDEBUG(548, *YYCURSOR); +#line 5231 "Zend/zend_language_scanner.c" +yy521: + YYDEBUG(521, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'B') goto yy549; + if (yych == 'B') goto yy522; if (yych != 'b') goto yy186; -yy549: - YYDEBUG(549, *YYCURSOR); +yy522: + YYDEBUG(522, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy550; + if (yych == 'A') goto yy523; if (yych != 'a') goto yy186; -yy550: - YYDEBUG(550, *YYCURSOR); +yy523: + YYDEBUG(523, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy551; + if (yych == 'L') goto yy524; if (yych != 'l') goto yy186; -yy551: - YYDEBUG(551, *YYCURSOR); +yy524: + YYDEBUG(524, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(552, *YYCURSOR); + YYDEBUG(525, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1119 "Zend/zend_language_scanner.l" { return T_GLOBAL; } -#line 5617 "Zend/zend_language_scanner.c" -yy553: - YYDEBUG(553, *YYCURSOR); +#line 5259 "Zend/zend_language_scanner.c" +yy526: + YYDEBUG(526, *YYCURSOR); yych = *++YYCURSOR; - if (yych == '<') goto yy584; + if (yych == '<') goto yy534; goto yy193; -yy554: - YYDEBUG(554, *YYCURSOR); +yy527: + YYDEBUG(527, *YYCURSOR); yych = *++YYCURSOR; goto yy180; -yy555: - YYDEBUG(555, *YYCURSOR); +yy528: + YYDEBUG(528, *YYCURSOR); yych = *++YYCURSOR; goto yy178; -yy556: - YYDEBUG(556, *YYCURSOR); +yy529: + YYDEBUG(529, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy574; - if (yych == 'n') goto yy574; - goto yy186; -yy557: - YYDEBUG(557, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy563; - if (yych == 'o') goto yy563; - goto yy186; -yy558: - YYDEBUG(558, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy559; + if (yych == 'E') goto yy530; if (yych != 'e') goto yy186; -yy559: - YYDEBUG(559, *YYCURSOR); +yy530: + YYDEBUG(530, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy560; + if (yych == 'A') goto yy531; if (yych != 'a') goto yy186; -yy560: - YYDEBUG(560, *YYCURSOR); +yy531: + YYDEBUG(531, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'K') goto yy561; + if (yych == 'K') goto yy532; if (yych != 'k') goto yy186; -yy561: - YYDEBUG(561, *YYCURSOR); +yy532: + YYDEBUG(532, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(562, *YYCURSOR); + YYDEBUG(533, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 965 "Zend/zend_language_scanner.l" { return T_BREAK; } -#line 5670 "Zend/zend_language_scanner.c" -yy563: - YYDEBUG(563, *YYCURSOR); +#line 5300 "Zend/zend_language_scanner.c" +yy534: + YYDEBUG(534, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy564; - if (yych != 'l') goto yy186; -yy564: - YYDEBUG(564, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '9') { - if (yych <= ' ') { - if (yych <= '\f') { - if (yych <= 0x08) goto yy124; - if (yych <= '\n') goto yy566; - goto yy124; - } else { - if (yych <= '\r') goto yy566; - if (yych <= 0x1F) goto yy124; - goto yy566; - } - } else { - if (yych <= '%') { - if (yych == '$') goto yy566; - goto yy124; - } else { - if (yych <= '&') goto yy566; - if (yych <= '/') goto yy124; - goto yy185; - } - } - } else { - if (yych <= '_') { - if (yych <= 'E') { - if (yych <= '@') goto yy124; - if (yych <= 'D') goto yy185; - goto yy571; - } else { - if (yych <= 'Z') goto yy185; - if (yych <= '^') goto yy124; - goto yy185; - } - } else { - if (yych <= 'e') { - if (yych <= '`') goto yy124; - if (yych <= 'd') goto yy185; - goto yy571; - } else { - if (yych <= 'z') goto yy185; - if (yych <= '~') goto yy124; - goto yy185; - } - } - } -yy565: - YYDEBUG(565, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy566: - YYDEBUG(566, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy565; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy565; - if (yych <= '#') goto yy193; - goto yy569; - } else { - if (yych != '&') goto yy193; - } - } -yy567: - YYDEBUG(567, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(568, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy567; - } else { - if (yych == '\r') goto yy567; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy567; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy567; - goto yy193; - } - } -yy569: - YYDEBUG(569, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(570, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1175 "Zend/zend_language_scanner.l" - { - if (yytext[4] == 'e') { - yyless((sizeof("boolean") - 1)); - } else { - yyless((sizeof("bool") - 1)); - } - return T_BOOL_HINT; -} -#line 5784 "Zend/zend_language_scanner.c" -yy571: - YYDEBUG(571, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy572; - if (yych != 'a') goto yy186; -yy572: - YYDEBUG(572, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy573; - if (yych != 'n') goto yy186; -yy573: - YYDEBUG(573, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy566; - } else { - if (yych == '\r') goto yy566; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy566; - if (yych <= '#') goto yy124; - goto yy566; - } else { - if (yych == '&') goto yy566; - goto yy124; - } - } -yy574: - YYDEBUG(574, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy575; - if (yych != 'a') goto yy186; -yy575: - YYDEBUG(575, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy576; - if (yych != 'r') goto yy186; -yy576: - YYDEBUG(576, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'Y') goto yy577; - if (yych != 'y') goto yy186; -yy577: - YYDEBUG(577, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy579; - } else { - if (yych == '\r') goto yy579; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy579; - if (yych <= '#') goto yy124; - goto yy579; - } else { - if (yych == '&') goto yy579; - goto yy124; - } - } -yy578: - YYDEBUG(578, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy579: - YYDEBUG(579, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy578; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy578; - if (yych <= '#') goto yy193; - goto yy582; - } else { - if (yych != '&') goto yy193; - } - } -yy580: - YYDEBUG(580, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(581, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy580; - } else { - if (yych == '\r') goto yy580; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy580; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy580; - goto yy193; - } - } -yy582: - YYDEBUG(582, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(583, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1184 "Zend/zend_language_scanner.l" - { - yyless(6); - return T_STRING_HINT; -} -#line 5916 "Zend/zend_language_scanner.c" -yy584: - YYDEBUG(584, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == '<') goto yy263; + if (yych == '<') goto yy265; goto yy193; -yy585: - YYDEBUG(585, *YYCURSOR); +yy535: + YYDEBUG(535, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy601; - if (yych == 'a') goto yy601; + if (yych == 'A') goto yy542; + if (yych == 'a') goto yy542; goto yy186; -yy586: - YYDEBUG(586, *YYCURSOR); +yy536: + YYDEBUG(536, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'R') { - if (yych == 'A') goto yy593; - if (yych <= 'Q') goto yy186; - goto yy594; - } else { - if (yych <= 'a') { - if (yych <= '`') goto yy186; - goto yy593; - } else { - if (yych == 'r') goto yy594; - goto yy186; - } - } -yy587: - YYDEBUG(587, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy588; + if (yych == 'I') goto yy537; if (yych != 'i') goto yy186; -yy588: - YYDEBUG(588, *YYCURSOR); +yy537: + YYDEBUG(537, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy589; + if (yych == 'T') goto yy538; if (yych != 't') goto yy186; -yy589: - YYDEBUG(589, *YYCURSOR); +yy538: + YYDEBUG(538, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy590; + if (yych == 'C') goto yy539; if (yych != 'c') goto yy186; -yy590: - YYDEBUG(590, *YYCURSOR); +yy539: + YYDEBUG(539, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy591; + if (yych == 'H') goto yy540; if (yych != 'h') goto yy186; -yy591: - YYDEBUG(591, *YYCURSOR); +yy540: + YYDEBUG(540, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(592, *YYCURSOR); + YYDEBUG(541, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 949 "Zend/zend_language_scanner.l" { return T_SWITCH; } -#line 5976 "Zend/zend_language_scanner.c" -yy593: - YYDEBUG(593, *YYCURSOR); +#line 5344 "Zend/zend_language_scanner.c" +yy542: + YYDEBUG(542, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy597; - if (yych == 't') goto yy597; - goto yy186; -yy594: - YYDEBUG(594, *YYCURSOR); + if (yych == 'T') goto yy543; + if (yych != 't') goto yy186; +yy543: + YYDEBUG(543, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy595; + if (yych == 'I') goto yy544; if (yych != 'i') goto yy186; -yy595: - YYDEBUG(595, *YYCURSOR); +yy544: + YYDEBUG(544, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy596; - if (yych != 'n') goto yy186; -yy596: - YYDEBUG(596, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'G') goto yy577; - if (yych == 'g') goto yy577; - goto yy186; -yy597: - YYDEBUG(597, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy598; - if (yych != 'i') goto yy186; -yy598: - YYDEBUG(598, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy599; + if (yych == 'C') goto yy545; if (yych != 'c') goto yy186; -yy599: - YYDEBUG(599, *YYCURSOR); +yy545: + YYDEBUG(545, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(600, *YYCURSOR); + YYDEBUG(546, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1135 "Zend/zend_language_scanner.l" { return T_STATIC; } -#line 6021 "Zend/zend_language_scanner.c" -yy601: - YYDEBUG(601, *YYCURSOR); +#line 5372 "Zend/zend_language_scanner.c" +yy547: + YYDEBUG(547, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy602; - if (yych != 'l') goto yy186; -yy602: - YYDEBUG(602, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy603; - if (yych != 'a') goto yy186; -yy603: - YYDEBUG(603, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy604; - if (yych != 'r') goto yy186; -yy604: - YYDEBUG(604, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy606; - } else { - if (yych == '\r') goto yy606; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy606; - if (yych <= '#') goto yy124; - goto yy606; - } else { - if (yych == '&') goto yy606; - goto yy124; - } - } -yy605: - YYDEBUG(605, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy606: - YYDEBUG(606, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy605; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy605; - if (yych <= '#') goto yy193; - goto yy609; - } else { - if (yych != '&') goto yy193; - } - } -yy607: - YYDEBUG(607, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(608, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy607; - } else { - if (yych == '\r') goto yy607; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy607; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy607; - goto yy193; - } - } -yy609: - YYDEBUG(609, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(610, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1189 "Zend/zend_language_scanner.l" - { - yyless(6); - return T_SCALAR_HINT; -} -#line 6118 "Zend/zend_language_scanner.c" -yy611: - YYDEBUG(611, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'S') goto yy622; - if (yych == 's') goto yy622; + if (yych == 'S') goto yy558; + if (yych == 's') goto yy558; goto yy186; -yy612: - YYDEBUG(612, *YYCURSOR); +yy548: + YYDEBUG(548, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy620; - if (yych == 'd') goto yy620; + if (yych == 'D') goto yy556; + if (yych == 'd') goto yy556; goto yy186; -yy613: - YYDEBUG(613, *YYCURSOR); +yy549: + YYDEBUG(549, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy616; - if (yych == 'r') goto yy616; + if (yych == 'R') goto yy552; + if (yych == 'r') goto yy552; goto yy186; -yy614: - YYDEBUG(614, *YYCURSOR); +yy550: + YYDEBUG(550, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(615, *YYCURSOR); + YYDEBUG(551, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 945 "Zend/zend_language_scanner.l" { return T_AS; } -#line 6149 "Zend/zend_language_scanner.c" -yy616: - YYDEBUG(616, *YYCURSOR); +#line 5403 "Zend/zend_language_scanner.c" +yy552: + YYDEBUG(552, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy617; + if (yych == 'A') goto yy553; if (yych != 'a') goto yy186; -yy617: - YYDEBUG(617, *YYCURSOR); +yy553: + YYDEBUG(553, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy618; + if (yych == 'Y') goto yy554; if (yych != 'y') goto yy186; -yy618: - YYDEBUG(618, *YYCURSOR); +yy554: + YYDEBUG(554, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(619, *YYCURSOR); + YYDEBUG(555, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1171 "Zend/zend_language_scanner.l" { return T_ARRAY; } -#line 6172 "Zend/zend_language_scanner.c" -yy620: - YYDEBUG(620, *YYCURSOR); +#line 5426 "Zend/zend_language_scanner.c" +yy556: + YYDEBUG(556, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(621, *YYCURSOR); + YYDEBUG(557, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1319 "Zend/zend_language_scanner.l" +#line 1263 "Zend/zend_language_scanner.l" { return T_LOGICAL_AND; } -#line 6185 "Zend/zend_language_scanner.c" -yy622: - YYDEBUG(622, *YYCURSOR); +#line 5439 "Zend/zend_language_scanner.c" +yy558: + YYDEBUG(558, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy623; + if (yych == 'T') goto yy559; if (yych != 't') goto yy186; -yy623: - YYDEBUG(623, *YYCURSOR); +yy559: + YYDEBUG(559, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy624; + if (yych == 'R') goto yy560; if (yych != 'r') goto yy186; -yy624: - YYDEBUG(624, *YYCURSOR); +yy560: + YYDEBUG(560, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy625; + if (yych == 'A') goto yy561; if (yych != 'a') goto yy186; -yy625: - YYDEBUG(625, *YYCURSOR); +yy561: + YYDEBUG(561, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy626; + if (yych == 'C') goto yy562; if (yych != 'c') goto yy186; -yy626: - YYDEBUG(626, *YYCURSOR); +yy562: + YYDEBUG(562, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy627; + if (yych == 'T') goto yy563; if (yych != 't') goto yy186; -yy627: - YYDEBUG(627, *YYCURSOR); +yy563: + YYDEBUG(563, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(628, *YYCURSOR); + YYDEBUG(564, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1139 "Zend/zend_language_scanner.l" { return T_ABSTRACT; } -#line 6223 "Zend/zend_language_scanner.c" -yy629: - YYDEBUG(629, *YYCURSOR); +#line 5477 "Zend/zend_language_scanner.c" +yy565: + YYDEBUG(565, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy630; + if (yych == 'I') goto yy566; if (yych != 'i') goto yy186; -yy630: - YYDEBUG(630, *YYCURSOR); +yy566: + YYDEBUG(566, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy631; + if (yych == 'L') goto yy567; if (yych != 'l') goto yy186; -yy631: - YYDEBUG(631, *YYCURSOR); +yy567: + YYDEBUG(567, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy632; + if (yych == 'E') goto yy568; if (yych != 'e') goto yy186; -yy632: - YYDEBUG(632, *YYCURSOR); +yy568: + YYDEBUG(568, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(633, *YYCURSOR); + YYDEBUG(569, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 905 "Zend/zend_language_scanner.l" { return T_WHILE; } -#line 6251 "Zend/zend_language_scanner.c" -yy634: - YYDEBUG(634, *YYCURSOR); +#line 5505 "Zend/zend_language_scanner.c" +yy570: + YYDEBUG(570, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(635, *YYCURSOR); + YYDEBUG(571, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 889 "Zend/zend_language_scanner.l" { return T_IF; } -#line 6264 "Zend/zend_language_scanner.c" -yy636: - YYDEBUG(636, *YYCURSOR); +#line 5518 "Zend/zend_language_scanner.c" +yy572: + YYDEBUG(572, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy680; - if (yych == 'p') goto yy680; + if (yych == 'P') goto yy614; + if (yych == 'p') goto yy614; goto yy186; -yy637: - YYDEBUG(637, *YYCURSOR); +yy573: + YYDEBUG(573, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { if (yych <= 'C') { if (yych <= 'B') goto yy186; - goto yy645; + goto yy581; } else { if (yych <= 'R') goto yy186; - if (yych <= 'S') goto yy643; - goto yy644; + if (yych <= 'S') goto yy579; + goto yy580; } } else { if (yych <= 'r') { - if (yych == 'c') goto yy645; + if (yych == 'c') goto yy581; goto yy186; } else { - if (yych <= 's') goto yy643; - if (yych <= 't') goto yy644; + if (yych <= 's') goto yy579; + if (yych <= 't') goto yy580; goto yy186; } } -yy638: - YYDEBUG(638, *YYCURSOR); +yy574: + YYDEBUG(574, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy639; + if (yych == 'S') goto yy575; if (yych != 's') goto yy186; -yy639: - YYDEBUG(639, *YYCURSOR); +yy575: + YYDEBUG(575, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy640; + if (yych == 'E') goto yy576; if (yych != 'e') goto yy186; -yy640: - YYDEBUG(640, *YYCURSOR); +yy576: + YYDEBUG(576, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy641; + if (yych == 'T') goto yy577; if (yych != 't') goto yy186; -yy641: - YYDEBUG(641, *YYCURSOR); +yy577: + YYDEBUG(577, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(642, *YYCURSOR); + YYDEBUG(578, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1123 "Zend/zend_language_scanner.l" { return T_ISSET; } -#line 6320 "Zend/zend_language_scanner.c" -yy643: - YYDEBUG(643, *YYCURSOR); +#line 5574 "Zend/zend_language_scanner.c" +yy579: + YYDEBUG(579, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy666; - if (yych == 't') goto yy666; + if (yych == 'T') goto yy600; + if (yych == 't') goto yy600; goto yy186; -yy644: - YYDEBUG(644, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yych <= '9') { - if (yych <= ' ') { - if (yych <= '\f') { - if (yych <= 0x08) goto yy124; - if (yych <= '\n') goto yy302; - goto yy124; - } else { - if (yych <= '\r') goto yy302; - if (yych <= 0x1F) goto yy124; - goto yy302; - } - } else { - if (yych <= '%') { - if (yych == '$') goto yy302; - goto yy124; - } else { - if (yych <= '&') goto yy302; - if (yych <= '/') goto yy124; - goto yy185; - } - } - } else { - if (yych <= '_') { - if (yych <= 'E') { - if (yych <= '@') goto yy124; - if (yych <= 'D') goto yy185; - goto yy657; - } else { - if (yych <= 'Z') goto yy185; - if (yych <= '^') goto yy124; - goto yy185; - } - } else { - if (yych <= 'e') { - if (yych <= '`') goto yy124; - if (yych <= 'd') goto yy185; - goto yy657; - } else { - if (yych <= 'z') goto yy185; - if (yych <= '~') goto yy124; - goto yy185; - } - } - } -yy645: - YYDEBUG(645, *YYCURSOR); +yy580: + YYDEBUG(580, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy646; + if (yych == 'E') goto yy593; + if (yych == 'e') goto yy593; + goto yy186; +yy581: + YYDEBUG(581, *YYCURSOR); + yych = *++YYCURSOR; + if (yych == 'L') goto yy582; if (yych != 'l') goto yy186; -yy646: - YYDEBUG(646, *YYCURSOR); +yy582: + YYDEBUG(582, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy647; + if (yych == 'U') goto yy583; if (yych != 'u') goto yy186; -yy647: - YYDEBUG(647, *YYCURSOR); +yy583: + YYDEBUG(583, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy648; + if (yych == 'D') goto yy584; if (yych != 'd') goto yy186; -yy648: - YYDEBUG(648, *YYCURSOR); +yy584: + YYDEBUG(584, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy649; + if (yych == 'E') goto yy585; if (yych != 'e') goto yy186; -yy649: - YYDEBUG(649, *YYCURSOR); +yy585: + YYDEBUG(585, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '9') { if (yych >= '0') goto yy185; } else { - if (yych <= '@') goto yy650; + if (yych <= '@') goto yy586; if (yych <= 'Z') goto yy185; } } else { if (yych <= '`') { - if (yych <= '_') goto yy651; + if (yych <= '_') goto yy587; } else { if (yych <= 'z') goto yy185; if (yych >= 0x7F) goto yy185; } } -yy650: - YYDEBUG(650, *YYCURSOR); +yy586: + YYDEBUG(586, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1091 "Zend/zend_language_scanner.l" { return T_INCLUDE; } -#line 6420 "Zend/zend_language_scanner.c" -yy651: - YYDEBUG(651, *YYCURSOR); +#line 5632 "Zend/zend_language_scanner.c" +yy587: + YYDEBUG(587, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy652; + if (yych == 'O') goto yy588; if (yych != 'o') goto yy186; -yy652: - YYDEBUG(652, *YYCURSOR); +yy588: + YYDEBUG(588, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy653; + if (yych == 'N') goto yy589; if (yych != 'n') goto yy186; -yy653: - YYDEBUG(653, *YYCURSOR); +yy589: + YYDEBUG(589, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy654; + if (yych == 'C') goto yy590; if (yych != 'c') goto yy186; -yy654: - YYDEBUG(654, *YYCURSOR); +yy590: + YYDEBUG(590, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy655; + if (yych == 'E') goto yy591; if (yych != 'e') goto yy186; -yy655: - YYDEBUG(655, *YYCURSOR); +yy591: + YYDEBUG(591, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(656, *YYCURSOR); + YYDEBUG(592, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1095 "Zend/zend_language_scanner.l" { return T_INCLUDE_ONCE; } -#line 6453 "Zend/zend_language_scanner.c" -yy657: - YYDEBUG(657, *YYCURSOR); +#line 5665 "Zend/zend_language_scanner.c" +yy593: + YYDEBUG(593, *YYCURSOR); yych = *++YYCURSOR; - if (yych <= 'R') { - if (yych == 'G') goto yy659; - if (yych <= 'Q') goto yy186; - } else { - if (yych <= 'g') { - if (yych <= 'f') goto yy186; - goto yy659; - } else { - if (yych != 'r') goto yy186; - } - } - YYDEBUG(658, *YYCURSOR); + if (yych == 'R') goto yy594; + if (yych != 'r') goto yy186; +yy594: + YYDEBUG(594, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy661; - if (yych == 'f') goto yy661; - goto yy186; -yy659: - YYDEBUG(659, *YYCURSOR); + if (yych == 'F') goto yy595; + if (yych != 'f') goto yy186; +yy595: + YYDEBUG(595, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy660; - if (yych != 'e') goto yy186; -yy660: - YYDEBUG(660, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'R') goto yy300; - if (yych == 'r') goto yy300; - goto yy186; -yy661: - YYDEBUG(661, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy662; + if (yych == 'A') goto yy596; if (yych != 'a') goto yy186; -yy662: - YYDEBUG(662, *YYCURSOR); +yy596: + YYDEBUG(596, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy663; + if (yych == 'C') goto yy597; if (yych != 'c') goto yy186; -yy663: - YYDEBUG(663, *YYCURSOR); +yy597: + YYDEBUG(597, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy664; + if (yych == 'E') goto yy598; if (yych != 'e') goto yy186; -yy664: - YYDEBUG(664, *YYCURSOR); +yy598: + YYDEBUG(598, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(665, *YYCURSOR); + YYDEBUG(599, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 989 "Zend/zend_language_scanner.l" { return T_INTERFACE; } -#line 6511 "Zend/zend_language_scanner.c" -yy666: - YYDEBUG(666, *YYCURSOR); +#line 5703 "Zend/zend_language_scanner.c" +yy600: + YYDEBUG(600, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'E') { - if (yych == 'A') goto yy667; + if (yych == 'A') goto yy601; if (yych <= 'D') goto yy186; - goto yy668; + goto yy602; } else { if (yych <= 'a') { if (yych <= '`') goto yy186; } else { - if (yych == 'e') goto yy668; + if (yych == 'e') goto yy602; goto yy186; } } -yy667: - YYDEBUG(667, *YYCURSOR); +yy601: + YYDEBUG(601, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy674; - if (yych == 'n') goto yy674; + if (yych == 'N') goto yy608; + if (yych == 'n') goto yy608; goto yy186; -yy668: - YYDEBUG(668, *YYCURSOR); +yy602: + YYDEBUG(602, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy669; + if (yych == 'A') goto yy603; if (yych != 'a') goto yy186; -yy669: - YYDEBUG(669, *YYCURSOR); +yy603: + YYDEBUG(603, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy670; + if (yych == 'D') goto yy604; if (yych != 'd') goto yy186; -yy670: - YYDEBUG(670, *YYCURSOR); +yy604: + YYDEBUG(604, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy671; + if (yych == 'O') goto yy605; if (yych != 'o') goto yy186; -yy671: - YYDEBUG(671, *YYCURSOR); +yy605: + YYDEBUG(605, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy672; + if (yych == 'F') goto yy606; if (yych != 'f') goto yy186; -yy672: - YYDEBUG(672, *YYCURSOR); +yy606: + YYDEBUG(606, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(673, *YYCURSOR); + YYDEBUG(607, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1115 "Zend/zend_language_scanner.l" { return T_INSTEADOF; } -#line 6565 "Zend/zend_language_scanner.c" -yy674: - YYDEBUG(674, *YYCURSOR); +#line 5757 "Zend/zend_language_scanner.c" +yy608: + YYDEBUG(608, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy675; + if (yych == 'C') goto yy609; if (yych != 'c') goto yy186; -yy675: - YYDEBUG(675, *YYCURSOR); +yy609: + YYDEBUG(609, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy676; + if (yych == 'E') goto yy610; if (yych != 'e') goto yy186; -yy676: - YYDEBUG(676, *YYCURSOR); +yy610: + YYDEBUG(610, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy677; + if (yych == 'O') goto yy611; if (yych != 'o') goto yy186; -yy677: - YYDEBUG(677, *YYCURSOR); +yy611: + YYDEBUG(611, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy678; + if (yych == 'F') goto yy612; if (yych != 'f') goto yy186; -yy678: - YYDEBUG(678, *YYCURSOR); +yy612: + YYDEBUG(612, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(679, *YYCURSOR); + YYDEBUG(613, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 941 "Zend/zend_language_scanner.l" { return T_INSTANCEOF; } -#line 6598 "Zend/zend_language_scanner.c" -yy680: - YYDEBUG(680, *YYCURSOR); +#line 5790 "Zend/zend_language_scanner.c" +yy614: + YYDEBUG(614, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy681; + if (yych == 'L') goto yy615; if (yych != 'l') goto yy186; -yy681: - YYDEBUG(681, *YYCURSOR); +yy615: + YYDEBUG(615, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy682; + if (yych == 'E') goto yy616; if (yych != 'e') goto yy186; -yy682: - YYDEBUG(682, *YYCURSOR); +yy616: + YYDEBUG(616, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'M') goto yy683; + if (yych == 'M') goto yy617; if (yych != 'm') goto yy186; -yy683: - YYDEBUG(683, *YYCURSOR); +yy617: + YYDEBUG(617, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy684; + if (yych == 'E') goto yy618; if (yych != 'e') goto yy186; -yy684: - YYDEBUG(684, *YYCURSOR); +yy618: + YYDEBUG(618, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy685; + if (yych == 'N') goto yy619; if (yych != 'n') goto yy186; -yy685: - YYDEBUG(685, *YYCURSOR); +yy619: + YYDEBUG(619, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy686; + if (yych == 'T') goto yy620; if (yych != 't') goto yy186; -yy686: - YYDEBUG(686, *YYCURSOR); +yy620: + YYDEBUG(620, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy687; + if (yych == 'S') goto yy621; if (yych != 's') goto yy186; -yy687: - YYDEBUG(687, *YYCURSOR); +yy621: + YYDEBUG(621, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(688, *YYCURSOR); + YYDEBUG(622, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1001 "Zend/zend_language_scanner.l" { return T_IMPLEMENTS; } -#line 6646 "Zend/zend_language_scanner.c" -yy689: - YYDEBUG(689, *YYCURSOR); +#line 5838 "Zend/zend_language_scanner.c" +yy623: + YYDEBUG(623, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy697; - if (yych == 'r') goto yy697; + if (yych == 'R') goto yy631; + if (yych == 'r') goto yy631; goto yy186; -yy690: - YYDEBUG(690, *YYCURSOR); +yy624: + YYDEBUG(624, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'Y') { - if (yych == 'A') goto yy693; + if (yych == 'A') goto yy627; if (yych <= 'X') goto yy186; } else { if (yych <= 'a') { if (yych <= '`') goto yy186; - goto yy693; + goto yy627; } else { if (yych != 'y') goto yy186; } } - YYDEBUG(691, *YYCURSOR); + YYDEBUG(625, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(692, *YYCURSOR); + YYDEBUG(626, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 877 "Zend/zend_language_scanner.l" { return T_TRY; } -#line 6678 "Zend/zend_language_scanner.c" -yy693: - YYDEBUG(693, *YYCURSOR); +#line 5870 "Zend/zend_language_scanner.c" +yy627: + YYDEBUG(627, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy694; + if (yych == 'I') goto yy628; if (yych != 'i') goto yy186; -yy694: - YYDEBUG(694, *YYCURSOR); +yy628: + YYDEBUG(628, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy695; + if (yych == 'T') goto yy629; if (yych != 't') goto yy186; -yy695: - YYDEBUG(695, *YYCURSOR); +yy629: + YYDEBUG(629, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(696, *YYCURSOR); + YYDEBUG(630, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 993 "Zend/zend_language_scanner.l" { return T_TRAIT; } -#line 6701 "Zend/zend_language_scanner.c" -yy697: - YYDEBUG(697, *YYCURSOR); +#line 5893 "Zend/zend_language_scanner.c" +yy631: + YYDEBUG(631, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy698; + if (yych == 'O') goto yy632; if (yych != 'o') goto yy186; -yy698: - YYDEBUG(698, *YYCURSOR); +yy632: + YYDEBUG(632, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'W') goto yy699; + if (yych == 'W') goto yy633; if (yych != 'w') goto yy186; -yy699: - YYDEBUG(699, *YYCURSOR); +yy633: + YYDEBUG(633, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(700, *YYCURSOR); + YYDEBUG(634, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 885 "Zend/zend_language_scanner.l" { return T_THROW; } -#line 6724 "Zend/zend_language_scanner.c" -yy701: - YYDEBUG(701, *YYCURSOR); +#line 5916 "Zend/zend_language_scanner.c" +yy635: + YYDEBUG(635, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { - if (yych <= 'P') { - if (yych == 'A') goto yy704; - goto yy186; - } else { - if (yych <= 'Q') goto yy703; - if (yych <= 'R') goto yy186; - if (yych <= 'S') goto yy705; - } + if (yych == 'Q') goto yy637; + if (yych <= 'S') goto yy186; } else { if (yych <= 'q') { - if (yych == 'a') goto yy704; if (yych <= 'p') goto yy186; - goto yy703; + goto yy637; } else { - if (yych <= 'r') goto yy186; - if (yych <= 's') goto yy705; - if (yych >= 'u') goto yy186; + if (yych != 't') goto yy186; } } - YYDEBUG(702, *YYCURSOR); + YYDEBUG(636, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy735; - if (yych == 'u') goto yy735; + if (yych == 'U') goto yy649; + if (yych == 'u') goto yy649; goto yy186; -yy703: - YYDEBUG(703, *YYCURSOR); +yy637: + YYDEBUG(637, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy724; - if (yych == 'u') goto yy724; - goto yy186; -yy704: - YYDEBUG(704, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy717; - if (yych == 'l') goto yy717; - goto yy186; -yy705: - YYDEBUG(705, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'O') goto yy706; - if (yych != 'o') goto yy186; -yy706: - YYDEBUG(706, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'U') goto yy707; + if (yych == 'U') goto yy638; if (yych != 'u') goto yy186; -yy707: - YYDEBUG(707, *YYCURSOR); +yy638: + YYDEBUG(638, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy708; - if (yych != 'r') goto yy186; -yy708: - YYDEBUG(708, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'C') goto yy709; - if (yych != 'c') goto yy186; -yy709: - YYDEBUG(709, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy710; - if (yych != 'e') goto yy186; -yy710: - YYDEBUG(710, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy712; - } else { - if (yych == '\r') goto yy712; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy712; - if (yych <= '#') goto yy124; - goto yy712; - } else { - if (yych == '&') goto yy712; - goto yy124; - } - } -yy711: - YYDEBUG(711, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy712: - YYDEBUG(712, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy711; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy711; - if (yych <= '#') goto yy193; - goto yy715; - } else { - if (yych != '&') goto yy193; - } - } -yy713: - YYDEBUG(713, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(714, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy713; - } else { - if (yych == '\r') goto yy713; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy713; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy713; - goto yy193; - } - } -yy715: - YYDEBUG(715, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(716, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1221 "Zend/zend_language_scanner.l" - { - yyless((sizeof("resource") - 1)); - return T_RESOURCE_HINT; -} -#line 6871 "Zend/zend_language_scanner.c" -yy717: - YYDEBUG(717, *YYCURSOR); - yyaccept = 0; - yych = *(YYMARKER = ++YYCURSOR); - if (yybm[0+yych] & 4) { - goto yy185; - } - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy124; - goto yy719; - } else { - if (yych == '\r') goto yy719; - goto yy124; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy719; - if (yych <= '#') goto yy124; - goto yy719; - } else { - if (yych == '&') goto yy719; - goto yy124; - } - } -yy718: - YYDEBUG(718, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; -yy719: - YYDEBUG(719, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - if (yych <= '\t') goto yy718; - } else { - if (yych != '\r') goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy718; - if (yych <= '#') goto yy193; - goto yy722; - } else { - if (yych != '&') goto yy193; - } - } -yy720: - YYDEBUG(720, *YYCURSOR); - ++YYCURSOR; - YYFILL(1); - yych = *YYCURSOR; - YYDEBUG(721, *YYCURSOR); - if (yych <= 0x1F) { - if (yych <= '\n') { - if (yych <= 0x08) goto yy193; - goto yy720; - } else { - if (yych == '\r') goto yy720; - goto yy193; - } - } else { - if (yych <= '$') { - if (yych <= ' ') goto yy720; - if (yych <= '#') goto yy193; - } else { - if (yych == '&') goto yy720; - goto yy193; - } - } -yy722: - YYDEBUG(722, *YYCURSOR); - ++YYCURSOR; - YYDEBUG(723, *YYCURSOR); - yyleng = YYCURSOR - SCNG(yy_text); -#line 1210 "Zend/zend_language_scanner.l" - { - if (yytext[4] == 'l') { - yyless((sizeof("double") - 1)); - } else if (yytext[4] == 't') { - yyless((sizeof("float") - 1)); - } else { - yyless(4); - } - return T_DOUBLE_HINT; -} -#line 6959 "Zend/zend_language_scanner.c" -yy724: - YYDEBUG(724, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'I') goto yy725; + if (yych == 'I') goto yy639; if (yych != 'i') goto yy186; -yy725: - YYDEBUG(725, *YYCURSOR); +yy639: + YYDEBUG(639, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy726; + if (yych == 'R') goto yy640; if (yych != 'r') goto yy186; -yy726: - YYDEBUG(726, *YYCURSOR); +yy640: + YYDEBUG(640, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy727; + if (yych == 'E') goto yy641; if (yych != 'e') goto yy186; -yy727: - YYDEBUG(727, *YYCURSOR); +yy641: + YYDEBUG(641, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '9') { if (yych >= '0') goto yy185; } else { - if (yych <= '@') goto yy728; + if (yych <= '@') goto yy642; if (yych <= 'Z') goto yy185; } } else { if (yych <= '`') { - if (yych <= '_') goto yy729; + if (yych <= '_') goto yy643; } else { if (yych <= 'z') goto yy185; if (yych >= 0x7F) goto yy185; } } -yy728: - YYDEBUG(728, *YYCURSOR); +yy642: + YYDEBUG(642, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1099 "Zend/zend_language_scanner.l" { return T_REQUIRE; } -#line 7000 "Zend/zend_language_scanner.c" -yy729: - YYDEBUG(729, *YYCURSOR); +#line 5981 "Zend/zend_language_scanner.c" +yy643: + YYDEBUG(643, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy730; + if (yych == 'O') goto yy644; if (yych != 'o') goto yy186; -yy730: - YYDEBUG(730, *YYCURSOR); +yy644: + YYDEBUG(644, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy731; + if (yych == 'N') goto yy645; if (yych != 'n') goto yy186; -yy731: - YYDEBUG(731, *YYCURSOR); +yy645: + YYDEBUG(645, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy732; + if (yych == 'C') goto yy646; if (yych != 'c') goto yy186; -yy732: - YYDEBUG(732, *YYCURSOR); +yy646: + YYDEBUG(646, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy733; + if (yych == 'E') goto yy647; if (yych != 'e') goto yy186; -yy733: - YYDEBUG(733, *YYCURSOR); +yy647: + YYDEBUG(647, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(734, *YYCURSOR); + YYDEBUG(648, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1103 "Zend/zend_language_scanner.l" { return T_REQUIRE_ONCE; } -#line 7033 "Zend/zend_language_scanner.c" -yy735: - YYDEBUG(735, *YYCURSOR); +#line 6014 "Zend/zend_language_scanner.c" +yy649: + YYDEBUG(649, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy736; + if (yych == 'R') goto yy650; if (yych != 'r') goto yy186; -yy736: - YYDEBUG(736, *YYCURSOR); +yy650: + YYDEBUG(650, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy737; + if (yych == 'N') goto yy651; if (yych != 'n') goto yy186; -yy737: - YYDEBUG(737, *YYCURSOR); +yy651: + YYDEBUG(651, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(738, *YYCURSOR); + YYDEBUG(652, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 873 "Zend/zend_language_scanner.l" { return T_RETURN; } -#line 7056 "Zend/zend_language_scanner.c" -yy739: - YYDEBUG(739, *YYCURSOR); +#line 6037 "Zend/zend_language_scanner.c" +yy653: + YYDEBUG(653, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { if (yych <= 'R') goto yy186; - if (yych <= 'S') goto yy761; - goto yy760; + if (yych <= 'S') goto yy675; + goto yy674; } else { if (yych <= 'r') goto yy186; - if (yych <= 's') goto yy761; - if (yych <= 't') goto yy760; + if (yych <= 's') goto yy675; + if (yych <= 't') goto yy674; goto yy186; } -yy740: - YYDEBUG(740, *YYCURSOR); +yy654: + YYDEBUG(654, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'O') { - if (yych == 'A') goto yy752; + if (yych == 'A') goto yy666; if (yych <= 'N') goto yy186; - goto yy753; + goto yy667; } else { if (yych <= 'a') { if (yych <= '`') goto yy186; - goto yy752; + goto yy666; } else { - if (yych == 'o') goto yy753; + if (yych == 'o') goto yy667; goto yy186; } } -yy741: - YYDEBUG(741, *YYCURSOR); +yy655: + YYDEBUG(655, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy742; + if (yych == 'N') goto yy656; if (yych != 'n') goto yy186; -yy742: - YYDEBUG(742, *YYCURSOR); +yy656: + YYDEBUG(656, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { if (yych <= 'R') goto yy186; - if (yych >= 'T') goto yy744; + if (yych >= 'T') goto yy658; } else { if (yych <= 'r') goto yy186; - if (yych <= 's') goto yy743; - if (yych <= 't') goto yy744; + if (yych <= 's') goto yy657; + if (yych <= 't') goto yy658; goto yy186; } -yy743: - YYDEBUG(743, *YYCURSOR); +yy657: + YYDEBUG(657, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy750; - if (yych == 't') goto yy750; + if (yych == 'T') goto yy664; + if (yych == 't') goto yy664; goto yy186; -yy744: - YYDEBUG(744, *YYCURSOR); +yy658: + YYDEBUG(658, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy745; + if (yych == 'I') goto yy659; if (yych != 'i') goto yy186; -yy745: - YYDEBUG(745, *YYCURSOR); +yy659: + YYDEBUG(659, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy746; + if (yych == 'N') goto yy660; if (yych != 'n') goto yy186; -yy746: - YYDEBUG(746, *YYCURSOR); +yy660: + YYDEBUG(660, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy747; + if (yych == 'U') goto yy661; if (yych != 'u') goto yy186; -yy747: - YYDEBUG(747, *YYCURSOR); +yy661: + YYDEBUG(661, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy748; + if (yych == 'E') goto yy662; if (yych != 'e') goto yy186; -yy748: - YYDEBUG(748, *YYCURSOR); +yy662: + YYDEBUG(662, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(749, *YYCURSOR); + YYDEBUG(663, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 969 "Zend/zend_language_scanner.l" { return T_CONTINUE; } -#line 7141 "Zend/zend_language_scanner.c" -yy750: - YYDEBUG(750, *YYCURSOR); +#line 6122 "Zend/zend_language_scanner.c" +yy664: + YYDEBUG(664, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(751, *YYCURSOR); + YYDEBUG(665, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 869 "Zend/zend_language_scanner.l" { return T_CONST; } -#line 7154 "Zend/zend_language_scanner.c" -yy752: - YYDEBUG(752, *YYCURSOR); +#line 6135 "Zend/zend_language_scanner.c" +yy666: + YYDEBUG(666, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy757; - if (yych == 's') goto yy757; + if (yych == 'S') goto yy671; + if (yych == 's') goto yy671; goto yy186; -yy753: - YYDEBUG(753, *YYCURSOR); +yy667: + YYDEBUG(667, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy754; + if (yych == 'N') goto yy668; if (yych != 'n') goto yy186; -yy754: - YYDEBUG(754, *YYCURSOR); +yy668: + YYDEBUG(668, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy755; + if (yych == 'E') goto yy669; if (yych != 'e') goto yy186; -yy755: - YYDEBUG(755, *YYCURSOR); +yy669: + YYDEBUG(669, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(756, *YYCURSOR); + YYDEBUG(670, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1047 "Zend/zend_language_scanner.l" { return T_CLONE; } -#line 7183 "Zend/zend_language_scanner.c" -yy757: - YYDEBUG(757, *YYCURSOR); +#line 6164 "Zend/zend_language_scanner.c" +yy671: + YYDEBUG(671, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy758; + if (yych == 'S') goto yy672; if (yych != 's') goto yy186; -yy758: - YYDEBUG(758, *YYCURSOR); +yy672: + YYDEBUG(672, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(759, *YYCURSOR); + YYDEBUG(673, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 985 "Zend/zend_language_scanner.l" { return T_CLASS; } -#line 7201 "Zend/zend_language_scanner.c" -yy760: - YYDEBUG(760, *YYCURSOR); +#line 6182 "Zend/zend_language_scanner.c" +yy674: + YYDEBUG(674, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy764; - if (yych == 'c') goto yy764; + if (yych == 'C') goto yy678; + if (yych == 'c') goto yy678; goto yy186; -yy761: - YYDEBUG(761, *YYCURSOR); +yy675: + YYDEBUG(675, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy762; + if (yych == 'E') goto yy676; if (yych != 'e') goto yy186; -yy762: - YYDEBUG(762, *YYCURSOR); +yy676: + YYDEBUG(676, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(763, *YYCURSOR); + YYDEBUG(677, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 957 "Zend/zend_language_scanner.l" { return T_CASE; } -#line 7225 "Zend/zend_language_scanner.c" -yy764: - YYDEBUG(764, *YYCURSOR); +#line 6206 "Zend/zend_language_scanner.c" +yy678: + YYDEBUG(678, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy765; + if (yych == 'H') goto yy679; if (yych != 'h') goto yy186; -yy765: - YYDEBUG(765, *YYCURSOR); +yy679: + YYDEBUG(679, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(766, *YYCURSOR); + YYDEBUG(680, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 881 "Zend/zend_language_scanner.l" { return T_CATCH; } -#line 7243 "Zend/zend_language_scanner.c" -yy767: - YYDEBUG(767, *YYCURSOR); +#line 6224 "Zend/zend_language_scanner.c" +yy681: + YYDEBUG(681, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy787; - if (yych == 'n') goto yy787; + if (yych == 'N') goto yy698; + if (yych == 'n') goto yy698; goto yy186; -yy768: - YYDEBUG(768, *YYCURSOR); +yy682: + YYDEBUG(682, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy785; - if (yych == 'o') goto yy785; + if (yych == 'R') goto yy691; + if (yych == 'r') goto yy691; goto yy186; -yy769: - YYDEBUG(769, *YYCURSOR); +yy683: + YYDEBUG(683, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy778; - if (yych == 'r') goto yy778; - goto yy186; -yy770: - YYDEBUG(770, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'N') goto yy771; + if (yych == 'N') goto yy684; if (yych != 'n') goto yy186; -yy771: - YYDEBUG(771, *YYCURSOR); +yy684: + YYDEBUG(684, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy772; + if (yych == 'C') goto yy685; if (yych != 'c') goto yy186; -yy772: - YYDEBUG(772, *YYCURSOR); +yy685: + YYDEBUG(685, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy773; + if (yych == 'T') goto yy686; if (yych != 't') goto yy186; -yy773: - YYDEBUG(773, *YYCURSOR); +yy686: + YYDEBUG(686, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy774; + if (yych == 'I') goto yy687; if (yych != 'i') goto yy186; -yy774: - YYDEBUG(774, *YYCURSOR); +yy687: + YYDEBUG(687, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy775; + if (yych == 'O') goto yy688; if (yych != 'o') goto yy186; -yy775: - YYDEBUG(775, *YYCURSOR); +yy688: + YYDEBUG(688, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy776; + if (yych == 'N') goto yy689; if (yych != 'n') goto yy186; -yy776: - YYDEBUG(776, *YYCURSOR); +yy689: + YYDEBUG(689, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(777, *YYCURSOR); + YYDEBUG(690, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 865 "Zend/zend_language_scanner.l" { return T_FUNCTION; } -#line 7304 "Zend/zend_language_scanner.c" -yy778: - YYDEBUG(778, *YYCURSOR); +#line 6279 "Zend/zend_language_scanner.c" +yy691: + YYDEBUG(691, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { - if (yych <= '/') goto yy779; + if (yych <= '/') goto yy692; if (yych <= '9') goto yy185; } else { - if (yych == 'E') goto yy780; + if (yych == 'E') goto yy693; if (yych <= 'Z') goto yy185; } } else { if (yych <= 'd') { if (yych != '`') goto yy185; } else { - if (yych <= 'e') goto yy780; + if (yych <= 'e') goto yy693; if (yych <= 'z') goto yy185; if (yych >= 0x7F) goto yy185; } } -yy779: - YYDEBUG(779, *YYCURSOR); +yy692: + YYDEBUG(692, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 917 "Zend/zend_language_scanner.l" { return T_FOR; } -#line 7332 "Zend/zend_language_scanner.c" -yy780: - YYDEBUG(780, *YYCURSOR); +#line 6307 "Zend/zend_language_scanner.c" +yy693: + YYDEBUG(693, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy781; + if (yych == 'A') goto yy694; if (yych != 'a') goto yy186; -yy781: - YYDEBUG(781, *YYCURSOR); +yy694: + YYDEBUG(694, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy782; + if (yych == 'C') goto yy695; if (yych != 'c') goto yy186; -yy782: - YYDEBUG(782, *YYCURSOR); +yy695: + YYDEBUG(695, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy783; + if (yych == 'H') goto yy696; if (yych != 'h') goto yy186; -yy783: - YYDEBUG(783, *YYCURSOR); +yy696: + YYDEBUG(696, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(784, *YYCURSOR); + YYDEBUG(697, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 925 "Zend/zend_language_scanner.l" { return T_FOREACH; } -#line 7360 "Zend/zend_language_scanner.c" -yy785: - YYDEBUG(785, *YYCURSOR); +#line 6335 "Zend/zend_language_scanner.c" +yy698: + YYDEBUG(698, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy786; + if (yych == 'A') goto yy699; if (yych != 'a') goto yy186; -yy786: - YYDEBUG(786, *YYCURSOR); +yy699: + YYDEBUG(699, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy717; - if (yych == 't') goto yy717; - goto yy186; -yy787: - YYDEBUG(787, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'A') goto yy788; - if (yych != 'a') goto yy186; -yy788: - YYDEBUG(788, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy789; + if (yych == 'L') goto yy700; if (yych != 'l') goto yy186; -yy789: - YYDEBUG(789, *YYCURSOR); +yy700: + YYDEBUG(700, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(790, *YYCURSOR); + YYDEBUG(701, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1143 "Zend/zend_language_scanner.l" { return T_FINAL; } -#line 7394 "Zend/zend_language_scanner.c" -yy791: - YYDEBUG(791, *YYCURSOR); +#line 6358 "Zend/zend_language_scanner.c" +yy702: + YYDEBUG(702, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'F') { - if (yych == 'C') goto yy800; + if (yych == 'C') goto yy708; if (yych <= 'E') goto yy186; - goto yy801; + goto yy709; } else { if (yych <= 'c') { if (yych <= 'b') goto yy186; - goto yy800; + goto yy708; } else { - if (yych == 'f') goto yy801; + if (yych == 'f') goto yy709; goto yy186; } } -yy792: - YYDEBUG(792, *YYCURSOR); +yy703: + YYDEBUG(703, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy798; - if (yych == 'e') goto yy798; + if (yych == 'E') goto yy706; + if (yych == 'e') goto yy706; goto yy186; -yy793: - YYDEBUG(793, *YYCURSOR); +yy704: + YYDEBUG(704, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) <= '^') { - if (yych <= '@') { - if (yych <= '/') goto yy794; - if (yych <= '9') goto yy185; - } else { - if (yych == 'U') goto yy795; - if (yych <= 'Z') goto yy185; - } - } else { - if (yych <= 't') { - if (yych != '`') goto yy185; - } else { - if (yych <= 'u') goto yy795; - if (yych <= 'z') goto yy185; - if (yych >= 0x7F) goto yy185; - } + if (yybm[0+(yych = *YYCURSOR)] & 8) { + goto yy185; } -yy794: - YYDEBUG(794, *YYCURSOR); + YYDEBUG(705, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 913 "Zend/zend_language_scanner.l" { return T_DO; } -#line 7444 "Zend/zend_language_scanner.c" -yy795: - YYDEBUG(795, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'B') goto yy796; - if (yych != 'b') goto yy186; -yy796: - YYDEBUG(796, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'L') goto yy797; - if (yych != 'l') goto yy186; -yy797: - YYDEBUG(797, *YYCURSOR); - yych = *++YYCURSOR; - if (yych == 'E') goto yy717; - if (yych == 'e') goto yy717; - goto yy186; -yy798: - YYDEBUG(798, *YYCURSOR); +#line 6393 "Zend/zend_language_scanner.c" +yy706: + YYDEBUG(706, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(799, *YYCURSOR); + YYDEBUG(707, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 861 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 7473 "Zend/zend_language_scanner.c" -yy800: - YYDEBUG(800, *YYCURSOR); +#line 6406 "Zend/zend_language_scanner.c" +yy708: + YYDEBUG(708, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy807; - if (yych == 'l') goto yy807; + if (yych == 'L') goto yy715; + if (yych == 'l') goto yy715; goto yy186; -yy801: - YYDEBUG(801, *YYCURSOR); +yy709: + YYDEBUG(709, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy802; + if (yych == 'A') goto yy710; if (yych != 'a') goto yy186; -yy802: - YYDEBUG(802, *YYCURSOR); +yy710: + YYDEBUG(710, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'U') goto yy803; + if (yych == 'U') goto yy711; if (yych != 'u') goto yy186; -yy803: - YYDEBUG(803, *YYCURSOR); +yy711: + YYDEBUG(711, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy804; + if (yych == 'L') goto yy712; if (yych != 'l') goto yy186; -yy804: - YYDEBUG(804, *YYCURSOR); +yy712: + YYDEBUG(712, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy805; + if (yych == 'T') goto yy713; if (yych != 't') goto yy186; -yy805: - YYDEBUG(805, *YYCURSOR); +yy713: + YYDEBUG(713, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(806, *YYCURSOR); + YYDEBUG(714, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 961 "Zend/zend_language_scanner.l" { return T_DEFAULT; } -#line 7512 "Zend/zend_language_scanner.c" -yy807: - YYDEBUG(807, *YYCURSOR); +#line 6445 "Zend/zend_language_scanner.c" +yy715: + YYDEBUG(715, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy808; + if (yych == 'A') goto yy716; if (yych != 'a') goto yy186; -yy808: - YYDEBUG(808, *YYCURSOR); +yy716: + YYDEBUG(716, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy809; + if (yych == 'R') goto yy717; if (yych != 'r') goto yy186; -yy809: - YYDEBUG(809, *YYCURSOR); +yy717: + YYDEBUG(717, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy810; + if (yych == 'E') goto yy718; if (yych != 'e') goto yy186; -yy810: - YYDEBUG(810, *YYCURSOR); +yy718: + YYDEBUG(718, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(811, *YYCURSOR); + YYDEBUG(719, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 933 "Zend/zend_language_scanner.l" { return T_DECLARE; } -#line 7540 "Zend/zend_language_scanner.c" -yy812: - YYDEBUG(812, *YYCURSOR); +#line 6473 "Zend/zend_language_scanner.c" +yy720: + YYDEBUG(720, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy874; - if (yych == 'h') goto yy874; + if (yych == 'H') goto yy782; + if (yych == 'h') goto yy782; goto yy186; -yy813: - YYDEBUG(813, *YYCURSOR); +yy721: + YYDEBUG(721, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy868; - if (yych == 's') goto yy868; + if (yych == 'S') goto yy776; + if (yych == 's') goto yy776; goto yy186; -yy814: - YYDEBUG(814, *YYCURSOR); +yy722: + YYDEBUG(722, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'P') goto yy864; - if (yych == 'p') goto yy864; + if (yych == 'P') goto yy772; + if (yych == 'p') goto yy772; goto yy186; -yy815: - YYDEBUG(815, *YYCURSOR); +yy723: + YYDEBUG(723, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy830; - if (yych == 'd') goto yy830; + if (yych == 'D') goto yy738; + if (yych == 'd') goto yy738; goto yy186; -yy816: - YYDEBUG(816, *YYCURSOR); +yy724: + YYDEBUG(724, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy827; - if (yych == 'a') goto yy827; + if (yych == 'A') goto yy735; + if (yych == 'a') goto yy735; goto yy186; -yy817: - YYDEBUG(817, *YYCURSOR); +yy725: + YYDEBUG(725, *YYCURSOR); yych = *++YYCURSOR; if (yych <= 'T') { - if (yych == 'I') goto yy818; + if (yych == 'I') goto yy726; if (yych <= 'S') goto yy186; - goto yy819; + goto yy727; } else { if (yych <= 'i') { if (yych <= 'h') goto yy186; } else { - if (yych == 't') goto yy819; + if (yych == 't') goto yy727; goto yy186; } } -yy818: - YYDEBUG(818, *YYCURSOR); +yy726: + YYDEBUG(726, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy825; - if (yych == 't') goto yy825; + if (yych == 'T') goto yy733; + if (yych == 't') goto yy733; goto yy186; -yy819: - YYDEBUG(819, *YYCURSOR); +yy727: + YYDEBUG(727, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy820; + if (yych == 'E') goto yy728; if (yych != 'e') goto yy186; -yy820: - YYDEBUG(820, *YYCURSOR); +yy728: + YYDEBUG(728, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'N') goto yy821; + if (yych == 'N') goto yy729; if (yych != 'n') goto yy186; -yy821: - YYDEBUG(821, *YYCURSOR); +yy729: + YYDEBUG(729, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'D') goto yy822; + if (yych == 'D') goto yy730; if (yych != 'd') goto yy186; -yy822: - YYDEBUG(822, *YYCURSOR); +yy730: + YYDEBUG(730, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'S') goto yy823; + if (yych == 'S') goto yy731; if (yych != 's') goto yy186; -yy823: - YYDEBUG(823, *YYCURSOR); +yy731: + YYDEBUG(731, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(824, *YYCURSOR); + YYDEBUG(732, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 997 "Zend/zend_language_scanner.l" { return T_EXTENDS; } -#line 7624 "Zend/zend_language_scanner.c" -yy825: - YYDEBUG(825, *YYCURSOR); +#line 6557 "Zend/zend_language_scanner.c" +yy733: + YYDEBUG(733, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(826, *YYCURSOR); + YYDEBUG(734, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 857 "Zend/zend_language_scanner.l" { return T_EXIT; } -#line 7637 "Zend/zend_language_scanner.c" -yy827: - YYDEBUG(827, *YYCURSOR); +#line 6570 "Zend/zend_language_scanner.c" +yy735: + YYDEBUG(735, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy828; + if (yych == 'L') goto yy736; if (yych != 'l') goto yy186; -yy828: - YYDEBUG(828, *YYCURSOR); +yy736: + YYDEBUG(736, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(829, *YYCURSOR); + YYDEBUG(737, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1087 "Zend/zend_language_scanner.l" { return T_EVAL; } -#line 7655 "Zend/zend_language_scanner.c" -yy830: - YYDEBUG(830, *YYCURSOR); +#line 6588 "Zend/zend_language_scanner.c" +yy738: + YYDEBUG(738, *YYCURSOR); yych = *++YYCURSOR; YYDEBUG(-1, yych); switch (yych) { case 'D': - case 'd': goto yy831; + case 'd': goto yy739; case 'F': - case 'f': goto yy832; + case 'f': goto yy740; case 'I': - case 'i': goto yy833; + case 'i': goto yy741; case 'S': - case 's': goto yy834; + case 's': goto yy742; case 'W': - case 'w': goto yy835; + case 'w': goto yy743; default: goto yy186; } -yy831: - YYDEBUG(831, *YYCURSOR); +yy739: + YYDEBUG(739, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy857; - if (yych == 'e') goto yy857; + if (yych == 'E') goto yy765; + if (yych == 'e') goto yy765; goto yy186; -yy832: - YYDEBUG(832, *YYCURSOR); +yy740: + YYDEBUG(740, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy849; - if (yych == 'o') goto yy849; + if (yych == 'O') goto yy757; + if (yych == 'o') goto yy757; goto yy186; -yy833: - YYDEBUG(833, *YYCURSOR); +yy741: + YYDEBUG(741, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy847; - if (yych == 'f') goto yy847; + if (yych == 'F') goto yy755; + if (yych == 'f') goto yy755; goto yy186; -yy834: - YYDEBUG(834, *YYCURSOR); +yy742: + YYDEBUG(742, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'W') goto yy841; - if (yych == 'w') goto yy841; + if (yych == 'W') goto yy749; + if (yych == 'w') goto yy749; goto yy186; -yy835: - YYDEBUG(835, *YYCURSOR); +yy743: + YYDEBUG(743, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy836; + if (yych == 'H') goto yy744; if (yych != 'h') goto yy186; -yy836: - YYDEBUG(836, *YYCURSOR); +yy744: + YYDEBUG(744, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy837; + if (yych == 'I') goto yy745; if (yych != 'i') goto yy186; -yy837: - YYDEBUG(837, *YYCURSOR); +yy745: + YYDEBUG(745, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy838; + if (yych == 'L') goto yy746; if (yych != 'l') goto yy186; -yy838: - YYDEBUG(838, *YYCURSOR); +yy746: + YYDEBUG(746, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy839; + if (yych == 'E') goto yy747; if (yych != 'e') goto yy186; -yy839: - YYDEBUG(839, *YYCURSOR); +yy747: + YYDEBUG(747, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(840, *YYCURSOR); + YYDEBUG(748, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 909 "Zend/zend_language_scanner.l" { return T_ENDWHILE; } -#line 7729 "Zend/zend_language_scanner.c" -yy841: - YYDEBUG(841, *YYCURSOR); +#line 6662 "Zend/zend_language_scanner.c" +yy749: + YYDEBUG(749, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'I') goto yy842; + if (yych == 'I') goto yy750; if (yych != 'i') goto yy186; -yy842: - YYDEBUG(842, *YYCURSOR); +yy750: + YYDEBUG(750, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy843; + if (yych == 'T') goto yy751; if (yych != 't') goto yy186; -yy843: - YYDEBUG(843, *YYCURSOR); +yy751: + YYDEBUG(751, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy844; + if (yych == 'C') goto yy752; if (yych != 'c') goto yy186; -yy844: - YYDEBUG(844, *YYCURSOR); +yy752: + YYDEBUG(752, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy845; + if (yych == 'H') goto yy753; if (yych != 'h') goto yy186; -yy845: - YYDEBUG(845, *YYCURSOR); +yy753: + YYDEBUG(753, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(846, *YYCURSOR); + YYDEBUG(754, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 953 "Zend/zend_language_scanner.l" { return T_ENDSWITCH; } -#line 7762 "Zend/zend_language_scanner.c" -yy847: - YYDEBUG(847, *YYCURSOR); +#line 6695 "Zend/zend_language_scanner.c" +yy755: + YYDEBUG(755, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(848, *YYCURSOR); + YYDEBUG(756, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 897 "Zend/zend_language_scanner.l" { return T_ENDIF; } -#line 7775 "Zend/zend_language_scanner.c" -yy849: - YYDEBUG(849, *YYCURSOR); +#line 6708 "Zend/zend_language_scanner.c" +yy757: + YYDEBUG(757, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy850; + if (yych == 'R') goto yy758; if (yych != 'r') goto yy186; -yy850: - YYDEBUG(850, *YYCURSOR); +yy758: + YYDEBUG(758, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { - if (yych <= '/') goto yy851; + if (yych <= '/') goto yy759; if (yych <= '9') goto yy185; } else { - if (yych == 'E') goto yy852; + if (yych == 'E') goto yy760; if (yych <= 'Z') goto yy185; } } else { if (yych <= 'd') { if (yych != '`') goto yy185; } else { - if (yych <= 'e') goto yy852; + if (yych <= 'e') goto yy760; if (yych <= 'z') goto yy185; if (yych >= 0x7F) goto yy185; } } -yy851: - YYDEBUG(851, *YYCURSOR); +yy759: + YYDEBUG(759, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 921 "Zend/zend_language_scanner.l" { return T_ENDFOR; } -#line 7808 "Zend/zend_language_scanner.c" -yy852: - YYDEBUG(852, *YYCURSOR); +#line 6741 "Zend/zend_language_scanner.c" +yy760: + YYDEBUG(760, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy853; + if (yych == 'A') goto yy761; if (yych != 'a') goto yy186; -yy853: - YYDEBUG(853, *YYCURSOR); +yy761: + YYDEBUG(761, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy854; + if (yych == 'C') goto yy762; if (yych != 'c') goto yy186; -yy854: - YYDEBUG(854, *YYCURSOR); +yy762: + YYDEBUG(762, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'H') goto yy855; + if (yych == 'H') goto yy763; if (yych != 'h') goto yy186; -yy855: - YYDEBUG(855, *YYCURSOR); +yy763: + YYDEBUG(763, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(856, *YYCURSOR); + YYDEBUG(764, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 929 "Zend/zend_language_scanner.l" { return T_ENDFOREACH; } -#line 7836 "Zend/zend_language_scanner.c" -yy857: - YYDEBUG(857, *YYCURSOR); +#line 6769 "Zend/zend_language_scanner.c" +yy765: + YYDEBUG(765, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'C') goto yy858; + if (yych == 'C') goto yy766; if (yych != 'c') goto yy186; -yy858: - YYDEBUG(858, *YYCURSOR); +yy766: + YYDEBUG(766, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'L') goto yy859; + if (yych == 'L') goto yy767; if (yych != 'l') goto yy186; -yy859: - YYDEBUG(859, *YYCURSOR); +yy767: + YYDEBUG(767, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'A') goto yy860; + if (yych == 'A') goto yy768; if (yych != 'a') goto yy186; -yy860: - YYDEBUG(860, *YYCURSOR); +yy768: + YYDEBUG(768, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'R') goto yy861; + if (yych == 'R') goto yy769; if (yych != 'r') goto yy186; -yy861: - YYDEBUG(861, *YYCURSOR); +yy769: + YYDEBUG(769, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy862; + if (yych == 'E') goto yy770; if (yych != 'e') goto yy186; -yy862: - YYDEBUG(862, *YYCURSOR); +yy770: + YYDEBUG(770, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(863, *YYCURSOR); + YYDEBUG(771, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 937 "Zend/zend_language_scanner.l" { return T_ENDDECLARE; } -#line 7874 "Zend/zend_language_scanner.c" -yy864: - YYDEBUG(864, *YYCURSOR); +#line 6807 "Zend/zend_language_scanner.c" +yy772: + YYDEBUG(772, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'T') goto yy865; + if (yych == 'T') goto yy773; if (yych != 't') goto yy186; -yy865: - YYDEBUG(865, *YYCURSOR); +yy773: + YYDEBUG(773, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'Y') goto yy866; + if (yych == 'Y') goto yy774; if (yych != 'y') goto yy186; -yy866: - YYDEBUG(866, *YYCURSOR); +yy774: + YYDEBUG(774, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(867, *YYCURSOR); + YYDEBUG(775, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1127 "Zend/zend_language_scanner.l" { return T_EMPTY; } -#line 7897 "Zend/zend_language_scanner.c" -yy868: - YYDEBUG(868, *YYCURSOR); +#line 6830 "Zend/zend_language_scanner.c" +yy776: + YYDEBUG(776, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'E') goto yy869; + if (yych == 'E') goto yy777; if (yych != 'e') goto yy186; -yy869: - YYDEBUG(869, *YYCURSOR); +yy777: + YYDEBUG(777, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '^') { if (yych <= '@') { - if (yych <= '/') goto yy870; + if (yych <= '/') goto yy778; if (yych <= '9') goto yy185; } else { - if (yych == 'I') goto yy871; + if (yych == 'I') goto yy779; if (yych <= 'Z') goto yy185; } } else { if (yych <= 'h') { if (yych != '`') goto yy185; } else { - if (yych <= 'i') goto yy871; + if (yych <= 'i') goto yy779; if (yych <= 'z') goto yy185; if (yych >= 0x7F) goto yy185; } } -yy870: - YYDEBUG(870, *YYCURSOR); +yy778: + YYDEBUG(778, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 901 "Zend/zend_language_scanner.l" { return T_ELSE; } -#line 7930 "Zend/zend_language_scanner.c" -yy871: - YYDEBUG(871, *YYCURSOR); +#line 6863 "Zend/zend_language_scanner.c" +yy779: + YYDEBUG(779, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'F') goto yy872; + if (yych == 'F') goto yy780; if (yych != 'f') goto yy186; -yy872: - YYDEBUG(872, *YYCURSOR); +yy780: + YYDEBUG(780, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(873, *YYCURSOR); + YYDEBUG(781, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 893 "Zend/zend_language_scanner.l" { return T_ELSEIF; } -#line 7948 "Zend/zend_language_scanner.c" -yy874: - YYDEBUG(874, *YYCURSOR); +#line 6881 "Zend/zend_language_scanner.c" +yy782: + YYDEBUG(782, *YYCURSOR); yych = *++YYCURSOR; - if (yych == 'O') goto yy875; + if (yych == 'O') goto yy783; if (yych != 'o') goto yy186; -yy875: - YYDEBUG(875, *YYCURSOR); +yy783: + YYDEBUG(783, *YYCURSOR); ++YYCURSOR; - if (yybm[0+(yych = *YYCURSOR)] & 4) { + if (yybm[0+(yych = *YYCURSOR)] & 8) { goto yy185; } - YYDEBUG(876, *YYCURSOR); + YYDEBUG(784, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 977 "Zend/zend_language_scanner.l" { return T_ECHO; } -#line 7966 "Zend/zend_language_scanner.c" +#line 6899 "Zend/zend_language_scanner.c" } /* *********************************** */ yyc_ST_LOOKING_FOR_PROPERTY: @@ -8001,39 +6934,39 @@ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, }; - YYDEBUG(877, *YYCURSOR); + YYDEBUG(785, *YYCURSOR); YYFILL(2); yych = *YYCURSOR; if (yych <= '-') { if (yych <= '\r') { - if (yych <= 0x08) goto yy885; - if (yych <= '\n') goto yy879; - if (yych <= '\f') goto yy885; + if (yych <= 0x08) goto yy793; + if (yych <= '\n') goto yy787; + if (yych <= '\f') goto yy793; } else { - if (yych == ' ') goto yy879; - if (yych <= ',') goto yy885; - goto yy881; + if (yych == ' ') goto yy787; + if (yych <= ',') goto yy793; + goto yy789; } } else { if (yych <= '_') { - if (yych <= '@') goto yy885; - if (yych <= 'Z') goto yy883; - if (yych <= '^') goto yy885; - goto yy883; + if (yych <= '@') goto yy793; + if (yych <= 'Z') goto yy791; + if (yych <= '^') goto yy793; + goto yy791; } else { - if (yych <= '`') goto yy885; - if (yych <= 'z') goto yy883; - if (yych <= '~') goto yy885; - goto yy883; + if (yych <= '`') goto yy793; + if (yych <= 'z') goto yy791; + if (yych <= '~') goto yy793; + goto yy791; } } -yy879: - YYDEBUG(879, *YYCURSOR); +yy787: + YYDEBUG(787, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy891; -yy880: - YYDEBUG(880, *YYCURSOR); + goto yy799; +yy788: + YYDEBUG(788, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1010 "Zend/zend_language_scanner.l" { @@ -8043,13 +6976,13 @@ HANDLE_NEWLINES(yytext, yyleng); return T_WHITESPACE; } -#line 8047 "Zend/zend_language_scanner.c" -yy881: - YYDEBUG(881, *YYCURSOR); +#line 6980 "Zend/zend_language_scanner.c" +yy789: + YYDEBUG(789, *YYCURSOR); ++YYCURSOR; - if ((yych = *YYCURSOR) == '>') goto yy888; -yy882: - YYDEBUG(882, *YYCURSOR); + if ((yych = *YYCURSOR) == '>') goto yy796; +yy790: + YYDEBUG(790, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1029 "Zend/zend_language_scanner.l" { @@ -8057,14 +6990,14 @@ yy_pop_state(TSRMLS_C); goto restart; } -#line 8061 "Zend/zend_language_scanner.c" -yy883: - YYDEBUG(883, *YYCURSOR); +#line 6994 "Zend/zend_language_scanner.c" +yy791: + YYDEBUG(791, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy887; -yy884: - YYDEBUG(884, *YYCURSOR); + goto yy795; +yy792: + YYDEBUG(792, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1022 "Zend/zend_language_scanner.l" { @@ -8073,43 +7006,43 @@ zendlval->type = IS_STRING; return T_STRING; } -#line 8077 "Zend/zend_language_scanner.c" -yy885: - YYDEBUG(885, *YYCURSOR); +#line 7010 "Zend/zend_language_scanner.c" +yy793: + YYDEBUG(793, *YYCURSOR); yych = *++YYCURSOR; - goto yy882; -yy886: - YYDEBUG(886, *YYCURSOR); + goto yy790; +yy794: + YYDEBUG(794, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy887: - YYDEBUG(887, *YYCURSOR); +yy795: + YYDEBUG(795, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy886; + goto yy794; } - goto yy884; -yy888: - YYDEBUG(888, *YYCURSOR); + goto yy792; +yy796: + YYDEBUG(796, *YYCURSOR); ++YYCURSOR; - YYDEBUG(889, *YYCURSOR); + YYDEBUG(797, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); #line 1018 "Zend/zend_language_scanner.l" { return T_OBJECT_OPERATOR; } -#line 8102 "Zend/zend_language_scanner.c" -yy890: - YYDEBUG(890, *YYCURSOR); +#line 7035 "Zend/zend_language_scanner.c" +yy798: + YYDEBUG(798, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy891: - YYDEBUG(891, *YYCURSOR); +yy799: + YYDEBUG(799, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy890; + goto yy798; } - goto yy880; + goto yy788; } /* *********************************** */ yyc_ST_LOOKING_FOR_VARNAME: @@ -8148,27 +7081,27 @@ 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, }; - YYDEBUG(892, *YYCURSOR); + YYDEBUG(800, *YYCURSOR); YYFILL(2); yych = *YYCURSOR; if (yych <= '_') { - if (yych <= '@') goto yy896; - if (yych <= 'Z') goto yy894; - if (yych <= '^') goto yy896; + if (yych <= '@') goto yy804; + if (yych <= 'Z') goto yy802; + if (yych <= '^') goto yy804; } else { - if (yych <= '`') goto yy896; - if (yych <= 'z') goto yy894; - if (yych <= '~') goto yy896; + if (yych <= '`') goto yy804; + if (yych <= 'z') goto yy802; + if (yych <= '~') goto yy804; } -yy894: - YYDEBUG(894, *YYCURSOR); +yy802: + YYDEBUG(802, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy899; -yy895: - YYDEBUG(895, *YYCURSOR); + goto yy807; +yy803: + YYDEBUG(803, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1361 "Zend/zend_language_scanner.l" +#line 1305 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; @@ -8176,42 +7109,42 @@ yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); return T_STRING_VARNAME; } -#line 8180 "Zend/zend_language_scanner.c" -yy896: - YYDEBUG(896, *YYCURSOR); +#line 7113 "Zend/zend_language_scanner.c" +yy804: + YYDEBUG(804, *YYCURSOR); ++YYCURSOR; - YYDEBUG(897, *YYCURSOR); + YYDEBUG(805, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1370 "Zend/zend_language_scanner.l" +#line 1314 "Zend/zend_language_scanner.l" { yyless(0); yy_pop_state(TSRMLS_C); yy_push_state(ST_IN_SCRIPTING TSRMLS_CC); goto restart; } -#line 8193 "Zend/zend_language_scanner.c" -yy898: - YYDEBUG(898, *YYCURSOR); +#line 7126 "Zend/zend_language_scanner.c" +yy806: + YYDEBUG(806, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy899: - YYDEBUG(899, *YYCURSOR); +yy807: + YYDEBUG(807, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy898; + goto yy806; } - goto yy895; + goto yy803; } /* *********************************** */ yyc_ST_NOWDOC: - YYDEBUG(900, *YYCURSOR); + YYDEBUG(808, *YYCURSOR); YYFILL(1); yych = *YYCURSOR; - YYDEBUG(902, *YYCURSOR); + YYDEBUG(810, *YYCURSOR); ++YYCURSOR; - YYDEBUG(903, *YYCURSOR); + YYDEBUG(811, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2204 "Zend/zend_language_scanner.l" +#line 2148 "Zend/zend_language_scanner.l" { int newline = 0; @@ -8266,7 +7199,7 @@ HANDLE_NEWLINES(yytext, yyleng - newline); return T_ENCAPSED_AND_WHITESPACE; } -#line 8270 "Zend/zend_language_scanner.c" +#line 7203 "Zend/zend_language_scanner.c" /* *********************************** */ yyc_ST_VAR_OFFSET: { @@ -8304,69 +7237,69 @@ 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, }; - YYDEBUG(904, *YYCURSOR); + YYDEBUG(812, *YYCURSOR); YYFILL(3); yych = *YYCURSOR; if (yych <= '/') { if (yych <= ' ') { if (yych <= '\f') { - if (yych <= 0x08) goto yy918; - if (yych <= '\n') goto yy914; - goto yy918; + if (yych <= 0x08) goto yy826; + if (yych <= '\n') goto yy822; + goto yy826; } else { - if (yych <= '\r') goto yy914; - if (yych <= 0x1F) goto yy918; - goto yy914; + if (yych <= '\r') goto yy822; + if (yych <= 0x1F) goto yy826; + goto yy822; } } else { if (yych <= '$') { - if (yych <= '"') goto yy913; - if (yych <= '#') goto yy914; - goto yy909; + if (yych <= '"') goto yy821; + if (yych <= '#') goto yy822; + goto yy817; } else { - if (yych == '\'') goto yy914; - goto yy913; + if (yych == '\'') goto yy822; + goto yy821; } } } else { if (yych <= '\\') { if (yych <= '@') { - if (yych <= '0') goto yy906; - if (yych <= '9') goto yy908; - goto yy913; + if (yych <= '0') goto yy814; + if (yych <= '9') goto yy816; + goto yy821; } else { - if (yych <= 'Z') goto yy916; - if (yych <= '[') goto yy913; - goto yy914; + if (yych <= 'Z') goto yy824; + if (yych <= '[') goto yy821; + goto yy822; } } else { if (yych <= '_') { - if (yych <= ']') goto yy911; - if (yych <= '^') goto yy913; - goto yy916; + if (yych <= ']') goto yy819; + if (yych <= '^') goto yy821; + goto yy824; } else { - if (yych <= '`') goto yy913; - if (yych <= 'z') goto yy916; - if (yych <= '~') goto yy913; - goto yy916; + if (yych <= '`') goto yy821; + if (yych <= 'z') goto yy824; + if (yych <= '~') goto yy821; + goto yy824; } } } -yy906: - YYDEBUG(906, *YYCURSOR); +yy814: + YYDEBUG(814, *YYCURSOR); yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'W') { - if (yych <= '/') goto yy907; - if (yych <= '9') goto yy929; + if (yych <= '/') goto yy815; + if (yych <= '9') goto yy837; } else { - if (yych <= 'X') goto yy927; - if (yych == 'x') goto yy927; + if (yych <= 'X') goto yy835; + if (yych == 'x') goto yy835; } -yy907: - YYDEBUG(907, *YYCURSOR); +yy815: + YYDEBUG(815, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1420 "Zend/zend_language_scanner.l" +#line 1364 "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)) { zendlval->value.lval = strtol(yytext, NULL, 10); @@ -8378,81 +7311,81 @@ } return T_NUM_STRING; } -#line 8382 "Zend/zend_language_scanner.c" -yy908: - YYDEBUG(908, *YYCURSOR); +#line 7315 "Zend/zend_language_scanner.c" +yy816: + YYDEBUG(816, *YYCURSOR); yych = *++YYCURSOR; - goto yy926; -yy909: - YYDEBUG(909, *YYCURSOR); + goto yy834; +yy817: + YYDEBUG(817, *YYCURSOR); ++YYCURSOR; if ((yych = *YYCURSOR) <= '_') { - if (yych <= '@') goto yy910; - if (yych <= 'Z') goto yy922; - if (yych >= '_') goto yy922; + if (yych <= '@') goto yy818; + if (yych <= 'Z') goto yy830; + if (yych >= '_') goto yy830; } else { - if (yych <= '`') goto yy910; - if (yych <= 'z') goto yy922; - if (yych >= 0x7F) goto yy922; + if (yych <= '`') goto yy818; + if (yych <= 'z') goto yy830; + if (yych >= 0x7F) goto yy830; } -yy910: - YYDEBUG(910, *YYCURSOR); +yy818: + YYDEBUG(818, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1730 "Zend/zend_language_scanner.l" +#line 1674 "Zend/zend_language_scanner.l" { /* Only '[' can be valid, but returning other tokens will allow a more explicit parse error */ return yytext[0]; } -#line 8407 "Zend/zend_language_scanner.c" -yy911: - YYDEBUG(911, *YYCURSOR); +#line 7340 "Zend/zend_language_scanner.c" +yy819: + YYDEBUG(819, *YYCURSOR); ++YYCURSOR; - YYDEBUG(912, *YYCURSOR); + YYDEBUG(820, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1725 "Zend/zend_language_scanner.l" +#line 1669 "Zend/zend_language_scanner.l" { yy_pop_state(TSRMLS_C); return ']'; } -#line 8418 "Zend/zend_language_scanner.c" -yy913: - YYDEBUG(913, *YYCURSOR); +#line 7351 "Zend/zend_language_scanner.c" +yy821: + YYDEBUG(821, *YYCURSOR); yych = *++YYCURSOR; - goto yy910; -yy914: - YYDEBUG(914, *YYCURSOR); + goto yy818; +yy822: + YYDEBUG(822, *YYCURSOR); ++YYCURSOR; - YYDEBUG(915, *YYCURSOR); + YYDEBUG(823, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1735 "Zend/zend_language_scanner.l" +#line 1679 "Zend/zend_language_scanner.l" { /* Invalid rule to return a more explicit parse error with proper line number */ yyless(0); yy_pop_state(TSRMLS_C); return T_ENCAPSED_AND_WHITESPACE; } -#line 8435 "Zend/zend_language_scanner.c" -yy916: - YYDEBUG(916, *YYCURSOR); +#line 7368 "Zend/zend_language_scanner.c" +yy824: + YYDEBUG(824, *YYCURSOR); ++YYCURSOR; yych = *YYCURSOR; - goto yy921; -yy917: - YYDEBUG(917, *YYCURSOR); + goto yy829; +yy825: + YYDEBUG(825, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1742 "Zend/zend_language_scanner.l" +#line 1686 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, yytext, yyleng); zendlval->type = IS_STRING; return T_STRING; } -#line 8450 "Zend/zend_language_scanner.c" -yy918: - YYDEBUG(918, *YYCURSOR); +#line 7383 "Zend/zend_language_scanner.c" +yy826: + YYDEBUG(826, *YYCURSOR); ++YYCURSOR; - YYDEBUG(919, *YYCURSOR); + YYDEBUG(827, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 2260 "Zend/zend_language_scanner.l" +#line 2204 "Zend/zend_language_scanner.l" { if (YYCURSOR > YYLIMIT) { return 0; @@ -8461,100 +7394,100 @@ zend_error(E_COMPILE_WARNING,"Unexpected character in input: '%c' (ASCII=%d) state=%d", yytext[0], yytext[0], YYSTATE); goto restart; } -#line 8465 "Zend/zend_language_scanner.c" -yy920: - YYDEBUG(920, *YYCURSOR); +#line 7398 "Zend/zend_language_scanner.c" +yy828: + YYDEBUG(828, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy921: - YYDEBUG(921, *YYCURSOR); +yy829: + YYDEBUG(829, *YYCURSOR); if (yybm[0+yych] & 32) { - goto yy920; + goto yy828; } - goto yy917; -yy922: - YYDEBUG(922, *YYCURSOR); + goto yy825; +yy830: + YYDEBUG(830, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(923, *YYCURSOR); + YYDEBUG(831, *YYCURSOR); if (yych <= '^') { if (yych <= '9') { - if (yych >= '0') goto yy922; + if (yych >= '0') goto yy830; } else { - if (yych <= '@') goto yy924; - if (yych <= 'Z') goto yy922; + if (yych <= '@') goto yy832; + if (yych <= 'Z') goto yy830; } } else { if (yych <= '`') { - if (yych <= '_') goto yy922; + if (yych <= '_') goto yy830; } else { - if (yych <= 'z') goto yy922; - if (yych >= 0x7F) goto yy922; + if (yych <= 'z') goto yy830; + if (yych >= 0x7F) goto yy830; } } -yy924: - YYDEBUG(924, *YYCURSOR); +yy832: + YYDEBUG(832, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1719 "Zend/zend_language_scanner.l" +#line 1663 "Zend/zend_language_scanner.l" { zend_copy_value(zendlval, (yytext+1), (yyleng-1)); zendlval->type = IS_STRING; return T_VARIABLE; } -#line 8507 "Zend/zend_language_scanner.c" -yy925: - YYDEBUG(925, *YYCURSOR); +#line 7440 "Zend/zend_language_scanner.c" +yy833: + YYDEBUG(833, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; -yy926: - YYDEBUG(926, *YYCURSOR); +yy834: + YYDEBUG(834, *YYCURSOR); if (yybm[0+yych] & 64) { - goto yy925; + goto yy833; } - goto yy907; -yy927: - YYDEBUG(927, *YYCURSOR); + goto yy815; +yy835: + YYDEBUG(835, *YYCURSOR); yych = *++YYCURSOR; if (yybm[0+yych] & 128) { - goto yy932; + goto yy840; } - YYDEBUG(928, *YYCURSOR); + YYDEBUG(836, *YYCURSOR); YYCURSOR = YYMARKER; - goto yy907; -yy929: - YYDEBUG(929, *YYCURSOR); + goto yy815; +yy837: + YYDEBUG(837, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(930, *YYCURSOR); - if (yych <= '/') goto yy931; - if (yych <= '9') goto yy929; -yy931: - YYDEBUG(931, *YYCURSOR); + YYDEBUG(838, *YYCURSOR); + if (yych <= '/') goto yy839; + if (yych <= '9') goto yy837; +yy839: + YYDEBUG(839, *YYCURSOR); yyleng = YYCURSOR - SCNG(yy_text); -#line 1432 "Zend/zend_language_scanner.l" +#line 1376 "Zend/zend_language_scanner.l" { /* Offset must be treated as a string */ zendlval->value.str.val = (char *)estrndup(yytext, yyleng); zendlval->value.str.len = yyleng; zendlval->type = IS_STRING; return T_NUM_STRING; } -#line 8546 "Zend/zend_language_scanner.c" -yy932: - YYDEBUG(932, *YYCURSOR); +#line 7479 "Zend/zend_language_scanner.c" +yy840: + YYDEBUG(840, *YYCURSOR); ++YYCURSOR; YYFILL(1); yych = *YYCURSOR; - YYDEBUG(933, *YYCURSOR); + YYDEBUG(841, *YYCURSOR); if (yybm[0+yych] & 128) { - goto yy932; + goto yy840; } - goto yy931; + goto yy839; } } -#line 2269 "Zend/zend_language_scanner.l" +#line 2213 "Zend/zend_language_scanner.l" } Index: Zend/zend_language_scanner.l =================================================================== --- Zend/zend_language_scanner.l (revision 300267) +++ Zend/zend_language_scanner.l (working copy) @@ -1052,7 +1052,7 @@ return T_VAR; } -"("{TABS_AND_SPACES}("int"|"integer"){TABS_AND_SPACES}")" { +"("{TABS_AND_SPACES}("int"|"integer"|"long"){TABS_AND_SPACES}")" { return T_INT_CAST; } @@ -1064,8 +1064,8 @@ return T_STRING_CAST; } -"("{TABS_AND_SPACES}"scalar"{TABS_AND_SPACES}")" { - return T_SCALAR_CAST; +"("{TABS_AND_SPACES}"numeric"{TABS_AND_SPACES}")" { + return T_NUMERIC_CAST; } "("{TABS_AND_SPACES}"array"{TABS_AND_SPACES}")" { @@ -1172,62 +1172,6 @@ return T_ARRAY; } -("bool"|"boolean"){TABS_AND_SPACES}[ \r\n\t&]*"$" { - if (yytext[4] == 'e') { - yyless((sizeof("boolean") - 1)); - } else { - yyless((sizeof("bool") - 1)); - } - return T_BOOL_HINT; -} - -("string"|"binary"){TABS_AND_SPACES}[ \r\n\t&]*"$" { - yyless(6); - return T_STRING_HINT; -} - -"scalar"{TABS_AND_SPACES}[ \r\n\t&]*"$" { - yyless(6); - return T_SCALAR_HINT; -} - -"numeric"{TABS_AND_SPACES}[ \r\n\t&]*"$" { - yyless(7); - return T_NUMERIC_HINT; -} - -("int"|"integer"|"long"){TABS_AND_SPACES}[ \r\n\t&]*"$" { - if (yytext[3] == 'e') { - yyless((sizeof("integer") - 1)); - } else if (yytext[3] == 'g') { - yyless((sizeof("long") - 1)); - } else { - yyless(3); - } - return T_INT_HINT; -} - -("real"|"double"|"float"){TABS_AND_SPACES}[ \r\n\t&]*"$" { - if (yytext[4] == 'l') { - yyless((sizeof("double") - 1)); - } else if (yytext[4] == 't') { - yyless((sizeof("float") - 1)); - } else { - yyless(4); - } - return T_DOUBLE_HINT; -} - -"resource"{TABS_AND_SPACES}[ \t\r\n&]*"$" { - yyless((sizeof("resource") - 1)); - return T_RESOURCE_HINT; -} - -"object"{TABS_AND_SPACES}[ \t\r\n&]*"$" { - yyless((sizeof("object") - 1)); - return T_OBJECT_HINT; -} - "++" { return T_INC; } Index: Zend/zend_vm_execute.h =================================================================== --- Zend/zend_vm_execute.h (revision 300267) +++ Zend/zend_vm_execute.h (working copy) @@ -348,13 +348,20 @@ ret->var.ptr_ptr = &ret->var.ptr; ret->var.fcall_returned_reference = fbc->common.return_reference; - if (fbc->common.arg_info) { + if (fbc->common.num_args) { zend_uint i=0; zval **p = (zval**)EX(function_state).arguments; ulong arg_count = opline->extended_value; + if (opline->extended_value > fbc->common.num_args) { + p -= opline->extended_value - fbc->common.num_args; + arg_count = fbc->common.num_args; + } + while (arg_count>0) { - zend_verify_arg_type(fbc, ++i, *(p-arg_count), 0 TSRMLS_CC); + if (fbc->common.arg_info[i++].type_hint) { + zend_verify_arg_type(fbc, i, p-arg_count, 0 TSRMLS_CC); + } arg_count--; } } @@ -482,7 +489,10 @@ SAVE_OPLINE(); if (UNEXPECTED(param == NULL)) { - if (zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, NULL, opline->extended_value TSRMLS_CC)) { + if (arg_num > EG(active_op_array)->num_args || + !EG(active_op_array)->arg_info[arg_num-1].type_hint || + zend_verify_null_arg((zend_function *) EG(active_op_array), arg_num, opline->extended_value TSRMLS_CC)) { + char *space; char *class_name; zend_execute_data *ptr; @@ -504,7 +514,11 @@ } else { zval **var_ptr; - zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, *param, opline->extended_value TSRMLS_CC); + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, param, opline->extended_value TSRMLS_CC); + } + } var_ptr = _get_zval_ptr_ptr_cv_BP_VAR_W(EX_CVs(), opline->result.var TSRMLS_CC); Z_DELREF_PP(var_ptr); *var_ptr = *param; @@ -984,8 +998,15 @@ if (param == NULL) { ALLOC_ZVAL(assignment_value); *assignment_value = *opline->op2.zv; - if ((Z_TYPE_P(assignment_value) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT || - Z_TYPE_P(assignment_value)==IS_CONSTANT_ARRAY) { + if ((Z_TYPE_P(assignment_value) & IS_CONSTANT_TYPE_MASK) == IS_CONSTANT) { + INIT_PZVAL(assignment_value); + zval_update_constant(&assignment_value, 0 TSRMLS_CC); + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, &assignment_value, opline->extended_value TSRMLS_CC); + } + } + } else if (Z_TYPE_P(assignment_value) == IS_CONSTANT_ARRAY) { Z_SET_REFCOUNT_P(assignment_value, 1); zval_update_constant(&assignment_value, 0 TSRMLS_CC); } else { @@ -993,11 +1014,15 @@ } INIT_PZVAL(assignment_value); } else { + if (arg_num <= EG(active_op_array)->num_args) { + if (EG(active_op_array)->arg_info[arg_num-1].type_hint) { + zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, param, opline->extended_value TSRMLS_CC); + } + } assignment_value = *param; Z_ADDREF_P(assignment_value); } - zend_verify_arg_type((zend_function *) EG(active_op_array), arg_num, assignment_value, opline->extended_value TSRMLS_CC); var_ptr = _get_zval_ptr_ptr_cv_BP_VAR_W(EX_CVs(), opline->result.var TSRMLS_CC); Z_DELREF_PP(var_ptr); *var_ptr = assignment_value; @@ -2010,6 +2035,9 @@ case IS_OBJECT: convert_to_object(result); break; + case IS_NUMERIC: + convert_scalar_to_number(result TSRMLS_CC); + break; } CHECK_EXCEPTION(); @@ -6333,6 +6361,9 @@ case IS_OBJECT: convert_to_object(result); break; + case IS_NUMERIC: + convert_scalar_to_number(result TSRMLS_CC); + break; } CHECK_EXCEPTION(); @@ -10688,6 +10719,9 @@ case IS_OBJECT: convert_to_object(result); break; + case IS_NUMERIC: + convert_scalar_to_number(result TSRMLS_CC); + break; } if (free_op1.var) {zval_ptr_dtor(&free_op1.var);}; CHECK_EXCEPTION(); @@ -26654,6 +26688,9 @@ case IS_OBJECT: convert_to_object(result); break; + case IS_NUMERIC: + convert_scalar_to_number(result TSRMLS_CC); + break; } CHECK_EXCEPTION();