[INFO] cloning repository https://github.com/magnustorvund/three-salmons [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/magnustorvund/three-salmons" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmagnustorvund%2Fthree-salmons", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmagnustorvund%2Fthree-salmons'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e9e88f549bcffccb7ab910e366049e43e42c67cf [INFO] testing magnustorvund/three-salmons against master#2fd6efc32704647e64d3d646d21c4c68eae100e4 for pr-149852-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmagnustorvund%2Fthree-salmons" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/magnustorvund/three-salmons [INFO] finished tweaking git repo https://github.com/magnustorvund/three-salmons [INFO] tweaked toml for git repo https://github.com/magnustorvund/three-salmons written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/magnustorvund/three-salmons on toolchain 2fd6efc32704647e64d3d646d21c4c68eae100e4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/magnustorvund/three-salmons 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" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded getrandom v0.2.16 [INFO] [stderr] Downloaded proc-macro2 v1.0.95 [INFO] [stderr] Downloaded thiserror-impl v1.0.69 [INFO] [stderr] Downloaded quote v1.0.40 [INFO] [stderr] Downloaded rand_core v0.6.4 [INFO] [stderr] Downloaded thiserror v1.0.69 [INFO] [stderr] Downloaded rand_chacha v0.3.1 [INFO] [stderr] Downloaded ppv-lite86 v0.2.21 [INFO] [stderr] Downloaded unicode-ident v1.0.18 [INFO] [stderr] Downloaded anyhow v1.0.98 [INFO] [stderr] Downloaded rand v0.8.5 [INFO] [stderr] Downloaded wasi v0.11.0+wasi-snapshot-preview1 [INFO] [stderr] Downloaded zerocopy-derive v0.8.25 [INFO] [stderr] Downloaded syn v2.0.101 [INFO] [stderr] Downloaded zerocopy v0.8.25 [INFO] [stderr] Downloaded libc v0.2.172 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 18d3efb653662503e50e81d14a8815f0be302f274b8c6967acbd9b2d7db000b3 [INFO] running `Command { std: "docker" "start" "-a" "18d3efb653662503e50e81d14a8815f0be302f274b8c6967acbd9b2d7db000b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "18d3efb653662503e50e81d14a8815f0be302f274b8c6967acbd9b2d7db000b3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "18d3efb653662503e50e81d14a8815f0be302f274b8c6967acbd9b2d7db000b3", kill_on_drop: false }` [INFO] [stdout] 18d3efb653662503e50e81d14a8815f0be302f274b8c6967acbd9b2d7db000b3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2f93f9a1de52d8cc879dec76606c38208046b9a190f3a80bb3fe52e7ab46d47c [INFO] running `Command { std: "docker" "start" "-a" "2f93f9a1de52d8cc879dec76606c38208046b9a190f3a80bb3fe52e7ab46d47c", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.172 [INFO] [stderr] Compiling proc-macro2 v1.0.95 [INFO] [stderr] Compiling zerocopy v0.8.25 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling anyhow v1.0.98 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.101 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling three-salmons v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/uci.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stdout] --> src/uci.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `square_mask` [INFO] [stdout] --> src/movegen.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let square_mask = 1u64 << square; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Square` is never used [INFO] [stdout] --> src/uci.rs:248:6 [INFO] [stdout] | [INFO] [stdout] 248 | enum Square { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/uci.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 283 | impl Square { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 284 | fn from_u8(value: u8) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/uci.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stdout] --> src/uci.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Color` and `Piece` [INFO] [stdout] --> src/main.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `evaluation::Evaluator` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search::Search` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use search::Search; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/main.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `square_mask` [INFO] [stdout] --> src/movegen.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let square_mask = 1u64 << square; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/main.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_move(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mv` [INFO] [stdout] --> src/main.rs:26:16 [INFO] [stdout] | [INFO] [stdout] 26 | fn format_move(mv: &Move) -> String { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_move` is never used [INFO] [stdout] --> src/main.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_move(input: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_move` is never used [INFO] [stdout] --> src/main.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn format_move(mv: &Move) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_move_legal` is never used [INFO] [stdout] --> src/main.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn is_move_legal(board: &Board, mv: &Move) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_fen` is never used [INFO] [stdout] --> src/board.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn to_fen(&self) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `king_attack_bonus` is never read [INFO] [stdout] --> src/evaluation.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Evaluator { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 40 | pub king_attack_bonus: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bishop_magics` and `rook_magics` are never read [INFO] [stdout] --> src/movegen.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct MoveGenerator { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 89 | pub bishop_magics: [u64; 64], [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 90 | pub rook_magics: [u64; 64], [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/movegen.rs:977:12 [INFO] [stdout] | [INFO] [stdout] 93 | impl MoveGenerator { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 977 | pub fn get_game_state(&self, board: &Board, move_history: &[(Board, Move)]) -> GameState { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1011 | fn is_threefold_repetition(&self, board: &Board, move_history: &[(Board, Move)]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1027 | fn get_position_hash(&self, board: &Board) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1057 | fn is_insufficient_material(&self, board: &Board) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1096 | fn count_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1102 | fn count_minor_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1108 | fn count_bishops(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1114 | fn find_bishop_square(&self, board: &Board, color: Color) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIME_NUMBERS` is never used [INFO] [stdout] --> src/movegen.rs:1127:7 [INFO] [stdout] | [INFO] [stdout] 1127 | const PRIME_NUMBERS: [u64; 15] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GameState` is never used [INFO] [stdout] --> src/movegen.rs:1132:10 [INFO] [stdout] | [INFO] [stdout] 1132 | pub enum GameState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_nodes_searched` is never used [INFO] [stdout] --> src/search.rs:306:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl Search { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn get_nodes_searched(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `hash` is never read [INFO] [stdout] --> src/transposition.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TranspositionEntry { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 12 | pub hash: u64, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TranspositionEntry` 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: methods `handle_command`, `handle_uci`, and `handle_ucinewgame` are never used [INFO] [stdout] --> src/uci.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl UciHandler { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn handle_command(&mut self, command: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn handle_uci(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn handle_ucinewgame(&mut self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Square` is never used [INFO] [stdout] --> src/uci.rs:248:6 [INFO] [stdout] | [INFO] [stdout] 248 | enum Square { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/uci.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 283 | impl Square { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 284 | fn from_u8(value: u8) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.46s [INFO] running `Command { std: "docker" "inspect" "2f93f9a1de52d8cc879dec76606c38208046b9a190f3a80bb3fe52e7ab46d47c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2f93f9a1de52d8cc879dec76606c38208046b9a190f3a80bb3fe52e7ab46d47c", kill_on_drop: false }` [INFO] [stdout] 2f93f9a1de52d8cc879dec76606c38208046b9a190f3a80bb3fe52e7ab46d47c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c8a8eacfb5c931f57b0376249eb49f3da56a2f058b7dc1823c2f6c852ade9df7 [INFO] running `Command { std: "docker" "start" "-a" "c8a8eacfb5c931f57b0376249eb49f3da56a2f058b7dc1823c2f6c852ade9df7", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/uci.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stdout] --> src/uci.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `square_mask` [INFO] [stdout] --> src/movegen.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let square_mask = 1u64 << square; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Square` is never used [INFO] [stdout] --> src/uci.rs:248:6 [INFO] [stdout] | [INFO] [stdout] 248 | enum Square { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/uci.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 283 | impl Square { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 284 | fn from_u8(value: u8) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling three-salmons v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/uci.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stdout] --> src/uci.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Color` and `Piece` [INFO] [stdout] --> src/main.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `evaluation::Evaluator` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `search::Search` [INFO] [stdout] --> src/main.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use search::Search; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Duration` and `Instant` [INFO] [stdout] --> src/main.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Color` [INFO] [stdout] --> src/uci.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stdout] --> src/uci.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::evaluation::Evaluator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `square_mask` [INFO] [stdout] --> src/movegen.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let square_mask = 1u64 << square; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `square_mask` [INFO] [stdout] --> src/movegen.rs:148:13 [INFO] [stdout] | [INFO] [stdout] 148 | let square_mask = 1u64 << square; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/main.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_move(input: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mv` [INFO] [stdout] --> src/main.rs:26:16 [INFO] [stdout] | [INFO] [stdout] 26 | fn format_move(mv: &Move) -> String { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_mv` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse_move` is never used [INFO] [stdout] --> src/main.rs:21:4 [INFO] [stdout] | [INFO] [stdout] 21 | fn parse_move(input: &str) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_move` is never used [INFO] [stdout] --> src/main.rs:26:4 [INFO] [stdout] | [INFO] [stdout] 26 | fn format_move(mv: &Move) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_move_legal` is never used [INFO] [stdout] --> src/main.rs:31:4 [INFO] [stdout] | [INFO] [stdout] 31 | fn is_move_legal(board: &Board, mv: &Move) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_fen` is never used [INFO] [stdout] --> src/board.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl Board { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 72 | pub fn to_fen(&self) -> String { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `king_attack_bonus` is never read [INFO] [stdout] --> src/evaluation.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 4 | pub struct Evaluator { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 40 | pub king_attack_bonus: i32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `bishop_magics` and `rook_magics` are never read [INFO] [stdout] --> src/movegen.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 88 | pub struct MoveGenerator { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 89 | pub bishop_magics: [u64; 64], [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 90 | pub rook_magics: [u64; 64], [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/movegen.rs:977:12 [INFO] [stdout] | [INFO] [stdout] 93 | impl MoveGenerator { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 977 | pub fn get_game_state(&self, board: &Board, move_history: &[(Board, Move)]) -> GameState { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1011 | fn is_threefold_repetition(&self, board: &Board, move_history: &[(Board, Move)]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1027 | fn get_position_hash(&self, board: &Board) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1057 | fn is_insufficient_material(&self, board: &Board) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1096 | fn count_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1102 | fn count_minor_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1108 | fn count_bishops(&self, board: &Board) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1114 | fn find_bishop_square(&self, board: &Board, color: Color) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PRIME_NUMBERS` is never used [INFO] [stdout] --> src/movegen.rs:1127:7 [INFO] [stdout] | [INFO] [stdout] 1127 | const PRIME_NUMBERS: [u64; 15] = [ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `GameState` is never used [INFO] [stdout] --> src/movegen.rs:1132:10 [INFO] [stdout] | [INFO] [stdout] 1132 | pub enum GameState { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_nodes_searched` is never used [INFO] [stdout] --> src/search.rs:306:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl Search { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 306 | pub fn get_nodes_searched(&self) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `hash` is never read [INFO] [stdout] --> src/transposition.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TranspositionEntry { [INFO] [stdout] | ------------------ field in this struct [INFO] [stdout] 12 | pub hash: u64, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TranspositionEntry` 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: methods `handle_command`, `handle_uci`, and `handle_ucinewgame` are never used [INFO] [stdout] --> src/uci.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl UciHandler { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn handle_command(&mut self, command: &str) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 80 | fn handle_uci(&self) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | fn handle_ucinewgame(&mut self) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Square` is never used [INFO] [stdout] --> src/uci.rs:248:6 [INFO] [stdout] | [INFO] [stdout] 248 | enum Square { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/uci.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 283 | impl Square { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 284 | fn from_u8(value: u8) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Square` is never used [INFO] [stdout] --> src/uci.rs:248:6 [INFO] [stdout] | [INFO] [stdout] 248 | enum Square { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u8` is never used [INFO] [stdout] --> src/uci.rs:284:8 [INFO] [stdout] | [INFO] [stdout] 283 | impl Square { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 284 | fn from_u8(value: u8) -> Self { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.95s [INFO] running `Command { std: "docker" "inspect" "c8a8eacfb5c931f57b0376249eb49f3da56a2f058b7dc1823c2f6c852ade9df7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c8a8eacfb5c931f57b0376249eb49f3da56a2f058b7dc1823c2f6c852ade9df7", kill_on_drop: false }` [INFO] [stdout] c8a8eacfb5c931f57b0376249eb49f3da56a2f058b7dc1823c2f6c852ade9df7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+2fd6efc32704647e64d3d646d21c4c68eae100e4" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 2e4340e3dbe83f8198a42e3d6bba265c30644edbaccb12b16eaddb73c17e6ec3 [INFO] running `Command { std: "docker" "start" "-a" "2e4340e3dbe83f8198a42e3d6bba265c30644edbaccb12b16eaddb73c17e6ec3", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `Color` [INFO] [stderr] --> src/uci.rs:1:27 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::board::{Board, Color, Piece}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::evaluation::Evaluator` [INFO] [stderr] --> src/uci.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::evaluation::Evaluator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `square_mask` [INFO] [stderr] --> src/movegen.rs:148:13 [INFO] [stderr] | [INFO] [stderr] 148 | let square_mask = 1u64 << square; [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_square_mask` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: enum `Square` is never used [INFO] [stderr] --> src/uci.rs:248:6 [INFO] [stderr] | [INFO] [stderr] 248 | enum Square { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `from_u8` is never used [INFO] [stderr] --> src/uci.rs:284:8 [INFO] [stderr] | [INFO] [stderr] 283 | impl Square { [INFO] [stderr] | ----------- associated function in this implementation [INFO] [stderr] 284 | fn from_u8(value: u8) -> Self { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `three-salmons` (lib) generated 5 warnings (run `cargo fix --lib -p three-salmons` to apply 3 suggestions) [INFO] [stderr] warning: `three-salmons` (lib test) generated 5 warnings (5 duplicates) [INFO] [stderr] warning: unused imports: `Color` and `Piece` [INFO] [stderr] --> src/main.rs:8:20 [INFO] [stderr] | [INFO] [stderr] 8 | use board::{Board, Color, Piece}; [INFO] [stderr] | ^^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `evaluation::Evaluator` [INFO] [stderr] --> src/main.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use evaluation::Evaluator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `search::Search` [INFO] [stderr] --> src/main.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 11 | use search::Search; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Duration` and `Instant` [INFO] [stderr] --> src/main.rs:13:17 [INFO] [stderr] | [INFO] [stderr] 13 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `input` [INFO] [stderr] --> src/main.rs:21:15 [INFO] [stderr] | [INFO] [stderr] 21 | fn parse_move(input: &str) -> Option { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mv` [INFO] [stderr] --> src/main.rs:26:16 [INFO] [stderr] | [INFO] [stderr] 26 | fn format_move(mv: &Move) -> String { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_mv` [INFO] [stderr] [INFO] [stderr] warning: function `parse_move` is never used [INFO] [stderr] --> src/main.rs:21:4 [INFO] [stderr] | [INFO] [stderr] 21 | fn parse_move(input: &str) -> Option { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `format_move` is never used [INFO] [stderr] --> src/main.rs:26:4 [INFO] [stderr] | [INFO] [stderr] 26 | fn format_move(mv: &Move) -> String { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `is_move_legal` is never used [INFO] [stderr] --> src/main.rs:31:4 [INFO] [stderr] | [INFO] [stderr] 31 | fn is_move_legal(board: &Board, mv: &Move) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `to_fen` is never used [INFO] [stderr] --> src/board.rs:72:12 [INFO] [stderr] | [INFO] [stderr] 40 | impl Board { [INFO] [stderr] | ---------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 72 | pub fn to_fen(&self) -> String { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `king_attack_bonus` is never read [INFO] [stderr] --> src/evaluation.rs:40:9 [INFO] [stderr] | [INFO] [stderr] 4 | pub struct Evaluator { [INFO] [stderr] | --------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 40 | pub king_attack_bonus: i32, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `bishop_magics` and `rook_magics` are never read [INFO] [stderr] --> src/movegen.rs:89:9 [INFO] [stderr] | [INFO] [stderr] 88 | pub struct MoveGenerator { [INFO] [stderr] | ------------- fields in this struct [INFO] [stderr] 89 | pub bishop_magics: [u64; 64], [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] 90 | pub rook_magics: [u64; 64], [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: multiple methods are never used [INFO] [stderr] --> src/movegen.rs:977:12 [INFO] [stderr] | [INFO] [stderr] 93 | impl MoveGenerator { [INFO] [stderr] | ------------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 977 | pub fn get_game_state(&self, board: &Board, move_history: &[(Board, Move)]) -> GameState { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1011 | fn is_threefold_repetition(&self, board: &Board, move_history: &[(Board, Move)]) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1027 | fn get_position_hash(&self, board: &Board) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1057 | fn is_insufficient_material(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1096 | fn count_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1102 | fn count_minor_pieces(&self, board: &Board) -> (u8, u8) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1108 | fn count_bishops(&self, board: &Board) -> (u8, u8) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1114 | fn find_bishop_square(&self, board: &Board, color: Color) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `PRIME_NUMBERS` is never used [INFO] [stderr] --> src/movegen.rs:1127:7 [INFO] [stderr] | [INFO] [stderr] 1127 | const PRIME_NUMBERS: [u64; 15] = [ [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `GameState` is never used [INFO] [stderr] --> src/movegen.rs:1132:10 [INFO] [stderr] | [INFO] [stderr] 1132 | pub enum GameState { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get_nodes_searched` is never used [INFO] [stderr] --> src/search.rs:306:12 [INFO] [stderr] | [INFO] [stderr] 23 | impl Search { [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 306 | pub fn get_nodes_searched(&self) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `hash` is never read [INFO] [stderr] --> src/transposition.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 11 | pub struct TranspositionEntry { [INFO] [stderr] | ------------------ field in this struct [INFO] [stderr] 12 | pub hash: u64, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `TranspositionEntry` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `handle_command`, `handle_uci`, and `handle_ucinewgame` are never used [INFO] [stderr] --> src/uci.rs:63:12 [INFO] [stderr] | [INFO] [stderr] 16 | impl UciHandler { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 63 | pub fn handle_command(&mut self, command: &str) -> Result { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 80 | fn handle_uci(&self) -> String { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 84 | fn handle_ucinewgame(&mut self) -> String { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: enum `Square` is never used [INFO] [stderr] --> src/uci.rs:248:6 [INFO] [stderr] | [INFO] [stderr] 248 | enum Square { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `three-salmons` (bin "three-salmons" test) generated 24 warnings (4 duplicates) (run `cargo fix --bin "three-salmons" -p three-salmons --tests` to apply 7 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/three_salmons-76d7f3f9c4642190) [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test tests::test_check ... ok [INFO] [stdout] test tests::test_initial_position ... ok [INFO] [stdout] test tests::test_fifty_move_rule ... ok [INFO] [stdout] test tests::test_insufficient_material ... ok [INFO] [stdout] test tests::test_en_passant ... ok [INFO] [stdout] test tests::test_castling ... ok [INFO] [stdout] test tests::test_checkmate ... ok [INFO] [stdout] test tests::test_move_validation ... ok [INFO] [stdout] test tests::test_pawn_moves ... ok [INFO] [stdout] test search::tests::test_time_control ... ok [INFO] [stdout] test tests::test_threefold_repetition ... ok [INFO] [stdout] test tests::test_promotion ... ok [INFO] [stdout] test tests::test_stalemate ... ok [INFO] [stdout] test tests::test_perft_initial_position ... ok [INFO] [stdout] test search::tests::test_search_respects_time_limit ... FAILED [INFO] [stdout] test search::tests::test_search_uses_entire_time ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- search::tests::test_search_respects_time_limit stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'search::tests::test_search_respects_time_limit' (24) panicked at src/search.rs:342:9: [INFO] [stdout] Search took 26ms, which exceeds the 10ms limit [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x591429194b32 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x591429194b32 - std[716c9a7a72e5c14e]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x591429194b32 - std[716c9a7a72e5c14e]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x591429194b32 - <::print::DisplayBacktrace as core[c5ed12ab89cc536a]::fmt::Display>::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5914291aa0ba - ::fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5914291aa0ba - core[c5ed12ab89cc536a]::fmt::write [INFO] [stdout] 6: 0x591429199966 - std[716c9a7a72e5c14e]::io::default_write_fmt::> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x591429199966 - as std[716c9a7a72e5c14e]::io::Write>::write_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x591429172fff - ::print [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x591429172fff - std[716c9a7a72e5c14e]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x59142918ce19 - std[716c9a7a72e5c14e]::panicking::default_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5914290f052e - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 12: 0x5914290f052e - test[64760d2bdea328cc]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x59142918cfd2 - core[c5ed12ab89cc536a]::ops::function::Fn<(&'a std[716c9a7a72e5c14e]::panic::PanicHookInfo<'b>,), Output = ()> + core[c5ed12ab89cc536a]::marker::Sync + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::Fn<(&std[716c9a7a72e5c14e]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2220:9 [INFO] [stdout] 14: 0x59142918cfd2 - std[716c9a7a72e5c14e]::panicking::panic_with_hook [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5914291730b8 - std[716c9a7a72e5c14e]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x59142916aa89 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x591429173f0d - __rustc[4f0b026143eab78e]::rust_begin_unwind [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5914291aa78c - core[c5ed12ab89cc536a]::panicking::panic_fmt [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5914290e08cb - three_salmons[bd84b76681c40d6f]::search::tests::test_search_respects_time_limit [INFO] [stdout] at /opt/rustwide/workdir/src/search.rs:342:9 [INFO] [stdout] 20: 0x5914290e0017 - three_salmons[bd84b76681c40d6f]::search::tests::test_search_respects_time_limit::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/search.rs:329:41 [INFO] [stdout] 21: 0x5914290cfe96 - >::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 22: 0x5914290e48db - core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5914290e48db - test[64760d2bdea328cc]::__rust_begin_short_backtrace::, fn() -> core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:663:18 [INFO] [stdout] 24: 0x5914290f113a - test[64760d2bdea328cc]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:74 [INFO] [stdout] 25: 0x5914290f113a - as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 26: 0x5914290f113a - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 27: 0x5914290f113a - std[716c9a7a72e5c14e]::panicking::catch_unwind::, core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 28: 0x5914290f113a - std[716c9a7a72e5c14e]::panic::catch_unwind::, core[c5ed12ab89cc536a]::result::Result<(), alloc[9c68fdf4f4f29218]::string::String>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 29: 0x5914290f113a - test[64760d2bdea328cc]::run_test_in_process [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:686:27 [INFO] [stdout] 30: 0x5914290f113a - test[64760d2bdea328cc]::run_test::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:607:43 [INFO] [stdout] 31: 0x5914290eb604 - test[64760d2bdea328cc]::run_test::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/test/src/lib.rs:637:41 [INFO] [stdout] 32: 0x5914290eb604 - std[716c9a7a72e5c14e]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 33: 0x5914290f3c32 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 34: 0x5914290f3c32 - ::{closure#1}::{closure#0}> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/panic/unwind_safe.rs:274:9 [INFO] [stdout] 35: 0x5914290f3c32 - std[716c9a7a72e5c14e]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:581:40 [INFO] [stdout] 36: 0x5914290f3c32 - std[716c9a7a72e5c14e]::panicking::catch_unwind::<(), core[c5ed12ab89cc536a]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panicking.rs:544:19 [INFO] [stdout] 37: 0x5914290f3c32 - std[716c9a7a72e5c14e]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/panic.rs:359:14 [INFO] [stdout] 38: 0x5914290f3c32 - std[716c9a7a72e5c14e]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 39: 0x5914290f3c32 - ::{closure#1} as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 40: 0x5914291943df - + core[c5ed12ab89cc536a]::marker::Send> as core[c5ed12ab89cc536a]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/alloc/src/boxed.rs:2206:9 [INFO] [stdout] 41: 0x5914291943df - ::new::thread_start [INFO] [stdout] at /rustc/2fd6efc32704647e64d3d646d21c4c68eae100e4/library/std/src/sys/thread/unix.rs:119:17 [INFO] [stdout] 42: 0x7d634891aaa4 - [INFO] [stdout] 43: 0x7d63489a7a64 - clone [INFO] [stdout] 44: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] search::tests::test_search_respects_time_limit [INFO] [stdout] [INFO] [stdout] test result: FAILED. 15 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "2e4340e3dbe83f8198a42e3d6bba265c30644edbaccb12b16eaddb73c17e6ec3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2e4340e3dbe83f8198a42e3d6bba265c30644edbaccb12b16eaddb73c17e6ec3", kill_on_drop: false }` [INFO] [stdout] 2e4340e3dbe83f8198a42e3d6bba265c30644edbaccb12b16eaddb73c17e6ec3