summaryrefslogtreecommitdiffstats
path: root/tests/ui/moves/move-out-of-slice-2.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/moves/move-out-of-slice-2.stderr')
-rw-r--r--tests/ui/moves/move-out-of-slice-2.stderr80
1 files changed, 80 insertions, 0 deletions
diff --git a/tests/ui/moves/move-out-of-slice-2.stderr b/tests/ui/moves/move-out-of-slice-2.stderr
new file mode 100644
index 000000000..b46854cd6
--- /dev/null
+++ b/tests/ui/moves/move-out-of-slice-2.stderr
@@ -0,0 +1,80 @@
+warning: the feature `unsized_locals` is incomplete and may not be safe to use and/or cause compiler crashes
+ --> $DIR/move-out-of-slice-2.rs:1:12
+ |
+LL | #![feature(unsized_locals)]
+ | ^^^^^^^^^^^^^^
+ |
+ = note: see issue #48055 <https://github.com/rust-lang/rust/issues/48055> for more information
+ = note: `#[warn(incomplete_features)]` on by default
+
+error[E0508]: cannot move out of type `[A]`, a non-copy slice
+ --> $DIR/move-out-of-slice-2.rs:11:11
+ |
+LL | match *a {
+ | ^^ cannot move out of here
+LL |
+LL | [a @ ..] => {}
+ | -
+ | |
+ | data moved here
+ | move occurs because `a` has type `[A]`, which does not implement the `Copy` trait
+ |
+help: consider borrowing the pattern binding
+ |
+LL | [ref a @ ..] => {}
+ | +++
+
+error[E0508]: cannot move out of type `[A]`, a non-copy slice
+ --> $DIR/move-out-of-slice-2.rs:17:11
+ |
+LL | match *b {
+ | ^^ cannot move out of here
+LL |
+LL | [_, _, b @ .., _] => {}
+ | -
+ | |
+ | data moved here
+ | move occurs because `b` has type `[A]`, which does not implement the `Copy` trait
+ |
+help: consider borrowing the pattern binding
+ |
+LL | [_, _, ref b @ .., _] => {}
+ | +++
+
+error[E0508]: cannot move out of type `[C]`, a non-copy slice
+ --> $DIR/move-out-of-slice-2.rs:25:11
+ |
+LL | match *c {
+ | ^^ cannot move out of here
+LL |
+LL | [c @ ..] => {}
+ | -
+ | |
+ | data moved here
+ | move occurs because `c` has type `[C]`, which does not implement the `Copy` trait
+ |
+help: consider borrowing the pattern binding
+ |
+LL | [ref c @ ..] => {}
+ | +++
+
+error[E0508]: cannot move out of type `[C]`, a non-copy slice
+ --> $DIR/move-out-of-slice-2.rs:31:11
+ |
+LL | match *d {
+ | ^^ cannot move out of here
+LL |
+LL | [_, _, d @ .., _] => {}
+ | -
+ | |
+ | data moved here
+ | move occurs because `d` has type `[C]`, which does not implement the `Copy` trait
+ |
+help: consider borrowing the pattern binding
+ |
+LL | [_, _, ref d @ .., _] => {}
+ | +++
+
+error: aborting due to 4 previous errors; 1 warning emitted
+
+For more information about this error, try `rustc --explain E0508`.