From 357c54663c332aff82f539a838a930842192e5ba Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Mon, 15 Aug 2022 19:24:34 +0200 Subject: Fixed bugs reported by the mycology test suite --- src/field.zig | 2 +- src/main.zig | 2 +- src/stack.zig | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/field.zig b/src/field.zig index 9a12a80..6c0e420 100644 --- a/src/field.zig +++ b/src/field.zig @@ -287,7 +287,7 @@ pub const Field = struct { } } switch (buffer[i]) { - 12 => x += 1, + 12 => continue, '\r' => { x = 0; y += 1; diff --git a/src/main.zig b/src/main.zig index d1b6ccb..1608b87 100644 --- a/src/main.zig +++ b/src/main.zig @@ -12,7 +12,7 @@ pub fn main() anyerror!void { std.os.exit(1); } - var file = try std.fs.cwd().openFile("mycology/sanity.bf", .{}); + var file = try std.fs.cwd().openFile(args[1], .{}); defer file.close(); const env: []const [*:0]const u8 = std.os.environ; diff --git a/src/stack.zig b/src/stack.zig index 09edd2e..c1f8696 100644 --- a/src/stack.zig +++ b/src/stack.zig @@ -12,9 +12,8 @@ pub const Stack = struct { self.allocator.destroy(self); } pub fn duplicate(self: *Stack) !void { - if (self.data.items.len > 0) { - try self.push(self.data.items[self.data.items.len - 1]); - } + const v = self.pop(); + try self.pushVector([2]i64{ v, v }); } test "duplicate" { var s = try Stack.init(std.testing.allocator); -- cgit v1.2.3