Commit 06c08e5219

Vexu <git@vexu.eu>
2020-07-16 16:05:14
std.mem.zeroes use std.mem.set instead of `@memset`
stage1 comptime is not smart enough to remeber the size of the casted item which leads to out of bounds errors.
1 parent 3764737
Changed files (1)
lib
lib/std/mem.zig
@@ -552,7 +552,7 @@ pub fn zeroes(comptime T: type) T {
             if (@sizeOf(T) == 0) return T{};
             if (comptime meta.containerLayout(T) == .Extern) {
                 var item: T = undefined;
-                @memset(@ptrCast([*]u8, &item), 0, @sizeOf(T));
+                set(u8, asBytes(&item), 0);
                 return item;
             } else {
                 var structure: T = undefined;