aboutsummaryrefslogtreecommitdiffstats
path: root/src/vm.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm.rs')
-rw-r--r--src/vm.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/vm.rs b/src/vm.rs
index 20125be..5e7810d 100644
--- a/src/vm.rs
+++ b/src/vm.rs
@@ -557,7 +557,7 @@ impl VM {
Value::Function(_, block) => {
self.push(Value::Function(Vec::new(), block.clone()));
- if block.borrow().constant && !block.borrow().linked {
+ if block.borrow().needs_linking() {
error!(self,
ErrorKind::InvalidProgram,
format!("Calling function '{}' before all captured variables are declared.",
@@ -676,7 +676,7 @@ impl VM {
Op::Link(slot) => {
match self.constant(slot).clone() {
Value::Function(_, block) => {
- block.borrow_mut().linked = true;
+ block.borrow_mut().link();
}
value => {
error!(self,