aboutsummaryrefslogtreecommitdiff
path: root/src/value.zig
diff options
context:
space:
mode:
authorWilliam Sengir <william@sengir.com>2022-03-20 00:29:44 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-03-21 16:54:19 -0700
commit3f4676901a8c02d9d7069b284aa848d685c3975c (patch)
tree9c4e625363e0c68e4aaf43ab46f52432d111ecd6 /src/value.zig
parent2d8fef5680dc8218596e701f91d918c4aa7215bc (diff)
downloadzig-3f4676901a8c02d9d7069b284aa848d685c3975c.tar.gz
zig-3f4676901a8c02d9d7069b284aa848d685c3975c.zip
stage2: return `Value.zero` when truncating int to 0 bits at comptime
Diffstat (limited to 'src/value.zig')
-rw-r--r--src/value.zig2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/value.zig b/src/value.zig
index 76ab20c7ab..c5e082485a 100644
--- a/src/value.zig
+++ b/src/value.zig
@@ -3359,6 +3359,8 @@ pub const Value = extern union {
}
pub fn intTrunc(val: Value, allocator: Allocator, signedness: std.builtin.Signedness, bits: u16) !Value {
+ if (bits == 0) return Value.zero;
+
var val_space: Value.BigIntSpace = undefined;
const val_bigint = val.toBigInt(&val_space);