From 698f8c2f01ea549d77d7dc3338a12e04c11057b9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:02:58 +0200 Subject: Adding upstream version 1.64.0+dfsg1. Signed-off-by: Daniel Baumann --- .../borrowck-move-out-from-array-use.stderr | 143 +++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr (limited to 'src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr') diff --git a/src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr b/src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr new file mode 100644 index 000000000..b0bad6e99 --- /dev/null +++ b/src/test/ui/borrowck/borrowck-move-out-from-array-use.stderr @@ -0,0 +1,143 @@ +error[E0382]: borrow of moved value: `a[..]` + --> $DIR/borrowck-move-out-from-array-use.rs:10:14 + | +LL | let [_, _, _x] = a; + | -- value moved here +LL | let [.., ref _y] = a; + | ^^^^^^ value borrowed here after move + | + = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a[..]` + --> $DIR/borrowck-move-out-from-array-use.rs:16:14 + | +LL | let [_, _, (_x, _)] = a; + | -- value partially moved here +LL | let [.., ref _y] = a; + | ^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait + +error[E0382]: borrow of moved value: `a[..].0` + --> $DIR/borrowck-move-out-from-array-use.rs:22:15 + | +LL | let [_, _, (_x, _)] = a; + | -- value moved here +LL | let [.., (ref _y, _)] = a; + | ^^^^^^ value borrowed here after move + | + = note: move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:30:10 + | +LL | let [_x, _, _] = a; + | -- value partially moved here +LL | let [ref _y @ .., _, _] = a; + | ^^^^^^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:36:16 + | +LL | let [.., _x] = a; + | -- value partially moved here +LL | let [_, _, ref _y @ ..] = a; + | ^^^^^^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:42:10 + | +LL | let [(_x, _), _, _] = a; + | -- value partially moved here +LL | let [ref _y @ .., _, _] = a; + | ^^^^^^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:48:16 + | +LL | let [.., (_x, _)] = a; + | -- value partially moved here +LL | let [_, _, ref _y @ ..] = a; + | ^^^^^^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait + +error[E0382]: borrow of moved value: `a[..]` + --> $DIR/borrowck-move-out-from-array-use.rs:54:11 + | +LL | let [_y @ .., _, _] = a; + | ------- value moved here +LL | let [(ref _x, _), _, _] = a; + | ^^^^^^ value borrowed here after move + | + = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: borrow of moved value: `a[..]` + --> $DIR/borrowck-move-out-from-array-use.rs:60:15 + | +LL | let [_, _, _y @ ..] = a; + | ------- value moved here +LL | let [.., (ref _x, _)] = a; + | ^^^^^^ value borrowed here after move + | + = note: move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: borrow of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:68:13 + | +LL | let [x @ .., _] = a; + | ------ value partially moved here +LL | let [_, ref _y @ ..] = a; + | ^^^^^^^^^^^ value borrowed here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: use of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:76:5 + | +LL | let [_, _, _x] = a; + | -- value partially moved here +LL | a[2] = Default::default(); + | ^^^^ value used here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: use of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:82:5 + | +LL | let [_, _, (_x, _)] = a; + | -- value partially moved here +LL | a[2].1 = Default::default(); + | ^^^^ value used here after partial move + | + = note: partial move occurs because `a[..].0` has type `String`, which does not implement the `Copy` trait + +error[E0382]: use of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:88:5 + | +LL | let [_, _, _x @ ..] = a; + | ------- value partially moved here +LL | a[0] = Default::default(); + | ^^^^ value used here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error[E0382]: use of partially moved value: `a` + --> $DIR/borrowck-move-out-from-array-use.rs:94:5 + | +LL | let [_, _, _x @ ..] = a; + | ------- value partially moved here +LL | a[0].1 = Default::default(); + | ^^^^ value used here after partial move + | + = note: partial move occurs because `a[..]` has type `(String, String)`, which does not implement the `Copy` trait + +error: aborting due to 14 previous errors + +For more information about this error, try `rustc --explain E0382`. -- cgit v1.2.3