¿Variablemente modificado 'nombre_variable' en el error de alcance del archivo?

Nuevo en C. Recibo el siguiente error al compilar:

error: variably modified 'header' at file scope
error: variably modified 'sequence' at file scope

Código:

struct list{
  char header[list_header_size];
  char sequence[list_sequence_size];
  struct list *next;
};

Pensé que el error significaba que el compilador necesitaba saber cuáles eran estas variables desde el principio. Entonces, moví main (), que es donde se llama la estructura, al final del programa. También intenté declarar las variables al comienzo del programa, pero no estoy seguro de si lo hice correctamente. Lo intentéchar header; ychar header[];

Respuestas a la pregunta(1)

Su respuesta a la pregunta