aboutsummaryrefslogtreecommitdiff
path: root/src/analyze.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/analyze.c')
-rw-r--r--src/analyze.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/analyze.c b/src/analyze.c
index 2dc039a..04b7856 100644
--- a/src/analyze.c
+++ b/src/analyze.c
@@ -397,7 +397,6 @@ static int analyze_closure(struct state *state, struct scope *scope,
}
node->scope = closure_scope;
- closure_scope->flags |= SCOPE_PROC;
scope_add_scope(scope, closure_scope);
if (analyze_list(state, closure_scope, closure_bindings(node)))
@@ -777,6 +776,9 @@ static int analyze_nil_check(struct state *state, struct scope *scope, struct as
return -1;
}
+ if (analyze(state, scope, nil_check_rest(node)))
+ return -1;
+
node->t = tgen_void(node->loc);
return 0;
}