[INFO] cloning repository https://github.com/Alberto-Perez-1994/Chess-Engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Alberto-Perez-1994/Chess-Engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlberto-Perez-1994%2FChess-Engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlberto-Perez-1994%2FChess-Engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 13c63f1acf9329762718e8fbced68469cb16253d [INFO] checking Alberto-Perez-1994/Chess-Engine against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAlberto-Perez-1994%2FChess-Engine" "/workspace/builds/worker-8/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-8/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Alberto-Perez-1994/Chess-Engine on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Alberto-Perez-1994/Chess-Engine [INFO] removed workspace from git repo https://github.com/Alberto-Perez-1994/Chess-Engine [INFO] finished tweaking git repo https://github.com/Alberto-Perez-1994/Chess-Engine [INFO] tweaked toml for git repo https://github.com/Alberto-Perez-1994/Chess-Engine written to /workspace/builds/worker-8/source/Cargo.toml [INFO] crate git repo https://github.com/Alberto-Perez-1994/Chess-Engine already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded regex-syntax v0.6.11 [INFO] [stderr] Downloaded regex v1.2.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] adfe12a209074d6aef6d1b83a3ce933353417f4aa6a6815dcd2ee6caaea5b118 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "adfe12a209074d6aef6d1b83a3ce933353417f4aa6a6815dcd2ee6caaea5b118", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "adfe12a209074d6aef6d1b83a3ce933353417f4aa6a6815dcd2ee6caaea5b118", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "adfe12a209074d6aef6d1b83a3ce933353417f4aa6a6815dcd2ee6caaea5b118", kill_on_drop: false }` [INFO] [stdout] adfe12a209074d6aef6d1b83a3ce933353417f4aa6a6815dcd2ee6caaea5b118 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-8/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b375a587f61dddacc00855dfe1b3dabae6d3c43d664ed047428b8ad4bfe4bf17 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "b375a587f61dddacc00855dfe1b3dabae6d3c43d664ed047428b8ad4bfe4bf17", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.62 [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Checking regex-syntax v0.6.11 [INFO] [stderr] Checking thread_local v0.3.6 [INFO] [stderr] Checking aho-corasick v0.7.6 [INFO] [stderr] Checking getrandom v0.1.12 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_chacha v0.2.1 [INFO] [stderr] Checking rand v0.7.2 [INFO] [stderr] Checking regex v1.2.1 [INFO] [stderr] Checking chess v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:411:52 [INFO] [stdout] | [INFO] [stdout] 411 | if file & king_position != 0 { (file & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:412:57 [INFO] [stdout] | [INFO] [stdout] 412 | else if rank & king_position != 0 { (rank & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:413:57 [INFO] [stdout] | [INFO] [stdout] 413 | else if diag & king_position != 0 { (diag & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:414:62 [INFO] [stdout] | [INFO] [stdout] 414 | else if anti_diag & king_position != 0 { (anti_diag & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/search.rs:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn divide (&mut self, depth: u8) -> (HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:411:52 [INFO] [stdout] | [INFO] [stdout] 411 | if file & king_position != 0 { (file & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:412:57 [INFO] [stdout] | [INFO] [stdout] 412 | else if rank & king_position != 0 { (rank & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:413:57 [INFO] [stdout] | [INFO] [stdout] 413 | else if diag & king_position != 0 { (diag & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/move_gen.rs:414:62 [INFO] [stdout] | [INFO] [stdout] 414 | else if anti_diag & king_position != 0 { (anti_diag & mask) } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> src/search.rs:21:45 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn divide (&mut self, depth: u8) -> (HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy_side` [INFO] [stdout] --> src/move_gen.rs:231:88 [INFO] [stdout] | [INFO] [stdout] 231 | fn get_knight_moves (&self, index: usize, movegen_type: MoveGen, player_side: u64, enemy_side: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy_side` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy_side` [INFO] [stdout] --> src/move_gen.rs:315:91 [INFO] [stdout] | [INFO] [stdout] 315 | fn get_king_moves (&self, king_index: usize, movegen_type: MoveGen, player_side: u64, enemy_side: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy_side` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `captures` is never read [INFO] [stdout] --> src/search.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | captures += captured; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy_side` [INFO] [stdout] --> src/move_gen.rs:231:88 [INFO] [stdout] | [INFO] [stdout] 231 | fn get_knight_moves (&self, index: usize, movegen_type: MoveGen, player_side: u64, enemy_side: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy_side` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy_side` [INFO] [stdout] --> src/move_gen.rs:315:91 [INFO] [stdout] | [INFO] [stdout] 315 | fn get_king_moves (&self, king_index: usize, movegen_type: MoveGen, player_side: u64, enemy_side: u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy_side` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `captures` is never read [INFO] [stdout] --> src/search.rs:80:13 [INFO] [stdout] | [INFO] [stdout] 80 | captures += captured; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/evaluation.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let mut pieces: u64 = player_side; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/search.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/evaluation.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 29 | let mut pieces: u64 = player_side; [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/search.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 66 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | let mut sorted_moves; let mut sorted_moves_iter; let mut unsorted_moves; [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/search.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let mut sorted_moves = &mut tt_moves[0..i]; [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/search.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 127 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:128:13 [INFO] [stdout] | [INFO] [stdout] 128 | let mut sorted_moves; let mut sorted_moves_iter; let mut unsorted_moves; [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/search.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let mut pieces = match self.player {Player::White => self.white_side, Player::Black => self.black_side}; [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/search.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let mut sorted_moves = &mut tt_moves[0..i]; [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/transposition_table.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | let mut board = Bitboard::new(board); [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/transposition_table.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 122 | let mut attacks = Bitboard::new(0); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `start` [INFO] [stdout] --> src/board.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn start () -> Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `divide` [INFO] [stdout] --> src/search.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn divide (&mut self, depth: u8) -> (HashMap) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `format_index` [INFO] [stdout] --> src/cli.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn format_index (index: u8) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_divide` [INFO] [stdout] --> src/cli.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn print_divide (&mut self, depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_divide_comparison` [INFO] [stdout] --> src/cli.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn print_divide_comparison (&mut self, fen_string: &str, depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_stockfish_divide` [INFO] [stdout] --> src/cli.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | fn get_stockfish_divide (fen_string: &str, depth: u8) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_saturating_int_methods` [INFO] [stdout] --> src/main.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(const_saturating_int_methods)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/transposition_table.rs:121:13 [INFO] [stdout] | [INFO] [stdout] 121 | let mut board = Bitboard::new(board); [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/transposition_table.rs:122:13 [INFO] [stdout] | [INFO] [stdout] 122 | let mut attacks = Bitboard::new(0); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Knight` [INFO] [stdout] --> src/board.rs:18:29 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Promotion { Queen, Knight, Rook, Bishop, None } [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Rook` [INFO] [stdout] --> src/board.rs:18:37 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Promotion { Queen, Knight, Rook, Bishop, None } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Bishop` [INFO] [stdout] --> src/board.rs:18:43 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Promotion { Queen, Knight, Rook, Bishop, None } [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `None` [INFO] [stdout] --> src/board.rs:18:51 [INFO] [stdout] | [INFO] [stdout] 18 | pub enum Promotion { Queen, Knight, Rook, Bishop, None } [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `start` [INFO] [stdout] --> src/board.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 66 | pub fn start () -> Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `divide` [INFO] [stdout] --> src/search.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn divide (&mut self, depth: u8) -> (HashMap) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `perft` [INFO] [stdout] --> src/search.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn perft (&mut self, depth: u8) -> (u64, u64, u64, u64, u64) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `format_index` [INFO] [stdout] --> src/cli.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn format_index (index: u8) -> String { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_perft` [INFO] [stdout] --> src/cli.rs:97:12 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn print_perft (&mut self, depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_divide` [INFO] [stdout] --> src/cli.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 112 | pub fn print_divide (&mut self, depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `print_divide_comparison` [INFO] [stdout] --> src/cli.rs:122:12 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn print_divide_comparison (&mut self, fen_string: &str, depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `get_stockfish_divide` [INFO] [stdout] --> src/cli.rs:144:8 [INFO] [stdout] | [INFO] [stdout] 144 | fn get_stockfish_divide (fen_string: &str, depth: u8) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0635]: unknown feature `const_saturating_int_methods` [INFO] [stdout] --> src/main.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | #![feature(const_saturating_int_methods)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0635`. [INFO] [stdout] [INFO] [stderr] error: could not compile `chess` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to previous error; 29 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0635`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "b375a587f61dddacc00855dfe1b3dabae6d3c43d664ed047428b8ad4bfe4bf17", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b375a587f61dddacc00855dfe1b3dabae6d3c43d664ed047428b8ad4bfe4bf17", kill_on_drop: false }` [INFO] [stdout] b375a587f61dddacc00855dfe1b3dabae6d3c43d664ed047428b8ad4bfe4bf17