Commit d09fd249c0

Andrew Kelley <andrew@ziglang.org>
2024-11-01 20:03:26
std.hash.int: restore previous behavior
In the parent commit, I handled odd bit sizes by upcasting and truncating. However it seems the else branch is intended to handle those cases instead, so this commit reverts that behavior.
1 parent 5ad44c1
Changed files (1)
lib
lib/std/hash.zig
@@ -51,12 +51,8 @@ pub fn int(input: anytype) @TypeOf(input) {
         const Unsigned = @Type(.{ .int = .{ .signedness = .unsigned, .bits = info.bits } });
         const casted: Unsigned = @bitCast(input);
         return @bitCast(int(casted));
-    } else if (info.bits < 16) {
-        return @truncate(int(@as(u16, input)));
-    } else if (info.bits < 32) {
-        return @truncate(int(@as(u32, input)));
-    } else if (info.bits < 64) {
-        return @truncate(int(@as(u64, input)));
+    } else if (info.bits < 4) {
+        return @truncate(int(@as(u4, input)));
     }
     var x = input;
     switch (info.bits) {