ZXBasicStudio
ZXBasicStudio copied to clipboard
Error al compilar programa cuando se ejecuta en modo de depuración
El siguiente programa trivial no compila cuando trato de ejecutarlo:
DIM a AS UBYTE
A = 0
IF a = 0 THEN
ELSE
PRINT a
END if
La salida que genera es:
(...)
/home/javier/ZXBasicProjects/Primero/NewDocument.zxbas:5: error: Syntax Error. Unexpected token 'ELSE' <ELSE>
/home/javier/ZXBasicProjects/Primero/NewDocument.zxbas:7: error: Syntax Error. Unexpected token 'IF' <IF>
Error building program, aborting...
Si le metemos un retorno de carro entonces ya funciona:
DIM a AS UBYTE
A = 0
IF a = 0 THEN
ELSE
PRINT a
END if
Pero si entonces decido ejecutarlo en modo de depuración, ya no. La salida generada es esta:
(...)
/home/javier/ZXBasicProjects/Primero/NewDocument.zxbas:5: error: Syntax Error. Unexpected token 'ELSE' <ELSE>
/home/javier/ZXBasicProjects/Primero/NewDocument.zxbas:7: error: Syntax Error. Unexpected token 'IF' <IF>
Error building program, aborting...
Si añadimos una sentencia vacía, ya funciona en modo de depuración:
DIM a AS UBYTE
A = 0
IF a = 0 THEN
:
ELSE
PRINT a
END if
Es decir, cuando existe un if que no ejecuta nada, se puede compilar sin errores, pero si se hace en modo de depuración, entonces no.
Opciones del zxbc configuradas en proyecto (resto de opciones por defecto): --debug --optimize 3 --explicit --ignore-case
Versión de ZXBasic Studio: build 1.0.8763.37937 para Linux. Versión de Boriel Basic utilizada: 1.17.2 para Linux.