commit 02df9aa9762bac2217b44121a5bae3afccb5ba71 (tree)
parent df6319418a08b611bae23307ace6688f95bedea2
Author: IntegratedQuantum <jahe788@gmail.com>
Date: Tue, 13 Jun 2023 10:16:51 +0200
Add a compiler error for @mulAdd with int vectors.
Diffstat:
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/Sema.zig b/src/Sema.zig
@@ -22670,8 +22670,8 @@ fn zirMulAdd(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air.
const maybe_addend = try sema.resolveMaybeUndefVal(addend);
const mod = sema.mod;
- switch (ty.zigTypeTag(mod)) {
- .ComptimeFloat, .Float, .Vector => {},
+ switch (ty.scalarType(mod).zigTypeTag(mod)) {
+ .ComptimeFloat, .Float => {},
else => return sema.fail(block, src, "expected vector of floats or float type, found '{}'", .{ty.fmt(sema.mod)}),
}
diff --git a/test/cases/compile_errors/muladd_int_vector.zig b/test/cases/compile_errors/muladd_int_vector.zig
@@ -0,0 +1,9 @@
+comptime {
+ _ = @mulAdd(@Vector(1, u32), .{0}, .{0}, .{0});
+}
+
+// error
+// backend=stage2
+// target=native
+//
+// :2:9: error: expected vector of floats or float type, found '@Vector(1, u32)'