[INFO] updating cached repository https://github.com/rinp/euler_rust
[INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"`
[INFO] running `"git" "rev-parse" "HEAD"`
[INFO] [stdout] 40e3de61ca122e89cfc7cbed6ec6eb2ea343eb48
[INFO] checking rinp/euler_rust against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frinp%2Feuler_rust" "/workspace/builds/worker-11/source"`
[INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/rinp/euler_rust on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking git repo https://github.com/rinp/euler_rust
[INFO] finished tweaking git repo https://github.com/rinp/euler_rust
[INFO] tweaked toml for git repo https://github.com/rinp/euler_rust written to /workspace/builds/worker-11/source/Cargo.toml
[INFO] crate git repo https://github.com/rinp/euler_rust already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] cd378be0e330e995fdeac76b95f01658131e31cad4a17e6320855ff148c210c8
[INFO] running `"docker" "start" "-a" "cd378be0e330e995fdeac76b95f01658131e31cad4a17e6320855ff148c210c8"`
[INFO] [stderr]     Checking num-complex v0.1.36
[INFO] [stderr]     Checking num-bigint v0.1.37
[INFO] [stderr]     Checking num-rational v0.1.36
[INFO] [stderr]     Checking num v0.1.37
[INFO] [stderr]     Checking euler v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/common/iter.rs:3:28
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn prime_iter() -> Box<Iterator<Item = u64>> {
[INFO] [stderr]   |                            ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = u64>`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:44:52
[INFO] [stderr]    |
[INFO] [stderr] 44 | ...                   -> Box<Iterator<Item = Vec<E>>> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<E>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:57:54
[INFO] [stderr]    |
[INFO] [stderr] 57 | fn combination_add(length: usize, max: usize) -> Box<Iterator<Item = Vec<usize>>> {
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:60:17
[INFO] [stderr]    |
[INFO] [stderr] 60 |     let it: Box<Iterator<Item = Vec<usize>>> = Box::new(base_it);
[INFO] [stderr]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:65:32
[INFO] [stderr]    |
[INFO] [stderr] 65 |                       now: Box<Iterator<Item = Vec<usize>>>,
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:68:30
[INFO] [stderr]    |
[INFO] [stderr] 68 |                       -> Box<Iterator<Item = Vec<usize>>> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::thread;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::mpsc`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::sync::mpsc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]  --> src/prob101_200/prob101_110/p102.rs:8:54
[INFO] [stderr]   |
[INFO] [stderr] 8 |         Err(why) => panic!("couldn't open : {}  {}", Error::description(&why), why),
[INFO] [stderr]   |                                                      ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]  --> src/common/iter.rs:3:28
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn prime_iter() -> Box<Iterator<Item = u64>> {
[INFO] [stderr]   |                            ^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = u64>`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:44:52
[INFO] [stderr]    |
[INFO] [stderr] 44 | ...                   -> Box<Iterator<Item = Vec<E>>> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<E>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:57:54
[INFO] [stderr]    |
[INFO] [stderr] 57 | fn combination_add(length: usize, max: usize) -> Box<Iterator<Item = Vec<usize>>> {
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:60:17
[INFO] [stderr]    |
[INFO] [stderr] 60 |     let it: Box<Iterator<Item = Vec<usize>>> = Box::new(base_it);
[INFO] [stderr]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:65:32
[INFO] [stderr]    |
[INFO] [stderr] 65 |                       now: Box<Iterator<Item = Vec<usize>>>,
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/common/iter.rs:68:30
[INFO] [stderr]    |
[INFO] [stderr] 68 |                       -> Box<Iterator<Item = Vec<usize>>> {
[INFO] [stderr]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator<Item = Vec<usize>>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::thread`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::thread;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::mpsc`
[INFO] [stderr]  --> src/prob501_600/prob501_510/p501.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::sync::mpsc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string()
[INFO] [stderr]  --> src/prob101_200/prob101_110/p102.rs:8:54
[INFO] [stderr]   |
[INFO] [stderr] 8 |         Err(why) => panic!("couldn't open : {}  {}", Error::description(&why), why),
[INFO] [stderr]   |                                                      ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] error[E0515]: cannot return reference to temporary value
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:33:18
[INFO] [stderr]    |
[INFO] [stderr] 33 |         .map(|l| &l.unwrap().parse::<u64>().unwrap());
[INFO] [stderr]    |                  ^----------------------------------
[INFO] [stderr]    |                  ||
[INFO] [stderr]    |                  |temporary value created here
[INFO] [stderr]    |                  returns a reference to data owned by the current function
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:47:15
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:51:13
[INFO] [stderr]    |
[INFO] [stderr] 51 |             (&primes.cloned())
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:51:15
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 51 |             (&primes.cloned())
[INFO] [stderr]    |               ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:66:21
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 66 |                     primes.cloned()
[INFO] [stderr]    |                     ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:63:13
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 63 |             primes.cloned()
[INFO] [stderr]    |             ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:65:22
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 65 |                 .map(|b: u64| {
[INFO] [stderr]    |                      ^^^^^^^^ move out of `primes` occurs here
[INFO] [stderr] 66 |                     primes.cloned()
[INFO] [stderr]    |                     ------
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr]    |                     move occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:38:24
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let count_1: u64 = (&primes.cloned()).take_while(|&a| a * a * a * a * a * a * a < max)
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:43:24
[INFO] [stderr]    |
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:43:26
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 38 |     let count_1: u64 = (&primes.cloned()).take_while(|&a| a * a * a * a * a * a * a < max)
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] ...
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ^^^^^^ value used here after move
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:44:14
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] 44 |         .map(|a: u64| {
[INFO] [stderr]    |              ^^^^^^^^ value used here after move
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ------ use occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:59:24
[INFO] [stderr]    |
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:59:26
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 44 |         .map(|a: u64| {
[INFO] [stderr]    |              -------- value moved into closure here
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ------ variable moved due to use in closure
[INFO] [stderr] ...
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ^^^^^^ value used here after move
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:60:14
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] 60 |         .map(|a: u64| {
[INFO] [stderr]    |              ^^^^^^^^ value used here after move
[INFO] [stderr] ...
[INFO] [stderr] 63 |             primes.cloned()
[INFO] [stderr]    |             ------ use occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 15 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0382, E0507, E0515.
[INFO] [stderr] For more information about an error, try `rustc --explain E0382`.
[INFO] [stderr] error: could not compile `euler`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error[E0515]: cannot return reference to temporary value
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:33:18
[INFO] [stderr]    |
[INFO] [stderr] 33 |         .map(|l| &l.unwrap().parse::<u64>().unwrap());
[INFO] [stderr]    |                  ^----------------------------------
[INFO] [stderr]    |                  ||
[INFO] [stderr]    |                  |temporary value created here
[INFO] [stderr]    |                  returns a reference to data owned by the current function
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:47:15
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:51:13
[INFO] [stderr]    |
[INFO] [stderr] 51 |             (&primes.cloned())
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:51:15
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 51 |             (&primes.cloned())
[INFO] [stderr]    |               ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:66:21
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 66 |                     primes.cloned()
[INFO] [stderr]    |                     ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:63:13
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 63 |             primes.cloned()
[INFO] [stderr]    |             ^^^^^^ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of `primes`, a captured variable in an `FnMut` closure
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:65:22
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ captured outer variable
[INFO] [stderr] ...
[INFO] [stderr] 65 |                 .map(|b: u64| {
[INFO] [stderr]    |                      ^^^^^^^^ move out of `primes` occurs here
[INFO] [stderr] 66 |                     primes.cloned()
[INFO] [stderr]    |                     ------
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr]    |                     move occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:38:24
[INFO] [stderr]    |
[INFO] [stderr] 38 |     let count_1: u64 = (&primes.cloned()).take_while(|&a| a * a * a * a * a * a * a < max)
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:43:24
[INFO] [stderr]    |
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:43:26
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 38 |     let count_1: u64 = (&primes.cloned()).take_while(|&a| a * a * a * a * a * a * a < max)
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] ...
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ^^^^^^ value used here after move
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:44:14
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 43 |     let count_2: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] 44 |         .map(|a: u64| {
[INFO] [stderr]    |              ^^^^^^^^ value used here after move
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ------ use occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error[E0507]: cannot move out of a shared reference
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:59:24
[INFO] [stderr]    |
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^ move occurs because value has type `std::iter::Cloned<std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>>`, which does not implement the `Copy` trait
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:59:26
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 44 |         .map(|a: u64| {
[INFO] [stderr]    |              -------- value moved into closure here
[INFO] [stderr] ...
[INFO] [stderr] 47 |             (&primes.cloned())
[INFO] [stderr]    |               ------ variable moved due to use in closure
[INFO] [stderr] ...
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ^^^^^^ value used here after move
[INFO] [stderr] 
[INFO] [stderr] error[E0382]: use of moved value: `primes`
[INFO] [stderr]   --> src/prob501_600/prob501_510/p501.rs:60:14
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let primes = BufReader::new(tmp_file.reopen().unwrap())
[INFO] [stderr]    |         ------ move occurs because `primes` has type `std::iter::Map<std::io::Lines<std::io::BufReader<std::fs::File>>, [closure@src/prob501_600/prob501_510/p501.rs:33:14: 33:53]>`, which does not implement the `Copy` trait
[INFO] [stderr] ...
[INFO] [stderr] 59 |     let count_3: u64 = (&primes.cloned())
[INFO] [stderr]    |                          ------ value moved here
[INFO] [stderr] 60 |         .map(|a: u64| {
[INFO] [stderr]    |              ^^^^^^^^ value used here after move
[INFO] [stderr] ...
[INFO] [stderr] 63 |             primes.cloned()
[INFO] [stderr]    |             ------ use occurs due to use in closure
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to 15 previous errors
[INFO] [stderr] 
[INFO] [stderr] Some errors have detailed explanations: E0382, E0507, E0515.
[INFO] [stderr] For more information about an error, try `rustc --explain E0382`.
[INFO] [stderr] error: could not compile `euler`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "cd378be0e330e995fdeac76b95f01658131e31cad4a17e6320855ff148c210c8"`
[INFO] running `"docker" "rm" "-f" "cd378be0e330e995fdeac76b95f01658131e31cad4a17e6320855ff148c210c8"`
[INFO] [stdout] cd378be0e330e995fdeac76b95f01658131e31cad4a17e6320855ff148c210c8
