tccgen.c: off by one in flexible array members
tccgen.c: fix fexible array member breaking struct alignment
This commit is contained in:
2
tccgen.c
2
tccgen.c
@ -5847,7 +5847,7 @@ static void decl_initializer_alloc(CType *type, AttributeDef *ad, int r,
|
|||||||
tcc_error("unknown type size");
|
tcc_error("unknown type size");
|
||||||
}
|
}
|
||||||
if (flexible_array)
|
if (flexible_array)
|
||||||
size += flexible_array->type.ref->c * pointed_size(&flexible_array->type);
|
size += flexible_array->type.ref->c * pointed_size(&flexible_array->type) + 1;
|
||||||
/* take into account specified alignment if bigger */
|
/* take into account specified alignment if bigger */
|
||||||
if (ad->a.aligned) {
|
if (ad->a.aligned) {
|
||||||
if (ad->a.aligned > align)
|
if (ad->a.aligned > align)
|
||||||
|
|||||||
Reference in New Issue
Block a user