summaryrefslogtreecommitdiffstats
path: root/tests/ui/binding/issue-53114-safety-checks.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/binding/issue-53114-safety-checks.stderr')
-rw-r--r--tests/ui/binding/issue-53114-safety-checks.stderr72
1 files changed, 65 insertions, 7 deletions
diff --git a/tests/ui/binding/issue-53114-safety-checks.stderr b/tests/ui/binding/issue-53114-safety-checks.stderr
index 5c9d78772..41318d0a3 100644
--- a/tests/ui/binding/issue-53114-safety-checks.stderr
+++ b/tests/ui/binding/issue-53114-safety-checks.stderr
@@ -17,7 +17,25 @@ LL | let (_,) = (&p.b,);
= 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:37:11
+ --> $DIR/issue-53114-safety-checks.rs:37:16
+ |
+LL | let _: _ = &p.b;
+ | ^^^^
+ |
+ = note: fields of packed structs are not properly aligned, and 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: fields of packed structs are not properly aligned, and 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:51:11
|
LL | match &p.b { _ => { } }
| ^^^^
@@ -26,7 +44,7 @@ LL | match &p.b { _ => { } }
= 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:12
+ --> $DIR/issue-53114-safety-checks.rs:56:12
|
LL | match (&p.b,) { (_,) => { } }
| ^^^^
@@ -35,6 +53,14 @@ LL | match (&p.b,) { (_,) => { } }
= 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:13
|
LL | let _ = &u2.a;
@@ -59,7 +85,39 @@ LL | let (_,) = (&u2.a,);
= 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:38:11
+ --> $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:16
+ |
+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:20
+ |
+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:52:11
|
LL | match u1.a { _ => { } }
| ^^^^ access to union field
@@ -67,7 +125,7 @@ LL | match u1.a { _ => { } }
= 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:11
+ --> $DIR/issue-53114-safety-checks.rs:53:11
|
LL | match &u2.a { _ => { } }
| ^^^^^ access to union field
@@ -75,7 +133,7 @@ LL | match &u2.a { _ => { } }
= 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:12
+ --> $DIR/issue-53114-safety-checks.rs:57:12
|
LL | match (u1.a,) { (_,) => { } }
| ^^^^ access to union field
@@ -83,14 +141,14 @@ LL | match (u1.a,) { (_,) => { } }
= 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:12
+ --> $DIR/issue-53114-safety-checks.rs:58: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: aborting due to 11 previous errors
+error: aborting due to 18 previous errors
Some errors have detailed explanations: E0133, E0793.
For more information about an error, try `rustc --explain E0133`.