[INFO] updating cached repository dhoepelman/rust-pong [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/dhoepelman/rust-pong [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/dhoepelman/rust-pong" "work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/dhoepelman/rust-pong"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/dhoepelman/rust-pong'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/dhoepelman/rust-pong" "work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/dhoepelman/rust-pong"` [INFO] [stderr] Cloning into 'work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/dhoepelman/rust-pong'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] c137445cb4b13ef72b217eb3bb5075ee9e1d1ecc [INFO] sha for GitHub repo dhoepelman/rust-pong: c137445cb4b13ef72b217eb3bb5075ee9e1d1ecc [INFO] validating manifest of dhoepelman/rust-pong on toolchain master#a850a426491e14186af2250549bf41256b5938d2 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of dhoepelman/rust-pong on toolchain try#06a150c7d11500b41499224f165e9de1de096768 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing dhoepelman/rust-pong [INFO] finished frobbing dhoepelman/rust-pong [INFO] frobbed toml for dhoepelman/rust-pong written to work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/dhoepelman/rust-pong/Cargo.toml [INFO] started frobbing dhoepelman/rust-pong [INFO] finished frobbing dhoepelman/rust-pong [INFO] frobbed toml for dhoepelman/rust-pong written to work/ex/pr-60162/sources/try#06a150c7d11500b41499224f165e9de1de096768/gh/dhoepelman/rust-pong/Cargo.toml [INFO] crate dhoepelman/rust-pong already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+06a150c7d11500b41499224f165e9de1de096768-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking dhoepelman/rust-pong against master#a850a426491e14186af2250549bf41256b5938d2 for pr-60162 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60162/worker-6/master#a850a426491e14186af2250549bf41256b5938d2:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60162/sources/master#a850a426491e14186af2250549bf41256b5938d2/gh/dhoepelman/rust-pong:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+a850a426491e14186af2250549bf41256b5938d2-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] be28816b812cbca1ac4ad7b7e0bf9dfe698384caca5071a63d492c1f4aae6ef1 [INFO] running `"docker" "start" "-a" "be28816b812cbca1ac4ad7b7e0bf9dfe698384caca5071a63d492c1f4aae6ef1"` [INFO] [stderr] Compiling gmp-mpfr-sys v1.1.10 [INFO] [stderr] Compiling rug v0.6.0 [INFO] [stderr] Checking pong v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::Rng` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use rand::Rng; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ordering` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::Ordering; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Assign` [INFO] [stderr] --> src/main.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | use rug::{Assign, Integer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:57:22 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 57 | m => fib(m-2, cache).clone() + fib(m - 1, cache).clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:57:48 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 57 | m => fib(m-2, cache).clone() + fib(m - 1, cache).clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 59 | cache.push(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0515]: cannot return reference to temporary value [INFO] [stderr] --> src/main.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | return &cache[n].clone(); [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: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0502, E0515. [INFO] [stderr] For more information about an error, try `rustc --explain E0502`. [INFO] [stderr] error: Could not compile `pong`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::Rng` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use rand::Rng; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ordering` [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::cmp::Ordering; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Assign` [INFO] [stderr] --> src/main.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | use rug::{Assign, Integer}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:57:22 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 57 | m => fib(m-2, cache).clone() + fib(m - 1, cache).clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:57:48 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 57 | m => fib(m-2, cache).clone() + fib(m - 1, cache).clone() [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0502]: cannot borrow `*cache` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/main.rs:59:13 [INFO] [stderr] | [INFO] [stderr] 50 | fn fib(n: usize, cache: &mut Vec) -> &Integer { [INFO] [stderr] | - let's call the lifetime of this reference `'1` [INFO] [stderr] 51 | match cache.get(n) { [INFO] [stderr] | ----- immutable borrow occurs here [INFO] [stderr] 52 | Some(n) => n, [INFO] [stderr] | - returning this value requires that `*cache` is borrowed for `'1` [INFO] [stderr] ... [INFO] [stderr] 59 | cache.push(res); [INFO] [stderr] | ^^^^^^^^^^^^^^^ mutable borrow occurs here [INFO] [stderr] [INFO] [stderr] error[E0515]: cannot return reference to temporary value [INFO] [stderr] --> src/main.rs:60:20 [INFO] [stderr] | [INFO] [stderr] 60 | return &cache[n].clone(); [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: aborting due to 4 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0502, E0515. [INFO] [stderr] For more information about an error, try `rustc --explain E0502`. [INFO] [stderr] error: Could not compile `pong`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "be28816b812cbca1ac4ad7b7e0bf9dfe698384caca5071a63d492c1f4aae6ef1"` [INFO] running `"docker" "rm" "-f" "be28816b812cbca1ac4ad7b7e0bf9dfe698384caca5071a63d492c1f4aae6ef1"` [INFO] [stdout] be28816b812cbca1ac4ad7b7e0bf9dfe698384caca5071a63d492c1f4aae6ef1