https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84217
--- Comment #3 from Tom de Vries <vries at gcc dot gnu.org> --- Tentative patch: ... diff --git a/gcc/omp-expand.c b/gcc/omp-expand.c index 90e0631..bb20490 100644 --- a/gcc/omp-expand.c +++ b/gcc/omp-expand.c @@ -1433,6 +1433,8 @@ expand_oacc_collapse_init (const struct omp_for_data *fd, plus_type = sizetype; if (POINTER_TYPE_P (diff_type) || TYPE_UNSIGNED (diff_type)) diff_type = signed_type_for (diff_type); + if (TYPE_PRECISION (diff_type) < TYPE_PRECISION (integer_type_node)) + diff_type = integer_type_node; if (tiling) { ...