]> granicus.if.org Git - php/commitdiff
Fixed type-infer
authorXinchen Hui <laruence@gmail.com>
Mon, 21 Aug 2017 08:35:07 +0000 (16:35 +0800)
committerXinchen Hui <laruence@gmail.com>
Mon, 21 Aug 2017 08:35:07 +0000 (16:35 +0800)
ext/opcache/Optimizer/zend_inference.c

index b82072e56e2d0ca7d5c069221b4aea87d0c84bf5..ef4c41b6e240b91c8914da11192d6327c86a1e89 100644 (file)
@@ -3187,10 +3187,10 @@ static int zend_update_type_info(const zend_op_array *op_array,
                        break;
                case ZEND_GET_CLASS:
                case ZEND_GET_CALLED_CLASS:
-                       UPDATE_SSA_TYPE(MAY_BE_FALSE|MAY_BE_STRING, ssa_ops[i].result_def);
+                       UPDATE_SSA_TYPE(MAY_BE_FALSE|MAY_BE_STRING|MAY_BE_RCN, ssa_ops[i].result_def);
                        break;
                case ZEND_GET_TYPE:
-                       UPDATE_SSA_TYPE(MAY_BE_STRING, ssa_ops[i].result_def);
+                       UPDATE_SSA_TYPE(MAY_BE_STRING|MAY_BE_RC1|MAY_BE_RCN, ssa_ops[i].result_def);
                        break;
                case ZEND_TYPE_CHECK:
                case ZEND_DEFINED: