commit f416535768fc30195cad6cd481f73fd1e80082aa (tree) parent 53987c932c9d62cc9cdae3d523fb62756ce83ca9 Author: Andrew Kelley <andrew@ziglang.org> Date: Fri, 18 Dec 2020 18:30:06 -0700 work around compiler bug regarding generic function slice alignment See #7495 Diffstat:
| M | lib/std/crypto/tlcsprng.zig | | | 4 | +++- |
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lib/std/crypto/tlcsprng.zig b/lib/std/crypto/tlcsprng.zig @@ -117,7 +117,9 @@ fn setupPthreadAtforkAndFill(buffer: []u8) void { } fn childAtForkHandler() callconv(.C) void { - const wipe_slice = @ptrCast([*]u8, &wipe_me)[0..@sizeOf(@TypeOf(wipe_me))]; + // TODO this is a workaround for https://github.com/ziglang/zig/issues/7495 + var wipe_slice: []u8 = undefined; + wipe_slice = @ptrCast([*]u8, &wipe_me)[0..@sizeOf(@TypeOf(wipe_me))]; std.crypto.utils.secureZero(u8, wipe_slice); }