From 77be7d36aa9e52a9fa045acf927b1d422c4e344b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A0=20Arrufat?= Date: Fri, 20 Mar 2026 16:44:23 +0900 Subject: [PATCH] Sema: improve error for non-float operand in round cast --- src/Sema.zig | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Sema.zig b/src/Sema.zig index aa9f47d4ea6d3f726882772096dd3239cc32fd85..b10d1dbe70682a2c94ebaa37c9fd259efcf8f676 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -20881,7 +20881,15 @@ fn zirRoundCast( const dest_scalar_ty = dest_ty.scalarType(zcu); const operand_scalar_ty = operand_ty.scalarType(zcu); - try sema.checkFloatType(block, operand_src, operand_scalar_ty); + switch (operand_scalar_ty.zigTypeTag(zcu)) { + .comptime_float, .float => {}, + else => return sema.fail( + block, + operand_src, + "expected float or vector type, found '{f}'", + .{operand_ty.fmt(pt)}, + ), + } switch (dest_scalar_ty.zigTypeTag(zcu)) { .float, .comptime_float => { -- 2.54.0