[INFO] fetching crate stm32l0x1-hal 0.11.0...
[INFO] testing stm32l0x1-hal-0.11.0 against 1.90.0 for beta-1.91-3
[INFO] extracting crate stm32l0x1-hal 0.11.0 into /workspace/builds/worker-6-tc1/source
[INFO] removed /workspace/builds/worker-6-tc1/source/.cargo/config
[INFO] started tweaking crates.io crate stm32l0x1-hal 0.11.0
[INFO] finished tweaking crates.io crate stm32l0x1-hal 0.11.0
[INFO] tweaked toml for crates.io crate stm32l0x1-hal 0.11.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate stm32l0x1-hal 0.11.0 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 22 packages to latest compatible versions
[INFO] [stderr]       Adding embedded-hal v0.2.7 (available: v1.0.0)
[INFO] [stderr]       Adding stm32l0 v0.15.1 (available: v0.16.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded nb v0.1.3
[INFO] [stderr]   Downloaded bare-metal v0.2.5
[INFO] [stderr]   Downloaded bitfield v0.13.2
[INFO] [stderr]   Downloaded cortex-m-rt-macros v0.7.5
[INFO] [stderr]   Downloaded flash-embedded-hal v0.1.2
[INFO] [stderr]   Downloaded bare-metal v1.0.0
[INFO] [stderr]   Downloaded volatile-register v0.2.2
[INFO] [stderr]   Downloaded embedded-hal v0.2.7
[INFO] [stderr]   Downloaded cortex-m-rt v0.7.5
[INFO] [stderr]   Downloaded cortex-m v0.7.7
[INFO] [stderr]   Downloaded stm32l0 v0.15.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d7691da7422525f552ad2fb13b2d60e1c73138667d3b22d1b19679161beee4d5
[INFO] running `Command { std: "docker" "start" "-a" "d7691da7422525f552ad2fb13b2d60e1c73138667d3b22d1b19679161beee4d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d7691da7422525f552ad2fb13b2d60e1c73138667d3b22d1b19679161beee4d5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7691da7422525f552ad2fb13b2d60e1c73138667d3b22d1b19679161beee4d5", kill_on_drop: false }`
[INFO] [stdout] d7691da7422525f552ad2fb13b2d60e1c73138667d3b22d1b19679161beee4d5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 034db34d9631dc7c020364ee0162b8d2ab10beb0498b9ed596e360a6f5f53776
[INFO] running `Command { std: "docker" "start" "-a" "034db34d9631dc7c020364ee0162b8d2ab10beb0498b9ed596e360a6f5f53776", kill_on_drop: false }`
[INFO] [stderr]    Compiling cortex-m-rt v0.7.5
[INFO] [stderr]    Compiling nb v1.1.0
[INFO] [stderr]    Compiling cortex-m v0.7.7
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling vcell v0.1.3
[INFO] [stderr]    Compiling bitfield v0.13.2
[INFO] [stderr]    Compiling stm32l0 v0.15.1
[INFO] [stderr]    Compiling bare-metal v1.0.0
[INFO] [stderr]    Compiling flash-embedded-hal v0.1.2
[INFO] [stderr]    Compiling bare-metal v0.2.5
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling volatile-register v0.2.2
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling embedded-hal v0.2.7
[INFO] [stderr]    Compiling cortex-m-rt-macros v0.7.5
[INFO] [stderr]    Compiling stm32l0x1-hal v0.11.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |             /// HCLK/FCLK
[INFO] [stdout]    |             ^^^^^^^^^^^^^
[INFO] [stdout] 88 |             hclk: Hertz(2_097_000),
[INFO] [stdout]    |             ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             /// PCLK1 to APB1 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 90 |             pclk1: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             /// PCLK2 to APB2 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |             pclk2: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             /// Low-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |             lsiclk: None,
[INFO] [stdout]    |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             /// Medium-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |             msiclk: Some(Hertz(2_097_000)),
[INFO] [stdout]    |             ------------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             /// High-speed internal 16 MHz clock speed (optionally /4)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 98 |             hsi16clk: None,
[INFO] [stdout]    |             -------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/rcc/mod.rs:99:13
[INFO] [stdout]     |
[INFO] [stdout]  99 |             /// Low-speed external 32kHz clock speed
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 100 |             lseclk: None,
[INFO] [stdout]     |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Sealed` is never used
[INFO] [stdout]   --> src/i2c/mod.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub trait Sealed {}
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:411:33
[INFO] [stdout]     |
[INFO] [stdout] 411 |                                   ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 435 | / hal! {
[INFO] [stdout] 436 | |     USART2: (usart2, APB1, apb1, usart2en, usart2sel),
[INFO] [stdout] 437 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:684:26
[INFO] [stdout]     |
[INFO] [stdout] 684 |                 unsafe { ptr::write_volatile(&(*LPUART1::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.94s
[INFO] running `Command { std: "docker" "inspect" "034db34d9631dc7c020364ee0162b8d2ab10beb0498b9ed596e360a6f5f53776", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "034db34d9631dc7c020364ee0162b8d2ab10beb0498b9ed596e360a6f5f53776", kill_on_drop: false }`
[INFO] [stdout] 034db34d9631dc7c020364ee0162b8d2ab10beb0498b9ed596e360a6f5f53776
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 96ed4f28cf16b87c37928078f147a9e089daf618a43d9f66cd84b5626d1fbc65
[INFO] running `Command { std: "docker" "start" "-a" "96ed4f28cf16b87c37928078f147a9e089daf618a43d9f66cd84b5626d1fbc65", kill_on_drop: false }`
[INFO] [stderr]    Compiling stm32l0x1-hal v0.11.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |             /// HCLK/FCLK
[INFO] [stdout]    |             ^^^^^^^^^^^^^
[INFO] [stdout] 88 |             hclk: Hertz(2_097_000),
[INFO] [stdout]    |             ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             /// PCLK1 to APB1 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 90 |             pclk1: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             /// PCLK2 to APB2 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |             pclk2: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             /// Low-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |             lsiclk: None,
[INFO] [stdout]    |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             /// Medium-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |             msiclk: Some(Hertz(2_097_000)),
[INFO] [stdout]    |             ------------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             /// High-speed internal 16 MHz clock speed (optionally /4)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 98 |             hsi16clk: None,
[INFO] [stdout]    |             -------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/rcc/mod.rs:99:13
[INFO] [stdout]     |
[INFO] [stdout]  99 |             /// Low-speed external 32kHz clock speed
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 100 |             lseclk: None,
[INFO] [stdout]     |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Sealed` is never used
[INFO] [stdout]   --> src/i2c/mod.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub trait Sealed {}
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:411:33
[INFO] [stdout]     |
[INFO] [stdout] 411 |                                   ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 435 | / hal! {
[INFO] [stdout] 436 | |     USART2: (usart2, APB1, apb1, usart2en, usart2sel),
[INFO] [stdout] 437 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:684:26
[INFO] [stdout]     |
[INFO] [stdout] 684 |                 unsafe { ptr::write_volatile(&(*LPUART1::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:87:13
[INFO] [stdout]    |
[INFO] [stdout] 87 |             /// HCLK/FCLK
[INFO] [stdout]    |             ^^^^^^^^^^^^^
[INFO] [stdout] 88 |             hclk: Hertz(2_097_000),
[INFO] [stdout]    |             ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:89:13
[INFO] [stdout]    |
[INFO] [stdout] 89 |             /// PCLK1 to APB1 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 90 |             pclk1: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:91:13
[INFO] [stdout]    |
[INFO] [stdout] 91 |             /// PCLK2 to APB2 peripherals
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 92 |             pclk2: Hertz(2_097_000),
[INFO] [stdout]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |             /// Low-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 94 |             lsiclk: None,
[INFO] [stdout]    |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             /// Medium-speed internal RC clock speed
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 96 |             msiclk: Some(Hertz(2_097_000)),
[INFO] [stdout]    |             ------------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/rcc/mod.rs:97:13
[INFO] [stdout]    |
[INFO] [stdout] 97 |             /// High-speed internal 16 MHz clock speed (optionally /4)
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 98 |             hsi16clk: None,
[INFO] [stdout]    |             -------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/rcc/mod.rs:99:13
[INFO] [stdout]     |
[INFO] [stdout]  99 |             /// Low-speed external 32kHz clock speed
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 100 |             lseclk: None,
[INFO] [stdout]     |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Sealed` is never used
[INFO] [stdout]   --> src/i2c/mod.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub trait Sealed {}
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:411:33
[INFO] [stdout]     |
[INFO] [stdout] 411 |                                   ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte)
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 435 | / hal! {
[INFO] [stdout] 436 | |     USART2: (usart2, APB1, apb1, usart2en, usart2sel),
[INFO] [stdout] 437 | | }
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stdout]    --> src/serial/mod.rs:684:26
[INFO] [stdout]     |
[INFO] [stdout] 684 |                 unsafe { ptr::write_volatile(&(*LPUART1::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stdout]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.46s
[INFO] running `Command { std: "docker" "inspect" "96ed4f28cf16b87c37928078f147a9e089daf618a43d9f66cd84b5626d1fbc65", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96ed4f28cf16b87c37928078f147a9e089daf618a43d9f66cd84b5626d1fbc65", kill_on_drop: false }`
[INFO] [stdout] 96ed4f28cf16b87c37928078f147a9e089daf618a43d9f66cd84b5626d1fbc65
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 7341ffaab14dd72667ea3b13055e0cabaeac86d73358f86a741e71f1858b4d5a
[INFO] running `Command { std: "docker" "start" "-a" "7341ffaab14dd72667ea3b13055e0cabaeac86d73358f86a741e71f1858b4d5a", kill_on_drop: false }`
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:87:13
[INFO] [stderr]    |
[INFO] [stderr] 87 |             /// HCLK/FCLK
[INFO] [stderr]    |             ^^^^^^^^^^^^^
[INFO] [stderr] 88 |             hclk: Hertz(2_097_000),
[INFO] [stderr]    |             ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:89:13
[INFO] [stderr]    |
[INFO] [stderr] 89 |             /// PCLK1 to APB1 peripherals
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 90 |             pclk1: Hertz(2_097_000),
[INFO] [stderr]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:91:13
[INFO] [stderr]    |
[INFO] [stderr] 91 |             /// PCLK2 to APB2 peripherals
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 92 |             pclk2: Hertz(2_097_000),
[INFO] [stderr]    |             ----------------------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:93:13
[INFO] [stderr]    |
[INFO] [stderr] 93 |             /// Low-speed internal RC clock speed
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 94 |             lsiclk: None,
[INFO] [stderr]    |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:95:13
[INFO] [stderr]    |
[INFO] [stderr] 95 |             /// Medium-speed internal RC clock speed
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 96 |             msiclk: Some(Hertz(2_097_000)),
[INFO] [stderr]    |             ------------------------------ rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]   --> src/rcc/mod.rs:97:13
[INFO] [stderr]    |
[INFO] [stderr] 97 |             /// High-speed internal 16 MHz clock speed (optionally /4)
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 98 |             hsi16clk: None,
[INFO] [stderr]    |             -------------- rustdoc does not generate documentation for expression fields
[INFO] [stderr]    |
[INFO] [stderr]    = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/rcc/mod.rs:99:13
[INFO] [stderr]     |
[INFO] [stderr]  99 |             /// Low-speed external 32kHz clock speed
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 100 |             lseclk: None,
[INFO] [stderr]     |             ------------ rustdoc does not generate documentation for expression fields
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: trait `Sealed` is never used
[INFO] [stderr]   --> src/i2c/mod.rs:47:15
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub trait Sealed {}
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stderr]    --> src/serial/mod.rs:411:33
[INFO] [stderr]     |
[INFO] [stderr] 411 |                                   ptr::write_volatile(&(*$USARTX::ptr()).tdr as *const _ as *mut _, byte)
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 435 | / hal! {
[INFO] [stderr] 436 | |     USART2: (usart2, APB1, apb1, usart2en, usart2sel),
[INFO] [stderr] 437 | | }
[INFO] [stderr]     | |_- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stderr]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stderr]     = note: `#[warn(invalid_reference_casting)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `hal` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: assigning to `&T` is undefined behavior, consider using an `UnsafeCell`
[INFO] [stderr]    --> src/serial/mod.rs:684:26
[INFO] [stderr]     |
[INFO] [stderr] 684 |                 unsafe { ptr::write_volatile(&(*LPUART1::ptr()).tdr as *const _ as *mut _, byte) }
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, visit <https://doc.rust-lang.org/book/ch15-05-interior-mutability.html>
[INFO] [stderr]     = note: even for types with interior mutability, the only legal way to obtain a mutable pointer from a shared reference is through `UnsafeCell::get`
[INFO] [stderr] 
[INFO] [stderr] warning: `stm32l0x1-hal` (lib) generated 10 warnings
[INFO] [stderr] warning: `stm32l0x1-hal` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/stm32l0x1_hal-2654e3a213618c40)
[INFO] [stderr]    Doc-tests stm32l0x1_hal
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/rcc/mod.rs - rcc (line 8) ... FAILED
[INFO] [stdout] test src/serial/mod.rs - serial (line 7) ... FAILED
[INFO] [stdout] test src/gpio.rs - gpio (line 7) ... FAILED
[INFO] [stdout] test src/adc.rs - adc (line 9) ... FAILED
[INFO] [stdout] test src/i2c/mod.rs - i2c (line 8) ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/rcc/mod.rs - rcc (line 8) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `clocking`
[INFO] [stdout]   --> src/rcc/mod.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 16 |     cfgr.msi.set_freq(clocking::MsiFreq::Hz_131_072); // set it to 131 kHz
[INFO] [stdout]    |                       ^^^^^^^^ use of unresolved module or unlinked crate `clocking`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/rcc/clocking.rs, use `mod clocking` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod clocking;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::rcc::clocking::MsiFreq;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `MsiFreq`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 16 -     cfgr.msi.set_freq(clocking::MsiFreq::Hz_131_072); // set it to 131 kHz
[INFO] [stdout] 16 +     cfgr.msi.set_freq(MsiFreq::Hz_131_072); // set it to 131 kHz
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Hertz` in this scope
[INFO] [stdout]   --> src/rcc/mod.rs:23:22
[INFO] [stdout]    |
[INFO] [stdout] 18 |     cfgr.hclk_fclk = Hertz(131_072); // the HCLK bus should not be prescaled
[INFO] [stdout]    |                      ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::time::Hertz;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Hertz` in this scope
[INFO] [stdout]   --> src/rcc/mod.rs:24:18
[INFO] [stdout]    |
[INFO] [stdout] 19 |     cfgr.pclk1 = Hertz(131_072);     // same for the APB1 clock
[INFO] [stdout]    |                  ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::time::Hertz;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Hertz` in this scope
[INFO] [stdout]   --> src/rcc/mod.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 20 |     cfgr.pclk2 = Hertz(131_072);     // and the same for the APB2 clock
[INFO] [stdout]    |                  ^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::time::Hertz;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::FLASH` in the current scope
[INFO] [stdout]  --> src/rcc/mod.rs:13:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | let mut flash = d.FLASH.constrain();
[INFO] [stdout]   |                         ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::FLASH`
[INFO] [stdout]   |
[INFO] [stdout]  ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn constrain(self) -> T;
[INFO] [stdout]   |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::FLASH` here
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `POWER` on type `Peripherals`
[INFO] [stdout]  --> src/rcc/mod.rs:14:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut pwr = d.POWER.constrain();
[INFO] [stdout]   |                 ^^^^^ unknown field
[INFO] [stdout]   |
[INFO] [stdout]   = note: available fields are: `AES`, `DMA1`, `CRC`, `GPIOA`, `GPIOB` ... and 32 others
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::RCC` in the current scope
[INFO] [stdout]   --> src/rcc/mod.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | let mut rcc = d.RCC.constrain();
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::RCC`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::RCC` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 7 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0433, E0599, E0609.
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/serial/mod.rs - serial (line 7) stdout ----
[INFO] [stdout] error: cannot find macro `block` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     block!(tx.write(block!(rx.read()).unwrap())).unwrap();
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  2 + use nb::block;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `pwr` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:16:29
[INFO] [stdout]    |
[INFO] [stdout] 11 | rcc.freeze(&mut flash, &mut pwr);
[INFO] [stdout]    |                             ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]   --> src/serial/mod.rs:19:17
[INFO] [stdout]    |
[INFO] [stdout] 14 | let mut gpiob = gpio::B::new(d.GPIOB, &mut rcc.iop);
[INFO] [stdout]    |                 ^^^^ use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `gpio`, use `cargo add gpio` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::B;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `B`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 14 - let mut gpiob = gpio::B::new(d.GPIOB, &mut rcc.iop);
[INFO] [stdout] 14 + let mut gpiob = B::new(d.GPIOB, &mut rcc.iop);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `gpioa` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 17 | let vcp_rx = gpioa.PA15.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |              ^^^^^ help: a local variable with a similar name exists: `gpiob`
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PushPull` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:22:39
[INFO] [stdout]    |
[INFO] [stdout] 17 | let vcp_rx = gpioa.PA15.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                       ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PushPull;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Floating` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:22:49
[INFO] [stdout]    |
[INFO] [stdout] 17 | let vcp_rx = gpioa.PA15.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                                 ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::Floating;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `AF4` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:22:76
[INFO] [stdout]    |
[INFO] [stdout] 17 | let vcp_rx = gpioa.PA15.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                                                            ^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::AF::AF4;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PinSpeed`
[INFO] [stdout]   --> src/serial/mod.rs:23:22
[INFO] [stdout]    |
[INFO] [stdout] 18 | vcp_rx.set_pin_speed(PinSpeed::VeryHigh);
[INFO] [stdout]    |                      ^^^^^^^^ use of undeclared type `PinSpeed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PinSpeed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `gpioa` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 20 | let vcp_tx = gpioa.PA2.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |              ^^^^^ help: a local variable with a similar name exists: `gpiob`
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PushPull` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:25:38
[INFO] [stdout]    |
[INFO] [stdout] 20 | let vcp_tx = gpioa.PA2.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                      ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PushPull;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Floating` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:25:48
[INFO] [stdout]    |
[INFO] [stdout] 20 | let vcp_tx = gpioa.PA2.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                                ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::Floating;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `AF4` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:25:75
[INFO] [stdout]    |
[INFO] [stdout] 20 | let vcp_tx = gpioa.PA2.into_output::<PushPull, Floating>().into_alt_fun::<AF4>();
[INFO] [stdout]    |                                                                           ^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::AF::AF4;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PinSpeed`
[INFO] [stdout]   --> src/serial/mod.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 21 | vcp_tx.set_pin_speed(PinSpeed::VeryHigh);
[INFO] [stdout]    |                      ^^^^^^^^ use of undeclared type `PinSpeed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PinSpeed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Serial`
[INFO] [stdout]   --> src/serial/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 23 | let vcp_serial = Serial::usart2(
[INFO] [stdout]    |                  ^^^^^^ use of undeclared type `Serial`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::serial::Serial;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `Bps` in this scope
[INFO] [stdout]   --> src/serial/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Bps(115200),
[INFO] [stdout]    |     ^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this tuple struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::time::Bps;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `clocking`
[INFO] [stdout]   --> src/serial/mod.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     clocking::USARTClkSource::HSI16,
[INFO] [stdout]    |     ^^^^^^^^ use of unresolved module or unlinked crate `clocking`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `clocking`, use `cargo add clocking` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::rcc::clocking::USARTClkSource;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `USARTClkSource`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 27 -     clocking::USARTClkSource::HSI16,
[INFO] [stdout] 27 +     USARTClkSource::HSI16,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 16 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/gpio.rs - gpio (line 7) stdout ----
[INFO] [stdout] error[E0425]: cannot find value `pwr` in this scope
[INFO] [stdout]   --> src/gpio.rs:14:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | let mut rcc = d.RCC.constrain().freeze(&mut flash, &mut pwr);
[INFO] [stdout]    |                                                         ^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]   --> src/gpio.rs:16:13
[INFO] [stdout]    |
[INFO] [stdout] 12 | let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |             ^^^^ use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/gpio.rs, use `mod gpio` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod gpio;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::A;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `A`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 12 - let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout] 12 + let gpioa = A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/gpio.rs:16:40
[INFO] [stdout]    |
[INFO] [stdout]  4 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_gpio_rs_7_0() {
[INFO] [stdout]    |                                         ----------------------------- this function can't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 12 | let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |                                        ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PushPull` in this scope
[INFO] [stdout]   --> src/gpio.rs:19:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | let pin = gpioa.PA0.into_output::<PushPull, Floating>();
[INFO] [stdout]    |                                   ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PushPull;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Floating` in this scope
[INFO] [stdout]   --> src/gpio.rs:19:45
[INFO] [stdout]    |
[INFO] [stdout] 15 | let pin = gpioa.PA0.into_output::<PushPull, Floating>();
[INFO] [stdout]    |                                             ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::Floating;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `PWR` in the current scope
[INFO] [stdout]  --> src/gpio.rs:12:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | let mut power = d.PWR.constrain();
[INFO] [stdout]   |                       ^^^^^^^^^ method not found in `PWR`
[INFO] [stdout]   |
[INFO] [stdout]  ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn constrain(self) -> T;
[INFO] [stdout]   |        --------- the method is available for `PWR` here
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::FLASH` in the current scope
[INFO] [stdout]  --> src/gpio.rs:13:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut flash = d.FLASH.constrain();
[INFO] [stdout]   |                         ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::FLASH`
[INFO] [stdout]   |
[INFO] [stdout]  ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn constrain(self) -> T;
[INFO] [stdout]   |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::FLASH` here
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::RCC` in the current scope
[INFO] [stdout]   --> src/gpio.rs:14:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | let mut rcc = d.RCC.constrain().freeze(&mut flash, &mut pwr);
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::RCC`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::RCC` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 8 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0424, E0425, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/adc.rs - adc (line 9) stdout ----
[INFO] [stdout] error: cannot find macro `block` in this scope
[INFO] [stdout]   --> src/adc.rs:36:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | let lvl = block!(adc.read_channel(&mut light_sense)).unwrap();
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this macro
[INFO] [stdout]    |
[INFO] [stdout]  2 + use nb::block;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `adc`
[INFO] [stdout]   --> src/adc.rs:20:14
[INFO] [stdout]    |
[INFO] [stdout] 14 | let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = adc::Adc::new(
[INFO] [stdout]    |              ^^^ use of unresolved module or unlinked crate `adc`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/adc.rs, use `mod adc` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod adc;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::adc;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `adc`
[INFO] [stdout]   --> src/adc.rs:20:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = adc::Adc::new(
[INFO] [stdout]    |                       ^^^ use of unresolved module or unlinked crate `adc`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/adc.rs, use `mod adc` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod adc;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::adc;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `adc`
[INFO] [stdout]   --> src/adc.rs:20:38
[INFO] [stdout]    |
[INFO] [stdout] 14 | let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = adc::Adc::new(
[INFO] [stdout]    |                                      ^^^ use of unresolved module or unlinked crate `adc`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/adc.rs, use `mod adc` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod adc;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this module
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::adc;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `adc`
[INFO] [stdout]   --> src/adc.rs:20:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = adc::Adc::new(
[INFO] [stdout]    |                                                     ^^^ use of unresolved module or unlinked crate `adc`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/adc.rs, use `mod adc` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod adc;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::adc::Adc;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `Adc`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 14 - let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = adc::Adc::new(
[INFO] [stdout] 14 + let mut adc: adc::Adc<adc::Res12Bit, adc::Single> = Adc::new(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Duration`
[INFO] [stdout]   --> src/adc.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Duration::new(0, 0),
[INFO] [stdout]    |     ^^^^^^^^ use of undeclared type `Duration`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use std::time::Duration;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `adc`
[INFO] [stdout]   --> src/adc.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     adc::AdcClkSrc::Hsi16,
[INFO] [stdout]    |     ^^^ use of unresolved module or unlinked crate `adc`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/adc.rs, use `mod adc` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod adc;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::adc::AdcClkSrc;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `AdcClkSrc`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 17 -     adc::AdcClkSrc::Hsi16,
[INFO] [stdout] 17 +     AdcClkSrc::Hsi16,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]   --> src/adc.rs:30:13
[INFO] [stdout]    |
[INFO] [stdout] 24 | let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |             ^^^^ use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]    |
[INFO] [stdout] help: to make use of source file src/gpio.rs, use `mod gpio` in this file to declare the module
[INFO] [stdout]    |
[INFO] [stdout]  2 + mod gpio;
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::A;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `A`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 24 - let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout] 24 + let gpioa = A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/adc.rs:30:40
[INFO] [stdout]    |
[INFO] [stdout]  4 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_adc_rs_9_0() {
[INFO] [stdout]    |                                         ---------------------------- this function can't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 24 | let gpioa = gpio::A::new(d.GPIOA, &mut self.rcc.iop);
[INFO] [stdout]    |                                        ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Floating` in this scope
[INFO] [stdout]   --> src/adc.rs:33:19
[INFO] [stdout]    |
[INFO] [stdout] 27 |     .into_input::<Floating>(&mut gpioa.moder, &mut gpioa.pupdr)
[INFO] [stdout]    |                   ^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::Floating;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::FLASH` in the current scope
[INFO] [stdout]  --> src/adc.rs:15:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut flash = d.FLASH.constrain();
[INFO] [stdout]   |                         ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::FLASH`
[INFO] [stdout]   |
[INFO] [stdout]  ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn constrain(self) -> T;
[INFO] [stdout]   |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::FLASH` here
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `PWR` in the current scope
[INFO] [stdout]   --> src/adc.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | let mut pwr = d.PWR.constrain();
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `PWR`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `PWR` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::RCC` in the current scope
[INFO] [stdout]   --> src/adc.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut rcc = d.RCC.constrain().freeze(&mut flash, &mut pwr);
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::RCC`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::RCC` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 13 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0424, E0433, E0599.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/i2c/mod.rs - i2c (line 8) stdout ----
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]   --> src/i2c/mod.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 13 | let gpiob = gpio::B::new(d.GPIOB, &mut self.rcc.iop);
[INFO] [stdout]    |             ^^^^ use of unresolved module or unlinked crate `gpio`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `gpio`, use `cargo add gpio` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::B;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `B`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 13 - let gpiob = gpio::B::new(d.GPIOB, &mut self.rcc.iop);
[INFO] [stdout] 13 + let gpiob = B::new(d.GPIOB, &mut self.rcc.iop);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0424]: expected value, found module `self`
[INFO] [stdout]   --> src/i2c/mod.rs:18:40
[INFO] [stdout]    |
[INFO] [stdout]  4 | fn main() { #[allow(non_snake_case)] fn _doctest_main_src_i2c_mod_rs_8_0() {
[INFO] [stdout]    |                                         -------------------------------- this function can't have a `self` parameter
[INFO] [stdout] ...
[INFO] [stdout] 13 | let gpiob = gpio::B::new(d.GPIOB, &mut self.rcc.iop);
[INFO] [stdout]    |                                        ^^^^ `self` value is a keyword only available in methods with a `self` parameter
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `OpenDrain` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:20:39
[INFO] [stdout]    |
[INFO] [stdout] 15 | let i2c_sda = gpiob.PB7.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                       ^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::OpenDrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PullUp` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:20:50
[INFO] [stdout]    |
[INFO] [stdout] 15 | let i2c_sda = gpiob.PB7.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                                  ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PullUp;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `AF1` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:20:75
[INFO] [stdout]    |
[INFO] [stdout] 15 | let i2c_sda = gpiob.PB7.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                                                           ^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::AF::AF1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PinSpeed`
[INFO] [stdout]   --> src/i2c/mod.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 16 | i2c_sda.set_pin_speed(PinSpeed::VeryHigh);
[INFO] [stdout]    |                       ^^^^^^^^ use of undeclared type `PinSpeed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PinSpeed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `OpenDrain` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:23:39
[INFO] [stdout]    |
[INFO] [stdout] 18 | let i2c_scl = gpiob.PB6.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                       ^^^^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::OpenDrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PullUp` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:23:50
[INFO] [stdout]    |
[INFO] [stdout] 18 | let i2c_scl = gpiob.PB6.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                                  ^^^^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PullUp;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `AF1` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:23:75
[INFO] [stdout]    |
[INFO] [stdout] 18 | let i2c_scl = gpiob.PB6.into_output::<OpenDrain, PullUp>().into_alt_fun::<AF1>();
[INFO] [stdout]    |                                                                           ^^^ not found in this scope
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::AF::AF1;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `PinSpeed`
[INFO] [stdout]   --> src/i2c/mod.rs:24:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | i2c_scl.set_pin_speed(PinSpeed::VeryHigh);
[INFO] [stdout]    |                       ^^^^^^^^ use of undeclared type `PinSpeed`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::gpio::PinSpeed;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `i2c`
[INFO] [stdout]   --> src/i2c/mod.rs:28:15
[INFO] [stdout]    |
[INFO] [stdout] 23 | let mut i2c = i2c::I2c::i2c1(
[INFO] [stdout]    |               ^^^ use of unresolved module or unlinked crate `i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `i2c`, use `cargo add i2c` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::i2c::I2c;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `I2c`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 23 - let mut i2c = i2c::I2c::i2c1(
[INFO] [stdout] 23 + let mut i2c = I2c::i2c1(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `i2c1` in this scope
[INFO] [stdout]   --> src/i2c/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 24 |     i2c1,
[INFO] [stdout]    |     ^^^^ help: a local variable with a similar name exists: `i2c`
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `i2c`
[INFO] [stdout]   --> src/i2c/mod.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 26 |     i2c::I2cClkSrc::HSI16,
[INFO] [stdout]    |     ^^^ use of unresolved module or unlinked crate `i2c`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `i2c`, use `cargo add i2c` to add it to your `Cargo.toml`
[INFO] [stdout] help: consider importing this enum
[INFO] [stdout]    |
[INFO] [stdout]  2 + use stm32l0x1_hal::i2c::I2cClkSrc;
[INFO] [stdout]    |
[INFO] [stdout] help: if you import `I2cClkSrc`, refer to it directly
[INFO] [stdout]    |
[INFO] [stdout] 26 -     i2c::I2cClkSrc::HSI16,
[INFO] [stdout] 26 +     I2cClkSrc::HSI16,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `I2C` on type `Peripherals`
[INFO] [stdout]  --> src/i2c/mod.rs:13:13
[INFO] [stdout]   |
[INFO] [stdout] 8 | let i2c = d.I2C;
[INFO] [stdout]   |             ^^^ unknown field
[INFO] [stdout]   |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]   |
[INFO] [stdout] 8 | let i2c = d.I2C1;
[INFO] [stdout]   |                +
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::FLASH` in the current scope
[INFO] [stdout]  --> src/i2c/mod.rs:14:25
[INFO] [stdout]   |
[INFO] [stdout] 9 | let mut flash = d.FLASH.constrain();
[INFO] [stdout]   |                         ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::FLASH`
[INFO] [stdout]   |
[INFO] [stdout]  ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn constrain(self) -> T;
[INFO] [stdout]   |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::FLASH` here
[INFO] [stdout]   |
[INFO] [stdout]   = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]   |
[INFO] [stdout] 2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `PWR` in the current scope
[INFO] [stdout]   --> src/i2c/mod.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 10 | let mut pwr = d.PWR.constrain();
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `PWR`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `PWR` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `constrain` found for struct `stm32l0x1_hal::stm32l0x1::RCC` in the current scope
[INFO] [stdout]   --> src/i2c/mod.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | let mut rcc = d.RCC.constrain().freeze(&mut flash, &mut pwr);
[INFO] [stdout]    |                     ^^^^^^^^^ method not found in `stm32l0x1_hal::stm32l0x1::RCC`
[INFO] [stdout]    |
[INFO] [stdout]   ::: /opt/rustwide/workdir/src/common.rs:6:8
[INFO] [stdout]    |
[INFO] [stdout]  6 |     fn constrain(self) -> T;
[INFO] [stdout]    |        --------- the method is available for `stm32l0x1_hal::stm32l0x1::RCC` here
[INFO] [stdout]    |
[INFO] [stdout]    = help: items from traits can only be used if the trait is in scope
[INFO] [stdout] help: trait `Constrain` which provides `constrain` is implemented but not in scope; perhaps you want to import it
[INFO] [stdout]    |
[INFO] [stdout]  2 + use crate::stm32l0x1_hal::common::Constrain;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 17 previous errors
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0424, E0425, E0433, E0599, E0609.
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/adc.rs - adc (line 9)
[INFO] [stdout]     src/gpio.rs - gpio (line 7)
[INFO] [stdout]     src/i2c/mod.rs - i2c (line 8)
[INFO] [stdout]     src/rcc/mod.rs - rcc (line 8)
[INFO] [stdout]     src/serial/mod.rs - serial (line 7)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 5 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "7341ffaab14dd72667ea3b13055e0cabaeac86d73358f86a741e71f1858b4d5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7341ffaab14dd72667ea3b13055e0cabaeac86d73358f86a741e71f1858b4d5a", kill_on_drop: false }`
[INFO] [stdout] 7341ffaab14dd72667ea3b13055e0cabaeac86d73358f86a741e71f1858b4d5a
