[INFO] updating cached repository Ikatyan/Soukoban-cli [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/Ikatyan/Soukoban-cli [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/Ikatyan/Soukoban-cli" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Ikatyan/Soukoban-cli"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Ikatyan/Soukoban-cli'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/Ikatyan/Soukoban-cli" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Ikatyan/Soukoban-cli"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Ikatyan/Soukoban-cli'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 4698410f207386b6a091a1f6beacee12636315ee [INFO] sha for GitHub repo Ikatyan/Soukoban-cli: 4698410f207386b6a091a1f6beacee12636315ee [INFO] validating manifest of Ikatyan/Soukoban-cli on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of Ikatyan/Soukoban-cli on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing Ikatyan/Soukoban-cli [INFO] finished frobbing Ikatyan/Soukoban-cli [INFO] frobbed toml for Ikatyan/Soukoban-cli written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/Ikatyan/Soukoban-cli/Cargo.toml [INFO] started frobbing Ikatyan/Soukoban-cli [INFO] finished frobbing Ikatyan/Soukoban-cli [INFO] frobbed toml for Ikatyan/Soukoban-cli written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Ikatyan/Soukoban-cli/Cargo.toml [INFO] crate Ikatyan/Soukoban-cli already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking Ikatyan/Soukoban-cli against try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-1/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/Ikatyan/Soukoban-cli:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/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" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 8b075e213eb8310cdfa352173409e2f065a1562a03ca4862ef65411fbc8a4a95 [INFO] running `"docker" "start" "-a" "8b075e213eb8310cdfa352173409e2f065a1562a03ca4862ef65411fbc8a4a95"` [INFO] [stderr] Checking SokoBan v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cell::RefCell` [INFO] [stderr] --> src/main.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use std::cell::RefCell; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `input` [INFO] [stderr] --> src/main.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | let mut input = get_input(&mut player_p); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_input` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | let mut stdin = std::io::stdin(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | "w" => { return player.move_to(1, 2); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:20:25 [INFO] [stderr] | [INFO] [stderr] 20 | "a" => { return player.move_to(1, 3); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:21:25 [INFO] [stderr] | [INFO] [stderr] 21 | "s" => { return player.move_to(1, 4); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:22:25 [INFO] [stderr] | [INFO] [stderr] 22 | "d" => { return player.move_to(1, 5); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | let mut stage = Rc::new(Stage::new(8, 8, [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let mut player = Player::new(1, 1, stage.clone()); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let mut input = get_input(&mut player_p); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | stage.add_player(player_p.clone()); [INFO] [stderr] | ^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movable.rs:30:18 [INFO] [stderr] | [INFO] [stderr] 30 | Some(mut c) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/movable.rs:31:21 [INFO] [stderr] | [INFO] [stderr] 31 | if !c.move_to(vec_x, vec_y) { [INFO] [stderr] | ^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `input` [INFO] [stderr] --> src/main.rs:45:17 [INFO] [stderr] | [INFO] [stderr] 45 | let mut input = get_input(&mut player_p); [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_input` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/stage.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | return Ok(self.stage_objects[index as usize]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `stage::StageObject`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | let mut stdin = std::io::stdin(); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:19:25 [INFO] [stderr] | [INFO] [stderr] 19 | "w" => { return player.move_to(1, 2); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:20:25 [INFO] [stderr] | [INFO] [stderr] 20 | "a" => { return player.move_to(1, 3); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:21:25 [INFO] [stderr] | [INFO] [stderr] 21 | "s" => { return player.move_to(1, 4); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:22:25 [INFO] [stderr] | [INFO] [stderr] 22 | "d" => { return player.move_to(1, 5); } [INFO] [stderr] | ^^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error: aborting due to 7 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0507, E0596. [INFO] [stderr] For more information about an error, try `rustc --explain E0507`. [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | let mut stage = Rc::new(Stage::new(8, 8, [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let mut player = Player::new(1, 1, stage.clone()); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let mut input = get_input(&mut player_p); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/main.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | stage.add_player(player_p.clone()); [INFO] [stderr] | ^^^^^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/movable.rs:30:18 [INFO] [stderr] | [INFO] [stderr] 30 | Some(mut c) => { [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error[E0596]: cannot borrow data in an `Rc` as mutable [INFO] [stderr] --> src/movable.rs:31:21 [INFO] [stderr] | [INFO] [stderr] 31 | if !c.move_to(vec_x, vec_y) { [INFO] [stderr] | ^ cannot borrow as mutable [INFO] [stderr] | [INFO] [stderr] = help: trait `DerefMut` is required to modify through a dereference, but it is not implemented for `std::rc::Rc` [INFO] [stderr] [INFO] [stderr] error: Could not compile `SokoBan`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0507]: cannot move out of index of `std::vec::Vec` [INFO] [stderr] --> src/stage.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | return Ok(self.stage_objects[index as usize]); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `stage::StageObject`, which does not implement the `Copy` trait [INFO] [stderr] [INFO] [stderr] error: aborting due to 7 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0507, E0596. [INFO] [stderr] For more information about an error, try `rustc --explain E0507`. [INFO] [stderr] error: Could not compile `SokoBan`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "8b075e213eb8310cdfa352173409e2f065a1562a03ca4862ef65411fbc8a4a95"` [INFO] running `"docker" "rm" "-f" "8b075e213eb8310cdfa352173409e2f065a1562a03ca4862ef65411fbc8a4a95"` [INFO] [stdout] 8b075e213eb8310cdfa352173409e2f065a1562a03ca4862ef65411fbc8a4a95