commit ddf9ff79bd2eccadafcdf12b191c62c66b247b64 (tree)
parent 77cb45f59f7b37c316af1762298d6032e2b130b5
Author: Andrew Kelley <andrew@ziglang.org>
Date: Mon, 26 Apr 2021 10:44:40 -0700
Revert "thread: simplify and remove useless return in spawn (#8621)"
This reverts commit 77cb45f59f7b37c316af1762298d6032e2b130b5.
Zig's error return traces will point to the return token if they
happen to occur, so having multiple return statements makes those
stack traces really helpful. This destroys debuggability.
Diffstat:
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/lib/std/Thread.zig b/lib/std/Thread.zig
@@ -360,13 +360,15 @@ pub fn spawn(comptime startFn: anytype, context: SpawnContextType(@TypeOf(startF
MainFuncs.posixThreadMain,
thread_obj.data.memory.ptr,
);
- return switch (err) {
- 0 => thread_obj,
- os.EAGAIN => error.SystemResources,
+ switch (err) {
+ 0 => return thread_obj,
+ os.EAGAIN => return error.SystemResources,
os.EPERM => unreachable,
os.EINVAL => unreachable,
- else => os.unexpectedErrno(err),
- };
+ else => return os.unexpectedErrno(err),
+ }
+
+ return thread_obj;
}
var guard_end_offset: usize = undefined;