]> granicus.if.org Git - php/commitdiff
Fixed incorrect type inference
authorDmitry Stogov <dmitry@zend.com>
Thu, 28 May 2020 14:10:05 +0000 (17:10 +0300)
committerDmitry Stogov <dmitry@zend.com>
Thu, 28 May 2020 14:10:05 +0000 (17:10 +0300)
ext/opcache/Optimizer/zend_inference.c

index 8b07315c9c474c1d5e0a5975d1ce14e48caabe16..a56464e75f197c9db2c5b13b9ba4bba6f28a569a 100644 (file)
@@ -2539,8 +2539,8 @@ static zend_always_inline int _zend_update_type_info(
                                }
                        } else if (opline->opcode == ZEND_ASSIGN_OBJ_OP) {
                                if (opline->op1_type == IS_CV) {
-                                       tmp = (orig & (MAY_BE_REF|MAY_BE_OBJECT))|MAY_BE_RC1|MAY_BE_RCN;
-                                       UPDATE_SSA_TYPE(tmp, ssa_op->op1_def);
+                                       orig = (orig & (MAY_BE_REF|MAY_BE_OBJECT))|MAY_BE_RC1|MAY_BE_RCN;
+                                       UPDATE_SSA_TYPE(orig, ssa_op->op1_def);
                                        COPY_SSA_OBJ_TYPE(ssa_op->op1_use, ssa_op->op1_def);
                                }
                        } else if (opline->opcode == ZEND_ASSIGN_STATIC_PROP) {