diff --git a/src/frontend/compiler.nim b/src/frontend/compiler.nim index 5863887..c47cd6f 100644 --- a/src/frontend/compiler.nim +++ b/src/frontend/compiler.nim @@ -242,9 +242,9 @@ proc done(self: Compiler): bool {.inline.} = result = self.current > self.ast.high() -proc error(self: Compiler, message: string) {.raises: [CompileError], inline.} = +proc error(self: Compiler, message: string, node: ASTNode = nil) {.raises: [CompileError], inline.} = ## Raises a CompileError exception - raise CompileError(msg: message, node: self.getCurrentNode(), file: self.file, module: self.currentModule) + raise CompileError(msg: message, node: if node.isNil(): self.getCurrentNode() else: node, file: self.file, module: self.currentModule) proc step(self: Compiler): ASTNode {.inline.} =