22.9 Structures, Unions, Enumerations and Bit-Fields

Implementation-Defined Behavior for Structures, Unions, Enumerations and Bit-Fields is covered in sections A.6.3.9 and G.3.9 of the ANSI C Standard.

What are the results if a member of a union object is accessed using a member of a different type? (ISO 6.3.2.3)

No conversions are applied.

Describe the padding and alignment of members of structures? (ISO 6.5.2.1)

Chars are byte-aligned. All other objects are word-aligned.

What is the equivalent type for a plain int bitfield? (ISO 6.5.2.1)

User defined. By default, signed int bitfield. May be made an unsigned int bitfield using a command line option.

What is the order of allocation of bit-fields within an int? (ISO 6.5.2.1)

Bits are allocated from least-significant to most-significant.

Can a bit-field straddle a storage-unit boundary? (ISO 6.5.2.1)

Yes.

Which integer type has been chosen to represent the values of an enumeration type? (ISO 6.5.2.2)

User defined. By default, int but can be made shorter using the command line option -fshort-enum.