bitfields: fix long bitfields
now the testcase works on i386-linux as well.
This commit is contained in:
parent
1094891e67
commit
377e8e5e68
1 changed files with 3 additions and 3 deletions
6
tccgen.c
6
tccgen.c
|
@ -3362,9 +3362,9 @@ static void struct_layout(CType *type, AttributeDef *ad)
|
|||
(ofs2 / (typealign * 8)) > (size/typealign))) {
|
||||
c = (c + ((bit_pos + 7) >> 3) + typealign - 1) & -typealign;
|
||||
bit_pos = 0;
|
||||
} else while (bit_pos + bit_size > size * 8) {
|
||||
c += size;
|
||||
bit_pos -= size * 8;
|
||||
} else if (bit_pos + bit_size > size * 8) {
|
||||
c += bit_pos >> 3;
|
||||
bit_pos &= 7;
|
||||
}
|
||||
offset = c;
|
||||
/* In PCC layout named bit-fields influence the alignment
|
||||
|
|
Loading…
Reference in a new issue