Я спрашиваю, потому что мой компилятор, кажется, так думает, хотя я этого не делаю. echo 'int main;' | cc -x c - -Wall echo 'int main;' | c++ -x c++ - -Wall Clang не выдает никаких предупреждений или ошибок при этом, а gcc выдает только кроткое предупреждение:, 'main' is usually a function...