Conditional operators are always boolean, regardless of their
operands. Getting the type wrong is not currently a problem, but will
be when prange's can no longer store an integer.
gcc/ChangeLog:
* vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Remove
type from range_true and range_false.
range_op_handler handler (code);
if (handler && handler.fold_range (res, type, r0, r1))
{
- if (res == range_true (type))
+ if (res == range_true ())
return boolean_true_node;
- if (res == range_false (type))
+ if (res == range_false ())
return boolean_false_node;
}
return NULL;