|
|
| version 1.1.1.3, 2013/07/22 01:32:15 | version 1.1.1.5, 2014/06/15 20:04:03 |
|---|---|
| Line 2 | Line 2 |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | Zend Engine | | | Zend Engine | |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) | | | Copyright (c) 1998-2014 Zend Technologies Ltd. (http://www.zend.com) | |
| +----------------------------------------------------------------------+ | +----------------------------------------------------------------------+ |
| | This source file is subject to version 2.00 of the Zend license, | | | This source file is subject to version 2.00 of the Zend license, | |
| | that is bundled with this package in the file LICENSE, and is | | | that is bundled with this package in the file LICENSE, and is | |
| Line 905 static zend_bool opline_is_fetch_this(const zend_op *o | Line 905 static zend_bool opline_is_fetch_this(const zend_op *o |
| { | { |
| if ((opline->opcode == ZEND_FETCH_W) && (opline->op1_type == IS_CONST) | if ((opline->opcode == ZEND_FETCH_W) && (opline->op1_type == IS_CONST) |
| && (Z_TYPE(CONSTANT(opline->op1.constant)) == IS_STRING) | && (Z_TYPE(CONSTANT(opline->op1.constant)) == IS_STRING) |
| && ((opline->extended_value & ZEND_FETCH_STATIC_MEMBER) != ZEND_FETCH_STATIC_MEMBER) | |
| && (Z_HASH_P(&CONSTANT(opline->op1.constant)) == THIS_HASHVAL) | && (Z_HASH_P(&CONSTANT(opline->op1.constant)) == THIS_HASHVAL) |
| && (Z_STRLEN(CONSTANT(opline->op1.constant)) == (sizeof("this")-1)) | && (Z_STRLEN(CONSTANT(opline->op1.constant)) == (sizeof("this")-1)) |
| && !memcmp(Z_STRVAL(CONSTANT(opline->op1.constant)), "this", sizeof("this"))) { | && !memcmp(Z_STRVAL(CONSTANT(opline->op1.constant)), "this", sizeof("this"))) { |
| Line 1723 void zend_do_begin_function_declaration(znode *functio | Line 1724 void zend_do_begin_function_declaration(znode *functio |
| } | } |
| { | { |
| /* Push a seperator to the switch and foreach stacks */ | /* Push a separator to the switch and foreach stacks */ |
| zend_switch_entry switch_entry; | zend_switch_entry switch_entry; |
| switch_entry.cond.op_type = IS_UNUSED; | switch_entry.cond.op_type = IS_UNUSED; |
| Line 1817 void zend_do_end_function_declaration(const znode *fun | Line 1818 void zend_do_end_function_declaration(const znode *fun |
| CG(active_op_array) = function_token->u.op_array; | CG(active_op_array) = function_token->u.op_array; |
| /* Pop the switch and foreach seperators */ | /* Pop the switch and foreach separators */ |
| zend_stack_del_top(&CG(switch_cond_stack)); | zend_stack_del_top(&CG(switch_cond_stack)); |
| zend_stack_del_top(&CG(foreach_copy_stack)); | zend_stack_del_top(&CG(foreach_copy_stack)); |
| } | } |
| Line 2584 static int generate_free_foreach_copy(const zend_op *f | Line 2585 static int generate_free_foreach_copy(const zend_op *f |
| { | { |
| zend_op *opline; | zend_op *opline; |
| /* If we reach the seperator then stop applying the stack */ | /* If we reach the separator then stop applying the stack */ |
| if (foreach_copy->result_type == IS_UNUSED && foreach_copy->op1_type == IS_UNUSED) { | if (foreach_copy->result_type == IS_UNUSED && foreach_copy->op1_type == IS_UNUSED) { |
| return 1; | return 1; |
| } | } |
| Line 3911 static void zend_traits_init_trait_structures(zend_cla | Line 3912 static void zend_traits_init_trait_structures(zend_cla |
| /** With the other traits, we are more permissive. | /** With the other traits, we are more permissive. |
| We do not give errors for those. This allows to be more | We do not give errors for those. This allows to be more |
| defensive in such definitions. | defensive in such definitions. |
| However, we want to make sure that the insteadof declartion | However, we want to make sure that the insteadof declaration |
| is consistent in itself. | is consistent in itself. |
| */ | */ |
| j = 0; | j = 0; |