LINUX.ORG.RU

История изменений

Исправление utf8nowhere, (текущая версия) :

Бывает

Не вижу доказательства. Было бы, если бы без #include "file.h" идентификатор __stupid_global был видим.

А с #include "file.h" это просто область видимости начинающаяся после объявления extern int __stupid_global; и заканчивающаяся в конце file1(2).c

https://timsong-cpp.github.io/cppwp/n4659/basic.scope#namespace-3

The outermost declarative region of a translation unit is also a namespace, called the global namespace. A name declared in the global namespace has global namespace scope (also called global scope). The potential scope of such a name begins at its point of declaration and ends at the end of the translation unit that is its declarative region. A name with global namespace scope is said to be a global name.

Исходная версия utf8nowhere, :

Бывает

Не вижу доказательства. Было бы, если бы без #include "file.h" идентификатор __stupid_global был видим.

А с #include "file.h" это просто область видимости начинающаяся после объявления extern int __stupid_global; и заканчивающаяся в конце file1(2).c