[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#84e729a59f216cc64755788a470f165429a731f4 for pr-123737-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/PrattFall/oxide-gb on toolchain 84e729a59f216cc64755788a470f165429a731f4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "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-3-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" "+84e729a59f216cc64755788a470f165429a731f4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded num v0.4.1 [INFO] [stderr] Downloaded takeable-option v0.5.0 [INFO] [stderr] Downloaded num-iter v0.1.43 [INFO] [stderr] Downloaded hashbrown v0.14.2 [INFO] [stderr] Downloaded glutin v0.28.0 [INFO] [stderr] Downloaded indexmap v2.0.2 [INFO] [stderr] Downloaded gimli v0.28.0 [INFO] [stderr] Downloaded winnow v0.5.17 [INFO] [stderr] Downloaded glium v0.31.0 [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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] beced1dfe712c768e6a84fe19a68379ff45d8aea10fc7b2f96da2c705b403496 [INFO] running `Command { std: "docker" "start" "-a" "beced1dfe712c768e6a84fe19a68379ff45d8aea10fc7b2f96da2c705b403496", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "beced1dfe712c768e6a84fe19a68379ff45d8aea10fc7b2f96da2c705b403496", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "beced1dfe712c768e6a84fe19a68379ff45d8aea10fc7b2f96da2c705b403496", kill_on_drop: false }` [INFO] [stdout] beced1dfe712c768e6a84fe19a68379ff45d8aea10fc7b2f96da2c705b403496 [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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+84e729a59f216cc64755788a470f165429a731f4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d0f285e3b31187a95309407eaff6013e0424e23a62ddf53b04359254ad28ac14 [INFO] running `Command { std: "docker" "start" "-a" "d0f285e3b31187a95309407eaff6013e0424e23a62ddf53b04359254ad28ac14", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling xml-rs v0.8.19 [INFO] [stderr] Compiling pkg-config v0.3.27 [INFO] [stderr] Compiling proc-macro2 v1.0.69 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking smallvec v1.11.1 [INFO] [stderr] Checking once_cell v1.18.0 [INFO] [stderr] Compiling log v0.4.20 [INFO] [stderr] Checking memchr v2.6.4 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Checking libloading v0.8.1 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Checking cty v0.2.2 [INFO] [stderr] Compiling winit v0.26.1 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Checking raw-window-handle v0.4.3 [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 miniz_oxide v0.7.1 [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] 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] Checking nom v7.1.3 [INFO] [stderr] Checking object v0.32.1 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Checking num-complex v0.4.4 [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] Checking nix v0.24.3 [INFO] [stderr] Checking nix v0.22.3 [INFO] [stderr] Checking memmap2 v0.3.1 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking shared_library v0.1.9 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking osmesa-sys v0.1.2 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Compiling backtrace v0.3.69 [INFO] [stderr] Checking xcursor v0.3.4 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking num v0.4.1 [INFO] [stderr] Checking wayland-commons v0.29.5 [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: 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: 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: 17 warnings emitted [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: 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: 14 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 00s [INFO] running `Command { std: "docker" "inspect" "d0f285e3b31187a95309407eaff6013e0424e23a62ddf53b04359254ad28ac14", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d0f285e3b31187a95309407eaff6013e0424e23a62ddf53b04359254ad28ac14", kill_on_drop: false }` [INFO] [stdout] d0f285e3b31187a95309407eaff6013e0424e23a62ddf53b04359254ad28ac14