[INFO] cloning repository https://github.com/vicen621/chess_bot [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/vicen621/chess_bot" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvicen621%2Fchess_bot", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvicen621%2Fchess_bot'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 010d8a047e1ef1676dec5676c03c1f95f0de3131 [INFO] checking vicen621/chess_bot against try#8d46be77cd48fdbcced888d027457e2c9cf2aa16 for pr-142723 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fvicen621%2Fchess_bot" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/vicen621/chess_bot on toolchain 8d46be77cd48fdbcced888d027457e2c9cf2aa16 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8d46be77cd48fdbcced888d027457e2c9cf2aa16" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/vicen621/chess_bot [INFO] finished tweaking git repo https://github.com/vicen621/chess_bot [INFO] tweaked toml for git repo https://github.com/vicen621/chess_bot written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/vicen621/chess_bot 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" "+8d46be77cd48fdbcced888d027457e2c9cf2aa16" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8d46be77cd48fdbcced888d027457e2c9cf2aa16" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 77d8c7766b1f316dc16a9d734cb3a3595841fe880079e793f610b1ccad7ec08d [INFO] running `Command { std: "docker" "start" "-a" "77d8c7766b1f316dc16a9d734cb3a3595841fe880079e793f610b1ccad7ec08d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "77d8c7766b1f316dc16a9d734cb3a3595841fe880079e793f610b1ccad7ec08d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77d8c7766b1f316dc16a9d734cb3a3595841fe880079e793f610b1ccad7ec08d", kill_on_drop: false }` [INFO] [stdout] 77d8c7766b1f316dc16a9d734cb3a3595841fe880079e793f610b1ccad7ec08d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8d46be77cd48fdbcced888d027457e2c9cf2aa16" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ae3632982bfa665c372a639155bd2587b18f77589b8a94feb290cc0a2899e863 [INFO] running `Command { std: "docker" "start" "-a" "ae3632982bfa665c372a639155bd2587b18f77589b8a94feb290cc0a2899e863", kill_on_drop: false }` [INFO] [stderr] Checking chess_bot v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:70:40 [INFO] [stdout] | [INFO] [stdout] 70 | let bb = BitBoard::from_square(Square::A8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:72:46 [INFO] [stdout] | [INFO] [stdout] 72 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:72:82 [INFO] [stdout] | [INFO] [stdout] 72 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:72:118 [INFO] [stdout] | [INFO] [stdout] 72 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:80:40 [INFO] [stdout] | [INFO] [stdout] 80 | let bb = BitBoard::from_square(Square::A8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:82:46 [INFO] [stdout] | [INFO] [stdout] 82 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:82:82 [INFO] [stdout] | [INFO] [stdout] 82 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Square` [INFO] [stdout] --> src/generators/king_moves.rs:82:118 [INFO] [stdout] | [INFO] [stdout] 82 | let expected = BitBoard::from_square(Square::B7) | BitBoard::from_square(Square::A7) | BitBoard::from_square(Square::B8); [INFO] [stdout] | ^^^^^^ use of undeclared type `Square` [INFO] [stdout] | [INFO] [stdout] help: consider importing this enum [INFO] [stdout] | [INFO] [stdout] 64 + use crate::defs::Square; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `state` and `moves` are never read [INFO] [stdout] --> src/position.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Position { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 14 | state: GameState, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 17 | moves: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `remove_piece` and `move_piece` are never used [INFO] [stdout] --> src/position.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn remove_piece(&mut self, square: Square) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn move_piece(&mut self, from: Square, to: Square) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/position.rs:67:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl Position { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] 67 | pub fn get_side_to_move(&self) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 71 | pub fn get_castling(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn get_halfmove_clock(&self) -> u8 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn get_en_passant(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn get_fullmove_number(&self) -> u16 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn get_pieces_type(&self, piece_type: PieceType) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn get_pieces_color(&self, color: Color) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | pub fn get_all_pieces(&self) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn get_pieces_color_type(&self, color: Color, piece_type: PieceType) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PawnDirections` is never constructed [INFO] [stdout] --> src/generators/pawn_moves.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct PawnDirections { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/generators/pawn_moves.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 11 | impl PawnDirections { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 12 | fn new(color: Color) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PawnMoves` is never constructed [INFO] [stdout] --> src/generators/pawn_moves.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct PawnMoves; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `generate_pseudo_legal_pawn_moves`, `generate_pawn_pushes`, `generate_pawn_captures`, `generate_pawn_en_passant`, and `generate_pawn_promotions` are never used [INFO] [stdout] --> src/generators/pawn_moves.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl PawnMoves { [INFO] [stdout] | -------------- associated functions in this implementation [INFO] [stdout] 28 | pub fn generate_pseudo_legal_pawn_moves(position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn generate_pawn_pushes(position: &Position, moves: &mut Vec, dirs: &PawnDirections, pawns: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | fn generate_pawn_captures(position: &Position, moves: &mut Vec, dirs: &PawnDirections, pawns: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | fn generate_pawn_en_passant(position: &Position, moves: &mut Vec, dirs: &PawnDirections, pawns: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | fn generate_pawn_promotions(position: &Position, moves: &mut Vec, dirs: &PawnDirections, pawns: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PawnMoveExtractor` is never constructed [INFO] [stdout] --> src/generators/pawn_moves.rs:98:8 [INFO] [stdout] | [INFO] [stdout] 98 | struct PawnMoveExtractor; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `extract_pawn_moves` and `extract_pawn_promotions` are never used [INFO] [stdout] --> src/generators/pawn_moves.rs:101:12 [INFO] [stdout] | [INFO] [stdout] 99 | impl PawnMoveExtractor { [INFO] [stdout] | ---------------------- associated functions in this implementation [INFO] [stdout] 100 | /// Given a resulting bitboard and a relevant offset, find all pawn moves using the given offset. [INFO] [stdout] 101 | pub fn extract_pawn_moves(bb: BitBoard, offset: i8, list: &mut Vec, kind: MoveType) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn extract_pawn_promotions(bb: BitBoard, offset: i8, list: &mut Vec, kind: PromotionType) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KingLookup` is never constructed [INFO] [stdout] --> src/generators/king_moves.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct KingLookup { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `generate_pseudo_legal_king_moves` are never used [INFO] [stdout] --> src/generators/king_moves.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 7 | impl KingLookup { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 8 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn generate_pseudo_legal_king_moves(&self, position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `generate_king_moves`, `generate_king_quiet_moves`, `generate_king_attacks`, and `get_king_moves_bb` are never used [INFO] [stdout] --> src/generators/king_moves.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 27 | impl KingLookup { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 28 | fn generate_king_moves(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | fn generate_king_quiet_moves(&self, position: &Position, moves: &mut Vec, king: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn generate_king_attacks(&self, position: &Position, moves: &mut Vec, king: BitBoard) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn get_king_moves_bb(&self, bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `KnightLookup` is never constructed [INFO] [stdout] --> src/generators/knight_moves.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct KnightLookup { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `generate_pseudo_legal_knight_moves` are never used [INFO] [stdout] --> src/generators/knight_moves.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 7 | impl KnightLookup { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 8 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 19 | pub fn generate_pseudo_legal_knight_moves(&self, position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/generators/knight_moves.rs:30:8 [INFO] [stdout] | [INFO] [stdout] 29 | impl KnightLookup { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 30 | fn generate_knight_attacks(&self, position: &Position, moves: &mut Vec, knight: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn generate_knight_quiet_moves(&self, position: &Position, moves: &mut Vec, knight: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 48 | fn get_knight_moves(&self, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | fn upUpRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | fn upUpLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | fn downDownRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | fn downDownLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | fn upLeftLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn downLeftLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn upRightRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn downRightRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn generate_knight_moves(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SlidingLookup` is never constructed [INFO] [stdout] --> src/generators/sliding_moves.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct SlidingLookup { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `generate_pseudo_legal_rook_moves`, `generate_pseudo_legal_bishop_moves`, and `generate_pseudo_legal_queen_moves` are never used [INFO] [stdout] --> src/generators/sliding_moves.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl SlidingLookup { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 9 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | pub fn generate_pseudo_legal_rook_moves(&self, position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn generate_pseudo_legal_bishop_moves(&self, position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn generate_pseudo_legal_queen_moves(&self, position: &Position, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `generate_rook_attacks`, `generate_rook_quiet_moves`, `get_rook_moves`, and `generate_rook_moves` are never used [INFO] [stdout] --> src/generators/sliding_moves.rs:55:8 [INFO] [stdout] | [INFO] [stdout] 53 | impl SlidingLookup { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 54 | [INFO] [stdout] 55 | fn generate_rook_attacks(&self, position: &Position, moves: &mut Vec, rook: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn generate_rook_quiet_moves(&self, position: &Position, moves: &mut Vec, rook: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | fn get_rook_moves(&self, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | fn generate_rook_moves(square: usize) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `generate_bishop_attacks`, `generate_bishop_quiet_moves`, `get_bishop_moves`, and `generate_bishop_moves` are never used [INFO] [stdout] --> src/generators/sliding_moves.rs:100:8 [INFO] [stdout] | [INFO] [stdout] 99 | impl SlidingLookup { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 100 | fn generate_bishop_attacks(&self, position: &Position, moves: &mut Vec, bishop: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | fn generate_bishop_quiet_moves(&self, position: &Position, moves: &mut Vec, bishop: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | fn get_bishop_moves(&self, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 121 | fn generate_bishop_moves(square: usize) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `generate_queen_attacks`, `generate_queen_quiet_moves`, and `get_queen_moves` are never used [INFO] [stdout] --> src/generators/sliding_moves.rs:167:8 [INFO] [stdout] | [INFO] [stdout] 166 | impl SlidingLookup { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] 167 | fn generate_queen_attacks(&self, position: &Position, moves: &mut Vec, queen: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | fn generate_queen_quiet_moves(&self, position: &Position, moves: &mut Vec, queen: Square) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 184 | fn get_queen_moves(&self, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_MOVES` is never used [INFO] [stdout] --> src/generators/move_generator.rs:5:7 [INFO] [stdout] | [INFO] [stdout] 5 | const MAX_MOVES: usize = 256; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MoveGenerator` is never constructed [INFO] [stdout] --> src/generators/move_generator.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct MoveGenerator { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `generate_all_pseudo_legal_moves`, and `generate_pseudo_legal_moves` are never used [INFO] [stdout] --> src/generators/move_generator.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl MoveGenerator { [INFO] [stdout] | ------------------ associated items in this implementation [INFO] [stdout] 14 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn generate_all_pseudo_legal_moves(&self, position: &Position) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn generate_pseudo_legal_moves(&self, position: &Position, moves: &mut Vec, piece_type: PieceType) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EMPTY` is never used [INFO] [stdout] --> src/bitboard.rs:11:11 [INFO] [stdout] | [INFO] [stdout] 11 | pub const EMPTY: BitBoard = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_1` is never used [INFO] [stdout] --> src/bitboard.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | pub const RANK_1: BitBoard = 0xFF; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_2` is never used [INFO] [stdout] --> src/bitboard.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | pub const RANK_2: BitBoard = RANK_1 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_3` is never used [INFO] [stdout] --> src/bitboard.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const RANK_3: BitBoard = RANK_2 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_4` is never used [INFO] [stdout] --> src/bitboard.rs:15:11 [INFO] [stdout] | [INFO] [stdout] 15 | pub const RANK_4: BitBoard = RANK_3 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_5` is never used [INFO] [stdout] --> src/bitboard.rs:16:11 [INFO] [stdout] | [INFO] [stdout] 16 | pub const RANK_5: BitBoard = RANK_4 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_6` is never used [INFO] [stdout] --> src/bitboard.rs:17:11 [INFO] [stdout] | [INFO] [stdout] 17 | pub const RANK_6: BitBoard = RANK_5 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_7` is never used [INFO] [stdout] --> src/bitboard.rs:18:11 [INFO] [stdout] | [INFO] [stdout] 18 | pub const RANK_7: BitBoard = RANK_6 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANK_8` is never used [INFO] [stdout] --> src/bitboard.rs:19:11 [INFO] [stdout] | [INFO] [stdout] 19 | pub const RANK_8: BitBoard = RANK_7 << 8; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_A` is never used [INFO] [stdout] --> src/bitboard.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | pub const FILE_A: BitBoard = 0x0101_0101_0101_0101; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_B` is never used [INFO] [stdout] --> src/bitboard.rs:22:11 [INFO] [stdout] | [INFO] [stdout] 22 | pub const FILE_B: BitBoard = FILE_A << 1; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_C` is never used [INFO] [stdout] --> src/bitboard.rs:23:11 [INFO] [stdout] | [INFO] [stdout] 23 | pub const FILE_C: BitBoard = FILE_A << 2; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_D` is never used [INFO] [stdout] --> src/bitboard.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | pub const FILE_D: BitBoard = FILE_A << 3; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_E` is never used [INFO] [stdout] --> src/bitboard.rs:25:11 [INFO] [stdout] | [INFO] [stdout] 25 | pub const FILE_E: BitBoard = FILE_A << 4; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_F` is never used [INFO] [stdout] --> src/bitboard.rs:26:11 [INFO] [stdout] | [INFO] [stdout] 26 | pub const FILE_F: BitBoard = FILE_A << 5; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_G` is never used [INFO] [stdout] --> src/bitboard.rs:27:11 [INFO] [stdout] | [INFO] [stdout] 27 | pub const FILE_G: BitBoard = FILE_A << 6; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `FILE_H` is never used [INFO] [stdout] --> src/bitboard.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 28 | pub const FILE_H: BitBoard = FILE_A << 7; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/bitboard.rs:31:8 [INFO] [stdout] | [INFO] [stdout] 30 | pub trait BitBoardMethods { [INFO] [stdout] | --------------- associated items in this trait [INFO] [stdout] 31 | fn set(file: usize, rank: usize) -> BitBoard; [INFO] [stdout] | ^^^ [INFO] [stdout] 32 | fn from_square(sq: Square) -> Self; [INFO] [stdout] 33 | fn from_index(index: usize) -> Self; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 34 | fn from_maybe_square(sq: Option) -> Option; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 35 | fn to_square(&self) -> Square; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 36 | fn count(&self) -> u32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 37 | fn reverse_colors(&self) -> Self; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 38 | fn to_size(&self, rightshift: u8) -> usize; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 39 | fn format(&self) -> String; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 40 | fn shift(&self, direction: i8) -> Self; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BitboardIterator` is never constructed [INFO] [stdout] --> src/bitboard.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct BitboardIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `PieceItr` is never used [INFO] [stdout] --> src/bitboard.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | pub trait PieceItr { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_char` is never used [INFO] [stdout] --> src/pieces.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl PieceType { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn to_char(&self) -> char { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/pieces.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 50 | impl Piece { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 51 | pub const EMPTY: Piece = Piece { piece_type: PieceType::None, color: Color::White }; [INFO] [stdout] 52 | pub const WHITE_PAWN: Piece = Piece { piece_type: PieceType::Pawn, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 53 | pub const WHITE_KNIGHT: Piece = Piece { piece_type: PieceType::Knight, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 54 | pub const WHITE_BISHOP: Piece = Piece { piece_type: PieceType::Bishop, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 55 | pub const WHITE_ROOK: Piece = Piece { piece_type: PieceType::Rook, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 56 | pub const WHITE_QUEEN: Piece = Piece { piece_type: PieceType::Queen, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 57 | pub const WHITE_KING: Piece = Piece { piece_type: PieceType::King, color: Color::White }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 58 | pub const BLACK_PAWN: Piece = Piece { piece_type: PieceType::Pawn, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 59 | pub const BLACK_KNIGHT: Piece = Piece { piece_type: PieceType::Knight, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 60 | pub const BLACK_BISHOP: Piece = Piece { piece_type: PieceType::Bishop, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 61 | pub const BLACK_ROOK: Piece = Piece { piece_type: PieceType::Rook, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 62 | pub const BLACK_QUEEN: Piece = Piece { piece_type: PieceType::Queen, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 63 | pub const BLACK_KING: Piece = Piece { piece_type: PieceType::King, color: Color::Black }; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | pub fn to_char(&self) -> char { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constants `KING_SIDE` and `QUEEN_SIDE` are never used [INFO] [stdout] --> src/defs.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 31 | impl Castling { [INFO] [stdout] | ------------- associated constants in this implementation [INFO] [stdout] ... [INFO] [stdout] 38 | pub const KING_SIDE: CastlingRights = Self::BLACK_KING_SIDE | Self::WHITE_KING_SIDE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 39 | pub const QUEEN_SIDE: CastlingRights = Self::BLACK_QUEEN_SIDE | Self::WHITE_QUEEN_SIDE; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/defs.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 47 | pub enum Square { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] 48 | A1, B1, C1, D1, E1, F1, G1, H1, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 49 | A2, B2, C2, D2, E2, F2, G2, H2, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 50 | A3, B3, C3, D3, E3, F3, G3, H3, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 51 | A4, B4, C4, D4, E4, F4, G4, H4, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 52 | A5, B5, C5, D5, E5, F5, G5, H5, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 53 | A6, B6, C6, D6, E6, F6, G6, H6, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 54 | A7, B7, C7, D7, E7, F7, G7, H7, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] 55 | A8, B8, C8, D8, E8, F8, G8, H8, [INFO] [stdout] | ^^ ^^ ^^ ^^ ^^ ^^ ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `Square` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_algebraic` is never used [INFO] [stdout] --> src/defs.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 58 | impl Square { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn to_algebraic(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Move` is never constructed [INFO] [stdout] --> src/defs.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `from_uci` are never used [INFO] [stdout] --> src/defs.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 94 | impl Move { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 95 | pub fn new(from: Square, to: Square, promotion: Option) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn from_uci(uci: &str) -> Self { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Direction` is never constructed [INFO] [stdout] --> src/defs.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 115 | pub struct Direction; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated constants are never used [INFO] [stdout] --> src/defs.rs:117:15 [INFO] [stdout] | [INFO] [stdout] 116 | impl Direction { [INFO] [stdout] | -------------- associated constants in this implementation [INFO] [stdout] 117 | pub const UP: i8 = 8; [INFO] [stdout] | ^^ [INFO] [stdout] 118 | pub const DOWN: i8 = -8; [INFO] [stdout] | ^^^^ [INFO] [stdout] 119 | pub const RIGHT: i8 = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 120 | pub const LEFT: i8 = -1; [INFO] [stdout] | ^^^^ [INFO] [stdout] 121 | pub const UP_RIGHT: i8 = Self::UP + Self::RIGHT; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 122 | pub const UP_LEFT: i8 = Self::UP + Self::LEFT; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 123 | pub const DOWN_RIGHT: i8 = Self::DOWN + Self::RIGHT; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 124 | pub const DOWN_LEFT: i8 = Self::DOWN + Self::LEFT; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `from`, `to`, and `kind` are never read [INFO] [stdout] --> src/chess_move.rs:6:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Move { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 6 | pub from: Square, [INFO] [stdout] | ^^^^ [INFO] [stdout] 7 | pub to: Square, [INFO] [stdout] | ^^ [INFO] [stdout] 8 | pub kind: MoveType, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/chess_move.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Move { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 12 | pub fn new(from: Square, to: Square, kind: MoveType) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn to_uci(&self) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn is_double_pawn_push(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn is_promotion_capture(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn is_promotion(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn is_en_passant_capture(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_castle(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn is_capture(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn promoted_piece(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/chess_move.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 73 | pub enum MoveType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 74 | Capture, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 75 | EnPassantCapture, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 76 | KnightPromotion, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 77 | BishopPromotion, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 78 | RookPromotion, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 79 | QueenPromotion, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 80 | KnightPromotionCapture, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 81 | BishopPromotionCapture, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 82 | RookPromotionCapture, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 83 | QueenPromotionCapture, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 84 | Quiet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 85 | CastleKing, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 86 | CastleQueen, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 87 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MoveType` 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 functions `promotion_itr` and `promotion_capture_itr` are never used [INFO] [stdout] --> src/chess_move.rs:91:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl MoveType { [INFO] [stdout] | ------------- associated functions in this implementation [INFO] [stdout] 91 | pub fn promotion_itr() -> Iter<'static, MoveType> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn promotion_capture_itr() -> Iter<'static, MoveType> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `PromotionType` is never used [INFO] [stdout] --> src/chess_move.rs:113:10 [INFO] [stdout] | [INFO] [stdout] 113 | pub enum PromotionType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PromotionType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Direction` is never constructed [INFO] [stdout] --> src/chess_move.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | pub struct Direction; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/chess_move.rs:120:15 [INFO] [stdout] | [INFO] [stdout] 119 | impl Direction { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 120 | pub const UP: i8 = 8; [INFO] [stdout] | ^^ [INFO] [stdout] 121 | pub const DOWN: i8 = -8; [INFO] [stdout] | ^^^^ [INFO] [stdout] 122 | pub const RIGHT: i8 = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 123 | pub const LEFT: i8 = -1; [INFO] [stdout] | ^^^^ [INFO] [stdout] 124 | pub const UP_RIGHT: i8 = Self::UP + Self::RIGHT; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 125 | pub const UP_LEFT: i8 = Self::UP + Self::LEFT; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 126 | pub const DOWN_RIGHT: i8 = Self::DOWN + Self::RIGHT; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 127 | pub const DOWN_LEFT: i8 = Self::DOWN + Self::LEFT; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 128 | [INFO] [stdout] 129 | pub fn king_itr() -> Iter<'static, i8> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MoveExtractor` is never constructed [INFO] [stdout] --> src/chess_move.rs:144:12 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct MoveExtractor; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `extract_moves` is never used [INFO] [stdout] --> src/chess_move.rs:146:12 [INFO] [stdout] | [INFO] [stdout] 145 | impl MoveExtractor { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 146 | pub fn extract_moves(from: Square, bb: BitBoard, list: &mut Vec, kind: MoveType) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `upUpRight` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | fn upUpRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case: `up_up_right` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `upUpLeft` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | fn upUpLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `up_up_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `downDownRight` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:60:8 [INFO] [stdout] | [INFO] [stdout] 60 | fn downDownRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `down_down_right` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `downDownLeft` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | fn downDownLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `down_down_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `upLeftLeft` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | fn upLeftLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `up_left_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `downLeftLeft` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | fn downLeftLeft(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `down_left_left` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `upRightRight` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 76 | fn upRightRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `up_right_right` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `downRightRight` should have a snake case name [INFO] [stdout] --> src/generators/knight_moves.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | fn downRightRight(bb: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `down_right_right` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] [INFO] [stderr] error: could not compile `chess_bot` (bin "chess_bot" test) due to 8 previous errors [INFO] running `Command { std: "docker" "inspect" "ae3632982bfa665c372a639155bd2587b18f77589b8a94feb290cc0a2899e863", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae3632982bfa665c372a639155bd2587b18f77589b8a94feb290cc0a2899e863", kill_on_drop: false }` [INFO] [stdout] ae3632982bfa665c372a639155bd2587b18f77589b8a94feb290cc0a2899e863