zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 8bd07fb1be034556874bdafb5cf895e2f941a6bc (tree)
parent 7d6fcf083122bfe049f5314b3ec8ddcbfb27569d
Author: Jacob Young <jacobly0@users.noreply.github.com>
Date:   Sun, 18 Jun 2023 23:42:30 -0400

Sema: fix type in a `@floatToInt` safety check

Unblocks #15981

Diffstat:
Msrc/Sema.zig | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/Sema.zig b/src/Sema.zig @@ -20771,7 +20771,7 @@ fn zirFloatToInt(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError! try sema.requireRuntimeBlock(block, inst_data.src(), operand_src); if (dest_ty.intInfo(mod).bits == 0) { if (block.wantSafety()) { - const ok = try block.addBinOp(if (block.float_mode == .Optimized) .cmp_eq_optimized else .cmp_eq, operand, try sema.addConstant(operand_ty, try mod.intValue(operand_ty, 0))); + const ok = try block.addBinOp(if (block.float_mode == .Optimized) .cmp_eq_optimized else .cmp_eq, operand, try sema.addConstant(operand_ty, try mod.floatValue(operand_ty, 0.0))); try sema.addSafetyCheck(block, ok, .integer_part_out_of_bounds); } return sema.addConstant(dest_ty, try mod.intValue(dest_ty, 0));