[INFO] cloning repository https://github.com/FaberVitale/snake-w4-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/FaberVitale/snake-w4-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFaberVitale%2Fsnake-w4-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFaberVitale%2Fsnake-w4-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 67ae3d7ce4d1847db3323b6be7e35b5ba661aa6a
[INFO] checking FaberVitale/snake-w4-rs against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FFaberVitale%2Fsnake-w4-rs" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/FaberVitale/snake-w4-rs
[INFO] finished tweaking git repo https://github.com/FaberVitale/snake-w4-rs
[INFO] tweaked toml for git repo https://github.com/FaberVitale/snake-w4-rs written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/FaberVitale/snake-w4-rs on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/FaberVitale/snake-w4-rs 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fc3750e6887b879ba61ed2f536da79b60b813a72cafc9baa74d30b9310a4152e
[INFO] running `Command { std: "docker" "start" "-a" "fc3750e6887b879ba61ed2f536da79b60b813a72cafc9baa74d30b9310a4152e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc3750e6887b879ba61ed2f536da79b60b813a72cafc9baa74d30b9310a4152e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc3750e6887b879ba61ed2f536da79b60b813a72cafc9baa74d30b9310a4152e", kill_on_drop: false }`
[INFO] [stdout] fc3750e6887b879ba61ed2f536da79b60b813a72cafc9baa74d30b9310a4152e
[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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5cb1605657b6ce21338008b330434b8a93e353d8d0e60d3e2bb829b4753ed6a7
[INFO] running `Command { std: "docker" "start" "-a" "5cb1605657b6ce21338008b330434b8a93e353d8d0e60d3e2bb829b4753ed6a7", kill_on_drop: false }`
[INFO] [stderr]     Checking buddy-alloc v0.4.1
[INFO] [stderr]     Checking fastrand v1.6.0
[INFO] [stderr]     Checking snake-w4-rs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: constant `SCREEN_SIZE` is never used
[INFO] [stdout]   --> src/wasm4.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const SCREEN_SIZE: u32 = 160;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD2` is never used
[INFO] [stdout]   --> src/wasm4.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const GAMEPAD2: *const u8 = 0x17 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD3` is never used
[INFO] [stdout]   --> src/wasm4.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const GAMEPAD3: *const u8 = 0x18 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD4` is never used
[INFO] [stdout]   --> src/wasm4.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const GAMEPAD4: *const u8 = 0x19 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_X` is never used
[INFO] [stdout]   --> src/wasm4.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const MOUSE_X: *const i16 = 0x1a as *const i16;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_Y` is never used
[INFO] [stdout]   --> src/wasm4.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const MOUSE_Y: *const i16 = 0x1c as *const i16;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_BUTTONS` is never used
[INFO] [stdout]   --> src/wasm4.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MOUSE_BUTTONS: *const u8 = 0x1e as *const u8;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FRAMEBUFFER` is never used
[INFO] [stdout]   --> src/wasm4.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub static mut FRAMEBUFFER: *mut [u8; 6400] = 0xa0 as *mut [u8; 6400];
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUTTON_1` is never used
[INFO] [stdout]   --> src/wasm4.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const BUTTON_1: u8 = 1;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUTTON_2` is never used
[INFO] [stdout]   --> src/wasm4.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const BUTTON_2: u8 = 2;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blit_sub` is never used
[INFO] [stdout]   --> src/wasm4.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn blit_sub(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_1BPP` is never used
[INFO] [stdout]   --> src/wasm4.rs:94:11
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub const BLIT_1BPP: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_FLIP_X` is never used
[INFO] [stdout]   --> src/wasm4.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub const BLIT_FLIP_X: u32 = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_FLIP_Y` is never used
[INFO] [stdout]   --> src/wasm4.rs:96:11
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub const BLIT_FLIP_Y: u32 = 4;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_ROTATE` is never used
[INFO] [stdout]   --> src/wasm4.rs:97:11
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub const BLIT_ROTATE: u32 = 8;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line` is never used
[INFO] [stdout]    --> src/wasm4.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn line(x1: i32, y1: i32, x2: i32, y2: i32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `oval` is never used
[INFO] [stdout]    --> src/wasm4.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn oval(x: i32, y: i32, width: u32, height: u32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `text` is never used
[INFO] [stdout]    --> src/wasm4.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn text<T: AsRef<str>>(text: T, x: i32, y: i32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vline` is never used
[INFO] [stdout]    --> src/wasm4.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn vline(x: i32, y: i32, len: u32) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hline` is never used
[INFO] [stdout]    --> src/wasm4.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub fn hline(x: i32, y: i32, len: u32) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tone` is never used
[INFO] [stdout]    --> src/wasm4.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn tone(frequency: u32, duration: u32, volume: u32, flags: u32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_PULSE1` is never used
[INFO] [stdout]    --> src/wasm4.rs:175:11
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub const TONE_PULSE1: u32 = 0;
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_PULSE2` is never used
[INFO] [stdout]    --> src/wasm4.rs:176:11
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub const TONE_PULSE2: u32 = 1;
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_TRIANGLE` is never used
[INFO] [stdout]    --> src/wasm4.rs:177:11
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub const TONE_TRIANGLE: u32 = 2;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_NOISE` is never used
[INFO] [stdout]    --> src/wasm4.rs:178:11
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub const TONE_NOISE: u32 = 3;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE1` is never used
[INFO] [stdout]    --> src/wasm4.rs:179:11
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub const TONE_MODE1: u32 = 0;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE2` is never used
[INFO] [stdout]    --> src/wasm4.rs:180:11
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub const TONE_MODE2: u32 = 4;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE3` is never used
[INFO] [stdout]    --> src/wasm4.rs:181:11
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub const TONE_MODE3: u32 = 8;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE4` is never used
[INFO] [stdout]    --> src/wasm4.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub const TONE_MODE4: u32 = 12;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trace` is never used
[INFO] [stdout]    --> src/wasm4.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn trace<T: AsRef<str>>(text: T) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_blit_sub` is never used
[INFO] [stdout]   --> src/wasm4.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn extern_blit_sub(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_line` is never used
[INFO] [stdout]    --> src/wasm4.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn extern_line(x1: i32, y1: i32, x2: i32, y2: i32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_oval` is never used
[INFO] [stdout]    --> src/wasm4.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn extern_oval(x: i32, y: i32, width: u32, height: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_text` is never used
[INFO] [stdout]    --> src/wasm4.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 |     fn extern_text(text: *const u8, length: usize, x: i32, y: i32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_vline` is never used
[INFO] [stdout]    --> src/wasm4.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn extern_vline(x: i32, y: i32, len: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_hline` is never used
[INFO] [stdout]    --> src/wasm4.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn extern_hline(x: i32, y: i32, len: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_tone` is never used
[INFO] [stdout]    --> src/wasm4.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn extern_tone(frequency: u32, duration: u32, volume: u32, flags: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diskr` is never used
[INFO] [stdout]    --> src/wasm4.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn diskr(dest: *mut u8, size: u32) -> u32;
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diskw` is never used
[INFO] [stdout]    --> src/wasm4.rs:195:12
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn diskw(src: *const u8, size: u32) -> u32;
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_trace` is never used
[INFO] [stdout]    --> src/wasm4.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn extern_trace(trace: *const u8, length: usize);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/alloc.rs:13:42
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let fast_param = FastAllocParam::new(FAST_HEAP.as_ptr(), FAST_HEAP_SIZE);
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/alloc.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let buddy_param = BuddyAllocParam::new(HEAP.as_ptr(), HEAP_SIZE, LEAF_SIZE);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SCREEN_SIZE` is never used
[INFO] [stdout]   --> src/wasm4.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const SCREEN_SIZE: u32 = 160;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD2` is never used
[INFO] [stdout]   --> src/wasm4.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const GAMEPAD2: *const u8 = 0x17 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD3` is never used
[INFO] [stdout]   --> src/wasm4.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const GAMEPAD3: *const u8 = 0x18 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GAMEPAD4` is never used
[INFO] [stdout]   --> src/wasm4.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const GAMEPAD4: *const u8 = 0x19 as *const u8;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_X` is never used
[INFO] [stdout]   --> src/wasm4.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const MOUSE_X: *const i16 = 0x1a as *const i16;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_Y` is never used
[INFO] [stdout]   --> src/wasm4.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const MOUSE_Y: *const i16 = 0x1c as *const i16;
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MOUSE_BUTTONS` is never used
[INFO] [stdout]   --> src/wasm4.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MOUSE_BUTTONS: *const u8 = 0x1e as *const u8;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `FRAMEBUFFER` is never used
[INFO] [stdout]   --> src/wasm4.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub static mut FRAMEBUFFER: *mut [u8; 6400] = 0xa0 as *mut [u8; 6400];
[INFO] [stdout]    |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUTTON_1` is never used
[INFO] [stdout]   --> src/wasm4.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const BUTTON_1: u8 = 1;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUTTON_2` is never used
[INFO] [stdout]   --> src/wasm4.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub const BUTTON_2: u8 = 2;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `blit_sub` is never used
[INFO] [stdout]   --> src/wasm4.rs:53:8
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub fn blit_sub(
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_1BPP` is never used
[INFO] [stdout]   --> src/wasm4.rs:94:11
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub const BLIT_1BPP: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_FLIP_X` is never used
[INFO] [stdout]   --> src/wasm4.rs:95:11
[INFO] [stdout]    |
[INFO] [stdout] 95 | pub const BLIT_FLIP_X: u32 = 2;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_FLIP_Y` is never used
[INFO] [stdout]   --> src/wasm4.rs:96:11
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub const BLIT_FLIP_Y: u32 = 4;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BLIT_ROTATE` is never used
[INFO] [stdout]   --> src/wasm4.rs:97:11
[INFO] [stdout]    |
[INFO] [stdout] 97 | pub const BLIT_ROTATE: u32 = 8;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line` is never used
[INFO] [stdout]    --> src/wasm4.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn line(x1: i32, y1: i32, x2: i32, y2: i32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `oval` is never used
[INFO] [stdout]    --> src/wasm4.rs:109:8
[INFO] [stdout]     |
[INFO] [stdout] 109 | pub fn oval(x: i32, y: i32, width: u32, height: u32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `text` is never used
[INFO] [stdout]    --> src/wasm4.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn text<T: AsRef<str>>(text: T, x: i32, y: i32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vline` is never used
[INFO] [stdout]    --> src/wasm4.rs:137:8
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub fn vline(x: i32, y: i32, len: u32) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hline` is never used
[INFO] [stdout]    --> src/wasm4.rs:149:8
[INFO] [stdout]     |
[INFO] [stdout] 149 | pub fn hline(x: i32, y: i32, len: u32) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `tone` is never used
[INFO] [stdout]    --> src/wasm4.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn tone(frequency: u32, duration: u32, volume: u32, flags: u32) {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_PULSE1` is never used
[INFO] [stdout]    --> src/wasm4.rs:175:11
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub const TONE_PULSE1: u32 = 0;
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_PULSE2` is never used
[INFO] [stdout]    --> src/wasm4.rs:176:11
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub const TONE_PULSE2: u32 = 1;
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_TRIANGLE` is never used
[INFO] [stdout]    --> src/wasm4.rs:177:11
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub const TONE_TRIANGLE: u32 = 2;
[INFO] [stdout]     |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_NOISE` is never used
[INFO] [stdout]    --> src/wasm4.rs:178:11
[INFO] [stdout]     |
[INFO] [stdout] 178 | pub const TONE_NOISE: u32 = 3;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE1` is never used
[INFO] [stdout]    --> src/wasm4.rs:179:11
[INFO] [stdout]     |
[INFO] [stdout] 179 | pub const TONE_MODE1: u32 = 0;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE2` is never used
[INFO] [stdout]    --> src/wasm4.rs:180:11
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub const TONE_MODE2: u32 = 4;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE3` is never used
[INFO] [stdout]    --> src/wasm4.rs:181:11
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub const TONE_MODE3: u32 = 8;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TONE_MODE4` is never used
[INFO] [stdout]    --> src/wasm4.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 | pub const TONE_MODE4: u32 = 12;
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `trace` is never used
[INFO] [stdout]    --> src/wasm4.rs:205:8
[INFO] [stdout]     |
[INFO] [stdout] 205 | pub fn trace<T: AsRef<str>>(text: T) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_blit_sub` is never used
[INFO] [stdout]   --> src/wasm4.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn extern_blit_sub(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_line` is never used
[INFO] [stdout]    --> src/wasm4.rs:105:8
[INFO] [stdout]     |
[INFO] [stdout] 105 |     fn extern_line(x1: i32, y1: i32, x2: i32, y2: i32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_oval` is never used
[INFO] [stdout]    --> src/wasm4.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 |     fn extern_oval(x: i32, y: i32, width: u32, height: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_text` is never used
[INFO] [stdout]    --> src/wasm4.rs:133:8
[INFO] [stdout]     |
[INFO] [stdout] 133 |     fn extern_text(text: *const u8, length: usize, x: i32, y: i32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_vline` is never used
[INFO] [stdout]    --> src/wasm4.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn extern_vline(x: i32, y: i32, len: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_hline` is never used
[INFO] [stdout]    --> src/wasm4.rs:157:8
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn extern_hline(x: i32, y: i32, len: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_tone` is never used
[INFO] [stdout]    --> src/wasm4.rs:172:8
[INFO] [stdout]     |
[INFO] [stdout] 172 |     fn extern_tone(frequency: u32, duration: u32, volume: u32, flags: u32);
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diskr` is never used
[INFO] [stdout]    --> src/wasm4.rs:192:12
[INFO] [stdout]     |
[INFO] [stdout] 192 |     pub fn diskr(dest: *mut u8, size: u32) -> u32;
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diskw` is never used
[INFO] [stdout]    --> src/wasm4.rs:195:12
[INFO] [stdout]     |
[INFO] [stdout] 195 |     pub fn diskw(src: *const u8, size: u32) -> u32;
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `extern_trace` is never used
[INFO] [stdout]    --> src/wasm4.rs:211:8
[INFO] [stdout]     |
[INFO] [stdout] 211 |     fn extern_trace(trace: *const u8, length: usize);
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/alloc.rs:13:42
[INFO] [stdout]    |
[INFO] [stdout] 13 |     let fast_param = FastAllocParam::new(FAST_HEAP.as_ptr(), FAST_HEAP_SIZE);
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a shared reference to mutable static
[INFO] [stdout]   --> src/alloc.rs:14:44
[INFO] [stdout]    |
[INFO] [stdout] 14 |     let buddy_param = BuddyAllocParam::new(HEAP.as_ptr(), HEAP_SIZE, LEAF_SIZE);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^ shared reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.44s
[INFO] running `Command { std: "docker" "inspect" "5cb1605657b6ce21338008b330434b8a93e353d8d0e60d3e2bb829b4753ed6a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5cb1605657b6ce21338008b330434b8a93e353d8d0e60d3e2bb829b4753ed6a7", kill_on_drop: false }`
[INFO] [stdout] 5cb1605657b6ce21338008b330434b8a93e353d8d0e60d3e2bb829b4753ed6a7
