X is defined as the following:
X
struct X { Y y; // more fields... int a; };
I have a pointer of type Y*,
Y*