Advertencia de GCC extraña sobre la clase de almacenamiento y escriba

Tengo un archivo de encabezado que se parece a

header.h

int TOS;

Este archivo está siendo incluido por un solo archivo de código

code.c

#include "header.h"
TOS=0;

Cuando compila code.c GCC emite una advertencia

code.c: 3: 1: advertencia: la definición de datos no tiene tipo o clase de almacenamiento [habilitado por defecto] code.c: 3: 1: advertencia: el tipo predeterminado es 'int' en la declaración de 'TOS' [habilitado por defecto ]

No entiendo la causa de esta advertencia. ¿No es equivalente a declarar y definir TOS en code.c? es decir

code.c

int TOS;
TOS=0;

Respuestas a la pregunta(3)

Su respuesta a la pregunta