mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 09:14:20 +00:00
104 lines
6.3 KiB
Plaintext
104 lines
6.3 KiB
Plaintext
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:25:13
|
|
|
|
|
LL | &self.x;
|
|
| ^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:34:17
|
|
|
|
|
LL | let _ = &good.ptr;
|
|
| ^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:35:17
|
|
|
|
|
LL | let _ = &good.data;
|
|
| ^^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:37:17
|
|
|
|
|
LL | let _ = &good.data as *const _;
|
|
| ^^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:38:27
|
|
|
|
|
LL | let _: *const _ = &good.data;
|
|
| ^^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:40:17
|
|
|
|
|
LL | let _ = good.data.clone();
|
|
| ^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:42:17
|
|
|
|
|
LL | let _ = &good.data2[0];
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:51:17
|
|
|
|
|
LL | let _ = &packed2.x;
|
|
| ^^^^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:90:20
|
|
|
|
|
LL | let _ref = &m1.1.a;
|
|
| ^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/unaligned_references.rs:93:20
|
|
|
|
|
LL | let _ref = &m2.1.a;
|
|
| ^^^^^^^
|
|
|
|
|
= 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)
|
|
|
|
error: aborting due to 10 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0793`.
|