diff --git a/Zend/Optimizer/zend_func_info.c b/Zend/Optimizer/zend_func_info.c index 964c713c025..121d2d2cfe5 100644 --- a/Zend/Optimizer/zend_func_info.c +++ b/Zend/Optimizer/zend_func_info.c @@ -58,15 +58,15 @@ static uint32_t zend_range_info(const zend_call_info *call_info, const zend_ssa && ssa && !(ssa->cfg.flags & ZEND_SSA_TSSA)) { zend_op_array *op_array = call_info->caller_op_array; - uint32_t t1 = _ssa_op1_info(op_array, ssa, op_array->opcodes, + uint32_t t1 = _ssa_op1_info(op_array, ssa, call_info->arg_info[0].opline, ssa->ops ? &ssa->ops[call_info->arg_info[0].opline - op_array->opcodes] : NULL); - uint32_t t2 = _ssa_op1_info(op_array, ssa, op_array->opcodes, + uint32_t t2 = _ssa_op1_info(op_array, ssa, call_info->arg_info[1].opline, ssa->ops ? &ssa->ops[call_info->arg_info[1].opline - op_array->opcodes] : NULL); uint32_t t3 = 0; uint32_t tmp = MAY_BE_RC1 | MAY_BE_ARRAY; if (call_info->num_args == 3) { - t3 = _ssa_op1_info(op_array, ssa, op_array->opcodes, + t3 = _ssa_op1_info(op_array, ssa, call_info->arg_info[2].opline, ssa->ops ? &ssa->ops[call_info->arg_info[2].opline - op_array->opcodes] : NULL); } if ((t1 & MAY_BE_STRING) && (t2 & MAY_BE_STRING)) {