[INFO] cloning repository https://github.com/hnrklssn/wasmthello
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hnrklssn/wasmthello" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhnrklssn%2Fwasmthello", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhnrklssn%2Fwasmthello'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ad2cf6f70a333156e6e3557c0c49343eff73ca65
[INFO] checking hnrklssn/wasmthello against master#57f772f25c5ce2bd870d6f8c3ab318eaee5a3326 for pr-133502-22
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhnrklssn%2Fwasmthello" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/hnrklssn/wasmthello
[INFO] finished tweaking git repo https://github.com/hnrklssn/wasmthello
[INFO] tweaked toml for git repo https://github.com/hnrklssn/wasmthello written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/hnrklssn/wasmthello on toolchain 57f772f25c5ce2bd870d6f8c3ab318eaee5a3326
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/hnrklssn/wasmthello 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" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wat v1.0.43
[INFO] [stderr]   Downloaded wasmtime-fiber v0.33.1
[INFO] [stderr]   Downloaded thiserror-impl v1.0.31
[INFO] [stderr]   Downloaded region v2.2.0
[INFO] [stderr]   Downloaded wasmtime-types v0.33.1
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.80.1
[INFO] [stderr]   Downloaded file-per-thread-logger v0.1.5
[INFO] [stderr]   Downloaded cranelift-native v0.80.1
[INFO] [stderr]   Downloaded getrandom v0.2.6
[INFO] [stderr]   Downloaded psm v0.1.18
[INFO] [stderr]   Downloaded zstd-safe v4.1.3+zstd.1.5.1
[INFO] [stderr]   Downloaded async-trait v0.1.53
[INFO] [stderr]   Downloaded target-lexicon v0.12.4
[INFO] [stderr]   Downloaded wasmtime-jit v0.33.1
[INFO] [stderr]   Downloaded thiserror v1.0.31
[INFO] [stderr]   Downloaded quote v1.0.18
[INFO] [stderr]   Downloaded cranelift-entity v0.80.1
[INFO] [stderr]   Downloaded cranelift-bforest v0.80.1
[INFO] [stderr]   Downloaded wasmtime-cache v0.33.1
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.8
[INFO] [stderr]   Downloaded io-lifetimes v0.4.4
[INFO] [stderr]   Downloaded anyhow v1.0.57
[INFO] [stderr]   Downloaded wasmtime-environ v0.33.1
[INFO] [stderr]   Downloaded serde_derive v1.0.137
[INFO] [stderr]   Downloaded miniz_oxide v0.5.1
[INFO] [stderr]   Downloaded cranelift-frontend v0.80.1
[INFO] [stderr]   Downloaded zstd v0.9.2+zstd.1.5.1
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.8
[INFO] [stderr]   Downloaded indexmap v1.8.1
[INFO] [stderr]   Downloaded wasmtime-cranelift v0.33.1
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.80.1
[INFO] [stderr]   Downloaded rayon-core v1.9.3
[INFO] [stderr]   Downloaded wasmtime-runtime v0.33.1
[INFO] [stderr]   Downloaded wasmparser v0.81.0
[INFO] [stderr]   Downloaded serde v1.0.137
[INFO] [stderr]   Downloaded backtrace v0.3.65
[INFO] [stderr]   Downloaded crossbeam-channel v0.5.4
[INFO] [stderr]   Downloaded wasmtime v0.33.1
[INFO] [stderr]   Downloaded wast v41.0.0
[INFO] [stderr]   Downloaded rayon v1.5.3
[INFO] [stderr]   Downloaded regalloc v0.0.33
[INFO] [stderr]   Downloaded cranelift-wasm v0.80.1
[INFO] [stderr]   Downloaded syn v1.0.95
[INFO] [stderr]   Downloaded regex v1.5.6
[INFO] [stderr]   Downloaded rustix v0.31.3
[INFO] [stderr]   Downloaded regex-syntax v0.6.26
[INFO] [stderr]   Downloaded cranelift-codegen v0.80.1
[INFO] [stderr]   Downloaded zstd-sys v1.6.2+zstd.1.5.1
[INFO] [stderr]   Downloaded linux-raw-sys v0.0.36
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b9264e3ec3009a535472e65b3951d0f576b65da8db37b4bd6da466a426414edc
[INFO] running `Command { std: "docker" "start" "-a" "b9264e3ec3009a535472e65b3951d0f576b65da8db37b4bd6da466a426414edc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b9264e3ec3009a535472e65b3951d0f576b65da8db37b4bd6da466a426414edc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b9264e3ec3009a535472e65b3951d0f576b65da8db37b4bd6da466a426414edc", kill_on_drop: false }`
[INFO] [stdout] b9264e3ec3009a535472e65b3951d0f576b65da8db37b4bd6da466a426414edc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+57f772f25c5ce2bd870d6f8c3ab318eaee5a3326" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 95af2b8015257373d7e3c38a4053a3b4210bd6db6093f875d6522bbd39901136
[INFO] running `Command { std: "docker" "start" "-a" "95af2b8015257373d7e3c38a4053a3b4210bd6db6093f875d6522bbd39901136", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.126
[INFO] [stderr]    Compiling proc-macro2 v1.0.39
[INFO] [stderr]    Compiling unicode-ident v1.0.0
[INFO] [stderr]    Compiling syn v1.0.95
[INFO] [stderr]    Compiling serde_derive v1.0.137
[INFO] [stderr]    Compiling serde v1.0.137
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling indexmap v1.8.1
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]     Checking hashbrown v0.11.2
[INFO] [stderr]     Checking fallible-iterator v0.2.0
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling target-lexicon v0.12.4
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.80.1
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.80.1
[INFO] [stderr]    Compiling typenum v1.15.0
[INFO] [stderr]    Compiling io-lifetimes v0.4.4
[INFO] [stderr]    Compiling anyhow v1.0.57
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling crossbeam-utils v0.8.8
[INFO] [stderr]    Compiling rustix v0.31.3
[INFO] [stderr]    Compiling generic-array v0.14.5
[INFO] [stderr]     Checking wasmparser v0.81.0
[INFO] [stderr]     Checking smallvec v1.8.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.8
[INFO] [stderr]    Compiling quote v1.0.18
[INFO] [stderr]     Checking regalloc v0.0.33
[INFO] [stderr]     Checking linux-raw-sys v0.0.36
[INFO] [stderr]     Checking getrandom v0.2.6
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]    Compiling rayon-core v1.9.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.16
[INFO] [stderr]    Compiling zstd-safe v4.1.3+zstd.1.5.1
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]     Checking either v1.6.1
[INFO] [stderr]    Compiling jobserver v0.1.24
[INFO] [stderr]     Checking regex-syntax v0.6.26
[INFO] [stderr]     Checking more-asserts v0.2.2
[INFO] [stderr]     Checking object v0.28.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking termcolor v1.1.3
[INFO] [stderr]     Checking miniz_oxide v0.5.1
[INFO] [stderr]     Checking rand_core v0.6.3
[INFO] [stderr]     Checking rustc-demangle v0.1.21
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]     Checking crossbeam-deque v0.8.1
[INFO] [stderr]     Checking itertools v0.10.3
[INFO] [stderr]     Checking crossbeam-channel v0.5.4
[INFO] [stderr]     Checking region v2.2.0
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]    Compiling rayon v1.5.3
[INFO] [stderr]     Checking opaque-debug v0.3.0
[INFO] [stderr]    Compiling wasmtime-cache v0.33.1
[INFO] [stderr]     Checking leb128 v0.2.5
[INFO] [stderr]     Checking cpufeatures v0.2.2
[INFO] [stderr]    Compiling cpp_demangle v0.3.5
[INFO] [stderr]    Compiling async-trait v0.1.53
[INFO] [stderr]     Checking unicode-width v0.1.9
[INFO] [stderr]     Checking wast v41.0.0
[INFO] [stderr]     Checking directories-next v2.0.0
[INFO] [stderr]    Compiling wasmtime v0.33.1
[INFO] [stderr]     Checking base64 v0.13.0
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]     Checking regex v1.5.6
[INFO] [stderr]     Checking digest v0.9.0
[INFO] [stderr]     Checking block-buffer v0.9.0
[INFO] [stderr]    Compiling wasmtime-fiber v0.33.1
[INFO] [stderr]    Compiling zstd-sys v1.6.2+zstd.1.5.1
[INFO] [stderr]    Compiling backtrace v0.3.65
[INFO] [stderr]    Compiling wasmtime-runtime v0.33.1
[INFO] [stderr]    Compiling psm v0.1.18
[INFO] [stderr]     Checking sha2 v0.9.9
[INFO] [stderr]    Compiling cranelift-codegen v0.80.1
[INFO] [stderr]     Checking env_logger v0.9.0
[INFO] [stderr]     Checking file-per-thread-logger v0.1.5
[INFO] [stderr]     Checking wat v1.0.43
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]     Checking thiserror v1.0.31
[INFO] [stderr]     Checking cranelift-entity v0.80.1
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking toml v0.5.9
[INFO] [stderr]     Checking cranelift-bforest v0.80.1
[INFO] [stderr]     Checking wasmtime-types v0.33.1
[INFO] [stderr]     Checking gimli v0.26.1
[INFO] [stderr]     Checking object v0.27.1
[INFO] [stderr]     Checking addr2line v0.17.0
[INFO] [stderr]     Checking wasmtime-environ v0.33.1
[INFO] [stderr]     Checking wasmtime-jit v0.33.1
[INFO] [stderr]     Checking cranelift-frontend v0.80.1
[INFO] [stderr]     Checking cranelift-native v0.80.1
[INFO] [stderr]     Checking cranelift-wasm v0.80.1
[INFO] [stderr]     Checking wasmtime-cranelift v0.33.1
[INFO] [stderr]     Checking zstd v0.9.2+zstd.1.5.1
[INFO] [stderr]     Checking wasmthello v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(generic_const_exprs)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
[INFO] [stdout]   = note: `#[warn(incomplete_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
[INFO] [stdout]  --> src/lib.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(generic_const_exprs)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
[INFO] [stdout]   = note: `#[warn(incomplete_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(generic_const_exprs)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
[INFO] [stdout]   = note: `#[warn(incomplete_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WasmPlayer` is never constructed
[INFO] [stdout]  --> src/wasmplayer.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct WasmPlayer<const N: usize> where [(); N*N*2]: Sized {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/wasmplayer.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<const N: usize> WasmPlayer<N> where [(); N*N*2]: Sized {
[INFO] [stdout]    | ----------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 16 |     pub fn new(wasm: &[u8]) -> Result<Self, Box<dyn Error>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Player` is never used
[INFO] [stdout]  --> src/game.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum Player {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `flip` and `serialize` are never used
[INFO] [stdout]   --> src/game.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Player {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 10 |     fn flip(&self) -> Player {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn serialize(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pos` is never constructed
[INFO] [stdout]   --> src/game.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Pos(usize,usize);
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_offset` and `from_offset` are never used
[INFO] [stdout]   --> src/game.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Pos {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn to_offset(&self, board_size: usize) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn from_offset(offset: u8, board_size: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PlayerController` is never used
[INFO] [stdout]   --> src/game.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub trait PlayerController<const N: usize> {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Dir` is never used
[INFO] [stdout]   --> src/game.rs:42:6
[INFO] [stdout]    |
[INFO] [stdout] 42 | enum Dir {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `delta_pos` and `add_to_pos` are never used
[INFO] [stdout]   --> src/game.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl Dir {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] 50 |     fn delta_pos(&self) -> (isize, isize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     fn add_to_pos(&self, pos: Pos) -> Pos {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/game.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct Game<const N: usize> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/game.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout]  74 | impl <const N: usize> Game<N> {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout]  75 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn current_player(&self) -> Player {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn print(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn play(&mut self, pos: Pos) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn misplay(&mut self, player: Player) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn is_misplay(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn move_list(&self) -> &Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn serialize(&self, buf: &mut [u8]) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn skip(&mut self) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub fn game_over(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn winner(&self) -> Option<Player> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     fn positions(&self) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn legal_moves(&self, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     fn is_legal_move(&self, pos: Pos, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     fn flipped_if_placed(&self, pos: Pos, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn flipped_if_placed_dir(&self, pos: Pos, dir: Dir, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     fn is_space(&self, pos: Pos) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fn space(&self, pos: Pos) -> Option<Player> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn set(&mut self, pos: Pos, player: Player) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `generic_const_exprs` is incomplete and may not be safe to use and/or cause compiler crashes
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(generic_const_exprs)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see issue #76560 <https://github.com/rust-lang/rust/issues/76560> for more information
[INFO] [stdout]   = note: `#[warn(incomplete_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WasmPlayer` is never constructed
[INFO] [stdout]  --> src/wasmplayer.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct WasmPlayer<const N: usize> where [(); N*N*2]: Sized {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/wasmplayer.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl<const N: usize> WasmPlayer<N> where [(); N*N*2]: Sized {
[INFO] [stdout]    | ----------------------------------------------------------- associated function in this implementation
[INFO] [stdout] 16 |     pub fn new(wasm: &[u8]) -> Result<Self, Box<dyn Error>> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Player` is never used
[INFO] [stdout]  --> src/game.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub enum Player {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `flip` and `serialize` are never used
[INFO] [stdout]   --> src/game.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | impl Player {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] 10 |     fn flip(&self) -> Player {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub fn serialize(&self) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pos` is never constructed
[INFO] [stdout]   --> src/game.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Pos(usize,usize);
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_offset` and `from_offset` are never used
[INFO] [stdout]   --> src/game.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 27 | impl Pos {
[INFO] [stdout]    | -------- associated items in this implementation
[INFO] [stdout] 28 |     pub fn to_offset(&self, board_size: usize) -> u8 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn from_offset(offset: u8, board_size: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `PlayerController` is never used
[INFO] [stdout]   --> src/game.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub trait PlayerController<const N: usize> {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Dir` is never used
[INFO] [stdout]   --> src/game.rs:42:6
[INFO] [stdout]    |
[INFO] [stdout] 42 | enum Dir {
[INFO] [stdout]    |      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `delta_pos` and `add_to_pos` are never used
[INFO] [stdout]   --> src/game.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | impl Dir {
[INFO] [stdout]    | -------- methods in this implementation
[INFO] [stdout] 50 |     fn delta_pos(&self) -> (isize, isize) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 59 |     fn add_to_pos(&self, pos: Pos) -> Pos {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Game` is never constructed
[INFO] [stdout]   --> src/game.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct Game<const N: usize> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/game.rs:75:12
[INFO] [stdout]     |
[INFO] [stdout]  74 | impl <const N: usize> Game<N> {
[INFO] [stdout]     | ----------------------------- associated items in this implementation
[INFO] [stdout]  75 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn current_player(&self) -> Player {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  94 |     pub fn print(&self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn play(&mut self, pos: Pos) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 124 |     pub fn misplay(&mut self, player: Player) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub fn is_misplay(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn move_list(&self) -> &Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 136 |     pub fn serialize(&self, buf: &mut [u8]) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     pub fn skip(&mut self) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     pub fn game_over(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 159 |     pub fn winner(&self) -> Option<Player> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 176 |     fn positions(&self) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     pub fn legal_moves(&self, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 187 |     fn is_legal_move(&self, pos: Pos, player: Player) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     fn flipped_if_placed(&self, pos: Pos, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     fn flipped_if_placed_dir(&self, pos: Pos, dir: Dir, player: Player) -> Vec<Pos> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 226 |     fn is_space(&self, pos: Pos) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |     fn space(&self, pos: Pos) -> Option<Player> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 235 |     fn set(&mut self, pos: Pos, player: Player) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 45.30s
[INFO] running `Command { std: "docker" "inspect" "95af2b8015257373d7e3c38a4053a3b4210bd6db6093f875d6522bbd39901136", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "95af2b8015257373d7e3c38a4053a3b4210bd6db6093f875d6522bbd39901136", kill_on_drop: false }`
[INFO] [stdout] 95af2b8015257373d7e3c38a4053a3b4210bd6db6093f875d6522bbd39901136
