[INFO] fetching crate pca9535 1.0.0... [INFO] testing pca9535-1.0.0 against 1.60.0 for beta-1.61-1 [INFO] extracting crate pca9535 1.0.0 into /workspace/builds/worker-21/source [INFO] validating manifest of crates.io crate pca9535 1.0.0 on toolchain 1.60.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-21/source/.cargo/config.toml [INFO] started tweaking crates.io crate pca9535 1.0.0 [INFO] finished tweaking crates.io crate pca9535 1.0.0 [INFO] tweaked toml for crates.io crate pca9535 1.0.0 written to /workspace/builds/worker-21/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.60.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serial_test_derive v0.6.0 [INFO] [stderr] Downloaded serial_test v0.6.0 [INFO] [stderr] Downloaded embedded-hal v1.0.0-alpha.5 [INFO] [stderr] Downloaded spin_sleep v1.1.1 [INFO] [stderr] Downloaded rppal v0.13.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3982d6e8943cb6764e7cdc28c79bbed851076a4e098fcdca2c85e87b8538840f [INFO] running `Command { std: "docker" "start" "-a" "3982d6e8943cb6764e7cdc28c79bbed851076a4e098fcdca2c85e87b8538840f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3982d6e8943cb6764e7cdc28c79bbed851076a4e098fcdca2c85e87b8538840f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3982d6e8943cb6764e7cdc28c79bbed851076a4e098fcdca2c85e87b8538840f", kill_on_drop: false }` [INFO] [stdout] 3982d6e8943cb6764e7cdc28c79bbed851076a4e098fcdca2c85e87b8538840f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3c566fe0ec23c82829f00dfcb5b0abacc39b03a89542a9a2973ebda2579026d3 [INFO] running `Command { std: "docker" "start" "-a" "3c566fe0ec23c82829f00dfcb5b0abacc39b03a89542a9a2973ebda2579026d3", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling nb v1.0.0 [INFO] [stderr] Compiling embedded-hal v1.0.0-alpha.5 [INFO] [stderr] Compiling pca9535 v1.0.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.17s [INFO] running `Command { std: "docker" "inspect" "3c566fe0ec23c82829f00dfcb5b0abacc39b03a89542a9a2973ebda2579026d3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3c566fe0ec23c82829f00dfcb5b0abacc39b03a89542a9a2973ebda2579026d3", kill_on_drop: false }` [INFO] [stdout] 3c566fe0ec23c82829f00dfcb5b0abacc39b03a89542a9a2973ebda2579026d3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-21/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=warn" "-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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+1.60.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bc26aa50e24cbb37e91e2d9aa1a6a8476da6a3f8f6f02fa0536e945a9de388f7 [INFO] running `Command { std: "docker" "start" "-a" "bc26aa50e24cbb37e91e2d9aa1a6a8476da6a3f8f6f02fa0536e945a9de388f7", kill_on_drop: false }` [INFO] [stderr] Compiling syn v1.0.91 [INFO] [stderr] Compiling rustversion v1.0.6 [INFO] [stderr] Compiling parking_lot_core v0.8.5 [INFO] [stderr] Compiling smallvec v1.8.0 [INFO] [stderr] Compiling void v1.0.2 [INFO] [stderr] Compiling spin_sleep v1.1.1 [INFO] [stderr] Compiling lock_api v0.4.7 [INFO] [stderr] Compiling instant v0.1.12 [INFO] [stderr] Compiling nb v0.1.3 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling embedded-hal v0.2.7 [INFO] [stderr] Compiling rppal v0.13.1 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling serial_test_derive v0.6.0 [INFO] [stderr] Compiling serial_test v0.6.0 [INFO] [stderr] Compiling pca9535 v1.0.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0463]: can't find crate for `shared_bus` [INFO] [stdout] --> tests/common/mod.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate shared_bus; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `shared_bus` [INFO] [stdout] --> tests/common/mod.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate shared_bus; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `I2cProxy` in this scope [INFO] [stdout] --> tests/common/mod.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | pub type ShareableI2c = I2cProxy<'static, Mutex>; [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `I2cProxy` in this scope [INFO] [stdout] --> tests/common/mod.rs:19:25 [INFO] [stdout] | [INFO] [stdout] 19 | pub type ShareableI2c = I2cProxy<'static, Mutex>; [INFO] [stdout] | ^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `BusManager` in this scope [INFO] [stdout] --> tests/common/mod.rs:22:44 [INFO] [stdout] | [INFO] [stdout] 22 | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `BusManager` in this scope [INFO] [stdout] --> tests/common/mod.rs:22:44 [INFO] [stdout] | [INFO] [stdout] 22 | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] | ^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `I2C_BUS` in the current scope [INFO] [stdout] --> tests/immediate.rs:14:32 [INFO] [stdout] | [INFO] [stdout] 14 | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `I2C_BUS` [INFO] [stdout] | [INFO] [stdout] ::: tests/common/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | / lazy_static! { [INFO] [stdout] 22 | | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] 23 | | let i2c = I2c::new().unwrap(); [INFO] [stdout] 24 | | let i2c_bus: &'static _ = shared_bus::new_std!(I2c = i2c).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 46 | | }; [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:23:35 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 23 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:44:35 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 44 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:76:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 76 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:90:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 90 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:104:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 104 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `I2C_BUS` in the current scope [INFO] [stdout] --> tests/cached.rs:22:32 [INFO] [stdout] | [INFO] [stdout] 22 | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `I2C_BUS` [INFO] [stdout] | [INFO] [stdout] ::: tests/common/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | / lazy_static! { [INFO] [stdout] 22 | | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] 23 | | let i2c = I2c::new().unwrap(); [INFO] [stdout] 24 | | let i2c_bus: &'static _ = shared_bus::new_std!(I2c = i2c).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 46 | | }; [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:118:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 118 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:33:35 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 33 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:132:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 132 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:55:35 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 55 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/immediate.rs:160:39 [INFO] [stdout] | [INFO] [stdout] 12 | / lazy_static! { [INFO] [stdout] 13 | | static ref EXPANDER: Mutex = { [INFO] [stdout] 14 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 15 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 18 | | }; [INFO] [stdout] 19 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 160 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:87:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 87 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:101:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 101 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:115:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 115 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `I2C_BUS` in the current scope [INFO] [stdout] --> tests/immediate.rs:210:36 [INFO] [stdout] | [INFO] [stdout] 210 | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `I2C_BUS` [INFO] [stdout] | [INFO] [stdout] ::: tests/common/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | / lazy_static! { [INFO] [stdout] 22 | | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] 23 | | let i2c = I2c::new().unwrap(); [INFO] [stdout] 24 | | let i2c_bus: &'static _ = shared_bus::new_std!(I2c = i2c).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 46 | | }; [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:129:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 129 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:143:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 143 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `EXPANDER` in the current scope [INFO] [stdout] --> tests/cached.rs:174:39 [INFO] [stdout] | [INFO] [stdout] 15 | / lazy_static! { [INFO] [stdout] 16 | | static ref INTERRUPT_PIN: InputPin = { [INFO] [stdout] 17 | | let gpio = Gpio::new().unwrap(); [INFO] [stdout] 18 | | [INFO] [stdout] ... | [INFO] [stdout] 27 | | }; [INFO] [stdout] 28 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 174 | let expander = &mut *EXPANDER.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `EXPANDER` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/immediate.rs:239:41 [INFO] [stdout] | [INFO] [stdout] 208 | / lazy_static! { [INFO] [stdout] 209 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 210 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 211 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 232 | | }; [INFO] [stdout] 233 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 239 | let pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `I2C_BUS` in the current scope [INFO] [stdout] --> tests/cached.rs:228:36 [INFO] [stdout] | [INFO] [stdout] 228 | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `I2C_BUS` [INFO] [stdout] | [INFO] [stdout] ::: tests/common/mod.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 21 | / lazy_static! { [INFO] [stdout] 22 | | pub static ref I2C_BUS: Mutex<&'static BusManager>> = { [INFO] [stdout] 23 | | let i2c = I2c::new().unwrap(); [INFO] [stdout] 24 | | let i2c_bus: &'static _ = shared_bus::new_std!(I2c = i2c).unwrap(); [INFO] [stdout] ... | [INFO] [stdout] 46 | | }; [INFO] [stdout] 47 | | } [INFO] [stdout] | |_- method `lock` not found for this [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/cached.rs:258:41 [INFO] [stdout] | [INFO] [stdout] 226 | / lazy_static! { [INFO] [stdout] 227 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 228 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 229 | | let expander = [INFO] [stdout] ... | [INFO] [stdout] 251 | | }; [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 258 | let pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/immediate.rs:250:41 [INFO] [stdout] | [INFO] [stdout] 208 | / lazy_static! { [INFO] [stdout] 209 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 210 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 211 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 232 | | }; [INFO] [stdout] 233 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 250 | let pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/cached.rs:269:41 [INFO] [stdout] | [INFO] [stdout] 226 | / lazy_static! { [INFO] [stdout] 227 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 228 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 229 | | let expander = [INFO] [stdout] ... | [INFO] [stdout] 251 | | }; [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 269 | let pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/immediate.rs:261:45 [INFO] [stdout] | [INFO] [stdout] 208 | / lazy_static! { [INFO] [stdout] 209 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 210 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 211 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 232 | | }; [INFO] [stdout] 233 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 261 | let mut pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/cached.rs:280:45 [INFO] [stdout] | [INFO] [stdout] 226 | / lazy_static! { [INFO] [stdout] 227 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 228 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 229 | | let expander = [INFO] [stdout] ... | [INFO] [stdout] 251 | | }; [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 280 | let mut pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/cached.rs:291:45 [INFO] [stdout] | [INFO] [stdout] 226 | / lazy_static! { [INFO] [stdout] 227 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 228 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 229 | | let expander = [INFO] [stdout] ... | [INFO] [stdout] 251 | | }; [INFO] [stdout] 252 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 291 | let mut pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Expander` [INFO] [stdout] --> tests/cached.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | use pca9535::{Expander, Pca9535Cached, Register}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `StandardExpanderInterface` [INFO] [stdout] --> tests/cached.rs:82:29 [INFO] [stdout] | [INFO] [stdout] 82 | use pca9535::{GPIOBank, StandardExpanderInterface}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 17 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `lock` found for struct `PCA9535_GPIO` in the current scope [INFO] [stdout] --> tests/immediate.rs:272:45 [INFO] [stdout] | [INFO] [stdout] 208 | / lazy_static! { [INFO] [stdout] 209 | | static ref IO_EXPANDER: IoExpander> = { [INFO] [stdout] 210 | | let i2c_bus = *I2C_BUS.lock().unwrap(); [INFO] [stdout] 211 | | let expander = Pca9535Immediate::new(i2c_bus.acquire_i2c(), ADDR); [INFO] [stdout] ... | [INFO] [stdout] 232 | | }; [INFO] [stdout] 233 | | } [INFO] [stdout] | |_____- method `lock` not found for this [INFO] [stdout] ... [INFO] [stdout] 272 | let mut pca9535_gpio = PCA9535_GPIO.lock().unwrap(); [INFO] [stdout] | ^^^^ method not found in `PCA9535_GPIO` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following traits define an item `lock`, perhaps you need to implement one of them: [INFO] [stdout] candidate #1: `ExpanderMutex` [INFO] [stdout] candidate #2: `lock_api::mutex::RawMutex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Expander` [INFO] [stdout] --> tests/immediate.rs:8:15 [INFO] [stdout] | [INFO] [stdout] 8 | use pca9535::{Expander, Pca9535Immediate, Register}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0463, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] [INFO] [stdout] warning: unused import: `StandardExpanderInterface` [INFO] [stdout] --> tests/immediate.rs:71:29 [INFO] [stdout] | [INFO] [stdout] 71 | use pca9535::{GPIOBank, StandardExpanderInterface}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 17 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0412, E0463, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0412`. [INFO] [stdout] [INFO] [stderr] error: could not compile `pca9535` due to 18 previous errors; 2 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "bc26aa50e24cbb37e91e2d9aa1a6a8476da6a3f8f6f02fa0536e945a9de388f7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bc26aa50e24cbb37e91e2d9aa1a6a8476da6a3f8f6f02fa0536e945a9de388f7", kill_on_drop: false }` [INFO] [stdout] bc26aa50e24cbb37e91e2d9aa1a6a8476da6a3f8f6f02fa0536e945a9de388f7