diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2012-11-12 21:44:46 +0100 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2012-11-12 21:44:46 +0100 |
commit | 3bb56ae078e80b3d228be092dc66962760d9a892 (patch) | |
tree | f167d903ce5aa5e08fd6729f10ab47a931027e2d /parser.h | |
parent | 1dbea939c15ba5bf16484216950f7bd53cd47584 (diff) | |
download | sciteco-3bb56ae078e80b3d228be092dc66962760d9a892.tar.gz |
distinguish between GOTO, LOOP and CONDITIONAL parse-only modes: fixes loop branching in conditionals
e.g. <0"=1;'...do something...> now works as expected
Diffstat (limited to 'parser.h')
-rw-r--r-- | parser.h | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -166,11 +166,13 @@ namespace States { extern enum Mode { MODE_NORMAL = 0, - MODE_PARSE_ONLY + MODE_PARSE_ONLY_GOTO, + MODE_PARSE_ONLY_LOOP, + MODE_PARSE_ONLY_COND } mode; #define BEGIN_EXEC(STATE) G_STMT_START { \ - if (mode != MODE_NORMAL) \ + if (mode > MODE_NORMAL) \ return STATE; \ } G_STMT_END |