Come definire una struttura typedef contenente puntatori a se stessa?

Sto scrivendo una LinkedList in C, il codice seguente rappresenta la mia definizione di nodo.

typedef struct { int value; struct Node* next; struct Node* prev; } Node; 

Capisco (o penso di farlo) che struct Node non è lo stesso di typedef struct Node . Dato che il mio codice viene compilato ed eseguito come previsto, tuttavia ricevo molti avvisi quando si assegna next e prev (warning: assegnazione da tipo di puntatore incompatibile). Immagino che questo abbia a che fare con il modo in cui li sto definendo nella struttura dei nodes. Ho caricato l’intera fonte qui

Quindi, se questo è davvero il problema, come dovrei definire next e prev all’interno del typedef struct Node ?

Ero preoccupato che questo potesse essere un repost, ma non riuscivo a trovare quello che stavo cercando. Grazie.