aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors
diff options
context:
space:
mode:
authorMatthew Lugg <mlugg@mlugg.co.uk>2025-03-03 22:18:28 +0000
committerGitHub <noreply@github.com>2025-03-03 22:18:28 +0000
commitc76f451abc0e642972e85d426112f494d30d40c7 (patch)
treee95dd64cf42a2525d0b2b6474dd4b74ab841eb44 /test/cases/compile_errors
parent501e84a96aa18fae7c345b0b54efa652cea85b38 (diff)
parent3aaf39424905801a4717df3e184c693f5373e09c (diff)
downloadzig-c76f451abc0e642972e85d426112f494d30d40c7.tar.gz
zig-c76f451abc0e642972e85d426112f494d30d40c7.zip
Merge pull request #22979 from mlugg/remove-legacy-coercions
Sema: remove legacy coercion
Diffstat (limited to 'test/cases/compile_errors')
-rw-r--r--test/cases/compile_errors/coerce_empty_tuple_to_struct.zig21
-rw-r--r--test/cases/compile_errors/invalid_tuple_to_struct_coercion.zig3
2 files changed, 22 insertions, 2 deletions
diff --git a/test/cases/compile_errors/coerce_empty_tuple_to_struct.zig b/test/cases/compile_errors/coerce_empty_tuple_to_struct.zig
new file mode 100644
index 0000000000..9ed4ece3da
--- /dev/null
+++ b/test/cases/compile_errors/coerce_empty_tuple_to_struct.zig
@@ -0,0 +1,21 @@
+const empty = .{};
+
+const Foo = struct {};
+const foo: Foo = empty;
+
+const Bar = struct { a: u32 };
+const bar: Bar = empty;
+
+comptime {
+ _ = foo;
+}
+comptime {
+ _ = bar;
+}
+
+// error
+//
+// :4:18: error: expected type 'tmp.Foo', found '@TypeOf(.{})'
+// :3:13: note: struct declared here
+// :7:18: error: expected type 'tmp.Bar', found '@TypeOf(.{})'
+// :6:13: note: struct declared here
diff --git a/test/cases/compile_errors/invalid_tuple_to_struct_coercion.zig b/test/cases/compile_errors/invalid_tuple_to_struct_coercion.zig
index 4f25a26ef1..1c691f76ea 100644
--- a/test/cases/compile_errors/invalid_tuple_to_struct_coercion.zig
+++ b/test/cases/compile_errors/invalid_tuple_to_struct_coercion.zig
@@ -7,7 +7,6 @@ export fn entry() void {
}
// error
-// target=native
//
-// :6:31: error: no field named '0' in struct 'tmp.S'
+// :6:31: error: expected type 'tmp.S', found 'struct { comptime void = {} }'
// :1:11: note: struct declared here