[INFO] cloning repository https://github.com/jrdnrs/chess-engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jrdnrs/chess-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjrdnrs%2Fchess-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjrdnrs%2Fchess-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bc4bff3a7a49745f2f0d54ef2fcbdbdb735c8031 [INFO] testing jrdnrs/chess-engine against 1.90.0 for beta-1.91-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjrdnrs%2Fchess-engine" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jrdnrs/chess-engine [INFO] finished tweaking git repo https://github.com/jrdnrs/chess-engine [INFO] tweaked toml for git repo https://github.com/jrdnrs/chess-engine written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jrdnrs/chess-engine on toolchain 1.90.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jrdnrs/chess-engine 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.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5cf9f46831b36aef344c57c1cf47cca26b6b9f2f3eeec8c44068ea8f742f282d [INFO] running `Command { std: "docker" "start" "-a" "5cf9f46831b36aef344c57c1cf47cca26b6b9f2f3eeec8c44068ea8f742f282d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5cf9f46831b36aef344c57c1cf47cca26b6b9f2f3eeec8c44068ea8f742f282d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5cf9f46831b36aef344c57c1cf47cca26b6b9f2f3eeec8c44068ea8f742f282d", kill_on_drop: false }` [INFO] [stdout] 5cf9f46831b36aef344c57c1cf47cca26b6b9f2f3eeec8c44068ea8f742f282d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a5f5951500b698eb2963a039c9ea053865601a4a3e2153cc2c481726d7822908 [INFO] running `Command { std: "docker" "start" "-a" "a5f5951500b698eb2963a039c9ea053865601a4a3e2153cc2c481726d7822908", kill_on_drop: false }` [INFO] [stderr] Compiling chess-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::num` [INFO] [stdout] --> src/bitboard.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bitboard::print_bitboard` [INFO] [stdout] --> src/bits.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::bitboard::print_bitboard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/bits.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sort::selection_sort_once` [INFO] [stdout] --> src/engine.rs:1:63 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{bitboard::*, bits::*, board::*, moves::*, pregen, sort::selection_sort_once}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/pregen.rs:408:9 [INFO] [stdout] | [INFO] [stdout] 408 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mov` [INFO] [stdout] --> src/pregen.rs:401:54 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mov` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/pregen.rs:401:39 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H1` is never used [INFO] [stdout] --> src/bitboard.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const H1: u8 = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G1` is never used [INFO] [stdout] --> src/bitboard.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const G1: u8 = 1; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F1` is never used [INFO] [stdout] --> src/bitboard.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const F1: u8 = 2; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E1` is never used [INFO] [stdout] --> src/bitboard.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const E1: u8 = 3; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D1` is never used [INFO] [stdout] --> src/bitboard.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const D1: u8 = 4; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C1` is never used [INFO] [stdout] --> src/bitboard.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const C1: u8 = 5; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B1` is never used [INFO] [stdout] --> src/bitboard.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const B1: u8 = 6; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A1` is never used [INFO] [stdout] --> src/bitboard.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const A1: u8 = 7; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H2` is never used [INFO] [stdout] --> src/bitboard.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const H2: u8 = 8; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G2` is never used [INFO] [stdout] --> src/bitboard.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const G2: u8 = 9; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F2` is never used [INFO] [stdout] --> src/bitboard.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const F2: u8 = 10; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E2` is never used [INFO] [stdout] --> src/bitboard.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const E2: u8 = 11; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D2` is never used [INFO] [stdout] --> src/bitboard.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const D2: u8 = 12; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C2` is never used [INFO] [stdout] --> src/bitboard.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const C2: u8 = 13; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B2` is never used [INFO] [stdout] --> src/bitboard.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const B2: u8 = 14; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A2` is never used [INFO] [stdout] --> src/bitboard.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const A2: u8 = 15; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H3` is never used [INFO] [stdout] --> src/bitboard.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const H3: u8 = 16; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G3` is never used [INFO] [stdout] --> src/bitboard.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const G3: u8 = 17; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F3` is never used [INFO] [stdout] --> src/bitboard.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const F3: u8 = 18; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E3` is never used [INFO] [stdout] --> src/bitboard.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const E3: u8 = 19; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D3` is never used [INFO] [stdout] --> src/bitboard.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const D3: u8 = 20; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C3` is never used [INFO] [stdout] --> src/bitboard.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const C3: u8 = 21; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B3` is never used [INFO] [stdout] --> src/bitboard.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const B3: u8 = 22; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A3` is never used [INFO] [stdout] --> src/bitboard.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const A3: u8 = 23; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H4` is never used [INFO] [stdout] --> src/bitboard.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const H4: u8 = 24; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G4` is never used [INFO] [stdout] --> src/bitboard.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const G4: u8 = 25; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F4` is never used [INFO] [stdout] --> src/bitboard.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const F4: u8 = 26; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E4` is never used [INFO] [stdout] --> src/bitboard.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const E4: u8 = 27; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D4` is never used [INFO] [stdout] --> src/bitboard.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const D4: u8 = 28; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C4` is never used [INFO] [stdout] --> src/bitboard.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const C4: u8 = 29; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B4` is never used [INFO] [stdout] --> src/bitboard.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const B4: u8 = 30; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A4` is never used [INFO] [stdout] --> src/bitboard.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const A4: u8 = 31; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H5` is never used [INFO] [stdout] --> src/bitboard.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const H5: u8 = 32; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G5` is never used [INFO] [stdout] --> src/bitboard.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const G5: u8 = 33; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F5` is never used [INFO] [stdout] --> src/bitboard.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const F5: u8 = 34; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E5` is never used [INFO] [stdout] --> src/bitboard.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const E5: u8 = 35; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D5` is never used [INFO] [stdout] --> src/bitboard.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const D5: u8 = 36; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C5` is never used [INFO] [stdout] --> src/bitboard.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const C5: u8 = 37; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B5` is never used [INFO] [stdout] --> src/bitboard.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const B5: u8 = 38; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A5` is never used [INFO] [stdout] --> src/bitboard.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const A5: u8 = 39; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H6` is never used [INFO] [stdout] --> src/bitboard.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const H6: u8 = 40; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G6` is never used [INFO] [stdout] --> src/bitboard.rs:46:11 [INFO] [stdout] | [INFO] [stdout] 46 | pub const G6: u8 = 41; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F6` is never used [INFO] [stdout] --> src/bitboard.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const F6: u8 = 42; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E6` is never used [INFO] [stdout] --> src/bitboard.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const E6: u8 = 43; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D6` is never used [INFO] [stdout] --> src/bitboard.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const D6: u8 = 44; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C6` is never used [INFO] [stdout] --> src/bitboard.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const C6: u8 = 45; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B6` is never used [INFO] [stdout] --> src/bitboard.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const B6: u8 = 46; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A6` is never used [INFO] [stdout] --> src/bitboard.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const A6: u8 = 47; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H7` is never used [INFO] [stdout] --> src/bitboard.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const H7: u8 = 48; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G7` is never used [INFO] [stdout] --> src/bitboard.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const G7: u8 = 49; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F7` is never used [INFO] [stdout] --> src/bitboard.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const F7: u8 = 50; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E7` is never used [INFO] [stdout] --> src/bitboard.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const E7: u8 = 51; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D7` is never used [INFO] [stdout] --> src/bitboard.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const D7: u8 = 52; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C7` is never used [INFO] [stdout] --> src/bitboard.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const C7: u8 = 53; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B7` is never used [INFO] [stdout] --> src/bitboard.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const B7: u8 = 54; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A7` is never used [INFO] [stdout] --> src/bitboard.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const A7: u8 = 55; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H8` is never used [INFO] [stdout] --> src/bitboard.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const H8: u8 = 56; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G8` is never used [INFO] [stdout] --> src/bitboard.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const G8: u8 = 57; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F8` is never used [INFO] [stdout] --> src/bitboard.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const F8: u8 = 58; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E8` is never used [INFO] [stdout] --> src/bitboard.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const E8: u8 = 59; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D8` is never used [INFO] [stdout] --> src/bitboard.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const D8: u8 = 60; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C8` is never used [INFO] [stdout] --> src/bitboard.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const C8: u8 = 61; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B8` is never used [INFO] [stdout] --> src/bitboard.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const B8: u8 = 62; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A8` is never used [INFO] [stdout] --> src/bitboard.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const A8: u8 = 63; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_A` is never used [INFO] [stdout] --> src/bitboard.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const FILE_A: u64 = 0x8080808080808080; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_B` is never used [INFO] [stdout] --> src/bitboard.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const FILE_B: u64 = 0x4040404040404040; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_C` is never used [INFO] [stdout] --> src/bitboard.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const FILE_C: u64 = 0x2020202020202020; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_D` is never used [INFO] [stdout] --> src/bitboard.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const FILE_D: u64 = 0x1010101010101010; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_E` is never used [INFO] [stdout] --> src/bitboard.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const FILE_E: u64 = 0x0808080808080808; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_F` is never used [INFO] [stdout] --> src/bitboard.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const FILE_F: u64 = 0x0404040404040404; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_G` is never used [INFO] [stdout] --> src/bitboard.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const FILE_G: u64 = 0x0202020202020202; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_H` is never used [INFO] [stdout] --> src/bitboard.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const FILE_H: u64 = 0x0101010101010101; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_1` is never used [INFO] [stdout] --> src/bitboard.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | pub const RANK_1: u64 = 0x00000000000000FF; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_2` is never used [INFO] [stdout] --> src/bitboard.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const RANK_2: u64 = 0x000000000000FF00; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_3` is never used [INFO] [stdout] --> src/bitboard.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const RANK_3: u64 = 0x0000000000FF0000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_4` is never used [INFO] [stdout] --> src/bitboard.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const RANK_4: u64 = 0x00000000FF000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_5` is never used [INFO] [stdout] --> src/bitboard.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const RANK_5: u64 = 0x000000FF00000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_6` is never used [INFO] [stdout] --> src/bitboard.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const RANK_6: u64 = 0x0000FF0000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_7` is never used [INFO] [stdout] --> src/bitboard.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const RANK_7: u64 = 0x00FF000000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_8` is never used [INFO] [stdout] --> src/bitboard.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const RANK_8: u64 = 0xFF00000000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A8_H1` is never used [INFO] [stdout] --> src/bitboard.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const A8_H1: u64 = 0x08040201008040201; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A1_H8` is never used [INFO] [stdout] --> src/bitboard.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const A1_H8: u64 = 0x00102040810204080; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGIC_SHIFT` is never used [INFO] [stdout] --> src/bitboard.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const ROOK_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGIC` is never used [INFO] [stdout] --> src/bitboard.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const ROOK_MAGIC: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGIC_SHIFT` is never used [INFO] [stdout] --> src/bitboard.rs:124:11 [INFO] [stdout] | [INFO] [stdout] 124 | pub const BISHOP_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGIC` is never used [INFO] [stdout] --> src/bitboard.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | pub const BISHOP_MAGIC: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_ROOK_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:156:7 [INFO] [stdout] | [INFO] [stdout] 156 | const WHITE_ROOK_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_BISHOP_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:167:7 [INFO] [stdout] | [INFO] [stdout] 167 | const WHITE_BISHOP_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KNIGHT_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:179:7 [INFO] [stdout] | [INFO] [stdout] 179 | const WHITE_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_QUEEN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:191:7 [INFO] [stdout] | [INFO] [stdout] 191 | const WHITE_QUEEN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_PAWN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:203:7 [INFO] [stdout] | [INFO] [stdout] 203 | const WHITE_PAWN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KING_MIDDLE_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:215:7 [INFO] [stdout] | [INFO] [stdout] 215 | const WHITE_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:227:7 [INFO] [stdout] | [INFO] [stdout] 227 | const WHITE_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_ROOK_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:239:7 [INFO] [stdout] | [INFO] [stdout] 239 | const BLACK_ROOK_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_BISHOP_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:251:7 [INFO] [stdout] | [INFO] [stdout] 251 | const BLACK_BISHOP_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KNIGHT_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:263:7 [INFO] [stdout] | [INFO] [stdout] 263 | const BLACK_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_QUEEN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:275:7 [INFO] [stdout] | [INFO] [stdout] 275 | const BLACK_QUEEN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_PAWN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:287:7 [INFO] [stdout] | [INFO] [stdout] 287 | const BLACK_PAWN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KING_MIDDLE_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:299:7 [INFO] [stdout] | [INFO] [stdout] 299 | const BLACK_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:311:7 [INFO] [stdout] | [INFO] [stdout] 311 | const BLACK_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SCORES` is never used [INFO] [stdout] --> src/bitboard.rs:322:11 [INFO] [stdout] | [INFO] [stdout] 322 | pub const SQUARE_SCORES: [[[i32; 64]; 6]; 2] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_bitboard` is never used [INFO] [stdout] --> src/bitboard.rs:341:8 [INFO] [stdout] | [INFO] [stdout] 341 | pub fn print_bitboard(bb: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_rank` is never used [INFO] [stdout] --> src/bitboard.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn get_rank(square: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_file` is never used [INFO] [stdout] --> src/bitboard.rs:361:8 [INFO] [stdout] | [INFO] [stdout] 361 | pub fn get_file(square: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `if_color` is never used [INFO] [stdout] --> src/bitboard.rs:365:8 [INFO] [stdout] | [INFO] [stdout] 365 | pub fn if_color(color: usize, white: u8, black: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_vertical` is never used [INFO] [stdout] --> src/bitboard.rs:374:8 [INFO] [stdout] | [INFO] [stdout] 374 | pub fn shift_vertical(bb: u64, color: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_vertical_index` is never used [INFO] [stdout] --> src/bitboard.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn shift_vertical_index(square: u8, color: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north` is never used [INFO] [stdout] --> src/bitboard.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn shift_north(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north_east` is never used [INFO] [stdout] --> src/bitboard.rs:388:8 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn shift_north_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_east` is never used [INFO] [stdout] --> src/bitboard.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn shift_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_east_n` is never used [INFO] [stdout] --> src/bitboard.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn shift_east_n(bb: u64, n: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south_east` is never used [INFO] [stdout] --> src/bitboard.rs:404:8 [INFO] [stdout] | [INFO] [stdout] 404 | pub fn shift_south_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south` is never used [INFO] [stdout] --> src/bitboard.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 408 | pub fn shift_south(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south_west` is never used [INFO] [stdout] --> src/bitboard.rs:412:8 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn shift_south_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_west` is never used [INFO] [stdout] --> src/bitboard.rs:416:8 [INFO] [stdout] | [INFO] [stdout] 416 | pub fn shift_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_west_n` is never used [INFO] [stdout] --> src/bitboard.rs:420:8 [INFO] [stdout] | [INFO] [stdout] 420 | pub fn shift_west_n(bb: u64, n: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north_west` is never used [INFO] [stdout] --> src/bitboard.rs:428:8 [INFO] [stdout] | [INFO] [stdout] 428 | pub fn shift_north_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_bit` is never used [INFO] [stdout] --> src/bits.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn set_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_bit` is never used [INFO] [stdout] --> src/bits.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn clear_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_bit` is never used [INFO] [stdout] --> src/bits.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn test_bit(n: u64, index: u8) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bit` is never used [INFO] [stdout] --> src/bits.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn get_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `isolate_bit` is never used [INFO] [stdout] --> src/bits.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn isolate_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_lsb` is never used [INFO] [stdout] --> src/bits.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn clear_lsb(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE` is never used [INFO] [stdout] --> src/board.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const WHITE: usize = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK` is never used [INFO] [stdout] --> src/board.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const BLACK: usize = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL` is never used [INFO] [stdout] --> src/board.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const ALL: usize = 2; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK` is never used [INFO] [stdout] --> src/board.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const ROOK: usize = 0; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP` is never used [INFO] [stdout] --> src/board.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const BISHOP: usize = 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KNIGHT` is never used [INFO] [stdout] --> src/board.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const KNIGHT: usize = 2; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUEEN` is never used [INFO] [stdout] --> src/board.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const QUEEN: usize = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PAWN` is never used [INFO] [stdout] --> src/board.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const PAWN: usize = 4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING` is never used [INFO] [stdout] --> src/board.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const KING: usize = 5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NONE` is never used [INFO] [stdout] --> src/board.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const NONE: usize = 6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PIECE_VALUE` is never used [INFO] [stdout] --> src/board.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const PIECE_VALUE: [i32; 5] = [600, 400, 400, 1200, 100]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/board.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/board.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 32 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn player_score(&self, color: usize) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn swap_color(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn unmake_move(&mut self, mov: &Move, state: PreMoveState) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn get_piece_on_square(&self, color: usize, square: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub fn add_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn remove_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 331 | pub fn move_piece(&mut self, piece: usize, color: usize, from: u8, to: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn update_occupancy(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BACK_RANK` is never used [INFO] [stdout] --> src/engine.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const BACK_RANK: [u8; 2] = [0, 7]; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PAWN_RANK` is never used [INFO] [stdout] --> src/engine.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const PAWN_RANK: [u8; 2] = [1, 6]; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PENULT_RANK` is never used [INFO] [stdout] --> src/engine.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const PENULT_RANK: [u8; 2] = [6, 1]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CASTLE_SAFE_SQUARES` is never used [INFO] [stdout] --> src/engine.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const CASTLE_SAFE_SQUARES: [[u64; 2]; 2] = [[0xE, 0x38], [0xE00000000000000, 0x3800000000000000]]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CASTLE_OPEN_SQUARES` is never used [INFO] [stdout] --> src/engine.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const CASTLE_OPEN_SQUARES: [[u64; 2]; 2] = [[0x6, 0x70], [0x600000000000000, 0x7000000000000000]]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INFINITY` is never used [INFO] [stdout] --> src/engine.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const INFINITY: i32 = 0x0FFFFFFF; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TABLE_SIZE` is never used [INFO] [stdout] --> src/engine.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const TABLE_SIZE: usize = 2 << 5; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TABLE_MODULUS` is never used [INFO] [stdout] --> src/engine.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const TABLE_MODULUS: usize = TABLE_SIZE - 1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Engine` is never constructed [INFO] [stdout] --> src/engine.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Engine { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/engine.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Engine { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 77 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn best_move(&mut self, depth: u16) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn negamax(&mut self, from_root: u16, from_target: u16, mut alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | fn quiesce(&mut self, mut alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | fn evaluate_position(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | fn evaluate_moves(&self, moves: &[Move]) -> Vec<(i32, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn evaluate_move(&self, mov: &Move) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn unmake_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn update_threats(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | fn update_en_passant_pin(&mut self, king_to_enemy_mask: u64, enemy_blockers: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | fn update_pins_and_checks(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 452 | pub fn generate_moves(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 471 | fn rook_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 507 | fn bishop_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 545 | fn queen_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | fn knight_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 617 | fn pawn_moves(&self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | fn king_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STARTING_FEN` is never used [INFO] [stdout] --> src/engine.rs:729:11 [INFO] [stdout] | [INFO] [stdout] 729 | const STARTING_FEN: &str = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_state` is never used [INFO] [stdout] --> src/engine.rs:731:8 [INFO] [stdout] | [INFO] [stdout] 731 | fn print_state(game: &mut Engine) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_board` is never used [INFO] [stdout] --> src/engine.rs:798:8 [INFO] [stdout] | [INFO] [stdout] 798 | fn print_board(board: &Board) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perft` is never used [INFO] [stdout] --> src/engine.rs:855:8 [INFO] [stdout] | [INFO] [stdout] 855 | fn perft(engine: &mut Engine, depth: u8) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `go_perft` is never used [INFO] [stdout] --> src/engine.rs:872:8 [INFO] [stdout] | [INFO] [stdout] 872 | fn go_perft(engine: &mut Engine, depth: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CAPTURE` is never used [INFO] [stdout] --> src/moves.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const CAPTURE: u8 = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROMOTION` is never used [INFO] [stdout] --> src/moves.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const PROMOTION: u8 = 1 << 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING_SIDE` is never used [INFO] [stdout] --> src/moves.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const KING_SIDE: u8 = 1 << 2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUEEN_SIDE` is never used [INFO] [stdout] --> src/moves.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const QUEEN_SIDE: u8 = 2 << 2; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EN_PASSANT_MOVE` is never used [INFO] [stdout] --> src/moves.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const EN_PASSANT_MOVE: u8 = 1 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EN_PASSANT_CAP` is never used [INFO] [stdout] --> src/moves.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const EN_PASSANT_CAP: u8 = 2 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Move` is never constructed [INFO] [stdout] --> src/moves.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/moves.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 22 | impl Move { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 23 | const CAPTURE_MASK: u8 = CAPTURE; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 24 | const PROMOTION_MASK: u8 = PROMOTION; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 25 | const CASTLING_MASK: u8 = KING_SIDE | QUEEN_SIDE; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 26 | const EN_PASSANT_MASK: u8 = EN_PASSANT_MOVE | EN_PASSANT_CAP; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | [INFO] [stdout] 28 | pub fn new(piece: usize, from: u8, to: u8, flags: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_capture(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_promotion(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn is_en_passant(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn is_castle(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn get_castling_bits(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn get_en_pass_bits(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IndexOfNextBest` is never constructed [INFO] [stdout] --> src/moves.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct IndexOfNextBest { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/moves.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl IndexOfNextBest { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 68 | pub fn new(evals: Vec<(i32, usize)>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `moves_from_bitboard` is never used [INFO] [stdout] --> src/moves.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn moves_from_bitboard( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PreMoveState` is never constructed [INFO] [stdout] --> src/moves.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct PreMoveState { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `EN_PASSANT_MASK`, `new`, `get_castling_rights`, `get_en_passant`, and `get_captured_piece` are never used [INFO] [stdout] --> src/moves.rs:111:11 [INFO] [stdout] | [INFO] [stdout] 110 | impl PreMoveState { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 111 | const EN_PASSANT_MASK: u16 = 0b111111 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 112 | [INFO] [stdout] 113 | pub fn new(castling_rights: [[bool; 2]; 2], en_passant: u64, captured_piece: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn get_castling_rights(&self) -> [[bool; 2]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn get_en_passant(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn get_captured_piece(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rays` is never constructed [INFO] [stdout] --> src/pregen.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Rays(pub [[u64; 64]; 8]); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pregen.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Rays { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 12 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockerMasks` is never constructed [INFO] [stdout] --> src/pregen.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct BlockerMasks(pub [[u64; 64]; 2]); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pregen.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl BlockerMasks { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 70 | pub fn new(rays: &Rays) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AttackSets` is never constructed [INFO] [stdout] --> src/pregen.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct AttackSets { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/pregen.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 109 | impl AttackSets { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 110 | pub fn new(rays: &Rays, blocker_masks: &BlockerMasks) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn get_rook_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn get_bishop_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn rook(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | fn bishop(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | fn knight() -> [u64; 64] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | fn king() -> [u64; 64] { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 214 | fn pawn() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `knight_attack` is never used [INFO] [stdout] --> src/pregen.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn knight_attack(square: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `king_attack` is never used [INFO] [stdout] --> src/pregen.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn king_attack(square: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pawn_attack` is never used [INFO] [stdout] --> src/pregen.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn pawn_attack(square: usize, color: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rook_attack` is never used [INFO] [stdout] --> src/pregen.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn rook_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bishop_attack` is never used [INFO] [stdout] --> src/pregen.rs:292:8 [INFO] [stdout] | [INFO] [stdout] 292 | pub fn bishop_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TableEntry` is never constructed [INFO] [stdout] --> src/pregen.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 331 | pub struct TableEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TranspositionTable` is never constructed [INFO] [stdout] --> src/pregen.rs:339:12 [INFO] [stdout] | [INFO] [stdout] 339 | pub struct TranspositionTable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `zobrist_hash`, and `update_zobrist_hash` are never used [INFO] [stdout] --> src/pregen.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 348 | impl TranspositionTable { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 349 | pub fn new(size: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn zobrist_hash(&self, board: &Board) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_string` is never used [INFO] [stdout] --> src/square.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn parse_string(square: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_string` is never used [INFO] [stdout] --> src/square.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn to_string(square: u8) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XORShift64` is never constructed [INFO] [stdout] --> src/rand.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct XORShift64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `rand` are never used [INFO] [stdout] --> src/rand.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl XORShift64 { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new(seed: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | pub fn rand(&mut self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `selection_sort_once` is never used [INFO] [stdout] --> src/sort.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn selection_sort_once(evals: &mut [(i32, usize)]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.56s [INFO] running `Command { std: "docker" "inspect" "a5f5951500b698eb2963a039c9ea053865601a4a3e2153cc2c481726d7822908", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a5f5951500b698eb2963a039c9ea053865601a4a3e2153cc2c481726d7822908", kill_on_drop: false }` [INFO] [stdout] a5f5951500b698eb2963a039c9ea053865601a4a3e2153cc2c481726d7822908 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c0967cee962c1de6dc57ea9bf25c24eceb6cb9191d7cacf0d13f003c4fa070d8 [INFO] running `Command { std: "docker" "start" "-a" "c0967cee962c1de6dc57ea9bf25c24eceb6cb9191d7cacf0d13f003c4fa070d8", kill_on_drop: false }` [INFO] [stderr] Compiling chess-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::num` [INFO] [stdout] --> src/bitboard.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sort::selection_sort_once` [INFO] [stdout] --> src/engine.rs:1:63 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{bitboard::*, bits::*, board::*, moves::*, pregen, sort::selection_sort_once}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::num` [INFO] [stdout] --> src/bitboard.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::num; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::bitboard::print_bitboard` [INFO] [stdout] --> src/bits.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | use crate::bitboard::print_bitboard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/bits.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `sort::selection_sort_once` [INFO] [stdout] --> src/engine.rs:1:63 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{bitboard::*, bits::*, board::*, moves::*, pregen, sort::selection_sort_once}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/pregen.rs:408:9 [INFO] [stdout] | [INFO] [stdout] 408 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mov` [INFO] [stdout] --> src/pregen.rs:401:54 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mov` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/pregen.rs:401:39 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H1` is never used [INFO] [stdout] --> src/bitboard.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const H1: u8 = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G1` is never used [INFO] [stdout] --> src/bitboard.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const G1: u8 = 1; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F1` is never used [INFO] [stdout] --> src/bitboard.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const F1: u8 = 2; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E1` is never used [INFO] [stdout] --> src/bitboard.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const E1: u8 = 3; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D1` is never used [INFO] [stdout] --> src/bitboard.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const D1: u8 = 4; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C1` is never used [INFO] [stdout] --> src/bitboard.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const C1: u8 = 5; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B1` is never used [INFO] [stdout] --> src/bitboard.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const B1: u8 = 6; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A1` is never used [INFO] [stdout] --> src/bitboard.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const A1: u8 = 7; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H2` is never used [INFO] [stdout] --> src/bitboard.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const H2: u8 = 8; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G2` is never used [INFO] [stdout] --> src/bitboard.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const G2: u8 = 9; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F2` is never used [INFO] [stdout] --> src/bitboard.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const F2: u8 = 10; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E2` is never used [INFO] [stdout] --> src/bitboard.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const E2: u8 = 11; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D2` is never used [INFO] [stdout] --> src/bitboard.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const D2: u8 = 12; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C2` is never used [INFO] [stdout] --> src/bitboard.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const C2: u8 = 13; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B2` is never used [INFO] [stdout] --> src/bitboard.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const B2: u8 = 14; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A2` is never used [INFO] [stdout] --> src/bitboard.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const A2: u8 = 15; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H3` is never used [INFO] [stdout] --> src/bitboard.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const H3: u8 = 16; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G3` is never used [INFO] [stdout] --> src/bitboard.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const G3: u8 = 17; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F3` is never used [INFO] [stdout] --> src/bitboard.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const F3: u8 = 18; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E3` is never used [INFO] [stdout] --> src/bitboard.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const E3: u8 = 19; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D3` is never used [INFO] [stdout] --> src/bitboard.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const D3: u8 = 20; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C3` is never used [INFO] [stdout] --> src/bitboard.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const C3: u8 = 21; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B3` is never used [INFO] [stdout] --> src/bitboard.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const B3: u8 = 22; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A3` is never used [INFO] [stdout] --> src/bitboard.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const A3: u8 = 23; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H4` is never used [INFO] [stdout] --> src/bitboard.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const H4: u8 = 24; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G4` is never used [INFO] [stdout] --> src/bitboard.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const G4: u8 = 25; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F4` is never used [INFO] [stdout] --> src/bitboard.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const F4: u8 = 26; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E4` is never used [INFO] [stdout] --> src/bitboard.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const E4: u8 = 27; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D4` is never used [INFO] [stdout] --> src/bitboard.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const D4: u8 = 28; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C4` is never used [INFO] [stdout] --> src/bitboard.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const C4: u8 = 29; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B4` is never used [INFO] [stdout] --> src/bitboard.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const B4: u8 = 30; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A4` is never used [INFO] [stdout] --> src/bitboard.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const A4: u8 = 31; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H5` is never used [INFO] [stdout] --> src/bitboard.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const H5: u8 = 32; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G5` is never used [INFO] [stdout] --> src/bitboard.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const G5: u8 = 33; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F5` is never used [INFO] [stdout] --> src/bitboard.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const F5: u8 = 34; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E5` is never used [INFO] [stdout] --> src/bitboard.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const E5: u8 = 35; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D5` is never used [INFO] [stdout] --> src/bitboard.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const D5: u8 = 36; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C5` is never used [INFO] [stdout] --> src/bitboard.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const C5: u8 = 37; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B5` is never used [INFO] [stdout] --> src/bitboard.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const B5: u8 = 38; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A5` is never used [INFO] [stdout] --> src/bitboard.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const A5: u8 = 39; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H6` is never used [INFO] [stdout] --> src/bitboard.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const H6: u8 = 40; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G6` is never used [INFO] [stdout] --> src/bitboard.rs:46:11 [INFO] [stdout] | [INFO] [stdout] 46 | pub const G6: u8 = 41; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F6` is never used [INFO] [stdout] --> src/bitboard.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const F6: u8 = 42; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E6` is never used [INFO] [stdout] --> src/bitboard.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const E6: u8 = 43; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D6` is never used [INFO] [stdout] --> src/bitboard.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const D6: u8 = 44; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C6` is never used [INFO] [stdout] --> src/bitboard.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const C6: u8 = 45; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B6` is never used [INFO] [stdout] --> src/bitboard.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const B6: u8 = 46; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A6` is never used [INFO] [stdout] --> src/bitboard.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const A6: u8 = 47; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H7` is never used [INFO] [stdout] --> src/bitboard.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const H7: u8 = 48; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G7` is never used [INFO] [stdout] --> src/bitboard.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const G7: u8 = 49; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F7` is never used [INFO] [stdout] --> src/bitboard.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const F7: u8 = 50; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E7` is never used [INFO] [stdout] --> src/bitboard.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const E7: u8 = 51; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D7` is never used [INFO] [stdout] --> src/bitboard.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const D7: u8 = 52; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C7` is never used [INFO] [stdout] --> src/bitboard.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const C7: u8 = 53; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B7` is never used [INFO] [stdout] --> src/bitboard.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const B7: u8 = 54; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A7` is never used [INFO] [stdout] --> src/bitboard.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const A7: u8 = 55; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H8` is never used [INFO] [stdout] --> src/bitboard.rs:61:11 [INFO] [stdout] | [INFO] [stdout] 61 | pub const H8: u8 = 56; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G8` is never used [INFO] [stdout] --> src/bitboard.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const G8: u8 = 57; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F8` is never used [INFO] [stdout] --> src/bitboard.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const F8: u8 = 58; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E8` is never used [INFO] [stdout] --> src/bitboard.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const E8: u8 = 59; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D8` is never used [INFO] [stdout] --> src/bitboard.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const D8: u8 = 60; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C8` is never used [INFO] [stdout] --> src/bitboard.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const C8: u8 = 61; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B8` is never used [INFO] [stdout] --> src/bitboard.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const B8: u8 = 62; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A8` is never used [INFO] [stdout] --> src/bitboard.rs:68:11 [INFO] [stdout] | [INFO] [stdout] 68 | pub const A8: u8 = 63; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_A` is never used [INFO] [stdout] --> src/bitboard.rs:70:11 [INFO] [stdout] | [INFO] [stdout] 70 | pub const FILE_A: u64 = 0x8080808080808080; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_B` is never used [INFO] [stdout] --> src/bitboard.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const FILE_B: u64 = 0x4040404040404040; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_C` is never used [INFO] [stdout] --> src/bitboard.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const FILE_C: u64 = 0x2020202020202020; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_D` is never used [INFO] [stdout] --> src/bitboard.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const FILE_D: u64 = 0x1010101010101010; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_E` is never used [INFO] [stdout] --> src/bitboard.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const FILE_E: u64 = 0x0808080808080808; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_F` is never used [INFO] [stdout] --> src/bitboard.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const FILE_F: u64 = 0x0404040404040404; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_G` is never used [INFO] [stdout] --> src/bitboard.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const FILE_G: u64 = 0x0202020202020202; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_H` is never used [INFO] [stdout] --> src/bitboard.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const FILE_H: u64 = 0x0101010101010101; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_1` is never used [INFO] [stdout] --> src/bitboard.rs:79:11 [INFO] [stdout] | [INFO] [stdout] 79 | pub const RANK_1: u64 = 0x00000000000000FF; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_2` is never used [INFO] [stdout] --> src/bitboard.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const RANK_2: u64 = 0x000000000000FF00; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_3` is never used [INFO] [stdout] --> src/bitboard.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const RANK_3: u64 = 0x0000000000FF0000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_4` is never used [INFO] [stdout] --> src/bitboard.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const RANK_4: u64 = 0x00000000FF000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_5` is never used [INFO] [stdout] --> src/bitboard.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const RANK_5: u64 = 0x000000FF00000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_6` is never used [INFO] [stdout] --> src/bitboard.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const RANK_6: u64 = 0x0000FF0000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_7` is never used [INFO] [stdout] --> src/bitboard.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const RANK_7: u64 = 0x00FF000000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_8` is never used [INFO] [stdout] --> src/bitboard.rs:86:11 [INFO] [stdout] | [INFO] [stdout] 86 | pub const RANK_8: u64 = 0xFF00000000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A8_H1` is never used [INFO] [stdout] --> src/bitboard.rs:88:11 [INFO] [stdout] | [INFO] [stdout] 88 | pub const A8_H1: u64 = 0x08040201008040201; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A1_H8` is never used [INFO] [stdout] --> src/bitboard.rs:89:11 [INFO] [stdout] | [INFO] [stdout] 89 | pub const A1_H8: u64 = 0x00102040810204080; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGIC_SHIFT` is never used [INFO] [stdout] --> src/bitboard.rs:92:11 [INFO] [stdout] | [INFO] [stdout] 92 | pub const ROOK_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGIC` is never used [INFO] [stdout] --> src/bitboard.rs:104:11 [INFO] [stdout] | [INFO] [stdout] 104 | pub const ROOK_MAGIC: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGIC_SHIFT` is never used [INFO] [stdout] --> src/bitboard.rs:124:11 [INFO] [stdout] | [INFO] [stdout] 124 | pub const BISHOP_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGIC` is never used [INFO] [stdout] --> src/bitboard.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | pub const BISHOP_MAGIC: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_ROOK_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:156:7 [INFO] [stdout] | [INFO] [stdout] 156 | const WHITE_ROOK_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_BISHOP_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:167:7 [INFO] [stdout] | [INFO] [stdout] 167 | const WHITE_BISHOP_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KNIGHT_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:179:7 [INFO] [stdout] | [INFO] [stdout] 179 | const WHITE_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_QUEEN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:191:7 [INFO] [stdout] | [INFO] [stdout] 191 | const WHITE_QUEEN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_PAWN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:203:7 [INFO] [stdout] | [INFO] [stdout] 203 | const WHITE_PAWN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KING_MIDDLE_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:215:7 [INFO] [stdout] | [INFO] [stdout] 215 | const WHITE_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:227:7 [INFO] [stdout] | [INFO] [stdout] 227 | const WHITE_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_ROOK_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:239:7 [INFO] [stdout] | [INFO] [stdout] 239 | const BLACK_ROOK_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_BISHOP_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:251:7 [INFO] [stdout] | [INFO] [stdout] 251 | const BLACK_BISHOP_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KNIGHT_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:263:7 [INFO] [stdout] | [INFO] [stdout] 263 | const BLACK_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_QUEEN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:275:7 [INFO] [stdout] | [INFO] [stdout] 275 | const BLACK_QUEEN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_PAWN_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:287:7 [INFO] [stdout] | [INFO] [stdout] 287 | const BLACK_PAWN_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KING_MIDDLE_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:299:7 [INFO] [stdout] | [INFO] [stdout] 299 | const BLACK_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:311:7 [INFO] [stdout] | [INFO] [stdout] 311 | const BLACK_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SCORES` is never used [INFO] [stdout] --> src/bitboard.rs:322:11 [INFO] [stdout] | [INFO] [stdout] 322 | pub const SQUARE_SCORES: [[[i32; 64]; 6]; 2] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_bitboard` is never used [INFO] [stdout] --> src/bitboard.rs:341:8 [INFO] [stdout] | [INFO] [stdout] 341 | pub fn print_bitboard(bb: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_rank` is never used [INFO] [stdout] --> src/bitboard.rs:357:8 [INFO] [stdout] | [INFO] [stdout] 357 | pub fn get_rank(square: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_file` is never used [INFO] [stdout] --> src/bitboard.rs:361:8 [INFO] [stdout] | [INFO] [stdout] 361 | pub fn get_file(square: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `if_color` is never used [INFO] [stdout] --> src/bitboard.rs:365:8 [INFO] [stdout] | [INFO] [stdout] 365 | pub fn if_color(color: usize, white: u8, black: u8) -> u8 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_vertical` is never used [INFO] [stdout] --> src/bitboard.rs:374:8 [INFO] [stdout] | [INFO] [stdout] 374 | pub fn shift_vertical(bb: u64, color: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_vertical_index` is never used [INFO] [stdout] --> src/bitboard.rs:380:8 [INFO] [stdout] | [INFO] [stdout] 380 | pub fn shift_vertical_index(square: u8, color: usize) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north` is never used [INFO] [stdout] --> src/bitboard.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn shift_north(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north_east` is never used [INFO] [stdout] --> src/bitboard.rs:388:8 [INFO] [stdout] | [INFO] [stdout] 388 | pub fn shift_north_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_east` is never used [INFO] [stdout] --> src/bitboard.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn shift_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_east_n` is never used [INFO] [stdout] --> src/bitboard.rs:396:8 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn shift_east_n(bb: u64, n: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south_east` is never used [INFO] [stdout] --> src/bitboard.rs:404:8 [INFO] [stdout] | [INFO] [stdout] 404 | pub fn shift_south_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south` is never used [INFO] [stdout] --> src/bitboard.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 408 | pub fn shift_south(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south_west` is never used [INFO] [stdout] --> src/bitboard.rs:412:8 [INFO] [stdout] | [INFO] [stdout] 412 | pub fn shift_south_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_west` is never used [INFO] [stdout] --> src/bitboard.rs:416:8 [INFO] [stdout] | [INFO] [stdout] 416 | pub fn shift_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_west_n` is never used [INFO] [stdout] --> src/bitboard.rs:420:8 [INFO] [stdout] | [INFO] [stdout] 420 | pub fn shift_west_n(bb: u64, n: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north_west` is never used [INFO] [stdout] --> src/bitboard.rs:428:8 [INFO] [stdout] | [INFO] [stdout] 428 | pub fn shift_north_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `set_bit` is never used [INFO] [stdout] --> src/bits.rs:1:8 [INFO] [stdout] | [INFO] [stdout] 1 | pub fn set_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_bit` is never used [INFO] [stdout] --> src/bits.rs:5:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub fn clear_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_bit` is never used [INFO] [stdout] --> src/bits.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn test_bit(n: u64, index: u8) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bit` is never used [INFO] [stdout] --> src/bits.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn get_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `isolate_bit` is never used [INFO] [stdout] --> src/bits.rs:19:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn isolate_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clear_lsb` is never used [INFO] [stdout] --> src/bits.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn clear_lsb(n: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE` is never used [INFO] [stdout] --> src/board.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const WHITE: usize = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK` is never used [INFO] [stdout] --> src/board.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const BLACK: usize = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALL` is never used [INFO] [stdout] --> src/board.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const ALL: usize = 2; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK` is never used [INFO] [stdout] --> src/board.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const ROOK: usize = 0; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP` is never used [INFO] [stdout] --> src/board.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const BISHOP: usize = 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KNIGHT` is never used [INFO] [stdout] --> src/board.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const KNIGHT: usize = 2; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUEEN` is never used [INFO] [stdout] --> src/board.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const QUEEN: usize = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PAWN` is never used [INFO] [stdout] --> src/board.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const PAWN: usize = 4; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING` is never used [INFO] [stdout] --> src/board.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const KING: usize = 5; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NONE` is never used [INFO] [stdout] --> src/board.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const NONE: usize = 6; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PIECE_VALUE` is never used [INFO] [stdout] --> src/board.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const PIECE_VALUE: [i32; 5] = [600, 400, 400, 1200, 100]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/board.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/board.rs:32:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 32 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn player_score(&self, color: usize) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | pub fn swap_color(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | pub fn unmake_move(&mut self, mov: &Move, state: PreMoveState) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 313 | pub fn get_piece_on_square(&self, color: usize, square: u8) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 323 | pub fn add_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn remove_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 331 | pub fn move_piece(&mut self, piece: usize, color: usize, from: u8, to: u8) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn update_occupancy(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BACK_RANK` is never used [INFO] [stdout] --> src/engine.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const BACK_RANK: [u8; 2] = [0, 7]; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PAWN_RANK` is never used [INFO] [stdout] --> src/engine.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const PAWN_RANK: [u8; 2] = [1, 6]; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PENULT_RANK` is never used [INFO] [stdout] --> src/engine.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const PENULT_RANK: [u8; 2] = [6, 1]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CASTLE_SAFE_SQUARES` is never used [INFO] [stdout] --> src/engine.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const CASTLE_SAFE_SQUARES: [[u64; 2]; 2] = [[0xE, 0x38], [0xE00000000000000, 0x3800000000000000]]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CASTLE_OPEN_SQUARES` is never used [INFO] [stdout] --> src/engine.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const CASTLE_OPEN_SQUARES: [[u64; 2]; 2] = [[0x6, 0x70], [0x600000000000000, 0x7000000000000000]]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INFINITY` is never used [INFO] [stdout] --> src/engine.rs:11:7 [INFO] [stdout] | [INFO] [stdout] 11 | const INFINITY: i32 = 0x0FFFFFFF; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TABLE_SIZE` is never used [INFO] [stdout] --> src/engine.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const TABLE_SIZE: usize = 2 << 5; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TABLE_MODULUS` is never used [INFO] [stdout] --> src/engine.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const TABLE_MODULUS: usize = TABLE_SIZE - 1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Engine` is never constructed [INFO] [stdout] --> src/engine.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Engine { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/engine.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 76 | impl Engine { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 77 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn reset(&mut self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 119 | pub fn best_move(&mut self, depth: u16) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | fn negamax(&mut self, from_root: u16, from_target: u16, mut alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | fn quiesce(&mut self, mut alpha: i32, beta: i32) -> i32 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | fn evaluate_position(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | fn evaluate_moves(&self, moves: &[Move]) -> Vec<(i32, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | fn evaluate_move(&self, mov: &Move) -> i32 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 254 | pub fn unmake_move(&mut self, mov: &Move) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | fn update_threats(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 325 | fn update_en_passant_pin(&mut self, king_to_enemy_mask: u64, enemy_blockers: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | fn update_pins_and_checks(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 452 | pub fn generate_moves(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 471 | fn rook_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 507 | fn bishop_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 545 | fn queen_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | fn knight_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 617 | fn pawn_moves(&self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | fn king_moves(&mut self, list: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STARTING_FEN` is never used [INFO] [stdout] --> src/engine.rs:729:11 [INFO] [stdout] | [INFO] [stdout] 729 | const STARTING_FEN: &str = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_state` is never used [INFO] [stdout] --> src/engine.rs:731:8 [INFO] [stdout] | [INFO] [stdout] 731 | fn print_state(game: &mut Engine) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_board` is never used [INFO] [stdout] --> src/engine.rs:798:8 [INFO] [stdout] | [INFO] [stdout] 798 | fn print_board(board: &Board) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perft` is never used [INFO] [stdout] --> src/engine.rs:855:8 [INFO] [stdout] | [INFO] [stdout] 855 | fn perft(engine: &mut Engine, depth: u8) -> usize { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `go_perft` is never used [INFO] [stdout] --> src/engine.rs:872:8 [INFO] [stdout] | [INFO] [stdout] 872 | fn go_perft(engine: &mut Engine, depth: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CAPTURE` is never used [INFO] [stdout] --> src/moves.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const CAPTURE: u8 = 1; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROMOTION` is never used [INFO] [stdout] --> src/moves.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const PROMOTION: u8 = 1 << 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING_SIDE` is never used [INFO] [stdout] --> src/moves.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const KING_SIDE: u8 = 1 << 2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUEEN_SIDE` is never used [INFO] [stdout] --> src/moves.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const QUEEN_SIDE: u8 = 2 << 2; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EN_PASSANT_MOVE` is never used [INFO] [stdout] --> src/moves.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const EN_PASSANT_MOVE: u8 = 1 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EN_PASSANT_CAP` is never used [INFO] [stdout] --> src/moves.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const EN_PASSANT_CAP: u8 = 2 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Move` is never constructed [INFO] [stdout] --> src/moves.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/moves.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 22 | impl Move { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 23 | const CAPTURE_MASK: u8 = CAPTURE; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 24 | const PROMOTION_MASK: u8 = PROMOTION; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 25 | const CASTLING_MASK: u8 = KING_SIDE | QUEEN_SIDE; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 26 | const EN_PASSANT_MASK: u8 = EN_PASSANT_MOVE | EN_PASSANT_CAP; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 27 | [INFO] [stdout] 28 | pub fn new(piece: usize, from: u8, to: u8, flags: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn is_capture(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn is_promotion(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn is_en_passant(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn is_castle(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn get_castling_bits(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn get_en_pass_bits(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `IndexOfNextBest` is never constructed [INFO] [stdout] --> src/moves.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct IndexOfNextBest { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/moves.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 67 | impl IndexOfNextBest { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 68 | pub fn new(evals: Vec<(i32, usize)>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `moves_from_bitboard` is never used [INFO] [stdout] --> src/moves.rs:90:8 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn moves_from_bitboard( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PreMoveState` is never constructed [INFO] [stdout] --> src/moves.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct PreMoveState { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `EN_PASSANT_MASK`, `new`, `get_castling_rights`, `get_en_passant`, and `get_captured_piece` are never used [INFO] [stdout] --> src/moves.rs:111:11 [INFO] [stdout] | [INFO] [stdout] 110 | impl PreMoveState { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 111 | const EN_PASSANT_MASK: u16 = 0b111111 << 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 112 | [INFO] [stdout] 113 | pub fn new(castling_rights: [[bool; 2]; 2], en_passant: u64, captured_piece: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 126 | pub fn get_castling_rights(&self) -> [[bool; 2]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn get_en_passant(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn get_captured_piece(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rays` is never constructed [INFO] [stdout] --> src/pregen.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Rays(pub [[u64; 64]; 8]); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pregen.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Rays { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] 12 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BlockerMasks` is never constructed [INFO] [stdout] --> src/pregen.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct BlockerMasks(pub [[u64; 64]; 2]); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/pregen.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 69 | impl BlockerMasks { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 70 | pub fn new(rays: &Rays) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AttackSets` is never constructed [INFO] [stdout] --> src/pregen.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 99 | pub struct AttackSets { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/pregen.rs:110:12 [INFO] [stdout] | [INFO] [stdout] 109 | impl AttackSets { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 110 | pub fn new(rays: &Rays, blocker_masks: &BlockerMasks) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn get_rook_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn get_bishop_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn rook(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | fn bishop(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | fn knight() -> [u64; 64] { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 205 | fn king() -> [u64; 64] { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 214 | fn pawn() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `knight_attack` is never used [INFO] [stdout] --> src/pregen.rs:226:8 [INFO] [stdout] | [INFO] [stdout] 226 | pub fn knight_attack(square: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `king_attack` is never used [INFO] [stdout] --> src/pregen.rs:235:8 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn king_attack(square: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pawn_attack` is never used [INFO] [stdout] --> src/pregen.rs:244:8 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn pawn_attack(square: usize, color: usize) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rook_attack` is never used [INFO] [stdout] --> src/pregen.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn rook_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bishop_attack` is never used [INFO] [stdout] --> src/pregen.rs:292:8 [INFO] [stdout] | [INFO] [stdout] 292 | pub fn bishop_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TableEntry` is never constructed [INFO] [stdout] --> src/pregen.rs:331:12 [INFO] [stdout] | [INFO] [stdout] 331 | pub struct TableEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TranspositionTable` is never constructed [INFO] [stdout] --> src/pregen.rs:339:12 [INFO] [stdout] | [INFO] [stdout] 339 | pub struct TranspositionTable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `zobrist_hash`, and `update_zobrist_hash` are never used [INFO] [stdout] --> src/pregen.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 348 | impl TranspositionTable { [INFO] [stdout] | ----------------------- associated items in this implementation [INFO] [stdout] 349 | pub fn new(size: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn zobrist_hash(&self, board: &Board) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_string` is never used [INFO] [stdout] --> src/square.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | pub fn parse_string(square: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `to_string` is never used [INFO] [stdout] --> src/square.rs:24:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn to_string(square: u8) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `XORShift64` is never constructed [INFO] [stdout] --> src/rand.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct XORShift64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `rand` are never used [INFO] [stdout] --> src/rand.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 6 | impl XORShift64 { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 7 | pub fn new(seed: u64) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 11 | pub fn rand(&mut self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `selection_sort_once` is never used [INFO] [stdout] --> src/sort.rs:4:8 [INFO] [stdout] | [INFO] [stdout] 4 | pub fn selection_sort_once(evals: &mut [(i32, usize)]) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mov` [INFO] [stdout] --> src/pregen.rs:401:54 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mov` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/pregen.rs:401:39 [INFO] [stdout] | [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `bm` [INFO] [stdout] --> src/pregen.rs:496:13 [INFO] [stdout] | [INFO] [stdout] 496 | let bm = BlockerMasks::new(&rays); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_bm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G1` is never used [INFO] [stdout] --> src/bitboard.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const G1: u8 = 1; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F1` is never used [INFO] [stdout] --> src/bitboard.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const F1: u8 = 2; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E1` is never used [INFO] [stdout] --> src/bitboard.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | pub const E1: u8 = 3; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D1` is never used [INFO] [stdout] --> src/bitboard.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | pub const D1: u8 = 4; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C1` is never used [INFO] [stdout] --> src/bitboard.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const C1: u8 = 5; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B1` is never used [INFO] [stdout] --> src/bitboard.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const B1: u8 = 6; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H2` is never used [INFO] [stdout] --> src/bitboard.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const H2: u8 = 8; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G2` is never used [INFO] [stdout] --> src/bitboard.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const G2: u8 = 9; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F2` is never used [INFO] [stdout] --> src/bitboard.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const F2: u8 = 10; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E2` is never used [INFO] [stdout] --> src/bitboard.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const E2: u8 = 11; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D2` is never used [INFO] [stdout] --> src/bitboard.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const D2: u8 = 12; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C2` is never used [INFO] [stdout] --> src/bitboard.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const C2: u8 = 13; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B2` is never used [INFO] [stdout] --> src/bitboard.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const B2: u8 = 14; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A2` is never used [INFO] [stdout] --> src/bitboard.rs:20:11 [INFO] [stdout] | [INFO] [stdout] 20 | pub const A2: u8 = 15; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H3` is never used [INFO] [stdout] --> src/bitboard.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const H3: u8 = 16; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G3` is never used [INFO] [stdout] --> src/bitboard.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const G3: u8 = 17; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F3` is never used [INFO] [stdout] --> src/bitboard.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const F3: u8 = 18; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E3` is never used [INFO] [stdout] --> src/bitboard.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const E3: u8 = 19; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D3` is never used [INFO] [stdout] --> src/bitboard.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const D3: u8 = 20; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C3` is never used [INFO] [stdout] --> src/bitboard.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const C3: u8 = 21; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B3` is never used [INFO] [stdout] --> src/bitboard.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const B3: u8 = 22; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A3` is never used [INFO] [stdout] --> src/bitboard.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const A3: u8 = 23; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H4` is never used [INFO] [stdout] --> src/bitboard.rs:29:11 [INFO] [stdout] | [INFO] [stdout] 29 | pub const H4: u8 = 24; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G4` is never used [INFO] [stdout] --> src/bitboard.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 30 | pub const G4: u8 = 25; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F4` is never used [INFO] [stdout] --> src/bitboard.rs:31:11 [INFO] [stdout] | [INFO] [stdout] 31 | pub const F4: u8 = 26; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E4` is never used [INFO] [stdout] --> src/bitboard.rs:32:11 [INFO] [stdout] | [INFO] [stdout] 32 | pub const E4: u8 = 27; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D4` is never used [INFO] [stdout] --> src/bitboard.rs:33:11 [INFO] [stdout] | [INFO] [stdout] 33 | pub const D4: u8 = 28; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C4` is never used [INFO] [stdout] --> src/bitboard.rs:34:11 [INFO] [stdout] | [INFO] [stdout] 34 | pub const C4: u8 = 29; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B4` is never used [INFO] [stdout] --> src/bitboard.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | pub const B4: u8 = 30; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A4` is never used [INFO] [stdout] --> src/bitboard.rs:36:11 [INFO] [stdout] | [INFO] [stdout] 36 | pub const A4: u8 = 31; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H5` is never used [INFO] [stdout] --> src/bitboard.rs:37:11 [INFO] [stdout] | [INFO] [stdout] 37 | pub const H5: u8 = 32; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G5` is never used [INFO] [stdout] --> src/bitboard.rs:38:11 [INFO] [stdout] | [INFO] [stdout] 38 | pub const G5: u8 = 33; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F5` is never used [INFO] [stdout] --> src/bitboard.rs:39:11 [INFO] [stdout] | [INFO] [stdout] 39 | pub const F5: u8 = 34; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E5` is never used [INFO] [stdout] --> src/bitboard.rs:40:11 [INFO] [stdout] | [INFO] [stdout] 40 | pub const E5: u8 = 35; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D5` is never used [INFO] [stdout] --> src/bitboard.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub const D5: u8 = 36; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C5` is never used [INFO] [stdout] --> src/bitboard.rs:42:11 [INFO] [stdout] | [INFO] [stdout] 42 | pub const C5: u8 = 37; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B5` is never used [INFO] [stdout] --> src/bitboard.rs:43:11 [INFO] [stdout] | [INFO] [stdout] 43 | pub const B5: u8 = 38; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A5` is never used [INFO] [stdout] --> src/bitboard.rs:44:11 [INFO] [stdout] | [INFO] [stdout] 44 | pub const A5: u8 = 39; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H6` is never used [INFO] [stdout] --> src/bitboard.rs:45:11 [INFO] [stdout] | [INFO] [stdout] 45 | pub const H6: u8 = 40; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G6` is never used [INFO] [stdout] --> src/bitboard.rs:46:11 [INFO] [stdout] | [INFO] [stdout] 46 | pub const G6: u8 = 41; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F6` is never used [INFO] [stdout] --> src/bitboard.rs:47:11 [INFO] [stdout] | [INFO] [stdout] 47 | pub const F6: u8 = 42; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E6` is never used [INFO] [stdout] --> src/bitboard.rs:48:11 [INFO] [stdout] | [INFO] [stdout] 48 | pub const E6: u8 = 43; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D6` is never used [INFO] [stdout] --> src/bitboard.rs:49:11 [INFO] [stdout] | [INFO] [stdout] 49 | pub const D6: u8 = 44; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C6` is never used [INFO] [stdout] --> src/bitboard.rs:50:11 [INFO] [stdout] | [INFO] [stdout] 50 | pub const C6: u8 = 45; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B6` is never used [INFO] [stdout] --> src/bitboard.rs:51:11 [INFO] [stdout] | [INFO] [stdout] 51 | pub const B6: u8 = 46; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A6` is never used [INFO] [stdout] --> src/bitboard.rs:52:11 [INFO] [stdout] | [INFO] [stdout] 52 | pub const A6: u8 = 47; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `H7` is never used [INFO] [stdout] --> src/bitboard.rs:53:11 [INFO] [stdout] | [INFO] [stdout] 53 | pub const H7: u8 = 48; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G7` is never used [INFO] [stdout] --> src/bitboard.rs:54:11 [INFO] [stdout] | [INFO] [stdout] 54 | pub const G7: u8 = 49; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F7` is never used [INFO] [stdout] --> src/bitboard.rs:55:11 [INFO] [stdout] | [INFO] [stdout] 55 | pub const F7: u8 = 50; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E7` is never used [INFO] [stdout] --> src/bitboard.rs:56:11 [INFO] [stdout] | [INFO] [stdout] 56 | pub const E7: u8 = 51; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D7` is never used [INFO] [stdout] --> src/bitboard.rs:57:11 [INFO] [stdout] | [INFO] [stdout] 57 | pub const D7: u8 = 52; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C7` is never used [INFO] [stdout] --> src/bitboard.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | pub const C7: u8 = 53; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B7` is never used [INFO] [stdout] --> src/bitboard.rs:59:11 [INFO] [stdout] | [INFO] [stdout] 59 | pub const B7: u8 = 54; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A7` is never used [INFO] [stdout] --> src/bitboard.rs:60:11 [INFO] [stdout] | [INFO] [stdout] 60 | pub const A7: u8 = 55; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `G8` is never used [INFO] [stdout] --> src/bitboard.rs:62:11 [INFO] [stdout] | [INFO] [stdout] 62 | pub const G8: u8 = 57; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `F8` is never used [INFO] [stdout] --> src/bitboard.rs:63:11 [INFO] [stdout] | [INFO] [stdout] 63 | pub const F8: u8 = 58; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `E8` is never used [INFO] [stdout] --> src/bitboard.rs:64:11 [INFO] [stdout] | [INFO] [stdout] 64 | pub const E8: u8 = 59; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `D8` is never used [INFO] [stdout] --> src/bitboard.rs:65:11 [INFO] [stdout] | [INFO] [stdout] 65 | pub const D8: u8 = 60; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `C8` is never used [INFO] [stdout] --> src/bitboard.rs:66:11 [INFO] [stdout] | [INFO] [stdout] 66 | pub const C8: u8 = 61; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B8` is never used [INFO] [stdout] --> src/bitboard.rs:67:11 [INFO] [stdout] | [INFO] [stdout] 67 | pub const B8: u8 = 62; [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_C` is never used [INFO] [stdout] --> src/bitboard.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | pub const FILE_C: u64 = 0x2020202020202020; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_D` is never used [INFO] [stdout] --> src/bitboard.rs:73:11 [INFO] [stdout] | [INFO] [stdout] 73 | pub const FILE_D: u64 = 0x1010101010101010; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_E` is never used [INFO] [stdout] --> src/bitboard.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const FILE_E: u64 = 0x0808080808080808; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_F` is never used [INFO] [stdout] --> src/bitboard.rs:75:11 [INFO] [stdout] | [INFO] [stdout] 75 | pub const FILE_F: u64 = 0x0404040404040404; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_2` is never used [INFO] [stdout] --> src/bitboard.rs:80:11 [INFO] [stdout] | [INFO] [stdout] 80 | pub const RANK_2: u64 = 0x000000000000FF00; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_3` is never used [INFO] [stdout] --> src/bitboard.rs:81:11 [INFO] [stdout] | [INFO] [stdout] 81 | pub const RANK_3: u64 = 0x0000000000FF0000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_4` is never used [INFO] [stdout] --> src/bitboard.rs:82:11 [INFO] [stdout] | [INFO] [stdout] 82 | pub const RANK_4: u64 = 0x00000000FF000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_5` is never used [INFO] [stdout] --> src/bitboard.rs:83:11 [INFO] [stdout] | [INFO] [stdout] 83 | pub const RANK_5: u64 = 0x000000FF00000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_6` is never used [INFO] [stdout] --> src/bitboard.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const RANK_6: u64 = 0x0000FF0000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_7` is never used [INFO] [stdout] --> src/bitboard.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const RANK_7: u64 = 0x00FF000000000000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WHITE_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:227:7 [INFO] [stdout] | [INFO] [stdout] 227 | const WHITE_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BLACK_KING_END_SCORE` is never used [INFO] [stdout] --> src/bitboard.rs:311:7 [INFO] [stdout] | [INFO] [stdout] 311 | const BLACK_KING_END_SCORE: [i32; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_north` is never used [INFO] [stdout] --> src/bitboard.rs:384:8 [INFO] [stdout] | [INFO] [stdout] 384 | pub fn shift_north(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_east` is never used [INFO] [stdout] --> src/bitboard.rs:392:8 [INFO] [stdout] | [INFO] [stdout] 392 | pub fn shift_east(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_south` is never used [INFO] [stdout] --> src/bitboard.rs:408:8 [INFO] [stdout] | [INFO] [stdout] 408 | pub fn shift_south(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_west` is never used [INFO] [stdout] --> src/bitboard.rs:416:8 [INFO] [stdout] | [INFO] [stdout] 416 | pub fn shift_west(bb: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bit` is never used [INFO] [stdout] --> src/bits.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn get_bit(n: u64, index: u8) -> u64 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BACK_RANK` is never used [INFO] [stdout] --> src/engine.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const BACK_RANK: [u8; 2] = [0, 7]; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TABLE_MODULUS` is never used [INFO] [stdout] --> src/engine.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const TABLE_MODULUS: usize = TABLE_SIZE - 1; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `transposition_table` is never read [INFO] [stdout] --> src/engine.rs:73:9 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct Engine { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 73 | pub transposition_table: pregen::TranspositionTable, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `go_perft` is never used [INFO] [stdout] --> src/engine.rs:872:8 [INFO] [stdout] | [INFO] [stdout] 872 | fn go_perft(engine: &mut Engine, depth: u8) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_en_passant` and `is_castle` are never used [INFO] [stdout] --> src/moves.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl Move { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn is_en_passant(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn is_castle(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `zobrist_key`, `depth`, `eval`, `node_type`, and `best_move` are never read [INFO] [stdout] --> src/pregen.rs:332:5 [INFO] [stdout] | [INFO] [stdout] 331 | pub struct TableEntry { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 332 | zobrist_key: u64, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 333 | depth: u16, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 334 | eval: i32, [INFO] [stdout] | ^^^^ [INFO] [stdout] 335 | node_type: u8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 336 | best_move: Option, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TableEntry` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `transpositions`, `pieces`, `en_passants`, `castling_rights`, and `colors` are never read [INFO] [stdout] --> src/pregen.rs:340:5 [INFO] [stdout] | [INFO] [stdout] 339 | pub struct TranspositionTable { [INFO] [stdout] | ------------------ fields in this struct [INFO] [stdout] 340 | transpositions: Vec, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 341 | [INFO] [stdout] 342 | pieces: [[[u64; 64]; 6]; 2], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 343 | en_passants: [u64; 64], [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 344 | castling_rights: [u64; 16], [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 345 | colors: [u64; 2], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `zobrist_hash` and `update_zobrist_hash` are never used [INFO] [stdout] --> src/pregen.rs:370:12 [INFO] [stdout] | [INFO] [stdout] 348 | impl TranspositionTable { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 370 | pub fn zobrist_hash(&self, board: &Board) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 1.38s [INFO] running `Command { std: "docker" "inspect" "c0967cee962c1de6dc57ea9bf25c24eceb6cb9191d7cacf0d13f003c4fa070d8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c0967cee962c1de6dc57ea9bf25c24eceb6cb9191d7cacf0d13f003c4fa070d8", kill_on_drop: false }` [INFO] [stdout] c0967cee962c1de6dc57ea9bf25c24eceb6cb9191d7cacf0d13f003c4fa070d8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 659bea09b823c43bdde538068d278aa25d6dff7aa0c69d2aa47b228eb9f67709 [INFO] running `Command { std: "docker" "start" "-a" "659bea09b823c43bdde538068d278aa25d6dff7aa0c69d2aa47b228eb9f67709", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::num` [INFO] [stderr] --> src/bitboard.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::num; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::bitboard::print_bitboard` [INFO] [stderr] --> src/bits.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | use crate::bitboard::print_bitboard; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/bits.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `sort::selection_sort_once` [INFO] [stderr] --> src/engine.rs:1:63 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::{bitboard::*, bits::*, board::*, moves::*, pregen, sort::selection_sort_once}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::*` [INFO] [stderr] --> src/pregen.rs:408:9 [INFO] [stderr] | [INFO] [stderr] 408 | use super::*; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mov` [INFO] [stderr] --> src/pregen.rs:401:54 [INFO] [stderr] | [INFO] [stderr] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mov` [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/pregen.rs:401:39 [INFO] [stderr] | [INFO] [stderr] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [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] warning: constant `H1` is never used [INFO] [stderr] --> src/bitboard.rs:5:11 [INFO] [stderr] | [INFO] [stderr] 5 | pub const H1: u8 = 0; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant `G1` is never used [INFO] [stderr] --> src/bitboard.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub const G1: u8 = 1; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F1` is never used [INFO] [stderr] --> src/bitboard.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub const F1: u8 = 2; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E1` is never used [INFO] [stderr] --> src/bitboard.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub const E1: u8 = 3; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D1` is never used [INFO] [stderr] --> src/bitboard.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub const D1: u8 = 4; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C1` is never used [INFO] [stderr] --> src/bitboard.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub const C1: u8 = 5; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B1` is never used [INFO] [stderr] --> src/bitboard.rs:11:11 [INFO] [stderr] | [INFO] [stderr] 11 | pub const B1: u8 = 6; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A1` is never used [INFO] [stderr] --> src/bitboard.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | pub const A1: u8 = 7; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H2` is never used [INFO] [stderr] --> src/bitboard.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const H2: u8 = 8; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G2` is never used [INFO] [stderr] --> src/bitboard.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub const G2: u8 = 9; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F2` is never used [INFO] [stderr] --> src/bitboard.rs:15:11 [INFO] [stderr] | [INFO] [stderr] 15 | pub const F2: u8 = 10; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E2` is never used [INFO] [stderr] --> src/bitboard.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | pub const E2: u8 = 11; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D2` is never used [INFO] [stderr] --> src/bitboard.rs:17:11 [INFO] [stderr] | [INFO] [stderr] 17 | pub const D2: u8 = 12; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C2` is never used [INFO] [stderr] --> src/bitboard.rs:18:11 [INFO] [stderr] | [INFO] [stderr] 18 | pub const C2: u8 = 13; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B2` is never used [INFO] [stderr] --> src/bitboard.rs:19:11 [INFO] [stderr] | [INFO] [stderr] 19 | pub const B2: u8 = 14; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A2` is never used [INFO] [stderr] --> src/bitboard.rs:20:11 [INFO] [stderr] | [INFO] [stderr] 20 | pub const A2: u8 = 15; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H3` is never used [INFO] [stderr] --> src/bitboard.rs:21:11 [INFO] [stderr] | [INFO] [stderr] 21 | pub const H3: u8 = 16; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G3` is never used [INFO] [stderr] --> src/bitboard.rs:22:11 [INFO] [stderr] | [INFO] [stderr] 22 | pub const G3: u8 = 17; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F3` is never used [INFO] [stderr] --> src/bitboard.rs:23:11 [INFO] [stderr] | [INFO] [stderr] 23 | pub const F3: u8 = 18; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E3` is never used [INFO] [stderr] --> src/bitboard.rs:24:11 [INFO] [stderr] | [INFO] [stderr] 24 | pub const E3: u8 = 19; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D3` is never used [INFO] [stderr] --> src/bitboard.rs:25:11 [INFO] [stderr] | [INFO] [stderr] 25 | pub const D3: u8 = 20; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C3` is never used [INFO] [stderr] --> src/bitboard.rs:26:11 [INFO] [stderr] | [INFO] [stderr] 26 | pub const C3: u8 = 21; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B3` is never used [INFO] [stderr] --> src/bitboard.rs:27:11 [INFO] [stderr] | [INFO] [stderr] 27 | pub const B3: u8 = 22; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A3` is never used [INFO] [stderr] --> src/bitboard.rs:28:11 [INFO] [stderr] | [INFO] [stderr] 28 | pub const A3: u8 = 23; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H4` is never used [INFO] [stderr] --> src/bitboard.rs:29:11 [INFO] [stderr] | [INFO] [stderr] 29 | pub const H4: u8 = 24; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G4` is never used [INFO] [stderr] --> src/bitboard.rs:30:11 [INFO] [stderr] | [INFO] [stderr] 30 | pub const G4: u8 = 25; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F4` is never used [INFO] [stderr] --> src/bitboard.rs:31:11 [INFO] [stderr] | [INFO] [stderr] 31 | pub const F4: u8 = 26; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E4` is never used [INFO] [stderr] --> src/bitboard.rs:32:11 [INFO] [stderr] | [INFO] [stderr] 32 | pub const E4: u8 = 27; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D4` is never used [INFO] [stderr] --> src/bitboard.rs:33:11 [INFO] [stderr] | [INFO] [stderr] 33 | pub const D4: u8 = 28; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C4` is never used [INFO] [stderr] --> src/bitboard.rs:34:11 [INFO] [stderr] | [INFO] [stderr] 34 | pub const C4: u8 = 29; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B4` is never used [INFO] [stderr] --> src/bitboard.rs:35:11 [INFO] [stderr] | [INFO] [stderr] 35 | pub const B4: u8 = 30; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A4` is never used [INFO] [stderr] --> src/bitboard.rs:36:11 [INFO] [stderr] | [INFO] [stderr] 36 | pub const A4: u8 = 31; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H5` is never used [INFO] [stderr] --> src/bitboard.rs:37:11 [INFO] [stderr] | [INFO] [stderr] 37 | pub const H5: u8 = 32; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G5` is never used [INFO] [stderr] --> src/bitboard.rs:38:11 [INFO] [stderr] | [INFO] [stderr] 38 | pub const G5: u8 = 33; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F5` is never used [INFO] [stderr] --> src/bitboard.rs:39:11 [INFO] [stderr] | [INFO] [stderr] 39 | pub const F5: u8 = 34; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E5` is never used [INFO] [stderr] --> src/bitboard.rs:40:11 [INFO] [stderr] | [INFO] [stderr] 40 | pub const E5: u8 = 35; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D5` is never used [INFO] [stderr] --> src/bitboard.rs:41:11 [INFO] [stderr] | [INFO] [stderr] 41 | pub const D5: u8 = 36; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C5` is never used [INFO] [stderr] --> src/bitboard.rs:42:11 [INFO] [stderr] | [INFO] [stderr] 42 | pub const C5: u8 = 37; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B5` is never used [INFO] [stderr] --> src/bitboard.rs:43:11 [INFO] [stderr] | [INFO] [stderr] 43 | pub const B5: u8 = 38; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A5` is never used [INFO] [stderr] --> src/bitboard.rs:44:11 [INFO] [stderr] | [INFO] [stderr] 44 | pub const A5: u8 = 39; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H6` is never used [INFO] [stderr] --> src/bitboard.rs:45:11 [INFO] [stderr] | [INFO] [stderr] 45 | pub const H6: u8 = 40; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G6` is never used [INFO] [stderr] --> src/bitboard.rs:46:11 [INFO] [stderr] | [INFO] [stderr] 46 | pub const G6: u8 = 41; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F6` is never used [INFO] [stderr] --> src/bitboard.rs:47:11 [INFO] [stderr] | [INFO] [stderr] 47 | pub const F6: u8 = 42; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E6` is never used [INFO] [stderr] --> src/bitboard.rs:48:11 [INFO] [stderr] | [INFO] [stderr] 48 | pub const E6: u8 = 43; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D6` is never used [INFO] [stderr] --> src/bitboard.rs:49:11 [INFO] [stderr] | [INFO] [stderr] 49 | pub const D6: u8 = 44; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C6` is never used [INFO] [stderr] --> src/bitboard.rs:50:11 [INFO] [stderr] | [INFO] [stderr] 50 | pub const C6: u8 = 45; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B6` is never used [INFO] [stderr] --> src/bitboard.rs:51:11 [INFO] [stderr] | [INFO] [stderr] 51 | pub const B6: u8 = 46; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A6` is never used [INFO] [stderr] --> src/bitboard.rs:52:11 [INFO] [stderr] | [INFO] [stderr] 52 | pub const A6: u8 = 47; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H7` is never used [INFO] [stderr] --> src/bitboard.rs:53:11 [INFO] [stderr] | [INFO] [stderr] 53 | pub const H7: u8 = 48; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G7` is never used [INFO] [stderr] --> src/bitboard.rs:54:11 [INFO] [stderr] | [INFO] [stderr] 54 | pub const G7: u8 = 49; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F7` is never used [INFO] [stderr] --> src/bitboard.rs:55:11 [INFO] [stderr] | [INFO] [stderr] 55 | pub const F7: u8 = 50; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E7` is never used [INFO] [stderr] --> src/bitboard.rs:56:11 [INFO] [stderr] | [INFO] [stderr] 56 | pub const E7: u8 = 51; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D7` is never used [INFO] [stderr] --> src/bitboard.rs:57:11 [INFO] [stderr] | [INFO] [stderr] 57 | pub const D7: u8 = 52; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C7` is never used [INFO] [stderr] --> src/bitboard.rs:58:11 [INFO] [stderr] | [INFO] [stderr] 58 | pub const C7: u8 = 53; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B7` is never used [INFO] [stderr] --> src/bitboard.rs:59:11 [INFO] [stderr] | [INFO] [stderr] 59 | pub const B7: u8 = 54; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A7` is never used [INFO] [stderr] --> src/bitboard.rs:60:11 [INFO] [stderr] | [INFO] [stderr] 60 | pub const A7: u8 = 55; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `H8` is never used [INFO] [stderr] --> src/bitboard.rs:61:11 [INFO] [stderr] | [INFO] [stderr] 61 | pub const H8: u8 = 56; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `G8` is never used [INFO] [stderr] --> src/bitboard.rs:62:11 [INFO] [stderr] | [INFO] [stderr] 62 | pub const G8: u8 = 57; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `F8` is never used [INFO] [stderr] --> src/bitboard.rs:63:11 [INFO] [stderr] | [INFO] [stderr] 63 | pub const F8: u8 = 58; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `E8` is never used [INFO] [stderr] --> src/bitboard.rs:64:11 [INFO] [stderr] | [INFO] [stderr] 64 | pub const E8: u8 = 59; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `D8` is never used [INFO] [stderr] --> src/bitboard.rs:65:11 [INFO] [stderr] | [INFO] [stderr] 65 | pub const D8: u8 = 60; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `C8` is never used [INFO] [stderr] --> src/bitboard.rs:66:11 [INFO] [stderr] | [INFO] [stderr] 66 | pub const C8: u8 = 61; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `B8` is never used [INFO] [stderr] --> src/bitboard.rs:67:11 [INFO] [stderr] | [INFO] [stderr] 67 | pub const B8: u8 = 62; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A8` is never used [INFO] [stderr] --> src/bitboard.rs:68:11 [INFO] [stderr] | [INFO] [stderr] 68 | pub const A8: u8 = 63; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_A` is never used [INFO] [stderr] --> src/bitboard.rs:70:11 [INFO] [stderr] | [INFO] [stderr] 70 | pub const FILE_A: u64 = 0x8080808080808080; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_B` is never used [INFO] [stderr] --> src/bitboard.rs:71:11 [INFO] [stderr] | [INFO] [stderr] 71 | pub const FILE_B: u64 = 0x4040404040404040; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_C` is never used [INFO] [stderr] --> src/bitboard.rs:72:11 [INFO] [stderr] | [INFO] [stderr] 72 | pub const FILE_C: u64 = 0x2020202020202020; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_D` is never used [INFO] [stderr] --> src/bitboard.rs:73:11 [INFO] [stderr] | [INFO] [stderr] 73 | pub const FILE_D: u64 = 0x1010101010101010; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_E` is never used [INFO] [stderr] --> src/bitboard.rs:74:11 [INFO] [stderr] | [INFO] [stderr] 74 | pub const FILE_E: u64 = 0x0808080808080808; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_F` is never used [INFO] [stderr] --> src/bitboard.rs:75:11 [INFO] [stderr] | [INFO] [stderr] 75 | pub const FILE_F: u64 = 0x0404040404040404; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_G` is never used [INFO] [stderr] --> src/bitboard.rs:76:11 [INFO] [stderr] | [INFO] [stderr] 76 | pub const FILE_G: u64 = 0x0202020202020202; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `FILE_H` is never used [INFO] [stderr] --> src/bitboard.rs:77:11 [INFO] [stderr] | [INFO] [stderr] 77 | pub const FILE_H: u64 = 0x0101010101010101; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_1` is never used [INFO] [stderr] --> src/bitboard.rs:79:11 [INFO] [stderr] | [INFO] [stderr] 79 | pub const RANK_1: u64 = 0x00000000000000FF; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_2` is never used [INFO] [stderr] --> src/bitboard.rs:80:11 [INFO] [stderr] | [INFO] [stderr] 80 | pub const RANK_2: u64 = 0x000000000000FF00; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_3` is never used [INFO] [stderr] --> src/bitboard.rs:81:11 [INFO] [stderr] | [INFO] [stderr] 81 | pub const RANK_3: u64 = 0x0000000000FF0000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_4` is never used [INFO] [stderr] --> src/bitboard.rs:82:11 [INFO] [stderr] | [INFO] [stderr] 82 | pub const RANK_4: u64 = 0x00000000FF000000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_5` is never used [INFO] [stderr] --> src/bitboard.rs:83:11 [INFO] [stderr] | [INFO] [stderr] 83 | pub const RANK_5: u64 = 0x000000FF00000000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_6` is never used [INFO] [stderr] --> src/bitboard.rs:84:11 [INFO] [stderr] | [INFO] [stderr] 84 | pub const RANK_6: u64 = 0x0000FF0000000000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_7` is never used [INFO] [stderr] --> src/bitboard.rs:85:11 [INFO] [stderr] | [INFO] [stderr] 85 | pub const RANK_7: u64 = 0x00FF000000000000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANK_8` is never used [INFO] [stderr] --> src/bitboard.rs:86:11 [INFO] [stderr] | [INFO] [stderr] 86 | pub const RANK_8: u64 = 0xFF00000000000000; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A8_H1` is never used [INFO] [stderr] --> src/bitboard.rs:88:11 [INFO] [stderr] | [INFO] [stderr] 88 | pub const A8_H1: u64 = 0x08040201008040201; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `A1_H8` is never used [INFO] [stderr] --> src/bitboard.rs:89:11 [INFO] [stderr] | [INFO] [stderr] 89 | pub const A1_H8: u64 = 0x00102040810204080; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ROOK_MAGIC_SHIFT` is never used [INFO] [stderr] --> src/bitboard.rs:92:11 [INFO] [stderr] | [INFO] [stderr] 92 | pub const ROOK_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ROOK_MAGIC` is never used [INFO] [stderr] --> src/bitboard.rs:104:11 [INFO] [stderr] | [INFO] [stderr] 104 | pub const ROOK_MAGIC: [u64; 64] = [ [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BISHOP_MAGIC_SHIFT` is never used [INFO] [stderr] --> src/bitboard.rs:124:11 [INFO] [stderr] | [INFO] [stderr] 124 | pub const BISHOP_MAGIC_SHIFT: [u64; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BISHOP_MAGIC` is never used [INFO] [stderr] --> src/bitboard.rs:136:11 [INFO] [stderr] | [INFO] [stderr] 136 | pub const BISHOP_MAGIC: [u64; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_ROOK_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:156:7 [INFO] [stderr] | [INFO] [stderr] 156 | const WHITE_ROOK_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_BISHOP_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:167:7 [INFO] [stderr] | [INFO] [stderr] 167 | const WHITE_BISHOP_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_KNIGHT_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:179:7 [INFO] [stderr] | [INFO] [stderr] 179 | const WHITE_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_QUEEN_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:191:7 [INFO] [stderr] | [INFO] [stderr] 191 | const WHITE_QUEEN_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_PAWN_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:203:7 [INFO] [stderr] | [INFO] [stderr] 203 | const WHITE_PAWN_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_KING_MIDDLE_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:215:7 [INFO] [stderr] | [INFO] [stderr] 215 | const WHITE_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE_KING_END_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:227:7 [INFO] [stderr] | [INFO] [stderr] 227 | const WHITE_KING_END_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_ROOK_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:239:7 [INFO] [stderr] | [INFO] [stderr] 239 | const BLACK_ROOK_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_BISHOP_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:251:7 [INFO] [stderr] | [INFO] [stderr] 251 | const BLACK_BISHOP_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_KNIGHT_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:263:7 [INFO] [stderr] | [INFO] [stderr] 263 | const BLACK_KNIGHT_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_QUEEN_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:275:7 [INFO] [stderr] | [INFO] [stderr] 275 | const BLACK_QUEEN_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_PAWN_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:287:7 [INFO] [stderr] | [INFO] [stderr] 287 | const BLACK_PAWN_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_KING_MIDDLE_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:299:7 [INFO] [stderr] | [INFO] [stderr] 299 | const BLACK_KING_MIDDLE_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK_KING_END_SCORE` is never used [INFO] [stderr] --> src/bitboard.rs:311:7 [INFO] [stderr] | [INFO] [stderr] 311 | const BLACK_KING_END_SCORE: [i32; 64] = [ [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `SQUARE_SCORES` is never used [INFO] [stderr] --> src/bitboard.rs:322:11 [INFO] [stderr] | [INFO] [stderr] 322 | pub const SQUARE_SCORES: [[[i32; 64]; 6]; 2] = [ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `print_bitboard` is never used [INFO] [stderr] --> src/bitboard.rs:341:8 [INFO] [stderr] | [INFO] [stderr] 341 | pub fn print_bitboard(bb: u64) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_rank` is never used [INFO] [stderr] --> src/bitboard.rs:357:8 [INFO] [stderr] | [INFO] [stderr] 357 | pub fn get_rank(square: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_file` is never used [INFO] [stderr] --> src/bitboard.rs:361:8 [INFO] [stderr] | [INFO] [stderr] 361 | pub fn get_file(square: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `if_color` is never used [INFO] [stderr] --> src/bitboard.rs:365:8 [INFO] [stderr] | [INFO] [stderr] 365 | pub fn if_color(color: usize, white: u8, black: u8) -> u8 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_vertical` is never used [INFO] [stderr] --> src/bitboard.rs:374:8 [INFO] [stderr] | [INFO] [stderr] 374 | pub fn shift_vertical(bb: u64, color: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_vertical_index` is never used [INFO] [stderr] --> src/bitboard.rs:380:8 [INFO] [stderr] | [INFO] [stderr] 380 | pub fn shift_vertical_index(square: u8, color: usize) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_north` is never used [INFO] [stderr] --> src/bitboard.rs:384:8 [INFO] [stderr] | [INFO] [stderr] 384 | pub fn shift_north(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_north_east` is never used [INFO] [stderr] --> src/bitboard.rs:388:8 [INFO] [stderr] | [INFO] [stderr] 388 | pub fn shift_north_east(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_east` is never used [INFO] [stderr] --> src/bitboard.rs:392:8 [INFO] [stderr] | [INFO] [stderr] 392 | pub fn shift_east(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_east_n` is never used [INFO] [stderr] --> src/bitboard.rs:396:8 [INFO] [stderr] | [INFO] [stderr] 396 | pub fn shift_east_n(bb: u64, n: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_south_east` is never used [INFO] [stderr] --> src/bitboard.rs:404:8 [INFO] [stderr] | [INFO] [stderr] 404 | pub fn shift_south_east(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_south` is never used [INFO] [stderr] --> src/bitboard.rs:408:8 [INFO] [stderr] | [INFO] [stderr] 408 | pub fn shift_south(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_south_west` is never used [INFO] [stderr] --> src/bitboard.rs:412:8 [INFO] [stderr] | [INFO] [stderr] 412 | pub fn shift_south_west(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_west` is never used [INFO] [stderr] --> src/bitboard.rs:416:8 [INFO] [stderr] | [INFO] [stderr] 416 | pub fn shift_west(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_west_n` is never used [INFO] [stderr] --> src/bitboard.rs:420:8 [INFO] [stderr] | [INFO] [stderr] 420 | pub fn shift_west_n(bb: u64, n: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `shift_north_west` is never used [INFO] [stderr] --> src/bitboard.rs:428:8 [INFO] [stderr] | [INFO] [stderr] 428 | pub fn shift_north_west(bb: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `set_bit` is never used [INFO] [stderr] --> src/bits.rs:1:8 [INFO] [stderr] | [INFO] [stderr] 1 | pub fn set_bit(n: u64, index: u8) -> u64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `clear_bit` is never used [INFO] [stderr] --> src/bits.rs:5:8 [INFO] [stderr] | [INFO] [stderr] 5 | pub fn clear_bit(n: u64, index: u8) -> u64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_bit` is never used [INFO] [stderr] --> src/bits.rs:9:8 [INFO] [stderr] | [INFO] [stderr] 9 | pub fn test_bit(n: u64, index: u8) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_bit` is never used [INFO] [stderr] --> src/bits.rs:14:8 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn get_bit(n: u64, index: u8) -> u64 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `isolate_bit` is never used [INFO] [stderr] --> src/bits.rs:19:8 [INFO] [stderr] | [INFO] [stderr] 19 | pub fn isolate_bit(n: u64, index: u8) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `clear_lsb` is never used [INFO] [stderr] --> src/bits.rs:24:8 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn clear_lsb(n: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `WHITE` is never used [INFO] [stderr] --> src/board.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub const WHITE: usize = 0; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BLACK` is never used [INFO] [stderr] --> src/board.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub const BLACK: usize = 1; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ALL` is never used [INFO] [stderr] --> src/board.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub const ALL: usize = 2; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `ROOK` is never used [INFO] [stderr] --> src/board.rs:12:11 [INFO] [stderr] | [INFO] [stderr] 12 | pub const ROOK: usize = 0; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BISHOP` is never used [INFO] [stderr] --> src/board.rs:13:11 [INFO] [stderr] | [INFO] [stderr] 13 | pub const BISHOP: usize = 1; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `KNIGHT` is never used [INFO] [stderr] --> src/board.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | pub const KNIGHT: usize = 2; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `QUEEN` is never used [INFO] [stderr] --> src/board.rs:15:11 [INFO] [stderr] | [INFO] [stderr] 15 | pub const QUEEN: usize = 3; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PAWN` is never used [INFO] [stderr] --> src/board.rs:16:11 [INFO] [stderr] | [INFO] [stderr] 16 | pub const PAWN: usize = 4; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `KING` is never used [INFO] [stderr] --> src/board.rs:17:11 [INFO] [stderr] | [INFO] [stderr] 17 | pub const KING: usize = 5; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `NONE` is never used [INFO] [stderr] --> src/board.rs:18:11 [INFO] [stderr] | [INFO] [stderr] 18 | pub const NONE: usize = 6; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PIECE_VALUE` is never used [INFO] [stderr] --> src/board.rs:20:11 [INFO] [stderr] | [INFO] [stderr] 20 | pub const PIECE_VALUE: [i32; 5] = [600, 400, 400, 1200, 100]; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Board` is never constructed [INFO] [stderr] --> src/board.rs:22:12 [INFO] [stderr] | [INFO] [stderr] 22 | pub struct Board { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/board.rs:32:12 [INFO] [stderr] | [INFO] [stderr] 31 | impl Board { [INFO] [stderr] | ---------- associated items in this implementation [INFO] [stderr] 32 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 43 | pub fn reset(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 52 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 167 | pub fn player_score(&self, color: usize) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 184 | pub fn swap_color(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 188 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 267 | pub fn unmake_move(&mut self, mov: &Move, state: PreMoveState) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 313 | pub fn get_piece_on_square(&self, color: usize, square: u8) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 323 | pub fn add_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 327 | pub fn remove_piece(&mut self, piece: usize, color: usize, square: u8) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 331 | pub fn move_piece(&mut self, piece: usize, color: usize, from: u8, to: u8) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 336 | pub fn update_occupancy(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `BACK_RANK` is never used [INFO] [stderr] --> src/engine.rs:4:7 [INFO] [stderr] | [INFO] [stderr] 4 | const BACK_RANK: [u8; 2] = [0, 7]; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PAWN_RANK` is never used [INFO] [stderr] --> src/engine.rs:5:7 [INFO] [stderr] | [INFO] [stderr] 5 | const PAWN_RANK: [u8; 2] = [1, 6]; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PENULT_RANK` is never used [INFO] [stderr] --> src/engine.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | const PENULT_RANK: [u8; 2] = [6, 1]; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CASTLE_SAFE_SQUARES` is never used [INFO] [stderr] --> src/engine.rs:8:7 [INFO] [stderr] | [INFO] [stderr] 8 | const CASTLE_SAFE_SQUARES: [[u64; 2]; 2] = [[0xE, 0x38], [0xE00000000000000, 0x3800000000000000]]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CASTLE_OPEN_SQUARES` is never used [INFO] [stderr] --> src/engine.rs:9:7 [INFO] [stderr] | [INFO] [stderr] 9 | const CASTLE_OPEN_SQUARES: [[u64; 2]; 2] = [[0x6, 0x70], [0x600000000000000, 0x7000000000000000]]; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `INFINITY` is never used [INFO] [stderr] --> src/engine.rs:11:7 [INFO] [stderr] | [INFO] [stderr] 11 | const INFINITY: i32 = 0x0FFFFFFF; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `TABLE_SIZE` is never used [INFO] [stderr] --> src/engine.rs:13:7 [INFO] [stderr] | [INFO] [stderr] 13 | const TABLE_SIZE: usize = 2 << 5; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `TABLE_MODULUS` is never used [INFO] [stderr] --> src/engine.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | const TABLE_MODULUS: usize = TABLE_SIZE - 1; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Engine` is never constructed [INFO] [stderr] --> src/engine.rs:16:12 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct Engine { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/engine.rs:77:12 [INFO] [stderr] | [INFO] [stderr] 76 | impl Engine { [INFO] [stderr] | ----------- associated items in this implementation [INFO] [stderr] 77 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 100 | pub fn reset(&mut self) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] ... [INFO] [stderr] 111 | pub fn load_fen(&mut self, fen: &str) -> Result<(), String> { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 119 | pub fn best_move(&mut self, depth: u16) -> Option { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 145 | fn negamax(&mut self, from_root: u16, from_target: u16, mut alpha: i32, beta: i32) -> i32 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 175 | fn quiesce(&mut self, mut alpha: i32, beta: i32) -> i32 { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | fn evaluate_position(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 210 | fn evaluate_moves(&self, moves: &[Move]) -> Vec<(i32, usize)> { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 218 | fn evaluate_move(&self, mov: &Move) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 240 | pub fn make_move(&mut self, mov: &Move) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 254 | pub fn unmake_move(&mut self, mov: &Move) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 260 | fn update_threats(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 325 | fn update_en_passant_pin(&mut self, king_to_enemy_mask: u64, enemy_blockers: u64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 350 | fn update_pins_and_checks(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 452 | pub fn generate_moves(&mut self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 471 | fn rook_moves(&mut self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 507 | fn bishop_moves(&mut self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 545 | fn queen_moves(&mut self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 590 | fn knight_moves(&mut self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 617 | fn pawn_moves(&self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 688 | fn king_moves(&mut self, list: &mut Vec) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `STARTING_FEN` is never used [INFO] [stderr] --> src/engine.rs:729:11 [INFO] [stderr] | [INFO] [stderr] 729 | const STARTING_FEN: &str = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `print_state` is never used [INFO] [stderr] --> src/engine.rs:731:8 [INFO] [stderr] | [INFO] [stderr] 731 | fn print_state(game: &mut Engine) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `print_board` is never used [INFO] [stderr] --> src/engine.rs:798:8 [INFO] [stderr] | [INFO] [stderr] 798 | fn print_board(board: &Board) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `perft` is never used [INFO] [stderr] --> src/engine.rs:855:8 [INFO] [stderr] | [INFO] [stderr] 855 | fn perft(engine: &mut Engine, depth: u8) -> usize { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `go_perft` is never used [INFO] [stderr] --> src/engine.rs:872:8 [INFO] [stderr] | [INFO] [stderr] 872 | fn go_perft(engine: &mut Engine, depth: u8) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `CAPTURE` is never used [INFO] [stderr] --> src/moves.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub const CAPTURE: u8 = 1; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PROMOTION` is never used [INFO] [stderr] --> src/moves.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | pub const PROMOTION: u8 = 1 << 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `KING_SIDE` is never used [INFO] [stderr] --> src/moves.rs:8:11 [INFO] [stderr] | [INFO] [stderr] 8 | pub const KING_SIDE: u8 = 1 << 2; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `QUEEN_SIDE` is never used [INFO] [stderr] --> src/moves.rs:9:11 [INFO] [stderr] | [INFO] [stderr] 9 | pub const QUEEN_SIDE: u8 = 2 << 2; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `EN_PASSANT_MOVE` is never used [INFO] [stderr] --> src/moves.rs:10:11 [INFO] [stderr] | [INFO] [stderr] 10 | pub const EN_PASSANT_MOVE: u8 = 1 << 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `EN_PASSANT_CAP` is never used [INFO] [stderr] --> src/moves.rs:11:11 [INFO] [stderr] | [INFO] [stderr] 11 | pub const EN_PASSANT_CAP: u8 = 2 << 4; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Move` is never constructed [INFO] [stderr] --> src/moves.rs:15:12 [INFO] [stderr] | [INFO] [stderr] 15 | pub struct Move { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/moves.rs:23:11 [INFO] [stderr] | [INFO] [stderr] 22 | impl Move { [INFO] [stderr] | --------- associated items in this implementation [INFO] [stderr] 23 | const CAPTURE_MASK: u8 = CAPTURE; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 24 | const PROMOTION_MASK: u8 = PROMOTION; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 25 | const CASTLING_MASK: u8 = KING_SIDE | QUEEN_SIDE; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 26 | const EN_PASSANT_MASK: u8 = EN_PASSANT_MOVE | EN_PASSANT_CAP; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 27 | [INFO] [stderr] 28 | pub fn new(piece: usize, from: u8, to: u8, flags: u8) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 37 | pub fn is_capture(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 41 | pub fn is_promotion(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 45 | pub fn is_en_passant(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 49 | pub fn is_castle(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 53 | pub fn get_castling_bits(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 57 | pub fn get_en_pass_bits(&self) -> u8 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `IndexOfNextBest` is never constructed [INFO] [stderr] --> src/moves.rs:62:12 [INFO] [stderr] | [INFO] [stderr] 62 | pub struct IndexOfNextBest { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/moves.rs:68:12 [INFO] [stderr] | [INFO] [stderr] 67 | impl IndexOfNextBest { [INFO] [stderr] | -------------------- associated function in this implementation [INFO] [stderr] 68 | pub fn new(evals: Vec<(i32, usize)>) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function `moves_from_bitboard` is never used [INFO] [stderr] --> src/moves.rs:90:8 [INFO] [stderr] | [INFO] [stderr] 90 | pub fn moves_from_bitboard( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `PreMoveState` is never constructed [INFO] [stderr] --> src/moves.rs:106:12 [INFO] [stderr] | [INFO] [stderr] 106 | pub struct PreMoveState { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `EN_PASSANT_MASK`, `new`, `get_castling_rights`, `get_en_passant`, and `get_captured_piece` are never used [INFO] [stderr] --> src/moves.rs:111:11 [INFO] [stderr] | [INFO] [stderr] 110 | impl PreMoveState { [INFO] [stderr] | ----------------- associated items in this implementation [INFO] [stderr] 111 | const EN_PASSANT_MASK: u16 = 0b111111 << 4; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 112 | [INFO] [stderr] 113 | pub fn new(castling_rights: [[bool; 2]; 2], en_passant: u64, captured_piece: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 126 | pub fn get_castling_rights(&self) -> [[bool; 2]; 2] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 136 | pub fn get_en_passant(&self) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 140 | pub fn get_captured_piece(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Rays` is never constructed [INFO] [stderr] --> src/pregen.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Rays(pub [[u64; 64]; 8]); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/pregen.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 11 | impl Rays { [INFO] [stderr] | --------- associated function in this implementation [INFO] [stderr] 12 | pub fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `BlockerMasks` is never constructed [INFO] [stderr] --> src/pregen.rs:67:12 [INFO] [stderr] | [INFO] [stderr] 67 | pub struct BlockerMasks(pub [[u64; 64]; 2]); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/pregen.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 69 | impl BlockerMasks { [INFO] [stderr] | ----------------- associated function in this implementation [INFO] [stderr] 70 | pub fn new(rays: &Rays) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `AttackSets` is never constructed [INFO] [stderr] --> src/pregen.rs:99:12 [INFO] [stderr] | [INFO] [stderr] 99 | pub struct AttackSets { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple associated items are never used [INFO] [stderr] --> src/pregen.rs:110:12 [INFO] [stderr] | [INFO] [stderr] 109 | impl AttackSets { [INFO] [stderr] | --------------- associated items in this implementation [INFO] [stderr] 110 | pub fn new(rays: &Rays, blocker_masks: &BlockerMasks) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 128 | pub fn get_rook_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 134 | pub fn get_bishop_attacks(&self, square: usize, blockers: u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 140 | fn rook(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 168 | fn bishop(rays: &Rays, blocker_masks: &BlockerMasks) -> (Vec, [usize; 64]) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | fn knight() -> [u64; 64] { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 205 | fn king() -> [u64; 64] { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 214 | fn pawn() -> [[u64; 64]; 2] { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `knight_attack` is never used [INFO] [stderr] --> src/pregen.rs:226:8 [INFO] [stderr] | [INFO] [stderr] 226 | pub fn knight_attack(square: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `king_attack` is never used [INFO] [stderr] --> src/pregen.rs:235:8 [INFO] [stderr] | [INFO] [stderr] 235 | pub fn king_attack(square: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `pawn_attack` is never used [INFO] [stderr] --> src/pregen.rs:244:8 [INFO] [stderr] | [INFO] [stderr] 244 | pub fn pawn_attack(square: usize, color: usize) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `rook_attack` is never used [INFO] [stderr] --> src/pregen.rs:254:8 [INFO] [stderr] | [INFO] [stderr] 254 | pub fn rook_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `bishop_attack` is never used [INFO] [stderr] --> src/pregen.rs:292:8 [INFO] [stderr] | [INFO] [stderr] 292 | pub fn bishop_attack(square: u64, blockers: u64, rays: &Rays) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TableEntry` is never constructed [INFO] [stderr] --> src/pregen.rs:331:12 [INFO] [stderr] | [INFO] [stderr] 331 | pub struct TableEntry { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `TranspositionTable` is never constructed [INFO] [stderr] --> src/pregen.rs:339:12 [INFO] [stderr] | [INFO] [stderr] 339 | pub struct TranspositionTable { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `zobrist_hash`, and `update_zobrist_hash` are never used [INFO] [stderr] --> src/pregen.rs:349:12 [INFO] [stderr] | [INFO] [stderr] 348 | impl TranspositionTable { [INFO] [stderr] | ----------------------- associated items in this implementation [INFO] [stderr] 349 | pub fn new(size: usize) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 370 | pub fn zobrist_hash(&self, board: &Board) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `parse_string` is never used [INFO] [stderr] --> src/square.rs:3:8 [INFO] [stderr] | [INFO] [stderr] 3 | pub fn parse_string(square: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `to_string` is never used [INFO] [stderr] --> src/square.rs:24:8 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn to_string(square: u8) -> String { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `XORShift64` is never constructed [INFO] [stderr] --> src/rand.rs:2:12 [INFO] [stderr] | [INFO] [stderr] 2 | pub struct XORShift64 { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `rand` are never used [INFO] [stderr] --> src/rand.rs:7:12 [INFO] [stderr] | [INFO] [stderr] 6 | impl XORShift64 { [INFO] [stderr] | --------------- associated items in this implementation [INFO] [stderr] 7 | pub fn new(seed: u64) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 11 | pub fn rand(&mut self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `selection_sort_once` is never used [INFO] [stderr] --> src/sort.rs:4:8 [INFO] [stderr] | [INFO] [stderr] 4 | pub fn selection_sort_once(evals: &mut [(i32, usize)]) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `chess-engine` (lib) generated 190 warnings (run `cargo fix --lib -p chess-engine` to apply 6 suggestions) [INFO] [stderr] warning: unused variable: `bm` [INFO] [stderr] --> src/pregen.rs:496:13 [INFO] [stderr] | [INFO] [stderr] 496 | let bm = BlockerMasks::new(&rays); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_bm` [INFO] [stderr] [INFO] [stderr] warning: constant `G1` is never used [INFO] [stderr] --> src/bitboard.rs:6:11 [INFO] [stderr] | [INFO] [stderr] 6 | pub const G1: u8 = 1; [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: field `transposition_table` is never read [INFO] [stderr] --> src/engine.rs:73:9 [INFO] [stderr] | [INFO] [stderr] 16 | pub struct Engine { [INFO] [stderr] | ------ field in this struct [INFO] [stderr] ... [INFO] [stderr] 73 | pub transposition_table: pregen::TranspositionTable, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `is_en_passant` and `is_castle` are never used [INFO] [stderr] --> src/moves.rs:45:12 [INFO] [stderr] | [INFO] [stderr] 22 | impl Move { [INFO] [stderr] | --------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 45 | pub fn is_en_passant(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 49 | pub fn is_castle(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `zobrist_key`, `depth`, `eval`, `node_type`, and `best_move` are never read [INFO] [stderr] --> src/pregen.rs:332:5 [INFO] [stderr] | [INFO] [stderr] 331 | pub struct TableEntry { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 332 | zobrist_key: u64, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 333 | depth: u16, [INFO] [stderr] | ^^^^^ [INFO] [stderr] 334 | eval: i32, [INFO] [stderr] | ^^^^ [INFO] [stderr] 335 | node_type: u8, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] 336 | best_move: Option, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TableEntry` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `transpositions`, `pieces`, `en_passants`, `castling_rights`, and `colors` are never read [INFO] [stderr] --> src/pregen.rs:340:5 [INFO] [stderr] | [INFO] [stderr] 339 | pub struct TranspositionTable { [INFO] [stderr] | ------------------ fields in this struct [INFO] [stderr] 340 | transpositions: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] 341 | [INFO] [stderr] 342 | pieces: [[[u64; 64]; 6]; 2], [INFO] [stderr] | ^^^^^^ [INFO] [stderr] 343 | en_passants: [u64; 64], [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 344 | castling_rights: [u64; 16], [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] 345 | colors: [u64; 2], [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `zobrist_hash` and `update_zobrist_hash` are never used [INFO] [stderr] --> src/pregen.rs:370:12 [INFO] [stderr] | [INFO] [stderr] 348 | impl TranspositionTable { [INFO] [stderr] | ----------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 370 | pub fn zobrist_hash(&self, board: &Board) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 401 | pub fn update_zobrist_hash(&self, mut hash: u64, mov: &Move) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `chess-engine` (lib test) generated 90 warnings (83 duplicates) [INFO] [stderr] Finished `test` profile [optimized + debuginfo] target(s) in 0.27s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/chess_engine-530b608649ff750b) [INFO] [stdout] [INFO] [stdout] running 12 tests [INFO] [stdout] test engine::tests::en_passant_test ... ok [INFO] [stdout] test bits::tests::rotate_test ... ok [INFO] [stdout] test pregen::tests::bit_subset ... ok [INFO] [stdout] test pregen::tests::bishop_moves ... ok [INFO] [stdout] test pregen::tests::blockers_mask ... ok [INFO] [stdout] test engine::tests::best_move_test ... ok [INFO] [stdout] test bits::tests::clear_lsb_test ... ok [INFO] [stdout] test pregen::tests::rook_moves ... ok [INFO] [stdout] test pregen::tests::rays ... ok [INFO] [stdout] test engine::tests::fen_test ... ok [INFO] [stdout] test pregen::tests::magic_rook_test ... ok [INFO] [stdout] test engine::tests::generation_test has been running for over 60 seconds [ERROR] error running command: no output for 300 seconds [INFO] running `Command { std: "docker" "inspect" "659bea09b823c43bdde538068d278aa25d6dff7aa0c69d2aa47b228eb9f67709", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "659bea09b823c43bdde538068d278aa25d6dff7aa0c69d2aa47b228eb9f67709", kill_on_drop: false }` [INFO] [stdout] 659bea09b823c43bdde538068d278aa25d6dff7aa0c69d2aa47b228eb9f67709