]> granicus.if.org Git - php/commitdiff
Removed useless code (there is nothing to free for string offsets).
authorDmitry Stogov <dmitry@zend.com>
Wed, 3 Jun 2015 19:23:06 +0000 (22:23 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 3 Jun 2015 19:23:06 +0000 (22:23 +0300)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 146fd3f08248e69e85bd1c9a39c0deacb03dc61c..0f9cdffc87130714626e04b36c58bd02e28916cf 100644 (file)
@@ -718,7 +718,6 @@ ZEND_VM_HELPER_EX(zend_binary_assign_op_obj_helper, VAR|UNUSED|CV, CONST|TMPVAR|
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -780,7 +779,6 @@ ZEND_VM_HELPER_EX(zend_binary_assign_op_dim_helper, VAR|UNUSED|CV, CONST|TMPVAR|
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                FREE_UNFETCHED_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -851,7 +849,6 @@ ZEND_VM_HELPER_EX(zend_binary_assign_op_helper, VAR|CV, CONST|TMPVAR|CV, binary_
        if (OP1_TYPE == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1118,7 +1115,6 @@ ZEND_VM_HELPER_EX(zend_pre_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|C
        if (OP1_TYPE == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1201,7 +1197,6 @@ ZEND_VM_HELPER_EX(zend_post_incdec_property_helper, VAR|UNUSED|CV, CONST|TMPVAR|
        if (OP1_TYPE == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1269,7 +1264,6 @@ ZEND_VM_HANDLER(34, ZEND_PRE_INC, VAR|CV, ANY)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1317,7 +1311,6 @@ ZEND_VM_HANDLER(35, ZEND_PRE_DEC, VAR|CV, ANY)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1365,7 +1358,6 @@ ZEND_VM_HANDLER(36, ZEND_POST_INC, VAR|CV, ANY)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1406,7 +1398,6 @@ ZEND_VM_HANDLER(37, ZEND_POST_DEC, VAR|CV, ANY)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1676,7 +1667,6 @@ ZEND_VM_HANDLER(84, ZEND_FETCH_DIM_W, VAR|CV, CONST|TMPVAR|UNUSED|CV)
 
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, GET_OP2_ZVAL_PTR(BP_VAR_R), OP2_TYPE);
@@ -1700,7 +1690,6 @@ ZEND_VM_HANDLER(87, ZEND_FETCH_DIM_RW, VAR|CV, CONST|TMPVAR|UNUSED|CV)
 
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, GET_OP2_ZVAL_PTR(BP_VAR_R), OP2_TYPE);
@@ -1747,7 +1736,6 @@ ZEND_VM_HANDLER(93, ZEND_FETCH_DIM_FUNC_ARG, CONST|TMP|VAR|CV, CONST|TMPVAR|UNUS
                if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                        FREE_UNFETCHED_OP2();
-                       FREE_OP1_VAR_PTR();
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, GET_OP2_ZVAL_PTR(BP_VAR_R), OP2_TYPE);
@@ -1784,7 +1772,6 @@ ZEND_VM_HANDLER(96, ZEND_FETCH_DIM_UNSET, VAR|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, GET_OP2_ZVAL_PTR(BP_VAR_R), OP2_TYPE);
@@ -1890,7 +1877,6 @@ ZEND_VM_HANDLER(85, ZEND_FETCH_OBJ_W, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -1923,7 +1909,6 @@ ZEND_VM_HANDLER(88, ZEND_FETCH_OBJ_RW, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, OP1_TYPE, property, OP2_TYPE, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -2038,7 +2023,6 @@ ZEND_VM_HANDLER(94, ZEND_FETCH_OBJ_FUNC_ARG, CONST|TMP|VAR|UNUSED|CV, CONST|TMPV
                if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        FREE_OP2();
-                       FREE_OP1_VAR_PTR();
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, OP1_TYPE, property, OP2_TYPE, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -2074,7 +2058,6 @@ ZEND_VM_HANDLER(97, ZEND_FETCH_OBJ_UNSET, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, OP1_TYPE, property, OP2_TYPE, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -2150,7 +2133,6 @@ ZEND_VM_HANDLER(136, ZEND_ASSIGN_OBJ, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, OP1_TYPE, property_name, OP2_TYPE, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -2179,7 +2161,6 @@ ZEND_VM_HANDLER(147, ZEND_ASSIGN_DIM, VAR|CV, CONST|TMPVAR|UNUSED|CV)
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                FREE_UNFETCHED_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -2312,7 +2293,6 @@ ZEND_VM_HANDLER(39, ZEND_ASSIGN_REF, VAR|CV, VAR|CV)
 
        if (OP2_TYPE == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
-               FREE_OP2_VAR_PTR();
                FREE_UNFETCHED_OP1();
                HANDLE_EXCEPTION();
        }
@@ -2335,7 +2315,6 @@ ZEND_VM_HANDLER(39, ZEND_ASSIGN_REF, VAR|CV, VAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(variable_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
                FREE_OP2_VAR_PTR();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        if (OP1_TYPE == IS_VAR &&
@@ -3993,7 +3972,6 @@ ZEND_VM_HANDLER(111, ZEND_RETURN_BY_REF, CONST|TMP|VAR|CV, ANY)
 
                if (OP1_TYPE == IS_VAR && UNEXPECTED(retval_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot return string offsets by reference");
-                       FREE_OP1_VAR_PTR();
                        HANDLE_EXCEPTION();
                }
 
@@ -4292,7 +4270,6 @@ ZEND_VM_HANDLER(67, ZEND_SEND_REF, VAR|CV, ANY)
 
        if (OP1_TYPE == IS_VAR && UNEXPECTED(varptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Only variables can be passed by reference");
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
 
@@ -5159,7 +5136,6 @@ ZEND_VM_HANDLER(72, ZEND_ADD_ARRAY_ELEMENT, CONST|TMP|VAR|CV, CONST|TMPVAR|UNUSE
                expr_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W);
                if (OP1_TYPE == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-                       FREE_OP1_VAR_PTR();
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -5609,7 +5585,6 @@ ZEND_VM_HANDLER(75, ZEND_UNSET_DIM, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                FREE_UNFETCHED_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
@@ -5698,7 +5673,6 @@ ZEND_VM_HANDLER(76, ZEND_UNSET_OBJ, VAR|UNUSED|CV, CONST|TMPVAR|CV)
        if (OP1_TYPE == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                FREE_UNFETCHED_OP2();
-               FREE_OP1_VAR_PTR();
                HANDLE_EXCEPTION();
        }
        offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
@@ -7469,7 +7443,6 @@ ZEND_VM_HANDLER(160, ZEND_YIELD, CONST|TMP|VAR|CV|UNUSED, CONST|TMP|VAR|CV|UNUSE
                                if (OP1_TYPE == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        FREE_UNFETCHED_OP2();
-                                       FREE_OP1();
                                        HANDLE_EXCEPTION();
                                }
 
index be77540a0f897122dc29d82fbe043eb6e90b81d3..aa68c9644b6a319a90c35bb91fb19450c98a56f9 100644 (file)
@@ -3296,7 +3296,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_CONST_HANDL
 
                if (IS_CONST == IS_VAR && UNEXPECTED(retval_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot return string offsets by reference");
-
                        HANDLE_EXCEPTION();
                }
 
@@ -5299,7 +5298,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -5498,7 +5496,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CONST, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -6102,7 +6099,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_C
                expr_ptr = NULL;
                if (IS_CONST == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -6670,7 +6666,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CONST_HANDLER
                                if (IS_CONST == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -6862,7 +6857,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_TMP_HANDLER(Z
                                if (IS_CONST == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -7407,7 +7401,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_VAR_HANDLER(Z
                                if (IS_CONST == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -7701,7 +7694,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -7921,7 +7913,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_U
                expr_ptr = NULL;
                if (IS_CONST == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -8296,7 +8287,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_UNUSED_HANDLE
                                if (IS_CONST == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -9066,7 +9056,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -9265,7 +9254,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CONST, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -9769,7 +9757,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_C
                expr_ptr = NULL;
                if (IS_CONST == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -10116,7 +10103,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZE
                                if (IS_CONST == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -10861,7 +10847,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -11062,7 +11047,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_
                if (IS_CONST == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        zval_ptr_dtor_nogc(free_op2);
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CONST, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -11517,7 +11501,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_T
                expr_ptr = NULL;
                if (IS_CONST == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -11917,7 +11900,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER
 
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(retval_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot return string offsets by reference");
-
                        HANDLE_EXCEPTION();
                }
 
@@ -12754,7 +12736,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CO
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -12880,7 +12861,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CO
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_TMP_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -12967,7 +12947,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CON
                expr_ptr = NULL;
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -13135,7 +13114,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CONST_HANDLER(Z
                                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -13312,7 +13290,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEN
                                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -13489,7 +13466,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEN
                                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -13599,7 +13575,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UN
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -13689,7 +13664,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNU
                expr_ptr = NULL;
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -13857,7 +13831,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER(
                                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -14007,7 +13980,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -14133,7 +14105,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_TMP_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -14220,7 +14191,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_
                expr_ptr = NULL;
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -14388,7 +14358,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND
                                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -14498,7 +14467,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TM
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -14625,7 +14593,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TM
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        zval_ptr_dtor_nogc(free_op2);
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_TMP_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -14712,7 +14679,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMP
                expr_ptr = NULL;
                if (IS_TMP_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -14845,7 +14811,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_VAR_HANDLER(ZEND_
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -14893,7 +14858,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_VAR_HANDLER(ZEND_
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -14941,7 +14905,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_VAR_HANDLER(ZEND
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -14982,7 +14945,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_VAR_HANDLER(ZEND
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -15095,7 +15057,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER
 
                if (IS_VAR == IS_VAR && UNEXPECTED(retval_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot return string offsets by reference");
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
 
@@ -15296,7 +15257,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND
 
        if (IS_VAR == IS_VAR && UNEXPECTED(varptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Only variables can be passed by reference");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -16537,7 +16497,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -16599,7 +16558,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -16669,7 +16627,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_V
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -16935,7 +16892,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -17017,7 +16973,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -17084,7 +17039,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HAN
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -17108,7 +17062,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HA
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -17140,7 +17093,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CO
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -17177,7 +17129,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -17282,7 +17233,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HAN
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -17315,7 +17265,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -17356,7 +17305,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CO
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -17392,7 +17340,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -17426,7 +17373,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_HAND
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_VAR, property_name, IS_CONST, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -17455,7 +17401,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CONST_HAND
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -17827,7 +17772,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CON
                expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1);
                if (IS_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -17967,7 +17911,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDL
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -18056,7 +17999,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDL
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -18130,7 +18072,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CONST_HANDLER(Z
                                if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -18342,7 +18283,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEN
                                if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -18515,7 +18455,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLE
 
        if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
-               if (free_op2) {zval_ptr_dtor_nogc(free_op2);};
                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
                HANDLE_EXCEPTION();
        }
@@ -18538,7 +18477,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLE
        if (IS_VAR == IS_VAR && UNEXPECTED(variable_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
                if (free_op2) {zval_ptr_dtor_nogc(free_op2);};
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        if (IS_VAR == IS_VAR &&
@@ -18613,7 +18551,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEN
                                if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -18724,7 +18661,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -19011,7 +18947,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HA
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -19035,7 +18970,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_H
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -19067,7 +19001,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UN
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -19109,7 +19042,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_HAN
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -19396,7 +19328,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNU
                expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1);
                if (IS_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -19581,7 +19512,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(
                                if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -19738,7 +19668,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -19800,7 +19729,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -19870,7 +19798,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_V
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -20136,7 +20063,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -20218,7 +20144,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -20285,7 +20210,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLE
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -20309,7 +20233,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDL
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -20341,7 +20264,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -20378,7 +20300,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -20483,7 +20404,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLE
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -20516,7 +20436,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDL
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -20557,7 +20476,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -20593,7 +20511,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -20627,7 +20544,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CV_HANDLER
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_VAR, property_name, IS_CV, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -20656,7 +20572,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CV_HANDLER
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -20789,7 +20704,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER
 
        if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
-
                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
                HANDLE_EXCEPTION();
        }
@@ -20812,7 +20726,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER
        if (IS_VAR == IS_VAR && UNEXPECTED(variable_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        if (IS_VAR == IS_VAR &&
@@ -20982,7 +20895,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_
                expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1);
                if (IS_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -21122,7 +21034,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER(
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -21211,7 +21122,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER(
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -21285,7 +21195,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND
                                if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-                                       zval_ptr_dtor_nogc(free_op1);
                                        HANDLE_EXCEPTION();
                                }
 
@@ -21407,7 +21316,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -21469,7 +21377,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -21540,7 +21447,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_V
        if (IS_VAR == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -21807,7 +21713,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -21890,7 +21795,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -21958,7 +21862,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HA
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -21982,7 +21885,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_H
 
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -22014,7 +21916,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TM
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -22051,7 +21952,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -22157,7 +22057,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -22190,7 +22089,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_H
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -22231,7 +22129,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TM
                if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        zval_ptr_dtor_nogc(free_op2);
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -22267,7 +22164,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVA
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -22301,7 +22197,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_HAN
        if (IS_VAR == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                zval_ptr_dtor_nogc(free_op2);
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_VAR, property_name, (IS_TMP_VAR|IS_VAR), (opline+1)->op1_type, (opline+1)->op1, execute_data, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -22330,7 +22225,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_HAN
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
 
@@ -22564,7 +22458,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMP
                expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1);
                if (IS_VAR == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-                       if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -22704,7 +22597,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HAND
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);
@@ -22793,7 +22685,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HAND
        if (IS_VAR == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-               if (free_op1) {zval_ptr_dtor_nogc(free_op1);};
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);
@@ -22962,7 +22853,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -23024,7 +22914,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -23322,7 +23211,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -23404,7 +23292,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -23552,7 +23439,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -23585,7 +23471,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -23699,7 +23584,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED
                if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -23735,7 +23619,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CO
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -23769,7 +23652,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_H
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_UNUSED, property_name, IS_CONST, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -24075,7 +23957,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_UNUSED_CONST_HA
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -24164,7 +24045,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HA
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -24417,7 +24297,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CONST_HANDLE
                                if (IS_UNUSED == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -24554,7 +24433,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(
                                if (IS_UNUSED == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -24691,7 +24569,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(
                                if (IS_UNUSED == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -24801,7 +24678,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25207,7 +25083,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDL
                                if (IS_UNUSED == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -25323,7 +25198,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25385,7 +25259,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25683,7 +25556,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25765,7 +25637,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25913,7 +25784,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HAN
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -25946,7 +25816,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HA
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -26060,7 +25929,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED
                if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -26096,7 +25964,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -26130,7 +25997,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_HAND
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_UNUSED, property_name, IS_CV, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -26327,7 +26193,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_UNUSED_CV_HANDL
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -26416,7 +26281,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDL
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -26669,7 +26533,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(Z
                                if (IS_UNUSED == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -26785,7 +26648,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -26847,7 +26709,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
 
@@ -27146,7 +27007,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -27229,7 +27089,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -27379,7 +27238,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -27412,7 +27270,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVA
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -27527,7 +27384,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED
                if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        zval_ptr_dtor_nogc(free_op2);
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -27563,7 +27419,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TM
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -27597,7 +27452,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_
        if (IS_UNUSED == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_UNUSED, property_name, (IS_TMP_VAR|IS_VAR), (opline+1)->op1_type, (opline+1)->op1, execute_data, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -27795,7 +27649,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_UNUSED_TMPVAR_H
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);
@@ -27884,7 +27737,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_H
        if (IS_UNUSED == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);
@@ -28142,7 +27994,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_CV_HANDLER(ZEND_O
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-
                HANDLE_EXCEPTION();
        }
 
@@ -28189,7 +28040,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_CV_HANDLER(ZEND_O
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-
                HANDLE_EXCEPTION();
        }
 
@@ -28236,7 +28086,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_CV_HANDLER(ZEND_
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-
                HANDLE_EXCEPTION();
        }
 
@@ -28276,7 +28125,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_CV_HANDLER(ZEND_
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                SAVE_OPLINE();
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
-
                HANDLE_EXCEPTION();
        }
 
@@ -28615,7 +28463,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_CV_HANDLER(
 
                if (IS_CV == IS_VAR && UNEXPECTED(retval_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot return string offsets by reference");
-
                        HANDLE_EXCEPTION();
                }
 
@@ -28815,7 +28662,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_
 
        if (IS_CV == IS_VAR && UNEXPECTED(varptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Only variables can be passed by reference");
-
                HANDLE_EXCEPTION();
        }
 
@@ -30502,7 +30348,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -30564,7 +30409,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -30634,7 +30478,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_C
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -30900,7 +30743,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -30982,7 +30824,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -31248,7 +31089,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CONST_HAND
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -31272,7 +31112,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HAN
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -31319,7 +31158,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CON
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -31356,7 +31194,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, EX_CONSTANT(opline->op2), IS_CONST);
@@ -31461,7 +31298,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HAND
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -31494,7 +31330,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HAN
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -31608,7 +31443,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CON
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -31644,7 +31478,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -31720,7 +31553,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CONST_HANDL
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_CV, property_name, IS_CONST, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CONST == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -31749,7 +31581,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CONST_HANDL
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -32121,7 +31952,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONS
                expr_ptr = _get_zval_ptr_cv_BP_VAR_W(execute_data, opline->op1.var);
                if (IS_CV == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -32340,7 +32170,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLE
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -32429,7 +32258,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLE
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = EX_CONSTANT(opline->op2);
@@ -32831,7 +32659,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZE
                                if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -33138,7 +32965,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND
                                if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -33494,7 +33320,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER
 
        if (IS_VAR == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
-               if (free_op2) {zval_ptr_dtor_nogc(free_op2);};
 
                HANDLE_EXCEPTION();
        }
@@ -33517,7 +33342,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER
        if (IS_CV == IS_VAR && UNEXPECTED(variable_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
                if (free_op2) {zval_ptr_dtor_nogc(free_op2);};
-
                HANDLE_EXCEPTION();
        }
        if (IS_CV == IS_VAR &&
@@ -33819,7 +33643,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND
                                if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
                                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -33929,7 +33752,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -34400,7 +34222,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HAN
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -34424,7 +34245,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HA
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -34456,7 +34276,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNU
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, NULL, IS_UNUSED);
@@ -34498,7 +34317,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_HAND
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -34655,7 +34473,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUS
                expr_ptr = _get_zval_ptr_cv_BP_VAR_W(execute_data, opline->op1.var);
                if (IS_CV == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -35007,7 +34824,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(Z
                                if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -35753,7 +35569,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -35815,7 +35630,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -35885,7 +35699,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_C
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -36151,7 +35964,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -36233,7 +36045,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -36315,7 +36126,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -36339,7 +36149,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLE
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -36386,7 +36195,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -36423,7 +36231,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HAN
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var), IS_CV);
@@ -36528,7 +36335,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -36561,7 +36367,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLE
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -36675,7 +36480,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -36711,7 +36515,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HAN
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
 
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -36745,7 +36548,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CV_HANDLER(
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
 
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_CV, property_name, IS_CV, (opline+1)->op1_type, (opline+1)->op1, execute_data, ((IS_CV == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -36774,7 +36576,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CV_HANDLER(
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
 
-
                HANDLE_EXCEPTION();
        }
 
@@ -36908,7 +36709,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER(
        if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
 
-
                HANDLE_EXCEPTION();
        }
        if (IS_CV == IS_VAR &&
@@ -36930,7 +36730,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER(
        if (IS_CV == IS_VAR && UNEXPECTED(variable_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets nor overloaded objects");
 
-
                HANDLE_EXCEPTION();
        }
        if (IS_CV == IS_VAR &&
@@ -37208,7 +37007,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_H
                expr_ptr = _get_zval_ptr_cv_BP_VAR_W(execute_data, opline->op1.var);
                if (IS_CV == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -37348,7 +37146,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER(Z
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -37437,7 +37234,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER(Z
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
 
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var);
@@ -37690,7 +37486,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_
                                if (IS_CV == IS_VAR && UNEXPECTED(value_ptr == NULL)) {
                                        zend_error(E_EXCEPTION | E_ERROR, "Cannot yield string offsets by reference");
 
-
                                        HANDLE_EXCEPTION();
                                }
 
@@ -38416,7 +38211,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_obj_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -38478,7 +38272,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_dim_helper_SP
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
 
@@ -38549,7 +38342,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_binary_assign_op_helper_SPEC_C
        if (IS_CV == IS_VAR && UNEXPECTED(var_ptr == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use assign-op operators with overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -38816,7 +38608,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_incdec_property_helper_SPE
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -38899,7 +38690,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_incdec_property_helper_SP
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot increment/decrement overloaded objects nor string offsets");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -38982,7 +38772,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HAN
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -39006,7 +38795,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HA
 
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_RW(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -39053,7 +38841,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMP
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                        zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_dimension_address_W(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -39090,7 +38877,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_dimension_address_UNSET(EX_VAR(opline->result.var), container, _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2), (IS_TMP_VAR|IS_VAR));
@@ -39196,7 +38982,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HAN
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
 
@@ -39229,7 +39014,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HA
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_RW);
@@ -39344,7 +39128,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMP
                if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                        zval_ptr_dtor_nogc(free_op2);
-
                        HANDLE_EXCEPTION();
                }
                zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_W);
@@ -39380,7 +39163,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an object");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_fetch_property_address(EX_VAR(opline->result.var), container, IS_CV, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property)) : NULL), BP_VAR_UNSET);
@@ -39414,7 +39196,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_HAND
        if (IS_CV == IS_VAR && UNEXPECTED(object == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                zval_ptr_dtor_nogc(free_op2);
-
                HANDLE_EXCEPTION();
        }
        zend_assign_to_object(UNEXPECTED(RETURN_VALUE_USED(opline)) ? EX_VAR(opline->result.var) : NULL, object, IS_CV, property_name, (IS_TMP_VAR|IS_VAR), (opline+1)->op1_type, (opline+1)->op1, execute_data, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(Z_CACHE_SLOT_P(property_name)) : NULL));
@@ -39443,7 +39224,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_HAND
                zend_error(E_EXCEPTION | E_ERROR, "Cannot use string offset as an array");
                FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var);
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
 
@@ -39787,7 +39567,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPV
                expr_ptr = _get_zval_ptr_cv_BP_VAR_W(execute_data, opline->op1.var);
                if (IS_CV == IS_VAR && UNEXPECTED(expr_ptr == NULL)) {
                        zend_error(E_EXCEPTION | E_ERROR, "Cannot create references to/from string offsets");
-
                        zend_array_destroy(Z_ARRVAL_P(EX_VAR(opline->result.var)));
                        HANDLE_EXCEPTION();
                }
@@ -39927,7 +39706,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDL
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);
@@ -40016,7 +39794,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDL
        if (IS_CV == IS_VAR && UNEXPECTED(container == NULL)) {
                zend_error(E_EXCEPTION | E_ERROR, "Cannot unset string offsets");
                zval_ptr_dtor_nogc(EX_VAR(opline->op2.var));
-
                HANDLE_EXCEPTION();
        }
        offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2);