aboutsummaryrefslogtreecommitdiff
path: root/src/interp.c
diff options
context:
space:
mode:
authorFranklin Wei <git@fwei.tk>2015-11-12 21:47:23 -0500
committerFranklin Wei <git@fwei.tk>2015-11-12 21:47:23 -0500
commita810c8760d090dcbc5ee0854b4c124a0eea3d7e7 (patch)
tree281a7196ededfb311fddff608712ef70d97b80aa /src/interp.c
parent142f530e6502ecb33af7a3095f5d049b8eca3c91 (diff)
downloadducky-a810c8760d090dcbc5ee0854b4c124a0eea3d7e7.zip
ducky-a810c8760d090dcbc5ee0854b4c124a0eea3d7e7.tar.gz
ducky-a810c8760d090dcbc5ee0854b4c124a0eea3d7e7.tar.bz2
ducky-a810c8760d090dcbc5ee0854b4c124a0eea3d7e7.tar.xz
add rockbox cross-compiler
Diffstat (limited to 'src/interp.c')
-rw-r--r--src/interp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/interp.c b/src/interp.c
index 9a53c22..8a2b91a 100644
--- a/src/interp.c
+++ b/src/interp.c
@@ -848,6 +848,8 @@ static int repeat_handler(char **save, int *repeats_left)
(void) save;
if(*repeats_left > 0)
{
+ if(repeat_line + 1 != current_line)
+ error("nested REPEAT");
--(*repeats_left);
if(*repeats_left)
jump_line(file_des, repeat_line);
@@ -1312,7 +1314,9 @@ void ducky_main(int fd, bool verbose)
default:
error("FIXME: invalid return value");
}
- else if(tok[0] != '#')
+ else if(tok[0] == '#')
+ goto next_line;
+ else
{
error("unknown token `%s` on line %d %d", tok, current_line);
goto done;