If you attempt to dir.walk
on a fs.openDir
without setting .{ .iterable = true }
in fs.openDir
you will get the error:
thread 42910 panic: reached unreachable code
/home/user/.zig/lib/std/posix.zig:5170:18: 0x14f21c9 in lseek_SET (build)
.BADF => unreachable, // always a race condition
const fs = std.fs.cwd();
const dir = fs.openDir("/tmp", .{}) catch unreachable;
var walker = dir.walk(b.allocator) catch unreachable;
while (walker.next() catch unreachable) |entry| {
std.debug.print("entry basename: {s}\n", .{entry.basename});
}
...
const dir = fs.openDir("/tmp", .{ .iterate = true }) catch unreachable;
...