diff -r 41841f0acc48 tcc.c --- a/tcc.c Wed Oct 03 18:15:48 2007 -0500 +++ b/tcc.c Mon Oct 22 23:37:58 2007 +0200 @@ -5849,7 +5849,7 @@ static void struct_decl(CType *type, int if (v == 0 && (type1.t & VT_BTYPE) == VT_STRUCT) { ass = type1.ref; while ((ass = ass->next) != NULL) { - ss = sym_push(ass->v, &ass->type, 0, offset + ass->c); + ss = sym_push(ass->v, &type1, 0, offset + ass->c); *ps = ss; ps = &ss->next; }