[INFO] cloning repository https://github.com/santinzz/better-engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/santinzz/better-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsantinzz%2Fbetter-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsantinzz%2Fbetter-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 1fcd1693d78a0a0d59f017ed792875b0a81f8e7e [INFO] checking santinzz/better-engine against try#c0a9760914bada211f4924ee16d41ae1a366d2ba for pr-148545 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsantinzz%2Fbetter-engine" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/santinzz/better-engine [INFO] finished tweaking git repo https://github.com/santinzz/better-engine [INFO] tweaked toml for git repo https://github.com/santinzz/better-engine written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/santinzz/better-engine on toolchain c0a9760914bada211f4924ee16d41ae1a366d2ba [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/santinzz/better-engine already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking santinzz/better-engine against try#c0a9760914bada211f4924ee16d41ae1a366d2ba for pr-148545 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsantinzz%2Fbetter-engine" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/santinzz/better-engine [INFO] finished tweaking git repo https://github.com/santinzz/better-engine [INFO] tweaked toml for git repo https://github.com/santinzz/better-engine written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/santinzz/better-engine on toolchain c0a9760914bada211f4924ee16d41ae1a366d2ba [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/santinzz/better-engine already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6424935d7b65d984a28f463b5b0893043331a49e48ba33763c5c128b99b9e67f [INFO] running `Command { std: "docker" "start" "-a" "6424935d7b65d984a28f463b5b0893043331a49e48ba33763c5c128b99b9e67f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6424935d7b65d984a28f463b5b0893043331a49e48ba33763c5c128b99b9e67f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6424935d7b65d984a28f463b5b0893043331a49e48ba33763c5c128b99b9e67f", kill_on_drop: false }` [INFO] [stdout] 6424935d7b65d984a28f463b5b0893043331a49e48ba33763c5c128b99b9e67f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+c0a9760914bada211f4924ee16d41ae1a366d2ba" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 48631e681be5d4cbcafcc5067e167a29342e7d795090a038b507d4a7e676d59d [INFO] running `Command { std: "docker" "start" "-a" "48631e681be5d4cbcafcc5067e167a29342e7d795090a038b507d4a7e676d59d", kill_on_drop: false }` [INFO] [stderr] Checking better-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/moves.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::RefCell; [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: `File` and `KING_MOVES` [INFO] [stdout] --> src/moves.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | File, Rank, Square, B_KINGSIDE_RIGHTS, B_QUEENSIDE_RIGHTS, DIRECTION_OFFSETS, KING_ATTACKS, [INFO] [stdout] | ^^^^ [INFO] [stdout] 8 | KING_MOVES, KNIGHT_MOVES, PAWN_ATTACKS, W_KINGSIDE_RIGHTS, W_QUEENSIDE_RIGHTS, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BISHOP_ATTACKS`, `DIRECTION_OFFSETS`, `KING_MOVES`, and `ROOK_ATTACKS` [INFO] [stdout] --> src/utils.rs:5:29 [INFO] [stdout] | [INFO] [stdout] 5 | File, Rank, Square, BISHOP_ATTACKS, DIRECTION_OFFSETS, KING_ATTACKS, KING_MOVES, KNIGHT_ATTACKS, PAWN_ATTACKS, ROOK_ATTACKS [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `board::Piece` and `consts::Square` [INFO] [stdout] --> src/magic.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{board::Piece, consts::Square}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitboard::BitBoard` [INFO] [stdout] --> src/precomputed.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | use crate::{bitboard::BitBoard, consts::Square, magics::MagicEntry}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bitboard::BitBoard`, `game_result::GameResult`, and `moves::Flags` [INFO] [stdout] --> src/perft.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{bitboard::BitBoard, board::Board, game_result::GameResult, moves::Flags}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/magic_gen.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/bitboard.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__bitboard as bitboard` [INFO] [stdout] --> src/bitboard.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use __bitboard as bitboard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/magic_index_gen.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufWriter` [INFO] [stdout] --> src/magic_index_gen.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::BufWriter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/magic_index_gen.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::board::Board` [INFO] [stdout] --> src/main.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::board::Board; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/moves.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::cell::RefCell; [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: `File` and `KING_MOVES` [INFO] [stdout] --> src/moves.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | File, Rank, Square, B_KINGSIDE_RIGHTS, B_QUEENSIDE_RIGHTS, DIRECTION_OFFSETS, KING_ATTACKS, [INFO] [stdout] | ^^^^ [INFO] [stdout] 8 | KING_MOVES, KNIGHT_MOVES, PAWN_ATTACKS, W_KINGSIDE_RIGHTS, W_QUEENSIDE_RIGHTS, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `D5`, `E4`, `E5`, and `F6` [INFO] [stdout] --> src/moves.rs:606:26 [INFO] [stdout] | [INFO] [stdout] 606 | consts::Square::{D5, E4, E5, F6}, [INFO] [stdout] | ^^ ^^ ^^ ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BISHOP_ATTACKS`, `DIRECTION_OFFSETS`, `KING_MOVES`, and `ROOK_ATTACKS` [INFO] [stdout] --> src/utils.rs:5:29 [INFO] [stdout] | [INFO] [stdout] 5 | File, Rank, Square, BISHOP_ATTACKS, DIRECTION_OFFSETS, KING_ATTACKS, KING_MOVES, KNIGHT_ATTACKS, PAWN_ATTACKS, ROOK_ATTACKS [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `board::Piece` and `consts::Square` [INFO] [stdout] --> src/magic.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{board::Piece, consts::Square}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `bitboard::BitBoard` [INFO] [stdout] --> src/precomputed.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | use crate::{bitboard::BitBoard, consts::Square, magics::MagicEntry}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `bitboard::BitBoard`, `game_result::GameResult`, and `moves::Flags` [INFO] [stdout] --> src/perft.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{bitboard::BitBoard, board::Board, game_result::GameResult, moves::Flags}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/magic_gen.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::*` [INFO] [stdout] --> src/bitboard.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use super::*; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `__bitboard as bitboard` [INFO] [stdout] --> src/bitboard.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use __bitboard as bitboard; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::File` [INFO] [stdout] --> src/magic_index_gen.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::File; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufWriter` [INFO] [stdout] --> src/magic_index_gen.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::io::BufWriter; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::PathBuf` [INFO] [stdout] --> src/magic_index_gen.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::path::PathBuf; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `env` [INFO] [stdout] --> src/magic_index_gen.rs:91:15 [INFO] [stdout] | [INFO] [stdout] 91 | use std::{env, fs::File, io::BufWriter, path::PathBuf}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `our_occupied` [INFO] [stdout] --> src/moves.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | let (our_occupied, their_occupied) = match pawn_color { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_our_occupied` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opp` [INFO] [stdout] --> src/moves.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let opp = self.turn.opposite(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_opp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/moves.rs:515:13 [INFO] [stdout] | [INFO] [stdout] 515 | let mut piece_bitboard = match piece { [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: enum `Color` is never used [INFO] [stdout] --> src/board.rs:11:10 [INFO] [stdout] | [INFO] [stdout] 11 | pub enum Color { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `opposite` is never used [INFO] [stdout] --> src/board.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Color { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 17 | pub fn opposite(self) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Piece` is never used [INFO] [stdout] --> src/board.rs:26:10 [INFO] [stdout] | [INFO] [stdout] 26 | pub enum Piece { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `sliding_moves` and `name` are never used [INFO] [stdout] --> src/board.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Piece { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 36 | pub fn sliding_moves(&self, square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn name(&self) -> &'static str { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Undo` is never constructed [INFO] [stdout] --> src/board.rs:71:12 [INFO] [stdout] | [INFO] [stdout] 71 | pub struct Undo { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Board` is never constructed [INFO] [stdout] --> src/board.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 80 | pub struct Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/board.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 112 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 113 | pub fn default() -> Board { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn make_move(&mut self, mv: &Move) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 394 | pub fn unmake_move(&mut self, mv: &Move) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 551 | pub fn add_piece(&mut self, square: Square, piece: Piece, color: Color) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | pub fn delete_piece(&mut self, square: Square) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 624 | pub fn piece_on_square(&self, square: Square) -> Option<(Piece, Color)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 664 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Flags` is never used [INFO] [stdout] --> src/moves.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | pub enum Flags { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Move` is never constructed [INFO] [stdout] --> src/moves.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Move { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/moves.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Board { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 36 | pub fn generate_legal_moves_into(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | pub fn generate_legal_moves(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 78 | fn generate_pawn_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn generate_knight_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn generate_king_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn generate_rook_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | pub fn generate_bishop_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | pub fn generate_queen_moves(&self, moves: &mut Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 514 | pub fn generate_sliding_moves(&self, moves: &mut Vec, piece: Piece) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KNIGHT_MOVES` is never used [INFO] [stdout] --> src/consts.rs:5:11 [INFO] [stdout] | [INFO] [stdout] 5 | pub const KNIGHT_MOVES: [i8; 8] = [-17, -15, -10, -6, 6, 10, 15, 17]; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING_MOVES` is never used [INFO] [stdout] --> src/consts.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const KING_MOVES: [i8; 8] = [-9, -8, -7, -1, 1, 7, 8, 9]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `NUM`, `ALL`, `try_index`, and `index` are never used [INFO] [stdout] --> src/consts.rs:20:23 [INFO] [stdout] | [INFO] [stdout] 19 | impl $name { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 20 | pub const NUM: usize = [$(Self::$variant),*].len(); [INFO] [stdout] | ^^^ [INFO] [stdout] 21 | pub const ALL: [Self; Self::NUM] = [$(Self::$variant),*]; [INFO] [stdout] | ^^^ [INFO] [stdout] 22 | [INFO] [stdout] 23 | pub fn try_index(index: usize) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn index(index: usize) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | / simple_enum! { [INFO] [stdout] 41 | | pub enum File { [INFO] [stdout] 42 | | A, [INFO] [stdout] 43 | | B, [INFO] [stdout] ... | [INFO] [stdout] 73 | | } [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `simple_enum` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_index`, `new`, `file`, `rank`, `bb`, and `try_offset` are never used [INFO] [stdout] --> src/consts.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 75 | impl Square { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 76 | pub fn from_index(index: u8) -> Square { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn new(file: File, rank: Rank) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn file(self) -> File { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn rank(self) -> Rank { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn bb(self) -> BitBoard { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn try_offset(self, file_offset: i8, rank_offset: i8) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Magic` is never constructed [INFO] [stdout] --> src/consts.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct Magic { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DIRECTION_OFFSETS` is never used [INFO] [stdout] --> src/consts.rs:113:11 [INFO] [stdout] | [INFO] [stdout] 113 | pub const DIRECTION_OFFSETS: [i32; 8] = [8, -8, -1, 1, 7, -7, 9, -9]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_SHIFTS` is never used [INFO] [stdout] --> src/consts.rs:123:11 [INFO] [stdout] | [INFO] [stdout] 123 | pub const ROOK_SHIFTS: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_SHIFTS` is never used [INFO] [stdout] --> src/consts.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | pub const BISHOP_SHIFTS: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `ROOK_MASKS` is never used [INFO] [stdout] --> src/consts.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub static ROOK_MASKS: OnceLock<[u64; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `BISHOP_MASKS` is never used [INFO] [stdout] --> src/consts.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 151 | pub static BISHOP_MASKS: OnceLock<[u64; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `ROOK_OFFSETS` is never used [INFO] [stdout] --> src/consts.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub static ROOK_OFFSETS: OnceLock<[usize; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `BISHOP_OFFSETS` is never used [INFO] [stdout] --> src/consts.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 165 | pub static BISHOP_OFFSETS: OnceLock<[usize; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KNIGHT_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:167:11 [INFO] [stdout] | [INFO] [stdout] 167 | pub const KNIGHT_ATTACKS: [u64; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_pawn_attack_masks` is never used [INFO] [stdout] --> src/consts.rs:234:10 [INFO] [stdout] | [INFO] [stdout] 234 | const fn init_pawn_attack_masks() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PAWN_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:268:11 [INFO] [stdout] | [INFO] [stdout] 268 | pub const PAWN_ATTACKS: [[u64; 64]; 2] = init_pawn_attack_masks(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_sliding_attack_masks` is never used [INFO] [stdout] --> src/consts.rs:270:10 [INFO] [stdout] | [INFO] [stdout] 270 | const fn init_sliding_attack_masks() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLIDING_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:350:7 [INFO] [stdout] | [INFO] [stdout] 350 | const SLIDING_ATTACKS: [[u64; 64]; 2] = init_sliding_attack_masks(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:352:11 [INFO] [stdout] | [INFO] [stdout] 352 | pub const ROOK_ATTACKS: [u64; 64] = SLIDING_ATTACKS[0]; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:353:11 [INFO] [stdout] | [INFO] [stdout] 353 | pub const BISHOP_ATTACKS: [u64; 64] = SLIDING_ATTACKS[1]; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTH` is never used [INFO] [stdout] --> src/consts.rs:355:7 [INFO] [stdout] | [INFO] [stdout] 355 | const NORTH: usize = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTH` is never used [INFO] [stdout] --> src/consts.rs:356:7 [INFO] [stdout] | [INFO] [stdout] 356 | const SOUTH: usize = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EAST` is never used [INFO] [stdout] --> src/consts.rs:357:7 [INFO] [stdout] | [INFO] [stdout] 357 | const EAST: usize = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEST` is never used [INFO] [stdout] --> src/consts.rs:358:7 [INFO] [stdout] | [INFO] [stdout] 358 | const WEST: usize = 3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTHEAST` is never used [INFO] [stdout] --> src/consts.rs:359:7 [INFO] [stdout] | [INFO] [stdout] 359 | const NORTHEAST: usize = 4; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTHWEST` is never used [INFO] [stdout] --> src/consts.rs:360:7 [INFO] [stdout] | [INFO] [stdout] 360 | const SOUTHWEST: usize = 5; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTHWEST` is never used [INFO] [stdout] --> src/consts.rs:361:7 [INFO] [stdout] | [INFO] [stdout] 361 | const NORTHWEST: usize = 6; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTHEAST` is never used [INFO] [stdout] --> src/consts.rs:362:7 [INFO] [stdout] | [INFO] [stdout] 362 | const SOUTHEAST: usize = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `W_KINGSIDE_RIGHTS` is never used [INFO] [stdout] --> src/consts.rs:365:11 [INFO] [stdout] | [INFO] [stdout] 365 | pub const W_KINGSIDE_RIGHTS: u8 = 0b0001; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `W_QUEENSIDE_RIGHTS` is never used [INFO] [stdout] --> src/consts.rs:366:11 [INFO] [stdout] | [INFO] [stdout] 366 | pub const W_QUEENSIDE_RIGHTS: u8 = 0b0010; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B_KINGSIDE_RIGHTS` is never used [INFO] [stdout] --> src/consts.rs:367:11 [INFO] [stdout] | [INFO] [stdout] 367 | pub const B_KINGSIDE_RIGHTS: u8 = 0b0100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `B_QUEENSIDE_RIGHTS` is never used [INFO] [stdout] --> src/consts.rs:368:11 [INFO] [stdout] | [INFO] [stdout] 368 | pub const B_QUEENSIDE_RIGHTS: u8 = 0b1000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:370:11 [INFO] [stdout] | [INFO] [stdout] 370 | pub const KING_ATTACKS: [BitBoard; 64] = generate_king_attacks(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_king_attacks` is never used [INFO] [stdout] --> src/consts.rs:372:10 [INFO] [stdout] | [INFO] [stdout] 372 | const fn generate_king_attacks() -> [BitBoard; 64] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_fen`, `is_square_attacked`, `is_king_in_check`, and `is_insufficient_material` are never used [INFO] [stdout] --> src/utils.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Board { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 11 | pub fn from_fen(fen: &str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn is_square_attacked(&self, sq: Square, attacking_color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn is_king_in_check(&self, attacking_color: Color) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn is_insufficient_material(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_sliding_attack_masks` is never used [INFO] [stdout] --> src/magic.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | const fn init_sliding_attack_masks() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLIDING_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const SLIDING_ATTACK_MASKS: [[u64; 64]; 2] = init_sliding_attack_masks(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const ROOK_ATTACK_MASKS: [u64; 64] = SLIDING_ATTACK_MASKS[0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const BISHOP_ATTACK_MASKS: [u64; 64] = SLIDING_ATTACK_MASKS[1]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NumSquaresToTheEdge` is never used [INFO] [stdout] --> src/precomputed.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const NumSquaresToTheEdge: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGICS` is never used [INFO] [stdout] --> src/precomputed.rs:69:11 [INFO] [stdout] | [INFO] [stdout] 69 | pub const ROOK_MAGICS: &[MagicEntry; Square::NUM] = &[MagicEntry { mask: 282578800148862, magic: 36029348389584984, shift: 52, offse... [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGICS` is never used [INFO] [stdout] --> src/precomputed.rs:71:11 [INFO] [stdout] | [INFO] [stdout] 71 | pub const BISHOP_MAGICS: &[MagicEntry; Square::NUM] = &[MagicEntry { mask: 18049651735527936, magic: 76596383410326272, shift: 58, o... [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pre_move_halfmove_clock` [INFO] [stdout] --> src/board.rs:771:13 [INFO] [stdout] | [INFO] [stdout] 771 | let pre_move_halfmove_clock = board.halfmove_clock; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pre_move_halfmove_clock` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pre_move_fullmove_number` [INFO] [stdout] --> src/board.rs:772:13 [INFO] [stdout] | [INFO] [stdout] 772 | let pre_move_fullmove_number = board.fullmove_number; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pre_move_fullmove_number` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `initial_white_pawns` [INFO] [stdout] --> src/board.rs:836:13 [INFO] [stdout] | [INFO] [stdout] 836 | let initial_white_pawns = board.white_pawns; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_initial_white_pawns` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `initial_black_pawns` [INFO] [stdout] --> src/board.rs:837:13 [INFO] [stdout] | [INFO] [stdout] 837 | let initial_black_pawns = board.black_pawns; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_initial_black_pawns` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `initial_turn` [INFO] [stdout] --> src/board.rs:838:13 [INFO] [stdout] | [INFO] [stdout] 838 | let initial_turn = board.turn; [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_initial_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `our_occupied` [INFO] [stdout] --> src/moves.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | let (our_occupied, their_occupied) = match pawn_color { [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_our_occupied` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `opp` [INFO] [stdout] --> src/moves.rs:298:17 [INFO] [stdout] | [INFO] [stdout] 298 | let opp = self.turn.opposite(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_opp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/moves.rs:515:13 [INFO] [stdout] | [INFO] [stdout] 515 | let mut piece_bitboard = match piece { [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/moves.rs:701:13 [INFO] [stdout] | [INFO] [stdout] 701 | let mut moves1: Vec = board1 [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/moves.rs:731:13 [INFO] [stdout] | [INFO] [stdout] 731 | let mut moves2: Vec = board2 [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/moves.rs:769:13 [INFO] [stdout] | [INFO] [stdout] 769 | let mut moves1 = board1 [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/moves.rs:835:13 [INFO] [stdout] | [INFO] [stdout] 835 | let mut board2 = [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MOVES` is never used [INFO] [stdout] --> src/precomputed.rs:74:11 [INFO] [stdout] | [INFO] [stdout] 74 | pub const ROOK_MOVES: &[u64; 102400] = &[72340172838076926,258,65794,65794,382,282578800148990,510,65794,66046,382,16843134,510,382,... [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MOVES` is never used [INFO] [stdout] --> src/precomputed.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const BISHOP_MOVES: &[u64; 5248] = &[9241421688590303744,68853957120,134480384,134480384,35253226045952,68853957120,134480384,13... [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `perft` is never used [INFO] [stdout] --> src/perft.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | pub fn perft(board: &Board, depth: u32) -> u64 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_DELTAS` is never used [INFO] [stdout] --> src/magic_gen.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ROOK_DELTAS: [(i8, i8); 4] = [(1, 0), (0, -1), (-1, 0), (0, 1)]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_DELTAS` is never used [INFO] [stdout] --> src/magic_gen.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const BISHOP_DELTAS: [(i8, i8); 4] = [(1, 1), (1, -1), (-1, -1), (-1, 1)]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MagicEntry` is never constructed [INFO] [stdout] --> src/magic_gen.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MagicEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relevant_blockers` is never used [INFO] [stdout] --> src/magic_gen.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn relevant_blockers(piece: Piece, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `magic_index` is never used [INFO] [stdout] --> src/magic_gen.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn magic_index(entry: &MagicEntry, blockers: BitBoard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_magic` is never used [INFO] [stdout] --> src/magic_gen.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn find_magic( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TableFillError` is never constructed [INFO] [stdout] --> src/magic_gen.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | struct TableFillError; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_make_table` is never used [INFO] [stdout] --> src/magic_gen.rs:64:4 [INFO] [stdout] | [INFO] [stdout] 64 | fn try_make_table( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_and_print_all_magics` is never used [INFO] [stdout] --> src/magic_gen.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn find_and_print_all_magics(sliding_piece: Piece, rng: &mut ThreadRng) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rng` is never constructed [INFO] [stdout] --> src/rng.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Rng(u128); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next_u64` is never used [INFO] [stdout] --> src/rng.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Rng { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 11 | pub fn next_u64(&mut self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BitBoard` is never constructed [INFO] [stdout] --> src/bitboard.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct BitBoard(pub u64); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `EMPTY`, `popcnt`, `has`, `is_empty`, `next_square`, and `count` are never used [INFO] [stdout] --> src/bitboard.rs:52:15 [INFO] [stdout] | [INFO] [stdout] 51 | impl BitBoard { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 52 | pub const EMPTY: Self = Self(0); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 53 | [INFO] [stdout] 54 | pub fn popcnt(self) -> u32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn has(self, square: Square) -> bool { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn is_empty(self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn next_square(self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn count(self) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BitBoardIter` is never constructed [INFO] [stdout] --> src/bitboard.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | pub struct BitBoardIter(BitBoard); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MagicEntry` is never constructed [INFO] [stdout] --> src/magics.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct MagicEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_MAGICS` is never used [INFO] [stdout] --> src/magics.rs:10:11 [INFO] [stdout] | [INFO] [stdout] 10 | pub const ROOK_MAGICS: &[MagicEntry; Square::NUM] = &[ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_TABLE_SIZE` is never used [INFO] [stdout] --> src/magics.rs:76:11 [INFO] [stdout] | [INFO] [stdout] 76 | pub const ROOK_TABLE_SIZE: usize = 102400; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_MAGICS` is never used [INFO] [stdout] --> src/magics.rs:77:11 [INFO] [stdout] | [INFO] [stdout] 77 | pub const BISHOP_MAGICS: &[MagicEntry; Square::NUM] = &[ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_TABLE_SIZE` is never used [INFO] [stdout] --> src/magics.rs:143:11 [INFO] [stdout] | [INFO] [stdout] 143 | pub const BISHOP_TABLE_SIZE: usize = 5248; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `magic_index` is never used [INFO] [stdout] --> src/magic_index_gen.rs:10:4 [INFO] [stdout] | [INFO] [stdout] 10 | fn magic_index(entry: &MagicEntry, blockers: BitBoard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `slider_moves` is never used [INFO] [stdout] --> src/magic_index_gen.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn slider_moves(slider_deltas: &[(i8, i8)], square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_table` is never used [INFO] [stdout] --> src/magic_index_gen.rs:33:4 [INFO] [stdout] | [INFO] [stdout] 33 | fn make_table( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_table` is never used [INFO] [stdout] --> src/magic_index_gen.rs:59:4 [INFO] [stdout] | [INFO] [stdout] 59 | fn write_table(name: &str, table: &[BitBoard], out: &mut impl Write) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_magics` is never used [INFO] [stdout] --> src/magic_index_gen.rs:68:4 [INFO] [stdout] | [INFO] [stdout] 68 | fn write_magics( [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `magic_index` is never used [INFO] [stdout] --> src/sliding_pieces/mod.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn magic_index(entry: &MagicEntry, blockers: BitBoard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_rook_moves` is never used [INFO] [stdout] --> src/sliding_pieces/mod.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 10 | pub fn get_rook_moves(square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_bishop_moves` is never used [INFO] [stdout] --> src/sliding_pieces/mod.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 15 | pub fn get_bishop_moves(square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_queen_moves` is never used [INFO] [stdout] --> src/sliding_pieces/mod.rs:20:8 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn get_queen_moves(square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GameResult` is never used [INFO] [stdout] --> src/game_result.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum GameResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `game_result` is never used [INFO] [stdout] --> src/game_result.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 13 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 14 | pub fn game_result(&self) -> GameResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NumSquaresToTheEdge` should have an upper case name [INFO] [stdout] --> src/precomputed.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const NumSquaresToTheEdge: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 1 - pub const NumSquaresToTheEdge: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] 1 + pub const NUM_SQUARES_TO_THE_EDGE: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/perft.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | let mut board = crate::Board::from_fen("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1").unwrap(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `sliding_moves` and `name` are never used [INFO] [stdout] --> src/board.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl Piece { [INFO] [stdout] | ---------- methods in this implementation [INFO] [stdout] 36 | pub fn sliding_moves(&self, square: Square, blockers: BitBoard) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn name(&self) -> &'static str { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `print` is never used [INFO] [stdout] --> src/board.rs:664:12 [INFO] [stdout] | [INFO] [stdout] 112 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 664 | pub fn print(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `KING_MOVES` is never used [INFO] [stdout] --> src/consts.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const KING_MOVES: [i8; 8] = [-9, -8, -7, -1, 1, 7, 8, 9]; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Magic` is never constructed [INFO] [stdout] --> src/consts.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub struct Magic { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_SHIFTS` is never used [INFO] [stdout] --> src/consts.rs:123:11 [INFO] [stdout] | [INFO] [stdout] 123 | pub const ROOK_SHIFTS: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_SHIFTS` is never used [INFO] [stdout] --> src/consts.rs:136:11 [INFO] [stdout] | [INFO] [stdout] 136 | pub const BISHOP_SHIFTS: [u8; 64] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `ROOK_MASKS` is never used [INFO] [stdout] --> src/consts.rs:149:12 [INFO] [stdout] | [INFO] [stdout] 149 | pub static ROOK_MASKS: OnceLock<[u64; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `BISHOP_MASKS` is never used [INFO] [stdout] --> src/consts.rs:151:12 [INFO] [stdout] | [INFO] [stdout] 151 | pub static BISHOP_MASKS: OnceLock<[u64; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `ROOK_OFFSETS` is never used [INFO] [stdout] --> src/consts.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub static ROOK_OFFSETS: OnceLock<[usize; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `BISHOP_OFFSETS` is never used [INFO] [stdout] --> src/consts.rs:165:12 [INFO] [stdout] | [INFO] [stdout] 165 | pub static BISHOP_OFFSETS: OnceLock<[usize; 64]> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_sliding_attack_masks` is never used [INFO] [stdout] --> src/consts.rs:270:10 [INFO] [stdout] | [INFO] [stdout] 270 | const fn init_sliding_attack_masks() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLIDING_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:350:7 [INFO] [stdout] | [INFO] [stdout] 350 | const SLIDING_ATTACKS: [[u64; 64]; 2] = init_sliding_attack_masks(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:352:11 [INFO] [stdout] | [INFO] [stdout] 352 | pub const ROOK_ATTACKS: [u64; 64] = SLIDING_ATTACKS[0]; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_ATTACKS` is never used [INFO] [stdout] --> src/consts.rs:353:11 [INFO] [stdout] | [INFO] [stdout] 353 | pub const BISHOP_ATTACKS: [u64; 64] = SLIDING_ATTACKS[1]; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTH` is never used [INFO] [stdout] --> src/consts.rs:355:7 [INFO] [stdout] | [INFO] [stdout] 355 | const NORTH: usize = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTH` is never used [INFO] [stdout] --> src/consts.rs:356:7 [INFO] [stdout] | [INFO] [stdout] 356 | const SOUTH: usize = 1; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EAST` is never used [INFO] [stdout] --> src/consts.rs:357:7 [INFO] [stdout] | [INFO] [stdout] 357 | const EAST: usize = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEST` is never used [INFO] [stdout] --> src/consts.rs:358:7 [INFO] [stdout] | [INFO] [stdout] 358 | const WEST: usize = 3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTHEAST` is never used [INFO] [stdout] --> src/consts.rs:359:7 [INFO] [stdout] | [INFO] [stdout] 359 | const NORTHEAST: usize = 4; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTHWEST` is never used [INFO] [stdout] --> src/consts.rs:360:7 [INFO] [stdout] | [INFO] [stdout] 360 | const SOUTHWEST: usize = 5; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NORTHWEST` is never used [INFO] [stdout] --> src/consts.rs:361:7 [INFO] [stdout] | [INFO] [stdout] 361 | const NORTHWEST: usize = 6; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SOUTHEAST` is never used [INFO] [stdout] --> src/consts.rs:362:7 [INFO] [stdout] | [INFO] [stdout] 362 | const SOUTHEAST: usize = 7; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_insufficient_material` is never used [INFO] [stdout] --> src/utils.rs:228:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn is_insufficient_material(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_sliding_attack_masks` is never used [INFO] [stdout] --> src/magic.rs:3:10 [INFO] [stdout] | [INFO] [stdout] 3 | const fn init_sliding_attack_masks() -> [[u64; 64]; 2] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SLIDING_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:82:7 [INFO] [stdout] | [INFO] [stdout] 82 | const SLIDING_ATTACK_MASKS: [[u64; 64]; 2] = init_sliding_attack_masks(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:84:11 [INFO] [stdout] | [INFO] [stdout] 84 | pub const ROOK_ATTACK_MASKS: [u64; 64] = SLIDING_ATTACK_MASKS[0]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_ATTACK_MASKS` is never used [INFO] [stdout] --> src/magic.rs:85:11 [INFO] [stdout] | [INFO] [stdout] 85 | pub const BISHOP_ATTACK_MASKS: [u64; 64] = SLIDING_ATTACK_MASKS[1]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ROOK_DELTAS` is never used [INFO] [stdout] --> src/magic_gen.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | pub const ROOK_DELTAS: [(i8, i8); 4] = [(1, 0), (0, -1), (-1, 0), (0, 1)]; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `BISHOP_DELTAS` is never used [INFO] [stdout] --> src/magic_gen.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub const BISHOP_DELTAS: [(i8, i8); 4] = [(1, 1), (1, -1), (-1, -1), (-1, 1)]; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MagicEntry` is never constructed [INFO] [stdout] --> src/magic_gen.rs:9:8 [INFO] [stdout] | [INFO] [stdout] 9 | struct MagicEntry { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `relevant_blockers` is never used [INFO] [stdout] --> src/magic_gen.rs:15:4 [INFO] [stdout] | [INFO] [stdout] 15 | fn relevant_blockers(piece: Piece, square: Square) -> BitBoard { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `magic_index` is never used [INFO] [stdout] --> src/magic_gen.rs:36:4 [INFO] [stdout] | [INFO] [stdout] 36 | fn magic_index(entry: &MagicEntry, blockers: BitBoard) -> usize { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_magic` is never used [INFO] [stdout] --> src/magic_gen.rs:45:4 [INFO] [stdout] | [INFO] [stdout] 45 | fn find_magic( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TableFillError` is never constructed [INFO] [stdout] --> src/magic_gen.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | struct TableFillError; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `try_make_table` is never used [INFO] [stdout] --> src/magic_gen.rs:64:4 [INFO] [stdout] | [INFO] [stdout] 64 | fn try_make_table( [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `find_and_print_all_magics` is never used [INFO] [stdout] --> src/magic_gen.rs:95:4 [INFO] [stdout] | [INFO] [stdout] 95 | fn find_and_print_all_magics(sliding_piece: Piece, rng: &mut ThreadRng) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Rng` is never constructed [INFO] [stdout] --> src/rng.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | pub struct Rng(u128); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next_u64` is never used [INFO] [stdout] --> src/rng.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl Rng { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 11 | pub fn next_u64(&mut self) -> u64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `popcnt` and `count` are never used [INFO] [stdout] --> src/bitboard.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 51 | impl BitBoard { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn popcnt(self) -> u32 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn count(self) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GameResult` is never used [INFO] [stdout] --> src/game_result.rs:4:10 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum GameResult { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `game_result` is never used [INFO] [stdout] --> src/game_result.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 13 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 14 | pub fn game_result(&self) -> GameResult { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `NumSquaresToTheEdge` should have an upper case name [INFO] [stdout] --> src/precomputed.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | pub const NumSquaresToTheEdge: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] help: convert the identifier to upper case [INFO] [stdout] | [INFO] [stdout] 1 - pub const NumSquaresToTheEdge: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] 1 + pub const NUM_SQUARES_TO_THE_EDGE: [[i32; 8]; 64] = [[7, 0, 0, 7, 0, 0, 7, 0], [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.70s [INFO] running `Command { std: "docker" "inspect" "48631e681be5d4cbcafcc5067e167a29342e7d795090a038b507d4a7e676d59d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "48631e681be5d4cbcafcc5067e167a29342e7d795090a038b507d4a7e676d59d", kill_on_drop: false }` [INFO] [stdout] 48631e681be5d4cbcafcc5067e167a29342e7d795090a038b507d4a7e676d59d