Por que estou recebendo este erro: “a definição de dados não possui tipo ou classe de armazenamento”?

#include <stdio.h>
#include <stdlib.h>

struct NODE {
    char* name;
    int val;
    struct NODE* next;
};
typedef struct NODE Node;

Node *head, *tail;
head = (Node*) malloc( sizeof( Node ) ); //line 21

E eu compilando assim:

cc -g -c -o file.tab.o file.tab.c

Estou recebendo esta mensagem de erro:

file.y:21:1 warning: data definition has no type or storage class [enabled by default]

questionAnswers(4)

yourAnswerToTheQuestion