Creo que el problema se debio a que era un archivo de C y no de C++, porque el codigo lo probe en C++ y si funcionaba, ya que siempre pruebo mis codigos antes de publicarlos.
En mi caso lo puse en un archivo con extension .cpp y funcionaba sin anteponer el struct dentro de la estructura, pero tu lo tenias en un archivo con extencion .c y dado que Dev-C o mas especificamente, mingw, que es en realidad el compilador, elige que compilador utiliza (C o C++) en base a le extencion del archivo, es por eso que marco error.
Pero si pruebas el codigo en un achivo con extencion .cpp compilara correctamente.
Saludos