Tudo o que encontrei na Internet sobre o fiasco da ordem de inicialização estática era sobre C++, mas é verdade que se eu inicializar uma variável global de algum tipo Foo como
struct Foo {
int flag;
pthread_key_t key;
void *ptrs[10];
};
Não consigo inicializar uma variável do tipo struct Foo
como static struct Foo x = { 0 };
? se eu quiser obter o código correto por causa do SIOF?