[INFO] cloning repository https://github.com/mohamedimrane/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/mohamedimrane/chess-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6f7d37dffc1a46d91f8b60a97e5f718c1d984542 [INFO] checking mohamedimrane/chess-engine against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmohamedimrane%2Fchess-engine" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/mohamedimrane/chess-engine [INFO] finished tweaking git repo https://github.com/mohamedimrane/chess-engine [INFO] tweaked toml for git repo https://github.com/mohamedimrane/chess-engine written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mohamedimrane/chess-engine on toolchain b1f2594eac607c1f051534800237eeedb5590a49 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mohamedimrane/chess-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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e0c231a68cd3ab842b98ad0c81876b222d57f527a451413f7652bbc8c90622d1 [INFO] running `Command { std: "docker" "start" "-a" "e0c231a68cd3ab842b98ad0c81876b222d57f527a451413f7652bbc8c90622d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e0c231a68cd3ab842b98ad0c81876b222d57f527a451413f7652bbc8c90622d1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e0c231a68cd3ab842b98ad0c81876b222d57f527a451413f7652bbc8c90622d1", kill_on_drop: false }` [INFO] [stdout] e0c231a68cd3ab842b98ad0c81876b222d57f527a451413f7652bbc8c90622d1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 59a7dddbd0d95116ef2d9f1343318eb4b85031dd41447e14eda1f13ba91ec574 [INFO] running `Command { std: "docker" "start" "-a" "59a7dddbd0d95116ef2d9f1343318eb4b85031dd41447e14eda1f13ba91ec574", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.76 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling memchr v2.7.1 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling color-print-proc-macro v0.3.5 [INFO] [stderr] Checking color-print v0.3.5 [INFO] [stderr] Checking rust-chess-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `get_file_number` [INFO] [stdout] --> src/main.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use utils::{get_file_number, string_to_square}; [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: `get_file_number` [INFO] [stdout] --> src/main.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use utils::{get_file_number, string_to_square}; [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 variable: `en_passant_squage_seg` [INFO] [stdout] --> src/board.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | let en_passant_squage_seg = splited_fen.get(3).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_en_passant_squage_seg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `halfmove_clock_seg` [INFO] [stdout] --> src/board.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | let halfmove_clock_seg = splited_fen.get(4).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halfmove_clock_seg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fullmove_number_seg` [INFO] [stdout] --> src/board.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let fullmove_number_seg = splited_fen.get(5).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fullmove_number_seg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/castling_rights.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | _ => unreachable!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/castling_rights.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 34 | Colour::White => Self::white_rights(rights), [INFO] [stdout] | ------------- matches some of the same values [INFO] [stdout] 35 | Colour::Black => Self::black_rights(rights), [INFO] [stdout] | ------------- matches some of the same values [INFO] [stdout] 36 | _ => unreachable!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/errors.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | _ => write!(f, "error message lol"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/errors.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 68 | FenError::NotEnoughParts => write!(f, "not enough parts in FEN string"), [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] 69 | FenError::TooManyPieces(a) => write!(f, "too many pieces {} in FEN string", a), [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 70 | FenError::UnknownPiece(a) => write!(f, "unknown piece {} in FEN string", a), [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] 71 | FenError::BadPlacement(a) => write!(f, "bad placement {} in FEN string", a), [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 79 | _ => write!(f, "error message lol"), [INFO] [stdout] | ^ ...and 5 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEST` is never used [INFO] [stdout] --> src/board.rs:45:7 [INFO] [stdout] | [INFO] [stdout] 45 | const WEST: usize = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EAST` is never used [INFO] [stdout] --> src/board.rs:46:7 [INFO] [stdout] | [INFO] [stdout] 46 | const EAST: usize = 3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_fen` is never used [INFO] [stdout] --> src/board.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl Board { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn from_fen(fen: &'static str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constants `WhiteCanShortCastle`, `WhiteCanLongCastle`, `BlackCanShortCastle`, `BlackCanLongCastle`, and `CanCastle` are never used [INFO] [stdout] --> src/castling_rights.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 5 | impl CastlingRights { [INFO] [stdout] | ------------------- associated constants in this implementation [INFO] [stdout] ... [INFO] [stdout] 8 | pub const WhiteCanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 9 | pub const WhiteCanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub const BlackCanShortCastle: u8 = 0b00010000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | pub const BlackCanLongCastle: u8 = 0b00100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | [INFO] [stdout] 16 | pub const CanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `InvalidRank` is never constructed [INFO] [stdout] --> src/errors.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum MoveError { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 19 | InvalidRank, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MoveError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `FenError` is never used [INFO] [stdout] --> src/errors.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum FenError<'a> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/moves.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl MoveRecord { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 103 | pub fn new(v_move: u16, piece_on_target_square: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | pub const WhiteCanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_CASTLE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | pub const WhiteCanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | pub const WhiteCanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `en_passant_squage_seg` [INFO] [stdout] --> src/board.rs:112:13 [INFO] [stdout] | [INFO] [stdout] 112 | let en_passant_squage_seg = splited_fen.get(3).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_en_passant_squage_seg` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `halfmove_clock_seg` [INFO] [stdout] --> src/board.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | let halfmove_clock_seg = splited_fen.get(4).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_halfmove_clock_seg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fullmove_number_seg` [INFO] [stdout] --> src/board.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let fullmove_number_seg = splited_fen.get(5).copied().ok_or(FENotEnoughParts)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fullmove_number_seg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub const WhiteCanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub const BlackCanCastle: u8 = 0b00110000; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub const BlackCanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | pub const BlackCanShortCastle: u8 = 0b00010000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const BlackCanLongCastle: u8 = 0b00100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const CanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CAN_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:17:15 [INFO] [stdout] | [INFO] [stdout] 17 | pub const CanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const CanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const CanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `white_rights_mask` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | pub const white_rights_mask: u8 = 0b00001111; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_RIGHTS_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `black_rights_mask` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | pub const black_rights_mask: u8 = 0b11110000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_RIGHTS_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `White` should have an upper case name [INFO] [stdout] --> src/colour.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub const White: bool = true; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `WHITE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Black` should have an upper case name [INFO] [stdout] --> src/colour.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | pub const Black: bool = false; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `BLACK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/castling_rights.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | _ => unreachable!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/castling_rights.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 34 | Colour::White => Self::white_rights(rights), [INFO] [stdout] | ------------- matches some of the same values [INFO] [stdout] 35 | Colour::Black => Self::black_rights(rights), [INFO] [stdout] | ------------- matches some of the same values [INFO] [stdout] 36 | _ => unreachable!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/errors.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 79 | _ => write!(f, "error message lol"), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/errors.rs:79:13 [INFO] [stdout] | [INFO] [stdout] 68 | FenError::NotEnoughParts => write!(f, "not enough parts in FEN string"), [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] 69 | FenError::TooManyPieces(a) => write!(f, "too many pieces {} in FEN string", a), [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 70 | FenError::UnknownPiece(a) => write!(f, "unknown piece {} in FEN string", a), [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] 71 | FenError::BadPlacement(a) => write!(f, "bad placement {} in FEN string", a), [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 79 | _ => write!(f, "error message lol"), [INFO] [stdout] | ^ ...and 5 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEST` is never used [INFO] [stdout] --> src/board.rs:45:7 [INFO] [stdout] | [INFO] [stdout] 45 | const WEST: usize = 2; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EAST` is never used [INFO] [stdout] --> src/board.rs:46:7 [INFO] [stdout] | [INFO] [stdout] 46 | const EAST: usize = 3; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_fen` is never used [INFO] [stdout] --> src/board.rs:105:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl Board { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn from_fen(fen: &'static str) -> Result { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constants `WhiteCanShortCastle`, `WhiteCanLongCastle`, `BlackCanShortCastle`, `BlackCanLongCastle`, and `CanCastle` are never used [INFO] [stdout] --> src/castling_rights.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 5 | impl CastlingRights { [INFO] [stdout] | ------------------- associated constants in this implementation [INFO] [stdout] ... [INFO] [stdout] 8 | pub const WhiteCanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 9 | pub const WhiteCanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 13 | pub const BlackCanShortCastle: u8 = 0b00010000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | pub const BlackCanLongCastle: u8 = 0b00100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | [INFO] [stdout] 16 | pub const CanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `InvalidRank` is never constructed [INFO] [stdout] --> src/errors.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum MoveError { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 19 | InvalidRank, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MoveError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `FenError` is never used [INFO] [stdout] --> src/errors.rs:23:10 [INFO] [stdout] | [INFO] [stdout] 23 | pub enum FenError<'a> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/moves.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 102 | impl MoveRecord { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 103 | pub fn new(v_move: u16, piece_on_target_square: u8) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | pub const WhiteCanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_CASTLE` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:7:15 [INFO] [stdout] | [INFO] [stdout] 7 | pub const WhiteCanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | pub const WhiteCanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `WhiteCanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:9:15 [INFO] [stdout] | [INFO] [stdout] 9 | pub const WhiteCanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub const BlackCanCastle: u8 = 0b00110000; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:12:15 [INFO] [stdout] | [INFO] [stdout] 12 | pub const BlackCanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:13:15 [INFO] [stdout] | [INFO] [stdout] 13 | pub const BlackCanShortCastle: u8 = 0b00010000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `BlackCanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub const BlackCanLongCastle: u8 = 0b00100000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:16:15 [INFO] [stdout] | [INFO] [stdout] 16 | pub const CanCastle: u8 = 0b00000011; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to upper case: `CAN_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanNotCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:17:15 [INFO] [stdout] | [INFO] [stdout] 17 | pub const CanNotCastle: u8 = 0b00000000; [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_NOT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanShortCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:18:15 [INFO] [stdout] | [INFO] [stdout] 18 | pub const CanShortCastle: u8 = 0b00000001; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_SHORT_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `CanLongCastle` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:19:15 [INFO] [stdout] | [INFO] [stdout] 19 | pub const CanLongCastle: u8 = 0b00000010; [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper case: `CAN_LONG_CASTLE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `white_rights_mask` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:21:15 [INFO] [stdout] | [INFO] [stdout] 21 | pub const white_rights_mask: u8 = 0b00001111; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `WHITE_RIGHTS_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `black_rights_mask` should have an upper case name [INFO] [stdout] --> src/castling_rights.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | pub const black_rights_mask: u8 = 0b11110000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `BLACK_RIGHTS_MASK` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `White` should have an upper case name [INFO] [stdout] --> src/colour.rs:5:15 [INFO] [stdout] | [INFO] [stdout] 5 | pub const White: bool = true; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `WHITE` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Black` should have an upper case name [INFO] [stdout] --> src/colour.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | pub const Black: bool = false; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `BLACK` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.15s [INFO] running `Command { std: "docker" "inspect" "59a7dddbd0d95116ef2d9f1343318eb4b85031dd41447e14eda1f13ba91ec574", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59a7dddbd0d95116ef2d9f1343318eb4b85031dd41447e14eda1f13ba91ec574", kill_on_drop: false }` [INFO] [stdout] 59a7dddbd0d95116ef2d9f1343318eb4b85031dd41447e14eda1f13ba91ec574