Commit 5df4ef5
committed
try to avoid
Currently rustc forbids compound types from having both a `packed` and
`align` attribute.
When a source type has both attributes, this may mean it cannot be
represented with the current rustc. Often, though, one or both of these
attributes is redundant and can be safely removed from the generated
Rust code.
Previously, bindgen avoided placing the `align` attribute when it is
not needed. However, it would always place the `packed` attribute if the
source type has it, even when it is redundant because the source type is
"naturally packed".
With this change, bindgen avoids placing `packed` on a type if the
`packed` is redundant and the type needs an `align` attribute. If the
type does not have an "align" attribute, then bindgen will still place
`packed` so as to avoid changing existing working behavior.#[repr(packed)] when align is needed1 parent 3370a3c commit 5df4ef5
File tree
4 files changed
+441
-1
lines changed- bindgen-tests/tests
- expectations/tests
- headers
- bindgen
- codegen
- ir
4 files changed
+441
-1
lines changedLines changed: 369 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments