From 40f2c2cabfdfbace9bc9116be7228b2db9348c13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edvard=20Th=C3=B6rnros?= Date: Mon, 22 Feb 2021 21:19:17 +0100 Subject: fix another bug?? --- src/compiler.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/compiler.rs') diff --git a/src/compiler.rs b/src/compiler.rs index b3150ba..89ef9e0 100644 --- a/src/compiler.rs +++ b/src/compiler.rs @@ -322,7 +322,7 @@ macro_rules! push_scope { errors.push(( e, var.line, - format!("Usage of undefined value: '{}'.", var.name),) + format!("Variable is unused: '{}'.", var.name),) ); } if var.captured { @@ -853,7 +853,8 @@ impl Compiler { expect!(self, Token::Colon, "Expected ':' after parameter name."); if let Ok(typ) = self.parse_type() { args.push(typ.clone()); - let var = Variable::new(&name, true, typ); + let mut var = Variable::new(&name, true, typ); + var.read = true; if let Ok(slot) = self.define(var) { self.stack_mut()[slot].active = true; } @@ -959,7 +960,9 @@ impl Compiler { } } _ => { - if !parse_branch!(self, block, self.call(block)) { + if matches!(self.peek(), Token::Bang | Token::LeftParen) { + self.call(block) + } else { return; } } -- cgit v1.2.1