]> granicus.if.org Git - php/commitdiff
Replaced (Z_TYPE(x) == IS_REFERENCE) with (Z_ISREF(x))
authorDmitry Stogov <dmitry@zend.com>
Thu, 27 Mar 2014 07:50:45 +0000 (11:50 +0400)
committerDmitry Stogov <dmitry@zend.com>
Thu, 27 Mar 2014 07:50:45 +0000 (11:50 +0400)
Zend/zend_API.c
Zend/zend_builtin_functions.c
Zend/zend_exceptions.c
Zend/zend_execute.c
Zend/zend_execute.h
Zend/zend_operators.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/pcre/php_pcre.c
ext/standard/array.c
main/streams/userspace.c

index c0bb644ee20a1df7deb2241f8ac28c4b0c84f00d..8676f80727fbbb59a141c700f14412971f3158ad 100644 (file)
@@ -227,7 +227,7 @@ ZEND_API char *zend_get_type_by_const(int type) /* {{{ */
 
 ZEND_API char *zend_zval_type_name(const zval *arg) /* {{{ */
 {
-       if (Z_TYPE_P(arg) == IS_REFERENCE) {
+       if (Z_ISREF_P(arg)) {
                arg = Z_REFVAL_P(arg);
        }
        return zend_get_type_by_const(Z_TYPE_P(arg));
@@ -360,7 +360,7 @@ static const char *zend_parse_arg_impl(int arg_num, zval *arg, va_list *va, cons
                spec_walk++;
        }
 
-       if (Z_TYPE_P(arg) == IS_REFERENCE) {
+       if (Z_ISREF_P(arg)) {
                arg = Z_REFVAL_P(arg);
        }
 
@@ -1117,7 +1117,7 @@ static int zval_update_class_constant(zval *pp, int is_static, int offset TSRMLS
 {
 //     zval *p = pp;
 
-       if (Z_TYPE_P(pp) == IS_REFERENCE) {
+       if (Z_ISREF_P(pp)) {
                pp = Z_REFVAL_P(pp);
        }
        if (IS_CONSTANT_TYPE(Z_TYPE_P(pp))) {
@@ -2716,7 +2716,7 @@ ZEND_API int zend_set_hash_symbol(zval *symbol, const char *name, int name_lengt
 
        if (num_symbol_tables <= 0) return FAILURE;
 
-       if (is_ref && Z_TYPE_P(symbol) != IS_REFERENCE) {
+       if (is_ref && !Z_ISREF_P(symbol)) {
                ZVAL_NEW_REF(symbol, symbol);
        }
 
index 06c4774873d18a243cc001180f3ee732e258cf7c..cb52e6ed792ce9506790c1ac504b433bef20e123 100644 (file)
@@ -585,7 +585,7 @@ ZEND_FUNCTION(each)
                return;
        }
 
-       if (Z_TYPE_P(array) == IS_REFERENCE) {
+       if (Z_ISREF_P(array)) {
                array = Z_REFVAL_P(array);
        }
        target_hash = HASH_OF(array);
index 531ec345b766be10c406f19f3e45084388b01566..c798a768c4ba10482cab8baa2510be00f3467257 100644 (file)
@@ -375,7 +375,7 @@ static int _build_trace_args(zval *arg TSRMLS_DC, int num_args, va_list args, ze
         * but that could cause some E_NOTICE and also damn long lines.
         */
 
-       if (Z_TYPE_P(arg) == IS_REFERENCE) {
+       if (Z_ISREF_P(arg)) {
                arg = Z_REFVAL_P(arg);
        }
        switch (Z_TYPE_P(arg)) {
index 0bd3fd3c50778eb6f444b8deb3c097d8d2c4f012..3c97388a758bbb5ac8dcca5fb9edd4aee722a052 100644 (file)
@@ -198,7 +198,7 @@ static zend_always_inline zval *_get_zval_ptr_var_deref(zend_uint var, const zen
                ret = Z_INDIRECT_P(ret);
        }
        should_free->var = ret;
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -281,7 +281,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref(zend_uint var, int type T
        if (UNEXPECTED(Z_TYPE_P(ret) == IS_UNDEF)) {
                return _get_zval_cv_lookup(ret, var, type TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -304,7 +304,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref_BP_VAR_R(const zend_execu
        if (UNEXPECTED(Z_TYPE_P(ret) == IS_UNDEF)) {
                return _get_zval_cv_lookup_BP_VAR_R(ret, var TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -327,7 +327,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref_BP_VAR_UNSET(const zend_e
        if (UNEXPECTED(Z_TYPE_P(ret) == IS_UNDEF)) {
                return _get_zval_cv_lookup_BP_VAR_UNSET(ret, var TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -350,7 +350,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref_BP_VAR_IS(const zend_exec
        if (Z_TYPE_P(ret) == IS_UNDEF) {
                return _get_zval_cv_lookup_BP_VAR_IS(ret, var TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -373,7 +373,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref_BP_VAR_RW(const zend_exec
        if (UNEXPECTED(Z_TYPE_P(ret) == IS_UNDEF)) {
                return _get_zval_cv_lookup_BP_VAR_RW(ret, var TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -396,7 +396,7 @@ static zend_always_inline zval *_get_zval_ptr_cv_deref_BP_VAR_W(const zend_execu
        if (Z_TYPE_P(ret) == IS_UNDEF) {
                return _get_zval_cv_lookup_BP_VAR_W(ret, var TSRMLS_CC);
        }
-       if (UNEXPECTED(Z_TYPE_P(ret) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(ret))) {
                ret = Z_REFVAL_P(ret);
        }
        return ret;
@@ -612,7 +612,7 @@ static inline int zend_verify_arg_type(zend_function *zf, zend_uint arg_num, zva
                        need_msg = zend_verify_arg_class_kind(cur_arg_info, fetch_type, &class_name, &ce TSRMLS_CC);
                        return zend_verify_arg_error(E_RECOVERABLE_ERROR, zf, arg_num, need_msg, class_name, "none", "" TSRMLS_CC);
                }
-               if (Z_TYPE_P(arg) == IS_REFERENCE) {
+               if (Z_ISREF_P(arg)) {
                        arg = Z_REFVAL_P(arg);
                }
                if (Z_TYPE_P(arg) == IS_OBJECT) {
@@ -631,7 +631,7 @@ static inline int zend_verify_arg_type(zend_function *zf, zend_uint arg_num, zva
                                        return zend_verify_arg_error(E_RECOVERABLE_ERROR, zf, arg_num, "be of the type array", "", "none", "" TSRMLS_CC);
                                }
 
-                               if (Z_TYPE_P(arg) == IS_REFERENCE) {
+                               if (Z_ISREF_P(arg)) {
                                        arg = Z_REFVAL_P(arg);
                                }
                                if (Z_TYPE_P(arg) != IS_ARRAY && (Z_TYPE_P(arg) != IS_NULL || !cur_arg_info->allow_null)) {
@@ -662,7 +662,7 @@ static inline void zend_assign_to_object(zval *retval, zval *object_ptr, zval *p
        zval tmp;
        zval *object = object_ptr;
 
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                object = Z_REFVAL_P(object);
        }
        if (Z_TYPE_P(object) != IS_OBJECT) {
@@ -1112,7 +1112,7 @@ fetch_from_array:
                                ZVAL_INDIRECT(result, &EG(error_zval));
                        } else if (type != BP_VAR_UNSET) {
 convert_to_array:
-                               if (Z_TYPE_P(container_ptr) != IS_REFERENCE) {
+                               if (!Z_ISREF_P(container_ptr)) {
                                        SEPARATE_ZVAL(container);
                                }
 
@@ -1137,7 +1137,7 @@ convert_to_array:
                                }
 
                                if (type != BP_VAR_UNSET) {
-                                       if (Z_TYPE_P(container_ptr) != IS_REFERENCE) {
+                                       if (!Z_ISREF_P(container_ptr)) {
                                                SEPARATE_ZVAL(container);
                                        }
                                }
@@ -1245,7 +1245,7 @@ static void zend_fetch_dimension_address_read(zval *result, zval *container, zva
 {
        zval *retval;
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
        switch (Z_TYPE_P(container)) {
@@ -1342,7 +1342,7 @@ static void zend_fetch_property_address(zval *result, zval *container_ptr, zval
 {
        zval *container = container_ptr;
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
 
index 10bc3f8c2377e7d52d852107a1d6a630cedbbc80..d53984b9cea91fa0c638f446c877cfaab1253958 100644 (file)
@@ -81,7 +81,7 @@ static zend_always_inline void i_zval_ptr_dtor(zval *zval_ptr ZEND_FILE_LINE_DC
                        ZEND_ASSERT(zval_ptr != &EG(uninitialized_zval));
                        _zval_dtor_func_for_ptr(Z_COUNTED_P(zval_ptr) ZEND_FILE_LINE_CC);
                } else {
-                       if (Z_REFCOUNT_P(zval_ptr) == 1 && Z_TYPE_P(zval_ptr) == IS_REFERENCE) {
+                       if (Z_REFCOUNT_P(zval_ptr) == 1 && Z_ISREF_P(zval_ptr)) {
                                /* convert reference to regular value */
 //???                          zend_reference *ref = Z_REF_P(zval_ptr);
 //???                          ZVAL_COPY_VALUE(zval_ptr, &ref->val);
@@ -99,7 +99,7 @@ static zend_always_inline void i_zval_ptr_dtor_nogc(zval *zval_ptr ZEND_FILE_LIN
                        ZEND_ASSERT(zval_ptr != &EG(uninitialized_zval));
                        _zval_dtor_func_for_ptr(Z_COUNTED_P(zval_ptr) ZEND_FILE_LINE_CC);
                } else {
-                       if (Z_REFCOUNT_P(zval_ptr) == 1 && Z_TYPE_P(zval_ptr) == IS_REFERENCE) {
+                       if (Z_REFCOUNT_P(zval_ptr) == 1 && Z_ISREF_P(zval_ptr)) {
                                /* convert reference to regular value */
 //???                          zend_reference *ref = Z_REF_P(zval_ptr);
 //???                          ZVAL_COPY_VALUE(zval_ptr, &ref->val);
index 514dbb1e2fd1d2f1a101ccff06cd9c37126024de..82732ce49fe67f763f032baed476707d9dd1d181 100644 (file)
@@ -882,9 +882,9 @@ ZEND_API int add_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
                                return SUCCESS;
 
                        default:
-                               if (Z_TYPE_P(op1) == IS_REFERENCE) {
+                               if (Z_ISREF_P(op1)) {
                                        op1 = Z_REFVAL_P(op1);
-                               } else if (Z_TYPE_P(op2) == IS_REFERENCE) {
+                               } else if (Z_ISREF_P(op2)) {
                                        op2 = Z_REFVAL_P(op2);
                                } else if (!converted) {
                                        ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_ADD);
@@ -935,9 +935,9 @@ ZEND_API int sub_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
                                return SUCCESS;
 
                        default:
-                               if (Z_TYPE_P(op1) == IS_REFERENCE) {
+                               if (Z_ISREF_P(op1)) {
                                        op1 = Z_REFVAL_P(op1);
-                               } else if (Z_TYPE_P(op2) == IS_REFERENCE) {
+                               } else if (Z_ISREF_P(op2)) {
                                        op2 = Z_REFVAL_P(op2);
                                } else if (!converted) {
                                        ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_SUB);
@@ -982,9 +982,9 @@ ZEND_API int mul_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
                                return SUCCESS;
 
                        default:
-                               if (Z_TYPE_P(op1) == IS_REFERENCE) {
+                               if (Z_ISREF_P(op1)) {
                                        op1 = Z_REFVAL_P(op1);
-                               } else if (Z_TYPE_P(op2) == IS_REFERENCE) {
+                               } else if (Z_ISREF_P(op2)) {
                                        op2 = Z_REFVAL_P(op2);
                                } else if (!converted) {
                                        ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_MUL);
@@ -1053,9 +1053,9 @@ ZEND_API int div_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ *
                                return SUCCESS;
 
                        default:
-                               if (Z_TYPE_P(op1) == IS_REFERENCE) {
+                               if (Z_ISREF_P(op1)) {
                                        op1 = Z_REFVAL_P(op1);
-                               } else if (Z_TYPE_P(op2) == IS_REFERENCE) {
+                               } else if (Z_ISREF_P(op2)) {
                                        op2 = Z_REFVAL_P(op2);
                                } else if (!converted) {
                                        ZEND_TRY_BINARY_OBJECT_OPERATION(ZEND_DIV);
@@ -1666,9 +1666,9 @@ ZEND_API int compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {
                                                return SUCCESS;
                                        }
                                }
-                               if (Z_TYPE_P(op1) == IS_REFERENCE) {
+                               if (Z_ISREF_P(op1)) {
                                        op1 = Z_REFVAL_P(op1);
-                               } else if (Z_TYPE_P(op2) == IS_REFERENCE) {
+                               } else if (Z_ISREF_P(op2)) {
                                        op2 = Z_REFVAL_P(op2);
                                } else if (!converted) {
                                        if (Z_TYPE_P(op1) == IS_NULL) {
index 49479a48c86ea80e730fa2a15c871a60dc13b088..9f8335f4afefd85b654ae444c779e11f428213f2 100644 (file)
@@ -797,7 +797,7 @@ ZEND_VM_HANDLER(34, ZEND_PRE_INC, VAR|CV, ANY)
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -846,7 +846,7 @@ ZEND_VM_HANDLER(35, ZEND_PRE_DEC, VAR|CV, ANY)
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -895,7 +895,7 @@ ZEND_VM_HANDLER(36, ZEND_POST_INC, VAR|CV, ANY)
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -942,7 +942,7 @@ ZEND_VM_HANDLER(37, ZEND_POST_DEC, VAR|CV, ANY)
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -1367,7 +1367,7 @@ ZEND_VM_HELPER(zend_fetch_property_address_read_helper, VAR|UNUSED|CV, CONST|TMP
        container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_R);
        offset  = GET_OP2_ZVAL_PTR(BP_VAR_R);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -1686,7 +1686,7 @@ ZEND_VM_HANDLER(147, ZEND_ASSIGN_DIM, VAR|CV, CONST|TMP|VAR|UNUSED|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -1837,7 +1837,7 @@ ZEND_VM_HANDLER(39, ZEND_ASSIGN_REF, VAR|CV, VAR|CV)
        }
        if (OP1_TYPE == IS_VAR &&
            UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT) &&
-           UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_REFERENCE)) {
+           UNEXPECTED(!Z_ISREF_P(EX_VAR(opline->op1.var)))) {
                zend_error_noreturn(E_ERROR, "Cannot assign by reference to overloaded object");
        }
 
@@ -2389,7 +2389,7 @@ ZEND_VM_HANDLER(56, ZEND_ADD_VAR, TMP|UNUSED, TMP|VAR|CV)
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -2478,7 +2478,7 @@ ZEND_VM_HANDLER(112, ZEND_INIT_METHOD_CALL, TMP|VAR|UNUSED|CV, CONST|TMP|VAR|CV)
        }
 
        object = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_R);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -2676,7 +2676,7 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV)
 
                SAVE_OPLINE();
                function_name_ptr = function_name = GET_OP2_ZVAL_PTR(BP_VAR_R);
-               if (Z_TYPE_P(function_name) == IS_REFERENCE) {
+               if (Z_ISREF_P(function_name)) {
                        function_name = Z_REFVAL_P(function_name);
                }
 
@@ -4465,7 +4465,7 @@ ZEND_VM_HANDLER(78, ZEND_FE_FETCH, VAR, ANY)
        zval *key = NULL;
 
        array = array_ref = EX_VAR(opline->op1.var);
-       if (Z_TYPE_P(array) == IS_REFERENCE) {
+       if (Z_ISREF_P(array)) {
                array = Z_REFVAL_P(array);
        }
        if (opline->extended_value & ZEND_FE_FETCH_WITH_KEY) {
@@ -4607,7 +4607,7 @@ ZEND_VM_HANDLER(114, ZEND_ISSET_ISEMPTY_VAR, CONST|TMP|VAR|CV, UNUSED|CONST|VAR)
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -4690,7 +4690,7 @@ ZEND_VM_HELPER_EX(zend_isset_isempty_dim_prop_obj_handler, VAR|UNUSED|CV, CONST|
        container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_IS);
        offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
index 6984f61e9651ff650f66d3e5cb161cc36f8c4204..d10d671ab56cc3975064d22f57ff2aca7397c659 100644 (file)
@@ -1448,7 +1448,7 @@ static int ZEND_FASTCALL  ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
 
                SAVE_OPLINE();
                function_name_ptr = function_name = opline->op2.zv;
-               if (Z_TYPE_P(function_name) == IS_REFERENCE) {
+               if (Z_ISREF_P(function_name)) {
                        function_name = Z_REFVAL_P(function_name);
                }
 
@@ -1791,7 +1791,7 @@ static int ZEND_FASTCALL  ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
 
                SAVE_OPLINE();
                function_name_ptr = function_name = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
-               if (Z_TYPE_P(function_name) == IS_REFERENCE) {
+               if (Z_ISREF_P(function_name)) {
                        function_name = Z_REFVAL_P(function_name);
                }
 
@@ -1986,7 +1986,7 @@ static int ZEND_FASTCALL  ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
 
                SAVE_OPLINE();
                function_name_ptr = function_name = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
-               if (Z_TYPE_P(function_name) == IS_REFERENCE) {
+               if (Z_ISREF_P(function_name)) {
                        function_name = Z_REFVAL_P(function_name);
                }
 
@@ -2219,7 +2219,7 @@ static int ZEND_FASTCALL  ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
 
                SAVE_OPLINE();
                function_name_ptr = function_name = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
-               if (Z_TYPE_P(function_name) == IS_REFERENCE) {
+               if (Z_ISREF_P(function_name)) {
                        function_name = Z_REFVAL_P(function_name);
                }
 
@@ -4170,7 +4170,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_CONST_HANDLER(ZEND_O
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -5829,7 +5829,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_VAR_HANDLER(ZEND_OPC
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -6499,7 +6499,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -8968,7 +8968,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_TMP_CONST_HANDLER(ZEND_OPCO
        }
 
        object = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -9206,7 +9206,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_CONST_HANDLER(ZEND_OPC
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -9725,7 +9725,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -9774,7 +9774,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE
        }
 
        object = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -10563,7 +10563,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -10612,7 +10612,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE
        }
 
        object = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -10852,7 +10852,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_VAR_HANDLER(ZEND_OPCOD
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -11411,7 +11411,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_TMP_UNUSED_HANDLER(ZEND_OP
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -11930,7 +11930,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_A
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -11978,7 +11978,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_
        }
 
        object = _get_zval_ptr_tmp(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -12322,7 +12322,7 @@ static int ZEND_FASTCALL  ZEND_PRE_INC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -12371,7 +12371,7 @@ static int ZEND_FASTCALL  ZEND_PRE_DEC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -12420,7 +12420,7 @@ static int ZEND_FASTCALL  ZEND_POST_INC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -12467,7 +12467,7 @@ static int ZEND_FASTCALL  ZEND_POST_DEC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -13418,7 +13418,7 @@ static int ZEND_FASTCALL  ZEND_FE_FETCH_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
        zval *key = NULL;
 
        array = array_ref = EX_VAR(opline->op1.var);
-       if (Z_TYPE_P(array) == IS_REFERENCE) {
+       if (Z_ISREF_P(array)) {
                array = Z_REFVAL_P(array);
        }
        if (opline->extended_value & ZEND_FE_FETCH_WITH_KEY) {
@@ -14785,7 +14785,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_VAR_CONST(
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset  = opline->op2.zv;
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -15082,7 +15082,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HAN
        if (IS_VAR == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -15221,7 +15221,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZEND_OPCO
        }
 
        object = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -15811,7 +15811,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_CONST_HANDLER(ZEND_OPC
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -15894,7 +15894,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_CONST(
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset = opline->op2.zv;
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -17087,7 +17087,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_VAR_TMP(ZE
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset  = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -17384,7 +17384,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDL
        if (IS_VAR == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -17524,7 +17524,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE
        }
 
        object = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -17957,7 +17957,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_TMP(in
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -19329,7 +19329,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_VAR_VAR(ZE
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset  = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -19626,7 +19626,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDL
        if (IS_VAR == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -19777,7 +19777,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDL
        }
        if (IS_VAR == IS_VAR &&
            UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT) &&
-           UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_REFERENCE)) {
+           UNEXPECTED(!Z_ISREF_P(EX_VAR(opline->op1.var)))) {
                zend_error_noreturn(E_ERROR, "Cannot assign by reference to overloaded object");
        }
 
@@ -19826,7 +19826,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE
        }
 
        object = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -20325,7 +20325,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_VAR_HANDLER(ZEND_OPCOD
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -20408,7 +20408,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_VAR(in
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -21238,7 +21238,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HA
        if (IS_VAR == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -21588,7 +21588,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_VAR_UNUSED_HANDLER(ZEND_OP
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -22731,7 +22731,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_VAR_CV(ZEN
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset  = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -23028,7 +23028,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLE
        if (IS_VAR == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -23177,7 +23177,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLE
        }
        if (IS_VAR == IS_VAR &&
            UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT) &&
-           UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_REFERENCE)) {
+           UNEXPECTED(!Z_ISREF_P(EX_VAR(opline->op1.var)))) {
                zend_error_noreturn(E_ERROR, "Cannot assign by reference to overloaded object");
        }
 
@@ -23225,7 +23225,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_
        }
 
        object = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -23656,7 +23656,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_CV(int
        container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -24473,7 +24473,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_UNUSED_CON
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset  = opline->op2.zv;
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -24813,7 +24813,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_O
        }
 
        object = _get_obj_zval_ptr_unused(TSRMLS_C);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -25132,7 +25132,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_CON
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset = opline->op2.zv;
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -25865,7 +25865,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_UNUSED_TMP
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset  = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -26164,7 +26164,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDL
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -26213,7 +26213,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMP_HANDLER(ZEND_OPC
        }
 
        object = _get_obj_zval_ptr_unused(TSRMLS_C);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -26440,7 +26440,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_TMP
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -27173,7 +27173,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_UNUSED_VAR
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset  = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -27472,7 +27472,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDL
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -27521,7 +27521,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_UNUSED_VAR_HANDLER(ZEND_OPC
        }
 
        object = _get_obj_zval_ptr_unused(TSRMLS_C);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -27748,7 +27748,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_VAR
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -28887,7 +28887,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_UNUSED_CV(
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset  = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -29186,7 +29186,7 @@ static int ZEND_FASTCALL  ZEND_ADD_VAR_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLE
        }
 
        if (Z_TYPE_P(var) != IS_STRING) {
-               if (Z_TYPE_P(var) == IS_REFERENCE) {
+               if (Z_ISREF_P(var)) {
                        var = Z_REFVAL_P(var);
                }
                if (Z_TYPE_P(var) != IS_STRING) {
@@ -29234,7 +29234,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCO
        }
 
        object = _get_obj_zval_ptr_unused(TSRMLS_C);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -29460,7 +29460,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_CV(
        container = _get_obj_zval_ptr_unused(TSRMLS_C);
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -29780,7 +29780,7 @@ static int ZEND_FASTCALL  ZEND_PRE_INC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -29828,7 +29828,7 @@ static int ZEND_FASTCALL  ZEND_PRE_DEC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
                ZEND_VM_NEXT_OPCODE();
        }
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
        } else {
                SEPARATE_ZVAL(var_ptr);
@@ -29876,7 +29876,7 @@ static int ZEND_FASTCALL  ZEND_POST_INC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -29922,7 +29922,7 @@ static int ZEND_FASTCALL  ZEND_POST_DEC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
 
        retval = EX_VAR(opline->result.var);
 
-       if (Z_TYPE_P(var_ptr) == IS_REFERENCE) {
+       if (Z_ISREF_P(var_ptr)) {
                var_ptr = Z_REFVAL_P(var_ptr);
                ZVAL_DUP(retval, var_ptr);
        } else {
@@ -32064,7 +32064,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_CV_CONST(Z
        container = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
        offset  = opline->op2.zv;
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -32357,7 +32357,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HAND
        if (IS_CV == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -32496,7 +32496,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER(ZEND_OPCOD
        }
 
        object = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -32879,7 +32879,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_CONST_HANDLER(ZEND_OPCO
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -32962,7 +32962,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_CONST(i
        container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
        offset = opline->op2.zv;
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -34148,7 +34148,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_CV_TMP(ZEN
        container = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
        offset  = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -34441,7 +34441,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLE
        if (IS_CV == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -34581,7 +34581,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_
        }
 
        object = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -34900,7 +34900,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_TMP(int
        container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
        offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -36265,7 +36265,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_CV_VAR(ZEN
        container = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
        offset  = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -36558,7 +36558,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLE
        if (IS_CV == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -36709,7 +36709,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLE
        }
        if (IS_CV == IS_VAR &&
            UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT) &&
-           UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_REFERENCE)) {
+           UNEXPECTED(!Z_ISREF_P(EX_VAR(opline->op1.var)))) {
                zend_error_noreturn(E_ERROR, "Cannot assign by reference to overloaded object");
        }
 
@@ -36757,7 +36757,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_
        }
 
        object = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -37142,7 +37142,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_VAR_HANDLER(ZEND_OPCODE
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -37225,7 +37225,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_VAR(int
        container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
@@ -38048,7 +38048,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HAN
        if (IS_CV == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -38287,7 +38287,7 @@ static int ZEND_FASTCALL  ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPC
            (opline->extended_value & ZEND_QUICK_SET)) {
                if (Z_TYPE_P(EX_VAR_NUM(opline->op1.var)) != IS_UNDEF) {
                        value = EX_VAR_NUM(opline->op1.var);
-                       if (Z_TYPE_P(value) == IS_REFERENCE) {
+                       if (Z_ISREF_P(value)) {
                                value = Z_REFVAL_P(value);
                        }
                } else {
@@ -39407,7 +39407,7 @@ static int ZEND_FASTCALL zend_fetch_property_address_read_helper_SPEC_CV_CV(ZEND
        container = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
        offset  = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (UNEXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) {
+       if (UNEXPECTED(Z_ISREF_P(container))) {
                container = Z_REFVAL_P(container);
        }
 
@@ -39700,7 +39700,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_DIM_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER
        if (IS_CV == IS_VAR && UNEXPECTED(Z_TYPE_P(object_ptr) == IS_STR_OFFSET)) {
                zend_error_noreturn(E_ERROR, "Cannot use string offset as an array");
        }
-       if (Z_TYPE_P(object_ptr) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
+       if (Z_ISREF_P(object_ptr) && Z_TYPE_P(Z_REFVAL_P(object_ptr)) == IS_OBJECT) {
                object_ptr = Z_REFVAL_P(object_ptr);
        }
        if (Z_TYPE_P(object_ptr) == IS_OBJECT) {
@@ -39849,7 +39849,7 @@ static int ZEND_FASTCALL  ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER
        }
        if (IS_CV == IS_VAR &&
            UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT) &&
-           UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_REFERENCE)) {
+           UNEXPECTED(!Z_ISREF_P(EX_VAR(opline->op1.var)))) {
                zend_error_noreturn(E_ERROR, "Cannot assign by reference to overloaded object");
        }
 
@@ -39896,7 +39896,7 @@ static int ZEND_FASTCALL  ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_H
        }
 
        object = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op1.var TSRMLS_CC);
-       if (Z_TYPE_P(object) == IS_REFERENCE) {
+       if (Z_ISREF_P(object)) {
                ZVAL_COPY_VALUE(&call->object, Z_REFVAL_P(object));
        } else {
                ZVAL_COPY_VALUE(&call->object, object);
@@ -40213,7 +40213,7 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_CV(int
        container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
 
-       if (Z_TYPE_P(container) == IS_REFERENCE) {
+       if (Z_ISREF_P(container)) {
                container = Z_REFVAL_P(container);
        }
        if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
index 3298f52fb384d8fc3f6279a383df13da22bb0a49..d03198cf6c7eef792b20d12e97a1bbd83b979d9d 100644 (file)
@@ -539,7 +539,7 @@ static void php_do_pcre_match(INTERNAL_FUNCTION_PARAMETERS, int global) /* {{{ *
                RETURN_FALSE;
        }
 
-       if (subpats && Z_TYPE_P(subpats) == IS_REFERENCE) {
+       if (subpats && Z_ISREF_P(subpats)) {
                subpats = Z_REFVAL_P(subpats);
        }
        php_pcre_match_impl(pce, subject, subject_len, return_value, subpats, 
@@ -1778,7 +1778,7 @@ PHPAPI void  php_pcre_grep_impl(pcre_cache_entry *pce, zval *input, zval *return
        while ((entry = zend_hash_get_current_data(Z_ARRVAL_P(input))) != NULL) {
                zval subject, *ref_entry = NULL;
                
-               if (Z_TYPE_P(entry) == IS_REFERENCE) {
+               if (Z_ISREF_P(entry)) {
                        ref_entry = entry;
                        entry = Z_REFVAL_P(entry);
                }
index b14fb2c577010e6cf670fe6d7cbb77a9332a714f..50f66f026ba0c360242307dc06e91fc28ce83e54 100644 (file)
@@ -288,7 +288,7 @@ static int php_count_recursive(zval *array, long mode TSRMLS_DC) /* {{{ */
                                zend_hash_move_forward_ex(Z_ARRVAL_P(array), &pos)
                        ) {
                                Z_ARRVAL_P(array)->nApplyCount++;
-                               if (Z_TYPE_P(element) == IS_REFERENCE) {
+                               if (Z_ISREF_P(element)) {
                                        element = Z_REFVAL_P(element);
                                }
                                cnt += php_count_recursive(element, COUNT_RECURSIVE TSRMLS_CC);
@@ -3966,7 +3966,7 @@ PHP_FUNCTION(array_multisort)
        for (i = 0; i < argc; i++) {
                zval *arg = &args[i];
 
-               if (Z_TYPE_P(arg) == IS_REFERENCE) {
+               if (Z_ISREF_P(arg)) {
                        arg = Z_REFVAL_P(arg);
                }
                if (Z_TYPE_P(arg) == IS_ARRAY) {
index 58fe5e1e654939c9493ba8346e338635db063695..45689ecfb481d0932256e0cdfc1c5d1cd4dad19f 100644 (file)
@@ -385,7 +385,7 @@ static php_stream *user_wrapper_opener(php_stream_wrapper *wrapper, const char *
                stream = php_stream_alloc_rel(&php_stream_userspace_ops, us, 0, mode);
 
                /* if the opened path is set, copy it out */
-               if (Z_TYPE(args[4]) == IS_REFERENCE && Z_TYPE_P(Z_REFVAL(args[4])) == IS_STRING && opened_path) {
+               if (Z_ISREF(args[4]) && Z_TYPE_P(Z_REFVAL(args[4])) == IS_STRING && opened_path) {
                        *opened_path = estrndup(Z_STRVAL_P(Z_REFVAL(args[4])), Z_STRLEN_P(Z_REFVAL(args[4])));
                }