Canal de Noticias del equipo INFSP y asuntos técnicos relacionados

lunes, 4 de agosto de 2008

Inform 7 808.4

Eliuk detectó un error gordo en Glulx, en la última edicion de INFSP7 (Spanish.i7x) : simplemente la compilación se detenía indicando un error de backpatching.


He aislado el bug, en la rutina EncajeSimplon;

[ EncajeSimplon w donde i;
objectloop(i in donde) {
if (WordInProperty(w, i, name)) rtrue;

#ifndef TARGET_GLULX; ! demomento esto da un error "Illegal backpatch marker in forward-declared symbol" error en glulx
if (i provides synomym_f) if (TextInProperty (i,synomym_f,w)==1) rtrue;
if (i provides synomym_fp) if (TextInProperty (i,synomym_fp,w)==1) rtrue;
if (i provides synomym_m) if (TextInProperty (i,synomym_m,w)==1) rtrue;
if (i provides synomym_mp) if (TextInProperty (i,synomym_mp,w)==1) rtrue;
#endif;

! if (WordInProperty(w, i, name_f)) rtrue;
! if (WordInProperty(w, i, name_mp)) rtrue;
! if (WordInProperty(w, i, name_fp)) rtrue;
! if (WordInProperty(w, i, adjectives)) rtrue;
if (children(i) && EncajeSimplon(w, i)) rtrue;
}
rfalse;
];

Por alguna razón, las líneas 'if (i provides...' generan un error al compilar para Glulx llamado:
(0): Error: *** Illegal backpatch marker in forward-declared symbol

Arrghhch!! Horrible!
Bueno, con las directivas de compilación agregadas, el peligro fue desactivado.

Veremos cómo resolver el asunto.
Me llama la atención, pues hay otras partes de codigo en la extension que vuelven a usar el if (i provides synomym_f) etc, y alli inform no chilla.

Qué se la va a hacer.

Todo este asunto está relacionado con mis investigaciones para que I7 de soporte al tema de los sinónimos de diferente genero/numero, a la manera de informATE.
Ya estoy en condiciones de decir que es un autentico dolor de cabeza. Primero por el trabajo que me está costando, y segundo porque efectivamente me duele la cabeza.

No hay comentarios:

Etiquetas

>>Buscar en este blog

>>Foro