yuanbin <yuanb...@gmail.com> writes: > typedef struct CBase { int i; } CBase; > typedef struct CT1 { EXTENDS(CBase) ... } CT1; > typedef struct CT2 { EXTENDS(CT1) ... } CT2; > ... > typedef struct CTN { EXTENDS(CTN_1) ... } CTN; > CTN t; > t.i=1; //need not t.CTN_1....CT2.CT1.CBase.i ---complex > CBase* p=&t.CBase; //need not t.CTN_1....CT2.CT1.CBase, need not > (CBase*)&t ---not safe
http://gcc.gnu.org/onlinedocs/gcc-4.5.0/gcc/Unnamed-Fields.html Ian