From: Aldy Hernandez Date: Thu, 16 May 2024 07:22:55 +0000 (+0200) Subject: Use a boolean type when folding conditionals in simplify_using_ranges. X-Git-Tag: basepoints/gcc-16~8980 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f6bed6d3fcc13880ffa786b6c616e2306efe2bf3;p=thirdparty%2Fgcc.git Use a boolean type when folding conditionals in simplify_using_ranges. In adding some traps for PR114985 I noticed that the conditional folding code in simplify_using_ranges was using the wrong type. This cleans up the oversight. gcc/ChangeLog: PR tree-optimization/114985 * vr-values.cc (simplify_using_ranges::fold_cond_with_ops): Use boolean type when folding conditionals. --- diff --git a/gcc/vr-values.cc b/gcc/vr-values.cc index 0572bf6c8c7..e6ea9592574 100644 --- a/gcc/vr-values.cc +++ b/gcc/vr-values.cc @@ -316,10 +316,9 @@ simplify_using_ranges::fold_cond_with_ops (enum tree_code code, || !query->range_of_expr (r1, op1, s)) return NULL_TREE; - tree type = TREE_TYPE (op0); int_range<1> res; range_op_handler handler (code); - if (handler && handler.fold_range (res, type, r0, r1)) + if (handler && handler.fold_range (res, boolean_type_node, r0, r1)) { if (res == range_true ()) return boolean_true_node;