Em C, como restringir o escopo de uma variável global ao arquivo no qual ela é declarada?

Eu sou novo em C. Eu tenho um livro na minha frente que explica o "escopo de arquivo" de C, incluindo código de amostra. Mas o código apenas declara e inicializa uma variável com escopo de arquivo - ele não verifica o escopo da variável tentando, digamos, acessá-la de maneira ilegal. Assim! No espírito da ciência, construí uma experiência.

Arquivobar.c:

static char fileScopedVariable[] = "asdf";

Arquivofoo.c:

#include <stdio.h>
#include "bar.c"

main()
    {
    printf("%s\n", fileScopedVariable);
    }

De acordo com meu livro, e para o Google, a chamada paraprintf()&nbsp;deve falhar - mas isso não acontece.foo.exe&nbsp;produz a string "asdf" e termina normalmente. Eu gostaria muito de usar o escopo de arquivos. o que estou perdendo?