https://gcc.gnu.org/g:14b65af6b400284a937e1d3be45579ee8cf8c32b
commit r15-3409-g14b65af6b400284a937e1d3be45579ee8cf8c32b Author: Richard Biener <rguent...@suse.de> Date: Tue Sep 3 10:40:41 2024 +0200 Do not assert NUM_POLY_INT_COEFFS != 1 early The following moves the assert on NUM_POLY_INT_COEFFS != 1 after INTEGER_CST processing. * fold-const.cc (poly_int_binop): Move assert on NUM_POLY_INT_COEFFS after INTEGER_CST processing. Diff: --- gcc/fold-const.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/fold-const.cc b/gcc/fold-const.cc index 2ada59f712bb..70db16759d04 100644 --- a/gcc/fold-const.cc +++ b/gcc/fold-const.cc @@ -1241,7 +1241,6 @@ poly_int_binop (poly_wide_int &res, enum tree_code code, const_tree arg1, const_tree arg2, signop sign, wi::overflow_type *overflow) { - gcc_assert (NUM_POLY_INT_COEFFS != 1); gcc_assert (poly_int_tree_p (arg1) && poly_int_tree_p (arg2)); if (TREE_CODE (arg1) == INTEGER_CST && TREE_CODE (arg2) == INTEGER_CST) @@ -1254,6 +1253,8 @@ poly_int_binop (poly_wide_int &res, enum tree_code code, return true; } + gcc_assert (NUM_POLY_INT_COEFFS != 1); + switch (code) { case PLUS_EXPR: