1const Inner = extern struct { a: u32 };
2const Outer = extern struct { a: u32, b: Inner };
3
4export fn main() callconv(.kernel) void {
5 var outer: Outer = undefined;
6 const inner: *Inner = @ptrCast(&outer);
7 _ = &inner;
8}
9
10// error
11// backend=selfhosted
12// target=spirv32-vulkan
13//
14// :6:27: error: cannot cast pointer '*tmp.Outer' to '*tmp.Inner'
15// :6:27: note: 'tmp.Inner' must appear at offset 0 inside 'tmp.Outer'