[INFO] cloning repository https://github.com/WisterToub/chip8dynarec [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/WisterToub/chip8dynarec" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWisterToub%2Fchip8dynarec", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWisterToub%2Fchip8dynarec'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a7c091c19a12ad3274e7c1b7e10e3057de7494fc [INFO] checking WisterToub/chip8dynarec against try#7b3565da729099dbe807466fcd118fb2815986e0 for pr-81789 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWisterToub%2Fchip8dynarec" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/WisterToub/chip8dynarec on toolchain 7b3565da729099dbe807466fcd118fb2815986e0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7b3565da729099dbe807466fcd118fb2815986e0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/WisterToub/chip8dynarec [INFO] finished tweaking git repo https://github.com/WisterToub/chip8dynarec [INFO] tweaked toml for git repo https://github.com/WisterToub/chip8dynarec written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/WisterToub/chip8dynarec already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+7b3565da729099dbe807466fcd118fb2815986e0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+7b3565da729099dbe807466fcd118fb2815986e0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 044bbaffe2b425ead6891ee90ad9b48d6866c03ef470630702bac2fe131168f1 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "044bbaffe2b425ead6891ee90ad9b48d6866c03ef470630702bac2fe131168f1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "044bbaffe2b425ead6891ee90ad9b48d6866c03ef470630702bac2fe131168f1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "044bbaffe2b425ead6891ee90ad9b48d6866c03ef470630702bac2fe131168f1", kill_on_drop: false }` [INFO] [stdout] 044bbaffe2b425ead6891ee90ad9b48d6866c03ef470630702bac2fe131168f1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+7b3565da729099dbe807466fcd118fb2815986e0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 2ab0d89c95236536d1d49c08281a7a1ecaba8a1f5d9c74d262821de1743ef4df [INFO] running `Command { std: "docker" "start" "-a" "2ab0d89c95236536d1d49c08281a7a1ecaba8a1f5d9c74d262821de1743ef4df", kill_on_drop: false }` [INFO] [stderr] Checking bitflags v0.7.0 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Checking rand v0.4.3 [INFO] [stderr] Checking memmap v0.5.2 [INFO] [stderr] Checking sdl2-sys v0.30.0 [INFO] [stderr] Checking num-iter v0.1.37 [INFO] [stderr] Checking num v0.1.42 [INFO] [stderr] Checking rand v0.3.22 [INFO] [stderr] Checking sdl2 v0.30.0 [INFO] [stderr] Checking chip8dynarec v1.0.0 (/opt/rustwide/workdir) [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | code_emitter.push_imm32(chip8 as *const Chip8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `chip8 as *const Chip8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(invalid_ptr_to_int_cast)]` on by default [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:26:31 [INFO] [stdout] | [INFO] [stdout] 26 | code_emitter.mov_imm_to_eax(Chip8::refresh as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Chip8::refresh as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 46 | code_emitter.push_imm32(&chip8.display as *const Display as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.display as *const Display as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | code_emitter.mov_imm_to_eax(Display::clear as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Display::clear as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:54:34 [INFO] [stdout] | [INFO] [stdout] 54 | code_emitter.mov_imm_to_edi(&chip8.stack[0] as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.stack[0] as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | code_emitter.mov_imm_to_edi(&self.code_cache.x86_block_addresses[0] as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&self.code_cache.x86_block_addresses[0] as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:74:34 [INFO] [stdout] | [INFO] [stdout] 74 | code_emitter.mov_imm_to_edi(&chip8.stack[0] as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.stack[0] as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:201:34 [INFO] [stdout] | [INFO] [stdout] 201 | code_emitter.mov_imm_to_edi(&self.code_cache.x86_block_addresses[0] as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&self.code_cache.x86_block_addresses[0] as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:214:34 [INFO] [stdout] | [INFO] [stdout] 214 | code_emitter.add_imm_to_eax(&chip8.memory[0] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[0] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:220:30 [INFO] [stdout] | [INFO] [stdout] 220 | code_emitter.push_imm32(&chip8.display as *const Display as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.display as *const Display as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:221:34 [INFO] [stdout] | [INFO] [stdout] 221 | code_emitter.mov_imm_to_eax(Display::draw_sprite as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Display::draw_sprite as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:229:30 [INFO] [stdout] | [INFO] [stdout] 229 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:230:34 [INFO] [stdout] | [INFO] [stdout] 230 | code_emitter.mov_imm_to_eax(Keyboard::is_pressed as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::is_pressed as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:248:30 [INFO] [stdout] | [INFO] [stdout] 248 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:249:34 [INFO] [stdout] | [INFO] [stdout] 249 | code_emitter.mov_imm_to_eax(Keyboard::is_pressed as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::is_pressed as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:268:30 [INFO] [stdout] | [INFO] [stdout] 268 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:269:34 [INFO] [stdout] | [INFO] [stdout] 269 | code_emitter.mov_imm_to_eax(Keyboard::wait_key_press as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::wait_key_press as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:295:34 [INFO] [stdout] | [INFO] [stdout] 295 | code_emitter.mov_imm_to_edi(&chip8.memory[0] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[0] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:300:34 [INFO] [stdout] | [INFO] [stdout] 300 | code_emitter.mov_imm_to_edi(&chip8.memory[1] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[1] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:302:34 [INFO] [stdout] | [INFO] [stdout] 302 | code_emitter.mov_imm_to_edi(&chip8.memory[2] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[2] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:309:35 [INFO] [stdout] | [INFO] [stdout] 309 | code_emitter.mov_imm_to_edi(&chip8.memory[i] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[i] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:317:35 [INFO] [stdout] | [INFO] [stdout] 317 | code_emitter.mov_imm_to_edi(&chip8.memory[i] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[i] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:25:27 [INFO] [stdout] | [INFO] [stdout] 25 | code_emitter.push_imm32(chip8 as *const Chip8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `chip8 as *const Chip8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = note: `#[deny(invalid_ptr_to_int_cast)]` on by default [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:26:31 [INFO] [stdout] | [INFO] [stdout] 26 | code_emitter.mov_imm_to_eax(Chip8::refresh as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Chip8::refresh as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:108:17 [INFO] [stdout] | [INFO] [stdout] 108 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:114:17 [INFO] [stdout] | [INFO] [stdout] 114 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | self.push_u32(m as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:221:17 [INFO] [stdout] | [INFO] [stdout] 221 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:254:17 [INFO] [stdout] | [INFO] [stdout] 254 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:268:17 [INFO] [stdout] | [INFO] [stdout] 268 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:276:17 [INFO] [stdout] | [INFO] [stdout] 276 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:290:17 [INFO] [stdout] | [INFO] [stdout] 290 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:304:17 [INFO] [stdout] | [INFO] [stdout] 304 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:310:17 [INFO] [stdout] | [INFO] [stdout] 310 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:337:17 [INFO] [stdout] | [INFO] [stdout] 337 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:46:30 [INFO] [stdout] | [INFO] [stdout] 46 | code_emitter.push_imm32(&chip8.display as *const Display as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.display as *const Display as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:344:17 [INFO] [stdout] | [INFO] [stdout] 344 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:47:34 [INFO] [stdout] | [INFO] [stdout] 47 | code_emitter.mov_imm_to_eax(Display::clear as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Display::clear as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:361:17 [INFO] [stdout] | [INFO] [stdout] 361 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:54:34 [INFO] [stdout] | [INFO] [stdout] 54 | code_emitter.mov_imm_to_edi(&chip8.stack[0] as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.stack[0] as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:367:17 [INFO] [stdout] | [INFO] [stdout] 367 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:374:17 [INFO] [stdout] | [INFO] [stdout] 374 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:58:34 [INFO] [stdout] | [INFO] [stdout] 58 | code_emitter.mov_imm_to_edi(&self.code_cache.x86_block_addresses[0] as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&self.code_cache.x86_block_addresses[0] as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:74:34 [INFO] [stdout] | [INFO] [stdout] 74 | code_emitter.mov_imm_to_edi(&chip8.stack[0] as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.stack[0] as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:201:34 [INFO] [stdout] | [INFO] [stdout] 201 | code_emitter.mov_imm_to_edi(&self.code_cache.x86_block_addresses[0] as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&self.code_cache.x86_block_addresses[0] as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:214:34 [INFO] [stdout] | [INFO] [stdout] 214 | code_emitter.add_imm_to_eax(&chip8.memory[0] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[0] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:220:30 [INFO] [stdout] | [INFO] [stdout] 220 | code_emitter.push_imm32(&chip8.display as *const Display as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.display as *const Display as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:221:34 [INFO] [stdout] | [INFO] [stdout] 221 | code_emitter.mov_imm_to_eax(Display::draw_sprite as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Display::draw_sprite as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:229:30 [INFO] [stdout] | [INFO] [stdout] 229 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:230:34 [INFO] [stdout] | [INFO] [stdout] 230 | code_emitter.mov_imm_to_eax(Keyboard::is_pressed as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::is_pressed as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:248:30 [INFO] [stdout] | [INFO] [stdout] 248 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:249:34 [INFO] [stdout] | [INFO] [stdout] 249 | code_emitter.mov_imm_to_eax(Keyboard::is_pressed as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::is_pressed as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:268:30 [INFO] [stdout] | [INFO] [stdout] 268 | code_emitter.push_imm32(&chip8.keyboard as *const Keyboard as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.keyboard as *const Keyboard as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:269:34 [INFO] [stdout] | [INFO] [stdout] 269 | code_emitter.mov_imm_to_eax(Keyboard::wait_key_press as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `Keyboard::wait_key_press as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codecache.rs:45:49 [INFO] [stdout] | [INFO] [stdout] 45 | self.x86_block_addresses[address as usize] = self.cache.ptr().offset(self.cache_size as isize) as u32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `self.cache.ptr().offset(self.cache_size as isize) as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:295:34 [INFO] [stdout] | [INFO] [stdout] 295 | code_emitter.mov_imm_to_edi(&chip8.memory[0] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[0] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:300:34 [INFO] [stdout] | [INFO] [stdout] 300 | code_emitter.mov_imm_to_edi(&chip8.memory[1] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[1] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:302:34 [INFO] [stdout] | [INFO] [stdout] 302 | code_emitter.mov_imm_to_edi(&chip8.memory[2] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[2] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:309:35 [INFO] [stdout] | [INFO] [stdout] 309 | code_emitter.mov_imm_to_edi(&chip8.memory[i] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[i] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/recompiler.rs:317:35 [INFO] [stdout] | [INFO] [stdout] 317 | code_emitter.mov_imm_to_edi(&chip8.memory[i] as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `&chip8.memory[i] as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 49 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:60:17 [INFO] [stdout] | [INFO] [stdout] 60 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:68:17 [INFO] [stdout] | [INFO] [stdout] 68 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:86:17 [INFO] [stdout] | [INFO] [stdout] 86 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:108:17 [INFO] [stdout] | [INFO] [stdout] 108 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:114:17 [INFO] [stdout] | [INFO] [stdout] 114 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:171:17 [INFO] [stdout] | [INFO] [stdout] 171 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:191:17 [INFO] [stdout] | [INFO] [stdout] 191 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:196:17 [INFO] [stdout] | [INFO] [stdout] 196 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 208 | self.push_u32(m as *const u32 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u32 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:221:17 [INFO] [stdout] | [INFO] [stdout] 221 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:229:17 [INFO] [stdout] | [INFO] [stdout] 229 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `chip8dynarec` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:254:17 [INFO] [stdout] | [INFO] [stdout] 254 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:268:17 [INFO] [stdout] | [INFO] [stdout] 268 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:276:17 [INFO] [stdout] | [INFO] [stdout] 276 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:283:17 [INFO] [stdout] | [INFO] [stdout] 283 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:290:17 [INFO] [stdout] | [INFO] [stdout] 290 | self.push_u32(m as *const u16 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u16 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:304:17 [INFO] [stdout] | [INFO] [stdout] 304 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:310:17 [INFO] [stdout] | [INFO] [stdout] 310 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:337:17 [INFO] [stdout] | [INFO] [stdout] 337 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:344:17 [INFO] [stdout] | [INFO] [stdout] 344 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:361:17 [INFO] [stdout] | [INFO] [stdout] 361 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:367:17 [INFO] [stdout] | [INFO] [stdout] 367 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codeemitter.rs:374:17 [INFO] [stdout] | [INFO] [stdout] 374 | self.push_u32(m as *const u8 as u32); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `m as *const u8 as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: casting pointer to `u32` [INFO] [stdout] --> src/chip8/codecache.rs:45:49 [INFO] [stdout] | [INFO] [stdout] 45 | self.x86_block_addresses[address as usize] = self.cache.ptr().offset(self.cache_size as isize) as u32; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: to cast to `u32`, cast to `usize` first: `self.cache.ptr().offset(self.cache_size as isize) as usize as u32` [INFO] [stdout] | [INFO] [stdout] = help: pointers should only be cast to `usize` or `u64` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 49 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "2ab0d89c95236536d1d49c08281a7a1ecaba8a1f5d9c74d262821de1743ef4df", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2ab0d89c95236536d1d49c08281a7a1ecaba8a1f5d9c74d262821de1743ef4df", kill_on_drop: false }` [INFO] [stdout] 2ab0d89c95236536d1d49c08281a7a1ecaba8a1f5d9c74d262821de1743ef4df