HOla! que raro que te funcione bien en linux, cree algo parecido y me marca dos errores: uno es por redefinicion de tipos, y el otro es por tratar de definir algo que aun no esta declarado osea vos queres hacer
typedef struct nodo Nodo; pero struct nodo recien esta declarado despues de esta linea..
Y en el segundo que hiciste tambien me marca un warning, y tambien se debe a la forma de usar el typedef, lo correcto seria:
Código C:
Ver originaltypedef struct nodo {
int informacion;
struct nodo* p;
struct nodo* n;
} Nodo;
Saludos