summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--masm/parse.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/masm/parse.c b/masm/parse.c
index 2e404ad..3cbe305 100644
--- a/masm/parse.c
+++ b/masm/parse.c
@@ -916,13 +916,14 @@ static int parse_pseudo_instruction(struct parser *parser,
else CHK(move)
res = parse_pseudo_move(parser, expr);
- if (res)
+ if (res) {
+ // reset on fail
lexer_load(parser->lexer, &state);
-
- expr->ins[0].data.raw = 0;
- expr->ins[1].data.raw = 0;
- expr->ref[0] = (struct reference) {0};
- expr->ref[1] = (struct reference) {0};
+ expr->ins[0].data.raw = 0;
+ expr->ins[1].data.raw = 0;
+ expr->ref[0] = (struct reference) {0};
+ expr->ref[1] = (struct reference) {0};
+ }
log_disabled = 0;
return res;