https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88967
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Well, in your case firstprivate is really what you want, unless the compiler figures that out for you magically you want to firstprivatize these variables. A different thing is of course if you have a large const aggregate, then it might not be always a win. But for an integral/pointer variable or similar, it is definitely a win.