aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2023-08-11 22:45:55 -0400
committerJacob Young <jacobly0@users.noreply.github.com>2023-08-12 01:57:11 -0400
commit2b5bd56a67a26cd4adff76b6e3bf542e97f91cc4 (patch)
tree1fb2a33f508353cf91a9486b83d3706706607b2d /test/cases/compile_errors
parentffc116de78dee6db8b3f2e0474f21bd88ef3895c (diff)
downloadzig-2b5bd56a67a26cd4adff76b6e3bf542e97f91cc4.tar.gz
zig-2b5bd56a67a26cd4adff76b6e3bf542e97f91cc4.zip
AstGen: fix src loc for invalid coercions in tuple literals
Diffstat (limited to 'test/cases/compile_errors')
-rw-r--r--test/cases/compile_errors/invalid_coercion_in_aggregate_literal.zig22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/cases/compile_errors/invalid_coercion_in_aggregate_literal.zig b/test/cases/compile_errors/invalid_coercion_in_aggregate_literal.zig
new file mode 100644
index 0000000000..606f069522
--- /dev/null
+++ b/test/cases/compile_errors/invalid_coercion_in_aggregate_literal.zig
@@ -0,0 +1,22 @@
+export fn invalidArrayElem() u8 {
+ const array_literal = [1]u8{@as(u8, 256)};
+ return array_literal[0];
+}
+
+export fn invalidTupleElem() u8 {
+ const tuple_literal = struct { u8 }{@as(u8, 256)};
+ return tuple_literal[0];
+}
+
+export fn invalidStructField() u8 {
+ const struct_literal = struct { field: u8 }{ .field = @as(u8, 256) };
+ return struct_literal.field;
+}
+
+// error
+// backend=stage2
+// target=native
+//
+// :2:41: error: type 'u8' cannot represent integer value '256'
+// :7:49: error: type 'u8' cannot represent integer value '256'
+// :12:67: error: type 'u8' cannot represent integer value '256'