@@ -4311,8 +4311,7 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_CONST_CONST_HANDLER(ZEND_OPCO
43114311 ZVAL_DUP(EX_VAR(opline->result.var), value);
43124312 } else if (Z_STRLEN_P(opline->op2.zv) == sizeof("class")-1 && memcmp(Z_STRVAL_P(opline->op2.zv), "class", sizeof("class") - 1) == 0) {
43134313 /* "class" is assigned as a case-sensitive keyword from zend_do_resolve_class_name */
4314- ZVAL_STR(EX_VAR(opline->result.var), ce->name);
4315- zend_string_addref(ce->name);
4314+ ZVAL_STR_COPY(EX_VAR(opline->result.var), ce->name);
43164315 } else {
43174316 zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(opline->op2.zv));
43184317 }
@@ -16676,11 +16675,8 @@ static int ZEND_FASTCALL ZEND_FE_FETCH_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
1667616675 if (opline->extended_value & ZEND_FE_FETCH_WITH_KEY) {
1667716676 if (!p->key) {
1667816677 ZVAL_LONG(EX_VAR((opline+1)->result.var), p->h);
16679- } else if (IS_INTERNED(p->key)) {
16680- ZVAL_INTERNED_STR(EX_VAR((opline+1)->result.var), p->key);
1668116678 } else {
16682- ZVAL_NEW_STR(EX_VAR((opline+1)->result.var), p->key);
16683- GC_REFCOUNT(p->key)++;
16679+ ZVAL_STR_COPY(EX_VAR((opline+1)->result.var), p->key);
1668416680 }
1668516681 }
1668616682 break;
@@ -16756,12 +16752,7 @@ static int ZEND_FASTCALL ZEND_FE_FETCH_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARG
1675616752 } else if (zend_check_property_access(zobj, p->key TSRMLS_CC) == SUCCESS) {
1675716753 if (opline->extended_value & ZEND_FE_FETCH_WITH_KEY) {
1675816754 if (p->key->val[0]) {
16759- if (IS_INTERNED(p->key)) {
16760- ZVAL_INTERNED_STR(EX_VAR((opline+1)->result.var), p->key);
16761- } else {
16762- ZVAL_NEW_STR(EX_VAR((opline+1)->result.var), p->key);
16763- GC_REFCOUNT(p->key)++;
16764- }
16755+ ZVAL_STR_COPY(EX_VAR((opline+1)->result.var), p->key);
1676516756 } else {
1676616757 const char *class_name, *prop_name;
1676716758 size_t prop_name_len;
@@ -18714,8 +18705,7 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE
1871418705 ZVAL_DUP(EX_VAR(opline->result.var), value);
1871518706 } else if (Z_STRLEN_P(opline->op2.zv) == sizeof("class")-1 && memcmp(Z_STRVAL_P(opline->op2.zv), "class", sizeof("class") - 1) == 0) {
1871618707 /* "class" is assigned as a case-sensitive keyword from zend_do_resolve_class_name */
18717- ZVAL_STR(EX_VAR(opline->result.var), ce->name);
18718- zend_string_addref(ce->name);
18708+ ZVAL_STR_COPY(EX_VAR(opline->result.var), ce->name);
1871918709 } else {
1872018710 zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(opline->op2.zv));
1872118711 }
@@ -27977,8 +27967,7 @@ static int ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPC
2797727967 ZVAL_DUP(EX_VAR(opline->result.var), value);
2797827968 } else if (Z_STRLEN_P(opline->op2.zv) == sizeof("class")-1 && memcmp(Z_STRVAL_P(opline->op2.zv), "class", sizeof("class") - 1) == 0) {
2797927969 /* "class" is assigned as a case-sensitive keyword from zend_do_resolve_class_name */
27980- ZVAL_STR(EX_VAR(opline->result.var), ce->name);
27981- zend_string_addref(ce->name);
27970+ ZVAL_STR_COPY(EX_VAR(opline->result.var), ce->name);
2798227971 } else {
2798327972 zend_error_noreturn(E_ERROR, "Undefined class constant '%s'", Z_STRVAL_P(opline->op2.zv));
2798427973 }
0 commit comments