[INFO] fetching crate az 1.2.1...
[INFO] checking az-1.2.1 against master#b0696a5160711c068cb1f01b7437db7990d15750 for pr-121848
[INFO] extracting crate az 1.2.1 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate az 1.2.1 on toolchain b0696a5160711c068cb1f01b7437db7990d15750
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate az 1.2.1
[INFO] finished tweaking crates.io crate az 1.2.1
[INFO] tweaked toml for crates.io crate az 1.2.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d2e9b8c197c2b662272506addd19c6bc9f8b3f91df8768b8ac46c3a16375c1ff
[INFO] running `Command { std: "docker" "start" "-a" "d2e9b8c197c2b662272506addd19c6bc9f8b3f91df8768b8ac46c3a16375c1ff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d2e9b8c197c2b662272506addd19c6bc9f8b3f91df8768b8ac46c3a16375c1ff", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2e9b8c197c2b662272506addd19c6bc9f8b3f91df8768b8ac46c3a16375c1ff", kill_on_drop: false }`
[INFO] [stdout] d2e9b8c197c2b662272506addd19c6bc9f8b3f91df8768b8ac46c3a16375c1ff
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b0696a5160711c068cb1f01b7437db7990d15750" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b3ef5c335628f9906e4cedb9fceaaf9394f1142dad159469c3de59c59cd23b83
[INFO] running `Command { std: "docker" "start" "-a" "b3ef5c335628f9906e4cedb9fceaaf9394f1142dad159469c3de59c59cd23b83", kill_on_drop: false }`
[INFO] [stderr]    Compiling az v1.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: method `to_round` is never used
[INFO] [stdout]   --> src/tests/mod.rs:66:8
[INFO] [stdout]    |
[INFO] [stdout] 56 | trait Float
[INFO] [stdout]    |       ----- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 66 |     fn to_round(self) -> Round<Self>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:162:5
[INFO] [stdout]     |
[INFO] [stdout] 162 | /     impl Cast<u32> for &'_ I {
[INFO] [stdout] 163 | |         fn cast(self) -> u32 {
[INFO] [stdout] 164 | |             self.0.cast()
[INFO] [stdout] 165 | |         }
[INFO] [stdout] 166 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:167:5
[INFO] [stdout]     |
[INFO] [stdout] 167 | /     impl CheckedCast<u32> for &'_ I {
[INFO] [stdout] 168 | |         fn checked_cast(self) -> Option<u32> {
[INFO] [stdout] 169 | |             self.0.checked_cast()
[INFO] [stdout] 170 | |         }
[INFO] [stdout] 171 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:172:5
[INFO] [stdout]     |
[INFO] [stdout] 172 | /     impl SaturatingCast<u32> for &'_ I {
[INFO] [stdout] 173 | |         fn saturating_cast(self) -> u32 {
[INFO] [stdout] 174 | |             self.0.saturating_cast()
[INFO] [stdout] 175 | |         }
[INFO] [stdout] 176 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 | /     impl WrappingCast<u32> for &'_ I {
[INFO] [stdout] 178 | |         fn wrapping_cast(self) -> u32 {
[INFO] [stdout] 179 | |             self.0.wrapping_cast()
[INFO] [stdout] 180 | |         }
[INFO] [stdout] 181 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:182:5
[INFO] [stdout]     |
[INFO] [stdout] 182 | /     impl OverflowingCast<u32> for &'_ I {
[INFO] [stdout] 183 | |         fn overflowing_cast(self) -> (u32, bool) {
[INFO] [stdout] 184 | |             self.0.overflowing_cast()
[INFO] [stdout] 185 | |         }
[INFO] [stdout] 186 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> src/tests/mod.rs:187:5
[INFO] [stdout]     |
[INFO] [stdout] 187 | /     impl UnwrappedCast<u32> for &'_ I {
[INFO] [stdout] 188 | |         fn unwrapped_cast(self) -> u32 {
[INFO] [stdout] 189 | |             self.0.unwrapped_cast()
[INFO] [stdout] 190 | |         }
[INFO] [stdout] 191 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current function `borrow_as`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:194:17
[INFO] [stdout]     |
[INFO] [stdout] 194 |     assert_eq!(r.borrow().az::<u32>(), 12);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout]     = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 194 -     assert_eq!(r.borrow().az::<u32>(), 12);
[INFO] [stdout] 194 +     assert_eq!(r.az::<u32>(), 12);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:195:17
[INFO] [stdout]     |
[INFO] [stdout] 195 |     assert_eq!(r.borrow().checked_as::<u32>(), Some(12));
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 195 -     assert_eq!(r.borrow().checked_as::<u32>(), Some(12));
[INFO] [stdout] 195 +     assert_eq!(r.checked_as::<u32>(), Some(12));
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 196 |     assert_eq!(r.borrow().saturating_as::<u32>(), 12);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 196 -     assert_eq!(r.borrow().saturating_as::<u32>(), 12);
[INFO] [stdout] 196 +     assert_eq!(r.saturating_as::<u32>(), 12);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:197:26
[INFO] [stdout]     |
[INFO] [stdout] 197 |     assert_eq!(r.borrow().borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout]     |                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 197 -     assert_eq!(r.borrow().borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout] 197 +     assert_eq!(r.borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:197:17
[INFO] [stdout]     |
[INFO] [stdout] 197 |     assert_eq!(r.borrow().borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 197 -     assert_eq!(r.borrow().borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout] 197 +     assert_eq!(r.borrow().wrapping_as::<u32>(), 12);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |     assert_eq!(r.borrow().overflowing_as::<u32>(), (12, false));
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 198 -     assert_eq!(r.borrow().overflowing_as::<u32>(), (12, false));
[INFO] [stdout] 198 +     assert_eq!(r.overflowing_as::<u32>(), (12, false));
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:199:17
[INFO] [stdout]     |
[INFO] [stdout] 199 |     assert_eq!(r.borrow().unwrapped_as::<u32>(), 12);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 199 -     assert_eq!(r.borrow().unwrapped_as::<u32>(), 12);
[INFO] [stdout] 199 +     assert_eq!(r.unwrapped_as::<u32>(), 12);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |     assert_eq!(r.borrow().checked_as::<u32>(), None);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 201 -     assert_eq!(r.borrow().checked_as::<u32>(), None);
[INFO] [stdout] 201 +     assert_eq!(r.checked_as::<u32>(), None);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:202:17
[INFO] [stdout]     |
[INFO] [stdout] 202 |     assert_eq!(r.borrow().saturating_as::<u32>(), 0);
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 202 -     assert_eq!(r.borrow().saturating_as::<u32>(), 0);
[INFO] [stdout] 202 +     assert_eq!(r.saturating_as::<u32>(), 0);
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:203:17
[INFO] [stdout]     |
[INFO] [stdout] 203 |     assert_eq!(r.borrow().wrapping_as::<u32>(), 5u32.wrapping_neg());
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 203 -     assert_eq!(r.borrow().wrapping_as::<u32>(), 5u32.wrapping_neg());
[INFO] [stdout] 203 +     assert_eq!(r.wrapping_as::<u32>(), 5u32.wrapping_neg());
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.borrow()` on a reference in this situation does nothing
[INFO] [stdout]    --> src/tests/mod.rs:205:10
[INFO] [stdout]     |
[INFO] [stdout] 205 |         r.borrow().overflowing_as::<u32>(),
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the type `I` does not implement `Borrow`, so calling `borrow` on `&I` copies the reference, which does not do anything and can be removed
[INFO] [stdout] help: remove this redundant call
[INFO] [stdout]     |
[INFO] [stdout] 205 -         r.borrow().overflowing_as::<u32>(),
[INFO] [stdout] 205 +         r.overflowing_as::<u32>(),
[INFO] [stdout]     |
[INFO] [stdout] help: if you meant to clone `I`, implement `Clone` for it
[INFO] [stdout]     |
[INFO] [stdout] 161 +     #[derive(Clone)]
[INFO] [stdout] 162 |     struct I(i32);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.51s
[INFO] running `Command { std: "docker" "inspect" "b3ef5c335628f9906e4cedb9fceaaf9394f1142dad159469c3de59c59cd23b83", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b3ef5c335628f9906e4cedb9fceaaf9394f1142dad159469c3de59c59cd23b83", kill_on_drop: false }`
[INFO] [stdout] b3ef5c335628f9906e4cedb9fceaaf9394f1142dad159469c3de59c59cd23b83
