https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106123
--- Comment #3 from qinzhao at gcc dot gnu.org --- the minimized testing case: struct S { int t; int a; void foo (); }; void S::foo () { #pragma omp parallel { #pragma omp taskloop firstprivate (a) for (int i = 0; i < a; i++) t++; } }