https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113974
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Why do you care? The behavior is the same whether a static variable is put into a BSS or LCOMM section. Common attribute or -fcommon/-fno-common is about the behavior of public variables without initializers, whether it is allowed to be defined in multiple TUs or not. For static variables that is not the case, the compiler as an optimization should remove unused variables and others will be defined zero initialized, whether from BSS or LCOMM or any other similar way.