authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-12-22 21:00:39-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-12-23 22:15:12-08:00
loge9da2783ce3c65d8e8e8533b7c70ec5a867f830a
treea30fea7b2179f53e15fc1856a7caf5b822d7f095
parent691afee786d095fef2a7abed73efa035feef3f4e

std.Io.Threaded: add a workaround for self-hosted wasm backend

Tracked by #30575

1 files changed, 7 insertions(+), 0 deletions(-)

lib/std/Io/Threaded.zig+7
...@@ -11085,6 +11085,13 @@ fn timestampFromPosix(timespec: *const posix.timespec) Io.Timestamp {...@@ -11085,6 +11085,13 @@ fn timestampFromPosix(timespec: *const posix.timespec) Io.Timestamp {
11085}11085}
1108611086
11087fn timestampToPosix(nanoseconds: i96) posix.timespec {11087fn timestampToPosix(nanoseconds: i96) posix.timespec {
11088 if (builtin.zig_backend == .stage2_wasm) {
11089 // Workaround for https://codeberg.org/ziglang/zig/issues/30575
11090 return .{
11091 .sec = @intCast(@divTrunc(nanoseconds, std.time.ns_per_s)),
11092 .nsec = @intCast(@rem(nanoseconds, std.time.ns_per_s)),
11093 };
11094 }
11088 return .{11095 return .{
11089 .sec = @intCast(@divFloor(nanoseconds, std.time.ns_per_s)),11096 .sec = @intCast(@divFloor(nanoseconds, std.time.ns_per_s)),
11090 .nsec = @intCast(@mod(nanoseconds, std.time.ns_per_s)),11097 .nsec = @intCast(@mod(nanoseconds, std.time.ns_per_s)),