[INFO] cloning repository https://github.com/Hermitao/rust-roguelike [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Hermitao/rust-roguelike" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHermitao%2Frust-roguelike", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHermitao%2Frust-roguelike'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0561b683c93a33d3201bfe85f287f3c3dd916fe5 [INFO] building Hermitao/rust-roguelike against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHermitao%2Frust-roguelike" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Hermitao/rust-roguelike on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Hermitao/rust-roguelike [INFO] finished tweaking git repo https://github.com/Hermitao/rust-roguelike [INFO] tweaked toml for git repo https://github.com/Hermitao/rust-roguelike written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/Hermitao/rust-roguelike already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0547e498b4ceda149baa6c4365cb64d508a81cbae9b2d87cf59b659c5e1e1924 [INFO] running `Command { std: "docker" "start" "-a" "0547e498b4ceda149baa6c4365cb64d508a81cbae9b2d87cf59b659c5e1e1924", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0547e498b4ceda149baa6c4365cb64d508a81cbae9b2d87cf59b659c5e1e1924", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0547e498b4ceda149baa6c4365cb64d508a81cbae9b2d87cf59b659c5e1e1924", kill_on_drop: false }` [INFO] [stdout] 0547e498b4ceda149baa6c4365cb64d508a81cbae9b2d87cf59b659c5e1e1924 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d7e9a8b195c77755fa34f925251f6c22f66b5a740435569c2460bff7d909519f [INFO] running `Command { std: "docker" "start" "-a" "d7e9a8b195c77755fa34f925251f6c22f66b5a740435569c2460bff7d909519f", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Compiling lock_api v0.4.10 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Compiling parking_lot_core v0.9.8 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Compiling smallvec v1.11.0 [INFO] [stderr] Compiling bitflags v2.4.0 [INFO] [stderr] Compiling signal-hook-registry v1.4.1 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling parking_lot v0.12.1 [INFO] [stderr] Compiling signal-hook-mio v0.2.3 [INFO] [stderr] Compiling crossterm v0.27.0 [INFO] [stderr] Compiling rust-roguelike v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:130:16 [INFO] [stdout] | [INFO] [stdout] 130 | if (player_pos.y as u16 > ground_pos - 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 130 - if (player_pos.y as u16 > ground_pos - 1) [INFO] [stdout] 130 + if player_pos.y as u16 > ground_pos - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:136:16 [INFO] [stdout] | [INFO] [stdout] 136 | if (player_pos.x as u16 > wall_right_pos - 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 136 - if (player_pos.x as u16 > wall_right_pos - 1) [INFO] [stdout] 136 + if player_pos.x as u16 > wall_right_pos - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:142:16 [INFO] [stdout] | [INFO] [stdout] 142 | if ((player_pos.x as u16) < (wall_left_pos + 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 142 - if ((player_pos.x as u16) < (wall_left_pos + 1)) [INFO] [stdout] 142 + if (player_pos.x as u16) < (wall_left_pos + 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 34 | / loop { [INFO] [stdout] 35 | | // `read()` blocks until an `Event` is available [INFO] [stdout] 36 | | match event::read()? { [INFO] [stdout] 37 | | event::Event::FocusGained => println!("FocusGained"), [INFO] [stdout] ... | [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 46 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:167:5 [INFO] [stdout] | [INFO] [stdout] 112 | / loop { [INFO] [stdout] 113 | | let current_time = Instant::now(); [INFO] [stdout] 114 | | [INFO] [stdout] 115 | | let delta_time = current_time.duration_since(last_frame_time); [INFO] [stdout] ... | [INFO] [stdout] 164 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 167 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Player` is never constructed [INFO] [stdout] --> src/main.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | struct Player { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | print_events(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 104 | let _ = print_events(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `target_fps` should have an upper case name [INFO] [stdout] --> src/main.rs:107:11 [INFO] [stdout] | [INFO] [stdout] 107 | const target_fps: f32 = 120.0; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `TARGET_FPS` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | / queue!( [INFO] [stdout] 149 | | stdout, [INFO] [stdout] 150 | | Clear(ClearType::All), [INFO] [stdout] 151 | | cursor::MoveTo(0, 0), [INFO] [stdout] ... | [INFO] [stdout] 158 | | Print(timer), [INFO] [stdout] 159 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `queue` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:161:13 [INFO] [stdout] | [INFO] [stdout] 161 | stdout.flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 161 | let _ = stdout.flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.56s [INFO] running `Command { std: "docker" "inspect" "d7e9a8b195c77755fa34f925251f6c22f66b5a740435569c2460bff7d909519f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7e9a8b195c77755fa34f925251f6c22f66b5a740435569c2460bff7d909519f", kill_on_drop: false }` [INFO] [stdout] d7e9a8b195c77755fa34f925251f6c22f66b5a740435569c2460bff7d909519f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 40f98386dff86c3d02149d9d2df965fae44bdc9e2f7f8b07c7d73636ab4b6ead [INFO] running `Command { std: "docker" "start" "-a" "40f98386dff86c3d02149d9d2df965fae44bdc9e2f7f8b07c7d73636ab4b6ead", kill_on_drop: false }` [INFO] [stderr] Compiling rust-roguelike v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:130:16 [INFO] [stdout] | [INFO] [stdout] 130 | if (player_pos.y as u16 > ground_pos - 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 130 - if (player_pos.y as u16 > ground_pos - 1) [INFO] [stdout] 130 + if player_pos.y as u16 > ground_pos - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:136:16 [INFO] [stdout] | [INFO] [stdout] 136 | if (player_pos.x as u16 > wall_right_pos - 1) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 136 - if (player_pos.x as u16 > wall_right_pos - 1) [INFO] [stdout] 136 + if player_pos.x as u16 > wall_right_pos - 1 [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:142:16 [INFO] [stdout] | [INFO] [stdout] 142 | if ((player_pos.x as u16) < (wall_left_pos + 1)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 142 - if ((player_pos.x as u16) < (wall_left_pos + 1)) [INFO] [stdout] 142 + if (player_pos.x as u16) < (wall_left_pos + 1) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 34 | / loop { [INFO] [stdout] 35 | | // `read()` blocks until an `Event` is available [INFO] [stdout] 36 | | match event::read()? { [INFO] [stdout] 37 | | event::Event::FocusGained => println!("FocusGained"), [INFO] [stdout] ... | [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] 46 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:167:5 [INFO] [stdout] | [INFO] [stdout] 112 | / loop { [INFO] [stdout] 113 | | let current_time = Instant::now(); [INFO] [stdout] 114 | | [INFO] [stdout] 115 | | let delta_time = current_time.duration_since(last_frame_time); [INFO] [stdout] ... | [INFO] [stdout] 164 | | } [INFO] [stdout] | |_____- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 167 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Player` is never constructed [INFO] [stdout] --> src/main.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 28 | struct Player { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 104 | print_events(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 104 | let _ = print_events(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `target_fps` should have an upper case name [INFO] [stdout] --> src/main.rs:107:11 [INFO] [stdout] | [INFO] [stdout] 107 | const target_fps: f32 = 120.0; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper case: `TARGET_FPS` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | / queue!( [INFO] [stdout] 149 | | stdout, [INFO] [stdout] 150 | | Clear(ClearType::All), [INFO] [stdout] 151 | | cursor::MoveTo(0, 0), [INFO] [stdout] ... | [INFO] [stdout] 158 | | Print(timer), [INFO] [stdout] 159 | | ); [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `queue` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:161:13 [INFO] [stdout] | [INFO] [stdout] 161 | stdout.flush(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 161 | let _ = stdout.flush(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] running `Command { std: "docker" "inspect" "40f98386dff86c3d02149d9d2df965fae44bdc9e2f7f8b07c7d73636ab4b6ead", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "40f98386dff86c3d02149d9d2df965fae44bdc9e2f7f8b07c7d73636ab4b6ead", kill_on_drop: false }` [INFO] [stdout] 40f98386dff86c3d02149d9d2df965fae44bdc9e2f7f8b07c7d73636ab4b6ead