diff options
Diffstat (limited to 'contrib/gcc/stor-layout.c')
-rw-r--r-- | contrib/gcc/stor-layout.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/contrib/gcc/stor-layout.c b/contrib/gcc/stor-layout.c index 4fb290847ef6..835cb7cb1e88 100644 --- a/contrib/gcc/stor-layout.c +++ b/contrib/gcc/stor-layout.c @@ -711,6 +711,9 @@ update_alignment_for_field (rli, field, known_align) desired_align = DECL_ALIGN (field); user_align = DECL_USER_ALIGN (field); } + else if (!DECL_BIT_FIELD_TYPE (field)) + /* Even packed non-bit-fields get byte alignment. */ + desired_align = MAX (desired_align, BITS_PER_UNIT); /* Some targets (i.e. i386, VMS) limit struct field alignment to a lower boundary than alignment of variables unless |