[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] building PrattFall/oxide-gb against master#c7f6aa2869acdbf014d094c6e427e554e160b6db for pr-146237-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPrattFall%2Foxide-gb" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [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-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/PrattFall/oxide-gb on toolchain c7f6aa2869acdbf014d094c6e427e554e160b6db [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ndk-glue v0.5.2 [INFO] [stderr] Downloaded wayland-egl v0.29.5 [INFO] [stderr] Downloaded memmap2 v0.3.1 [INFO] [stderr] Downloaded thiserror-impl v1.0.50 [INFO] [stderr] Downloaded thiserror v1.0.50 [INFO] [stderr] Downloaded num-complex v0.4.4 [INFO] [stderr] Downloaded calloop v0.9.3 [INFO] [stderr] Downloaded glutin v0.28.0 [INFO] [stderr] Downloaded num v0.4.1 [INFO] [stderr] Downloaded smithay-client-toolkit v0.15.4 [INFO] [stderr] Downloaded ndk v0.5.0 [INFO] [stderr] Downloaded hashbrown v0.14.2 [INFO] [stderr] Downloaded winnow v0.5.17 [INFO] [stderr] Downloaded nix v0.22.3 [INFO] [stderr] Downloaded winit v0.26.1 [INFO] [stderr] Downloaded glium v0.31.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0dc87d6f58133f50772d48c76fa30986e56f67bd1c83c9be2e507425abeef282 [INFO] running `Command { std: "docker" "start" "-a" "0dc87d6f58133f50772d48c76fa30986e56f67bd1c83c9be2e507425abeef282", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0dc87d6f58133f50772d48c76fa30986e56f67bd1c83c9be2e507425abeef282", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0dc87d6f58133f50772d48c76fa30986e56f67bd1c83c9be2e507425abeef282", kill_on_drop: false }` [INFO] [stdout] 0dc87d6f58133f50772d48c76fa30986e56f67bd1c83c9be2e507425abeef282 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ce2b93a053ec918db62b04ed7ad7aea7d7e090b7073c377260d806a6cdd6d0d6 [INFO] running `Command { std: "docker" "start" "-a" "ce2b93a053ec918db62b04ed7ad7aea7d7e090b7073c377260d806a6cdd6d0d6", 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 log v0.4.20 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Compiling memchr v2.6.4 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling libloading v0.8.1 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling cty v0.2.2 [INFO] [stderr] Compiling winit v0.26.1 [INFO] [stderr] Compiling raw-window-handle v0.4.3 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num-iter v0.1.43 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling percent-encoding v2.3.0 [INFO] [stderr] Compiling gimli v0.28.0 [INFO] [stderr] Compiling miniz_oxide v0.7.1 [INFO] [stderr] Compiling rustc-demangle v0.1.23 [INFO] [stderr] Compiling 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] Compiling nom v7.1.3 [INFO] [stderr] Compiling object v0.32.1 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling glutin_glx_sys v0.1.8 [INFO] [stderr] Compiling glutin_egl_sys v0.1.6 [INFO] [stderr] Compiling glium v0.31.0 [INFO] [stderr] Compiling nix v0.24.3 [INFO] [stderr] Compiling nix v0.22.3 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling memmap2 v0.3.1 [INFO] [stderr] Compiling shared_library v0.1.9 [INFO] [stderr] Compiling mio v0.8.8 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling num-complex v0.4.4 [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] Compiling xcursor v0.3.4 [INFO] [stderr] Compiling addr2line v0.21.0 [INFO] [stderr] Compiling wayland-commons v0.29.5 [INFO] [stderr] Compiling num v0.4.1 [INFO] [stderr] Compiling calloop v0.9.3 [INFO] [stderr] Compiling wayland-cursor v0.29.5 [INFO] [stderr] Compiling wayland-egl v0.29.5 [INFO] [stderr] Compiling glutin v0.28.0 [INFO] [stderr] Compiling 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)]` (part of `#[warn(unused)]`) 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)]` (part of `#[warn(unused)]`) 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] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, _tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `SCREEN_WIDTH` [INFO] [stdout] | [INFO] [stdout] 39 - fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] 39 + fn build_tile_map(ram: MBC, video::SCREEN_WIDTH: u8) -> (Vec, Vec) { [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)]` (part of `#[warn(unused)]`) 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: constant `BACKGROUND_SIZE` is never used [INFO] [stdout] --> src/video.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const BACKGROUND_SIZE: usize = 256; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VideoBackground` is never constructed [INFO] [stdout] --> src/video.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [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, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | fn build_vertex_buffer(display: &glium::Display) -> glium::VertexBuffer { [INFO] [stdout] | ------------------------------------------------------------------------------- move the `impl` block outside of this function `build_vertex_buffer` [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 26s [INFO] running `Command { std: "docker" "inspect" "ce2b93a053ec918db62b04ed7ad7aea7d7e090b7073c377260d806a6cdd6d0d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ce2b93a053ec918db62b04ed7ad7aea7d7e090b7073c377260d806a6cdd6d0d6", kill_on_drop: false }` [INFO] [stdout] ce2b93a053ec918db62b04ed7ad7aea7d7e090b7073c377260d806a6cdd6d0d6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 52d97036921951ea3c6ecc23c02401beb35fd49c897adbb465dde0038c4dc2fb [INFO] running `Command { std: "docker" "start" "-a" "52d97036921951ea3c6ecc23c02401beb35fd49c897adbb465dde0038c4dc2fb", kill_on_drop: false }` [INFO] [stderr] Compiling oxide-gb v0.1.0 (/opt/rustwide/workdir) [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)]` (part of `#[warn(unused)]`) 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] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is intentional, prefix it with an underscore [INFO] [stdout] | [INFO] [stdout] 39 | fn build_tile_map(ram: MBC, _tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] | + [INFO] [stdout] help: you might have meant to pattern match on the similarly named constant `SCREEN_WIDTH` [INFO] [stdout] | [INFO] [stdout] 39 - fn build_tile_map(ram: MBC, tile_index: u8) -> (Vec, Vec) { [INFO] [stdout] 39 + fn build_tile_map(ram: MBC, video::SCREEN_WIDTH: u8) -> (Vec, Vec) { [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)]` (part of `#[warn(unused)]`) 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: constant `BACKGROUND_SIZE` is never used [INFO] [stdout] --> src/video.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | pub const BACKGROUND_SIZE: usize = 256; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VideoBackground` is never constructed [INFO] [stdout] --> src/video.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 16 | pub struct VideoBackground { [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, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/render_opengl.rs:73:5 [INFO] [stdout] | [INFO] [stdout] 72 | fn build_vertex_buffer(display: &glium::Display) -> glium::VertexBuffer { [INFO] [stdout] | ------------------------------------------------------------------------------- move the `impl` block outside of this function `build_vertex_buffer` [INFO] [stdout] 73 | implement_vertex!(Vertex, position, tex_coords); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | `Vertex` is not local [INFO] [stdout] | [INFO] [stdout] = note: the macro `implement_vertex` defines the non-local `impl`, and may need to be changed [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: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.31s [INFO] running `Command { std: "docker" "inspect" "52d97036921951ea3c6ecc23c02401beb35fd49c897adbb465dde0038c4dc2fb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "52d97036921951ea3c6ecc23c02401beb35fd49c897adbb465dde0038c4dc2fb", kill_on_drop: false }` [INFO] [stdout] 52d97036921951ea3c6ecc23c02401beb35fd49c897adbb465dde0038c4dc2fb