Fix a small oversight in methods calling the base class fold_range. Tested on x86-64 Linux.
gcc/ChangeLog: * range-op.cc (operator_lshift::fold_range): Pass rel to base class fold_range. (operator_rshift::fold_range): Same. --- gcc/range-op.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gcc/range-op.cc b/gcc/range-op.cc index e0be51dbc90..4bdd14dd6f7 100644 --- a/gcc/range-op.cc +++ b/gcc/range-op.cc @@ -1929,7 +1929,7 @@ bool operator_lshift::fold_range (irange &r, tree type, const irange &op1, const irange &op2, - relation_kind rel ATTRIBUTE_UNUSED) const + relation_kind rel) const { int_range_max shift_range; if (!get_shift_range (shift_range, type, op2)) @@ -1960,7 +1960,7 @@ operator_lshift::fold_range (irange &r, tree type, } else // Otherwise, invoke the generic fold routine. - return range_operator::fold_range (r, type, op1, shift_range); + return range_operator::fold_range (r, type, op1, shift_range, rel); } void @@ -2189,7 +2189,7 @@ bool operator_rshift::fold_range (irange &r, tree type, const irange &op1, const irange &op2, - relation_kind rel ATTRIBUTE_UNUSED) const + relation_kind rel) const { int_range_max shift; if (!get_shift_range (shift, type, op2)) @@ -2201,7 +2201,7 @@ operator_rshift::fold_range (irange &r, tree type, return true; } - return range_operator::fold_range (r, type, op1, shift); + return range_operator::fold_range (r, type, op1, shift, rel); } void -- 2.31.1