authorgravatar for topolarity@tapscott.meCody Tapscott <topolarity@tapscott.me> 2022-03-14 10:37:23-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-03-14 21:43:02-07:00
log50a1ca24ca2a4311097132d660b8244f252da82f
tree90eafce733d02e4d0eacbbb561345bc70f7f3a82
parent1f76b4c6b84c1fd7d370bde75b8e37822bd85086

Add test for issue #11139


2 files changed, 26 insertions(+), 0 deletions(-)

test/behavior.zig+1
......@@ -62,6 +62,7 @@ test {
6262 _ = @import("behavior/bugs/11100.zig");
6363 _ = @import("behavior/bugs/10970.zig");
6464 _ = @import("behavior/bugs/11046.zig");
65 _ = @import("behavior/bugs/11139.zig");
6566 _ = @import("behavior/bugs/11165.zig");
6667 _ = @import("behavior/call.zig");
6768 _ = @import("behavior/cast.zig");
test/behavior/bugs/11139.zig created+25
......@@ -0,0 +1,25 @@
1const std = @import("std");
2const builtin = @import("builtin");
3const expect = std.testing.expect;
4
5test "store array of array of structs at comptime" {
6 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest;
7 if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
8 if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest;
9
10 try expect(storeArrayOfArrayOfStructs() == 15);
11 comptime try expect(storeArrayOfArrayOfStructs() == 15);
12}
13
14fn storeArrayOfArrayOfStructs() u8 {
15 const S = struct {
16 x: u8,
17 };
18
19 var cases = [_][1]S{
20 [_]S{
21 S{ .x = 15 },
22 },
23 };
24 return cases[0][0].x;
25}