From dde4e5885e9e49f28d4902eab3024c30b27b4366 Mon Sep 17 00:00:00 2001 From: Eric Platon Date: Mon, 2 Mar 2015 15:15:24 +0900 Subject: [PATCH] Made failing/working examples look alike. The failing concurrency example was doing something different from the working example. This commit changes just enough of the failing example to (1) still fail with the same error, (2) tries to do the same as the working example (increment a vector value and print it). r? @steveklabnik --- src/doc/intro.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/doc/intro.md b/src/doc/intro.md index 07a90959deb..ac5bf1bd35f 100644 --- a/src/doc/intro.md +++ b/src/doc/intro.md @@ -428,7 +428,8 @@ fn main() { let guards: Vec<_> = (0..3).map(|i| { Thread::scoped(move || { - for j in 0..3 { numbers[j] += 1 } + numbers[i] += 1; + println!("numbers[{}] is {}", i, numbers[i]); }); }).collect(); } @@ -437,10 +438,12 @@ fn main() { It gives us this error: ```text -7:29: 9:10 error: cannot move out of captured outer variable in an `FnMut` closure -7 Thread::scoped(move || { -8 for j in 0..3 { numbers[j] += 1 } -9 }); +7:25: 10:6 error: cannot move out of captured outer variable in an `FnMut` closure +7 Thread::scoped(move || { +8 numbers[i] += 1; +9 println!("numbers[{}] is {}", i, numbers[i]); +10 }); +error: aborting due to previous error ``` It mentions that "captured outer variable in an `FnMut` closure".