blob: 995d945f1589e0d16df7a12cc0e09b7573c6df93 [file] [log] [blame] [view]
A type with `packed` representation hint has a field with `align`
representation hint.
Erroneous code example:
```compile_fail,E0588
#[repr(align(16))]
struct Aligned(i32);
#[repr(packed)] // error!
struct Packed(Aligned);
```
Just like you cannot have both `align` and `packed` representation hints on the
same type, a `packed` type cannot contain another type with the `align`
representation hint. However, you can do the opposite:
```
#[repr(packed)]
struct Packed(i32);
#[repr(align(16))] // ok!
struct Aligned(Packed);
```