diff --git a/src/export.zig b/src/export.zig index 55a69fc..7670d08 100644 --- a/src/export.zig +++ b/src/export.zig @@ -182,7 +182,7 @@ export fn run(vm_ptr: usize) void { var vm: *Vm = @ptrFromInt(vm_ptr); vm.run() catch { if (vm.err.msg) |msg| { - log("Error Line {d}: {s}", .{ vm.err.line, msg }, .err); + log("Error at line {}: {s}", .{ vm.err.line, msg }, .err); } }; } diff --git a/src/vm.zig b/src/vm.zig index 6c9b7d3..157cbd5 100644 --- a/src/vm.zig +++ b/src/vm.zig @@ -316,6 +316,7 @@ pub const Vm = struct { fn fail(self: *Vm, comptime msg: []const u8, args: anytype) !void { self.err.msg = try std.fmt.allocPrint(self.allocator, msg, args); self.err.line = self.currentFrame().cl.data.closure.data.function.lines[self.currentFrame().ip]; + self.can_continue = false; return Error.RuntimeError; }