https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111677
--- Comment #20 from Alex Coplan <acoplan at gcc dot gnu.org> --- I think the testcase in #c10 went latent on the 13 branch but the following (reduced from the attachment) still ICEs on the tip of the 13 branch with -Ofast -fopenmp -fstack-protector-strong: typedef struct { long size_z; int width; } dt_bilateral_t; typedef float dt_aligned_pixel_t[4]; #pragma omp declare simd void dt_bilateral_splat(dt_bilateral_t *b) { float *buf; long offsets[8]; for (; b;) { int firstrow; for (int j = firstrow; j; j++) for (int i; i < b->width; i++) { dt_aligned_pixel_t contrib; for (int k = 0; k < 4; k++) buf[offsets[k]] += contrib[k]; } float *dest; for (int j = (long)b; j; j++) { float *src = (float *)b->size_z; for (int i = 0; i < (long)b; i++) dest[i] += src[i]; } } }