Fix last change

Skipping anonymous bit-fields is correct, but not other
anonymous ones like unions or structs.
This commit is contained in:
Michael Matz 2017-05-01 06:04:19 +02:00
parent f775d68725
commit 4ce73354fc

View File

@ -6075,7 +6075,7 @@ static void decl_designator(CType *type, Section *sec, unsigned long c,
c += index * type_size(type, &align);
} else {
f = *cur_field;
while (f && (f->v & SYM_FIRST_ANOM))
while (f && (f->v & SYM_FIRST_ANOM) && (f->type.t & VT_BITFIELD))
*cur_field = f = f->next;
if (!f)
tcc_error("too many field init");