Странное GCC предупреждение о классе и типе хранилища
У меня есть файл заголовка, который выглядит как
header.h
int TOS;
Этот файл включен только одним файлом кода
code.c
#include "header.h"
TOS=0;
При компиляции code.c GCC выдает предупреждение
code.c: 3: 1: предупреждение: определение данных не имеет типа или класса хранения [включено по умолчанию] code.c: 3: 1: предупреждение: тип по умолчанию имеет значение «int» в объявлении «TOS» [включено по умолчанию]
Я не понимаю причину этого предупреждения. Разве это не эквивалентно объявлению и определению TOS в code.c? то есть
code.c
int TOS;
TOS=0;