master
1const A = packed struct {
2 a: u2,
3 b: u6,
4};
5const B = packed struct {
6 q: u8,
7 a: u2,
8 b: u6,
9};
10export fn entry() void {
11 var a = A{ .a = 2, .b = 2 };
12 var b = B{ .q = 22, .a = 3, .b = 2 };
13 var t: usize = 0;
14 _ = &t;
15 const ptr = switch (t) {
16 0 => &a.a,
17 1 => &b.a,
18 else => unreachable,
19 };
20 if (ptr.* == 2) {
21 @compileError("wrong compile error");
22 }
23}
24// error
25//
26// :15:17: error: incompatible types: '*align(1:0:1) u2' and '*align(2:8:2) u2'
27// :16:14: note: type '*align(1:0:1) u2' here
28// :17:14: note: type '*align(2:8:2) u2' here