https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108299
--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> --- Comment 0 seems wrong to me, there is no requirement that flag is initialized if not odr-used, and if it is initialized, it doesn't have to happen before the printf statement. I agree that the standard says comment 3 should initialized both thread local variables.