Рассмотрим следующую программу (см. живое демо здесь).
#include <stdio.h>
int main(void)
{
int ; // Missing variable name
puts("Surprise");
}
Мой компилятор gcc 4.8.1 дает следующее предупреждение:
[Предупреждение] бесполезное имя типа в пустое объявление [включено по умолчанию]
Почему он компилируется? Должен ли я получить ошибку компилятора? g++ 4.8.1 дает следующую ошибку, когда я компилирую ее как программу на С++:
Объявление [Error] не объявляет ничего [-fpermissive]