compilar funciones anidadas con clang versus gcc

Tengo un archivo c que puedo compilar sin problemas usandoGCC como abajo:

gcc foo.c

sin embargo, usando el mismo archivo, recibo un error de tener funciones definidas dentro de main usandoclang:

clang foo.c

foo:230:1: error: function definition is not allowed here
{
^
foo.c:241:1: error: function definition is not allowed here
{
^
foo.c:253:1: error: function definition is not allowed here

Estas instancias de errores son las definiciones de una nueva función dentro de la sección principal del código. Quiero saber por qué GCC no se molesta con este sonido metálico todavía.

Respuestas a la pregunta(1)

Su respuesta a la pregunta