[INFO] cloning repository https://github.com/PrattFall/oxide-gb [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/PrattFall/oxide-gb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7cf13ad16c5cd7ff28afcc28cf4795e9fd017424 [INFO] checking PrattFall/oxide-gb against master#c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c for pr-123737 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/PrattFall/oxide-gb on toolchain c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/PrattFall/oxide-gb [INFO] finished tweaking git repo https://github.com/PrattFall/oxide-gb [INFO] tweaked toml for git repo https://github.com/PrattFall/oxide-gb written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/PrattFall/oxide-gb 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" "+c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded num v0.4.1 [INFO] [stderr] Downloaded indexmap v2.0.2 [INFO] [stderr] Downloaded wayland-egl v0.29.5 [INFO] [stderr] Downloaded winnow v0.5.17 [INFO] [stderr] Downloaded num-complex v0.4.4 [INFO] [stderr] Downloaded hashbrown v0.14.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] de811f0dfabeb1c6b0cf3b91ca038f533cec85894f4d644cf8945fd6bfd43df4 [INFO] running `Command { std: "docker" "start" "-a" "de811f0dfabeb1c6b0cf3b91ca038f533cec85894f4d644cf8945fd6bfd43df4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "de811f0dfabeb1c6b0cf3b91ca038f533cec85894f4d644cf8945fd6bfd43df4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "de811f0dfabeb1c6b0cf3b91ca038f533cec85894f4d644cf8945fd6bfd43df4", kill_on_drop: false }` [INFO] [stdout] de811f0dfabeb1c6b0cf3b91ca038f533cec85894f4d644cf8945fd6bfd43df4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+c2239bca5b89a8d3573cc0fc0f2fa65c50edb79c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f30c75040565f58cf90a27260851ca7f3e742a679d657202d66ffa42cdcc0b20 [INFO] running `Command { std: "docker" "start" "-a" "f30c75040565f58cf90a27260851ca7f3e742a679d657202d66ffa42cdcc0b20", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling pkg-config v0.3.27 [INFO] [stderr] Compiling proc-macro2 v1.0.69 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Checking smallvec v1.11.1 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking cty v0.2.2 [INFO] [stderr] Compiling winit v0.26.1 [INFO] [stderr] Checking raw-window-handle v0.4.3 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Checking percent-encoding v2.3.0 [INFO] [stderr] Checking gimli v0.28.0 [INFO] [stderr] Checking libloading v0.7.4 [INFO] [stderr] Checking rustc-demangle v0.1.23 [INFO] [stderr] Checking takeable-option v0.5.0 [INFO] [stderr] Checking miniz_oxide v0.7.1 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.15.4 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking object v0.32.1 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling glutin_egl_sys v0.1.6 [INFO] [stderr] Compiling glutin_glx_sys v0.1.8 [INFO] [stderr] Compiling glium v0.31.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Checking nix v0.22.3 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Checking memmap2 v0.3.1 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Checking num-complex v0.4.4 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Compiling backtrace v0.3.69 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Checking xcursor v0.3.4 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking wayland-commons v0.29.5 [INFO] [stderr] Checking num v0.4.1 [INFO] [stderr] Checking wayland-cursor v0.29.5 [INFO] [stderr] Checking wayland-egl v0.29.5 [INFO] [stderr] Checking calloop v0.9.3 [INFO] [stderr] Checking glutin v0.28.0 [INFO] [stderr] Checking oxide-gb v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `RAM_ENABLE_VALUE` [INFO] [stdout] --> src/mbc.rs:107:22 [INFO] [stdout] | [INFO] [stdout] 107 | use super::{MBC, RAM_ENABLE_VALUE}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `num` is imported redundantly [INFO] [stdout] --> src/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use num; [INFO] [stdout] | ^^^ the item `num` is already defined by prelude [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `num` is imported redundantly [INFO] [stdout] --> src/utils.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use num; [INFO] [stdout] | ^^^ the item `num` is already defined by prelude [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ram` [INFO] [stdout] --> src/video.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ram` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tile_index` [INFO] [stdout] --> src/video.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ram` [INFO] [stdout] --> src/video.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ram` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tile_index` [INFO] [stdout] --> src/video.rs:39:33 [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tile_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cartridge_header.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct CartridgeHeader { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 92 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 93 | pub manufacturer: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | pub cartridge_type: CartridgeType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 95 | pub color_gameboy_support: ColorGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 96 | pub super_gameboy_support: SuperGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | pub rom_size_bytes: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 98 | pub ram_size: Option, [INFO] [stdout] 99 | pub destination_code: DestinationCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/lcdc.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl LCDC { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 19 | pub fn bg_and_window_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 23 | pub fn sprites_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn sprite_size(&self) -> (u8, u8) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn bg_tile_map_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn bg_and_window_tile_data_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn window_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | pub fn window_tile_map_area(&self) -> RangeInclusive { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn lcd_and_ppu_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_slice` is never used [INFO] [stdout] --> src/mbc.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl MBC { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn read_slice(&self, start: usize, end: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_mock_mbc` is never used [INFO] [stdout] --> src/mbc.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | fn get_mock_mbc() -> MBC { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `dec_mem_rr` is never used [INFO] [stdout] --> src/ops.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Ops { [INFO] [stdout] | --- method in this trait [INFO] [stdout] ... [INFO] [stdout] 86 | fn dec_mem_rr(&mut self, mbc: &mut MBC, register: CombinedRegister); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TILE_SIZE_BYTES` is never used [INFO] [stdout] --> src/tile.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const TILE_SIZE_BYTES: usize = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_ram` is never used [INFO] [stdout] --> src/tile.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl Tile { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn from_ram(lcdc: LCDC, ram: &MBC, tile_index: usize) -> Tile { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/tile_dictionary.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct TileDictionary { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 6 | tiles: [Tile; MAX_TILES] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set` is never used [INFO] [stdout] --> src/tile_dictionary.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TileDictionary { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 20 | pub fn set(&mut self, index: usize, value: Tile) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `toggle_bit` is never used [INFO] [stdout] --> src/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub trait BitWise { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 28 | fn toggle_bit(&self, bit: T, should_set: bool) -> T; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pixels` is never read [INFO] [stdout] --> src/video.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 17 | pixels: [[Pixel; BACKGROUND_SIZE]; BACKGROUND_SIZE], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/video.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Video { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 30 | tiles: TileDictionary, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `build_tile_map`, `collect_tiles`, and `compose_tiles` are never used [INFO] [stdout] --> src/video.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Video { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn collect_tiles(&mut self, lcdc: LCDC, ram: &MBC) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn compose_tiles(&self, tiles: Vec) -> Frame { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/cartridge_header.rs:92:9 [INFO] [stdout] | [INFO] [stdout] 91 | pub struct CartridgeHeader { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 92 | pub title: String, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 93 | pub manufacturer: String, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 94 | pub cartridge_type: CartridgeType, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 95 | pub color_gameboy_support: ColorGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 96 | pub super_gameboy_support: SuperGameboySupport, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 97 | pub rom_size_bytes: u32, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 98 | pub ram_size: Option, [INFO] [stdout] 99 | pub destination_code: DestinationCode, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `read_slice` is never used [INFO] [stdout] --> src/mbc.rs:99:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl MBC { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn read_slice(&self, start: usize, end: usize) -> Vec { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `dec_mem_rr` is never used [INFO] [stdout] --> src/ops.rs:86:8 [INFO] [stdout] | [INFO] [stdout] 5 | pub trait Ops { [INFO] [stdout] | --- method in this trait [INFO] [stdout] ... [INFO] [stdout] 86 | fn dec_mem_rr(&mut self, mbc: &mut MBC, register: CombinedRegister); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `TILE_SIZE_BYTES` is never used [INFO] [stdout] --> src/tile.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const TILE_SIZE_BYTES: usize = 16; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_ram` is never used [INFO] [stdout] --> src/tile.rs:93:12 [INFO] [stdout] | [INFO] [stdout] 90 | impl Tile { [INFO] [stdout] | --------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 93 | pub fn from_ram(lcdc: LCDC, ram: &MBC, tile_index: usize) -> Tile { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/tile_dictionary.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct TileDictionary { [INFO] [stdout] | -------------- field in this struct [INFO] [stdout] 6 | tiles: [Tile; MAX_TILES] [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set` is never used [INFO] [stdout] --> src/tile_dictionary.rs:20:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl TileDictionary { [INFO] [stdout] | ------------------- method in this implementation [INFO] [stdout] 20 | pub fn set(&mut self, index: usize, value: Tile) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `toggle_bit` is never used [INFO] [stdout] --> src/utils.rs:28:8 [INFO] [stdout] | [INFO] [stdout] 24 | pub trait BitWise { [INFO] [stdout] | ------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 28 | fn toggle_bit(&self, bit: T, should_set: bool) -> T; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `pixels` is never read [INFO] [stdout] --> src/video.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 17 | pixels: [[Pixel; BACKGROUND_SIZE]; BACKGROUND_SIZE], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `tiles` is never read [INFO] [stdout] --> src/video.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub struct Video { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 30 | tiles: TileDictionary, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `build_tile_map`, `collect_tiles`, and `compose_tiles` are never used [INFO] [stdout] --> src/video.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 33 | impl Video { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn collect_tiles(&mut self, lcdc: LCDC, ram: &MBC) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn compose_tiles(&self, tiles: Vec) -> Frame { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `build_vertex_buffer` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `build_vertex_buffer` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: the macro `implement_vertex` may come from an old version of the `glium` crate, try updating your dependency with `cargo update -p glium` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the macro `implement_vertex` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.78s [INFO] running `Command { std: "docker" "inspect" "f30c75040565f58cf90a27260851ca7f3e742a679d657202d66ffa42cdcc0b20", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f30c75040565f58cf90a27260851ca7f3e742a679d657202d66ffa42cdcc0b20", kill_on_drop: false }` [INFO] [stdout] f30c75040565f58cf90a27260851ca7f3e742a679d657202d66ffa42cdcc0b20