https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93566
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- void foo (int *x) { int c[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int bar (int i) { return c[i]; } #pragma omp parallel for reduction(+:x[:10]) for (int i = 0; i < 10; i++) x[i] = bar (i); } ICEs too.