[INFO] cloning repository https://github.com/AleksandrCherepanov/rust-digger-game [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AleksandrCherepanov/rust-digger-game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAleksandrCherepanov%2Frust-digger-game", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAleksandrCherepanov%2Frust-digger-game'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b7577334e5f426399b376d617661b9042fb48f51 [INFO] building AleksandrCherepanov/rust-digger-game 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%2FAleksandrCherepanov%2Frust-digger-game" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/AleksandrCherepanov/rust-digger-game 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/AleksandrCherepanov/rust-digger-game [INFO] finished tweaking git repo https://github.com/AleksandrCherepanov/rust-digger-game [INFO] tweaked toml for git repo https://github.com/AleksandrCherepanov/rust-digger-game written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/AleksandrCherepanov/rust-digger-game 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] [stderr] Downloading crates ... [INFO] [stderr] Downloaded cc v1.1.19 [INFO] [stderr] Downloaded sdl2 v0.37.0 [INFO] [stderr] Downloaded libz-sys v1.1.20 [INFO] [stderr] Downloaded sdl2-sys v0.37.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 826aac6fb082051db28d9bd2bd807770d15029a03e4b17702915cf70019366a6 [INFO] running `Command { std: "docker" "start" "-a" "826aac6fb082051db28d9bd2bd807770d15029a03e4b17702915cf70019366a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "826aac6fb082051db28d9bd2bd807770d15029a03e4b17702915cf70019366a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "826aac6fb082051db28d9bd2bd807770d15029a03e4b17702915cf70019366a6", kill_on_drop: false }` [INFO] [stdout] 826aac6fb082051db28d9bd2bd807770d15029a03e4b17702915cf70019366a6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 4d3a99b76332c78e2bf07a7718a988cb930c2561a8e0b5dac7473bcf76fa29ea [INFO] running `Command { std: "docker" "start" "-a" "4d3a99b76332c78e2bf07a7718a988cb930c2561a8e0b5dac7473bcf76fa29ea", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.158 [INFO] [stderr] Compiling version-compare v0.1.1 [INFO] [stderr] Compiling sdl2 v0.37.0 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling cc v1.1.19 [INFO] [stderr] Compiling sdl2-sys v0.37.0 [INFO] [stderr] Compiling libz-sys v1.1.20 [INFO] [stderr] Compiling flate2 v1.0.33 [INFO] [stderr] Compiling rust-digger-game v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: constant `MAX_SCORES` is never used [INFO] [stdout] --> src/scores.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_SCORES: usize = 999999; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `next_bonus` and `penalty` are never read [INFO] [stdout] --> src/scores.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Scores { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | pub next_bonus: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 22 | pub penalty: usize, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Scores` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_scores`, `is_new_life`, `increase_bonus_score`, and `clean_penalty` are never used [INFO] [stdout] --> src/scores.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Scores { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn add_scores(&mut self, scores: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn is_new_life(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn increase_bonus_score(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn clean_penalty(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `players` and `escape` are never read [INFO] [stdout] --> src/settings.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Settings { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 4 | players: usize, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | escape: bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_gauntlet_mode`, `is_escape`, `set_escape`, `set_players`, and `get_players` are never used [INFO] [stdout] --> src/settings.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Settings { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn set_gauntlet_mode(&mut self, mode: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn is_escape(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn set_escape(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn set_players(&mut self, n: usize) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn get_players(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/sound.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sound { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 5 | volume: usize, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 6 | fall_flag: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 7 | fall_f: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | fall_value: i16, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | fall_n: i16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 10 | wobble_flag: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | wobble_n: i16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | fire_flag: [bool; 2], [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 13 | explode_flag: [bool; 2], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 14 | fire_n: [u16; 2], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 15 | music_playing: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 16 | music_p: i16, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | bonus_flag: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | bonus_n: i16, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 19 | break_flag: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 20 | em_flag: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 21 | emerald_flag: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 22 | gold_flag: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 23 | eat_flag: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | die_flag: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 25 | up_flag: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/sound.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl Sound { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 29 | pub fn init(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn stop(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn fall_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn wobble_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn fire_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn explode_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn music_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | fn bonus_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn break_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | fn em_off(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn emerald_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn gold_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn eat_off(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn die_off(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn up_off(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_BONUS` is never used [INFO] [stdout] --> src/globals.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const FIRST_BONUS: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_BONUS` is never used [INFO] [stdout] --> src/globals.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const LAST_BONUS: usize = FIRST_BONUS + BONUSES; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_BAG` is never used [INFO] [stdout] --> src/globals.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const FIRST_BAG: usize = LAST_BONUS; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_BAG` is never used [INFO] [stdout] --> src/globals.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const LAST_BAG: usize = FIRST_BAG + BAGS; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_MONSTER` is never used [INFO] [stdout] --> src/globals.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const FIRST_MONSTER: usize = LAST_BAG; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_MONSTER` is never used [INFO] [stdout] --> src/globals.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const LAST_MONSTER: usize = FIRST_MONSTER + MONSTERS; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_FIRE_BALL` is never used [INFO] [stdout] --> src/globals.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const FIRST_FIRE_BALL: usize = LAST_MONSTER; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_FIRE_BALL` is never used [INFO] [stdout] --> src/globals.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const LAST_FIRE_BALL: usize = FIRST_FIRE_BALL + FIREBALLS; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_DIGGER` is never used [INFO] [stdout] --> src/globals.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const FIRST_DIGGER: usize = LAST_FIRE_BALL; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_DIGGER` is never used [INFO] [stdout] --> src/globals.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const LAST_DIGGER: usize = FIRST_DIGGER + DIGGERS; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/sprite.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sprite1 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 5 | nch: [i16; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | ch: [i16; SPRITES+1], [INFO] [stdout] | ^^ [INFO] [stdout] 7 | mov: [String; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] 8 | nwid: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | wid: [i16; SPRITES+1], [INFO] [stdout] | ^^^ [INFO] [stdout] 10 | nhei: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 11 | hei: [i16; SPRITES+1], [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | nbwid: [i16; SPRITES], [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | bwid: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 14 | nbhei: [i16; SPRITES], [INFO] [stdout] | ^^^^^ [INFO] [stdout] 15 | bhei: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 16 | enf: [bool; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sprite1` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create` is never used [INFO] [stdout] --> src/sprite.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Sprite1 { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 26 | pub fn create(&mut self, n: usize, ch: i16, mov: &str, wid: i16, hei: i16, bwid: i16, bhei: i16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE_INTENSE` is never used [INFO] [stdout] --> src/resources/palette.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const PALETTE_INTENSE: [Color; 16] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE2` is never used [INFO] [stdout] --> src/resources/palette.rs:41:7 [INFO] [stdout] | [INFO] [stdout] 41 | const PALETTE2: [Color; 16] = [ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `J` is never used [INFO] [stdout] --> src/resources/font.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const J: [i8; SIZE] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, ... [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_ground` is never used [INFO] [stdout] --> src/resources/level.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn is_ground(char: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `settings` is never read [INFO] [stdout] --> src/game.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Game<'a> { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 12 | sdl: &'a Sdl, [INFO] [stdout] 13 | settings: &'a Settings, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/entity/bag.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Bag { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 4 | pub h: i32, [INFO] [stdout] | ^ [INFO] [stdout] 5 | pub v: i32, [INFO] [stdout] | ^ [INFO] [stdout] 6 | pub xr: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 7 | pub yr: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 8 | pub dir: i32, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | pub wt: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 10 | pub gt: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 11 | pub fallh: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 12 | pub wobbling: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 13 | pub unfallen: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | pub exist: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/entity/digger.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Digger { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | pub fx: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 19 | pub fy: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 20 | pub fdir: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub deathbag: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | pub deathani: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 25 | pub deathtime: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub levdone: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_lives` is never used [INFO] [stdout] --> src/entity/digger.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl Digger { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 40 | pub fn add_lives(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/resources/palette.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | if i < 0 && i > PALETTE.len() - 1 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.96s [INFO] running `Command { std: "docker" "inspect" "4d3a99b76332c78e2bf07a7718a988cb930c2561a8e0b5dac7473bcf76fa29ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4d3a99b76332c78e2bf07a7718a988cb930c2561a8e0b5dac7473bcf76fa29ea", kill_on_drop: false }` [INFO] [stdout] 4d3a99b76332c78e2bf07a7718a988cb930c2561a8e0b5dac7473bcf76fa29ea [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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] 9eab79c68544ad35e83a1d12589d91e8b302d77e99a25cdd0d372131668131b7 [INFO] running `Command { std: "docker" "start" "-a" "9eab79c68544ad35e83a1d12589d91e8b302d77e99a25cdd0d372131668131b7", kill_on_drop: false }` [INFO] [stderr] Compiling rust-digger-game v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: constant `MAX_SCORES` is never used [INFO] [stdout] --> src/scores.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_SCORES: usize = 999999; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `next_bonus` and `penalty` are never read [INFO] [stdout] --> src/scores.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Scores { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 21 | pub next_bonus: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 22 | pub penalty: usize, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Scores` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add_scores`, `is_new_life`, `increase_bonus_score`, and `clean_penalty` are never used [INFO] [stdout] --> src/scores.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Scores { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn add_scores(&mut self, scores: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn is_new_life(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn increase_bonus_score(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | pub fn clean_penalty(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `players` and `escape` are never read [INFO] [stdout] --> src/settings.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Settings { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 4 | players: usize, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 5 | escape: bool [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_gauntlet_mode`, `is_escape`, `set_escape`, `set_players`, and `get_players` are never used [INFO] [stdout] --> src/settings.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl Settings { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn set_gauntlet_mode(&mut self, mode: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn is_escape(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn set_escape(&mut self, flag: bool) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | pub fn set_players(&mut self, n: usize) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn get_players(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/sound.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sound { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 5 | volume: usize, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 6 | fall_flag: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 7 | fall_f: bool, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | fall_value: i16, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | fall_n: i16, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 10 | wobble_flag: bool, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 11 | wobble_n: i16, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | fire_flag: [bool; 2], [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 13 | explode_flag: [bool; 2], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 14 | fire_n: [u16; 2], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 15 | music_playing: bool, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 16 | music_p: i16, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | bonus_flag: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | bonus_n: i16, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 19 | break_flag: bool, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 20 | em_flag: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 21 | emerald_flag: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 22 | gold_flag: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 23 | eat_flag: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | die_flag: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 25 | up_flag: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/sound.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl Sound { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 29 | pub fn init(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn stop(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn fall_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn wobble_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | fn fire_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | fn explode_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn music_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | fn bonus_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | fn break_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | fn em_off(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | fn emerald_off(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | fn gold_off(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 96 | fn eat_off(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | fn die_off(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn up_off(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_BONUS` is never used [INFO] [stdout] --> src/globals.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const FIRST_BONUS: usize = 0; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_BONUS` is never used [INFO] [stdout] --> src/globals.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const LAST_BONUS: usize = FIRST_BONUS + BONUSES; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_BAG` is never used [INFO] [stdout] --> src/globals.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const FIRST_BAG: usize = LAST_BONUS; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_BAG` is never used [INFO] [stdout] --> src/globals.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const LAST_BAG: usize = FIRST_BAG + BAGS; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_MONSTER` is never used [INFO] [stdout] --> src/globals.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const FIRST_MONSTER: usize = LAST_BAG; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_MONSTER` is never used [INFO] [stdout] --> src/globals.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const LAST_MONSTER: usize = FIRST_MONSTER + MONSTERS; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_FIRE_BALL` is never used [INFO] [stdout] --> src/globals.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const FIRST_FIRE_BALL: usize = LAST_MONSTER; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_FIRE_BALL` is never used [INFO] [stdout] --> src/globals.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const LAST_FIRE_BALL: usize = FIRST_FIRE_BALL + FIREBALLS; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FIRST_DIGGER` is never used [INFO] [stdout] --> src/globals.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const FIRST_DIGGER: usize = LAST_FIRE_BALL; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LAST_DIGGER` is never used [INFO] [stdout] --> src/globals.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const LAST_DIGGER: usize = FIRST_DIGGER + DIGGERS; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/sprite.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Sprite1 { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 5 | nch: [i16; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] 6 | ch: [i16; SPRITES+1], [INFO] [stdout] | ^^ [INFO] [stdout] 7 | mov: [String; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] 8 | nwid: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | wid: [i16; SPRITES+1], [INFO] [stdout] | ^^^ [INFO] [stdout] 10 | nhei: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 11 | hei: [i16; SPRITES+1], [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | nbwid: [i16; SPRITES], [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | bwid: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 14 | nbhei: [i16; SPRITES], [INFO] [stdout] | ^^^^^ [INFO] [stdout] 15 | bhei: [i16; SPRITES], [INFO] [stdout] | ^^^^ [INFO] [stdout] 16 | enf: [bool; SPRITES], [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sprite1` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `create` is never used [INFO] [stdout] --> src/sprite.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl Sprite1 { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 26 | pub fn create(&mut self, n: usize, ch: i16, mov: &str, wid: i16, hei: i16, bwid: i16, bhei: i16) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE_INTENSE` is never used [INFO] [stdout] --> src/resources/palette.rs:22:7 [INFO] [stdout] | [INFO] [stdout] 22 | const PALETTE_INTENSE: [Color; 16] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE2` is never used [INFO] [stdout] --> src/resources/palette.rs:41:7 [INFO] [stdout] | [INFO] [stdout] 41 | const PALETTE2: [Color; 16] = [ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `J` is never used [INFO] [stdout] --> src/resources/font.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const J: [i8; SIZE] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, ... [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_ground` is never used [INFO] [stdout] --> src/resources/level.rs:131:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn is_ground(char: u8) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `settings` is never read [INFO] [stdout] --> src/game.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Game<'a> { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 12 | sdl: &'a Sdl, [INFO] [stdout] 13 | settings: &'a Settings, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/entity/bag.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Bag { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 4 | pub h: i32, [INFO] [stdout] | ^ [INFO] [stdout] 5 | pub v: i32, [INFO] [stdout] | ^ [INFO] [stdout] 6 | pub xr: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 7 | pub yr: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 8 | pub dir: i32, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | pub wt: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 10 | pub gt: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 11 | pub fallh: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 12 | pub wobbling: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 13 | pub unfallen: bool, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 14 | pub exist: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/entity/digger.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Digger { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] ... [INFO] [stdout] 18 | pub fx: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 19 | pub fy: i32, [INFO] [stdout] | ^^ [INFO] [stdout] 20 | pub fdir: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub deathbag: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 24 | pub deathani: i32, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 25 | pub deathtime: i32, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub levdone: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `add_lives` is never used [INFO] [stdout] --> src/entity/digger.rs:40:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl Digger { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 40 | pub fn add_lives(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/resources/palette.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | if i < 0 && i > PALETTE.len() - 1 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s [INFO] running `Command { std: "docker" "inspect" "9eab79c68544ad35e83a1d12589d91e8b302d77e99a25cdd0d372131668131b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9eab79c68544ad35e83a1d12589d91e8b302d77e99a25cdd0d372131668131b7", kill_on_drop: false }` [INFO] [stdout] 9eab79c68544ad35e83a1d12589d91e8b302d77e99a25cdd0d372131668131b7