summaryrefslogtreecommitdiffstats
path: root/src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs')
-rw-r--r--src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs85
1 files changed, 0 insertions, 85 deletions
diff --git a/src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs b/src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs
deleted file mode 100644
index f97e60daf..000000000
--- a/src/test/ui/closures/2229_closure_analysis/diagnostics/arrays.rs
+++ /dev/null
@@ -1,85 +0,0 @@
-// edition:2021
-
-// Test that arrays are completely captured by closures by relying on the borrow check diagnostics
-
-fn arrays_1() {
- let mut arr = [1, 2, 3, 4, 5];
-
- let mut c = || {
- arr[0] += 10;
- };
-
- // c will capture `arr` completely, therefore another index into the
- // array can't be modified here
- arr[1] += 10;
- //~^ ERROR: cannot use `arr` because it was mutably borrowed
- //~| ERROR: cannot use `arr[_]` because it was mutably borrowed
- c();
-}
-
-fn arrays_2() {
- let mut arr = [1, 2, 3, 4, 5];
-
- let c = || {
- println!("{:#?}", &arr[3..4]);
- };
-
- // c will capture `arr` completely, therefore another index into the
- // array can't be modified here
- arr[1] += 10;
- //~^ ERROR: cannot assign to `arr[_]` because it is borrowed
- c();
-}
-
-fn arrays_3() {
- let mut arr = [1, 2, 3, 4, 5];
-
- let c = || {
- println!("{}", arr[3]);
- };
-
- // c will capture `arr` completely, therefore another index into the
- // array can't be modified here
- arr[1] += 10;
- //~^ ERROR: cannot assign to `arr[_]` because it is borrowed
- c();
-}
-
-fn arrays_4() {
- let mut arr = [1, 2, 3, 4, 5];
-
- let mut c = || {
- arr[1] += 10;
- };
-
- // c will capture `arr` completely, therefore we cannot borrow another index
- // into the array.
- println!("{}", arr[3]);
- //~^ ERROR: cannot use `arr` because it was mutably borrowed
- //~| ERROR: cannot borrow `arr[_]` as immutable because it is also borrowed as mutable
-
- c();
-}
-
-fn arrays_5() {
- let mut arr = [1, 2, 3, 4, 5];
-
- let mut c = || {
- arr[1] += 10;
- };
-
- // c will capture `arr` completely, therefore we cannot borrow other indices
- // into the array.
- println!("{:#?}", &arr[3..2]);
- //~^ ERROR: cannot borrow `arr` as immutable because it is also borrowed as mutable
-
- c();
-}
-
-fn main() {
- arrays_1();
- arrays_2();
- arrays_3();
- arrays_4();
- arrays_5();
-}