From: Nikita Popov Date: Fri, 5 Jul 2019 09:41:57 +0000 (+0200) Subject: Merge branch 'PHP-7.3' into PHP-7.4 X-Git-Tag: php-7.4.0alpha3~33 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=10861987118aefbfa715b8a0eeb464a21dfa1ec9;p=php Merge branch 'PHP-7.3' into PHP-7.4 --- 10861987118aefbfa715b8a0eeb464a21dfa1ec9 diff --cc ext/opcache/Optimizer/zend_inference.c index ed9fc4878c,e37ab32681..a80eb58a08 --- a/ext/opcache/Optimizer/zend_inference.c +++ b/ext/opcache/Optimizer/zend_inference.c @@@ -3414,18 -3227,31 +3414,16 @@@ static int zend_update_type_info(const case ZEND_FETCH_DIM_RW: case ZEND_FETCH_DIM_FUNC_ARG: case ZEND_FETCH_LIST_W: - case ZEND_ASSIGN_OP: - case ZEND_ASSIGN_DIM_OP: - case ZEND_ASSIGN_OBJ_OP: - case ZEND_ASSIGN_STATIC_PROP_OP: case ZEND_ASSIGN_DIM: ++ case ZEND_ASSIGN_DIM_OP: tmp |= MAY_BE_ARRAY | MAY_BE_ARRAY_OF_ARRAY; break; - case ZEND_ASSIGN_ADD: - case ZEND_ASSIGN_SUB: - case ZEND_ASSIGN_MUL: - case ZEND_ASSIGN_DIV: - case ZEND_ASSIGN_MOD: - case ZEND_ASSIGN_SL: - case ZEND_ASSIGN_SR: - case ZEND_ASSIGN_CONCAT: - case ZEND_ASSIGN_BW_OR: - case ZEND_ASSIGN_BW_AND: - case ZEND_ASSIGN_BW_XOR: - case ZEND_ASSIGN_POW: - if (op_array->opcodes[j].extended_value == ZEND_ASSIGN_DIM) { - tmp |= MAY_BE_ARRAY | MAY_BE_ARRAY_OF_ARRAY; - } else if (op_array->opcodes[j].extended_value == ZEND_ASSIGN_OBJ) { - tmp |= MAY_BE_ARRAY_OF_OBJECT; - } - break; case ZEND_FETCH_OBJ_W: case ZEND_FETCH_OBJ_RW: case ZEND_FETCH_OBJ_FUNC_ARG: case ZEND_ASSIGN_OBJ: ++ case ZEND_ASSIGN_OBJ_OP: + case ZEND_ASSIGN_OBJ_REF: case ZEND_PRE_INC_OBJ: case ZEND_PRE_DEC_OBJ: case ZEND_POST_INC_OBJ: