summaryrefslogtreecommitdiff
path: root/src/syntax
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-06-27 12:05:36 +0200
committerLaurenz <laurmaedje@gmail.com>2021-06-27 12:05:36 +0200
commitf64c772b6d969fa3aa1a7391a3d8118b21430434 (patch)
tree4829cea375ccb5c7dc864052fa80a63b9dcb6fb1 /src/syntax
parent422b8e640f00977177a5a7250a3c56009eed10c4 (diff)
Fix capturing bug
Diffstat (limited to 'src/syntax')
-rw-r--r--src/syntax/visit.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/syntax/visit.rs b/src/syntax/visit.rs
index cf819ef0..52418361 100644
--- a/src/syntax/visit.rs
+++ b/src/syntax/visit.rs
@@ -183,10 +183,10 @@ visit! {
}
fn visit_let(v, node: &LetExpr) {
- v.visit_binding(&node.binding);
if let Some(init) = &node.init {
v.visit_expr(&init);
}
+ v.visit_binding(&node.binding);
}
fn visit_if(v, node: &IfExpr) {
@@ -203,6 +203,7 @@ visit! {
}
fn visit_for(v, node: &ForExpr) {
+ v.visit_expr(&node.iter);
match &node.pattern {
ForPattern::Value(value) => v.visit_binding(value),
ForPattern::KeyValue(key, value) => {
@@ -210,7 +211,6 @@ visit! {
v.visit_binding(value);
}
}
- v.visit_expr(&node.iter);
v.visit_expr(&node.body);
}