[INFO] cloning repository https://github.com/fangs124/chessbb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fangs124/chessbb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffangs124%2Fchessbb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffangs124%2Fchessbb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 186e555e3a6013b961c426e8c2d8db14837a3148 [INFO] checking fangs124/chessbb/186e555e3a6013b961c426e8c2d8db14837a3148 against master#f5e2df741b4a9820a7579f0c8eccc951706a8782 for pr-147984 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffangs124%2Fchessbb" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/fangs124/chessbb [INFO] finished tweaking git repo https://github.com/fangs124/chessbb [INFO] tweaked toml for git repo https://github.com/fangs124/chessbb written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/fangs124/chessbb on toolchain f5e2df741b4a9820a7579f0c8eccc951706a8782 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/fangs124/chessbb 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" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 4 packages to latest Rust 1.92.0-nightly compatible versions [INFO] [stderr] Adding arrayvec v0.7.6 [INFO] [stderr] Adding serde v1.0.228 [INFO] [stderr] Adding serde_core v1.0.228 [INFO] [stderr] Adding serde_derive v1.0.228 [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8b4cf9bb9e0def35458d1b334404c8ce1784d8f9340636b877c7dcee331e0dad [INFO] running `Command { std: "docker" "start" "-a" "8b4cf9bb9e0def35458d1b334404c8ce1784d8f9340636b877c7dcee331e0dad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8b4cf9bb9e0def35458d1b334404c8ce1784d8f9340636b877c7dcee331e0dad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8b4cf9bb9e0def35458d1b334404c8ce1784d8f9340636b877c7dcee331e0dad", kill_on_drop: false }` [INFO] [stdout] 8b4cf9bb9e0def35458d1b334404c8ce1784d8f9340636b877c7dcee331e0dad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+f5e2df741b4a9820a7579f0c8eccc951706a8782" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9020acf76b056a955e2a27447adbe6e6932ce168166be6f6a4cb36a16b17a4c3 [INFO] running `Command { std: "docker" "start" "-a" "9020acf76b056a955e2a27447adbe6e6932ce168166be6f6a4cb36a16b17a4c3", kill_on_drop: false }` [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling bytemuck_derive v1.10.1 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Checking bytemuck v1.23.2 [INFO] [stderr] Checking atomic v0.6.1 [INFO] [stderr] Checking chessbb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `ops::Neg` [INFO] [stdout] --> src/search.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | ops::Neg, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PositionData` and `TranspositionTable` [INFO] [stdout] --> src/search.rs:9:92 [INFO] [stdout] | [INFO] [stdout] 9 | ChessBoard, ChessBoardSnapshot, ChessMove, GameResult, GameState, NodeType, PieceType, PositionData, Side, TranspositionTable, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicU64` and `rc::Rc` [INFO] [stdout] --> src/transposition.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | rc::Rc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 5 | sync::atomic::{AtomicU64, Ordering}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `movegen::SIZE` [INFO] [stdout] --> src/lib.rs:16:39 [INFO] [stdout] | [INFO] [stdout] 16 | bitboard::*, chessmove::MoveType, movegen::SIZE, zobrist::{ZobristHash, ZobristTable} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:551:39 [INFO] [stdout] | [INFO] [stdout] 551 | check_bitboard |= (chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 551 - check_bitboard |= (chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] 551 + check_bitboard |= chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:553:39 [INFO] [stdout] | [INFO] [stdout] 553 | check_bitboard |= (chessboard.piece_bbs[08] & get_knight_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 553 - check_bitboard |= (chessboard.piece_bbs[08] & get_knight_attack(king_pos)); [INFO] [stdout] 553 + check_bitboard |= chessboard.piece_bbs[08] & get_knight_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:555:39 [INFO] [stdout] | [INFO] [stdout] 555 | check_bitboard |= (chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 555 - check_bitboard |= (chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] 555 + check_bitboard |= chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:557:39 [INFO] [stdout] | [INFO] [stdout] 557 | check_bitboard |= (chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 557 - check_bitboard |= (chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] 557 + check_bitboard |= chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:559:39 [INFO] [stdout] | [INFO] [stdout] 559 | check_bitboard |= (chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 559 - check_bitboard |= (chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos)); [INFO] [stdout] 559 + check_bitboard |= chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:568:39 [INFO] [stdout] | [INFO] [stdout] 568 | check_bitboard |= (chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 568 - check_bitboard |= (chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] 568 + check_bitboard |= chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:570:39 [INFO] [stdout] | [INFO] [stdout] 570 | check_bitboard |= (chessboard.piece_bbs[02] & get_knight_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 570 - check_bitboard |= (chessboard.piece_bbs[02] & get_knight_attack(king_pos)); [INFO] [stdout] 570 + check_bitboard |= chessboard.piece_bbs[02] & get_knight_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:572:39 [INFO] [stdout] | [INFO] [stdout] 572 | check_bitboard |= (chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 572 - check_bitboard |= (chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] 572 + check_bitboard |= chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:574:39 [INFO] [stdout] | [INFO] [stdout] 574 | check_bitboard |= (chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 574 - check_bitboard |= (chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] 574 + check_bitboard |= chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:576:39 [INFO] [stdout] | [INFO] [stdout] 576 | check_bitboard |= (chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 576 - check_bitboard |= (chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos)); [INFO] [stdout] 576 + check_bitboard |= chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ops::Neg` [INFO] [stdout] --> src/search.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | ops::Neg, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `PositionData` and `TranspositionTable` [INFO] [stdout] --> src/search.rs:9:92 [INFO] [stdout] | [INFO] [stdout] 9 | ChessBoard, ChessBoardSnapshot, ChessMove, GameResult, GameState, NodeType, PieceType, PositionData, Side, TranspositionTable, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AtomicU64` and `rc::Rc` [INFO] [stdout] --> src/transposition.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | rc::Rc, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 5 | sync::atomic::{AtomicU64, Ordering}, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `movegen::SIZE` [INFO] [stdout] --> src/lib.rs:16:39 [INFO] [stdout] | [INFO] [stdout] 16 | bitboard::*, chessmove::MoveType, movegen::SIZE, zobrist::{ZobristHash, ZobristTable} [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:551:39 [INFO] [stdout] | [INFO] [stdout] 551 | check_bitboard |= (chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 551 - check_bitboard |= (chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] 551 + check_bitboard |= chessboard.piece_bbs[07] & get_queen_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:553:39 [INFO] [stdout] | [INFO] [stdout] 553 | check_bitboard |= (chessboard.piece_bbs[08] & get_knight_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 553 - check_bitboard |= (chessboard.piece_bbs[08] & get_knight_attack(king_pos)); [INFO] [stdout] 553 + check_bitboard |= chessboard.piece_bbs[08] & get_knight_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:555:39 [INFO] [stdout] | [INFO] [stdout] 555 | check_bitboard |= (chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 555 - check_bitboard |= (chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] 555 + check_bitboard |= chessboard.piece_bbs[09] & get_bishop_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:557:39 [INFO] [stdout] | [INFO] [stdout] 557 | check_bitboard |= (chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 557 - check_bitboard |= (chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] 557 + check_bitboard |= chessboard.piece_bbs[10] & get_rook_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:559:39 [INFO] [stdout] | [INFO] [stdout] 559 | check_bitboard |= (chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 559 - check_bitboard |= (chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos)); [INFO] [stdout] 559 + check_bitboard |= chessboard.piece_bbs[11] & get_w_pawn_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:568:39 [INFO] [stdout] | [INFO] [stdout] 568 | check_bitboard |= (chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 568 - check_bitboard |= (chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers)); [INFO] [stdout] 568 + check_bitboard |= chessboard.piece_bbs[01] & get_queen_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:570:39 [INFO] [stdout] | [INFO] [stdout] 570 | check_bitboard |= (chessboard.piece_bbs[02] & get_knight_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 570 - check_bitboard |= (chessboard.piece_bbs[02] & get_knight_attack(king_pos)); [INFO] [stdout] 570 + check_bitboard |= chessboard.piece_bbs[02] & get_knight_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:572:39 [INFO] [stdout] | [INFO] [stdout] 572 | check_bitboard |= (chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 572 - check_bitboard |= (chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers)); [INFO] [stdout] 572 + check_bitboard |= chessboard.piece_bbs[03] & get_bishop_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:574:39 [INFO] [stdout] | [INFO] [stdout] 574 | check_bitboard |= (chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 574 - check_bitboard |= (chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers)); [INFO] [stdout] 574 + check_bitboard |= chessboard.piece_bbs[04] & get_rook_attack(king_pos, blockers) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:576:39 [INFO] [stdout] | [INFO] [stdout] 576 | check_bitboard |= (chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 576 - check_bitboard |= (chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos)); [INFO] [stdout] 576 + check_bitboard |= chessboard.piece_bbs[05] & get_b_pawn_attack(king_pos) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/search.rs:147:13 [INFO] [stdout] | [INFO] [stdout] 147 | let mut moves = moves.unwrap_or_else(|| self.core.generate_moves(None)); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/search.rs:147:13 [INFO] [stdout] | [INFO] [stdout] 147 | let mut moves = moves.unwrap_or_else(|| self.core.generate_moves(None)); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piece_type` [INFO] [stdout] --> src/lib.rs:426:36 [INFO] [stdout] | [INFO] [stdout] 426 | pub const fn is_present(&self, piece_type: ChessPiece, square: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piece_type` [INFO] [stdout] --> src/lib.rs:427:56 [INFO] [stdout] | [INFO] [stdout] 427 | matches!(self.mailbox[square.to_usize()], Some(piece_type)) [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piece_type` [INFO] [stdout] --> src/lib.rs:426:36 [INFO] [stdout] | [INFO] [stdout] 426 | pub const fn is_present(&self, piece_type: ChessPiece, square: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `piece_type` [INFO] [stdout] --> src/lib.rs:427:56 [INFO] [stdout] | [INFO] [stdout] 427 | matches!(self.mailbox[square.to_usize()], Some(piece_type)) [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_piece_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `chessmove::MoveType` is more private than the item `chessmove::ChessMove::new` [INFO] [stdout] --> src/chessmove/mod.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub const fn new(s: Square, t: Square, m: MoveType) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `chessmove::ChessMove::new` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `chessmove::MoveType` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/chessmove/mod.rs:81:1 [INFO] [stdout] | [INFO] [stdout] 81 | pub(crate) enum MoveType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `chessmove::MoveType` is more private than the item `chessmove::ChessMove::new` [INFO] [stdout] --> src/chessmove/mod.rs:159:5 [INFO] [stdout] | [INFO] [stdout] 159 | pub const fn new(s: Square, t: Square, m: MoveType) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ associated function `chessmove::ChessMove::new` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `chessmove::MoveType` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/chessmove/mod.rs:81:1 [INFO] [stdout] | [INFO] [stdout] 81 | pub(crate) enum MoveType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `is_piece_pinned`, `count_checking_pieces`, and `INITIAL_ATTACKED_BB` are never used [INFO] [stdout] --> src/lib.rs:862:19 [INFO] [stdout] | [INFO] [stdout] 396 | impl ChessBoardCore { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 862 | pub(crate) fn is_piece_pinned(&self, square: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub(crate) const fn count_checking_pieces(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 947 | const INITIAL_ATTACKED_BB: BitBoard = BitBoard::new(0b00000000_00000000_11111111_00000000_00000000_00000000_00000000_00000000); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `ONES`, `get_bit`, `lsb_index`, and `bit_xor` are never used [INFO] [stdout] --> src/bitboard/mod.rs:91:22 [INFO] [stdout] | [INFO] [stdout] 84 | impl BitBoard { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub(crate) const ONES: BitBoard = BitBoard { data: u64::MAX }; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub(crate) const fn get_bit(&self, i: usize) -> BitBoard { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub(crate) const fn lsb_index(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub(crate) const fn bit_xor(&self, other: &BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNICODE_SYM` is never used [INFO] [stdout] --> src/bitboard/mod.rs:237:18 [INFO] [stdout] | [INFO] [stdout] 237 | pub(super) const UNICODE_SYM: [char; 12] = ['♚', '♛', '♞', '♝', '♜', '♟', '♔', '♕', '♘', '♗', '♖', '♙']; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_same_diag` is never used [INFO] [stdout] --> src/bitboard/mod.rs:249:21 [INFO] [stdout] | [INFO] [stdout] 249 | pub(crate) const fn is_same_diag(source: Square, target: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SYM_REV` is never used [INFO] [stdout] --> src/bitboard/mod.rs:299:18 [INFO] [stdout] | [INFO] [stdout] 299 | pub(crate) const SQUARE_SYM_REV: [&str; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_CHAR` is never used [INFO] [stdout] --> src/bitboard/mod.rs:310:18 [INFO] [stdout] | [INFO] [stdout] 310 | pub(crate) const RANK_CHAR: [char; 64] = [ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_CHAR` is never used [INFO] [stdout] --> src/bitboard/mod.rs:321:18 [INFO] [stdout] | [INFO] [stdout] 321 | pub(crate) const FILE_CHAR: [char; 64] = [ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pawn_attack` is never used [INFO] [stdout] --> src/bitboard/attack.rs:30:14 [INFO] [stdout] | [INFO] [stdout] 30 | pub const fn get_pawn_attack(square: Square, side: Side) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_occ_bb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | const fn compute_occ_bb(index: usize, mask_bitcount: usize, attack_mask: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bishop_attack_mbb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:167:10 [INFO] [stdout] | [INFO] [stdout] 167 | const fn bishop_attack_mbb() -> [[BitBoard; SIZE_BISHOP]; 64] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rook_attack_mbb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:194:10 [INFO] [stdout] | [INFO] [stdout] 194 | const fn rook_attack_mbb() -> [[BitBoard; SIZE_ROOK]; 64] { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_source` and `set_target` are never used [INFO] [stdout] --> src/chessmove/mod.rs:140:25 [INFO] [stdout] | [INFO] [stdout] 94 | impl ChessMove { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 140 | pub(crate) const fn set_source(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub(crate) const fn set_target(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIZE` is never used [INFO] [stdout] --> src/movegen.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) const SIZE: usize = 218; //256 looks nicer.. [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_move_capture` and `mvv_score` are never used [INFO] [stdout] --> src/movegen.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl ChessBoardCore { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 9 | pub(crate) fn is_move_capture(&self, chess_move: &ChessMove) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub(crate) fn mvv_score(&self, chess_move: &ChessMove) -> i16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `AtomicTT` is never used [INFO] [stdout] --> src/search.rs:106:6 [INFO] [stdout] | [INFO] [stdout] 106 | type AtomicTT = AtomicTranspositionTable; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUIESCENE_FALLBACK_DEPTH` is never used [INFO] [stdout] --> src/search.rs:108:7 [INFO] [stdout] | [INFO] [stdout] 108 | const QUIESCENE_FALLBACK_DEPTH: u16 = u8::MAX as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SYM` is never used [INFO] [stdout] --> src/square/mod.rs:150:18 [INFO] [stdout] | [INFO] [stdout] 150 | pub(crate) const SQUARE_SYM: [&str; 64] = [ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARES_RAW` is never used [INFO] [stdout] --> src/square/mod.rs:161:7 [INFO] [stdout] | [INFO] [stdout] 161 | const SQUARES_RAW: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARES_RAW_USIZE` is never used [INFO] [stdout] --> src/square/mod.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | const SQUARES_RAW_USIZE: [usize; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `compute_castle_hash` are never used [INFO] [stdout] --> src/zobrist/mod.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 70 | impl ZobristHash { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 74 | pub(super) const fn new(value: u64) -> ZobristHash { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub(super) const fn compute_castle_hash(chessboard: &ChessBoardCore) -> ZobristHash { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `const_default` is never used [INFO] [stdout] --> src/transposition.rs:83:14 [INFO] [stdout] | [INFO] [stdout] 76 | impl PositionData { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | const fn const_default() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `look_up` is never used [INFO] [stdout] --> src/transposition.rs:204:19 [INFO] [stdout] | [INFO] [stdout] 177 | impl TranspositionTable { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 204 | pub(crate) fn look_up(&self, hash: &ZobristHash) -> PositionData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_POSITION_DATA_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:255:7 [INFO] [stdout] | [INFO] [stdout] 255 | const IS_POSITION_DATA_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `const_default` are never used [INFO] [stdout] --> src/transposition.rs:271:8 [INFO] [stdout] | [INFO] [stdout] 269 | impl AtomicPositionData { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 270 | #[inline(always)] [INFO] [stdout] 271 | fn new(key: ZobristHash, depth: u16, eval: i16, ty: NodeType, best: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 301 | const fn const_default() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `load` is never used [INFO] [stdout] --> src/transposition.rs:411:19 [INFO] [stdout] | [INFO] [stdout] 386 | impl AtomicTranspositionTable { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 411 | pub(crate) fn load(&self, hash: ZobristHash, order: Ordering) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_SMALL_POSITION_DATA_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:440:7 [INFO] [stdout] | [INFO] [stdout] 440 | const IS_SMALL_POSITION_DATA_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ZOBRIST_HASH_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:441:7 [INFO] [stdout] | [INFO] [stdout] 441 | const IS_ZOBRIST_HASH_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/transposition.rs:492:8 [INFO] [stdout] | [INFO] [stdout] 488 | impl SmallAtomicPositionData { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 492 | fn new(key: ZobristHash, depth: u16, eval: i16, ty: NodeType, best: Option) -> SmallAtomicPositionData { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_sync` is never used [INFO] [stdout] --> src/transposition.rs:665:10 [INFO] [stdout] | [INFO] [stdout] 665 | const fn check_sync() {} [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIZE` is never used [INFO] [stdout] --> src/transposition.rs:669:7 [INFO] [stdout] | [INFO] [stdout] 669 | const SIZE: usize = mem::size_of::(); // 8 [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALIGN` is never used [INFO] [stdout] --> src/transposition.rs:670:7 [INFO] [stdout] | [INFO] [stdout] 670 | const ALIGN: usize = mem::align_of::(); // 2 [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HAS_ATOMIC_64` is never used [INFO] [stdout] --> src/transposition.rs:671:7 [INFO] [stdout] | [INFO] [stdout] 671 | const HAS_ATOMIC_64: bool = cfg!(target_has_atomic = "64"); // true [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HAS_ATOMIC_128` is never used [INFO] [stdout] --> src/transposition.rs:672:7 [INFO] [stdout] | [INFO] [stdout] 672 | const HAS_ATOMIC_128: bool = cfg!(target_has_atomic = "128"); // false [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `is_piece_pinned`, `count_checking_pieces`, and `INITIAL_ATTACKED_BB` are never used [INFO] [stdout] --> src/lib.rs:862:19 [INFO] [stdout] | [INFO] [stdout] 396 | impl ChessBoardCore { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 862 | pub(crate) fn is_piece_pinned(&self, square: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub(crate) const fn count_checking_pieces(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 947 | const INITIAL_ATTACKED_BB: BitBoard = BitBoard::new(0b00000000_00000000_11111111_00000000_00000000_00000000_00000000_00000000); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `ONES`, `get_bit`, `lsb_index`, and `bit_xor` are never used [INFO] [stdout] --> src/bitboard/mod.rs:91:22 [INFO] [stdout] | [INFO] [stdout] 84 | impl BitBoard { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 91 | pub(crate) const ONES: BitBoard = BitBoard { data: u64::MAX }; [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub(crate) const fn get_bit(&self, i: usize) -> BitBoard { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub(crate) const fn lsb_index(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub(crate) const fn bit_xor(&self, other: &BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNICODE_SYM` is never used [INFO] [stdout] --> src/bitboard/mod.rs:237:18 [INFO] [stdout] | [INFO] [stdout] 237 | pub(super) const UNICODE_SYM: [char; 12] = ['♚', '♛', '♞', '♝', '♜', '♟', '♔', '♕', '♘', '♗', '♖', '♙']; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_same_diag` is never used [INFO] [stdout] --> src/bitboard/mod.rs:249:21 [INFO] [stdout] | [INFO] [stdout] 249 | pub(crate) const fn is_same_diag(source: Square, target: Square) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SYM_REV` is never used [INFO] [stdout] --> src/bitboard/mod.rs:299:18 [INFO] [stdout] | [INFO] [stdout] 299 | pub(crate) const SQUARE_SYM_REV: [&str; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_CHAR` is never used [INFO] [stdout] --> src/bitboard/mod.rs:310:18 [INFO] [stdout] | [INFO] [stdout] 310 | pub(crate) const RANK_CHAR: [char; 64] = [ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_CHAR` is never used [INFO] [stdout] --> src/bitboard/mod.rs:321:18 [INFO] [stdout] | [INFO] [stdout] 321 | pub(crate) const FILE_CHAR: [char; 64] = [ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_pawn_attack` is never used [INFO] [stdout] --> src/bitboard/attack.rs:30:14 [INFO] [stdout] | [INFO] [stdout] 30 | pub const fn get_pawn_attack(square: Square, side: Side) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compute_occ_bb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 77 | const fn compute_occ_bb(index: usize, mask_bitcount: usize, attack_mask: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `bishop_attack_mbb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:167:10 [INFO] [stdout] | [INFO] [stdout] 167 | const fn bishop_attack_mbb() -> [[BitBoard; SIZE_BISHOP]; 64] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `rook_attack_mbb` is never used [INFO] [stdout] --> src/bitboard/attack/magic.rs:194:10 [INFO] [stdout] | [INFO] [stdout] 194 | const fn rook_attack_mbb() -> [[BitBoard; SIZE_ROOK]; 64] { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_source` and `set_target` are never used [INFO] [stdout] --> src/chessmove/mod.rs:140:25 [INFO] [stdout] | [INFO] [stdout] 94 | impl ChessMove { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 140 | pub(crate) const fn set_source(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub(crate) const fn set_target(&mut self, index: usize) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIZE` is never used [INFO] [stdout] --> src/movegen.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | pub(crate) const SIZE: usize = 218; //256 looks nicer.. [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_move_capture` and `mvv_score` are never used [INFO] [stdout] --> src/movegen.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl ChessBoardCore { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 9 | pub(crate) fn is_move_capture(&self, chess_move: &ChessMove) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub(crate) fn mvv_score(&self, chess_move: &ChessMove) -> i16 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `AtomicTT` is never used [INFO] [stdout] --> src/search.rs:106:6 [INFO] [stdout] | [INFO] [stdout] 106 | type AtomicTT = AtomicTranspositionTable; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `QUIESCENE_FALLBACK_DEPTH` is never used [INFO] [stdout] --> src/search.rs:108:7 [INFO] [stdout] | [INFO] [stdout] 108 | const QUIESCENE_FALLBACK_DEPTH: u16 = u8::MAX as u16; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARE_SYM` is never used [INFO] [stdout] --> src/square/mod.rs:150:18 [INFO] [stdout] | [INFO] [stdout] 150 | pub(crate) const SQUARE_SYM: [&str; 64] = [ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARES_RAW` is never used [INFO] [stdout] --> src/square/mod.rs:161:7 [INFO] [stdout] | [INFO] [stdout] 161 | const SQUARES_RAW: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SQUARES_RAW_USIZE` is never used [INFO] [stdout] --> src/square/mod.rs:172:7 [INFO] [stdout] | [INFO] [stdout] 172 | const SQUARES_RAW_USIZE: [usize; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `compute_castle_hash` are never used [INFO] [stdout] --> src/zobrist/mod.rs:74:25 [INFO] [stdout] | [INFO] [stdout] 70 | impl ZobristHash { [INFO] [stdout] | ---------------- associated functions in this implementation [INFO] [stdout] ... [INFO] [stdout] 74 | pub(super) const fn new(value: u64) -> ZobristHash { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub(super) const fn compute_castle_hash(chessboard: &ChessBoardCore) -> ZobristHash { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `const_default` is never used [INFO] [stdout] --> src/transposition.rs:83:14 [INFO] [stdout] | [INFO] [stdout] 76 | impl PositionData { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 83 | const fn const_default() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `look_up` is never used [INFO] [stdout] --> src/transposition.rs:204:19 [INFO] [stdout] | [INFO] [stdout] 177 | impl TranspositionTable { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 204 | pub(crate) fn look_up(&self, hash: &ZobristHash) -> PositionData { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_POSITION_DATA_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:255:7 [INFO] [stdout] | [INFO] [stdout] 255 | const IS_POSITION_DATA_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `const_default` are never used [INFO] [stdout] --> src/transposition.rs:271:8 [INFO] [stdout] | [INFO] [stdout] 269 | impl AtomicPositionData { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 270 | #[inline(always)] [INFO] [stdout] 271 | fn new(key: ZobristHash, depth: u16, eval: i16, ty: NodeType, best: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 301 | const fn const_default() -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `load` is never used [INFO] [stdout] --> src/transposition.rs:411:19 [INFO] [stdout] | [INFO] [stdout] 386 | impl AtomicTranspositionTable { [INFO] [stdout] | ----------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 411 | pub(crate) fn load(&self, hash: ZobristHash, order: Ordering) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_SMALL_POSITION_DATA_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:440:7 [INFO] [stdout] | [INFO] [stdout] 440 | const IS_SMALL_POSITION_DATA_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `IS_ZOBRIST_HASH_LOCK_FREE` is never used [INFO] [stdout] --> src/transposition.rs:441:7 [INFO] [stdout] | [INFO] [stdout] 441 | const IS_ZOBRIST_HASH_LOCK_FREE: bool = Atomic::::is_lock_free(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/transposition.rs:492:8 [INFO] [stdout] | [INFO] [stdout] 488 | impl SmallAtomicPositionData { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 492 | fn new(key: ZobristHash, depth: u16, eval: i16, ty: NodeType, best: Option) -> SmallAtomicPositionData { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_sync` is never used [INFO] [stdout] --> src/transposition.rs:665:10 [INFO] [stdout] | [INFO] [stdout] 665 | const fn check_sync() {} [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SIZE` is never used [INFO] [stdout] --> src/transposition.rs:669:7 [INFO] [stdout] | [INFO] [stdout] 669 | const SIZE: usize = mem::size_of::(); // 8 [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ALIGN` is never used [INFO] [stdout] --> src/transposition.rs:670:7 [INFO] [stdout] | [INFO] [stdout] 670 | const ALIGN: usize = mem::align_of::(); // 2 [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HAS_ATOMIC_64` is never used [INFO] [stdout] --> src/transposition.rs:671:7 [INFO] [stdout] | [INFO] [stdout] 671 | const HAS_ATOMIC_64: bool = cfg!(target_has_atomic = "64"); // true [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HAS_ATOMIC_128` is never used [INFO] [stdout] --> src/transposition.rs:672:7 [INFO] [stdout] | [INFO] [stdout] 672 | const HAS_ATOMIC_128: bool = cfg!(target_has_atomic = "128"); // false [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::error` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use core::error; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/main.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use std::{env, time::Instant}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `core::error` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use core::error; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/main.rs:9:11 [INFO] [stdout] | [INFO] [stdout] 9 | use std::{env, time::Instant}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start_fen` [INFO] [stdout] --> src/main.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let start_fen = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_fen` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start_fen` [INFO] [stdout] --> src/main.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | let start_fen = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1"; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_fen` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USE_RUSTIC_EPDS` is never used [INFO] [stdout] --> src/main.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const USE_RUSTIC_EPDS: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perft_test` is never used [INFO] [stdout] --> src/main.rs:92:4 [INFO] [stdout] | [INFO] [stdout] 92 | fn perft_test(skip_to: Option) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LARGE_TEST_EPDS` is never used [INFO] [stdout] --> src/epds.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const LARGE_TEST_EPDS: [&str; 172] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:192:17 [INFO] [stdout] | [INFO] [stdout] 192 | let mut perft_result: Vec<(usize, usize)> = Vec::new(); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `perft_result` [INFO] [stdout] --> src/main.rs:192:17 [INFO] [stdout] | [INFO] [stdout] 192 | let mut perft_result: Vec<(usize, usize)> = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_perft_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `USE_RUSTIC_EPDS` is never used [INFO] [stdout] --> src/main.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const USE_RUSTIC_EPDS: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perft_test` is never used [INFO] [stdout] --> src/main.rs:92:4 [INFO] [stdout] | [INFO] [stdout] 92 | fn perft_test(skip_to: Option) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `LARGE_TEST_EPDS` is never used [INFO] [stdout] --> src/epds.rs:4:11 [INFO] [stdout] | [INFO] [stdout] 4 | pub const LARGE_TEST_EPDS: [&str; 172] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [optimized + debuginfo] target(s) in 15.10s [INFO] running `Command { std: "docker" "inspect" "9020acf76b056a955e2a27447adbe6e6932ce168166be6f6a4cb36a16b17a4c3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9020acf76b056a955e2a27447adbe6e6932ce168166be6f6a4cb36a16b17a4c3", kill_on_drop: false }` [INFO] [stdout] 9020acf76b056a955e2a27447adbe6e6932ce168166be6f6a4cb36a16b17a4c3