[INFO] cloning repository https://github.com/tduffy000/lasker
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tduffy000/lasker" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftduffy000%2Flasker", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftduffy000%2Flasker'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ff82e2b6d9293071c1cfe8cf30f46e3eeafeed48
[INFO] checking tduffy000/lasker against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftduffy000%2Flasker" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/tduffy000/lasker
[INFO] finished tweaking git repo https://github.com/tduffy000/lasker
[INFO] tweaked toml for git repo https://github.com/tduffy000/lasker written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/tduffy000/lasker on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/tduffy000/lasker 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" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pest_derive v2.6.0
[INFO] [stderr]   Downloaded pest_generator v2.6.0
[INFO] [stderr]   Downloaded pest_meta v2.6.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.86
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.86
[INFO] [stderr]   Downloaded vampirc-uci v0.11.1
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.86
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.86
[INFO] [stderr]   Downloaded proc-macro2 v1.0.59
[INFO] [stderr]   Downloaded pest v2.6.0
[INFO] [stderr]   Downloaded js-sys v0.3.63
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.86
[INFO] [stderr]   Downloaded syn v2.0.18
[INFO] [stderr]   Downloaded libc v0.2.144
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5f06a9257d35c072cfd4d315e3755d30b697f6c086db8e6c258d59faf33f265e
[INFO] running `Command { std: "docker" "start" "-a" "5f06a9257d35c072cfd4d315e3755d30b697f6c086db8e6c258d59faf33f265e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5f06a9257d35c072cfd4d315e3755d30b697f6c086db8e6c258d59faf33f265e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f06a9257d35c072cfd4d315e3755d30b697f6c086db8e6c258d59faf33f265e", kill_on_drop: false }`
[INFO] [stdout] 5f06a9257d35c072cfd4d315e3755d30b697f6c086db8e6c258d59faf33f265e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 96d43110808f6b82c83898fe730c35d50bd85e9d143b65e5532dc7aea7ff1203
[INFO] running `Command { std: "docker" "start" "-a" "96d43110808f6b82c83898fe730c35d50bd85e9d143b65e5532dc7aea7ff1203", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.59
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling quote v1.0.28
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling libc v0.2.144
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling once_cell v1.17.1
[INFO] [stderr]     Checking iana-time-zone v0.1.56
[INFO] [stderr]     Checking getrandom v0.2.3
[INFO] [stderr]     Checking time v0.1.43
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]    Compiling syn v2.0.18
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.4
[INFO] [stderr]     Checking chrono v0.4.24
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling pest v2.6.0
[INFO] [stderr]    Compiling pest_meta v2.6.0
[INFO] [stderr]    Compiling pest_generator v2.6.0
[INFO] [stderr]    Compiling pest_derive v2.6.0
[INFO] [stderr]     Checking vampirc-uci v0.11.1
[INFO] [stderr]     Checking lasker v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                      ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:308:50
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:315:13
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:314:36
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                    ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:314:48
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:320:37
[INFO] [stdout]     |
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:320:49
[INFO] [stdout]     |
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/uci/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn handle_position(mut buf: String) -> GameState {
[INFO] [stdout]   |                    ----^^^
[INFO] [stdout]   |                    |
[INFO] [stdout]   |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_board` is never used
[INFO] [stdout]   --> src/play/mod.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl GameState {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 41 |     pub fn print_board(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `attackers_bitboard`, `pinners_bitboard`, and `blockers_bitboard` are never used
[INFO] [stdout]    --> src/play/board/mod.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout]  29 | impl Board {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A1_H8_DIAGONAL` is never used
[INFO] [stdout]  --> src/play/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const A1_H8_DIAGONAL: u64 = 0x8040201008040201;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `H1_A1_DIAGONAL` is never used
[INFO] [stdout]  --> src/play/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const H1_A1_DIAGONAL: u64 = 0x0102040810204080;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WHITE_SQUARES` is never used
[INFO] [stdout]  --> src/play/constants.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const WHITE_SQUARES: u64 = 0x55AA55AA55AA55AA;
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLACK_SQUARES` is never used
[INFO] [stdout]   --> src/play/constants.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const BLACK_SQUARES: u64 = 0xAA55AA55AA55AA55;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLORS` is never used
[INFO] [stdout]   --> src/play/constants.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const COLORS: [Color; 2] = [Color::White, Color::Black];
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECE_VALUES` is never used
[INFO] [stdout]   --> src/play/constants.rs:70:11
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub const PIECE_VALUES: [u32; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IS_MINOR_PIECE` is never used
[INFO] [stdout]   --> src/play/constants.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub const IS_MINOR_PIECE: [bool; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IS_MAJOR_PIECE` is never used
[INFO] [stdout]   --> src/play/constants.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const IS_MAJOR_PIECE: [bool; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `msg` is never read
[INFO] [stdout]   --> src/play/error.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct FENParsingError {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 56 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FENParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PositionKeyGenerator` is never constructed
[INFO] [stdout]  --> src/play/key.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct PositionKeyGenerator {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `key`, and `hash_board` are never used
[INFO] [stdout]   --> src/play/key.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl PositionKeyGenerator {
[INFO] [stdout]    | ------------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn key(&self) -> u64 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn hash_board(&self, state: &GameState) -> u64 {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MoveType` is never used
[INFO] [stdout]    --> src/play/move/mod.rs:176:10
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum MoveType {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `move_type` and `is_placeholder` are never used
[INFO] [stdout]    --> src/play/move/mod.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl Move {
[INFO] [stdout]     | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn move_type(&self) -> MoveType {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 309 |     pub fn is_placeholder(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `sorted`, and `count` are never used
[INFO] [stdout]    --> src/play/move/mod.rs:336:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | impl MoveList {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 336 |     pub fn new(v: Vec<Move>) -> MoveList {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 352 |     pub fn sorted(&self) -> MoveList {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn count(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_fen` is never used
[INFO] [stdout]   --> src/play/position/mod.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Position {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn from_fen(fen: impl ToString) -> Result<Position, FENParsingError> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_minor`, `is_major`, and `move_direction_idx` are never used
[INFO] [stdout]    --> src/play/types.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl Piece {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 207 |     fn is_minor(self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     fn is_major(self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn move_direction_idx(&self) -> Range<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `empty` is never used
[INFO] [stdout]    --> src/play/types.rs:608:12
[INFO] [stdout]     |
[INFO] [stdout] 566 | impl CastlingRights {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 608 |     pub fn empty() -> CastlingRights {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     uci::uci_loop();
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let _ = uci::uci_loop();
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/move/mod.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |             f.write_str("0-0-0");
[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] 197 |             let _ = f.write_str("0-0-0");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/move/mod.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             f.write_str("0-0");
[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] 199 |             let _ = f.write_str("0-0");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/types.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         f.write_char(self.into());
[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] 150 |         let _ = f.write_char(self.into());
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:309:13
[INFO] [stdout]     |
[INFO] [stdout] 309 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:308:38
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                      ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:308:50
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                  ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:315:13
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:314:36
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                    ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:314:48
[INFO] [stdout]     |
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/play/board/mod.rs:321:13
[INFO] [stdout]     |
[INFO] [stdout] 321 |         let mut bb = Bitboard::empty();
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq`
[INFO] [stdout]    --> src/play/board/mod.rs:320:37
[INFO] [stdout]     |
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_sq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `color`
[INFO] [stdout]    --> src/play/board/mod.rs:320:49
[INFO] [stdout]     |
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |                                                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_color`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> src/uci/mod.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn handle_position(mut buf: String) -> GameState {
[INFO] [stdout]   |                    ----^^^
[INFO] [stdout]   |                    |
[INFO] [stdout]   |                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print_board` is never used
[INFO] [stdout]   --> src/play/mod.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | impl GameState {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 41 |     pub fn print_board(&self) {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `attackers_bitboard`, `pinners_bitboard`, and `blockers_bitboard` are never used
[INFO] [stdout]    --> src/play/board/mod.rs:308:12
[INFO] [stdout]     |
[INFO] [stdout]  29 | impl Board {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 308 |     pub fn attackers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 314 |     pub fn pinners_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 320 |     pub fn blockers_bitboard(&self, sq: Square, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A1_H8_DIAGONAL` is never used
[INFO] [stdout]  --> src/play/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const A1_H8_DIAGONAL: u64 = 0x8040201008040201;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `H1_A1_DIAGONAL` is never used
[INFO] [stdout]  --> src/play/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const H1_A1_DIAGONAL: u64 = 0x0102040810204080;
[INFO] [stdout]   |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `WHITE_SQUARES` is never used
[INFO] [stdout]  --> src/play/constants.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | const WHITE_SQUARES: u64 = 0x55AA55AA55AA55AA;
[INFO] [stdout]   |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLACK_SQUARES` is never used
[INFO] [stdout]   --> src/play/constants.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const BLACK_SQUARES: u64 = 0xAA55AA55AA55AA55;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLORS` is never used
[INFO] [stdout]   --> src/play/constants.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const COLORS: [Color; 2] = [Color::White, Color::Black];
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECE_VALUES` is never used
[INFO] [stdout]   --> src/play/constants.rs:70:11
[INFO] [stdout]    |
[INFO] [stdout] 70 | pub const PIECE_VALUES: [u32; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IS_MINOR_PIECE` is never used
[INFO] [stdout]   --> src/play/constants.rs:74:11
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub const IS_MINOR_PIECE: [bool; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IS_MAJOR_PIECE` is never used
[INFO] [stdout]   --> src/play/constants.rs:78:11
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub const IS_MAJOR_PIECE: [bool; 12] = [
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `msg` is never read
[INFO] [stdout]   --> src/play/error.rs:56:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub struct FENParsingError {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] 56 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FENParsingError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `key` is never read
[INFO] [stdout]  --> src/play/key.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct PositionKeyGenerator {
[INFO] [stdout]   |            -------------------- field in this struct
[INFO] [stdout] 6 |     key: u64,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `key` is never used
[INFO] [stdout]   --> src/play/key.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl PositionKeyGenerator {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn key(&self) -> u64 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MoveType` is never used
[INFO] [stdout]    --> src/play/move/mod.rs:176:10
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub enum MoveType {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `move_type` is never used
[INFO] [stdout]    --> src/play/move/mod.rs:289:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl Move {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn move_type(&self) -> MoveType {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `count` is never used
[INFO] [stdout]    --> src/play/move/mod.rs:366:12
[INFO] [stdout]     |
[INFO] [stdout] 335 | impl MoveList {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 366 |     pub fn count(&self) -> u8 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_minor`, `is_major`, and `move_direction_idx` are never used
[INFO] [stdout]    --> src/play/types.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 206 | impl Piece {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 207 |     fn is_minor(self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     fn is_major(self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 278 |     pub fn move_direction_idx(&self) -> Range<usize> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     uci::uci_loop();
[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)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let _ = uci::uci_loop();
[INFO] [stdout]   |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/move/mod.rs:197:13
[INFO] [stdout]     |
[INFO] [stdout] 197 |             f.write_str("0-0-0");
[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] 197 |             let _ = f.write_str("0-0-0");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/move/mod.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             f.write_str("0-0");
[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] 199 |             let _ = f.write_str("0-0");
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/play/types.rs:150:9
[INFO] [stdout]     |
[INFO] [stdout] 150 |         f.write_char(self.into());
[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] 150 |         let _ = f.write_char(self.into());
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.73s
[INFO] running `Command { std: "docker" "inspect" "96d43110808f6b82c83898fe730c35d50bd85e9d143b65e5532dc7aea7ff1203", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96d43110808f6b82c83898fe730c35d50bd85e9d143b65e5532dc7aea7ff1203", kill_on_drop: false }`
[INFO] [stdout] 96d43110808f6b82c83898fe730c35d50bd85e9d143b65e5532dc7aea7ff1203
