When you want to embed a type, you need its definition, but you don’t actually need the full definition. You just need the size/alignment.Aren't there ABI cases where e.g. struct foo { float X, Y; } would be passed in e.g. fp registers whereas struct { char[8]; } would not? Thi