[INFO] cloning repository https://github.com/akaDestrocore/stm32f4-rust-drivers
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/akaDestrocore/stm32f4-rust-drivers" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FakaDestrocore%2Fstm32f4-rust-drivers", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FakaDestrocore%2Fstm32f4-rust-drivers'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c44334ebf9a58e30f7eb01e1d059b79f03f90136
[INFO] checking akaDestrocore/stm32f4-rust-drivers against f4dd856795debe636f2ba39a900f162f5abeb7e8 for pr-160904
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FakaDestrocore%2Fstm32f4-rust-drivers" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/akaDestrocore/stm32f4-rust-drivers
[INFO] finished tweaking git repo https://github.com/akaDestrocore/stm32f4-rust-drivers
[INFO] tweaked toml for git repo https://github.com/akaDestrocore/stm32f4-rust-drivers written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/akaDestrocore/stm32f4-rust-drivers on toolchain f4dd856795debe636f2ba39a900f162f5abeb7e8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/akaDestrocore/stm32f4-rust-drivers 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" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking akaDestrocore/stm32f4-rust-drivers against f4dd856795debe636f2ba39a900f162f5abeb7e8 for pr-160904
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FakaDestrocore%2Fstm32f4-rust-drivers" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/akaDestrocore/stm32f4-rust-drivers
[INFO] finished tweaking git repo https://github.com/akaDestrocore/stm32f4-rust-drivers
[INFO] tweaked toml for git repo https://github.com/akaDestrocore/stm32f4-rust-drivers written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/akaDestrocore/stm32f4-rust-drivers on toolchain f4dd856795debe636f2ba39a900f162f5abeb7e8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/akaDestrocore/stm32f4-rust-drivers 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" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "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 cortex-m-rt-macros v0.7.5
[INFO] [stderr]   Downloaded cortex-m-rt v0.7.5
[INFO] [stderr]   Downloaded panic-halt v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437
[INFO] running `Command { std: "docker" "start" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437" "/opt/rustwide/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437" "/opt/rustwide/cargo-home/bin/cargo" "+f4dd856795debe636f2ba39a900f162f5abeb7e8" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling cortex-m v0.7.7
[INFO] [stderr]    Compiling cortex-m-rt v0.7.5
[INFO] [stderr]     Checking panic-halt v0.2.0
[INFO] [stderr]     Checking nb v0.1.3
[INFO] [stderr]     Checking embedded-hal v0.2.7
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.7.5
[INFO] [stderr]     Checking stm32f4-rust-drivers v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `UART4`, `UART5`, `USART2`, and `USART3`
[INFO] [stdout]  --> src/stm32f4_usart.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 |     USART1, USART2, USART3, UART4, UART5, USART6, 
[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 import: `RccRegister`
[INFO] [stdout]  --> src/stm32f4_usart.rs:6:37
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::stm32f4_rcc::{RccHandle, RccRegister, RccError};
[INFO] [stdout]   |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_usart.rs:508:24
[INFO] [stdout]     |
[INFO] [stdout] 508 |             usartdiv = ((pclk * 25) / (2 * baud as u32));
[INFO] [stdout]     |                        ^                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 508 -             usartdiv = ((pclk * 25) / (2 * baud as u32));
[INFO] [stdout] 508 +             usartdiv = (pclk * 25) / (2 * baud as u32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_usart.rs:511:24
[INFO] [stdout]     |
[INFO] [stdout] 511 |             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout]     |                        ^                               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 511 -             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout] 511 +             usartdiv = (pclk * 25) / (4 * baud as u32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `I2C1`, `I2C2`, and `I2C3`
[INFO] [stdout]  --> src/stm32f4_i2c.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     I2C1, I2C2, I2C3, I2C1_BASE, I2C2_BASE, I2C3_BASE, I2CRegDef, RegValue
[INFO] [stdout]   |     ^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RccRegister`
[INFO] [stdout]  --> src/stm32f4_i2c.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     RccHandle, RccRegister, RccError
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_i2c.rs:434:26
[INFO] [stdout]     |
[INFO] [stdout] 434 |             ccr_value |= (1 << 15); // Set FM mode
[INFO] [stdout]     |                          ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 434 -             ccr_value |= (1 << 15); // Set FM mode
[INFO] [stdout] 434 +             ccr_value |= 1 << 15; // Set FM mode
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_i2c.rs:436:30
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 ccr_value |= (1 << 14); // Set duty cycle
[INFO] [stdout]     |                              ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 436 -                 ccr_value |= (1 << 14); // Set duty cycle
[INFO] [stdout] 436 +                 ccr_value |= 1 << 14; // Set duty cycle
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `UART4`, `UART5`, `USART2`, and `USART3`
[INFO] [stdout]  --> src/stm32f4_usart.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 |     USART1, USART2, USART3, UART4, UART5, USART6, 
[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 import: `RccRegister`
[INFO] [stdout]  --> src/stm32f4_usart.rs:6:37
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::stm32f4_rcc::{RccHandle, RccRegister, RccError};
[INFO] [stdout]   |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_usart.rs:508:24
[INFO] [stdout]     |
[INFO] [stdout] 508 |             usartdiv = ((pclk * 25) / (2 * baud as u32));
[INFO] [stdout]     |                        ^                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 508 -             usartdiv = ((pclk * 25) / (2 * baud as u32));
[INFO] [stdout] 508 +             usartdiv = (pclk * 25) / (2 * baud as u32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_usart.rs:511:24
[INFO] [stdout]     |
[INFO] [stdout] 511 |             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout]     |                        ^                               ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 511 -             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout] 511 +             usartdiv = (pclk * 25) / (4 * baud as u32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `I2C1`, `I2C2`, and `I2C3`
[INFO] [stdout]  --> src/stm32f4_i2c.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     I2C1, I2C2, I2C3, I2C1_BASE, I2C2_BASE, I2C3_BASE, I2CRegDef, RegValue
[INFO] [stdout]   |     ^^^^  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RccRegister`
[INFO] [stdout]  --> src/stm32f4_i2c.rs:7:16
[INFO] [stdout]   |
[INFO] [stdout] 7 |     RccHandle, RccRegister, RccError
[INFO] [stdout]   |                ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_i2c.rs:434:26
[INFO] [stdout]     |
[INFO] [stdout] 434 |             ccr_value |= (1 << 15); // Set FM mode
[INFO] [stdout]     |                          ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 434 -             ccr_value |= (1 << 15); // Set FM mode
[INFO] [stdout] 434 +             ccr_value |= 1 << 15; // Set FM mode
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> src/stm32f4_i2c.rs:436:30
[INFO] [stdout]     |
[INFO] [stdout] 436 |                 ccr_value |= (1 << 14); // Set duty cycle
[INFO] [stdout]     |                              ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 436 -                 ccr_value |= (1 << 14); // Set duty cycle
[INFO] [stdout] 436 +                 ccr_value |= 1 << 14; // Set duty cycle
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ef`
[INFO] [stdout]   --> src/exception.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | unsafe fn HardFault(ef: &ExceptionFrame) -> ! {
[INFO] [stdout]    |                     ^^ help: if this is intentional, prefix it with an underscore: `_ef`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ef`
[INFO] [stdout]   --> src/exception.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | unsafe fn HardFault(ef: &ExceptionFrame) -> ! {
[INFO] [stdout]    |                     ^^ help: if this is intentional, prefix it with an underscore: `_ef`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `usartdiv` is never read
[INFO] [stdout]    --> src/stm32f4_usart.rs:503:33
[INFO] [stdout]     |
[INFO] [stdout] 503 |         let mut usartdiv: u32 = 0;
[INFO] [stdout]     |                                 ^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 511 |             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout]     |             -------------------------------------------- `usartdiv` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `usartdiv` is never read
[INFO] [stdout]    --> src/stm32f4_usart.rs:503:33
[INFO] [stdout]     |
[INFO] [stdout] 503 |         let mut usartdiv: u32 = 0;
[INFO] [stdout]     |                                 ^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 511 |             usartdiv = ((pclk * 25) / (4 * baud as u32));
[INFO] [stdout]     |             -------------------------------------------- `usartdiv` is overwritten here before the previous value is read
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `irq_number`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:23
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_irq_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `irq_priority`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:39
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_irq_priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enable`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:57
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_enable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_brr`, `modify_brr`, and `get_raw_ptr` are never used
[INFO] [stdout]    --> src/stm32f4_usart.rs:282:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl UsartRegister {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 282 |     fn read_brr(&self) -> Result<RegValue, UsartError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 |     fn modify_brr<F>(&self, f: F) -> Result<(), UsartError> 
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     fn get_raw_ptr(&self) -> *mut USARTRegDef {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_oar1`, `read_oar2`, `read_ccr`, `read_trise`, and `get_raw_ptr` are never used
[INFO] [stdout]    --> src/stm32f4_i2c.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl I2cRegister {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 195 |     fn read_oar1(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn read_oar2(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn read_ccr(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     fn read_trise(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |     fn get_raw_ptr(&self) -> *mut I2CRegDef {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `irq_number`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:23
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_irq_number`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `irq_priority`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:39
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_irq_priority`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `enable`
[INFO] [stdout]     --> src/stm32f4_i2c.rs:1176:57
[INFO] [stdout]      |
[INFO] [stdout] 1176 |     pub fn irq_config(irq_number: u8, irq_priority: u8, enable: bool) -> Result<(), I2cError> {
[INFO] [stdout]      |                                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_enable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_brr`, `modify_brr`, and `get_raw_ptr` are never used
[INFO] [stdout]    --> src/stm32f4_usart.rs:282:8
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl UsartRegister {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 282 |     fn read_brr(&self) -> Result<RegValue, UsartError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 305 |     fn modify_brr<F>(&self, f: F) -> Result<(), UsartError> 
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     fn get_raw_ptr(&self) -> *mut USARTRegDef {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_oar1`, `read_oar2`, `read_ccr`, `read_trise`, and `get_raw_ptr` are never used
[INFO] [stdout]    --> src/stm32f4_i2c.rs:195:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | impl I2cRegister {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 195 |     fn read_oar1(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 217 |     fn read_oar2(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn read_ccr(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     fn read_trise(&self) -> Result<RegValue, I2cError> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |     fn get_raw_ptr(&self) -> *mut I2CRegDef {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `GpioHandle`
[INFO] [stdout]   --> src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         GpioHandle, GpioPort, GpioPin, GpioMode, GpioSpeed, 
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[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: unused import: `GpioHandle`
[INFO] [stdout]   --> src/main.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         GpioHandle, GpioPort, GpioPin, GpioMode, GpioSpeed, 
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0152]: found duplicate lang item `panic_impl`
[INFO] [stdout]    --> src/main.rs:174:1
[INFO] [stdout]     |
[INFO] [stdout] 174 | / fn panic(_info: &PanicInfo) -> ! {
[INFO] [stdout] 175 | |     loop {
[INFO] [stdout] 176 | |         cortex_m::asm::nop();
[INFO] [stdout] 177 | |     }
[INFO] [stdout] 178 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the lang item is first defined in crate `std` (which `test` depends on)
[INFO] [stdout]     = note: first definition in `std` loaded from /opt/rustwide/rustup-home/toolchains/f4dd856795debe636f2ba39a900f162f5abeb7e8/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-453218b5e9634890.rmeta
[INFO] [stdout]     = note: second definition in the local crate (`stm32f4_rust_drivers`)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0152`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stm32f4-rust-drivers` (bin "stm32f4-rust-drivers") due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `stm32f4-rust-drivers` (bin "stm32f4-rust-drivers" test) due to 1 previous error; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437", kill_on_drop: false }`
[INFO] [stdout] 361fd51b614d50716465b2975068c3d7c96efd8881ba99b89b0ce2735f4df437
