[INFO] cloning repository https://github.com/AbdelrahmanAbdelhalim/RustyRaven
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AbdelrahmanAbdelhalim/RustyRaven" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbdelrahmanAbdelhalim%2FRustyRaven", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbdelrahmanAbdelhalim%2FRustyRaven'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ef0a6e36f129742dfe46acecd4da7dd4e3a5fe47
[INFO] checking AbdelrahmanAbdelhalim/RustyRaven against master#3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0 for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbdelrahmanAbdelhalim%2FRustyRaven" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AbdelrahmanAbdelhalim/RustyRaven
[INFO] finished tweaking git repo https://github.com/AbdelrahmanAbdelhalim/RustyRaven
[INFO] tweaked toml for git repo https://github.com/AbdelrahmanAbdelhalim/RustyRaven written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AbdelrahmanAbdelhalim/RustyRaven on toolchain 3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AbdelrahmanAbdelhalim/RustyRaven 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" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8c0465e1c37b080d1b94f475cd316a098d2a3a15d3c975fc87c374bb9f166b67
[INFO] running `Command { std: "docker" "start" "-a" "8c0465e1c37b080d1b94f475cd316a098d2a3a15d3c975fc87c374bb9f166b67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8c0465e1c37b080d1b94f475cd316a098d2a3a15d3c975fc87c374bb9f166b67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c0465e1c37b080d1b94f475cd316a098d2a3a15d3c975fc87c374bb9f166b67", kill_on_drop: false }`
[INFO] [stdout] 8c0465e1c37b080d1b94f475cd316a098d2a3a15d3c975fc87c374bb9f166b67
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+3129d37ef7075ee3cbaa3d6cbe1b5794f67192b0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8aaffe19f5cae7334fc07da3352374ac9f718562360252c86ae2f7fb87de1fd2
[INFO] running `Command { std: "docker" "start" "-a" "8aaffe19f5cae7334fc07da3352374ac9f718562360252c86ae2f7fb87de1fd2", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.93
[INFO] [stderr]    Compiling unicode-ident v1.0.15
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling serde_json v1.0.137
[INFO] [stderr]    Compiling libc v0.2.169
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking half v2.4.1
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking oorandom v11.1.4
[INFO] [stderr]     Checking clap_builder v4.5.27
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]    Compiling syn v2.0.96
[INFO] [stderr]     Checking is-terminal v0.4.15
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking clap v4.5.27
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking rusty_screbby v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::arch::x86_64::_pext_u64`
[INFO] [stdout]  --> src/board/bitboard.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::arch::x86_64::_pext_u64;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::all_pieces`
[INFO] [stdout]  --> src/board/movegen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::all_pieces;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::board::bitboard::get_pawn_attacks_bb`
[INFO] [stdout]  --> src/board/movegen.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::bitboard::get_pawn_attacks_bb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::bitboard::pop_lsb`
[INFO] [stdout]  --> src/board/movegen.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::bitboard::pop_lsb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `North_East` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct North_East;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `NorthEast`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `South_East` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct South_East;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `SouthEast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `South_West` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct South_West;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `SouthWest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `North_West` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct North_West;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `NorthWest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::arch::x86_64::_pext_u64`
[INFO] [stdout]  --> src/board/bitboard.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::arch::x86_64::_pext_u64;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::all_pieces`
[INFO] [stdout]  --> src/board/movegen.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::all_pieces;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::board::bitboard::get_pawn_attacks_bb`
[INFO] [stdout]  --> src/board/movegen.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::board::bitboard::get_pawn_attacks_bb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::bitboard::pop_lsb`
[INFO] [stdout]  --> src/board/movegen.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use super::bitboard::pop_lsb;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `North_East` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct North_East;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `NorthEast`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `South_East` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct South_East;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `SouthEast`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `South_West` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct South_West;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `SouthWest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `North_West` should have an upper camel case name
[INFO] [stdout]   --> src/board/movegen.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct North_West;
[INFO] [stdout]    |            ^^^^^^^^^^ help: convert the identifier to upper camel case: `NorthWest`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/board/position.rs:746:5
[INFO] [stdout]     |
[INFO] [stdout] 746 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/board/position.rs:742:5
[INFO] [stdout]     |
[INFO] [stdout] 742 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/board/position.rs:746:5
[INFO] [stdout]     |
[INFO] [stdout] 746 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/board/position.rs:742:5
[INFO] [stdout]     |
[INFO] [stdout] 742 |     #[inline(always)]
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_type`
[INFO] [stdout]    --> src/types.rs:903:17
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_type`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/types.rs:903:38
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/types.rs:903:52
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                                    ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pt`
[INFO] [stdout]    --> src/types.rs:903:64
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                                                ^^ help: if this is intentional, prefix it with an underscore: `_pt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]    --> src/board/bitboard.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |     let mut size: usize = 0;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `kto` is never read
[INFO] [stdout]    --> src/board/position.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |         kto = kto.relative_square(c);
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_type`
[INFO] [stdout]    --> src/types.rs:903:17
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_type`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `from`
[INFO] [stdout]    --> src/types.rs:903:38
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_from`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/types.rs:903:52
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                                    ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pt`
[INFO] [stdout]    --> src/types.rs:903:64
[INFO] [stdout]     |
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |                                                                ^^ help: if this is intentional, prefix it with an underscore: `_pt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ksq`
[INFO] [stdout]    --> src/board/position.rs:297:17
[INFO] [stdout]     |
[INFO] [stdout] 297 |             let ksq: Square = self.square(us, PieceType::King);
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_ksq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `occupied`
[INFO] [stdout]    --> src/board/position.rs:299:17
[INFO] [stdout]     |
[INFO] [stdout] 299 |             let occupied: Bitboard = (all_pieces!(self) ^ from ^ capsq) | to;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_occupied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state_stack`
[INFO] [stdout]    --> src/board/position.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |     fn pseudo_legal(&self, m: Move, state_stack: &StateStack) -> bool {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_state_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/board/position.rs:739:26
[INFO] [stdout]     |
[INFO] [stdout] 739 |     pub fn square(&self, c: Color, pt: PieceType) -> Square {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:868:21
[INFO] [stdout]     |
[INFO] [stdout] 868 |         if let Some(psq) = zobrist::PSQ.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:873:21
[INFO] [stdout]     |
[INFO] [stdout] 873 |         if let Some(psq) = zobrist::ENPASSANT.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:878:21
[INFO] [stdout]     |
[INFO] [stdout] 878 |         if let Some(psq) = zobrist::CASTLING.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:883:21
[INFO] [stdout]     |
[INFO] [stdout] 883 |         if let Some(psq) = zobrist::SIDE.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `size` is never read
[INFO] [stdout]    --> src/board/bitboard.rs:320:13
[INFO] [stdout]     |
[INFO] [stdout] 320 |     let mut size: usize = 0;
[INFO] [stdout]     |             ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:888:21
[INFO] [stdout]     |
[INFO] [stdout] 888 |         if let Some(psq) = zobrist::NOPAWNS.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1024:79
[INFO] [stdout]      |
[INFO] [stdout] 1024 |     fn test_enpassant_do_undo(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |                                                                               ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1053:9
[INFO] [stdout]      |
[INFO] [stdout] 1053 |         st: &mut StateStack,
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1082:77
[INFO] [stdout]      |
[INFO] [stdout] 1082 |     fn test_promotion_moves(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |                                                                             ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `side` is never read
[INFO] [stdout]   --> src/board/zobrist.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let mut side = 0;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `nopawns` is never read
[INFO] [stdout]   --> src/board/zobrist.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut nopawns = 0;
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]    --> src/board/movegen.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |     let d: Direction = D::DIR;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur` is never read
[INFO] [stdout]    --> src/board/movegen.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         cur += 1;
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     move_list: &mut MoveList,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/board/movegen.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     to: Square,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b1` is never read
[INFO] [stdout]    --> src/board/movegen.rs:300:17
[INFO] [stdout]     |
[INFO] [stdout] 300 |                 b1 = pawns_not_on_7th & bb::get_pawn_attacks_bb(them, pos.ep_square());
[INFO] [stdout]     |                 ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> src/board/movegen.rs:308:5
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pos: &pos::Position,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/board/movegen.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     target: Bitboard,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> src/board/movegen.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 315 |     pos: &pos::Position,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:316:5
[INFO] [stdout]     |
[INFO] [stdout] 316 |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/board/movegen.rs:317:5
[INFO] [stdout]     |
[INFO] [stdout] 317 |     target: Bitboard,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `kto` is never read
[INFO] [stdout]    --> src/board/position.rs:201:9
[INFO] [stdout]     |
[INFO] [stdout] 201 |         kto = kto.relative_square(c);
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ksq`
[INFO] [stdout]    --> src/board/position.rs:297:17
[INFO] [stdout]     |
[INFO] [stdout] 297 |             let ksq: Square = self.square(us, PieceType::King);
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_ksq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `occupied`
[INFO] [stdout]    --> src/board/position.rs:299:17
[INFO] [stdout]     |
[INFO] [stdout] 299 |             let occupied: Bitboard = (all_pieces!(self) ^ from ^ capsq) | to;
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_occupied`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `state_stack`
[INFO] [stdout]    --> src/board/position.rs:343:37
[INFO] [stdout]     |
[INFO] [stdout] 343 |     fn pseudo_legal(&self, m: Move, state_stack: &StateStack) -> bool {
[INFO] [stdout]     |                                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_state_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Magic` is more private than the item `ROOK_MAGICS`
[INFO] [stdout]    --> src/board/bitboard.rs:43:1
[INFO] [stdout]     |
[INFO] [stdout] 43  | pub static ROOK_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ static `ROOK_MAGICS` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `Magic` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/bitboard.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | struct Magic {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Magic` is more private than the item `BISHOP_MAGICS`
[INFO] [stdout]    --> src/board/bitboard.rs:44:1
[INFO] [stdout]     |
[INFO] [stdout] 44  | pub static BISHOP_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ static `BISHOP_MAGICS` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `Magic` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/bitboard.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | struct Magic {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `position::StateInfo` is more private than the item `position::Position::do_move`
[INFO] [stdout]    --> src/board/position.rs:463:5
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn do_move(&mut self, m: Move, new_state: &mut StateInfo, gives_check: bool) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `position::Position::do_move` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `position::StateInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/position.rs:76:1
[INFO] [stdout]     |
[INFO] [stdout] 76  | struct StateInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MoveList` is more private than the item `make_promotions`
[INFO] [stdout]    --> src/board/movegen.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | / pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout] 138 | |     move_list: &mut MoveList,
[INFO] [stdout] 139 | |     to: Square,
[INFO] [stdout] 140 | | ) -> usize {
[INFO] [stdout]     | |__________^ function `make_promotions` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MoveList` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MoveList` is more private than the item `generate_pawn_moves`
[INFO] [stdout]    --> src/board/movegen.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / pub fn generate_pawn_moves<T: GenTypeInfo, C: ColorInfo>(
[INFO] [stdout] 158 | |     pos: &pos::Position,
[INFO] [stdout] 159 | |     move_list: &mut MoveList,
[INFO] [stdout] 160 | |     target: Bitboard,
[INFO] [stdout] 161 | | ) {
[INFO] [stdout]     | |_^ function `generate_pawn_moves` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MoveList` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ExtMove` is more private than the item `generate`
[INFO] [stdout]    --> src/board/movegen.rs:307:1
[INFO] [stdout]     |
[INFO] [stdout] 307 | / pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout] 308 | |     pos: &pos::Position,
[INFO] [stdout] 309 | |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout] 310 | |     target: Bitboard,
[INFO] [stdout] 311 | | ) {
[INFO] [stdout]     | |_^ function `generate` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ExtMove` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout] 23  | struct ExtMove {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ExtMove` is more private than the item `generate_all`
[INFO] [stdout]    --> src/board/movegen.rs:314:1
[INFO] [stdout]     |
[INFO] [stdout] 314 | / pub fn generate_all<C: ColorInfo, T: GenTypeInfo>(
[INFO] [stdout] 315 | |     pos: &pos::Position,
[INFO] [stdout] 316 | |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout] 317 | |     target: Bitboard,
[INFO] [stdout] 318 | | ) {
[INFO] [stdout]     | |_^ function `generate_all` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ExtMove` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout] 23  | struct ExtMove {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Value` is never used
[INFO] [stdout]  --> src/types.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub type Value = i32;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Key` is never used
[INFO] [stdout]  --> src/types.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub type Key = u64;
[INFO] [stdout]   |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Depth` is never used
[INFO] [stdout]  --> src/types.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type Depth = i32;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MOVES` is never used
[INFO] [stdout]   --> src/types.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const MAX_MOVES: i32 = 256;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const MAX_PLY: i32 = 246;
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_ZERO` is never used
[INFO] [stdout]   --> src/types.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const VALUE_ZERO: Value = 0;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_DRAW` is never used
[INFO] [stdout]   --> src/types.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const VALUE_DRAW: Value = 0;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_NONE` is never used
[INFO] [stdout]   --> src/types.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const VALUE_NONE: Value = 32002;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_INFINITE` is never used
[INFO] [stdout]   --> src/types.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const VALUE_INFINITE: Value = 32001;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_MATE` is never used
[INFO] [stdout]   --> src/types.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const VALUE_MATE: Value = 32000;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_MATE_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const VALUE_MATE_IN_MAX_PLY: Value = VALUE_MATE - MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_MATED_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const VALUE_MATED_IN_MAX_PLY: Value = -VALUE_MATE_IN_MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB` is never used
[INFO] [stdout]   --> src/types.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const VALUE_TB: Value = VALUE_MATE_IN_MAX_PLY - 1;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB_WIN_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 | const VALUE_TB_WIN_IN_MAX_PLY: Value = VALUE_TB - MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB_LOSS_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 | const VALUE_TB_LOSS_IN_MAX_PLY: Value = -VALUE_TB_WIN_IN_MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAWNVALUE` is never used
[INFO] [stdout]   --> src/types.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PAWNVALUE: Value = 208;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KNIGHTVALUE` is never used
[INFO] [stdout]   --> src/types.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const KNIGHTVALUE: Value = 781;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BISHOPVALUE` is never used
[INFO] [stdout]   --> src/types.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | const BISHOPVALUE: Value = 825;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROOKVALUE` is never used
[INFO] [stdout]   --> src/types.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const ROOKVALUE: Value = 1276;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QUEENVALUE` is never used
[INFO] [stdout]   --> src/types.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const QUEENVALUE: Value = 2538;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECEVALE` is never used
[INFO] [stdout]   --> src/types.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const PIECEVALE: [Value; Piece::PieceNb as usize] = [
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SQNB` is never used
[INFO] [stdout]   --> src/types.rs:52:11
[INFO] [stdout]    |
[INFO] [stdout] 52 | pub const SQNB: usize = Square::SquareNb as usize - 1; //Poissibly move these constants to the types file
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PNB` is never used
[INFO] [stdout]   --> src/types.rs:53:11
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub const PNB: usize = Piece::PieceNb as usize;
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PTNB` is never used
[INFO] [stdout]   --> src/types.rs:54:11
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub const PTNB: usize = PieceType::PieceTypeNb as usize;
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `COLORNB` is never used
[INFO] [stdout]   --> src/types.rs:55:11
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub const COLORNB: usize = Color::ColorNb as usize;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CRNB` is never used
[INFO] [stdout]   --> src/types.rs:56:11
[INFO] [stdout]    |
[INFO] [stdout] 56 | pub const CRNB: usize = CastlingRights::CastlingRightsNb as usize;
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FNB` is never used
[INFO] [stdout]   --> src/types.rs:57:11
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub const FNB: usize = 8;
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RNB` is never used
[INFO] [stdout]   --> src/types.rs:58:11
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub const RNB: usize = 8;
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SQA1` is never used
[INFO] [stdout]   --> src/types.rs:60:11
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub const SQA1: usize = Square::SqA1 as usize;
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SQH8` is never used
[INFO] [stdout]   --> src/types.rs:61:11
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub const SQH8: usize = Square::SqH8 as usize;
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PawnValue` is never used
[INFO] [stdout]   --> src/types.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const PawnValue: Value = 208;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KnightValue` is never used
[INFO] [stdout]   --> src/types.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const KnightValue: Value = 781;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BishopValue` is never used
[INFO] [stdout]   --> src/types.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub const BishopValue: Value = 825;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RookValue` is never used
[INFO] [stdout]   --> src/types.rs:66:11
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub const RookValue: Value = 1276;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QueenValue` is never used
[INFO] [stdout]   --> src/types.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const QueenValue: Value = 2538;
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECEVALUE` is never used
[INFO] [stdout]   --> src/types.rs:69:11
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub const PIECEVALUE: [Value; PNB] = [
[INFO] [stdout]    |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Bound` is never used
[INFO] [stdout]   --> src/types.rs:98:10
[INFO] [stdout]    |
[INFO] [stdout] 98 | pub enum Bound {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/types.rs:110:5
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub enum Piece {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 110 |     WPawn,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 111 |     WKnight,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 112 |     WBishop,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 113 |     WRook,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 114 |     WQueen,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 115 |     WKing,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 116 |     BPawn = 9,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 117 |     BKnight = 10,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 118 |     BBishop = 11,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 119 |     BRook = 12,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 120 |     BQueen = 13,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 121 |     BKing = 14,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 122 |     PieceNb = 16,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Piece` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `type_of`, `color`, and `new_from_n` are never used
[INFO] [stdout]    --> src/types.rs:126:18
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Piece {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 126 |     pub const fn type_of(&self) -> PieceType {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub const fn color(&self) -> Color {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub const fn new_from_n(i: usize) -> Self {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PieceType` is never used
[INFO] [stdout]    --> src/types.rs:528:10
[INFO] [stdout]     |
[INFO] [stdout] 528 | pub enum PieceType {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MoveType` is never used
[INFO] [stdout]    --> src/types.rs:542:10
[INFO] [stdout]     |
[INFO] [stdout] 542 | pub enum MoveType {
[INFO] [stdout]     |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]    --> src/board/position.rs:739:26
[INFO] [stdout]     |
[INFO] [stdout] 739 |     pub fn square(&self, c: Color, pt: PieceType) -> Square {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mate_in` is never used
[INFO] [stdout]    --> src/types.rs:706:14
[INFO] [stdout]     |
[INFO] [stdout] 706 | pub const fn mate_in(ply: i32) -> Value {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mated_in` is never used
[INFO] [stdout]    --> src/types.rs:709:14
[INFO] [stdout]     |
[INFO] [stdout] 709 | pub const fn mated_in(ply: i32) -> Value {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_square` is never used
[INFO] [stdout]    --> src/types.rs:713:14
[INFO] [stdout]     |
[INFO] [stdout] 713 | pub const fn make_square(f: usize, r: usize) -> Square {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_piece` is never used
[INFO] [stdout]    --> src/types.rs:722:14
[INFO] [stdout]     |
[INFO] [stdout] 722 | pub const fn make_piece(c: Color, pt: PieceType) -> Piece {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_white_piece` is never used
[INFO] [stdout]    --> src/types.rs:730:14
[INFO] [stdout]     |
[INFO] [stdout] 730 | pub const fn make_white_piece(pt: PieceType) -> Piece {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_black_piece` is never used
[INFO] [stdout]    --> src/types.rs:742:14
[INFO] [stdout]     |
[INFO] [stdout] 742 | pub const fn make_black_piece(pt: PieceType) -> Piece {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_move_type` is never used
[INFO] [stdout]    --> src/types.rs:754:14
[INFO] [stdout]     |
[INFO] [stdout] 754 | pub const fn is_valid_move_type(data: u16) -> bool {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pawn_push` is never used
[INFO] [stdout]    --> src/types.rs:768:14
[INFO] [stdout]     |
[INFO] [stdout] 768 | pub const fn pawn_push(color: Color) -> Direction {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_key` is never used
[INFO] [stdout]    --> src/types.rs:776:14
[INFO] [stdout]     |
[INFO] [stdout] 776 | pub const fn make_key(seed: u64) -> Key {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relative_rank_of_square` is never used
[INFO] [stdout]    --> src/types.rs:789:14
[INFO] [stdout]     |
[INFO] [stdout] 789 | pub const fn relative_rank_of_square(c: Color, s: Square) -> Rank {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Move` is never constructed
[INFO] [stdout]    --> src/types.rs:801:12
[INFO] [stdout]     |
[INFO] [stdout] 801 | pub struct Move {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:868:21
[INFO] [stdout]     |
[INFO] [stdout] 868 |         if let Some(psq) = zobrist::PSQ.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:873:21
[INFO] [stdout]     |
[INFO] [stdout] 873 |         if let Some(psq) = zobrist::ENPASSANT.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:878:21
[INFO] [stdout]     |
[INFO] [stdout] 878 |         if let Some(psq) = zobrist::CASTLING.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:883:21
[INFO] [stdout]     |
[INFO] [stdout] 883 |         if let Some(psq) = zobrist::SIDE.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `psq`
[INFO] [stdout]    --> src/board/position.rs:888:21
[INFO] [stdout]     |
[INFO] [stdout] 888 |         if let Some(psq) = zobrist::NOPAWNS.get() {
[INFO] [stdout]     |                     ^^^ help: if this is intentional, prefix it with an underscore: `_psq`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/types.rs:806:18
[INFO] [stdout]     |
[INFO] [stdout] 805 | impl Move {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] 806 |     pub const fn new(data: u16) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 810 |     pub const fn new_from_to_sq(from: Square, to: Square) -> Self {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 814 |     pub const fn from_to(&self) -> u16 {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 818 |     pub fn set_from_move(&mut self, m: Move) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 822 |     pub const fn from_sq(&self) -> Square {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 831 |     pub const fn to_sq(&self) -> Square {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 840 |     pub const fn type_of(&self) -> MoveType {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 850 |     pub fn set_move_to_variant(&mut self, movetype: MoveType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 861 |     pub const fn promotion_type(&self) -> PieceType {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 872 |     pub fn set_promotion_type(&mut self, pt: PieceType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 883 |     pub const fn raw(&self) -> u16 {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 887 |     pub const fn is_nonzero(&self) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 891 |     pub const fn null() -> Self {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 895 |     pub const fn none() -> Self {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 899 |     pub const fn is_ok(&self) -> bool {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEABB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:11:11
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const FILEABB: Bitboard = 0x0101010101010101;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEBBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const FILEBBB: Bitboard = FILEABB << 1;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILECBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const FILECBB: Bitboard = FILEABB << 2;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEDBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const FILEDBB: Bitboard = FILEABB << 3;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEEBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const FILEEBB: Bitboard = FILEABB << 4;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEFBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const FILEFBB: Bitboard = FILEABB << 5;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEGBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const FILEGBB: Bitboard = FILEABB << 6;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1024:79
[INFO] [stdout]      |
[INFO] [stdout] 1024 |     fn test_enpassant_do_undo(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |                                                                               ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEHBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub const FILEHBB: Bitboard = FILEABB << 7;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK1BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const RANK1BB: Bitboard = 0xFF;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK2BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const RANK2BB: Bitboard = RANK1BB << (8 * 1);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1053:9
[INFO] [stdout]      |
[INFO] [stdout] 1053 |         st: &mut StateStack,
[INFO] [stdout]      |         ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK3BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const RANK3BB: Bitboard = RANK1BB << (8 * 2);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK4BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const RANK4BB: Bitboard = RANK1BB << (8 * 2);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK5BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const RANK5BB: Bitboard = RANK1BB << (8 * 4);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK6BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const RANK6BB: Bitboard = RANK1BB << (8 * 5);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK7BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const RANK7BB: Bitboard = RANK1BB << (8 * 6);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK8BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const RANK8BB: Bitboard = RANK1BB << (8 * 7);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `st`
[INFO] [stdout]     --> src/board/position.rs:1082:77
[INFO] [stdout]      |
[INFO] [stdout] 1082 |     fn test_promotion_moves(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |                                                                             ^^ help: if this is intentional, prefix it with an underscore: `_st`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `IS64BIT` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:34:7
[INFO] [stdout]    |
[INFO] [stdout] 34 | const IS64BIT: bool = cfg!(target_pointer_width = "64");
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `POPCNT` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub static POPCNT: OnceLock<[u8; 1 << 16]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SQUARE_DISTANCE` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub static SQUARE_DISTANCE: OnceLock<[[u8; SQNB]; SQNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `LINE_BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub static LINE_BB: OnceLock<[[Bitboard; SQNB]; SQNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BETWEEN_BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub static BETWEEN_BB: OnceLock<[[Bitboard; SQNB]; SQNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PSEUDO_ATTACKS` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub static PSEUDO_ATTACKS: OnceLock<[[Bitboard; SQNB]; PTNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PAWN_ATTACKS` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:41:12
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub static PAWN_ATTACKS: OnceLock<[[Bitboard; SQNB]; COLORNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ROOK_MAGICS` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub static ROOK_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BISHOP_MAGICS` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub static BISHOP_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ROOK_TABLE` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:46:8
[INFO] [stdout]    |
[INFO] [stdout] 46 | static ROOK_TABLE: OnceLock<Vec<Bitboard>> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BISHOP_TABLE` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | static BISHOP_TABLE: OnceLock<Vec<Bitboard>> = OnceLock::new();
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `more_than_one` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:49:14
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub const fn more_than_one(bb: Bitboard) -> bool {
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `distance` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn distance(x: Square, y: Square) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:58:14
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub const fn shift(b: Bitboard, d: Direction) -> Bitboard {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift_twice` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 | const fn shift_twice(b: Bitboard, d: Direction) -> Bitboard {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pawn_attacks_bb` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:80:14
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub const fn pawn_attacks_bb(bb: Bitboard, c: Color) -> Bitboard {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_pawn_attacks_bb` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:88:8
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub fn get_pawn_attacks_bb(c: Color, s: Square) -> Bitboard {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `side` is never read
[INFO] [stdout]   --> src/board/zobrist.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let mut side = 0;
[INFO] [stdout]    |             ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_pseudo_attacks` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:96:8
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub fn get_pseudo_attacks(pt: PieceType, s: Square) -> Bitboard {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `nopawns` is never read
[INFO] [stdout]   --> src/board/zobrist.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let mut nopawns = 0;
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `alligned` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn alligned(s1: Square, s2: Square, s3: Square) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attacks_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | pub fn attacks_bb(pt: PieceType, s: Square, occupied: Bitboard) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `attacks_bb_helper` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 123 | pub fn attacks_bb_helper(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bishop_attacks_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn bishop_attacks_bb(s: Square, occupied: Bitboard) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rook_attacks_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 146 | pub fn rook_attacks_bb(s: Square, occupied: Bitboard) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pseudo_attacks_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:154:8
[INFO] [stdout]     |
[INFO] [stdout] 154 | pub fn pseudo_attacks_bb(pt: PieceType, s: Square) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rank_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:162:10
[INFO] [stdout]     |
[INFO] [stdout] 162 | const fn rank_bb(r: Rank) -> Bitboard {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pop_lsb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn pop_lsb(bb: &mut Bitboard) -> Square {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `file_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 174 | const fn file_bb(f: File) -> Bitboard {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `between_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:179:8
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub fn between_bb(s1: Square, s2: Square) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `least_significant_square_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:187:4
[INFO] [stdout]     |
[INFO] [stdout] 187 | fn least_significant_square_bb(bb: Bitboard) -> Bitboard {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sliding_attack` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:192:4
[INFO] [stdout]     |
[INFO] [stdout] 192 | fn sliding_attack(pt: &PieceType, sq: Square, occupied: Bitboard) -> Bitboard {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `safe_destination` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:227:4
[INFO] [stdout]     |
[INFO] [stdout] 227 | fn safe_destination(s: Square, step: i32) -> Bitboard {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Magic` is never constructed
[INFO] [stdout]    --> src/board/bitboard.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | struct Magic {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `default` and `index` are never used
[INFO] [stdout]    --> src/board/bitboard.rs:249:12
[INFO] [stdout]     |
[INFO] [stdout] 248 | impl Magic {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] 249 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 257 |     pub fn index(&self, occupied: Bitboard) -> usize {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:268:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub fn init() {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_popcnt` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:286:4
[INFO] [stdout]     |
[INFO] [stdout] 286 | fn init_popcnt() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_square_distance` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:291:4
[INFO] [stdout]     |
[INFO] [stdout] 291 | fn init_square_distance() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_magics` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:308:4
[INFO] [stdout]     |
[INFO] [stdout] 308 | fn init_magics(pt: PieceType, table: &mut Vec<Bitboard>, magics: &mut [Magic; SQNB]) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_other_tables` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:374:4
[INFO] [stdout]     |
[INFO] [stdout] 374 | fn init_other_tables() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `pretty` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:422:8
[INFO] [stdout]     |
[INFO] [stdout] 422 | pub fn pretty(b: Bitboard) -> String {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECE_TYPE_NB` is never used
[INFO] [stdout]   --> src/board/position.rs:17:7
[INFO] [stdout]    |
[INFO] [stdout] 17 | const PIECE_TYPE_NB: usize = PieceType::PieceTypeNb as usize;
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECE_TO_CHAR` is never used
[INFO] [stdout]   --> src/board/position.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const PIECE_TO_CHAR: &str = " PNBRQK  pnbrqk";
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_PLY` is never used
[INFO] [stdout]   --> src/board/position.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const MAX_PLY: usize = 246; // Maximum search depth
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CUCKOO` is never used
[INFO] [stdout]   --> src/board/position.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub static CUCKOO: OnceLock<[Key; 8192]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CUCKOO_MOVE` is never used
[INFO] [stdout]   --> src/board/position.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub static CUCKOO_MOVE: OnceLock<[Key; 8192]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `pieces` is never used
[INFO] [stdout]   --> src/board/position.rs:52:7
[INFO] [stdout]    |
[INFO] [stdout] 52 | const pieces: [Piece; 12] = [
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H1` is never used
[INFO] [stdout]   --> src/board/position.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn H1(h: Key) -> i32 {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H2` is never used
[INFO] [stdout]   --> src/board/position.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn H2(h: Key) -> i32 {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StateInfo` is never constructed
[INFO] [stdout]   --> src/board/position.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | struct StateInfo {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `copy_from_old_to_new` is never used
[INFO] [stdout]   --> src/board/position.rs:98:12
[INFO] [stdout]    |
[INFO] [stdout] 97 | impl StateInfo {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 98 |     pub fn copy_from_old_to_new(&self, newst: &mut StateInfo) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StateStack` is never constructed
[INFO] [stdout]    --> src/board/position.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | struct StateStack {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, and `pop` are never used
[INFO] [stdout]    --> src/board/position.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl StateStack {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 114 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     fn push(&mut self, newst: StateInfo) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     fn pop(&mut self) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Position` is never constructed
[INFO] [stdout]    --> src/board/position.rs:129:12
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct Position {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/board/position.rs:148:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl Position {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 148 |     fn default() -> Self {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 164 |     fn st(&self) -> &StateInfo {
[INFO] [stdout]     |        ^^
[INFO] [stdout] ...
[INFO] [stdout] 169 |     fn st_mut<'a>(&mut self) -> &mut StateInfo {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn set_castling_right(&mut self, c: Color, rfrom: Square) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     fn set_check_info(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     fn update_sliders_blockers(&mut self, c: Color) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     fn set_state(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     fn attackers_to(&self, s: Square, occupied: Bitboard) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn legal(self, m: Move) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn all_pieces(&self) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 343 |     fn pseudo_legal(&self, m: Move, state_stack: &StateStack) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     fn gives_check(&self, m: Move) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 463 |     pub fn do_move(&mut self, m: Move, new_state: &mut StateInfo, gives_check: bool) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |     pub fn undo_move(&mut self, mv: Move) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 678 |     fn do_castling(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 708 |     fn undo_castling(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 739 |     pub fn square(&self, c: Color, pt: PieceType) -> Square {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 747 |     fn side_to_move(&self) -> Color {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 752 |     fn piece_on(&self, s: Square) -> Piece {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 757 |     fn empty(&self, s: Square) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 762 |     fn moved_piece(&self, m: Move) -> Piece {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 767 |     pub fn pieces_by_piecetype(&self, pt: PieceType) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 772 |     pub fn pieces_by_color(&self, color: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 777 |     pub fn ep_square(&self) -> Square {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 782 |     fn can_castle(&self, cr: CastlingRights) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 787 |     pub fn checkers(&self) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 792 |     pub fn blockers_for_king(&self, c: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 797 |     fn pinners(&self, c: Color) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 802 |     fn check_squares(&self, pt: PieceType) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 807 |     fn pawn_key(&self) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 812 |     fn material_key(&self) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 817 |     fn non_pawn_material(&self, c: Color) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 822 |     fn game_ply(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 827 |     fn rule50_count(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 832 |     fn captured_piece(&self) -> Piece {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 836 |     fn put_piece(&mut self, pc: Piece, s: Square) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 846 |     fn remove_piece(&mut self, s: Square) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 856 |     fn move_piece(&mut self, f: Square, t: Square) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 866 |     pub fn init() {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 927 |     fn pieces_by_type(&self, pt: PieceType) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_enpassant_do_undo` is never used
[INFO] [stdout]     --> src/board/position.rs:1024:8
[INFO] [stdout]      |
[INFO] [stdout] 1024 |     fn test_enpassant_do_undo(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_normal_move_do_undo` is never used
[INFO] [stdout]     --> src/board/position.rs:1050:8
[INFO] [stdout]      |
[INFO] [stdout] 1050 |     fn test_normal_move_do_undo(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_promotion_moves` is never used
[INFO] [stdout]     --> src/board/position.rs:1082:8
[INFO] [stdout]      |
[INFO] [stdout] 1082 |     fn test_promotion_moves(position: &mut Position, newst: &mut StateInfo, st: &mut StateStack) {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_update_sliders_blockers` is never used
[INFO] [stdout]     --> src/board/position.rs:1151:8
[INFO] [stdout]      |
[INFO] [stdout] 1151 |     fn test_update_sliders_blockers() {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PSQ` is never used
[INFO] [stdout]  --> src/board/zobrist.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub static PSQ: OnceLock<[[Key; SQNB]; PNB]> = OnceLock::new();
[INFO] [stdout]   |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `ENPASSANT` is never used
[INFO] [stdout]  --> src/board/zobrist.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub static ENPASSANT: OnceLock<[Key; FNB]> = OnceLock::new(); 
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CASTLING` is never used
[INFO] [stdout]  --> src/board/zobrist.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub static CASTLING: OnceLock<[Key; CRNB]> = OnceLock::new();
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `SIDE` is never used
[INFO] [stdout]  --> src/board/zobrist.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub static SIDE: OnceLock<Key> = OnceLock::new();   
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `NOPAWNS` is never used
[INFO] [stdout]  --> src/board/zobrist.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub static NOPAWNS: OnceLock<Key> = OnceLock::new();   
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init_zobrist` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub fn init_zobrist() {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zobrist_side` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:47:8
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub fn get_zobrist_side() -> Key {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zobrist_psq` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn get_zobrist_psq() -> [[Key; SQNB]; PNB] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zobrist_castling` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:62:8
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub fn get_zobrist_castling() -> [Key; CRNB] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zorist_nopawns` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn get_zorist_nopawns() -> Key {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zobrist_enpassant` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn get_zobrist_enpassant() -> [Key; FNB] {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MOVES` is never used
[INFO] [stdout]   --> src/board/movegen.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const MAX_MOVES: usize = 256;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExtMove` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct ExtMove {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `White` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct White;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Black` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Black;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ColorInfo` is never used
[INFO] [stdout]   --> src/board/movegen.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub trait ColorInfo {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Captures` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Captures;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Quiets` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Quiets;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QuietChecks` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct QuietChecks;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Evasions` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Evasions;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `d`
[INFO] [stdout]    --> src/board/movegen.rs:142:9
[INFO] [stdout]     |
[INFO] [stdout] 142 |     let d: Direction = D::DIR;
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_d`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `cur` is never read
[INFO] [stdout]    --> src/board/movegen.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |         cur += 1;
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:138:5
[INFO] [stdout]     |
[INFO] [stdout] 138 |     move_list: &mut MoveList,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `to`
[INFO] [stdout]    --> src/board/movegen.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     to: Square,
[INFO] [stdout]     |     ^^ help: if this is intentional, prefix it with an underscore: `_to`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `b1` is never read
[INFO] [stdout]    --> src/board/movegen.rs:300:17
[INFO] [stdout]     |
[INFO] [stdout] 300 |                 b1 = pawns_not_on_7th & bb::get_pawn_attacks_bb(them, pos.ep_square());
[INFO] [stdout]     |                 ^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> src/board/movegen.rs:308:5
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pos: &pos::Position,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:309:5
[INFO] [stdout]     |
[INFO] [stdout] 309 |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonEvasions` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct NonEvasions;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/board/movegen.rs:310:5
[INFO] [stdout]     |
[INFO] [stdout] 310 |     target: Bitboard,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> src/board/movegen.rs:315:5
[INFO] [stdout]     |
[INFO] [stdout] 315 |     pos: &pos::Position,
[INFO] [stdout]     |     ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `move_list`
[INFO] [stdout]    --> src/board/movegen.rs:316:5
[INFO] [stdout]     |
[INFO] [stdout] 316 |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout]     |     ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_move_list`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `target`
[INFO] [stdout]    --> src/board/movegen.rs:317:5
[INFO] [stdout]     |
[INFO] [stdout] 317 |     target: Bitboard,
[INFO] [stdout]     |     ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Legal` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Legal;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GenTypeInfo` is never used
[INFO] [stdout]   --> src/board/movegen.rs:50:11
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub trait GenTypeInfo {
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct North;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct South;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct East;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct West;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North_East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct North_East;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South_East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct South_East;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South_West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct South_West;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North_West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct North_West;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DirectionType` is never used
[INFO] [stdout]   --> src/board/movegen.rs:82:11
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub trait DirectionType {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_from_move` is never used
[INFO] [stdout]    --> src/board/movegen.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl ExtMove {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 112 |     pub fn new_from_move(m: Move) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveList` is never constructed
[INFO] [stdout]    --> src/board/movegen.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push_move`, and `push_move_ext_move` are never used
[INFO] [stdout]    --> src/board/movegen.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl MoveList {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 122 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn push_move(&mut self, mv: Move) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn push_move_ext_move(&mut self, mv: ExtMove) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_promotions` is never used
[INFO] [stdout]    --> src/board/movegen.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_pawn_moves` is never used
[INFO] [stdout]    --> src/board/movegen.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub fn generate_pawn_moves<T: GenTypeInfo, C: ColorInfo>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate` is never used
[INFO] [stdout]    --> src/board/movegen.rs:307:8
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_all` is never used
[INFO] [stdout]    --> src/board/movegen.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 | pub fn generate_all<C: ColorInfo, T: GenTypeInfo>(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Prng` is never constructed
[INFO] [stdout]  --> src/misc.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct Prng {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `rand64`, `rand`, and `sparse_rand` are never used
[INFO] [stdout]   --> src/misc.rs:6:12
[INFO] [stdout]    |
[INFO] [stdout] 5  | impl Prng {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 6  |     pub fn new(seed: u64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub fn rand64(&mut self) -> u64 {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn rand<T: From<u64>>(&mut self) -> T {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn sparse_rand<T: From<u64>>(&mut self) -> T {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PawnValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const PawnValue: Value = 208;
[INFO] [stdout]    |           ^^^^^^^^^ help: convert the identifier to upper case: `PAWN_VALUE`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KnightValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const KnightValue: Value = 781;
[INFO] [stdout]    |           ^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BishopValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub const BishopValue: Value = 825;
[INFO] [stdout]    |           ^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RookValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:66:11
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub const RookValue: Value = 1276;
[INFO] [stdout]    |           ^^^^^^^^^ help: convert the identifier to upper case: `ROOK_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QueenValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const QueenValue: Value = 2538;
[INFO] [stdout]    |           ^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `pieces` should have an upper case name
[INFO] [stdout]   --> src/board/position.rs:52:7
[INFO] [stdout]    |
[INFO] [stdout] 52 | const pieces: [Piece; 12] = [
[INFO] [stdout]    |       ^^^^^^ help: convert the identifier to upper case: `PIECES`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H1` should have a snake case name
[INFO] [stdout]   --> src/board/position.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn H1(h: Key) -> i32 {
[INFO] [stdout]    |    ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H2` should have a snake case name
[INFO] [stdout]   --> src/board/position.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn H2(h: Key) -> i32 {
[INFO] [stdout]    |    ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `Enemy` should have an upper case name
[INFO] [stdout]    --> src/board/movegen.rs:137:64
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout]     |                                                                ^^^^^ help: convert the identifier to upper case: `ENEMY`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TRank7BB` should have a snake case name
[INFO] [stdout]    --> src/board/movegen.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let TRank7BB = if us == Color::White {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `trank7_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TRank3BB` should have a snake case name
[INFO] [stdout]    --> src/board/movegen.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let TRank3BB = if us == Color::White {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `trank3_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `Checks` should have an upper case name
[INFO] [stdout]    --> src/board/movegen.rs:307:53
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout]     |                                                     ^^^^^^ help: convert the identifier to upper case: `CHECKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Magic` is more private than the item `ROOK_MAGICS`
[INFO] [stdout]    --> src/board/bitboard.rs:43:1
[INFO] [stdout]     |
[INFO] [stdout] 43  | pub static ROOK_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ static `ROOK_MAGICS` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `Magic` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/bitboard.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | struct Magic {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `Magic` is more private than the item `BISHOP_MAGICS`
[INFO] [stdout]    --> src/board/bitboard.rs:44:1
[INFO] [stdout]     |
[INFO] [stdout] 44  | pub static BISHOP_MAGICS: OnceLock<[Magic; SQNB]> = OnceLock::new();
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ static `BISHOP_MAGICS` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `Magic` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/bitboard.rs:241:1
[INFO] [stdout]     |
[INFO] [stdout] 241 | struct Magic {
[INFO] [stdout]     | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `position::StateInfo` is more private than the item `position::Position::do_move`
[INFO] [stdout]    --> src/board/position.rs:463:5
[INFO] [stdout]     |
[INFO] [stdout] 463 |     pub fn do_move(&mut self, m: Move, new_state: &mut StateInfo, gives_check: bool) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `position::Position::do_move` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `position::StateInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/position.rs:76:1
[INFO] [stdout]     |
[INFO] [stdout] 76  | struct StateInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MoveList` is more private than the item `make_promotions`
[INFO] [stdout]    --> src/board/movegen.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | / pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout] 138 | |     move_list: &mut MoveList,
[INFO] [stdout] 139 | |     to: Square,
[INFO] [stdout] 140 | | ) -> usize {
[INFO] [stdout]     | |__________^ function `make_promotions` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MoveList` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `MoveList` is more private than the item `generate_pawn_moves`
[INFO] [stdout]    --> src/board/movegen.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / pub fn generate_pawn_moves<T: GenTypeInfo, C: ColorInfo>(
[INFO] [stdout] 158 | |     pos: &pos::Position,
[INFO] [stdout] 159 | |     move_list: &mut MoveList,
[INFO] [stdout] 160 | |     target: Bitboard,
[INFO] [stdout] 161 | | ) {
[INFO] [stdout]     | |_^ function `generate_pawn_moves` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `MoveList` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:117:1
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ExtMove` is more private than the item `generate`
[INFO] [stdout]    --> src/board/movegen.rs:307:1
[INFO] [stdout]     |
[INFO] [stdout] 307 | / pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout] 308 | |     pos: &pos::Position,
[INFO] [stdout] 309 | |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout] 310 | |     target: Bitboard,
[INFO] [stdout] 311 | | ) {
[INFO] [stdout]     | |_^ function `generate` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ExtMove` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout] 23  | struct ExtMove {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `ExtMove` is more private than the item `generate_all`
[INFO] [stdout]    --> src/board/movegen.rs:314:1
[INFO] [stdout]     |
[INFO] [stdout] 314 | / pub fn generate_all<C: ColorInfo, T: GenTypeInfo>(
[INFO] [stdout] 315 | |     pos: &pos::Position,
[INFO] [stdout] 316 | |     move_list: &mut Vec<ExtMove>,
[INFO] [stdout] 317 | |     target: Bitboard,
[INFO] [stdout] 318 | | ) {
[INFO] [stdout]     | |_^ function `generate_all` is reachable at visibility `pub(in crate::board)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `ExtMove` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/board/movegen.rs:23:1
[INFO] [stdout]     |
[INFO] [stdout] 23  | struct ExtMove {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Depth` is never used
[INFO] [stdout]  --> src/types.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub type Depth = i32;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MOVES` is never used
[INFO] [stdout]   --> src/types.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const MAX_MOVES: i32 = 256;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_DRAW` is never used
[INFO] [stdout]   --> src/types.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const VALUE_DRAW: Value = 0;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_NONE` is never used
[INFO] [stdout]   --> src/types.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const VALUE_NONE: Value = 32002;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_INFINITE` is never used
[INFO] [stdout]   --> src/types.rs:16:7
[INFO] [stdout]    |
[INFO] [stdout] 16 | const VALUE_INFINITE: Value = 32001;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_MATE_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:18:7
[INFO] [stdout]    |
[INFO] [stdout] 18 | const VALUE_MATE_IN_MAX_PLY: Value = VALUE_MATE - MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_MATED_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const VALUE_MATED_IN_MAX_PLY: Value = -VALUE_MATE_IN_MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB` is never used
[INFO] [stdout]   --> src/types.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const VALUE_TB: Value = VALUE_MATE_IN_MAX_PLY - 1;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB_WIN_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 | const VALUE_TB_WIN_IN_MAX_PLY: Value = VALUE_TB - MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VALUE_TB_LOSS_IN_MAX_PLY` is never used
[INFO] [stdout]   --> src/types.rs:22:7
[INFO] [stdout]    |
[INFO] [stdout] 22 | const VALUE_TB_LOSS_IN_MAX_PLY: Value = -VALUE_TB_WIN_IN_MAX_PLY;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PAWNVALUE` is never used
[INFO] [stdout]   --> src/types.rs:24:7
[INFO] [stdout]    |
[INFO] [stdout] 24 | const PAWNVALUE: Value = 208;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KNIGHTVALUE` is never used
[INFO] [stdout]   --> src/types.rs:25:7
[INFO] [stdout]    |
[INFO] [stdout] 25 | const KNIGHTVALUE: Value = 781;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BISHOPVALUE` is never used
[INFO] [stdout]   --> src/types.rs:26:7
[INFO] [stdout]    |
[INFO] [stdout] 26 | const BISHOPVALUE: Value = 825;
[INFO] [stdout]    |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ROOKVALUE` is never used
[INFO] [stdout]   --> src/types.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 | const ROOKVALUE: Value = 1276;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QUEENVALUE` is never used
[INFO] [stdout]   --> src/types.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | const QUEENVALUE: Value = 2538;
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PIECEVALE` is never used
[INFO] [stdout]   --> src/types.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 | const PIECEVALE: [Value; Piece::PieceNb as usize] = [
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RNB` is never used
[INFO] [stdout]   --> src/types.rs:58:11
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub const RNB: usize = 8;
[INFO] [stdout]    |           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_from_n` is never used
[INFO] [stdout]    --> src/types.rs:164:18
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl Piece {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub const fn new_from_n(i: usize) -> Self {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relative_rank_of_square` is never used
[INFO] [stdout]    --> src/types.rs:789:14
[INFO] [stdout]     |
[INFO] [stdout] 789 | pub const fn relative_rank_of_square(c: Color, s: Square) -> Rank {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `from_to`, `set_from_move`, `is_nonzero`, and `make` are never used
[INFO] [stdout]    --> src/types.rs:814:18
[INFO] [stdout]     |
[INFO] [stdout] 805 | impl Move {
[INFO] [stdout]     | --------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 814 |     pub const fn from_to(&self) -> u16 {
[INFO] [stdout]     |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 818 |     pub fn set_from_move(&mut self, m: Move) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 887 |     pub const fn is_nonzero(&self) -> bool {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 903 |     pub fn make(move_type: MoveType, from: Square, to: Square, pt: PieceType) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEBBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub const FILEBBB: Bitboard = FILEABB << 1;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILECBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const FILECBB: Bitboard = FILEABB << 2;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEDBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const FILEDBB: Bitboard = FILEABB << 3;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEEBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub const FILEEBB: Bitboard = FILEABB << 4;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEFBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:16:11
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub const FILEFBB: Bitboard = FILEABB << 5;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FILEGBB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const FILEGBB: Bitboard = FILEABB << 6;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK2BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const RANK2BB: Bitboard = RANK1BB << (8 * 1);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK3BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const RANK3BB: Bitboard = RANK1BB << (8 * 2);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK4BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const RANK4BB: Bitboard = RANK1BB << (8 * 2);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK5BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const RANK5BB: Bitboard = RANK1BB << (8 * 4);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK6BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const RANK6BB: Bitboard = RANK1BB << (8 * 5);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RANK7BB` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const RANK7BB: Bitboard = RANK1BB << (8 * 6);
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `shift_twice` is never used
[INFO] [stdout]   --> src/board/bitboard.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 | const fn shift_twice(b: Bitboard, d: Direction) -> Bitboard {
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `alligned` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 104 | pub fn alligned(s1: Square, s2: Square, s3: Square) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rank_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:162:10
[INFO] [stdout]     |
[INFO] [stdout] 162 | const fn rank_bb(r: Rank) -> Bitboard {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `file_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:174:10
[INFO] [stdout]     |
[INFO] [stdout] 174 | const fn file_bb(f: File) -> Bitboard {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `least_significant_square_bb` is never used
[INFO] [stdout]    --> src/board/bitboard.rs:187:4
[INFO] [stdout]     |
[INFO] [stdout] 187 | fn least_significant_square_bb(bb: Bitboard) -> Bitboard {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_PLY` is never used
[INFO] [stdout]   --> src/board/position.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const MAX_PLY: usize = 246; // Maximum search depth
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CUCKOO` is never used
[INFO] [stdout]   --> src/board/position.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub static CUCKOO: OnceLock<[Key; 8192]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CUCKOO_MOVE` is never used
[INFO] [stdout]   --> src/board/position.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub static CUCKOO_MOVE: OnceLock<[Key; 8192]> = OnceLock::new();
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `pop` are never used
[INFO] [stdout]    --> src/board/position.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 113 | impl StateStack {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 114 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     fn pop(&mut self) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `castling_rook_square` and `castling_path` are never read
[INFO] [stdout]    --> src/board/position.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct Position {
[INFO] [stdout]     |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 135 |     castling_rook_square: [Square; CRNB],
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 136 |     castling_path: [Bitboard; CRNB],
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/board/position.rs:173:8
[INFO] [stdout]     |
[INFO] [stdout] 143 | impl Position {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn set_castling_right(&mut self, c: Color, rfrom: Square) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     fn set_state(&mut self) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn legal(self, m: Move) -> bool {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 339 |     pub fn all_pieces(&self) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 343 |     fn pseudo_legal(&self, m: Move, state_stack: &StateStack) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     fn gives_check(&self, m: Move) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 747 |     fn side_to_move(&self) -> Color {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 762 |     fn moved_piece(&self, m: Move) -> Piece {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 777 |     pub fn ep_square(&self) -> Square {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 782 |     fn can_castle(&self, cr: CastlingRights) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 787 |     pub fn checkers(&self) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 792 |     pub fn blockers_for_king(&self, c: Color) -> Bitboard {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 797 |     fn pinners(&self, c: Color) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 802 |     fn check_squares(&self, pt: PieceType) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 807 |     fn pawn_key(&self) -> Key {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 812 |     fn material_key(&self) -> Key {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 817 |     fn non_pawn_material(&self, c: Color) -> Value {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 822 |     fn game_ply(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 827 |     fn rule50_count(&self) -> i32 {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 832 |     fn captured_piece(&self) -> Piece {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 927 |     fn pieces_by_type(&self, pt: PieceType) -> Bitboard {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_update_sliders_blockers` is never used
[INFO] [stdout]     --> src/board/position.rs:1151:8
[INFO] [stdout]      |
[INFO] [stdout] 1151 |     fn test_update_sliders_blockers() {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_zorist_nopawns` is never used
[INFO] [stdout]   --> src/board/zobrist.rs:69:8
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub fn get_zorist_nopawns() -> Key {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MOVES` is never used
[INFO] [stdout]   --> src/board/movegen.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const MAX_MOVES: usize = 256;
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ExtMove` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | struct ExtMove {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `White` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct White;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Black` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Black;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ColorInfo` is never used
[INFO] [stdout]   --> src/board/movegen.rs:31:11
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub trait ColorInfo {
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Captures` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct Captures;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Quiets` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct Quiets;
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `QuietChecks` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:45:12
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub struct QuietChecks;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Evasions` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Evasions;
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonEvasions` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub struct NonEvasions;
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Legal` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:48:12
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub struct Legal;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `GenTypeInfo` is never used
[INFO] [stdout]   --> src/board/movegen.rs:50:11
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub trait GenTypeInfo {
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub struct North;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub struct South;
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:75:12
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub struct East;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:76:12
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub struct West;
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North_East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:77:12
[INFO] [stdout]    |
[INFO] [stdout] 77 | pub struct North_East;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South_East` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:78:12
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub struct South_East;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `South_West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:79:12
[INFO] [stdout]    |
[INFO] [stdout] 79 | pub struct South_West;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `North_West` is never constructed
[INFO] [stdout]   --> src/board/movegen.rs:80:12
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub struct North_West;
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DirectionType` is never used
[INFO] [stdout]   --> src/board/movegen.rs:82:11
[INFO] [stdout]    |
[INFO] [stdout] 82 | pub trait DirectionType {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new_from_move` is never used
[INFO] [stdout]    --> src/board/movegen.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl ExtMove {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] 112 |     pub fn new_from_move(m: Move) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MoveList` is never constructed
[INFO] [stdout]    --> src/board/movegen.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | struct MoveList {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push_move`, and `push_move_ext_move` are never used
[INFO] [stdout]    --> src/board/movegen.rs:122:12
[INFO] [stdout]     |
[INFO] [stdout] 121 | impl MoveList {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 122 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn push_move(&mut self, mv: Move) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn push_move_ext_move(&mut self, mv: ExtMove) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_promotions` is never used
[INFO] [stdout]    --> src/board/movegen.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_pawn_moves` is never used
[INFO] [stdout]    --> src/board/movegen.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 | pub fn generate_pawn_moves<T: GenTypeInfo, C: ColorInfo>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate` is never used
[INFO] [stdout]    --> src/board/movegen.rs:307:8
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generate_all` is never used
[INFO] [stdout]    --> src/board/movegen.rs:314:8
[INFO] [stdout]     |
[INFO] [stdout] 314 | pub fn generate_all<C: ColorInfo, T: GenTypeInfo>(
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PawnValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:63:11
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub const PawnValue: Value = 208;
[INFO] [stdout]    |           ^^^^^^^^^ help: convert the identifier to upper case: `PAWN_VALUE`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `KnightValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:64:11
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub const KnightValue: Value = 781;
[INFO] [stdout]    |           ^^^^^^^^^^^ help: convert the identifier to upper case: `KNIGHT_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BishopValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:65:11
[INFO] [stdout]    |
[INFO] [stdout] 65 | pub const BishopValue: Value = 825;
[INFO] [stdout]    |           ^^^^^^^^^^^ help: convert the identifier to upper case: `BISHOP_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RookValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:66:11
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub const RookValue: Value = 1276;
[INFO] [stdout]    |           ^^^^^^^^^ help: convert the identifier to upper case: `ROOK_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `QueenValue` should have an upper case name
[INFO] [stdout]   --> src/types.rs:67:11
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub const QueenValue: Value = 2538;
[INFO] [stdout]    |           ^^^^^^^^^^ help: convert the identifier to upper case: `QUEEN_VALUE`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `pieces` should have an upper case name
[INFO] [stdout]   --> src/board/position.rs:52:7
[INFO] [stdout]    |
[INFO] [stdout] 52 | const pieces: [Piece; 12] = [
[INFO] [stdout]    |       ^^^^^^ help: convert the identifier to upper case: `PIECES`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H1` should have a snake case name
[INFO] [stdout]   --> src/board/position.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn H1(h: Key) -> i32 {
[INFO] [stdout]    |    ^^ help: convert the identifier to snake case: `h1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `H2` should have a snake case name
[INFO] [stdout]   --> src/board/position.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn H2(h: Key) -> i32 {
[INFO] [stdout]    |    ^^ help: convert the identifier to snake case: `h2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `Enemy` should have an upper case name
[INFO] [stdout]    --> src/board/movegen.rs:137:64
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn make_promotions<T: GenTypeInfo, D: DirectionType, const Enemy: bool>(
[INFO] [stdout]     |                                                                ^^^^^ help: convert the identifier to upper case: `ENEMY`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TRank7BB` should have a snake case name
[INFO] [stdout]    --> src/board/movegen.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 165 |     let TRank7BB = if us == Color::White {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `trank7_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `TRank3BB` should have a snake case name
[INFO] [stdout]    --> src/board/movegen.rs:170:9
[INFO] [stdout]     |
[INFO] [stdout] 170 |     let TRank3BB = if us == Color::White {
[INFO] [stdout]     |         ^^^^^^^^ help: convert the identifier to snake case: `trank3_bb`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: const parameter `Checks` should have an upper case name
[INFO] [stdout]    --> src/board/movegen.rs:307:53
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub fn generate<C: ColorInfo, T: GenTypeInfo, const Checks: bool>(
[INFO] [stdout]     |                                                     ^^^^^^ help: convert the identifier to upper case: `CHECKS`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.51s
[INFO] running `Command { std: "docker" "inspect" "8aaffe19f5cae7334fc07da3352374ac9f718562360252c86ae2f7fb87de1fd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8aaffe19f5cae7334fc07da3352374ac9f718562360252c86ae2f7fb87de1fd2", kill_on_drop: false }`
[INFO] [stdout] 8aaffe19f5cae7334fc07da3352374ac9f718562360252c86ae2f7fb87de1fd2
