https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114509
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Reduced testcase: void bar (void *); void foo (int x) { struct S { int a[x]; int b; } s; #pragma omp parallel for for (int i = 0; i < 10; i++) bar (&s); } We don't really support variable length structures/unions in OpenMP/OpenACC lowering/expansion, and I don't see why we should spend time on that, variable length structures/unions just shouldn't be used in C (they are already invalid in C++ and not present in Fortran either), I think that extension exists just because Ada needs to support that. Though Ada on the other side doesn't support OpenMP/OpenACC. So, I think we should just sorry if something attempts to privatize/map variable length structure/union; making it shared should be fine.