[INFO] fetching crate qubic_engine 0.1.7... [INFO] testing qubic_engine-0.1.7 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210-2 [INFO] extracting crate qubic_engine 0.1.7 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate qubic_engine 0.1.7 [INFO] finished tweaking crates.io crate qubic_engine 0.1.7 [INFO] tweaked toml for crates.io crate qubic_engine 0.1.7 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate qubic_engine 0.1.7 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate qubic_engine 0.1.7 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" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d83c3c27c7d8940697093c5c63738a415a8dbb78a521818efc1f8d3f07d49aee [INFO] running `Command { std: "docker" "start" "-a" "d83c3c27c7d8940697093c5c63738a415a8dbb78a521818efc1f8d3f07d49aee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d83c3c27c7d8940697093c5c63738a415a8dbb78a521818efc1f8d3f07d49aee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d83c3c27c7d8940697093c5c63738a415a8dbb78a521818efc1f8d3f07d49aee", kill_on_drop: false }` [INFO] [stdout] d83c3c27c7d8940697093c5c63738a415a8dbb78a521818efc1f8d3f07d49aee [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 350cd495337631b56d937232b959c4cbb9ca4eb442b0ff19c0987cf0dfe1b0ed [INFO] running `Command { std: "docker" "start" "-a" "350cd495337631b56d937232b959c4cbb9ca4eb442b0ff19c0987cf0dfe1b0ed", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.87 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling cc v1.1.31 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Compiling serde v1.0.193 [INFO] [stderr] Compiling portable-atomic v1.9.0 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling serde_json v1.0.109 [INFO] [stderr] Compiling anyhow v1.0.89 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling itoa v1.0.11 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling syn v2.0.79 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling console v0.15.8 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling proconio v0.5.0 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling indicatif v0.17.8 [INFO] [stderr] Compiling sqlite3-src v0.6.1 [INFO] [stderr] Compiling sqlite3-sys v0.17.0 [INFO] [stderr] Compiling sqlite v0.36.1 [INFO] [stderr] Compiling ndarray v0.16.1 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling serde_derive v1.0.193 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling rand_distr v0.4.3 [INFO] [stderr] Compiling qubic_engine v0.1.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `super::pprint_u64` [INFO] [stdout] --> src/board/magic_number.rs:536:9 [INFO] [stdout] | [INFO] [stdout] 536 | use super::pprint_u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 411 | let x = ((count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] | ^ [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 | * 0xf); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 411 ~ let x = (count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 ~ * 0xf; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:414:13 [INFO] [stdout] | [INFO] [stdout] 414 | let y = ((count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] | ^ [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 | * 0x1111); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 414 ~ let y = (count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 ~ * 0x1111; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:443:15 [INFO] [stdout] | [INFO] [stdout] 443 | let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 443 - let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] 443 + let xyz = xyz1 | xyz2 | xyz3 | xyz4; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `return` value [INFO] [stdout] --> src/board.rs:464:12 [INFO] [stdout] | [INFO] [stdout] 464 | return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 464 - return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] 464 + return b & c & (a | e) | e & f & (c | g); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pprint_u64` [INFO] [stdout] --> src/dfpn.rs:2:76 [INFO] [stdout] | [INFO] [stdout] 2 | self, get_2row_mask, get_put_reach_mask, get_reach_mask, pprint_board, pprint_u64, Board, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/dfpn.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::binary_heap::Iter` [INFO] [stdout] --> src/exp.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{collections::binary_heap::Iter, thread, time}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `threat_space_search` [INFO] [stdout] --> src/train.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | dfpn::{proof_number_search, threat_space_search, MateType}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::EPSILON` [INFO] [stdout] --> src/train.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::f32::EPSILON; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/board.rs:463:56 [INFO] [stdout] | [INFO] [stdout] 463 | const fn _get_reach_mask_alpha(a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/board.rs:539:28 [INFO] [stdout] | [INFO] [stdout] 539 | pub const fn get_1row_mask(s: u64, b: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b1` [INFO] [stdout] --> src/board.rs:540:10 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b2` [INFO] [stdout] --> src/board.rs:540:14 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b3` [INFO] [stdout] --> src/board.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b4` [INFO] [stdout] --> src/board.rs:540:22 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b6` [INFO] [stdout] --> src/board.rs:540:26 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b8` [INFO] [stdout] --> src/board.rs:540:30 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b9` [INFO] [stdout] --> src/board.rs:540:34 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b11` [INFO] [stdout] --> src/board.rs:540:38 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b11` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b12` [INFO] [stdout] --> src/board.rs:540:43 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b12` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b13` [INFO] [stdout] --> src/board.rs:540:48 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b13` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b15` [INFO] [stdout] --> src/board.rs:540:53 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b16` [INFO] [stdout] --> src/board.rs:553:10 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b16` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b17` [INFO] [stdout] --> src/board.rs:553:15 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b17` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b19` [INFO] [stdout] --> src/board.rs:553:20 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b19` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b20` [INFO] [stdout] --> src/board.rs:553:25 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b20` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b21` [INFO] [stdout] --> src/board.rs:553:30 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b21` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b22` [INFO] [stdout] --> src/board.rs:553:35 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b22` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b24` [INFO] [stdout] --> src/board.rs:553:40 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b24` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b26` [INFO] [stdout] --> src/board.rs:553:45 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b26` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b30` [INFO] [stdout] --> src/board.rs:553:50 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b30` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b32` [INFO] [stdout] --> src/board.rs:564:10 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b33` [INFO] [stdout] --> src/board.rs:564:15 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b34` [INFO] [stdout] --> src/board.rs:564:20 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b34` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b36` [INFO] [stdout] --> src/board.rs:564:25 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b36` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b38` [INFO] [stdout] --> src/board.rs:564:30 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b38` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b39` [INFO] [stdout] --> src/board.rs:564:35 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b39` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b40` [INFO] [stdout] --> src/board.rs:564:40 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b40` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b42` [INFO] [stdout] --> src/board.rs:564:45 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b42` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b45` [INFO] [stdout] --> src/board.rs:564:50 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b45` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b48` [INFO] [stdout] --> src/board.rs:575:10 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b48` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b49` [INFO] [stdout] --> src/board.rs:575:15 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b49` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b57` [INFO] [stdout] --> src/board.rs:575:20 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b57` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b60` [INFO] [stdout] --> src/board.rs:575:25 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b60` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b63` [INFO] [stdout] --> src/board.rs:575:30 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b63` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1039:9 [INFO] [stdout] | [INFO] [stdout] 1039 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1051:9 [INFO] [stdout] | [INFO] [stdout] 1051 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1092:9 [INFO] [stdout] | [INFO] [stdout] 1092 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1104:9 [INFO] [stdout] | [INFO] [stdout] 1104 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/board.rs:1375:18 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/board.rs:1375:26 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func` [INFO] [stdout] --> src/board.rs:1515:33 [INFO] [stdout] | [INFO] [stdout] 1515 | Agent::Custom(name, func) => format!("{}", name), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_func` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ga` [INFO] [stdout] --> src/board.rs:1516:33 [INFO] [stdout] | [INFO] [stdout] 1516 | Agent::Struct(name, ga) => format!("{}", name), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ga` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a_milis` [INFO] [stdout] --> src/board.rs:1531:21 [INFO] [stdout] | [INFO] [stdout] 1531 | let a_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_a_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_milis` [INFO] [stdout] --> src/board.rs:1535:21 [INFO] [stdout] | [INFO] [stdout] 1535 | let b_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1548:27 [INFO] [stdout] | [INFO] [stdout] 1548 | Agent::Custom(name, func) => func(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1549:27 [INFO] [stdout] | [INFO] [stdout] 1549 | Agent::Struct(name, ga) => ga.get_action(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1720:9 [INFO] [stdout] | [INFO] [stdout] 1720 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1794:9 [INFO] [stdout] | [INFO] [stdout] 1794 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/db.rs:145:23 [INFO] [stdout] | [INFO] [stdout] 145 | for &(name, value) in pairs.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/db.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 218 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:299:13 [INFO] [stdout] | [INFO] [stdout] 299 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:352:18 [INFO] [stdout] | [INFO] [stdout] 352 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 380 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:394:14 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:394:21 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_reach_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | let mut count_reach_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_reach_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_valid_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | let mut count_valid_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_valid_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:425:18 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:425:22 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:425:29 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_reach_board` is never read [INFO] [stdout] --> src/dfpn.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | count_reach_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_valid_board` is never read [INFO] [stdout] --> src/dfpn.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | count_valid_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stone` [INFO] [stdout] --> src/dfpn.rs:440:9 [INFO] [stdout] | [INFO] [stdout] 440 | let stone = att | def; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:494:5 [INFO] [stdout] | [INFO] [stdout] 494 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:513:14 [INFO] [stdout] | [INFO] [stdout] 513 | for (action, n_att) in MaskActionIterator::new(att, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:613:14 [INFO] [stdout] | [INFO] [stdout] 613 | for (action, n_def) in MaskActionIterator::new(def, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wait_time` [INFO] [stdout] --> src/exp.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let wait_time = time::Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wait_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s2` [INFO] [stdout] --> src/exp.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | let (s1, s2) = board::eval(&a1, &a2, 1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ml/funcs.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let x = inputs[0].data[i]; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `T` [INFO] [stdout] | [INFO] [stdout] 236 - let x = inputs[0].data[i]; [INFO] [stdout] 236 + let ai::mpc::T = inputs[0].data[i]; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 236 | let _x = inputs[0].data[i]; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ml/ops.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | for i in 0..inputs.len() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad` [INFO] [stdout] --> src/ml.rs:190:28 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inputs` [INFO] [stdout] --> src/ml.rs:190:43 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/ml.rs:193:20 [INFO] [stdout] | [INFO] [stdout] 193 | fn call(&self, input: Vec) -> Tensor { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `play_agent` [INFO] [stdout] --> src/train.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let play_agent = super::board::Agent::Mcts(50, 500); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_play_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/train.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let count: i32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/train.rs:161:35 [INFO] [stdout] | [INFO] [stdout] 161 | (action, val, count) = neg.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `agent` [INFO] [stdout] --> src/train.rs:226:20 [INFO] [stdout] | [INFO] [stdout] 226 | fn play_and_record(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:229:22 [INFO] [stdout] | [INFO] [stdout] 229 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/train.rs:313:9 [INFO] [stdout] | [INFO] [stdout] 313 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/train.rs:371:22 [INFO] [stdout] | [INFO] [stdout] 371 | let (_, val, count) = agent.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:368:22 [INFO] [stdout] | [INFO] [stdout] 368 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/train.rs:404:9 [INFO] [stdout] | [INFO] [stdout] 404 | let rng = rand::thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 583 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 583 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 583 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `data` is never read [INFO] [stdout] --> src/train.rs:560:20 [INFO] [stdout] | [INFO] [stdout] 560 | let mut data = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:703:13 [INFO] [stdout] | [INFO] [stdout] 703 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 703 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 703 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 703 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval_it` [INFO] [stdout] --> src/train.rs:747:21 [INFO] [stdout] | [INFO] [stdout] 747 | let eval_it = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eval_it` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pn` and `dn` are never read [INFO] [stdout] --> src/dfpn.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct NodeNumber { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 16 | pn: f32, [INFO] [stdout] | ^^ [INFO] [stdout] 17 | dn: f32, [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 functions `new` and `from` are never used [INFO] [stdout] --> src/dfpn.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl NodeNumber { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn from(pn: f32, dn: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next` is never used [INFO] [stdout] --> src/dfpn.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 42 | impl Player { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 43 | fn next(&self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SingleShootLoss` is never used [INFO] [stdout] --> src/ml/funcs.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | trait SingleShootLoss { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEPTH` is never used [INFO] [stdout] --> src/train.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const DEPTH: u8 = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_MOVE` is never used [INFO] [stdout] --> src/train.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const RANDOM_MOVE: usize = 7; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `play_with_analyze` is never used [INFO] [stdout] --> src/train.rs:365:4 [INFO] [stdout] | [INFO] [stdout] 365 | fn play_with_analyze(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/board.rs:1349:9 [INFO] [stdout] | [INFO] [stdout] 1349 | / write!( [INFO] [stdout] 1350 | | f, [INFO] [stdout] 1351 | | "action: {:>2}, score: {:>5.2}%({:>7.0}/{:>7.0}), Q: {:>5.3}", [INFO] [stdout] 1352 | | self.action, [INFO] [stdout] ... | [INFO] [stdout] 1356 | | self.q [INFO] [stdout] 1357 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1349 | let _ = write!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/board.rs:1462:23 [INFO] [stdout] | [INFO] [stdout] 1462 | fn get_uct(&self, N: f32) -> f32 { [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:415:9 [INFO] [stdout] | [INFO] [stdout] 415 | fs::create_dir_all(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 415 | let _ = fs::create_dir_all(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | self.layers[i].save_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 420 | let _ = self.layers[i].save_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 432 | self.layers[i].load_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 432 | let _ = self.layers[i].load_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:669:5 [INFO] [stdout] | [INFO] [stdout] 669 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 669 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:686:9 [INFO] [stdout] | [INFO] [stdout] 686 | model.load(load_name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 686 | let _ = model.load(load_name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:814:21 [INFO] [stdout] | [INFO] [stdout] 814 | model.save(name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 814 | let _ = model.save(name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 819 | model.save(format!("latest-{}", name)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 819 | let _ = model.save(format!("latest-{}", name)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ProofNumberSearchStatus` and `threat_space_search` [INFO] [stdout] --> src/main_utils.rs:4:39 [INFO] [stdout] | [INFO] [stdout] 4 | dfpn::{self, proof_number_search, threat_space_search, MateType, ProofNumberSearchStatus}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/main_utils.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SimplePatternEvaluator`, `TrainableBLE`, and `TrainableSPE` [INFO] [stdout] --> src/main.rs:4:46 [INFO] [stdout] | [INFO] [stdout] 4 | BucketLineEvaluator, SimplLineEvaluator, SimplePatternEvaluator, TrainableBLE, TrainableSLE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 5 | TrainableSPE, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `NNLineEvaluator` and `TrainableNLE` [INFO] [stdout] --> src/main.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use qubic_engine::ai::line_nn::{NNLineEvaluator, NNLineEvaluator_, TrainableNLE, TrainableNLE_}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrainableLineEvaluator` [INFO] [stdout] --> src/main.rs:12:38 [INFO] [stdout] | [INFO] [stdout] 12 | PlayoutLevel, PositionEvaluator, TrainableLineEvaluator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `count_2row_`, `get_2row_mask`, and `get_random` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | count_2row_, get_2row_mask, get_random, mate_check_horizontal, play_actor, pprint_board, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `qubic_engine::db::BoardDB` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use qubic_engine::db::BoardDB; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `train_with_db` [INFO] [stdout] --> src/main.rs:19:38 [INFO] [stdout] | [INFO] [stdout] 19 | use qubic_engine::train::{create_db, train_with_db}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NNUE` [INFO] [stdout] --> src/main.rs:21:33 [INFO] [stdout] | [INFO] [stdout] 21 | ai::{CoEvaluator, NegAlpha, NNUE}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::ThreadRng` [INFO] [stdout] --> src/main.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use rand::rngs::ThreadRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::WrappingNeg` [INFO] [stdout] --> src/main.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use rand_distr::num_traits::WrappingNeg; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Neg` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::ops::Neg; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::thread` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use std::os::unix::thread; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/main.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:166:21 [INFO] [stdout] | [INFO] [stdout] 166 | return Some((self.board.clone())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 166 - return Some((self.board.clone())); [INFO] [stdout] 166 + return Some(self.board.clone() ); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProofNumberSearchStatus` [INFO] [stdout] --> src/main.rs:429:40 [INFO] [stdout] | [INFO] [stdout] 429 | use qubic_engine::dfpn::{MateType, ProofNumberSearchStatus}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1098:17 [INFO] [stdout] | [INFO] [stdout] 1098 | let stone = (b.black | b.white); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1098 - let stone = (b.black | b.white); [INFO] [stdout] 1098 + let stone = b.black | b.white ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LineEvaluator`, `acum_mask_bundle`, and `apply_mask_bundle` [INFO] [stdout] --> src/main.rs:1109:28 [INFO] [stdout] | [INFO] [stdout] 1109 | use qubic_engine::ai::{acum_mask_bundle, apply_mask_bundle, LineEvaluator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main_utils.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 130 | break; [INFO] [stdout] | ----- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 139 | let start = Instant::now(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:198:9 [INFO] [stdout] | [INFO] [stdout] 197 | continue; [INFO] [stdout] | -------- any code following this expression is unreachable [INFO] [stdout] 198 | / for j in 0..step { [INFO] [stdout] 199 | | if rng.gen::() < 0.5 { [INFO] [stdout] 200 | | a += 1; [INFO] [stdout] 201 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 211 | | counts[count] += 1; [INFO] [stdout] 212 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main_utils.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let mut b = Board::from(att, def, Player::Black); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main_utils.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [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/main_utils.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts` [INFO] [stdout] --> src/main_utils.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | let mcts = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts2` [INFO] [stdout] --> src/main_utils.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mcts2 = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m1` [INFO] [stdout] --> src/main_utils.rs:101:13 [INFO] [stdout] | [INFO] [stdout] 101 | let m1 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m2` [INFO] [stdout] --> src/main_utils.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let m2 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l1` [INFO] [stdout] --> src/main_utils.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l2` [INFO] [stdout] --> src/main_utils.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/main_utils.rs:124:26 [INFO] [stdout] | [INFO] [stdout] 124 | if let Some((a, b)) = res { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut l3_ = NegAlphaF::new(Box::new(l.clone()), 1); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m1` [INFO] [stdout] --> src/main.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | let m1 = NegAlpha::new(Box::new(CoEvaluator::best()), 1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m3_f32` [INFO] [stdout] --> src/main.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let m3_f32 = NegAlphaF::new(Box::new(CoEvaluator::best()), 3); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m3_f32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m4` [INFO] [stdout] --> src/main.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let m4 = NegAlpha::new(Box::new(CoEvaluator::best()), 4); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m6` [INFO] [stdout] --> src/main.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let m6 = NegAlpha::new(Box::new(CoEvaluator::best()), 6); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m7` [INFO] [stdout] --> src/main.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let m7 = NegAlpha::new(Box::new(CoEvaluator::best()), 7); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m9` [INFO] [stdout] --> src/main.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | let m9 = NegAlpha::new(Box::new(CoEvaluator::best()), 9); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mm3` [INFO] [stdout] --> src/main.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mm3 = Agent::Struct(String::from("mm3"), Box::new(mm3)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mm3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m2` [INFO] [stdout] --> src/main.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let m2 = Agent::Struct(String::from("m2"), Box::new(m2)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m3` [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let m3 = Agent::Struct(String::from("m3"), Box::new(m3)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m5` [INFO] [stdout] --> src/main.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let m5 = Agent::Struct(String::from("m5"), Box::new(m5)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l5_` [INFO] [stdout] --> src/main.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let l5_ = MateWrapperActor::new(Box::new(l5_)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_l5_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b7` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let b7 = MateWrapperActor::new(Box::new(b7)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts` [INFO] [stdout] --> src/main.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mcts = ai::mcts::Mcts::new(10_000, 3, 10, po); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts2` [INFO] [stdout] --> src/main.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | let mcts2 = ai::mcts::Mcts::new(10_000, 3, 500, l3_); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let mut count = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/main.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let mut count = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | for j in 0..step { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | let mut max_action = 0; [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/main.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let mut max = 0.0; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_action` [INFO] [stdout] --> src/main.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | let mut max_action = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max` [INFO] [stdout] --> src/main.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let mut max = 0.0; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/main.rs:251:22 [INFO] [stdout] | [INFO] [stdout] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/main.rs:251:27 [INFO] [stdout] | [INFO] [stdout] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | for i in 0_u64..(1 << 32) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `black` [INFO] [stdout] --> src/main.rs:323:9 [INFO] [stdout] | [INFO] [stdout] 323 | black: u64, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_black` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:324:9 [INFO] [stdout] | [INFO] [stdout] 324 | white: u64, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 332 | let mut it = BoardIter::new(true); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | for i in 0..size { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `step` is assigned to, but never used [INFO] [stdout] --> src/main.rs:440:9 [INFO] [stdout] | [INFO] [stdout] 440 | let mut step = 0; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_step` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `step` is never read [INFO] [stdout] --> src/main.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | step += 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val_` [INFO] [stdout] --> src/main.rs:565:23 [INFO] [stdout] | [INFO] [stdout] 565 | let (action2, val_, _) = long.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_val_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:627:9 [INFO] [stdout] | [INFO] [stdout] 627 | let mut all_count = 0.0; [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/main.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | let mut all_err_sum = 0.0; [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/main.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 629 | let mut all_sq_sum = 0.0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_count` [INFO] [stdout] --> src/main.rs:627:9 [INFO] [stdout] | [INFO] [stdout] 627 | let mut all_count = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_err_sum` [INFO] [stdout] --> src/main.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | let mut all_err_sum = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_err_sum` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_sq_sum` [INFO] [stdout] --> src/main.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 629 | let mut all_sq_sum = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_sq_sum` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut model = TrainableSLE::from(model, 0.001); [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/main.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut pmodel = PositionMaskEvaluator::new(); [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/main.rs:769:9 [INFO] [stdout] | [INFO] [stdout] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [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/main.rs:770:9 [INFO] [stdout] | [INFO] [stdout] 770 | let mut nmodel = NNLineEvaluator_::new(); [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/main.rs:771:9 [INFO] [stdout] | [INFO] [stdout] 771 | let mut nmodel = TrainableNLE_::from(nmodel, 0.005); [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/main.rs:772:9 [INFO] [stdout] | [INFO] [stdout] 772 | let mut pmodel = pattern::test_pattern_evaluator(); [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/main.rs:773:9 [INFO] [stdout] | [INFO] [stdout] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/main.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut model = TrainableSLE::from(model, 0.001); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pmodel` [INFO] [stdout] --> src/main.rs:769:9 [INFO] [stdout] | [INFO] [stdout] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pmodel` [INFO] [stdout] --> src/main.rs:773:9 [INFO] [stdout] | [INFO] [stdout] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:813:9 [INFO] [stdout] | [INFO] [stdout] 813 | let mut b_time_not = 0; [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/main.rs:815:9 [INFO] [stdout] | [INFO] [stdout] 815 | let mut a_time_not = 0; [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/main.rs:817:9 [INFO] [stdout] | [INFO] [stdout] 817 | let mut count_n = 0; [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/main.rs:818:9 [INFO] [stdout] | [INFO] [stdout] 818 | let mut max_path_board = (0, 0); [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/main.rs:819:9 [INFO] [stdout] | [INFO] [stdout] 819 | let mut max_path = 0; [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/main.rs:820:9 [INFO] [stdout] | [INFO] [stdout] 820 | let mut max_reach_count_board = (0, 0); [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/main.rs:821:9 [INFO] [stdout] | [INFO] [stdout] 821 | let mut max_reach_count = 0; [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/main.rs:822:9 [INFO] [stdout] | [INFO] [stdout] 822 | let mut max_valid_count_board = (0, 0); [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/main.rs:823:9 [INFO] [stdout] | [INFO] [stdout] 823 | let mut max_valid_count = 0; [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/main.rs:824:9 [INFO] [stdout] | [INFO] [stdout] 824 | let mut reach_count = 0; [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/main.rs:825:9 [INFO] [stdout] | [INFO] [stdout] 825 | let mut valid_count = 0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:826:9 [INFO] [stdout] | [INFO] [stdout] 826 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:828:13 [INFO] [stdout] | [INFO] [stdout] 828 | for j in 0..20 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flag` [INFO] [stdout] --> src/main.rs:892:18 [INFO] [stdout] | [INFO] [stdout] 892 | let (flag, action) = result.unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:921:9 [INFO] [stdout] | [INFO] [stdout] 921 | for i in 0..10000 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | let mut rng = thread_rng(); [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/main.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | let mut r1 = 0.0; [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/main.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | let mut r2 = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/main.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | let mut rng = thread_rng(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `best` is assigned to, but never used [INFO] [stdout] --> src/main.rs:969:9 [INFO] [stdout] | [INFO] [stdout] 969 | let mut best = get_position_eval_agent_alpha(3, 6, 1, 1, 6, 1, 5, 5, 1, 5, 5, 8, 8); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_best` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:972:9 [INFO] [stdout] | [INFO] [stdout] 972 | for i in 0..1000 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r1` [INFO] [stdout] --> src/main.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | let mut r1 = 0.0; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r2` [INFO] [stdout] --> src/main.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | let mut r2 = 0.0; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:980:18 [INFO] [stdout] | [INFO] [stdout] 980 | let (i, r1_, r2_) = compare(&tar, test); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `best` is never read [INFO] [stdout] --> src/main.rs:989:13 [INFO] [stdout] | [INFO] [stdout] 989 | best = tar; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/main.rs:1099:9 [INFO] [stdout] | [INFO] [stdout] 1099 | let float = !((stone << 16) | 0xffff); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ground` [INFO] [stdout] --> src/main.rs:1101:9 [INFO] [stdout] | [INFO] [stdout] 1101 | let ground = ((stone << 16) | 0xffff) ^ stone; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_ground` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_prob_compare` is never used [INFO] [stdout] --> src/main.rs:170:4 [INFO] [stdout] | [INFO] [stdout] 170 | fn exp_prob_compare() { [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 `exp` is never used [INFO] [stdout] --> src/main.rs:219:4 [INFO] [stdout] | [INFO] [stdout] 219 | fn exp() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `command` is never used [INFO] [stdout] --> src/main.rs:259:4 [INFO] [stdout] | [INFO] [stdout] 259 | fn command() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_magic_number` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn get_magic_number() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_evaluator` is never used [INFO] [stdout] --> src/main.rs:309:4 [INFO] [stdout] | [INFO] [stdout] 309 | fn call_evaluator() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_positoin_eval_get_count` is never used [INFO] [stdout] --> src/main.rs:328:4 [INFO] [stdout] | [INFO] [stdout] 328 | fn exp_positoin_eval_get_count() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_pmodel` is never used [INFO] [stdout] --> src/main.rs:369:4 [INFO] [stdout] | [INFO] [stdout] 369 | fn print_pmodel() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_ai` is never used [INFO] [stdout] --> src/main.rs:376:4 [INFO] [stdout] | [INFO] [stdout] 376 | fn use_ai() { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_random_board` is never used [INFO] [stdout] --> src/main.rs:420:4 [INFO] [stdout] | [INFO] [stdout] 420 | fn get_random_board(size: usize) -> Board { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_mate_profile` is never used [INFO] [stdout] --> src/main.rs:428:4 [INFO] [stdout] | [INFO] [stdout] 428 | fn exp_mate_profile(a1: &impl GetAction, a2: &impl GetAction) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `profile` is never used [INFO] [stdout] --> src/main.rs:523:4 [INFO] [stdout] | [INFO] [stdout] 523 | fn profile() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mpc_for_coe` is never used [INFO] [stdout] --> src/main.rs:610:4 [INFO] [stdout] | [INFO] [stdout] 610 | fn mpc_for_coe(long_depth: u8, short_depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wrapping_line_eval` is never used [INFO] [stdout] --> src/main.rs:730:4 [INFO] [stdout] | [INFO] [stdout] 730 | fn wrapping_line_eval(l: LineEvaluator, depth: u8) -> MateWrapperActor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `train_line_eval` is never used [INFO] [stdout] --> src/main.rs:747:4 [INFO] [stdout] | [INFO] [stdout] 747 | fn train_line_eval(train_db: String, valid_db: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expand_untill_n` is never used [INFO] [stdout] --> src/main.rs:786:4 [INFO] [stdout] | [INFO] [stdout] 786 | fn expand_untill_n(b: Board, n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mcts_statistics` is never used [INFO] [stdout] --> src/main.rs:913:4 [INFO] [stdout] | [INFO] [stdout] 913 | fn mcts_statistics() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random_i` is never used [INFO] [stdout] --> src/main.rs:937:4 [INFO] [stdout] | [INFO] [stdout] 937 | fn random_i(max: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_random_model` is never used [INFO] [stdout] --> src/main.rs:942:4 [INFO] [stdout] | [INFO] [stdout] 942 | fn get_random_model(max: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `explore_best_model` is never used [INFO] [stdout] --> src/main.rs:960:4 [INFO] [stdout] | [INFO] [stdout] 960 | fn explore_best_model() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mc` is never used [INFO] [stdout] --> src/main.rs:997:4 [INFO] [stdout] | [INFO] [stdout] 997 | fn mc(a: usize, b: usize) -> Agent { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_co_eval_agent` is never used [INFO] [stdout] --> src/main.rs:1001:4 [INFO] [stdout] | [INFO] [stdout] 1001 | fn get_co_eval_agent(depth: usize, row_w: i32, pos_w: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_row_evaluator` is never used [INFO] [stdout] --> src/main.rs:1015:4 [INFO] [stdout] | [INFO] [stdout] 1015 | fn get_row_evaluator(depth: usize) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_position_eval_agent` is never used [INFO] [stdout] --> src/main.rs:1024:4 [INFO] [stdout] | [INFO] [stdout] 1024 | fn get_position_eval_agent(depth: usize, v: i32, e: i32, s: i32, c: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_position_eval_agent_alpha` is never used [INFO] [stdout] --> src/main.rs:1037:4 [INFO] [stdout] | [INFO] [stdout] 1037 | fn get_position_eval_agent_alpha( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare` is never used [INFO] [stdout] --> src/main.rs:1062:4 [INFO] [stdout] | [INFO] [stdout] 1062 | fn compare(a1: &impl GetAction, a2: &impl GetAction) -> (i32, f32, f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_v` is never used [INFO] [stdout] --> src/main.rs:1095:4 [INFO] [stdout] | [INFO] [stdout] 1095 | fn get_v(b: &Board) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `beam_search` is never used [INFO] [stdout] --> src/main.rs:1108:4 [INFO] [stdout] | [INFO] [stdout] 1108 | fn beam_search() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_board_from_json` is never used [INFO] [stdout] --> src/main_utils.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn read_board_from_json(file_name: &str) -> Vec<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_board_to_json` is never used [INFO] [stdout] --> src/main_utils.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn write_board_to_json(v: Vec<(u64, u64)>, file_name: &str) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameRecordIterator` is never constructed [INFO] [stdout] --> src/main_utils.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct GameRecordIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `reset` are never used [INFO] [stdout] --> src/main_utils.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl GameRecordIterator { [INFO] [stdout] | ------------------------------------------------------------- associated items in this implementation [INFO] [stdout] 31 | pub fn new(a1: A1, a2: A2) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) -> Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_pns` is never used [INFO] [stdout] --> src/main_utils.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn test_pns() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_problems` is never used [INFO] [stdout] --> src/main_utils.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn generate_problems() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | l.load("sle_tl50.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 53 | let _ = l.load("sle_tl50.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 64 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | b.load("bsimple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 74 | let _ = b.load("bsimple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 221 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 311 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 311 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:371:5 [INFO] [stdout] | [INFO] [stdout] 371 | pmodel.load("position.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 371 | let _ = pmodel.load("position.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:378:5 [INFO] [stdout] | [INFO] [stdout] 378 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 378 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:532:5 [INFO] [stdout] | [INFO] [stdout] 532 | nmodel.load("sle_tl50_.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 532 | let _ = nmodel.load("sle_tl50_.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:613:5 [INFO] [stdout] | [INFO] [stdout] 613 | l.load("bsimple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 613 | let _ = l.load("bsimple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 738 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 72 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 86 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | write_board_to_json(problems, "tss10000.json"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = write_board_to_json(problems, "tss10000.json"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:108:17 [INFO] [stdout] | [INFO] [stdout] 108 | write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 108 | let _ = write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 38.09s [INFO] running `Command { std: "docker" "inspect" "350cd495337631b56d937232b959c4cbb9ca4eb442b0ff19c0987cf0dfe1b0ed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "350cd495337631b56d937232b959c4cbb9ca4eb442b0ff19c0987cf0dfe1b0ed", kill_on_drop: false }` [INFO] [stdout] 350cd495337631b56d937232b959c4cbb9ca4eb442b0ff19c0987cf0dfe1b0ed [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3ecf0dba52598087d23b1cc1162095f9515cfdc058e20b0f02735940287868bc [INFO] running `Command { std: "docker" "start" "-a" "3ecf0dba52598087d23b1cc1162095f9515cfdc058e20b0f02735940287868bc", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `super::pprint_u64` [INFO] [stdout] --> src/board/magic_number.rs:536:9 [INFO] [stdout] | [INFO] [stdout] 536 | use super::pprint_u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 411 | let x = ((count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] | ^ [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 | * 0xf); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 411 ~ let x = (count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 ~ * 0xf; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:414:13 [INFO] [stdout] | [INFO] [stdout] 414 | let y = ((count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] | ^ [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 | * 0x1111); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 414 ~ let y = (count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 ~ * 0x1111; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:443:15 [INFO] [stdout] | [INFO] [stdout] 443 | let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 443 - let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] 443 + let xyz = xyz1 | xyz2 | xyz3 | xyz4; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `return` value [INFO] [stdout] --> src/board.rs:464:12 [INFO] [stdout] | [INFO] [stdout] 464 | return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 464 - return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] 464 + return b & c & (a | e) | e & f & (c | g); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pprint_u64` [INFO] [stdout] --> src/dfpn.rs:2:76 [INFO] [stdout] | [INFO] [stdout] 2 | self, get_2row_mask, get_put_reach_mask, get_reach_mask, pprint_board, pprint_u64, Board, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/dfpn.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::binary_heap::Iter` [INFO] [stdout] --> src/exp.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{collections::binary_heap::Iter, thread, time}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `threat_space_search` [INFO] [stdout] --> src/train.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | dfpn::{proof_number_search, threat_space_search, MateType}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::EPSILON` [INFO] [stdout] --> src/train.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::f32::EPSILON; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/board.rs:463:56 [INFO] [stdout] | [INFO] [stdout] 463 | const fn _get_reach_mask_alpha(a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/board.rs:539:28 [INFO] [stdout] | [INFO] [stdout] 539 | pub const fn get_1row_mask(s: u64, b: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b1` [INFO] [stdout] --> src/board.rs:540:10 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b2` [INFO] [stdout] --> src/board.rs:540:14 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b3` [INFO] [stdout] --> src/board.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b4` [INFO] [stdout] --> src/board.rs:540:22 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b6` [INFO] [stdout] --> src/board.rs:540:26 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b8` [INFO] [stdout] --> src/board.rs:540:30 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b9` [INFO] [stdout] --> src/board.rs:540:34 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b11` [INFO] [stdout] --> src/board.rs:540:38 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b11` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b12` [INFO] [stdout] --> src/board.rs:540:43 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b12` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b13` [INFO] [stdout] --> src/board.rs:540:48 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b13` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b15` [INFO] [stdout] --> src/board.rs:540:53 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b16` [INFO] [stdout] --> src/board.rs:553:10 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b16` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b17` [INFO] [stdout] --> src/board.rs:553:15 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b17` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b19` [INFO] [stdout] --> src/board.rs:553:20 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b19` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b20` [INFO] [stdout] --> src/board.rs:553:25 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b20` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b21` [INFO] [stdout] --> src/board.rs:553:30 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b21` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b22` [INFO] [stdout] --> src/board.rs:553:35 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b22` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b24` [INFO] [stdout] --> src/board.rs:553:40 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b24` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b26` [INFO] [stdout] --> src/board.rs:553:45 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b26` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b30` [INFO] [stdout] --> src/board.rs:553:50 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b30` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b32` [INFO] [stdout] --> src/board.rs:564:10 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b33` [INFO] [stdout] --> src/board.rs:564:15 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b34` [INFO] [stdout] --> src/board.rs:564:20 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b34` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b36` [INFO] [stdout] --> src/board.rs:564:25 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b36` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b38` [INFO] [stdout] --> src/board.rs:564:30 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b38` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b39` [INFO] [stdout] --> src/board.rs:564:35 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b39` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b40` [INFO] [stdout] --> src/board.rs:564:40 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b40` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b42` [INFO] [stdout] --> src/board.rs:564:45 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b42` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b45` [INFO] [stdout] --> src/board.rs:564:50 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b45` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b48` [INFO] [stdout] --> src/board.rs:575:10 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b48` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b49` [INFO] [stdout] --> src/board.rs:575:15 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b49` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b57` [INFO] [stdout] --> src/board.rs:575:20 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b57` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b60` [INFO] [stdout] --> src/board.rs:575:25 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b60` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b63` [INFO] [stdout] --> src/board.rs:575:30 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b63` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1039:9 [INFO] [stdout] | [INFO] [stdout] 1039 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1051:9 [INFO] [stdout] | [INFO] [stdout] 1051 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1092:9 [INFO] [stdout] | [INFO] [stdout] 1092 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1104:9 [INFO] [stdout] | [INFO] [stdout] 1104 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/board.rs:1375:18 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/board.rs:1375:26 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func` [INFO] [stdout] --> src/board.rs:1515:33 [INFO] [stdout] | [INFO] [stdout] 1515 | Agent::Custom(name, func) => format!("{}", name), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_func` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ga` [INFO] [stdout] --> src/board.rs:1516:33 [INFO] [stdout] | [INFO] [stdout] 1516 | Agent::Struct(name, ga) => format!("{}", name), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ga` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a_milis` [INFO] [stdout] --> src/board.rs:1531:21 [INFO] [stdout] | [INFO] [stdout] 1531 | let a_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_a_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_milis` [INFO] [stdout] --> src/board.rs:1535:21 [INFO] [stdout] | [INFO] [stdout] 1535 | let b_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1548:27 [INFO] [stdout] | [INFO] [stdout] 1548 | Agent::Custom(name, func) => func(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1549:27 [INFO] [stdout] | [INFO] [stdout] 1549 | Agent::Struct(name, ga) => ga.get_action(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1720:9 [INFO] [stdout] | [INFO] [stdout] 1720 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1794:9 [INFO] [stdout] | [INFO] [stdout] 1794 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/db.rs:145:23 [INFO] [stdout] | [INFO] [stdout] 145 | for &(name, value) in pairs.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/db.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 218 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:299:13 [INFO] [stdout] | [INFO] [stdout] 299 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:352:18 [INFO] [stdout] | [INFO] [stdout] 352 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 380 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:394:14 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:394:21 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_reach_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | let mut count_reach_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_reach_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_valid_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | let mut count_valid_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_valid_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:425:18 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:425:22 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:425:29 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_reach_board` is never read [INFO] [stdout] --> src/dfpn.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | count_reach_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_valid_board` is never read [INFO] [stdout] --> src/dfpn.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | count_valid_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stone` [INFO] [stdout] --> src/dfpn.rs:440:9 [INFO] [stdout] | [INFO] [stdout] 440 | let stone = att | def; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:494:5 [INFO] [stdout] | [INFO] [stdout] 494 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:513:14 [INFO] [stdout] | [INFO] [stdout] 513 | for (action, n_att) in MaskActionIterator::new(att, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:613:14 [INFO] [stdout] | [INFO] [stdout] 613 | for (action, n_def) in MaskActionIterator::new(def, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wait_time` [INFO] [stdout] --> src/exp.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let wait_time = time::Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wait_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s2` [INFO] [stdout] --> src/exp.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | let (s1, s2) = board::eval(&a1, &a2, 1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ml/funcs.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let x = inputs[0].data[i]; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `T` [INFO] [stdout] | [INFO] [stdout] 236 - let x = inputs[0].data[i]; [INFO] [stdout] 236 + let ai::mpc::T = inputs[0].data[i]; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 236 | let _x = inputs[0].data[i]; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ml/ops.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | for i in 0..inputs.len() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad` [INFO] [stdout] --> src/ml.rs:190:28 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inputs` [INFO] [stdout] --> src/ml.rs:190:43 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/ml.rs:193:20 [INFO] [stdout] | [INFO] [stdout] 193 | fn call(&self, input: Vec) -> Tensor { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `play_agent` [INFO] [stdout] --> src/train.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let play_agent = super::board::Agent::Mcts(50, 500); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_play_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/train.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let count: i32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/train.rs:161:35 [INFO] [stdout] | [INFO] [stdout] 161 | (action, val, count) = neg.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `agent` [INFO] [stdout] --> src/train.rs:226:20 [INFO] [stdout] | [INFO] [stdout] 226 | fn play_and_record(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:229:22 [INFO] [stdout] | [INFO] [stdout] 229 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/train.rs:313:9 [INFO] [stdout] | [INFO] [stdout] 313 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/train.rs:371:22 [INFO] [stdout] | [INFO] [stdout] 371 | let (_, val, count) = agent.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:368:22 [INFO] [stdout] | [INFO] [stdout] 368 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/train.rs:404:9 [INFO] [stdout] | [INFO] [stdout] 404 | let rng = rand::thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 583 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 583 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 583 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `data` is never read [INFO] [stdout] --> src/train.rs:560:20 [INFO] [stdout] | [INFO] [stdout] 560 | let mut data = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:703:13 [INFO] [stdout] | [INFO] [stdout] 703 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 703 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 703 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 703 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval_it` [INFO] [stdout] --> src/train.rs:747:21 [INFO] [stdout] | [INFO] [stdout] 747 | let eval_it = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eval_it` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pn` and `dn` are never read [INFO] [stdout] --> src/dfpn.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct NodeNumber { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 16 | pn: f32, [INFO] [stdout] | ^^ [INFO] [stdout] 17 | dn: f32, [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 functions `new` and `from` are never used [INFO] [stdout] --> src/dfpn.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl NodeNumber { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn from(pn: f32, dn: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next` is never used [INFO] [stdout] --> src/dfpn.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 42 | impl Player { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 43 | fn next(&self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SingleShootLoss` is never used [INFO] [stdout] --> src/ml/funcs.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | trait SingleShootLoss { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEPTH` is never used [INFO] [stdout] --> src/train.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const DEPTH: u8 = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_MOVE` is never used [INFO] [stdout] --> src/train.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const RANDOM_MOVE: usize = 7; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `play_with_analyze` is never used [INFO] [stdout] --> src/train.rs:365:4 [INFO] [stdout] | [INFO] [stdout] 365 | fn play_with_analyze(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/board.rs:1349:9 [INFO] [stdout] | [INFO] [stdout] 1349 | / write!( [INFO] [stdout] 1350 | | f, [INFO] [stdout] 1351 | | "action: {:>2}, score: {:>5.2}%({:>7.0}/{:>7.0}), Q: {:>5.3}", [INFO] [stdout] 1352 | | self.action, [INFO] [stdout] ... | [INFO] [stdout] 1356 | | self.q [INFO] [stdout] 1357 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1349 | let _ = write!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/board.rs:1462:23 [INFO] [stdout] | [INFO] [stdout] 1462 | fn get_uct(&self, N: f32) -> f32 { [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:415:9 [INFO] [stdout] | [INFO] [stdout] 415 | fs::create_dir_all(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 415 | let _ = fs::create_dir_all(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | self.layers[i].save_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 420 | let _ = self.layers[i].save_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 432 | self.layers[i].load_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 432 | let _ = self.layers[i].load_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:669:5 [INFO] [stdout] | [INFO] [stdout] 669 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 669 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:686:9 [INFO] [stdout] | [INFO] [stdout] 686 | model.load(load_name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 686 | let _ = model.load(load_name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:814:21 [INFO] [stdout] | [INFO] [stdout] 814 | model.save(name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 814 | let _ = model.save(name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 819 | model.save(format!("latest-{}", name)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 819 | let _ = model.save(format!("latest-{}", name)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling qubic_engine v0.1.7 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `ProofNumberSearchStatus` and `threat_space_search` [INFO] [stdout] --> src/main_utils.rs:4:39 [INFO] [stdout] | [INFO] [stdout] 4 | dfpn::{self, proof_number_search, threat_space_search, MateType, ProofNumberSearchStatus}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/main_utils.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SimplePatternEvaluator`, `TrainableBLE`, and `TrainableSPE` [INFO] [stdout] --> src/main.rs:4:46 [INFO] [stdout] | [INFO] [stdout] 4 | BucketLineEvaluator, SimplLineEvaluator, SimplePatternEvaluator, TrainableBLE, TrainableSLE, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] 5 | TrainableSPE, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `NNLineEvaluator` and `TrainableNLE` [INFO] [stdout] --> src/main.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | use qubic_engine::ai::line_nn::{NNLineEvaluator, NNLineEvaluator_, TrainableNLE, TrainableNLE_}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TrainableLineEvaluator` [INFO] [stdout] --> src/main.rs:12:38 [INFO] [stdout] | [INFO] [stdout] 12 | PlayoutLevel, PositionEvaluator, TrainableLineEvaluator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `count_2row_`, `get_2row_mask`, and `get_random` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | count_2row_, get_2row_mask, get_random, mate_check_horizontal, play_actor, pprint_board, [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `qubic_engine::db::BoardDB` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use qubic_engine::db::BoardDB; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `train_with_db` [INFO] [stdout] --> src/main.rs:19:38 [INFO] [stdout] | [INFO] [stdout] 19 | use qubic_engine::train::{create_db, train_with_db}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NNUE` [INFO] [stdout] --> src/main.rs:21:33 [INFO] [stdout] | [INFO] [stdout] 21 | ai::{CoEvaluator, NegAlpha, NNUE}, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::rngs::ThreadRng` [INFO] [stdout] --> src/main.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | use rand::rngs::ThreadRng; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_distr::num_traits::WrappingNeg` [INFO] [stdout] --> src/main.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | use rand_distr::num_traits::WrappingNeg; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Neg` [INFO] [stdout] --> src/main.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::ops::Neg; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::os::unix::thread` [INFO] [stdout] --> src/main.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | use std::os::unix::thread; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Duration` [INFO] [stdout] --> src/main.rs:31:17 [INFO] [stdout] | [INFO] [stdout] 31 | use std::time::{Duration, Instant}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around function argument [INFO] [stdout] --> src/main.rs:166:21 [INFO] [stdout] | [INFO] [stdout] 166 | return Some((self.board.clone())); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 166 - return Some((self.board.clone())); [INFO] [stdout] 166 + return Some(self.board.clone() ); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ProofNumberSearchStatus` [INFO] [stdout] --> src/main.rs:429:40 [INFO] [stdout] | [INFO] [stdout] 429 | use qubic_engine::dfpn::{MateType, ProofNumberSearchStatus}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/main.rs:1098:17 [INFO] [stdout] | [INFO] [stdout] 1098 | let stone = (b.black | b.white); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 1098 - let stone = (b.black | b.white); [INFO] [stdout] 1098 + let stone = b.black | b.white ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LineEvaluator`, `acum_mask_bundle`, and `apply_mask_bundle` [INFO] [stdout] --> src/main.rs:1109:28 [INFO] [stdout] | [INFO] [stdout] 1109 | use qubic_engine::ai::{acum_mask_bundle, apply_mask_bundle, LineEvaluator}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::pprint_u64` [INFO] [stdout] --> src/board/magic_number.rs:536:9 [INFO] [stdout] | [INFO] [stdout] 536 | use super::pprint_u64; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:411:13 [INFO] [stdout] | [INFO] [stdout] 411 | let x = ((count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] | ^ [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 | * 0xf); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 411 ~ let x = (count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stdout] 412 | & 0x1111_1111_1111_1111) [INFO] [stdout] 413 ~ * 0xf; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:414:13 [INFO] [stdout] | [INFO] [stdout] 414 | let y = ((count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] | ^ [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 | * 0x1111); [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 414 ~ let y = (count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stdout] 415 | & 0x000f_000f_000f_000f) [INFO] [stdout] 416 ~ * 0x1111; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/board.rs:443:15 [INFO] [stdout] | [INFO] [stdout] 443 | let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 443 - let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stdout] 443 + let xyz = xyz1 | xyz2 | xyz3 | xyz4; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `return` value [INFO] [stdout] --> src/board.rs:464:12 [INFO] [stdout] | [INFO] [stdout] 464 | return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 464 - return (b & c & (a | e) | e & f & (c | g)); [INFO] [stdout] 464 + return b & c & (a | e) | e & f & (c | g); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `pprint_u64` [INFO] [stdout] --> src/dfpn.rs:2:76 [INFO] [stdout] | [INFO] [stdout] 2 | self, get_2row_mask, get_put_reach_mask, get_reach_mask, pprint_board, pprint_u64, Board, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cmp::Ordering` [INFO] [stdout] --> src/dfpn.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::binary_heap::Iter` [INFO] [stdout] --> src/exp.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{collections::binary_heap::Iter, thread, time}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `threat_space_search` [INFO] [stdout] --> src/train.rs:7:33 [INFO] [stdout] | [INFO] [stdout] 7 | dfpn::{proof_number_search, threat_space_search, MateType}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::EPSILON` [INFO] [stdout] --> src/train.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::f32::EPSILON; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/main_utils.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 130 | break; [INFO] [stdout] | ----- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 139 | let start = Instant::now(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:198:9 [INFO] [stdout] | [INFO] [stdout] 197 | continue; [INFO] [stdout] | -------- any code following this expression is unreachable [INFO] [stdout] 198 | / for j in 0..step { [INFO] [stdout] 199 | | if rng.gen::() < 0.5 { [INFO] [stdout] 200 | | a += 1; [INFO] [stdout] 201 | | } else { [INFO] [stdout] ... | [INFO] [stdout] 211 | | counts[count] += 1; [INFO] [stdout] 212 | | } [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main_utils.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | let mut b = Board::from(att, def, Player::Black); [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main_utils.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [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/main_utils.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts` [INFO] [stdout] --> src/main_utils.rs:98:13 [INFO] [stdout] | [INFO] [stdout] 98 | let mcts = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts2` [INFO] [stdout] --> src/main_utils.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let mcts2 = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m1` [INFO] [stdout] --> src/main_utils.rs:101:13 [INFO] [stdout] | [INFO] [stdout] 101 | let m1 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m2` [INFO] [stdout] --> src/main_utils.rs:102:13 [INFO] [stdout] | [INFO] [stdout] 102 | let m2 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l1` [INFO] [stdout] --> src/main_utils.rs:103:13 [INFO] [stdout] | [INFO] [stdout] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l2` [INFO] [stdout] --> src/main_utils.rs:104:13 [INFO] [stdout] | [INFO] [stdout] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/main_utils.rs:124:26 [INFO] [stdout] | [INFO] [stdout] 124 | if let Some((a, b)) = res { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | let mut l3_ = NegAlphaF::new(Box::new(l.clone()), 1); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m1` [INFO] [stdout] --> src/main.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | let m1 = NegAlpha::new(Box::new(CoEvaluator::best()), 1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m3_f32` [INFO] [stdout] --> src/main.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | let m3_f32 = NegAlphaF::new(Box::new(CoEvaluator::best()), 3); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m3_f32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m4` [INFO] [stdout] --> src/main.rs:42:9 [INFO] [stdout] | [INFO] [stdout] 42 | let m4 = NegAlpha::new(Box::new(CoEvaluator::best()), 4); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m6` [INFO] [stdout] --> src/main.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let m6 = NegAlpha::new(Box::new(CoEvaluator::best()), 6); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m7` [INFO] [stdout] --> src/main.rs:45:9 [INFO] [stdout] | [INFO] [stdout] 45 | let m7 = NegAlpha::new(Box::new(CoEvaluator::best()), 7); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m9` [INFO] [stdout] --> src/main.rs:46:9 [INFO] [stdout] | [INFO] [stdout] 46 | let m9 = NegAlpha::new(Box::new(CoEvaluator::best()), 9); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mm3` [INFO] [stdout] --> src/main.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | let mm3 = Agent::Struct(String::from("mm3"), Box::new(mm3)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_mm3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m2` [INFO] [stdout] --> src/main.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | let m2 = Agent::Struct(String::from("m2"), Box::new(m2)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m3` [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | let m3 = Agent::Struct(String::from("m3"), Box::new(m3)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `m5` [INFO] [stdout] --> src/main.rs:51:9 [INFO] [stdout] | [INFO] [stdout] 51 | let m5 = Agent::Struct(String::from("m5"), Box::new(m5)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_m5` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l5_` [INFO] [stdout] --> src/main.rs:63:9 [INFO] [stdout] | [INFO] [stdout] 63 | let l5_ = MateWrapperActor::new(Box::new(l5_)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_l5_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b7` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let b7 = MateWrapperActor::new(Box::new(b7)); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b7` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts` [INFO] [stdout] --> src/main.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mcts = ai::mcts::Mcts::new(10_000, 3, 10, po); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mcts2` [INFO] [stdout] --> src/main.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 85 | let mcts2 = ai::mcts::Mcts::new(10_000, 3, 500, l3_); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let mut count = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/main.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let mut count = 0; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | for j in 0..step { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | let mut max_action = 0; [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/main.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let mut max = 0.0; [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max_action` [INFO] [stdout] --> src/main.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | let mut max_action = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `max` [INFO] [stdout] --> src/main.rs:239:13 [INFO] [stdout] | [INFO] [stdout] 239 | let mut max = 0.0; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/main.rs:251:22 [INFO] [stdout] | [INFO] [stdout] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/main.rs:251:27 [INFO] [stdout] | [INFO] [stdout] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:276:9 [INFO] [stdout] | [INFO] [stdout] 276 | for i in 0_u64..(1 << 32) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `black` [INFO] [stdout] --> src/main.rs:323:9 [INFO] [stdout] | [INFO] [stdout] 323 | black: u64, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_black` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `white` [INFO] [stdout] --> src/main.rs:324:9 [INFO] [stdout] | [INFO] [stdout] 324 | white: u64, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:332:9 [INFO] [stdout] | [INFO] [stdout] 332 | let mut it = BoardIter::new(true); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | for i in 0..size { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `step` is assigned to, but never used [INFO] [stdout] --> src/main.rs:440:9 [INFO] [stdout] | [INFO] [stdout] 440 | let mut step = 0; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_step` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `step` is never read [INFO] [stdout] --> src/main.rs:481:13 [INFO] [stdout] | [INFO] [stdout] 481 | step += 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val_` [INFO] [stdout] --> src/main.rs:565:23 [INFO] [stdout] | [INFO] [stdout] 565 | let (action2, val_, _) = long.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_val_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:627:9 [INFO] [stdout] | [INFO] [stdout] 627 | let mut all_count = 0.0; [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/main.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | let mut all_err_sum = 0.0; [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/main.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 629 | let mut all_sq_sum = 0.0; [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_count` [INFO] [stdout] --> src/main.rs:627:9 [INFO] [stdout] | [INFO] [stdout] 627 | let mut all_count = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_err_sum` [INFO] [stdout] --> src/main.rs:628:9 [INFO] [stdout] | [INFO] [stdout] 628 | let mut all_err_sum = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_err_sum` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `all_sq_sum` [INFO] [stdout] --> src/main.rs:629:9 [INFO] [stdout] | [INFO] [stdout] 629 | let mut all_sq_sum = 0.0; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_sq_sum` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut model = TrainableSLE::from(model, 0.001); [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/main.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut pmodel = PositionMaskEvaluator::new(); [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/main.rs:769:9 [INFO] [stdout] | [INFO] [stdout] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [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/main.rs:770:9 [INFO] [stdout] | [INFO] [stdout] 770 | let mut nmodel = NNLineEvaluator_::new(); [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/main.rs:771:9 [INFO] [stdout] | [INFO] [stdout] 771 | let mut nmodel = TrainableNLE_::from(nmodel, 0.005); [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/main.rs:772:9 [INFO] [stdout] | [INFO] [stdout] 772 | let mut pmodel = pattern::test_pattern_evaluator(); [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/main.rs:773:9 [INFO] [stdout] | [INFO] [stdout] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/main.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | let mut model = TrainableSLE::from(model, 0.001); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pmodel` [INFO] [stdout] --> src/main.rs:769:9 [INFO] [stdout] | [INFO] [stdout] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `pmodel` [INFO] [stdout] --> src/main.rs:773:9 [INFO] [stdout] | [INFO] [stdout] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:813:9 [INFO] [stdout] | [INFO] [stdout] 813 | let mut b_time_not = 0; [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/main.rs:815:9 [INFO] [stdout] | [INFO] [stdout] 815 | let mut a_time_not = 0; [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/main.rs:817:9 [INFO] [stdout] | [INFO] [stdout] 817 | let mut count_n = 0; [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/main.rs:818:9 [INFO] [stdout] | [INFO] [stdout] 818 | let mut max_path_board = (0, 0); [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/main.rs:819:9 [INFO] [stdout] | [INFO] [stdout] 819 | let mut max_path = 0; [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/main.rs:820:9 [INFO] [stdout] | [INFO] [stdout] 820 | let mut max_reach_count_board = (0, 0); [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/main.rs:821:9 [INFO] [stdout] | [INFO] [stdout] 821 | let mut max_reach_count = 0; [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/main.rs:822:9 [INFO] [stdout] | [INFO] [stdout] 822 | let mut max_valid_count_board = (0, 0); [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/main.rs:823:9 [INFO] [stdout] | [INFO] [stdout] 823 | let mut max_valid_count = 0; [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/main.rs:824:9 [INFO] [stdout] | [INFO] [stdout] 824 | let mut reach_count = 0; [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/main.rs:825:9 [INFO] [stdout] | [INFO] [stdout] 825 | let mut valid_count = 0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:826:9 [INFO] [stdout] | [INFO] [stdout] 826 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:828:13 [INFO] [stdout] | [INFO] [stdout] 828 | for j in 0..20 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `flag` [INFO] [stdout] --> src/main.rs:892:18 [INFO] [stdout] | [INFO] [stdout] 892 | let (flag, action) = result.unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:921:9 [INFO] [stdout] | [INFO] [stdout] 921 | for i in 0..10000 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | let mut rng = thread_rng(); [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/main.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | let mut r1 = 0.0; [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/main.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | let mut r2 = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/main.rs:961:9 [INFO] [stdout] | [INFO] [stdout] 961 | let mut rng = thread_rng(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `best` is assigned to, but never used [INFO] [stdout] --> src/main.rs:969:9 [INFO] [stdout] | [INFO] [stdout] 969 | let mut best = get_position_eval_agent_alpha(3, 6, 1, 1, 6, 1, 5, 5, 1, 5, 5, 8, 8); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_best` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:972:9 [INFO] [stdout] | [INFO] [stdout] 972 | for i in 0..1000 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r1` [INFO] [stdout] --> src/main.rs:975:13 [INFO] [stdout] | [INFO] [stdout] 975 | let mut r1 = 0.0; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r2` [INFO] [stdout] --> src/main.rs:976:13 [INFO] [stdout] | [INFO] [stdout] 976 | let mut r2 = 0.0; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:980:18 [INFO] [stdout] | [INFO] [stdout] 980 | let (i, r1_, r2_) = compare(&tar, test); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `best` is never read [INFO] [stdout] --> src/main.rs:989:13 [INFO] [stdout] | [INFO] [stdout] 989 | best = tar; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/main.rs:1099:9 [INFO] [stdout] | [INFO] [stdout] 1099 | let float = !((stone << 16) | 0xffff); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ground` [INFO] [stdout] --> src/main.rs:1101:9 [INFO] [stdout] | [INFO] [stdout] 1101 | let ground = ((stone << 16) | 0xffff) ^ stone; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_ground` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_prob_compare` is never used [INFO] [stdout] --> src/main.rs:170:4 [INFO] [stdout] | [INFO] [stdout] 170 | fn exp_prob_compare() { [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 `exp` is never used [INFO] [stdout] --> src/main.rs:219:4 [INFO] [stdout] | [INFO] [stdout] 219 | fn exp() { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `command` is never used [INFO] [stdout] --> src/main.rs:259:4 [INFO] [stdout] | [INFO] [stdout] 259 | fn command() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_magic_number` is never used [INFO] [stdout] --> src/main.rs:270:4 [INFO] [stdout] | [INFO] [stdout] 270 | fn get_magic_number() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `call_evaluator` is never used [INFO] [stdout] --> src/main.rs:309:4 [INFO] [stdout] | [INFO] [stdout] 309 | fn call_evaluator() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_positoin_eval_get_count` is never used [INFO] [stdout] --> src/main.rs:328:4 [INFO] [stdout] | [INFO] [stdout] 328 | fn exp_positoin_eval_get_count() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `print_pmodel` is never used [INFO] [stdout] --> src/main.rs:369:4 [INFO] [stdout] | [INFO] [stdout] 369 | fn print_pmodel() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `use_ai` is never used [INFO] [stdout] --> src/main.rs:376:4 [INFO] [stdout] | [INFO] [stdout] 376 | fn use_ai() { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_random_board` is never used [INFO] [stdout] --> src/main.rs:420:4 [INFO] [stdout] | [INFO] [stdout] 420 | fn get_random_board(size: usize) -> Board { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `exp_mate_profile` is never used [INFO] [stdout] --> src/main.rs:428:4 [INFO] [stdout] | [INFO] [stdout] 428 | fn exp_mate_profile(a1: &impl GetAction, a2: &impl GetAction) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `profile` is never used [INFO] [stdout] --> src/main.rs:523:4 [INFO] [stdout] | [INFO] [stdout] 523 | fn profile() { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mpc_for_coe` is never used [INFO] [stdout] --> src/main.rs:610:4 [INFO] [stdout] | [INFO] [stdout] 610 | fn mpc_for_coe(long_depth: u8, short_depth: u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wrapping_line_eval` is never used [INFO] [stdout] --> src/main.rs:730:4 [INFO] [stdout] | [INFO] [stdout] 730 | fn wrapping_line_eval(l: LineEvaluator, depth: u8) -> MateWrapperActor { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `train_line_eval` is never used [INFO] [stdout] --> src/main.rs:747:4 [INFO] [stdout] | [INFO] [stdout] 747 | fn train_line_eval(train_db: String, valid_db: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `expand_untill_n` is never used [INFO] [stdout] --> src/main.rs:786:4 [INFO] [stdout] | [INFO] [stdout] 786 | fn expand_untill_n(b: Board, n: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mcts_statistics` is never used [INFO] [stdout] --> src/main.rs:913:4 [INFO] [stdout] | [INFO] [stdout] 913 | fn mcts_statistics() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `random_i` is never used [INFO] [stdout] --> src/main.rs:937:4 [INFO] [stdout] | [INFO] [stdout] 937 | fn random_i(max: i32) -> i32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_random_model` is never used [INFO] [stdout] --> src/main.rs:942:4 [INFO] [stdout] | [INFO] [stdout] 942 | fn get_random_model(max: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `explore_best_model` is never used [INFO] [stdout] --> src/main.rs:960:4 [INFO] [stdout] | [INFO] [stdout] 960 | fn explore_best_model() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `mc` is never used [INFO] [stdout] --> src/main.rs:997:4 [INFO] [stdout] | [INFO] [stdout] 997 | fn mc(a: usize, b: usize) -> Agent { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_co_eval_agent` is never used [INFO] [stdout] --> src/main.rs:1001:4 [INFO] [stdout] | [INFO] [stdout] 1001 | fn get_co_eval_agent(depth: usize, row_w: i32, pos_w: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_row_evaluator` is never used [INFO] [stdout] --> src/main.rs:1015:4 [INFO] [stdout] | [INFO] [stdout] 1015 | fn get_row_evaluator(depth: usize) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_position_eval_agent` is never used [INFO] [stdout] --> src/main.rs:1024:4 [INFO] [stdout] | [INFO] [stdout] 1024 | fn get_position_eval_agent(depth: usize, v: i32, e: i32, s: i32, c: i32) -> Agent { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_position_eval_agent_alpha` is never used [INFO] [stdout] --> src/main.rs:1037:4 [INFO] [stdout] | [INFO] [stdout] 1037 | fn get_position_eval_agent_alpha( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `compare` is never used [INFO] [stdout] --> src/main.rs:1062:4 [INFO] [stdout] | [INFO] [stdout] 1062 | fn compare(a1: &impl GetAction, a2: &impl GetAction) -> (i32, f32, f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_v` is never used [INFO] [stdout] --> src/main.rs:1095:4 [INFO] [stdout] | [INFO] [stdout] 1095 | fn get_v(b: &Board) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `beam_search` is never used [INFO] [stdout] --> src/main.rs:1108:4 [INFO] [stdout] | [INFO] [stdout] 1108 | fn beam_search() { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_board_from_json` is never used [INFO] [stdout] --> src/main_utils.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn read_board_from_json(file_name: &str) -> Vec<(u64, u64)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_board_to_json` is never used [INFO] [stdout] --> src/main_utils.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn write_board_to_json(v: Vec<(u64, u64)>, file_name: &str) -> std::io::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `GameRecordIterator` is never constructed [INFO] [stdout] --> src/main_utils.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct GameRecordIterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `reset` are never used [INFO] [stdout] --> src/main_utils.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl GameRecordIterator { [INFO] [stdout] | ------------------------------------------------------------- associated items in this implementation [INFO] [stdout] 31 | pub fn new(a1: A1, a2: A2) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn reset(&mut self) -> Board { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_pns` is never used [INFO] [stdout] --> src/main_utils.rs:61:8 [INFO] [stdout] | [INFO] [stdout] 61 | pub fn test_pns() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `generate_problems` is never used [INFO] [stdout] --> src/main_utils.rs:83:8 [INFO] [stdout] | [INFO] [stdout] 83 | pub fn generate_problems() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | l.load("sle_tl50.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 53 | let _ = l.load("sle_tl50.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 64 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 74 | b.load("bsimple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 74 | let _ = b.load("bsimple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:221:5 [INFO] [stdout] | [INFO] [stdout] 221 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 221 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 311 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 311 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:371:5 [INFO] [stdout] | [INFO] [stdout] 371 | pmodel.load("position.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 371 | let _ = pmodel.load("position.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:378:5 [INFO] [stdout] | [INFO] [stdout] 378 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 378 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:532:5 [INFO] [stdout] | [INFO] [stdout] 532 | nmodel.load("sle_tl50_.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 532 | let _ = nmodel.load("sle_tl50_.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:613:5 [INFO] [stdout] | [INFO] [stdout] 613 | l.load("bsimple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 613 | let _ = l.load("bsimple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:738:5 [INFO] [stdout] | [INFO] [stdout] 738 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 738 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:72:5 [INFO] [stdout] | [INFO] [stdout] 72 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 72 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 86 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 86 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:107:17 [INFO] [stdout] | [INFO] [stdout] 107 | write_board_to_json(problems, "tss10000.json"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 107 | let _ = write_board_to_json(problems, "tss10000.json"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main_utils.rs:108:17 [INFO] [stdout] | [INFO] [stdout] 108 | write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 108 | let _ = write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `d` [INFO] [stdout] --> src/board.rs:463:56 [INFO] [stdout] | [INFO] [stdout] 463 | const fn _get_reach_mask_alpha(a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/board.rs:539:28 [INFO] [stdout] | [INFO] [stdout] 539 | pub const fn get_1row_mask(s: u64, b: u64) -> u64 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b1` [INFO] [stdout] --> src/board.rs:540:10 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b2` [INFO] [stdout] --> src/board.rs:540:14 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b3` [INFO] [stdout] --> src/board.rs:540:18 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b4` [INFO] [stdout] --> src/board.rs:540:22 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b4` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b6` [INFO] [stdout] --> src/board.rs:540:26 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b6` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b8` [INFO] [stdout] --> src/board.rs:540:30 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b8` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b9` [INFO] [stdout] --> src/board.rs:540:34 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_b9` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b11` [INFO] [stdout] --> src/board.rs:540:38 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b11` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b12` [INFO] [stdout] --> src/board.rs:540:43 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b12` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b13` [INFO] [stdout] --> src/board.rs:540:48 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b13` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b15` [INFO] [stdout] --> src/board.rs:540:53 [INFO] [stdout] | [INFO] [stdout] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b15` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b16` [INFO] [stdout] --> src/board.rs:553:10 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b16` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b17` [INFO] [stdout] --> src/board.rs:553:15 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b17` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b19` [INFO] [stdout] --> src/board.rs:553:20 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b19` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b20` [INFO] [stdout] --> src/board.rs:553:25 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b20` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b21` [INFO] [stdout] --> src/board.rs:553:30 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b21` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b22` [INFO] [stdout] --> src/board.rs:553:35 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b22` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b24` [INFO] [stdout] --> src/board.rs:553:40 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b24` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b26` [INFO] [stdout] --> src/board.rs:553:45 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b26` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b30` [INFO] [stdout] --> src/board.rs:553:50 [INFO] [stdout] | [INFO] [stdout] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b30` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b32` [INFO] [stdout] --> src/board.rs:564:10 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b32` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b33` [INFO] [stdout] --> src/board.rs:564:15 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b33` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b34` [INFO] [stdout] --> src/board.rs:564:20 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b34` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b36` [INFO] [stdout] --> src/board.rs:564:25 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b36` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b38` [INFO] [stdout] --> src/board.rs:564:30 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b38` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b39` [INFO] [stdout] --> src/board.rs:564:35 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b39` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b40` [INFO] [stdout] --> src/board.rs:564:40 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b40` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b42` [INFO] [stdout] --> src/board.rs:564:45 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b42` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b45` [INFO] [stdout] --> src/board.rs:564:50 [INFO] [stdout] | [INFO] [stdout] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b45` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b48` [INFO] [stdout] --> src/board.rs:575:10 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b48` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b49` [INFO] [stdout] --> src/board.rs:575:15 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b49` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b57` [INFO] [stdout] --> src/board.rs:575:20 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b57` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b60` [INFO] [stdout] --> src/board.rs:575:25 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b60` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b63` [INFO] [stdout] --> src/board.rs:575:30 [INFO] [stdout] | [INFO] [stdout] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_b63` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1039:9 [INFO] [stdout] | [INFO] [stdout] 1039 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1051:9 [INFO] [stdout] | [INFO] [stdout] 1051 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/board.rs:1092:9 [INFO] [stdout] | [INFO] [stdout] 1092 | let mut count = 1; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/board.rs:1104:9 [INFO] [stdout] | [INFO] [stdout] 1104 | count += 1; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/board.rs:1375:18 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node` [INFO] [stdout] --> src/board.rs:1375:26 [INFO] [stdout] | [INFO] [stdout] 1375 | for (action, node) in self.children.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `func` [INFO] [stdout] --> src/board.rs:1515:33 [INFO] [stdout] | [INFO] [stdout] 1515 | Agent::Custom(name, func) => format!("{}", name), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_func` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ga` [INFO] [stdout] --> src/board.rs:1516:33 [INFO] [stdout] | [INFO] [stdout] 1516 | Agent::Struct(name, ga) => format!("{}", name), [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_ga` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a_milis` [INFO] [stdout] --> src/board.rs:1531:21 [INFO] [stdout] | [INFO] [stdout] 1531 | let a_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_a_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b_milis` [INFO] [stdout] --> src/board.rs:1535:21 [INFO] [stdout] | [INFO] [stdout] 1535 | let b_milis = end.as_nanos(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_milis` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1548:27 [INFO] [stdout] | [INFO] [stdout] 1548 | Agent::Custom(name, func) => func(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/board.rs:1549:27 [INFO] [stdout] | [INFO] [stdout] 1549 | Agent::Struct(name, ga) => ga.get_action(board), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1720:9 [INFO] [stdout] | [INFO] [stdout] 1720 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/board.rs:1794:9 [INFO] [stdout] | [INFO] [stdout] 1794 | for i in 0..n { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/db.rs:145:23 [INFO] [stdout] | [INFO] [stdout] 145 | for &(name, value) in pairs.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/db.rs:218:9 [INFO] [stdout] | [INFO] [stdout] 218 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:299:13 [INFO] [stdout] | [INFO] [stdout] 299 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:352:18 [INFO] [stdout] | [INFO] [stdout] 352 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mask` [INFO] [stdout] --> src/dfpn.rs:380:13 [INFO] [stdout] | [INFO] [stdout] 380 | let mask = get_reach_mask(def, att); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:394:14 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:394:21 [INFO] [stdout] | [INFO] [stdout] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_reach_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | let mut count_reach_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_reach_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count_valid_board` is assigned to, but never used [INFO] [stdout] --> src/dfpn.rs:401:9 [INFO] [stdout] | [INFO] [stdout] 401 | let mut count_valid_board = 0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count_valid_board` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dfpn.rs:425:18 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_att` [INFO] [stdout] --> src/dfpn.rs:425:22 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n_def` [INFO] [stdout] --> src/dfpn.rs:425:29 [INFO] [stdout] | [INFO] [stdout] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_reach_board` is never read [INFO] [stdout] --> src/dfpn.rs:422:9 [INFO] [stdout] | [INFO] [stdout] 422 | count_reach_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count_valid_board` is never read [INFO] [stdout] --> src/dfpn.rs:423:9 [INFO] [stdout] | [INFO] [stdout] 423 | count_valid_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `stone` [INFO] [stdout] --> src/dfpn.rs:440:9 [INFO] [stdout] | [INFO] [stdout] 440 | let stone = att | def; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stone` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:494:5 [INFO] [stdout] | [INFO] [stdout] 494 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:513:14 [INFO] [stdout] | [INFO] [stdout] 513 | for (action, n_att) in MaskActionIterator::new(att, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matetype` [INFO] [stdout] --> src/dfpn.rs:594:5 [INFO] [stdout] | [INFO] [stdout] 594 | matetype: MateType, [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `action` [INFO] [stdout] --> src/dfpn.rs:613:14 [INFO] [stdout] | [INFO] [stdout] 613 | for (action, n_def) in MaskActionIterator::new(def, action_mask) { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `wait_time` [INFO] [stdout] --> src/exp.rs:67:13 [INFO] [stdout] | [INFO] [stdout] 67 | let wait_time = time::Duration::from_millis(1000); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wait_time` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s2` [INFO] [stdout] --> src/exp.rs:96:18 [INFO] [stdout] | [INFO] [stdout] 96 | let (s1, s2) = board::eval(&a1, &a2, 1); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/ml/funcs.rs:236:17 [INFO] [stdout] | [INFO] [stdout] 236 | let x = inputs[0].data[i]; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `T` [INFO] [stdout] | [INFO] [stdout] 236 - let x = inputs[0].data[i]; [INFO] [stdout] 236 + let ai::mpc::T = inputs[0].data[i]; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 236 | let _x = inputs[0].data[i]; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/ml/ops.rs:19:13 [INFO] [stdout] | [INFO] [stdout] 19 | for i in 0..inputs.len() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `grad` [INFO] [stdout] --> src/ml.rs:190:28 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_grad` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `inputs` [INFO] [stdout] --> src/ml.rs:190:43 [INFO] [stdout] | [INFO] [stdout] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/ml.rs:193:20 [INFO] [stdout] | [INFO] [stdout] 193 | fn call(&self, input: Vec) -> Tensor { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `play_agent` [INFO] [stdout] --> src/train.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 107 | let play_agent = super::board::Agent::Mcts(50, 500); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_play_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `count` is assigned to, but never used [INFO] [stdout] --> src/train.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let count: i32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_count` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:101:22 [INFO] [stdout] | [INFO] [stdout] 101 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `count` is never read [INFO] [stdout] --> src/train.rs:161:35 [INFO] [stdout] | [INFO] [stdout] 161 | (action, val, count) = neg.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `agent` [INFO] [stdout] --> src/train.rs:226:20 [INFO] [stdout] | [INFO] [stdout] 226 | fn play_and_record(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_agent` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:229:22 [INFO] [stdout] | [INFO] [stdout] 229 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/train.rs:313:9 [INFO] [stdout] | [INFO] [stdout] 313 | for i in 0..(id % 4) { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `count` [INFO] [stdout] --> src/train.rs:371:22 [INFO] [stdout] | [INFO] [stdout] 371 | let (_, val, count) = agent.eval_with_negalpha(&b); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `reward` is never read [INFO] [stdout] --> src/train.rs:368:22 [INFO] [stdout] | [INFO] [stdout] 368 | let mut reward = 0; [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rng` [INFO] [stdout] --> src/train.rs:404:9 [INFO] [stdout] | [INFO] [stdout] 404 | let rng = rand::thread_rng(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 583 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 583 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 583 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `data` is never read [INFO] [stdout] --> src/train.rs:560:20 [INFO] [stdout] | [INFO] [stdout] 560 | let mut data = Vec::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `batch_num` [INFO] [stdout] --> src/train.rs:703:13 [INFO] [stdout] | [INFO] [stdout] 703 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stdout] | [INFO] [stdout] 703 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] 703 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 703 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `eval_it` [INFO] [stdout] --> src/train.rs:747:21 [INFO] [stdout] | [INFO] [stdout] 747 | let eval_it = [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eval_it` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `pn` and `dn` are never read [INFO] [stdout] --> src/dfpn.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct NodeNumber { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 16 | pn: f32, [INFO] [stdout] | ^^ [INFO] [stdout] 17 | dn: f32, [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 functions `new` and `from` are never used [INFO] [stdout] --> src/dfpn.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl NodeNumber { [INFO] [stdout] | --------------- associated functions in this implementation [INFO] [stdout] 21 | fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | fn from(pn: f32, dn: f32) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `next` is never used [INFO] [stdout] --> src/dfpn.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 42 | impl Player { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] 43 | fn next(&self) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `SingleShootLoss` is never used [INFO] [stdout] --> src/ml/funcs.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | trait SingleShootLoss { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEPTH` is never used [INFO] [stdout] --> src/train.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const DEPTH: u8 = 3; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RANDOM_MOVE` is never used [INFO] [stdout] --> src/train.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const RANDOM_MOVE: usize = 7; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `play_with_analyze` is never used [INFO] [stdout] --> src/train.rs:365:4 [INFO] [stdout] | [INFO] [stdout] 365 | fn play_with_analyze(agent: &NNUE) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/board.rs:1349:9 [INFO] [stdout] | [INFO] [stdout] 1349 | / write!( [INFO] [stdout] 1350 | | f, [INFO] [stdout] 1351 | | "action: {:>2}, score: {:>5.2}%({:>7.0}/{:>7.0}), Q: {:>5.3}", [INFO] [stdout] 1352 | | self.action, [INFO] [stdout] ... | [INFO] [stdout] 1356 | | self.q [INFO] [stdout] 1357 | | ); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 1349 | let _ = write!( [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `N` should have a snake case name [INFO] [stdout] --> src/board.rs:1462:23 [INFO] [stdout] | [INFO] [stdout] 1462 | fn get_uct(&self, N: f32) -> f32 { [INFO] [stdout] | ^ help: convert the identifier to snake case: `n` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:415:9 [INFO] [stdout] | [INFO] [stdout] 415 | fs::create_dir_all(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 415 | let _ = fs::create_dir_all(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:420:13 [INFO] [stdout] | [INFO] [stdout] 420 | self.layers[i].save_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 420 | let _ = self.layers[i].save_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/ml.rs:432:13 [INFO] [stdout] | [INFO] [stdout] 432 | self.layers[i].load_param(path.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 432 | let _ = self.layers[i].load_param(path.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:669:5 [INFO] [stdout] | [INFO] [stdout] 669 | l.load("simple.json".to_string()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 669 | let _ = l.load("simple.json".to_string()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:686:9 [INFO] [stdout] | [INFO] [stdout] 686 | model.load(load_name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 686 | let _ = model.load(load_name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:814:21 [INFO] [stdout] | [INFO] [stdout] 814 | model.save(name.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 814 | let _ = model.save(name.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/train.rs:819:17 [INFO] [stdout] | [INFO] [stdout] 819 | model.save(format!("latest-{}", name)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 819 | let _ = model.save(format!("latest-{}", name)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.97s [INFO] running `Command { std: "docker" "inspect" "3ecf0dba52598087d23b1cc1162095f9515cfdc058e20b0f02735940287868bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3ecf0dba52598087d23b1cc1162095f9515cfdc058e20b0f02735940287868bc", kill_on_drop: false }` [INFO] [stdout] 3ecf0dba52598087d23b1cc1162095f9515cfdc058e20b0f02735940287868bc [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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 834b3f94c54ea326cd6293929749170137d70af799dd123034c7c43bf52ad655 [INFO] running `Command { std: "docker" "start" "-a" "834b3f94c54ea326cd6293929749170137d70af799dd123034c7c43bf52ad655", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `super::pprint_u64` [INFO] [stderr] --> src/board/magic_number.rs:536:9 [INFO] [stderr] | [INFO] [stderr] 536 | use super::pprint_u64; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:411:13 [INFO] [stderr] | [INFO] [stderr] 411 | let x = ((count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stderr] | ^ [INFO] [stderr] 412 | & 0x1111_1111_1111_1111) [INFO] [stderr] 413 | * 0xf); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 411 ~ let x = (count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stderr] 412 | & 0x1111_1111_1111_1111) [INFO] [stderr] 413 ~ * 0xf; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:414:13 [INFO] [stderr] | [INFO] [stderr] 414 | let y = ((count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stderr] | ^ [INFO] [stderr] 415 | & 0x000f_000f_000f_000f) [INFO] [stderr] 416 | * 0x1111); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 414 ~ let y = (count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stderr] 415 | & 0x000f_000f_000f_000f) [INFO] [stderr] 416 ~ * 0x1111; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:443:15 [INFO] [stderr] | [INFO] [stderr] 443 | let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 443 - let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stderr] 443 + let xyz = xyz1 | xyz2 | xyz3 | xyz4; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `return` value [INFO] [stderr] --> src/board.rs:464:12 [INFO] [stderr] | [INFO] [stderr] 464 | return (b & c & (a | e) | e & f & (c | g)); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 464 - return (b & c & (a | e) | e & f & (c | g)); [INFO] [stderr] 464 + return b & c & (a | e) | e & f & (c | g); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `pprint_u64` [INFO] [stderr] --> src/dfpn.rs:2:76 [INFO] [stderr] | [INFO] [stderr] 2 | self, get_2row_mask, get_put_reach_mask, get_reach_mask, pprint_board, pprint_u64, Board, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::cmp::Ordering` [INFO] [stderr] --> src/dfpn.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::cmp::Ordering; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `collections::binary_heap::Iter` [INFO] [stderr] --> src/exp.rs:7:11 [INFO] [stderr] | [INFO] [stderr] 7 | use std::{collections::binary_heap::Iter, thread, time}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `threat_space_search` [INFO] [stderr] --> src/train.rs:7:33 [INFO] [stderr] | [INFO] [stderr] 7 | dfpn::{proof_number_search, threat_space_search, MateType}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::f32::EPSILON` [INFO] [stderr] --> src/train.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | use std::f32::EPSILON; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `d` [INFO] [stderr] --> src/board.rs:463:56 [INFO] [stderr] | [INFO] [stderr] 463 | const fn _get_reach_mask_alpha(a: u64, b: u64, c: u64, d: u64, e: u64, f: u64, g: u64) -> u64 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_d` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/board.rs:539:28 [INFO] [stderr] | [INFO] [stderr] 539 | pub const fn get_1row_mask(s: u64, b: u64) -> u64 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b1` [INFO] [stderr] --> src/board.rs:540:10 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b2` [INFO] [stderr] --> src/board.rs:540:14 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b3` [INFO] [stderr] --> src/board.rs:540:18 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b3` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b4` [INFO] [stderr] --> src/board.rs:540:22 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b4` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b6` [INFO] [stderr] --> src/board.rs:540:26 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b6` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b8` [INFO] [stderr] --> src/board.rs:540:30 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b8` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b9` [INFO] [stderr] --> src/board.rs:540:34 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b9` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b11` [INFO] [stderr] --> src/board.rs:540:38 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b11` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b12` [INFO] [stderr] --> src/board.rs:540:43 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b12` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b13` [INFO] [stderr] --> src/board.rs:540:48 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b13` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b15` [INFO] [stderr] --> src/board.rs:540:53 [INFO] [stderr] | [INFO] [stderr] 540 | let (b1, b2, b3, b4, b6, b8, b9, b11, b12, b13, b15) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b15` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b16` [INFO] [stderr] --> src/board.rs:553:10 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b16` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b17` [INFO] [stderr] --> src/board.rs:553:15 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b17` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b19` [INFO] [stderr] --> src/board.rs:553:20 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b19` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b20` [INFO] [stderr] --> src/board.rs:553:25 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b20` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b21` [INFO] [stderr] --> src/board.rs:553:30 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b21` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b22` [INFO] [stderr] --> src/board.rs:553:35 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b22` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b24` [INFO] [stderr] --> src/board.rs:553:40 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b24` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b26` [INFO] [stderr] --> src/board.rs:553:45 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b26` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b30` [INFO] [stderr] --> src/board.rs:553:50 [INFO] [stderr] | [INFO] [stderr] 553 | let (b16, b17, b19, b20, b21, b22, b24, b26, b30) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b30` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b32` [INFO] [stderr] --> src/board.rs:564:10 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b32` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b33` [INFO] [stderr] --> src/board.rs:564:15 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b33` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b34` [INFO] [stderr] --> src/board.rs:564:20 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b34` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b36` [INFO] [stderr] --> src/board.rs:564:25 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b36` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b38` [INFO] [stderr] --> src/board.rs:564:30 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b38` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b39` [INFO] [stderr] --> src/board.rs:564:35 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b39` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b40` [INFO] [stderr] --> src/board.rs:564:40 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b40` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b42` [INFO] [stderr] --> src/board.rs:564:45 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b42` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b45` [INFO] [stderr] --> src/board.rs:564:50 [INFO] [stderr] | [INFO] [stderr] 564 | let (b32, b33, b34, b36, b38, b39, b40, b42, b45) = ( [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b45` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b48` [INFO] [stderr] --> src/board.rs:575:10 [INFO] [stderr] | [INFO] [stderr] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b48` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b49` [INFO] [stderr] --> src/board.rs:575:15 [INFO] [stderr] | [INFO] [stderr] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b49` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b57` [INFO] [stderr] --> src/board.rs:575:20 [INFO] [stderr] | [INFO] [stderr] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b57` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b60` [INFO] [stderr] --> src/board.rs:575:25 [INFO] [stderr] | [INFO] [stderr] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b60` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b63` [INFO] [stderr] --> src/board.rs:575:30 [INFO] [stderr] | [INFO] [stderr] 575 | let (b48, b49, b57, b60, b63) = (b >> 48, b >> 49, b >> 57, b >> 60, b >> 63); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_b63` [INFO] [stderr] [INFO] [stderr] warning: variable `count` is assigned to, but never used [INFO] [stderr] --> src/board.rs:1039:9 [INFO] [stderr] | [INFO] [stderr] 1039 | let mut count = 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_count` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `count` is never read [INFO] [stderr] --> src/board.rs:1051:9 [INFO] [stderr] | [INFO] [stderr] 1051 | count += 1; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable `count` is assigned to, but never used [INFO] [stderr] --> src/board.rs:1092:9 [INFO] [stderr] | [INFO] [stderr] 1092 | let mut count = 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_count` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `count` is never read [INFO] [stderr] --> src/board.rs:1104:9 [INFO] [stderr] | [INFO] [stderr] 1104 | count += 1; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/board.rs:1375:18 [INFO] [stderr] | [INFO] [stderr] 1375 | for (action, node) in self.children.iter() { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `node` [INFO] [stderr] --> src/board.rs:1375:26 [INFO] [stderr] | [INFO] [stderr] 1375 | for (action, node) in self.children.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_node` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `func` [INFO] [stderr] --> src/board.rs:1515:33 [INFO] [stderr] | [INFO] [stderr] 1515 | Agent::Custom(name, func) => format!("{}", name), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_func` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ga` [INFO] [stderr] --> src/board.rs:1516:33 [INFO] [stderr] | [INFO] [stderr] 1516 | Agent::Struct(name, ga) => format!("{}", name), [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_ga` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a_milis` [INFO] [stderr] --> src/board.rs:1531:21 [INFO] [stderr] | [INFO] [stderr] 1531 | let a_milis = end.as_nanos(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_a_milis` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b_milis` [INFO] [stderr] --> src/board.rs:1535:21 [INFO] [stderr] | [INFO] [stderr] 1535 | let b_milis = end.as_nanos(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_b_milis` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/board.rs:1548:27 [INFO] [stderr] | [INFO] [stderr] 1548 | Agent::Custom(name, func) => func(board), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/board.rs:1549:27 [INFO] [stderr] | [INFO] [stderr] 1549 | Agent::Struct(name, ga) => ga.get_action(board), [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/board.rs:1720:9 [INFO] [stderr] | [INFO] [stderr] 1720 | for i in 0..n { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/board.rs:1794:9 [INFO] [stderr] | [INFO] [stderr] 1794 | for i in 0..n { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/db.rs:145:23 [INFO] [stderr] | [INFO] [stderr] 145 | for &(name, value) in pairs.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/db.rs:218:9 [INFO] [stderr] | [INFO] [stderr] 218 | for i in 0..(id % 4) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mask` [INFO] [stderr] --> src/dfpn.rs:299:13 [INFO] [stderr] | [INFO] [stderr] 299 | let mask = get_reach_mask(def, att); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/dfpn.rs:352:18 [INFO] [stderr] | [INFO] [stderr] 352 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mask` [INFO] [stderr] --> src/dfpn.rs:380:13 [INFO] [stderr] | [INFO] [stderr] 380 | let mask = get_reach_mask(def, att); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mask` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n_att` [INFO] [stderr] --> src/dfpn.rs:394:14 [INFO] [stderr] | [INFO] [stderr] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n_def` [INFO] [stderr] --> src/dfpn.rs:394:21 [INFO] [stderr] | [INFO] [stderr] 394 | let (n_att, n_def) = root_expands[0].1; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stderr] [INFO] [stderr] warning: variable `count_reach_board` is assigned to, but never used [INFO] [stderr] --> src/dfpn.rs:400:9 [INFO] [stderr] | [INFO] [stderr] 400 | let mut count_reach_board = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_count_reach_board` instead [INFO] [stderr] [INFO] [stderr] warning: variable `count_valid_board` is assigned to, but never used [INFO] [stderr] --> src/dfpn.rs:401:9 [INFO] [stderr] | [INFO] [stderr] 401 | let mut count_valid_board = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_count_valid_board` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/dfpn.rs:425:18 [INFO] [stderr] | [INFO] [stderr] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n_att` [INFO] [stderr] --> src/dfpn.rs:425:22 [INFO] [stderr] | [INFO] [stderr] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_att` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n_def` [INFO] [stderr] --> src/dfpn.rs:425:29 [INFO] [stderr] | [INFO] [stderr] 425 | let (a, (n_att, n_def)) = new_nodes[0]; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_n_def` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `count_reach_board` is never read [INFO] [stderr] --> src/dfpn.rs:422:9 [INFO] [stderr] | [INFO] [stderr] 422 | count_reach_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `count_valid_board` is never read [INFO] [stderr] --> src/dfpn.rs:423:9 [INFO] [stderr] | [INFO] [stderr] 423 | count_valid_board += get_valid_boards(tar_board.0, tar_board.1).len(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `stone` [INFO] [stderr] --> src/dfpn.rs:440:9 [INFO] [stderr] | [INFO] [stderr] 440 | let stone = att | def; [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_stone` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matetype` [INFO] [stderr] --> src/dfpn.rs:494:5 [INFO] [stderr] | [INFO] [stderr] 494 | matetype: MateType, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/dfpn.rs:513:14 [INFO] [stderr] | [INFO] [stderr] 513 | for (action, n_att) in MaskActionIterator::new(att, action_mask) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matetype` [INFO] [stderr] --> src/dfpn.rs:594:5 [INFO] [stderr] | [INFO] [stderr] 594 | matetype: MateType, [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matetype` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `action` [INFO] [stderr] --> src/dfpn.rs:613:14 [INFO] [stderr] | [INFO] [stderr] 613 | for (action, n_def) in MaskActionIterator::new(def, action_mask) { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `wait_time` [INFO] [stderr] --> src/exp.rs:67:13 [INFO] [stderr] | [INFO] [stderr] 67 | let wait_time = time::Duration::from_millis(1000); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wait_time` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s2` [INFO] [stderr] --> src/exp.rs:96:18 [INFO] [stderr] | [INFO] [stderr] 96 | let (s1, s2) = board::eval(&a1, &a2, 1); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_s2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/ml/funcs.rs:236:17 [INFO] [stderr] | [INFO] [stderr] 236 | let x = inputs[0].data[i]; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `T` [INFO] [stderr] | [INFO] [stderr] 236 - let x = inputs[0].data[i]; [INFO] [stderr] 236 + let ai::mpc::T = inputs[0].data[i]; [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 236 | let _x = inputs[0].data[i]; [INFO] [stderr] | + [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/ml/ops.rs:19:13 [INFO] [stderr] | [INFO] [stderr] 19 | for i in 0..inputs.len() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `grad` [INFO] [stderr] --> src/ml.rs:190:28 [INFO] [stderr] | [INFO] [stderr] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_grad` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `inputs` [INFO] [stderr] --> src/ml.rs:190:43 [INFO] [stderr] | [INFO] [stderr] 190 | fn backward(&mut self, grad: &Tensor, inputs: Vec<&Tensor>, _: &Tensor) -> Vec { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_inputs` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `input` [INFO] [stderr] --> src/ml.rs:193:20 [INFO] [stderr] | [INFO] [stderr] 193 | fn call(&self, input: Vec) -> Tensor { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `play_agent` [INFO] [stderr] --> src/train.rs:107:9 [INFO] [stderr] | [INFO] [stderr] 107 | let play_agent = super::board::Agent::Mcts(50, 500); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_play_agent` [INFO] [stderr] [INFO] [stderr] warning: variable `count` is assigned to, but never used [INFO] [stderr] --> src/train.rs:141:13 [INFO] [stderr] | [INFO] [stderr] 141 | let count: i32; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_count` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `reward` is never read [INFO] [stderr] --> src/train.rs:101:22 [INFO] [stderr] | [INFO] [stderr] 101 | let mut reward = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: value assigned to `count` is never read [INFO] [stderr] --> src/train.rs:161:35 [INFO] [stderr] | [INFO] [stderr] 161 | (action, val, count) = neg.eval_with_negalpha(&b); [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `agent` [INFO] [stderr] --> src/train.rs:226:20 [INFO] [stderr] | [INFO] [stderr] 226 | fn play_and_record(agent: &NNUE) -> Vec { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_agent` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `reward` is never read [INFO] [stderr] --> src/train.rs:229:22 [INFO] [stderr] | [INFO] [stderr] 229 | let mut reward = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/train.rs:313:9 [INFO] [stderr] | [INFO] [stderr] 313 | for i in 0..(id % 4) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `count` [INFO] [stderr] --> src/train.rs:371:22 [INFO] [stderr] | [INFO] [stderr] 371 | let (_, val, count) = agent.eval_with_negalpha(&b); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `reward` is never read [INFO] [stderr] --> src/train.rs:368:22 [INFO] [stderr] | [INFO] [stderr] 368 | let mut reward = 0; [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/train.rs:404:9 [INFO] [stderr] | [INFO] [stderr] 404 | let rng = rand::thread_rng(); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `batch_num` [INFO] [stderr] --> src/train.rs:583:13 [INFO] [stderr] | [INFO] [stderr] 583 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stderr] | [INFO] [stderr] 583 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] 583 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 583 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] | + [INFO] [stderr] [INFO] [stderr] warning: value assigned to `data` is never read [INFO] [stderr] --> src/train.rs:560:20 [INFO] [stderr] | [INFO] [stderr] 560 | let mut data = Vec::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `batch_num` [INFO] [stderr] --> src/train.rs:703:13 [INFO] [stderr] | [INFO] [stderr] 703 | let batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: you might have meant to pattern match on the similarly named constant `BATCH_NUM` [INFO] [stderr] | [INFO] [stderr] 703 - let batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] 703 + let train::BATCH_NUM = ts.len() / BATCH_SIZE; [INFO] [stderr] | [INFO] [stderr] help: if this is intentional, prefix it with an underscore [INFO] [stderr] | [INFO] [stderr] 703 | let _batch_num = ts.len() / BATCH_SIZE; [INFO] [stderr] | + [INFO] [stderr] [INFO] [stderr] warning: unused variable: `eval_it` [INFO] [stderr] --> src/train.rs:747:21 [INFO] [stderr] | [INFO] [stderr] 747 | let eval_it = [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_eval_it` [INFO] [stderr] [INFO] [stderr] warning: fields `pn` and `dn` are never read [INFO] [stderr] --> src/dfpn.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 15 | pub struct NodeNumber { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] 16 | pn: f32, [INFO] [stderr] | ^^ [INFO] [stderr] 17 | dn: f32, [INFO] [stderr] | ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `from` are never used [INFO] [stderr] --> src/dfpn.rs:21:8 [INFO] [stderr] | [INFO] [stderr] 20 | impl NodeNumber { [INFO] [stderr] | --------------- associated functions in this implementation [INFO] [stderr] 21 | fn new() -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 24 | fn from(pn: f32, dn: f32) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `next` is never used [INFO] [stderr] --> src/dfpn.rs:43:8 [INFO] [stderr] | [INFO] [stderr] 42 | impl Player { [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] 43 | fn next(&self) -> Self { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `SingleShootLoss` is never used [INFO] [stderr] --> src/ml/funcs.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | trait SingleShootLoss { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `DEPTH` is never used [INFO] [stderr] --> src/train.rs:19:7 [INFO] [stderr] | [INFO] [stderr] 19 | const DEPTH: u8 = 3; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `RANDOM_MOVE` is never used [INFO] [stderr] --> src/train.rs:20:7 [INFO] [stderr] | [INFO] [stderr] 20 | const RANDOM_MOVE: usize = 7; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `play_with_analyze` is never used [INFO] [stderr] --> src/train.rs:365:4 [INFO] [stderr] | [INFO] [stderr] 365 | fn play_with_analyze(agent: &NNUE) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/board.rs:1349:9 [INFO] [stderr] | [INFO] [stderr] 1349 | / write!( [INFO] [stderr] 1350 | | f, [INFO] [stderr] 1351 | | "action: {:>2}, score: {:>5.2}%({:>7.0}/{:>7.0}), Q: {:>5.3}", [INFO] [stderr] 1352 | | self.action, [INFO] [stderr] ... | [INFO] [stderr] 1356 | | self.q [INFO] [stderr] 1357 | | ); [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 1349 | let _ = write!( [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: variable `N` should have a snake case name [INFO] [stderr] --> src/board.rs:1462:23 [INFO] [stderr] | [INFO] [stderr] 1462 | fn get_uct(&self, N: f32) -> f32 { [INFO] [stderr] | ^ help: convert the identifier to snake case: `n` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/ml.rs:415:9 [INFO] [stderr] | [INFO] [stderr] 415 | fs::create_dir_all(path.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 415 | let _ = fs::create_dir_all(path.clone()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/ml.rs:420:13 [INFO] [stderr] | [INFO] [stderr] 420 | self.layers[i].save_param(path.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 420 | let _ = self.layers[i].save_param(path.clone()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/ml.rs:432:13 [INFO] [stderr] | [INFO] [stderr] 432 | self.layers[i].load_param(path.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 432 | let _ = self.layers[i].load_param(path.clone()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/train.rs:669:5 [INFO] [stderr] | [INFO] [stderr] 669 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 669 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/train.rs:686:9 [INFO] [stderr] | [INFO] [stderr] 686 | model.load(load_name.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 686 | let _ = model.load(load_name.clone()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/train.rs:814:21 [INFO] [stderr] | [INFO] [stderr] 814 | model.save(name.clone()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 814 | let _ = model.save(name.clone()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/train.rs:819:17 [INFO] [stderr] | [INFO] [stderr] 819 | model.save(format!("latest-{}", name)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 819 | let _ = model.save(format!("latest-{}", name)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `qubic_engine` (lib) generated 116 warnings (run `cargo fix --lib -p qubic_engine` to apply 86 suggestions) [INFO] [stderr] warning: `qubic_engine` (lib test) generated 116 warnings (116 duplicates) [INFO] [stderr] warning: unused imports: `ProofNumberSearchStatus` and `threat_space_search` [INFO] [stderr] --> src/main_utils.rs:4:39 [INFO] [stderr] | [INFO] [stderr] 4 | dfpn::{self, proof_number_search, threat_space_search, MateType, ProofNumberSearchStatus}, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stderr] --> src/main_utils.rs:6:13 [INFO] [stderr] | [INFO] [stderr] 6 | use serde::{Deserialize, Serialize}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SimplePatternEvaluator`, `TrainableBLE`, and `TrainableSPE` [INFO] [stderr] --> src/main.rs:4:46 [INFO] [stderr] | [INFO] [stderr] 4 | BucketLineEvaluator, SimplLineEvaluator, SimplePatternEvaluator, TrainableBLE, TrainableSLE, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] 5 | TrainableSPE, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `NNLineEvaluator` and `TrainableNLE` [INFO] [stderr] --> src/main.rs:7:33 [INFO] [stderr] | [INFO] [stderr] 7 | use qubic_engine::ai::line_nn::{NNLineEvaluator, NNLineEvaluator_, TrainableNLE, TrainableNLE_}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `TrainableLineEvaluator` [INFO] [stderr] --> src/main.rs:12:38 [INFO] [stderr] | [INFO] [stderr] 12 | PlayoutLevel, PositionEvaluator, TrainableLineEvaluator, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `count_2row_`, `get_2row_mask`, and `get_random` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | count_2row_, get_2row_mask, get_random, mate_check_horizontal, play_actor, pprint_board, [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `qubic_engine::db::BoardDB` [INFO] [stderr] --> src/main.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use qubic_engine::db::BoardDB; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `train_with_db` [INFO] [stderr] --> src/main.rs:19:38 [INFO] [stderr] | [INFO] [stderr] 19 | use qubic_engine::train::{create_db, train_with_db}; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `NNUE` [INFO] [stderr] --> src/main.rs:21:33 [INFO] [stderr] | [INFO] [stderr] 21 | ai::{CoEvaluator, NegAlpha, NNUE}, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand::rngs::ThreadRng` [INFO] [stderr] --> src/main.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | use rand::rngs::ThreadRng; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `rand_distr::num_traits::WrappingNeg` [INFO] [stderr] --> src/main.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | use rand_distr::num_traits::WrappingNeg; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Neg` [INFO] [stderr] --> src/main.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use std::ops::Neg; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::os::unix::thread` [INFO] [stderr] --> src/main.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | use std::os::unix::thread; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Duration` [INFO] [stderr] --> src/main.rs:31:17 [INFO] [stderr] | [INFO] [stderr] 31 | use std::time::{Duration, Instant}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around function argument [INFO] [stderr] --> src/main.rs:166:21 [INFO] [stderr] | [INFO] [stderr] 166 | return Some((self.board.clone())); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 166 - return Some((self.board.clone())); [INFO] [stderr] 166 + return Some(self.board.clone() ); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `ProofNumberSearchStatus` [INFO] [stderr] --> src/main.rs:429:40 [INFO] [stderr] | [INFO] [stderr] 429 | use qubic_engine::dfpn::{MateType, ProofNumberSearchStatus}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/main.rs:1098:17 [INFO] [stderr] | [INFO] [stderr] 1098 | let stone = (b.black | b.white); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 1098 - let stone = (b.black | b.white); [INFO] [stderr] 1098 + let stone = b.black | b.white ; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused imports: `LineEvaluator`, `acum_mask_bundle`, and `apply_mask_bundle` [INFO] [stderr] --> src/main.rs:1109:28 [INFO] [stderr] | [INFO] [stderr] 1109 | use qubic_engine::ai::{acum_mask_bundle, apply_mask_bundle, LineEvaluator}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable statement [INFO] [stderr] --> src/main_utils.rs:139:13 [INFO] [stderr] | [INFO] [stderr] 130 | break; [INFO] [stderr] | ----- any code following this expression is unreachable [INFO] [stderr] ... [INFO] [stderr] 139 | let start = Instant::now(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable expression [INFO] [stderr] --> src/main.rs:198:9 [INFO] [stderr] | [INFO] [stderr] 197 | continue; [INFO] [stderr] | -------- any code following this expression is unreachable [INFO] [stderr] 198 | / for j in 0..step { [INFO] [stderr] 199 | | if rng.gen::() < 0.5 { [INFO] [stderr] 200 | | a += 1; [INFO] [stderr] 201 | | } else { [INFO] [stderr] ... | [INFO] [stderr] 211 | | counts[count] += 1; [INFO] [stderr] 212 | | } [INFO] [stderr] | |_________^ unreachable expression [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main_utils.rs:65:9 [INFO] [stderr] | [INFO] [stderr] 65 | let mut b = Board::from(att, def, Player::Black); [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main_utils.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main_utils.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mcts` [INFO] [stderr] --> src/main_utils.rs:98:13 [INFO] [stderr] | [INFO] [stderr] 98 | let mcts = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mcts2` [INFO] [stderr] --> src/main_utils.rs:100:13 [INFO] [stderr] | [INFO] [stderr] 100 | let mcts2 = ai::mcts::Mcts::new(10000, 3, 10, po); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m1` [INFO] [stderr] --> src/main_utils.rs:101:13 [INFO] [stderr] | [INFO] [stderr] 101 | let m1 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m2` [INFO] [stderr] --> src/main_utils.rs:102:13 [INFO] [stderr] | [INFO] [stderr] 102 | let m2 = ai::NegAlpha::new(Box::new(ai::CoEvaluator::best()), 3); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `l1` [INFO] [stderr] --> src/main_utils.rs:103:13 [INFO] [stderr] | [INFO] [stderr] 103 | let mut l1 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `l2` [INFO] [stderr] --> src/main_utils.rs:104:13 [INFO] [stderr] | [INFO] [stderr] 104 | let mut l2 = ai::NegAlphaF::new(Box::new(l.clone()), 5); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/main_utils.rs:124:26 [INFO] [stderr] | [INFO] [stderr] 124 | if let Some((a, b)) = res { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:57:9 [INFO] [stderr] | [INFO] [stderr] 57 | let mut l3_ = NegAlphaF::new(Box::new(l.clone()), 1); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m1` [INFO] [stderr] --> src/main.rs:38:9 [INFO] [stderr] | [INFO] [stderr] 38 | let m1 = NegAlpha::new(Box::new(CoEvaluator::best()), 1); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m3_f32` [INFO] [stderr] --> src/main.rs:41:9 [INFO] [stderr] | [INFO] [stderr] 41 | let m3_f32 = NegAlphaF::new(Box::new(CoEvaluator::best()), 3); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_m3_f32` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m4` [INFO] [stderr] --> src/main.rs:42:9 [INFO] [stderr] | [INFO] [stderr] 42 | let m4 = NegAlpha::new(Box::new(CoEvaluator::best()), 4); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m4` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m6` [INFO] [stderr] --> src/main.rs:44:9 [INFO] [stderr] | [INFO] [stderr] 44 | let m6 = NegAlpha::new(Box::new(CoEvaluator::best()), 6); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m6` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m7` [INFO] [stderr] --> src/main.rs:45:9 [INFO] [stderr] | [INFO] [stderr] 45 | let m7 = NegAlpha::new(Box::new(CoEvaluator::best()), 7); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m7` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m9` [INFO] [stderr] --> src/main.rs:46:9 [INFO] [stderr] | [INFO] [stderr] 46 | let m9 = NegAlpha::new(Box::new(CoEvaluator::best()), 9); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m9` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mm3` [INFO] [stderr] --> src/main.rs:48:9 [INFO] [stderr] | [INFO] [stderr] 48 | let mm3 = Agent::Struct(String::from("mm3"), Box::new(mm3)); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_mm3` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m2` [INFO] [stderr] --> src/main.rs:49:9 [INFO] [stderr] | [INFO] [stderr] 49 | let m2 = Agent::Struct(String::from("m2"), Box::new(m2)); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m3` [INFO] [stderr] --> src/main.rs:50:9 [INFO] [stderr] | [INFO] [stderr] 50 | let m3 = Agent::Struct(String::from("m3"), Box::new(m3)); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m3` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `m5` [INFO] [stderr] --> src/main.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | let m5 = Agent::Struct(String::from("m5"), Box::new(m5)); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_m5` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `l5_` [INFO] [stderr] --> src/main.rs:63:9 [INFO] [stderr] | [INFO] [stderr] 63 | let l5_ = MateWrapperActor::new(Box::new(l5_)); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_l5_` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b7` [INFO] [stderr] --> src/main.rs:81:9 [INFO] [stderr] | [INFO] [stderr] 81 | let b7 = MateWrapperActor::new(Box::new(b7)); [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_b7` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mcts` [INFO] [stderr] --> src/main.rs:84:9 [INFO] [stderr] | [INFO] [stderr] 84 | let mcts = ai::mcts::Mcts::new(10_000, 3, 10, po); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_mcts` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `mcts2` [INFO] [stderr] --> src/main.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 85 | let mcts2 = ai::mcts::Mcts::new(10_000, 3, 500, l3_); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mcts2` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:181:13 [INFO] [stderr] | [INFO] [stderr] 181 | let mut count = 0; [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:178:9 [INFO] [stderr] | [INFO] [stderr] 178 | for i in 0..n { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `count` [INFO] [stderr] --> src/main.rs:181:13 [INFO] [stderr] | [INFO] [stderr] 181 | let mut count = 0; [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `j` [INFO] [stderr] --> src/main.rs:183:13 [INFO] [stderr] | [INFO] [stderr] 183 | for j in 0..step { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:238:13 [INFO] [stderr] | [INFO] [stderr] 238 | let mut max_action = 0; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:239:13 [INFO] [stderr] | [INFO] [stderr] 239 | let mut max = 0.0; [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max_action` [INFO] [stderr] --> src/main.rs:238:13 [INFO] [stderr] | [INFO] [stderr] 238 | let mut max_action = 0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max_action` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `max` [INFO] [stderr] --> src/main.rs:239:13 [INFO] [stderr] | [INFO] [stderr] 239 | let mut max = 0.0; [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_max` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val` [INFO] [stderr] --> src/main.rs:251:22 [INFO] [stderr] | [INFO] [stderr] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_val` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `count` [INFO] [stderr] --> src/main.rs:251:27 [INFO] [stderr] | [INFO] [stderr] 251 | let (action, val, count) = l7_.eval_with_negalpha(&b); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_count` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:276:9 [INFO] [stderr] | [INFO] [stderr] 276 | for i in 0_u64..(1 << 32) { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `black` [INFO] [stderr] --> src/main.rs:323:9 [INFO] [stderr] | [INFO] [stderr] 323 | black: u64, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_black` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `white` [INFO] [stderr] --> src/main.rs:324:9 [INFO] [stderr] | [INFO] [stderr] 324 | white: u64, [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_white` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:332:9 [INFO] [stderr] | [INFO] [stderr] 332 | let mut it = BoardIter::new(true); [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:422:9 [INFO] [stderr] | [INFO] [stderr] 422 | for i in 0..size { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: variable `step` is assigned to, but never used [INFO] [stderr] --> src/main.rs:440:9 [INFO] [stderr] | [INFO] [stderr] 440 | let mut step = 0; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_step` instead [INFO] [stderr] [INFO] [stderr] warning: value assigned to `step` is never read [INFO] [stderr] --> src/main.rs:481:13 [INFO] [stderr] | [INFO] [stderr] 481 | step += 1; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val_` [INFO] [stderr] --> src/main.rs:565:23 [INFO] [stderr] | [INFO] [stderr] 565 | let (action2, val_, _) = long.eval_with_negalpha(&b); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_val_` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:627:9 [INFO] [stderr] | [INFO] [stderr] 627 | let mut all_count = 0.0; [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:628:9 [INFO] [stderr] | [INFO] [stderr] 628 | let mut all_err_sum = 0.0; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:629:9 [INFO] [stderr] | [INFO] [stderr] 629 | let mut all_sq_sum = 0.0; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `all_count` [INFO] [stderr] --> src/main.rs:627:9 [INFO] [stderr] | [INFO] [stderr] 627 | let mut all_count = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_count` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `all_err_sum` [INFO] [stderr] --> src/main.rs:628:9 [INFO] [stderr] | [INFO] [stderr] 628 | let mut all_err_sum = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_err_sum` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `all_sq_sum` [INFO] [stderr] --> src/main.rs:629:9 [INFO] [stderr] | [INFO] [stderr] 629 | let mut all_sq_sum = 0.0; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_all_sq_sum` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:766:9 [INFO] [stderr] | [INFO] [stderr] 766 | let mut model = TrainableSLE::from(model, 0.001); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:768:9 [INFO] [stderr] | [INFO] [stderr] 768 | let mut pmodel = PositionMaskEvaluator::new(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:769:9 [INFO] [stderr] | [INFO] [stderr] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:770:9 [INFO] [stderr] | [INFO] [stderr] 770 | let mut nmodel = NNLineEvaluator_::new(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:771:9 [INFO] [stderr] | [INFO] [stderr] 771 | let mut nmodel = TrainableNLE_::from(nmodel, 0.005); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:772:9 [INFO] [stderr] | [INFO] [stderr] 772 | let mut pmodel = pattern::test_pattern_evaluator(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:773:9 [INFO] [stderr] | [INFO] [stderr] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `model` [INFO] [stderr] --> src/main.rs:766:9 [INFO] [stderr] | [INFO] [stderr] 766 | let mut model = TrainableSLE::from(model, 0.001); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pmodel` [INFO] [stderr] --> src/main.rs:769:9 [INFO] [stderr] | [INFO] [stderr] 769 | let mut pmodel = TrainablePME::from(pmodel, 0.001); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `pmodel` [INFO] [stderr] --> src/main.rs:773:9 [INFO] [stderr] | [INFO] [stderr] 773 | let mut pmodel = TrainablePatternEvaluator::from_pattern_evaluator(pmodel, 0.0001, 0.9, 0.999); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pmodel` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:813:9 [INFO] [stderr] | [INFO] [stderr] 813 | let mut b_time_not = 0; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:815:9 [INFO] [stderr] | [INFO] [stderr] 815 | let mut a_time_not = 0; [INFO] [stderr] | ----^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:817:9 [INFO] [stderr] | [INFO] [stderr] 817 | let mut count_n = 0; [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:818:9 [INFO] [stderr] | [INFO] [stderr] 818 | let mut max_path_board = (0, 0); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:819:9 [INFO] [stderr] | [INFO] [stderr] 819 | let mut max_path = 0; [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:820:9 [INFO] [stderr] | [INFO] [stderr] 820 | let mut max_reach_count_board = (0, 0); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:821:9 [INFO] [stderr] | [INFO] [stderr] 821 | let mut max_reach_count = 0; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:822:9 [INFO] [stderr] | [INFO] [stderr] 822 | let mut max_valid_count_board = (0, 0); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:823:9 [INFO] [stderr] | [INFO] [stderr] 823 | let mut max_valid_count = 0; [INFO] [stderr] | ----^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:824:9 [INFO] [stderr] | [INFO] [stderr] 824 | let mut reach_count = 0; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:825:9 [INFO] [stderr] | [INFO] [stderr] 825 | let mut valid_count = 0; [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:826:9 [INFO] [stderr] | [INFO] [stderr] 826 | for i in 0..n { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `j` [INFO] [stderr] --> src/main.rs:828:13 [INFO] [stderr] | [INFO] [stderr] 828 | for j in 0..20 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `flag` [INFO] [stderr] --> src/main.rs:892:18 [INFO] [stderr] | [INFO] [stderr] 892 | let (flag, action) = result.unwrap(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_flag` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:921:9 [INFO] [stderr] | [INFO] [stderr] 921 | for i in 0..10000 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:961:9 [INFO] [stderr] | [INFO] [stderr] 961 | let mut rng = thread_rng(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:975:13 [INFO] [stderr] | [INFO] [stderr] 975 | let mut r1 = 0.0; [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:976:13 [INFO] [stderr] | [INFO] [stderr] 976 | let mut r2 = 0.0; [INFO] [stderr] | ----^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `rng` [INFO] [stderr] --> src/main.rs:961:9 [INFO] [stderr] | [INFO] [stderr] 961 | let mut rng = thread_rng(); [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rng` [INFO] [stderr] [INFO] [stderr] warning: variable `best` is assigned to, but never used [INFO] [stderr] --> src/main.rs:969:9 [INFO] [stderr] | [INFO] [stderr] 969 | let mut best = get_position_eval_agent_alpha(3, 6, 1, 1, 6, 1, 5, 5, 1, 5, 5, 8, 8); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: consider using `_best` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:972:9 [INFO] [stderr] | [INFO] [stderr] 972 | for i in 0..1000 { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `r1` [INFO] [stderr] --> src/main.rs:975:13 [INFO] [stderr] | [INFO] [stderr] 975 | let mut r1 = 0.0; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r1` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `r2` [INFO] [stderr] --> src/main.rs:976:13 [INFO] [stderr] | [INFO] [stderr] 976 | let mut r2 = 0.0; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_r2` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/main.rs:980:18 [INFO] [stderr] | [INFO] [stderr] 980 | let (i, r1_, r2_) = compare(&tar, test); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] [INFO] [stderr] warning: value assigned to `best` is never read [INFO] [stderr] --> src/main.rs:989:13 [INFO] [stderr] | [INFO] [stderr] 989 | best = tar; [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: unused variable: `float` [INFO] [stderr] --> src/main.rs:1099:9 [INFO] [stderr] | [INFO] [stderr] 1099 | let float = !((stone << 16) | 0xffff); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ground` [INFO] [stderr] --> src/main.rs:1101:9 [INFO] [stderr] | [INFO] [stderr] 1101 | let ground = ((stone << 16) | 0xffff) ^ stone; [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_ground` [INFO] [stderr] [INFO] [stderr] warning: function `exp_prob_compare` is never used [INFO] [stderr] --> src/main.rs:170:4 [INFO] [stderr] | [INFO] [stderr] 170 | fn exp_prob_compare() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `exp` is never used [INFO] [stderr] --> src/main.rs:219:4 [INFO] [stderr] | [INFO] [stderr] 219 | fn exp() { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function `command` is never used [INFO] [stderr] --> src/main.rs:259:4 [INFO] [stderr] | [INFO] [stderr] 259 | fn command() { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_magic_number` is never used [INFO] [stderr] --> src/main.rs:270:4 [INFO] [stderr] | [INFO] [stderr] 270 | fn get_magic_number() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `call_evaluator` is never used [INFO] [stderr] --> src/main.rs:309:4 [INFO] [stderr] | [INFO] [stderr] 309 | fn call_evaluator() { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `exp_positoin_eval_get_count` is never used [INFO] [stderr] --> src/main.rs:328:4 [INFO] [stderr] | [INFO] [stderr] 328 | fn exp_positoin_eval_get_count() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `print_pmodel` is never used [INFO] [stderr] --> src/main.rs:369:4 [INFO] [stderr] | [INFO] [stderr] 369 | fn print_pmodel() { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `use_ai` is never used [INFO] [stderr] --> src/main.rs:376:4 [INFO] [stderr] | [INFO] [stderr] 376 | fn use_ai() { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_random_board` is never used [INFO] [stderr] --> src/main.rs:420:4 [INFO] [stderr] | [INFO] [stderr] 420 | fn get_random_board(size: usize) -> Board { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `exp_mate_profile` is never used [INFO] [stderr] --> src/main.rs:428:4 [INFO] [stderr] | [INFO] [stderr] 428 | fn exp_mate_profile(a1: &impl GetAction, a2: &impl GetAction) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `profile` is never used [INFO] [stderr] --> src/main.rs:523:4 [INFO] [stderr] | [INFO] [stderr] 523 | fn profile() { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `mpc_for_coe` is never used [INFO] [stderr] --> src/main.rs:610:4 [INFO] [stderr] | [INFO] [stderr] 610 | fn mpc_for_coe(long_depth: u8, short_depth: u8) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `wrapping_line_eval` is never used [INFO] [stderr] --> src/main.rs:730:4 [INFO] [stderr] | [INFO] [stderr] 730 | fn wrapping_line_eval(l: LineEvaluator, depth: u8) -> MateWrapperActor { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `train_line_eval` is never used [INFO] [stderr] --> src/main.rs:747:4 [INFO] [stderr] | [INFO] [stderr] 747 | fn train_line_eval(train_db: String, valid_db: String) { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `expand_untill_n` is never used [INFO] [stderr] --> src/main.rs:786:4 [INFO] [stderr] | [INFO] [stderr] 786 | fn expand_untill_n(b: Board, n: usize) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `mcts_statistics` is never used [INFO] [stderr] --> src/main.rs:913:4 [INFO] [stderr] | [INFO] [stderr] 913 | fn mcts_statistics() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `random_i` is never used [INFO] [stderr] --> src/main.rs:937:4 [INFO] [stderr] | [INFO] [stderr] 937 | fn random_i(max: i32) -> i32 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_random_model` is never used [INFO] [stderr] --> src/main.rs:942:4 [INFO] [stderr] | [INFO] [stderr] 942 | fn get_random_model(max: i32) -> Agent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `explore_best_model` is never used [INFO] [stderr] --> src/main.rs:960:4 [INFO] [stderr] | [INFO] [stderr] 960 | fn explore_best_model() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `mc` is never used [INFO] [stderr] --> src/main.rs:997:4 [INFO] [stderr] | [INFO] [stderr] 997 | fn mc(a: usize, b: usize) -> Agent { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_co_eval_agent` is never used [INFO] [stderr] --> src/main.rs:1001:4 [INFO] [stderr] | [INFO] [stderr] 1001 | fn get_co_eval_agent(depth: usize, row_w: i32, pos_w: i32) -> Agent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_row_evaluator` is never used [INFO] [stderr] --> src/main.rs:1015:4 [INFO] [stderr] | [INFO] [stderr] 1015 | fn get_row_evaluator(depth: usize) -> Agent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_position_eval_agent` is never used [INFO] [stderr] --> src/main.rs:1024:4 [INFO] [stderr] | [INFO] [stderr] 1024 | fn get_position_eval_agent(depth: usize, v: i32, e: i32, s: i32, c: i32) -> Agent { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_position_eval_agent_alpha` is never used [INFO] [stderr] --> src/main.rs:1037:4 [INFO] [stderr] | [INFO] [stderr] 1037 | fn get_position_eval_agent_alpha( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `compare` is never used [INFO] [stderr] --> src/main.rs:1062:4 [INFO] [stderr] | [INFO] [stderr] 1062 | fn compare(a1: &impl GetAction, a2: &impl GetAction) -> (i32, f32, f32) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_v` is never used [INFO] [stderr] --> src/main.rs:1095:4 [INFO] [stderr] | [INFO] [stderr] 1095 | fn get_v(b: &Board) -> u32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `beam_search` is never used [INFO] [stderr] --> src/main.rs:1108:4 [INFO] [stderr] | [INFO] [stderr] 1108 | fn beam_search() { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `read_board_from_json` is never used [INFO] [stderr] --> src/main_utils.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn read_board_from_json(file_name: &str) -> Vec<(u64, u64)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `write_board_to_json` is never used [INFO] [stderr] --> src/main_utils.rs:17:8 [INFO] [stderr] | [INFO] [stderr] 17 | pub fn write_board_to_json(v: Vec<(u64, u64)>, file_name: &str) -> std::io::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `GameRecordIterator` is never constructed [INFO] [stderr] --> src/main_utils.rs:24:12 [INFO] [stderr] | [INFO] [stderr] 24 | pub struct GameRecordIterator { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new` and `reset` are never used [INFO] [stderr] --> src/main_utils.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 30 | impl GameRecordIterator { [INFO] [stderr] | ------------------------------------------------------------- associated items in this implementation [INFO] [stderr] 31 | pub fn new(a1: A1, a2: A2) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 39 | pub fn reset(&mut self) -> Board { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `test_pns` is never used [INFO] [stderr] --> src/main_utils.rs:61:8 [INFO] [stderr] | [INFO] [stderr] 61 | pub fn test_pns() { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `generate_problems` is never used [INFO] [stderr] --> src/main_utils.rs:83:8 [INFO] [stderr] | [INFO] [stderr] 83 | pub fn generate_problems() { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | l.load("sle_tl50.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 53 | let _ = l.load("sle_tl50.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 64 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:74:5 [INFO] [stderr] | [INFO] [stderr] 74 | b.load("bsimple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 74 | let _ = b.load("bsimple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:221:5 [INFO] [stderr] | [INFO] [stderr] 221 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 221 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:311:5 [INFO] [stderr] | [INFO] [stderr] 311 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 311 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:371:5 [INFO] [stderr] | [INFO] [stderr] 371 | pmodel.load("position.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 371 | let _ = pmodel.load("position.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:378:5 [INFO] [stderr] | [INFO] [stderr] 378 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 378 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:532:5 [INFO] [stderr] | [INFO] [stderr] 532 | nmodel.load("sle_tl50_.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 532 | let _ = nmodel.load("sle_tl50_.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:613:5 [INFO] [stderr] | [INFO] [stderr] 613 | l.load("bsimple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 613 | let _ = l.load("bsimple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:738:5 [INFO] [stderr] | [INFO] [stderr] 738 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 738 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main_utils.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 72 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main_utils.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 86 | l.load("simple.json".to_string()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 86 | let _ = l.load("simple.json".to_string()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main_utils.rs:107:17 [INFO] [stderr] | [INFO] [stderr] 107 | write_board_to_json(problems, "tss10000.json"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 107 | let _ = write_board_to_json(problems, "tss10000.json"); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main_utils.rs:108:17 [INFO] [stderr] | [INFO] [stderr] 108 | write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 108 | let _ = write_board_to_json(problems_no_tss, "no_tss10000.json"); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `qubic_engine` (bin "qubic_engine" test) generated 153 warnings (run `cargo fix --bin "qubic_engine" -p qubic_engine --tests` to apply 100 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/qubic_engine-0e728d6547fcb28c) [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/qubic_engine-dfdc076c82c8a521) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests qubic_engine [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:411:13 [INFO] [stderr] | [INFO] [stderr] 411 | let x = ((count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stderr] | ^ [INFO] [stderr] 412 | & 0x1111_1111_1111_1111) [INFO] [stderr] 413 | * 0xf); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 411 ~ let x = (count_2row_(s, s >> 1, s >> 2, s >> 3, b, b >> 1, b >> 2, b >> 3) [INFO] [stderr] 412 | & 0x1111_1111_1111_1111) [INFO] [stderr] 413 ~ * 0xf; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:414:13 [INFO] [stderr] | [INFO] [stderr] 414 | let y = ((count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stderr] | ^ [INFO] [stderr] 415 | & 0x000f_000f_000f_000f) [INFO] [stderr] 416 | * 0x1111); [INFO] [stderr] | ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 414 ~ let y = (count_2row_(s, s >> 4, s >> 8, s >> 12, b, b >> 4, b >> 8, b >> 12) [INFO] [stderr] 415 | & 0x000f_000f_000f_000f) [INFO] [stderr] 416 ~ * 0x1111; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/board.rs:443:15 [INFO] [stderr] | [INFO] [stderr] 443 | let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 443 - let xyz = (xyz1 | xyz2 | xyz3 | xyz4); [INFO] [stderr] 443 + let xyz = xyz1 | xyz2 | xyz3 | xyz4; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `return` value [INFO] [stderr] --> src/board.rs:464:12 [INFO] [stderr] | [INFO] [stderr] 464 | return (b & c & (a | e) | e & f & (c | g)); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 464 - return (b & c & (a | e) | e & f & (c | g)); [INFO] [stderr] 464 + return b & c & (a | e) | e & f & (c | g); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 4 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "834b3f94c54ea326cd6293929749170137d70af799dd123034c7c43bf52ad655", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "834b3f94c54ea326cd6293929749170137d70af799dd123034c7c43bf52ad655", kill_on_drop: false }` [INFO] [stdout] 834b3f94c54ea326cd6293929749170137d70af799dd123034c7c43bf52ad655