diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-05-18 14:46:04 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-05-20 02:47:20 -0700 |
| commit | 5626bb45d24cd4a57a4f6a1c0f41ec0feb276f7b (patch) | |
| tree | ea4653e4d5d85451891f1c03fe6c4a00d22d4b2c /src/Sema.zig | |
| parent | 58943fc6276c49b138c98bda5abac8be2806f94f (diff) | |
| download | zig-5626bb45d24cd4a57a4f6a1c0f41ec0feb276f7b.tar.gz zig-5626bb45d24cd4a57a4f6a1c0f41ec0feb276f7b.zip | |
Sema: fix comptime `@floatCast` downcast
Diffstat (limited to 'src/Sema.zig')
| -rw-r--r-- | src/Sema.zig | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Sema.zig b/src/Sema.zig index b28536fe48..feed4d0e8a 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -7236,8 +7236,8 @@ fn zirFloatCast(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!A ), } - if (try sema.isComptimeKnown(block, operand_src, operand)) { - return sema.coerce(block, dest_ty, operand, operand_src); + if (try sema.resolveMaybeUndefVal(block, operand_src, operand)) |operand_val| { + return sema.addConstant(dest_ty, try operand_val.floatCast(sema.arena, dest_ty, target)); } if (dest_is_comptime_float) { return sema.fail(block, src, "unable to cast runtime value to 'comptime_float'", .{}); |
