[INFO] cloning repository https://github.com/Ace314159/GBA-Emulator [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Ace314159/GBA-Emulator" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAce314159%2FGBA-Emulator", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAce314159%2FGBA-Emulator'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cb0cd1bbd273a64b27ffb65bbd384152954b17a2 [INFO] checking Ace314159/GBA-Emulator/cb0cd1bbd273a64b27ffb65bbd384152954b17a2 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAce314159%2FGBA-Emulator" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Ace314159/GBA-Emulator on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Ace314159/GBA-Emulator [INFO] finished tweaking git repo https://github.com/Ace314159/GBA-Emulator [INFO] tweaked toml for git repo https://github.com/Ace314159/GBA-Emulator written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Ace314159/GBA-Emulator 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" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1f33ed06aeeaf2361c9a93e5f42f08eb5895cb11fe9e48fc43a46d1d11d3a90c [INFO] running `Command { std: "docker" "start" "-a" "1f33ed06aeeaf2361c9a93e5f42f08eb5895cb11fe9e48fc43a46d1d11d3a90c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1f33ed06aeeaf2361c9a93e5f42f08eb5895cb11fe9e48fc43a46d1d11d3a90c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f33ed06aeeaf2361c9a93e5f42f08eb5895cb11fe9e48fc43a46d1d11d3a90c", kill_on_drop: false }` [INFO] [stdout] 1f33ed06aeeaf2361c9a93e5f42f08eb5895cb11fe9e48fc43a46d1d11d3a90c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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 -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4fb2b3d1a6285ae131a23c5a281e158c03e06eea3b58c52272dbb0ffd1ba7092 [INFO] running `Command { std: "docker" "start" "-a" "4fb2b3d1a6285ae131a23c5a281e158c03e06eea3b58c52272dbb0ffd1ba7092", kill_on_drop: false }` [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling libc v0.2.71 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling cc v1.0.54 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.31 [INFO] [stderr] Compiling pin-project-internal v0.4.22 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Compiling khronos_api v2.2.0 [INFO] [stderr] Checking futures-core v0.3.5 [INFO] [stderr] Checking futures-sink v0.3.5 [INFO] [stderr] Checking smallvec v1.4.0 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Compiling sdl2-sys v0.34.0 [INFO] [stderr] Compiling xml-rs v0.8.3 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Checking futures-channel v0.3.5 [INFO] [stderr] Compiling sdl2 v0.34.1 [INFO] [stderr] Checking futures-io v0.3.5 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking semver v0.9.0 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling indexmap v1.4.0 [INFO] [stderr] Compiling xml-rs v0.7.0 [INFO] [stderr] Compiling priority-queue v1.0.0 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling cmake v0.1.44 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking parking_lot_core v0.7.2 [INFO] [stderr] Checking raw-window-handle v0.3.3 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling imgui-sys v0.4.0 [INFO] [stderr] Checking parking_lot v0.10.2 [INFO] [stderr] Compiling gl_generator v0.9.0 [INFO] [stderr] Compiling glfw-sys v3.3.2 [INFO] [stderr] Compiling gl v0.14.0 [INFO] [stderr] Compiling imgui-opengl-renderer v0.8.0 [INFO] [stderr] Checking chrono v0.4.11 [INFO] [stderr] Checking simplelog v0.8.0 [INFO] [stderr] Checking glfw v0.38.0 [INFO] [stderr] Checking pin-project v0.4.22 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking futures v0.3.5 [INFO] [stderr] Checking flume v0.7.1 [INFO] [stderr] Checking core v0.1.0 (/opt/rustwide/workdir/core) [INFO] [stdout] warning: unused import: `components::Timer` [INFO] [stdout] --> core/src/io/apu/channel/mod.rs:2:9 [INFO] [stdout] | [INFO] [stdout] 2 | pub use components::Timer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/memory.rs:16:49 [INFO] [stdout] | [INFO] [stdout] 16 | IO::read_from_bytes(&self.rtc, &GPIO::read_register, addr - 0x080000C4) [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | IO::read_from_bytes(&self.rtc, &::read_register, addr - 0x080000C4) [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/memory.rs:39:54 [INFO] [stdout] | [INFO] [stdout] 39 | IO::write_from_bytes(&mut self.rtc, &GPIO::write_register, addr - 0x080000C4, value) [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | IO::write_from_bytes(&mut self.rtc, &::write_register, addr - 0x080000C4, value) [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking imgui v0.4.0 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/cart_backup/eeprom.rs:37:24 [INFO] [stdout] | [INFO] [stdout] 37 | self.mem = CartBackup::get_initial_mem(&self.save_file, 0, self.mem_size); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 37 | self.mem = ::get_initial_mem(&self.save_file, 0, self.mem_size); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/cart_backup/sram.rs:16:18 [INFO] [stdout] | [INFO] [stdout] 16 | mem: CartBackup::get_initial_mem(&save_file, 0, SRAM::SIZE), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | mem: ::get_initial_mem(&save_file, 0, SRAM::SIZE), [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/cart_backup/flash.rs:27:18 [INFO] [stdout] | [INFO] [stdout] 27 | mem: CartBackup::get_initial_mem(&save_file, 0xFF, size), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 27 | mem: ::get_initial_mem(&save_file, 0xFF, size), [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/cart_backup/mod.rs:38:39 [INFO] [stdout] | [INFO] [stdout] 38 | for (id_str_i, id_str) in CartBackup::ID_STRINGS.iter().enumerate() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 38 | for (id_str_i, id_str) in ::ID_STRINGS.iter().enumerate() { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/cart_backup/mod.rs:49:41 [INFO] [stdout] | [INFO] [stdout] 49 | if let Some(cart_backup_type) = CartBackup::get_type(rom) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 49 | if let Some(cart_backup_type) = ::get_type(rom) { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> core/src/io/mod.rs:75:27 [INFO] [stdout] | [INFO] [stdout] 75 | let cart_backup = CartBackup::get(&rom, save_file); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 75 | let cart_backup = ::get(&rom, save_file); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `IORegisterController` is never used [INFO] [stdout] --> core/src/io/mod.rs:236:11 [INFO] [stdout] | [INFO] [stdout] 236 | pub trait IORegisterController { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> core/src/io/mod.rs:77:10 [INFO] [stdout] | [INFO] [stdout] 68 | pub fn new(bios: Vec, rom_file: PathBuf, render_tx: Sender, keypad_rx: Receiver<(KEYINPUT, bool)>) -> [INFO] [stdout] | ------------------------------- ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 69 | (IO, Arc>>, Arc>) { [INFO] [stdout] 70 | let (ppu, pixels, debug_windows_spec) = PPU::new(render_tx); [INFO] [stdout] | --- ------ ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 75 | let cart_backup = CartBackup::get(&rom, save_file); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 76 | let rtc = RTC::new(&rom); [INFO] [stdout] 77 | (IO { [INFO] [stdout] | __________^ [INFO] [stdout] 78 | | bios, [INFO] [stdout] 79 | | ewram: vec![0; 0x40000], [INFO] [stdout] 80 | | iwram: vec![0; 0x8000], [INFO] [stdout] ... | [INFO] [stdout] 105 | | mgba_test_suite: mgba_test_suite::MGBATestSuite::new(), [INFO] [stdout] 106 | | }, pixels, debug_windows_spec) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> core/src/io/ppu/mod.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 73 | pub fn new(tx: Sender) -> (PPU, Arc>>, Arc>) { [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 74 | let pixels = Arc::new(Mutex::new(vec![0; gba::WIDTH * gba::HEIGHT])); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 75 | let display_pixels = Arc::clone(&pixels); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 76 | let debug_spec = Arc::new(Mutex::new(DebugSpecification::new())); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 77 | let debug_windows_spec = Arc::clone(&debug_spec); [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 78 | (PPU { [INFO] [stdout] | __________^ [INFO] [stdout] 79 | | // Registers [INFO] [stdout] 80 | | dispcnt: DISPCNT::new(), [INFO] [stdout] 81 | | green_swap: false, [INFO] [stdout] ... | [INFO] [stdout] 129 | | debug_spec, [INFO] [stdout] 130 | | }, display_pixels, debug_windows_spec) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> core/src/gba/mod.rs:24:10 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(rom_file: PathBuf, render_tx: Sender, keypad_rx: Receiver<(KEYINPUT, bool)>) -> [INFO] [stdout] | ------------------------------- ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 22 | let (mut io, pixels, debug_windows_spec) = [INFO] [stdout] | -- ------ ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 23 | IO::new(bios, rom_file, render_tx, keypad_rx); [INFO] [stdout] 24 | (GBA { [INFO] [stdout] | __________^ [INFO] [stdout] 25 | | cpu: CPU::new(false, &mut io), [INFO] [stdout] 26 | | io, [INFO] [stdout] 27 | | next_frame_cycle: 0, [INFO] [stdout] 28 | | }, pixels, debug_windows_spec) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors; 10 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `core` (lib) due to 4 previous errors; 10 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "4fb2b3d1a6285ae131a23c5a281e158c03e06eea3b58c52272dbb0ffd1ba7092", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fb2b3d1a6285ae131a23c5a281e158c03e06eea3b58c52272dbb0ffd1ba7092", kill_on_drop: false }` [INFO] [stdout] 4fb2b3d1a6285ae131a23c5a281e158c03e06eea3b58c52272dbb0ffd1ba7092