https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106448
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- int x; void bar (void) { #pragma omp atomic x = (x + 6); #pragma omp atomic x = (x * 6); } is incorrectly accepted in C and rejected in C++.