]> granicus.if.org Git - php/commitdiff
Change zend_lookup_class_ex() and zend_fetch_class_by_name() prototypes to accept...
authorDmitry Stogov <dmitry@zend.com>
Wed, 22 Aug 2018 14:07:31 +0000 (17:07 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 22 Aug 2018 14:07:31 +0000 (17:07 +0300)
UPGRADING.INTERNALS
Zend/zend_compile.c
Zend/zend_execute.h
Zend/zend_execute_API.c
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
sapi/phpdbg/phpdbg_utils.c

index b949e78803401b765c1cddd1a5225b894354100d..0968b76620fea3da405444790787acde0f9eb500 100644 (file)
@@ -2,6 +2,7 @@ PHP 7.4 INTERNALS UPGRADE NOTES
 
 1. Internal API changes
   a. php_sys_symlink() and php_sys_link()
+  b. zend_lookup_class_ex() and zend_fetch_class_by_name()
 
 2. Build system changes
   a. Unix build system changes
@@ -17,6 +18,10 @@ PHP 7.4 INTERNALS UPGRADE NOTES
     added, which behave like POSIX's symlink() and link(), respectively, on
     POSIX compliant systems and on Windows.
 
+ b. zend_lookup_class_ex() and zend_fetch_class_by_name() prototypes were
+    changed to accept optional lower-case class name as zend_string*,
+    instead of zval*.
+
 ========================
 2. Build system changes
 ========================
index c5afd1e8932d637408bfdcbb43c9fdb0db0fa8e5..176d10c76d055f5a676f70e931e60f0ba869f981 100644 (file)
@@ -1186,7 +1186,7 @@ void zend_do_early_binding(void) /* {{{ */
                                zend_class_entry *ce;
 
                                parent_name = CT_CONSTANT(opline->op2);
-                               ce = zend_lookup_class_ex(Z_STR_P(parent_name), parent_name + 1, 0);
+                               ce = zend_lookup_class_ex(Z_STR_P(parent_name), Z_STR_P(parent_name + 1), 0);
                                if (!ce
                                 || ((ce->type == ZEND_INTERNAL_CLASS) && (CG(compiler_options) & ZEND_COMPILE_IGNORE_INTERNAL_CLASSES))
                                 || ((ce->type == ZEND_USER_CLASS) && (CG(compiler_options) & ZEND_COMPILE_IGNORE_OTHER_FILES) && (ce->info.user.filename != CG(active_op_array)->filename))
@@ -1289,7 +1289,7 @@ ZEND_API void zend_do_delayed_early_binding(const zend_op_array *op_array, uint3
                while (opline_num != (uint32_t)-1) {
                        const zend_op *opline = &op_array->opcodes[opline_num];
                        zval *parent_name = RT_CONSTANT(opline, opline->op2);
-                       if ((ce = zend_lookup_class_ex(Z_STR_P(parent_name), parent_name + 1, 0)) != NULL) {
+                       if ((ce = zend_lookup_class_ex(Z_STR_P(parent_name), Z_STR_P(parent_name + 1), 0)) != NULL) {
                                do_bind_inherited_class(op_array, &op_array->opcodes[opline_num], EG(class_table), ce, 0);
                        }
                        opline_num = op_array->opcodes[opline_num].result.opline_num;
index 81f3f49982faf103991e37a909ff0ea6a574ba90..ac53d3ecfc9493ae62c80f90942fa52b0a16ccdd 100644 (file)
@@ -41,7 +41,7 @@ ZEND_API void zend_execute(zend_op_array *op_array, zval *return_value);
 ZEND_API void execute_ex(zend_execute_data *execute_data);
 ZEND_API void execute_internal(zend_execute_data *execute_data, zval *return_value);
 ZEND_API zend_class_entry *zend_lookup_class(zend_string *name);
-ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, const zval *key, int use_autoload);
+ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, zend_string *lcname, int use_autoload);
 ZEND_API zend_class_entry *zend_get_called_scope(zend_execute_data *ex);
 ZEND_API zend_object *zend_get_this_object(zend_execute_data *ex);
 ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name);
@@ -303,7 +303,7 @@ ZEND_API void zend_set_timeout(zend_long seconds, int reset_signals);
 ZEND_API void zend_unset_timeout(void);
 ZEND_API ZEND_NORETURN void zend_timeout(int dummy);
 ZEND_API zend_class_entry *zend_fetch_class(zend_string *class_name, int fetch_type);
-ZEND_API zend_class_entry *zend_fetch_class_by_name(zend_string *class_name, const zval *key, int fetch_type);
+ZEND_API zend_class_entry *zend_fetch_class_by_name(zend_string *class_name, zend_string *lcname, int fetch_type);
 void zend_verify_abstract_class(zend_class_entry *ce);
 
 ZEND_API zend_function * ZEND_FASTCALL zend_fetch_function(zend_string *name);
index 8dfeaf28ca9c6d372283752e9cbe21a0b784f6f0..903985566740aced6fbb68538ade35a86e326b97 100644 (file)
@@ -828,7 +828,7 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache) /
 }
 /* }}} */
 
-ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, const zval *key, int use_autoload) /* {{{ */
+ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, zend_string *key, int use_autoload) /* {{{ */
 {
        zend_class_entry *ce = NULL;
        zval args[1], *zv;
@@ -838,7 +838,7 @@ ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, const zval *k
        zend_fcall_info_cache fcall_cache;
 
        if (key) {
-               lc_name = Z_STR_P(key);
+               lc_name = key;
        } else {
                if (name == NULL || !ZSTR_LEN(name)) {
                        return NULL;
@@ -1352,7 +1352,7 @@ check_fetch_type:
 }
 /* }}} */
 
-zend_class_entry *zend_fetch_class_by_name(zend_string *class_name, const zval *key, int fetch_type) /* {{{ */
+zend_class_entry *zend_fetch_class_by_name(zend_string *class_name, zend_string *key, int fetch_type) /* {{{ */
 {
        zend_class_entry *ce;
 
index 1667de4c28ae9b1fad3bb78a7e31de555efe2de2..24859d32965df164c47d77d77cd6a6295f66bdfa 100644 (file)
@@ -1515,7 +1515,7 @@ ZEND_VM_HELPER(zend_fetch_static_prop_helper, CONST|TMPVAR|CV, UNUSED|CONST|VAR,
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
                                                FREE_UNFETCHED_OP1();
                                                retval = NULL;
@@ -2959,7 +2959,7 @@ ZEND_VM_HANDLER(109, ZEND_FETCH_CLASS, UNUSED|CLASS_FETCH, CONST|TMPVAR|UNUSED|C
 
                if (UNEXPECTED(ce == NULL)) {
                        class_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R);
-                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, opline->op1.num);
+                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num);
                        CACHE_PTR(opline->extended_value, ce);
                }
                Z_CE_P(EX_VAR(opline->result.var)) = ce;
@@ -3150,7 +3150,7 @@ ZEND_VM_HANDLER(113, ZEND_INIT_STATIC_METHOD_CALL, UNUSED|CLASS_FETCH|CONST|VAR,
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -4118,7 +4118,7 @@ ZEND_VM_HANDLER(107, ZEND_CATCH, CONST, JMP_ADDR, LAST_CATCH|CACHE_SLOT)
        }
        catch_ce = CACHED_PTR(opline->extended_value & ~ZEND_LAST_CATCH);
        if (UNEXPECTED(catch_ce == NULL)) {
-               catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+               catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
 
                CACHE_PTR(opline->extended_value & ~ZEND_LAST_CATCH, catch_ce);
        }
@@ -4921,7 +4921,7 @@ ZEND_VM_HANDLER(68, ZEND_NEW, UNUSED|CLASS_FETCH|CONST|VAR, UNUSED|CACHE_SLOT, N
        if (OP1_TYPE == IS_CONST) {
                ce = CACHED_PTR(opline->op2.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -5092,7 +5092,7 @@ ZEND_VM_HANDLER(181, ZEND_FETCH_CLASS_CONSTANT, VAR|CONST|UNUSED|CLASS_FETCH, CO
                        } else if (EXPECTED(CACHED_PTR(opline->extended_value))) {
                                ce = CACHED_PTR(opline->extended_value);
                        } else {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                if (UNEXPECTED(ce == NULL)) {
                                        ZEND_ASSERT(EG(exception));
                                        ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -5496,7 +5496,7 @@ ZEND_VM_COLD_HANDLER(179, ZEND_UNSET_STATIC_PROP, CONST|TMPVAR|CV, UNUSED|CLASS_
        if (OP2_TYPE == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                FREE_UNFETCHED_OP1();
@@ -6227,7 +6227,7 @@ ZEND_VM_HANDLER(180, ZEND_ISSET_ISEMPTY_STATIC_PROP, CONST|TMPVAR|CV, UNUSED|CLA
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        ZEND_VM_C_GOTO(is_static_prop_return);
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -6659,7 +6659,7 @@ ZEND_VM_HANDLER(140, ZEND_DECLARE_INHERITED_CLASS, CONST, CONST)
 
        SAVE_OPLINE();
        parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
        if (UNEXPECTED(parent == NULL)) {
                ZEND_ASSERT(EG(exception));
@@ -6680,7 +6680,7 @@ ZEND_VM_HANDLER(145, ZEND_DECLARE_INHERITED_CLASS_DELAYED, CONST, CONST)
            ((orig_zce = zend_hash_find_ex(EG(class_table), Z_STR_P(RT_CONSTANT(opline, opline->op1)+1), 1)) != NULL &&
             Z_CE_P(zce) != Z_CE_P(orig_zce))) {
                parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
                if (UNEXPECTED(parent == NULL)) {
                        ZEND_ASSERT(EG(exception));
@@ -6733,7 +6733,7 @@ ZEND_VM_HANDLER(172, ZEND_DECLARE_ANON_INHERITED_CLASS, CONST, CONST, JMP_ADDR)
        }
 
        parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
        if (UNEXPECTED(parent == NULL)) {
                ZEND_ASSERT(EG(exception));
@@ -6786,7 +6786,7 @@ ZEND_VM_C_LABEL(try_instanceof):
                if (OP2_TYPE == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -6839,7 +6839,7 @@ ZEND_VM_HANDLER(144, ZEND_ADD_INTERFACE, ANY, CONST, CACHE_SLOT)
        zend_class_entry *iface;
 
        SAVE_OPLINE();
-       iface = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_INTERFACE);
+       iface = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_INTERFACE);
        if (UNEXPECTED(iface == NULL)) {
                ZEND_ASSERT(EG(exception));
                HANDLE_EXCEPTION();
@@ -6861,7 +6861,7 @@ ZEND_VM_HANDLER(154, ZEND_ADD_TRAIT, ANY, ANY, CACHE_SLOT)
 
        SAVE_OPLINE();
        trait = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_TRAIT);
        if (UNEXPECTED(trait == NULL)) {
                ZEND_ASSERT(EG(exception));
index c3ce608099fd4a1a452c85c09e86a2e27fd5eebd..20d395a65369c5a55c7bbd51a599c8863475394d 100644 (file)
@@ -1654,7 +1654,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_TRAIT_SPEC_HANDLER(ZEND_OP
 
        SAVE_OPLINE();
        trait = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_TRAIT);
        if (UNEXPECTED(trait == NULL)) {
                ZEND_ASSERT(EG(exception));
@@ -2265,7 +2265,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_INTERFACE_SPEC_CONST_HANDL
        zend_class_entry *iface;
 
        SAVE_OPLINE();
-       iface = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_INTERFACE);
+       iface = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_INTERFACE);
        if (UNEXPECTED(iface == NULL)) {
                ZEND_ASSERT(EG(exception));
                HANDLE_EXCEPTION();
@@ -2917,7 +2917,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CATCH_SPEC_CONST_HANDLER(ZEND_
        }
        catch_ce = CACHED_PTR(opline->extended_value & ~ZEND_LAST_CATCH);
        if (UNEXPECTED(catch_ce == NULL)) {
-               catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+               catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
 
                CACHE_PTR(opline->extended_value & ~ZEND_LAST_CATCH, catch_ce);
        }
@@ -4532,7 +4532,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -5200,7 +5200,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_C
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -5414,7 +5414,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_CONS
                        } else if (EXPECTED(CACHED_PTR(opline->extended_value))) {
                                ce = CACHED_PTR(opline->extended_value);
                        } else {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                if (UNEXPECTED(ce == NULL)) {
                                        ZEND_ASSERT(EG(exception));
                                        ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -5596,7 +5596,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_CONST == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -5653,7 +5653,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -5836,7 +5836,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_INHERITED_CLASS_SPEC_C
 
        SAVE_OPLINE();
        parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
        if (UNEXPECTED(parent == NULL)) {
                ZEND_ASSERT(EG(exception));
@@ -5857,7 +5857,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_INHERITED_CLASS_DELAYE
            ((orig_zce = zend_hash_find_ex(EG(class_table), Z_STR_P(RT_CONSTANT(opline, opline->op1)+1), 1)) != NULL &&
             Z_CE_P(zce) != Z_CE_P(orig_zce))) {
                parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
                if (UNEXPECTED(parent == NULL)) {
                        ZEND_ASSERT(EG(exception));
@@ -5886,7 +5886,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_ANON_INHERITED_CLASS_S
        }
 
        parent = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)),
-                                        RT_CONSTANT(opline, opline->op2) + 1,
+                                        Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1),
                                         ZEND_FETCH_CLASS_EXCEPTION);
        if (UNEXPECTED(parent == NULL)) {
                ZEND_ASSERT(EG(exception));
@@ -7377,7 +7377,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_C
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -7964,7 +7964,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -8082,7 +8082,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_VAR == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -8139,7 +8139,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -8475,7 +8475,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -8610,7 +8610,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_C
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -8796,7 +8796,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_CONST_UNUSED_HANDLER(
        if (IS_CONST == IS_CONST) {
                ce = CACHED_PTR(opline->op2.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -9018,7 +9018,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_UNUSED == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -9121,7 +9121,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -10473,7 +10473,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_C
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -13575,7 +13575,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
                                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
                                                retval = NULL;
@@ -14257,7 +14257,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_CONST == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
@@ -14314,7 +14314,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -14508,7 +14508,7 @@ try_instanceof:
                if (IS_CONST == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -15991,7 +15991,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
                                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
                                                retval = NULL;
@@ -16110,7 +16110,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_VAR == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
@@ -16167,7 +16167,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -16245,7 +16245,7 @@ try_instanceof:
                if (IS_VAR == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -16416,7 +16416,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
                                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
                                                retval = NULL;
@@ -16569,7 +16569,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_UNUSED == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                zval_ptr_dtor_nogc(EX_VAR(opline->op1.var));
@@ -16673,7 +16673,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -16751,7 +16751,7 @@ try_instanceof:
                if (IS_UNUSED == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -23725,7 +23725,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_V
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -23866,7 +23866,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_
                        } else if (EXPECTED(CACHED_PTR(opline->extended_value))) {
                                ce = CACHED_PTR(opline->extended_value);
                        } else {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                if (UNEXPECTED(ce == NULL)) {
                                        ZEND_ASSERT(EG(exception));
                                        ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -26039,7 +26039,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_V
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -27598,7 +27598,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_V
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -27784,7 +27784,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_VAR_UNUSED_HANDLER(ZE
        if (IS_VAR == IS_CONST) {
                ce = CACHED_PTR(opline->op2.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -30036,7 +30036,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_V
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -31945,7 +31945,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_CONST_
 
                if (UNEXPECTED(ce == NULL)) {
                        class_name = RT_CONSTANT(opline, opline->op2);
-                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, opline->op1.num);
+                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num);
                        CACHE_PTR(opline->extended_value, ce);
                }
                Z_CE_P(EX_VAR(opline->result.var)) = ce;
@@ -32134,7 +32134,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_U
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -32291,7 +32291,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUS
                        } else if (EXPECTED(CACHED_PTR(opline->extended_value))) {
                                ce = CACHED_PTR(opline->extended_value);
                        } else {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                if (UNEXPECTED(ce == NULL)) {
                                        ZEND_ASSERT(EG(exception));
                                        ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -33675,7 +33675,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR
 
                if (UNEXPECTED(ce == NULL)) {
                        class_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC);
-                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, opline->op1.num);
+                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num);
                        CACHE_PTR(opline->extended_value, ce);
                }
                Z_CE_P(EX_VAR(opline->result.var)) = ce;
@@ -33865,7 +33865,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_U
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -34360,7 +34360,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED
 
                if (UNEXPECTED(ce == NULL)) {
                        class_name = NULL;
-                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, opline->op1.num);
+                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num);
                        CACHE_PTR(opline->extended_value, ce);
                }
                Z_CE_P(EX_VAR(opline->result.var)) = ce;
@@ -34403,7 +34403,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_U
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -34589,7 +34589,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_UNUSED_UNUSED_HANDLER
        if (IS_UNUSED == IS_CONST) {
                ce = CACHED_PTR(opline->op2.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -36051,7 +36051,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_CV_HAN
 
                if (UNEXPECTED(ce == NULL)) {
                        class_name = EX_VAR(opline->op2.var);
-                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, opline->op1.num);
+                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num);
                        CACHE_PTR(opline->extended_value, ce);
                }
                Z_CE_P(EX_VAR(opline->result.var)) = ce;
@@ -36240,7 +36240,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_U
                /* no function found. try a static method in class */
                ce = CACHED_PTR(opline->result.num);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), RT_CONSTANT(opline, opline->op1) + 1, ZEND_FETCH_CLASS_DEFAULT |  ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                HANDLE_EXCEPTION();
@@ -39506,7 +39506,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -41375,7 +41375,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_CONST == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -41562,7 +41562,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -41755,7 +41755,7 @@ try_instanceof:
                if (IS_CONST == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -45610,7 +45610,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -45833,7 +45833,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_VAR == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -45890,7 +45890,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -45967,7 +45967,7 @@ try_instanceof:
                if (IS_VAR == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
@@ -46448,7 +46448,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC_
                                zval *class_name = RT_CONSTANT(opline, opline->op2);
 
                                if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value)) == NULL)) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), class_name + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                                        if (UNEXPECTED(ce == NULL)) {
 
                                                retval = NULL;
@@ -47278,7 +47278,7 @@ static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP
        if (IS_UNUSED == IS_CONST) {
                ce = CACHED_PTR(opline->extended_value);
                if (UNEXPECTED(ce == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
 
@@ -47429,7 +47429,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC
                        value = CACHED_PTR((opline->extended_value & ~ZEND_ISEMPTY) + sizeof(void*));
                        goto is_static_prop_return;
                } else if (UNEXPECTED((ce = CACHED_PTR(opline->extended_value & ~ZEND_ISEMPTY)) == NULL)) {
-                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
+                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION);
                        if (UNEXPECTED(ce == NULL)) {
                                ZEND_ASSERT(EG(exception));
                                ZVAL_UNDEF(EX_VAR(opline->result.var));
@@ -47506,7 +47506,7 @@ try_instanceof:
                if (IS_UNUSED == IS_CONST) {
                        ce = CACHED_PTR(opline->extended_value);
                        if (UNEXPECTED(ce == NULL)) {
-                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), RT_CONSTANT(opline, opline->op2) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                               ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                if (EXPECTED(ce)) {
                                        CACHE_PTR(opline->extended_value, ce);
                                }
index e10eb60d4a65683e758d30062b752c256d447ab8..0e403a783b8dfecfeaa64aefaa28dc102fcdf460 100644 (file)
@@ -765,7 +765,7 @@ PHPDBG_API zend_bool phpdbg_check_caught_ex(zend_execute_data *execute_data, zen
                                zend_class_entry *ce;
 
                                if (!(ce = CACHED_PTR(cur->extended_value & ~ZEND_LAST_CATCH))) {
-                                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(cur, cur->op1)), RT_CONSTANT(cur, cur->op1) + 1, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+                                       ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(cur, cur->op1)), Z_STR_P(RT_CONSTANT(cur, cur->op1) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD);
                                        CACHE_PTR(cur->extended_value & ~ZEND_LAST_CATCH, ce);
                                }