mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 09:14:20 +00:00
161 lines
7.6 KiB
Plaintext
161 lines
7.6 KiB
Plaintext
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/issue-53114-safety-checks.rs:23:13
|
|
|
|
|
LL | let _ = &p.b;
|
|
| ^^^^
|
|
|
|
|
= 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/issue-53114-safety-checks.rs:28:17
|
|
|
|
|
LL | let (_,) = (&p.b,);
|
|
| ^^^^
|
|
|
|
|
= 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[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:24:13
|
|
|
|
|
LL | let _ = u1.a;
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:25:14
|
|
|
|
|
LL | let _ = &u2.a;
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:29:17
|
|
|
|
|
LL | let (_,) = (u1.a,);
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:30:18
|
|
|
|
|
LL | let (_,) = (&u2.a,);
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/issue-53114-safety-checks.rs:37:16
|
|
|
|
|
LL | let _: _ = &p.b;
|
|
| ^^^^
|
|
|
|
|
= 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/issue-53114-safety-checks.rs:42:20
|
|
|
|
|
LL | let (_,): _ = (&p.b,);
|
|
| ^^^^
|
|
|
|
|
= 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[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:38:16
|
|
|
|
|
LL | let _: _ = u1.a;
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:39:17
|
|
|
|
|
LL | let _: _ = &u2.a;
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:43:20
|
|
|
|
|
LL | let (_,): _ = (u1.a,);
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:44:21
|
|
|
|
|
LL | let (_,): _ = (&u2.a,);
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0793]: reference to packed field is unaligned
|
|
--> $DIR/issue-53114-safety-checks.rs:51:11
|
|
|
|
|
LL | match &p.b { _ => { } }
|
|
| ^^^^
|
|
|
|
|
= 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/issue-53114-safety-checks.rs:56:12
|
|
|
|
|
LL | match (&p.b,) { (_,) => { } }
|
|
| ^^^^
|
|
|
|
|
= 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[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:52:11
|
|
|
|
|
LL | match u1.a { _ => { } }
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:53:12
|
|
|
|
|
LL | match &u2.a { _ => { } }
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:57:12
|
|
|
|
|
LL | match (u1.a,) { (_,) => { } }
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error[E0133]: access to union field is unsafe and requires unsafe function or block
|
|
--> $DIR/issue-53114-safety-checks.rs:58:13
|
|
|
|
|
LL | match (&u2.a,) { (_,) => { } }
|
|
| ^^^^ access to union field
|
|
|
|
|
= note: the field may not be properly initialized: using uninitialized data will cause undefined behavior
|
|
|
|
error: aborting due to 18 previous errors
|
|
|
|
Some errors have detailed explanations: E0133, E0793.
|
|
For more information about an error, try `rustc --explain E0133`.
|