[INFO] cloning repository https://github.com/mackenziestarr/opl3 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mackenziestarr/opl3" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmackenziestarr%2Fopl3", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmackenziestarr%2Fopl3'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9ec95a8d14bdf0e7049ac534b6f33468aa10db5f [INFO] testing mackenziestarr/opl3 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-7 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmackenziestarr%2Fopl3" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-7-tc2/source/.cargo/config [INFO] started tweaking git repo https://github.com/mackenziestarr/opl3 [INFO] finished tweaking git repo https://github.com/mackenziestarr/opl3 [INFO] tweaked toml for git repo https://github.com/mackenziestarr/opl3 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/mackenziestarr/opl3 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/mackenziestarr/opl3 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" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b9f6292aa90d7b7550717169f466ba0acb559847f82ddbcc7b489616fef5ea42 [INFO] running `Command { std: "docker" "start" "-a" "b9f6292aa90d7b7550717169f466ba0acb559847f82ddbcc7b489616fef5ea42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b9f6292aa90d7b7550717169f466ba0acb559847f82ddbcc7b489616fef5ea42", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b9f6292aa90d7b7550717169f466ba0acb559847f82ddbcc7b489616fef5ea42", kill_on_drop: false }` [INFO] [stdout] b9f6292aa90d7b7550717169f466ba0acb559847f82ddbcc7b489616fef5ea42 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5b5578dcc6a3ed1b5c6238fed81a343a394340f7809a2e64900c60d4fd57dafa [INFO] running `Command { std: "docker" "start" "-a" "5b5578dcc6a3ed1b5c6238fed81a343a394340f7809a2e64900c60d4fd57dafa", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling volatile v0.2.4 [INFO] [stderr] Compiling bit_field v0.9.0 [INFO] [stderr] Compiling opl3 v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: cannot find macro `asm` in this scope [INFO] [stdout] --> src/watchdog.rs:32:13 [INFO] [stdout] | [INFO] [stdout] 32 | asm!("nop" : : : "memory"); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: consider importing this macro [INFO] [stdout] | [INFO] [stdout] 4 + use core::arch::asm; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `asm` in this scope [INFO] [stdout] --> src/watchdog.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | asm!("nop" : : : "memory"); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: consider importing this macro [INFO] [stdout] | [INFO] [stdout] 4 + use core::arch::asm; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `asm` in this scope [INFO] [stdout] --> src/opl3.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | asm!("nop" : : : "memory"); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: consider importing this macro [INFO] [stdout] | [INFO] [stdout] 1 + use core::arch::asm; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find macro `asm` in this scope [INFO] [stdout] --> src/main.rs:133:13 [INFO] [stdout] | [INFO] [stdout] 133 | asm!("nop" : : : "memory"); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] help: consider importing this macro [INFO] [stdout] | [INFO] [stdout] 8 + use core::arch::asm; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `lang_items` is internal to the compiler or standard library [INFO] [stdout] --> src/main.rs:1:12 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(lang_items,asm)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: using it is strongly discouraged [INFO] [stdout] = note: `#[warn(internal_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/main.rs:31:30 [INFO] [stdout] | [INFO] [stdout] 31 | pub static _VECTORS: [unsafe extern fn(); 2] = [ [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(missing_abi)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/main.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub extern fn panic_fmt(_info: &PanicInfo) -> ! { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/main.rs:49:1 [INFO] [stdout] | [INFO] [stdout] 49 | extern { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `extern` declarations without an explicit ABI are deprecated [INFO] [stdout] --> src/main.rs:53:1 [INFO] [stdout] | [INFO] [stdout] 53 | extern fn main() { [INFO] [stdout] | ^^^^^^ help: explicitly specify the "C" ABI: `extern "C"` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unwinding panics are not supported without std [INFO] [stdout] | [INFO] [stdout] = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding [INFO] [stdout] = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `asm` has been stable since 1.59.0 and no longer requires an attribute to enable [INFO] [stdout] --> src/main.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(lang_items,asm)] [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(stable_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: `#[panic_handler]` function has wrong type [INFO] [stdout] --> src/main.rs:44:1 [INFO] [stdout] | [INFO] [stdout] 44 | pub extern fn panic_fmt(_info: &PanicInfo) -> ! { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected "Rust" fn, found "C" fn [INFO] [stdout] | [INFO] [stdout] = note: expected signature `for<'a, 'b> fn(&'a PanicInfo<'b>) -> _` [INFO] [stdout] found signature `extern "C" for<'a, 'b> fn(&'a PanicInfo<'b>) -> _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:68:21 [INFO] [stdout] | [INFO] [stdout] 68 | self.scgc4.update(|scgc| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:63:21 [INFO] [stdout] | [INFO] [stdout] 63 | self.scgc5.update(|scgc| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:58:21 [INFO] [stdout] | [INFO] [stdout] 58 | self.scgc5.update(|scgc| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:53:21 [INFO] [stdout] | [INFO] [stdout] 53 | self.scgc5.update(|scgc| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:48:21 [INFO] [stdout] | [INFO] [stdout] 48 | self.scgc5.update(|scgc| { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/sim.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | self.clkdiv1.write(clkdiv); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/port.rs:74:39 [INFO] [stdout] | [INFO] [stdout] 74 | core::ptr::write_volatile(&mut (*self.gpio).pddr[self.pin], 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/port.rs:80:39 [INFO] [stdout] | [INFO] [stdout] 80 | core::ptr::write_volatile(&mut (*self.gpio).psor[self.pin], 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/port.rs:86:39 [INFO] [stdout] | [INFO] [stdout] 86 | core::ptr::write_volatile(&mut (*self.gpio).pcor[self.pin], 1); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0793]: reference to packed field is unaligned [INFO] [stdout] --> src/port.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | self.pcr[p].update(|pcr| { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: packed structs are only aligned by one byte, and many modern architectures penalize unaligned field accesses [INFO] [stdout] = note: creating a misaligned reference is undefined behavior (even if that reference is never dereferenced) [INFO] [stdout] = help: copy the field contents to a local variable, or replace the reference with a raw pointer and use `read_unaligned`/`write_unaligned` (loads and stores via `*p` must be properly aligned even when using raw pointers) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/port.rs:121:46 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pin_mode(&mut self, p: usize, mut mode: u32) { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:103:19 [INFO] [stdout] | [INFO] [stdout] 103 | let (mut led, mut clock, mut data) = ( [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:103:30 [INFO] [stdout] | [INFO] [stdout] 103 | let (mut led, mut clock, mut data) = ( [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:109:9 [INFO] [stdout] | [INFO] [stdout] 109 | let mut uart = unsafe { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `clock` [INFO] [stdout] --> src/main.rs:103:19 [INFO] [stdout] | [INFO] [stdout] 103 | let (mut led, mut clock, mut data) = ( [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_clock` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `data` [INFO] [stdout] --> src/main.rs:103:30 [INFO] [stdout] | [INFO] [stdout] 103 | let (mut led, mut clock, mut data) = ( [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_data` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0793. [INFO] [stdout] [INFO] [stderr] error: could not compile `opl3` (bin "opl3") due to 16 previous errors; 12 warnings emitted [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "5b5578dcc6a3ed1b5c6238fed81a343a394340f7809a2e64900c60d4fd57dafa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b5578dcc6a3ed1b5c6238fed81a343a394340f7809a2e64900c60d4fd57dafa", kill_on_drop: false }` [INFO] [stdout] 5b5578dcc6a3ed1b5c6238fed81a343a394340f7809a2e64900c60d4fd57dafa