From 5a196125dca729deb150a4444961101a2f5a7ff8 Mon Sep 17 00:00:00 2001 From: Yorhel <git@yorhel.nl> Date: Fri, 16 Jul 2021 18:32:49 +0200 Subject: [PATCH] Use @errorName() fallback in ui.errorString() Sticking to "compiletime-known" error types will essentially just bring in *every* possible error anyway, so might as well take advantage of @errorName. --- src/ui.zig | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/ui.zig b/src/ui.zig index cc1784b..cdcaa3b 100644 --- a/src/ui.zig +++ b/src/ui.zig @@ -48,7 +48,7 @@ pub fn oom() void { init(); } -// Lazy strerror() for Zig file I/O, not complete. +// Dumb strerror() alternative for Zig file I/O, not complete. // (Would be nicer if Zig just exposed errno so I could call strerror() directly) pub fn errorString(e: anyerror) [:0]const u8 { return switch (e) { @@ -70,9 +70,7 @@ pub fn errorString(e: anyerror) [:0]const u8 { error.ReadOnlyFilesystem => "Read-only filesystem", error.SymlinkLoop => "Symlink loop", error.SystemFdQuotaExceeded => "System file descriptor limit exceeded", - else => "Unknown error", // rather useless :( - // ^ TODO: remove that one and accept only a restricted error set for - // compile-time exhaustiveness checks. + else => @bitCast([:0]const u8, @errorName(e)), // XXX: The bitCast can be removed after a Zig >0.8 release. }; } -- GitLab