class.c (finish_struct_1): Force alignment of non-bitfields to BITS_PER_UNIT.
1999-10-13 Andrew Haley <aph@cygnus.com> * class.c (finish_struct_1): Force alignment of non-bitfields to BITS_PER_UNIT. From-SVN: r29973
This commit is contained in:
parent
c76aab113e
commit
e7bba992a9
|
@ -1,3 +1,8 @@
|
||||||
|
1999-10-13 Andrew Haley <aph@cygnus.com>
|
||||||
|
|
||||||
|
* class.c (finish_struct_1): Force alignment of non-bitfields to
|
||||||
|
BITS_PER_UNIT.
|
||||||
|
|
||||||
Wed Oct 13 22:01:35 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
|
Wed Oct 13 22:01:35 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
|
||||||
|
|
||||||
* typeck2.c (process_init_constructor): Handle empty constructors.
|
* typeck2.c (process_init_constructor): Handle empty constructors.
|
||||||
|
|
|
@ -3654,6 +3654,14 @@ finish_struct_1 (t)
|
||||||
cp_error_at ("multiple fields in union `%T' initialized");
|
cp_error_at ("multiple fields in union `%T' initialized");
|
||||||
any_default_members = 1;
|
any_default_members = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
unsigned int min_align = (DECL_PACKED (x) ? BITS_PER_UNIT
|
||||||
|
: TYPE_ALIGN (TREE_TYPE (x)));
|
||||||
|
/* Non-bit-fields are aligned for their type, except packed
|
||||||
|
fields which require only BITS_PER_UNIT alignment. */
|
||||||
|
DECL_ALIGN (x) = MAX (DECL_ALIGN (x), min_align);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue