1 #[repr(C)] 2 pub struct Foo<T> { 3 something: *const i32, 4 phantom: std::marker::PhantomData<T>, 5 } 6 7 #[repr(C)] 8 pub union Bar { 9 something: i32, 10 subexpressions: Foo<Self>, 11 } 12 13 #[no_mangle] root(b: Bar)14 pub extern "C" fn root(b: Bar) {} 15