| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:3:1 |
| | |
| 3 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 4 | | #[repr(packed, C)] |
| 5 | | struct Packed { |
| 6 | | #[pin] |
| 7 | | field: u16, |
| 8 | | } |
| 9 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_struct_make_proj_method` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:3:1 |
| | |
| 3 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 4 | | #[repr(packed, C)] |
| 5 | | struct Packed { |
| 6 | | #[pin] |
| 7 | | field: u16, |
| 8 | | } |
| 9 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_struct_make_proj_method` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:3:1 |
| | |
| 3 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 4 | | #[repr(packed, C)] |
| 5 | | struct Packed { |
| 6 | | #[pin] |
| 7 | | field: u16, |
| 8 | | } |
| 9 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_constant` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:11:1 |
| | |
| 11 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 12 | | #[repr(packed(2))] |
| 13 | | struct PackedN { |
| 14 | | #[pin] |
| 15 | | field: u32, |
| 16 | | } |
| 17 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_struct_make_proj_method` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:11:1 |
| | |
| 11 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 12 | | #[repr(packed(2))] |
| 13 | | struct PackedN { |
| 14 | | #[pin] |
| 15 | | field: u32, |
| 16 | | } |
| 17 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_struct_make_proj_method` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error[E0793]: reference to packed field is unaligned |
| --> tests/ui/pin_project/packed.rs:11:1 |
| | |
| 11 | / pin_project! { //~ ERROR reference to packed field is unaligned |
| 12 | | #[repr(packed(2))] |
| 13 | | struct PackedN { |
| 14 | | #[pin] |
| 15 | | field: u32, |
| 16 | | } |
| 17 | | } |
| | |_^ |
| | |
| = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses |
| = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) |
| = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) |
| = note: this error originates in the macro `$crate::__pin_project_constant` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info) |