https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106492
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> --- The following seems to fix it: diff --git a/gcc/omp-low.cc b/gcc/omp-low.cc index d73c165f029..1af18e92395 100644 --- a/gcc/omp-low.cc +++ b/gcc/omp-low.cc @@ -6244,7 +6244,8 @@ lower_rec_input_clauses (tree clauses, gimple_seq *ilist, x = fold_build2 (POINTER_PLUS_EXPR, TREE_TYPE (x), x, t); else - x = fold_build2 (PLUS_EXPR, TREE_TYPE (x), x, t); + x = fold_build2 (PLUS_EXPR, TREE_TYPE (x), x, + fold_convert (TREE_TYPE (x), t)); } if ((OMP_CLAUSE_CODE (c) != OMP_CLAUSE_LINEAR