La versin que hay subida compila todo desde p1.pas hasta p4.pas includo.
Cosas que se me han ido ocurriendo, tambin para que vayais recordando:
Las asignaciones del tipo:
a := 3;
fallaban porque el arbol de tipos de 'a' era distinto al de '3'.
--------------------------------------------------------------------------------
Deberiamos tener siempre al principio un GOTO al principio del programa
principal, saltandonos todos los procedimientos y funciones, no?
--------------------------------------------------------------------------------Para aclararnos, los tipo procedimientos son:
T_PROCEDURE
/ \
/ \
Parametros NULL
Los tipo funcion son:
T_FUNCTION
/ \
/ \
Parametros Tipo_Devuelto
Los Parametros son:
T_X
/ \
/ \
/ \
/ \
T_X 3 (numero de parametros)
/ \
/ \
/ \
/ \
Parametros Tipo1
.
.
.
Esto no se podria simplificar?