Todo un xito. Despus de las tensiones de ltima hora y de la presencia continua de Murphy, hemos acabado la RC1.
No es por presionar..... Hoy es la fecha lmite para que presentemos nuestra Release Candidate 1, lo que es un problema porque deberamos presentar una Final...... todo no se puede pedir.....
Bueno, en 3 horitas salgo y me uno a la batalla.
Pos eso, que no sirve para nada pero mola ;-)
He subido lo que he hecho, y tena conflictos en pascal.y
No era demasiado difcil, ya lo he arreglado, pero al ejecutar los tests me ha dado un core dump en p13.pas, y no s si antes de ponerme con pascal.y ya lo daba.
Lo digo por si acaso.
Tambin modifiqu algunas llamadas a error (en cosas del continue, creo) que les faltaba un parmetro.
He creado el directorio doc para que metamos ah los ficheros de documentacin. Creo que es mejor que cada uno se ponga con unos cuantos y se metan por separado en ese directorio. Luego al final ya los uniremos en uno slo.
Se puede poner como variable de control de un for interno la variable de control del for externo, es decir:
for i:=1 to 15 do
for i:=4 to 10 do
Si no se puede hay qponer un bug sobre el tema
Pos eso, otro problema solucionado, ahora me dedicare a sacar fallos y a reportarlos. :)
Al menos eso parece, mas detalles en el comentario del Bug q esta "Closed"
Roberto, pon t el bug para arreglar eso, porque supongo que ahora con ese cambio habr algo que hiciste el viernes que no funcione, pero yo no s qu era.
Bueno, s que es un problema. Ahora me voy y no puedo ponerme con ello, pero a eso de las 12:30 volver y si nadie se pilla el bug (lo he puesto en BUGS) me pondr a sincronizar desde la 1.51 para subirlo definitivamente bien todo.
Por cierto, lo de los procedimientos y los retornos de las funciones ya tira, pero claro, en la versin 1.56 :-P
Haber varias cosas:
En la version 1.51 solo hay 1 conflicto asi q seguiremos con esa. Lo que no se es por q se ha producido, en cualquier caso ahora la version 1.51 no esta sincronizada con el resto por lo que se llama a funciones con menos parametros ya que trabaja con versiones antiguas del resto de ficheros. Lease sim_Anadirproc(....) tiene 5 parametros y en la llamada tiene 4... un problema.... read more
Mirad si en la versin 1.54 o 1.53 de pascal.y tena ese problema, porque me acabo de dar cuenta de que tenemos 7 conflictos d/r. De cundo viene eso?
No puedo mirarlo porque soy tan intil que no soy capaz de obtener esas versiones (en Browse CVS slo sale la versin 1.49).
Qu tal si ponemos todos los fallos que nos vayamos encontrando como bugs? Vale, parece que lo que he dicho es obvio, pero digo TODOS los fallos, para que no se nos vayan olvidando (incluso los pequeos).
Yo voy a seguir con lo de que OP_CALL tenga la direccin de comienzo del procedimiento.
Salu2
Pos eso. Aqui pongo mas cosas:
He quitado parte de codigo del typ_Copy
--------------------------------------------------------------------------------
Un tipo array, por lo que veo, se define as:
a : array[10] of char;
T_ARRAY
/ \
/ \
/ \
/ \
T_INT T_CHAR
.
.
.
a : array[1..10] of char;
T_ARRAY
/ \
/ \
/ \
/ \
T_X T_CHAR
/ \
/ \
/ \
/ \
T_INT T_INT
. .
. .
. .... read more
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... read more
El fallo de p1.pas estaba en la creacin de tipos. He cambiado typ_Create (y todo lo que ello conlleva), as como la creacin de los tipos integer (pero no en la lista de parmetros formales ni actuales --> revisar) y ya tira.
Ahora, los parmetros de typ_Create son:
typ_Create(tipo, izquierdo, derecho, datos).
Ya sabeis, si empezais con algo, decidmelo ;-)
Bajaros la ltima versin.
Voy con ms cosillas...
Hooola. Me he puesto a intentar solucionar lo de los procedimientos (lo de que pasa olmpicamente de ellos). Ir poco a poco solucionando los problemas desde p1.pas hasta el final. Para que no nos solapemos, cuando uno se ponga a hacer algo avisa al otro. En mi caso, hacedlo por telfono, please, que no tengo conexin permanente a inet. Diego, te he mandado mis telfonos por mail ;-)
Ale, a darle caa, que esto tiene que estar YA!!
Haber pongo como van las pruebas de los ficheros q tenemos ahora mismo, con la version recien bajada del CVS:
p1 -> Compila, pero el codigo generado no parece valido
p2 -> Compila, pero el codigo generado no parece valido, creo q no respetamos subprogramas a la hora de generar codigo.
p3 -> Compila, igual q los de antes
p4 -> Compila pero como ta en el comentario no deberia compilar, aun asi hay algun problema con los caracteres del CALL por que no genera bien la llamada.... read more
En la regla
expresion_simple :
....
| expresion_simple operador_suma MCuadrupla termino
he quitado lo de util_isLogic porque el operador no tiene por qu ser lgico (de hecho NO puede ser lgico, es >, <, =, <> ...).
A ver qu os parece.
Compilan las minipruebas p[1-5].pas. No compila prueba.pas (no se porque) y p6.pas (porque los accesos en cdigo a los arrays no funcionan).
Este fichero existia, verdad? Pos no esta en el CVS... Lo subire de la version de la 3 entrega. SI veis algo mas que falta subidlo.
Este fin de semana me pondre con lo de las listas y a depurar un poco el sintactico. Me asigno el bug para que os llegue el mail. O eso espero :)
Juanjo, creo que tamos duplicando trabajo. Existe una funcin en tipos.c que te da el tamao de un tipo y no se s se parece a lo que t comentas. En cuanto a lo de las pilas podemos usar glib no?