[INFO] fetching crate az 1.2.1... [INFO] testing az-1.2.1 against 1.78.0 for beta-1.79-2 [INFO] extracting crate az 1.2.1 into /workspace/builds/worker-2-tc1/source [INFO] validating manifest of crates.io crate az 1.2.1 on toolchain 1.78.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.78.0" "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-2-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.78.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.78.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.78.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cace0d39a8eef1dcde5047af2915cea8394bd707b29ab6ecc758f8baf86ef644 [INFO] running `Command { std: "docker" "start" "-a" "cace0d39a8eef1dcde5047af2915cea8394bd707b29ab6ecc758f8baf86ef644", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cace0d39a8eef1dcde5047af2915cea8394bd707b29ab6ecc758f8baf86ef644", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cace0d39a8eef1dcde5047af2915cea8394bd707b29ab6ecc758f8baf86ef644", kill_on_drop: false }` [INFO] [stdout] cace0d39a8eef1dcde5047af2915cea8394bd707b29ab6ecc758f8baf86ef644 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.78.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f372c32c3f59b9717b14e8bcc053868802ce5bc94ca2eb87449f11e98bbf16b4 [INFO] running `Command { std: "docker" "start" "-a" "f372c32c3f59b9717b14e8bcc053868802ce5bc94ca2eb87449f11e98bbf16b4", kill_on_drop: false }` [INFO] [stderr] Compiling az v1.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.85s [INFO] running `Command { std: "docker" "inspect" "f372c32c3f59b9717b14e8bcc053868802ce5bc94ca2eb87449f11e98bbf16b4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f372c32c3f59b9717b14e8bcc053868802ce5bc94ca2eb87449f11e98bbf16b4", kill_on_drop: false }` [INFO] [stdout] f372c32c3f59b9717b14e8bcc053868802ce5bc94ca2eb87449f11e98bbf16b4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.78.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d503666881dcbe0a74684f021acba92a8529f40626425bda2f1c53f8a96771e6 [INFO] running `Command { std: "docker" "start" "-a" "d503666881dcbe0a74684f021acba92a8529f40626425bda2f1c53f8a96771e6", 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; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [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::(), 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::(), 12); [INFO] [stdout] 194 + assert_eq!(r.az::(), 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::(), 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::(), Some(12)); [INFO] [stdout] 195 + assert_eq!(r.checked_as::(), 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::(), 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::(), 12); [INFO] [stdout] 196 + assert_eq!(r.saturating_as::(), 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::(), 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::(), 12); [INFO] [stdout] 197 + assert_eq!(r.borrow().wrapping_as::(), 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::(), 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::(), 12); [INFO] [stdout] 197 + assert_eq!(r.borrow().wrapping_as::(), 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::(), (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::(), (12, false)); [INFO] [stdout] 198 + assert_eq!(r.overflowing_as::(), (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::(), 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::(), 12); [INFO] [stdout] 199 + assert_eq!(r.unwrapped_as::(), 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::(), 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::(), None); [INFO] [stdout] 201 + assert_eq!(r.checked_as::(), 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::(), 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::(), 0); [INFO] [stdout] 202 + assert_eq!(r.saturating_as::(), 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::(), 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::(), 5u32.wrapping_neg()); [INFO] [stdout] 203 + assert_eq!(r.wrapping_as::(), 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::(), [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::(), [INFO] [stdout] 205 + r.overflowing_as::(), [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: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.42s [INFO] running `Command { std: "docker" "inspect" "d503666881dcbe0a74684f021acba92a8529f40626425bda2f1c53f8a96771e6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d503666881dcbe0a74684f021acba92a8529f40626425bda2f1c53f8a96771e6", kill_on_drop: false }` [INFO] [stdout] d503666881dcbe0a74684f021acba92a8529f40626425bda2f1c53f8a96771e6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+1.78.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 92e7f8401a58513a7d32011cc9fed5d250c5acef61c1e98bad37251c9ffbc32a [INFO] running `Command { std: "docker" "start" "-a" "92e7f8401a58513a7d32011cc9fed5d250c5acef61c1e98bad37251c9ffbc32a", kill_on_drop: false }` [INFO] [stderr] warning: method `to_round` is never used [INFO] [stderr] --> src/tests/mod.rs:66:8 [INFO] [stderr] | [INFO] [stderr] 56 | trait Float [INFO] [stderr] | ----- method in this trait [INFO] [stderr] ... [INFO] [stderr] 66 | fn to_round(self) -> Round; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:194:17 [INFO] [stderr] | [INFO] [stderr] 194 | assert_eq!(r.borrow().az::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 194 - assert_eq!(r.borrow().az::(), 12); [INFO] [stderr] 194 + assert_eq!(r.az::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:195:17 [INFO] [stderr] | [INFO] [stderr] 195 | assert_eq!(r.borrow().checked_as::(), Some(12)); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 195 - assert_eq!(r.borrow().checked_as::(), Some(12)); [INFO] [stderr] 195 + assert_eq!(r.checked_as::(), Some(12)); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:196:17 [INFO] [stderr] | [INFO] [stderr] 196 | assert_eq!(r.borrow().saturating_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 196 - assert_eq!(r.borrow().saturating_as::(), 12); [INFO] [stderr] 196 + assert_eq!(r.saturating_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:197:26 [INFO] [stderr] | [INFO] [stderr] 197 | assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 197 - assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] 197 + assert_eq!(r.borrow().wrapping_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:197:17 [INFO] [stderr] | [INFO] [stderr] 197 | assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 197 - assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] 197 + assert_eq!(r.borrow().wrapping_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:198:17 [INFO] [stderr] | [INFO] [stderr] 198 | assert_eq!(r.borrow().overflowing_as::(), (12, false)); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 198 - assert_eq!(r.borrow().overflowing_as::(), (12, false)); [INFO] [stderr] 198 + assert_eq!(r.overflowing_as::(), (12, false)); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:199:17 [INFO] [stderr] | [INFO] [stderr] 199 | assert_eq!(r.borrow().unwrapped_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 199 - assert_eq!(r.borrow().unwrapped_as::(), 12); [INFO] [stderr] 199 + assert_eq!(r.unwrapped_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:201:17 [INFO] [stderr] | [INFO] [stderr] 201 | assert_eq!(r.borrow().checked_as::(), None); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 201 - assert_eq!(r.borrow().checked_as::(), None); [INFO] [stderr] 201 + assert_eq!(r.checked_as::(), None); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:202:17 [INFO] [stderr] | [INFO] [stderr] 202 | assert_eq!(r.borrow().saturating_as::(), 0); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 202 - assert_eq!(r.borrow().saturating_as::(), 0); [INFO] [stderr] 202 + assert_eq!(r.saturating_as::(), 0); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:203:17 [INFO] [stderr] | [INFO] [stderr] 203 | assert_eq!(r.borrow().wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 203 - assert_eq!(r.borrow().wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] 203 + assert_eq!(r.wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:205:10 [INFO] [stderr] | [INFO] [stderr] 205 | r.borrow().overflowing_as::(), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 205 - r.borrow().overflowing_as::(), [INFO] [stderr] 205 + r.overflowing_as::(), [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `az` (lib test) generated 12 warnings (run `cargo fix --lib -p az --tests` to apply 11 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/az-bb22cbdf05bce8f4) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test tests::az ... ok [INFO] [stdout] test tests::float_to_int::display ... ok [INFO] [stdout] test tests::from ... ok [INFO] [stdout] test tests::float_to_int::rounding ... ok [INFO] [stdout] test tests::int_to_int::unsigned_to_unsigned ... ok [INFO] [stdout] test tests::to_float::specific_to_float ... ok [INFO] [stdout] test tests::borrow_as ... ok [INFO] [stdout] test tests::int_to_int::signed_to_signed ... ok [INFO] [stdout] test tests::int_to_int::bool_to_int ... ok [INFO] [stdout] test tests::int_to_int::unsigned_to_signed ... ok [INFO] [stdout] test tests::to_float::to_float ... ok [INFO] [stdout] test tests::float_to_int::float_to_int ... ok [INFO] [stdout] test tests::int_to_int::signed_to_unsigned ... ok [INFO] [stdout] test tests::float_to_int::large_float_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::nan_saturating_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::infinite_overflowing_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::nan_overflowing_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::infinite_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::int_to_int::large_int_as_panic - should panic ... ok [INFO] [stdout] test tests::int_to_int::large_int_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::nan_unwrapped_as_panic - should panic ... ok [INFO] [stderr] Doc-tests az [INFO] [stdout] test tests::float_to_int::large_float_as_panic - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 38 tests [INFO] [stdout] test src/lib.rs - Az (line 575) ... ok [INFO] [stdout] test src/lib.rs - (line 22) ... ok [INFO] [stdout] test src/lib.rs - CastFrom (line 310) ... ok [INFO] [stdout] test src/lib.rs - OverflowingCast (line 251) ... ok [INFO] [stdout] test src/lib.rs - (line 43) ... ok [INFO] [stdout] test src/lib.rs - Cast (line 152) ... ok [INFO] [stdout] test src/lib.rs - OverflowingAs (line 873) ... ok [INFO] [stdout] test src/lib.rs - SaturatingAs (line 721) ... ok [INFO] [stdout] test src/lib.rs - CheckedAs (line 648) ... ok [INFO] [stdout] test src/lib.rs - CheckedCast (line 173) ... ok [INFO] [stdout] test src/lib.rs - CheckedCastFrom (line 345) ... ok [INFO] [stdout] test src/lib.rs - OverflowingAs (line 863) ... ok [INFO] [stdout] test src/lib.rs - Az (line 566) ... ok [INFO] [stdout] test src/lib.rs - (line 70) ... ok [INFO] [stdout] test src/lib.rs - OverflowingCastFrom (line 453) ... ok [INFO] [stdout] test src/lib.rs - CheckedAs (line 635) ... ok [INFO] [stdout] test src/lib.rs - Round (line 1125) ... ok [INFO] [stdout] test src/lib.rs - SaturatingCastFrom (line 381) ... ok [INFO] [stdout] test src/lib.rs - SaturatingAs (line 712) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 952) ... ok [INFO] [stdout] test src/lib.rs - SaturatingCast (line 203) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 936) ... ok [INFO] [stdout] test src/lib.rs - WrappingCastFrom (line 417) ... ok [INFO] [stdout] test src/lib.rs - WrappingAs (line 785) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCastFrom (line 489) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCastFrom (line 505) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCast (line 282) ... ok [INFO] [stdout] test src/lib.rs - WrappingCast (line 228) ... ok [INFO] [stdout] test src/lib.rs - cast (line 1003) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 944) ... ok [INFO] [stdout] test src/lib.rs - overflowing_cast (line 1083) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCast (line 291) ... ok [INFO] [stdout] test src/lib.rs - WrappingAs (line 794) ... ok [INFO] [stdout] test src/lib.rs - saturating_cast (line 1041) ... ok [INFO] [stdout] test src/lib.rs - checked_cast (line 1017) ... ok [INFO] [stdout] test src/lib.rs - unwrapped_cast (line 1102) ... ok [INFO] [stdout] test src/lib.rs - unwrapped_cast (line 1109) ... ok [INFO] [stdout] test src/lib.rs - wrapping_cast (line 1060) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 38 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.51s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "92e7f8401a58513a7d32011cc9fed5d250c5acef61c1e98bad37251c9ffbc32a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "92e7f8401a58513a7d32011cc9fed5d250c5acef61c1e98bad37251c9ffbc32a", kill_on_drop: false }` [INFO] [stdout] 92e7f8401a58513a7d32011cc9fed5d250c5acef61c1e98bad37251c9ffbc32a [INFO] testing az-1.2.1 against beta-2024-05-11 for beta-1.79-2 [INFO] extracting crate az 1.2.1 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate az 1.2.1 on toolchain beta-2024-05-11 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-05-11" "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-2-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-05-11" "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" "+beta-2024-05-11" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-05-11" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 26bd85a41b4e4f18ce2141f8afa793d0242bac2b26ed20f5666ed8a43ca52432 [INFO] running `Command { std: "docker" "start" "-a" "26bd85a41b4e4f18ce2141f8afa793d0242bac2b26ed20f5666ed8a43ca52432", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "26bd85a41b4e4f18ce2141f8afa793d0242bac2b26ed20f5666ed8a43ca52432", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26bd85a41b4e4f18ce2141f8afa793d0242bac2b26ed20f5666ed8a43ca52432", kill_on_drop: false }` [INFO] [stdout] 26bd85a41b4e4f18ce2141f8afa793d0242bac2b26ed20f5666ed8a43ca52432 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-05-11" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b584def3e27651f9e5ed63786e886ce36fab9e6f91f27fe53346e8024afa6f6e [INFO] running `Command { std: "docker" "start" "-a" "b584def3e27651f9e5ed63786e886ce36fab9e6f91f27fe53346e8024afa6f6e", kill_on_drop: false }` [INFO] [stderr] Compiling az v1.2.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.10s [INFO] running `Command { std: "docker" "inspect" "b584def3e27651f9e5ed63786e886ce36fab9e6f91f27fe53346e8024afa6f6e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b584def3e27651f9e5ed63786e886ce36fab9e6f91f27fe53346e8024afa6f6e", kill_on_drop: false }` [INFO] [stdout] b584def3e27651f9e5ed63786e886ce36fab9e6f91f27fe53346e8024afa6f6e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-05-11" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5c88eb51f9868051d419bb1be091439afc5448229670381728dc0ece080a4210 [INFO] running `Command { std: "docker" "start" "-a" "5c88eb51f9868051d419bb1be091439afc5448229670381728dc0ece080a4210", 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; [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 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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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 for &'_ I { [INFO] [stdout] 168 | | fn checked_cast(self) -> Option { [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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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 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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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 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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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 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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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 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 may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [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::(), 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::(), 12); [INFO] [stdout] 194 + assert_eq!(r.az::(), 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::(), 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::(), Some(12)); [INFO] [stdout] 195 + assert_eq!(r.checked_as::(), 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::(), 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::(), 12); [INFO] [stdout] 196 + assert_eq!(r.saturating_as::(), 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::(), 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::(), 12); [INFO] [stdout] 197 + assert_eq!(r.borrow().wrapping_as::(), 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::(), 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::(), 12); [INFO] [stdout] 197 + assert_eq!(r.borrow().wrapping_as::(), 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::(), (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::(), (12, false)); [INFO] [stdout] 198 + assert_eq!(r.overflowing_as::(), (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::(), 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::(), 12); [INFO] [stdout] 199 + assert_eq!(r.unwrapped_as::(), 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::(), 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::(), None); [INFO] [stdout] 201 + assert_eq!(r.checked_as::(), 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::(), 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::(), 0); [INFO] [stdout] 202 + assert_eq!(r.saturating_as::(), 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::(), 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::(), 5u32.wrapping_neg()); [INFO] [stdout] 203 + assert_eq!(r.wrapping_as::(), 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::(), [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::(), [INFO] [stdout] 205 + r.overflowing_as::(), [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 `test` profile [unoptimized + debuginfo] target(s) in 6.95s [INFO] running `Command { std: "docker" "inspect" "5c88eb51f9868051d419bb1be091439afc5448229670381728dc0ece080a4210", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c88eb51f9868051d419bb1be091439afc5448229670381728dc0ece080a4210", kill_on_drop: false }` [INFO] [stdout] 5c88eb51f9868051d419bb1be091439afc5448229670381728dc0ece080a4210 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2024-05-11" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 2f245d79d1b3484d6b7911453811f48f647f14826e86bd30c6ee33a4f87fc081 [INFO] running `Command { std: "docker" "start" "-a" "2f245d79d1b3484d6b7911453811f48f647f14826e86bd30c6ee33a4f87fc081", kill_on_drop: false }` [INFO] [stderr] warning: method `to_round` is never used [INFO] [stderr] --> src/tests/mod.rs:66:8 [INFO] [stderr] | [INFO] [stderr] 56 | trait Float [INFO] [stderr] | ----- method in this trait [INFO] [stderr] ... [INFO] [stderr] 66 | fn to_round(self) -> Round; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 162 | / impl Cast for &'_ I { [INFO] [stderr] 163 | | fn cast(self) -> u32 { [INFO] [stderr] 164 | | self.0.cast() [INFO] [stderr] 165 | | } [INFO] [stderr] 166 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:167:5 [INFO] [stderr] | [INFO] [stderr] 167 | / impl CheckedCast for &'_ I { [INFO] [stderr] 168 | | fn checked_cast(self) -> Option { [INFO] [stderr] 169 | | self.0.checked_cast() [INFO] [stderr] 170 | | } [INFO] [stderr] 171 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:172:5 [INFO] [stderr] | [INFO] [stderr] 172 | / impl SaturatingCast for &'_ I { [INFO] [stderr] 173 | | fn saturating_cast(self) -> u32 { [INFO] [stderr] 174 | | self.0.saturating_cast() [INFO] [stderr] 175 | | } [INFO] [stderr] 176 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:177:5 [INFO] [stderr] | [INFO] [stderr] 177 | / impl WrappingCast for &'_ I { [INFO] [stderr] 178 | | fn wrapping_cast(self) -> u32 { [INFO] [stderr] 179 | | self.0.wrapping_cast() [INFO] [stderr] 180 | | } [INFO] [stderr] 181 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:182:5 [INFO] [stderr] | [INFO] [stderr] 182 | / impl OverflowingCast for &'_ I { [INFO] [stderr] 183 | | fn overflowing_cast(self) -> (u32, bool) { [INFO] [stderr] 184 | | self.0.overflowing_cast() [INFO] [stderr] 185 | | } [INFO] [stderr] 186 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stderr] --> src/tests/mod.rs:187:5 [INFO] [stderr] | [INFO] [stderr] 187 | / impl UnwrappedCast for &'_ I { [INFO] [stderr] 188 | | fn unwrapped_cast(self) -> u32 { [INFO] [stderr] 189 | | self.0.unwrapped_cast() [INFO] [stderr] 190 | | } [INFO] [stderr] 191 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: move this `impl` block outside the of the current function `borrow_as` [INFO] [stderr] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = 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] [stderr] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:194:17 [INFO] [stderr] | [INFO] [stderr] 194 | assert_eq!(r.borrow().az::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 194 - assert_eq!(r.borrow().az::(), 12); [INFO] [stderr] 194 + assert_eq!(r.az::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:195:17 [INFO] [stderr] | [INFO] [stderr] 195 | assert_eq!(r.borrow().checked_as::(), Some(12)); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 195 - assert_eq!(r.borrow().checked_as::(), Some(12)); [INFO] [stderr] 195 + assert_eq!(r.checked_as::(), Some(12)); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:196:17 [INFO] [stderr] | [INFO] [stderr] 196 | assert_eq!(r.borrow().saturating_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 196 - assert_eq!(r.borrow().saturating_as::(), 12); [INFO] [stderr] 196 + assert_eq!(r.saturating_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:197:26 [INFO] [stderr] | [INFO] [stderr] 197 | assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 197 - assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] 197 + assert_eq!(r.borrow().wrapping_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:197:17 [INFO] [stderr] | [INFO] [stderr] 197 | assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 197 - assert_eq!(r.borrow().borrow().wrapping_as::(), 12); [INFO] [stderr] 197 + assert_eq!(r.borrow().wrapping_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:198:17 [INFO] [stderr] | [INFO] [stderr] 198 | assert_eq!(r.borrow().overflowing_as::(), (12, false)); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 198 - assert_eq!(r.borrow().overflowing_as::(), (12, false)); [INFO] [stderr] 198 + assert_eq!(r.overflowing_as::(), (12, false)); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:199:17 [INFO] [stderr] | [INFO] [stderr] 199 | assert_eq!(r.borrow().unwrapped_as::(), 12); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 199 - assert_eq!(r.borrow().unwrapped_as::(), 12); [INFO] [stderr] 199 + assert_eq!(r.unwrapped_as::(), 12); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:201:17 [INFO] [stderr] | [INFO] [stderr] 201 | assert_eq!(r.borrow().checked_as::(), None); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 201 - assert_eq!(r.borrow().checked_as::(), None); [INFO] [stderr] 201 + assert_eq!(r.checked_as::(), None); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:202:17 [INFO] [stderr] | [INFO] [stderr] 202 | assert_eq!(r.borrow().saturating_as::(), 0); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 202 - assert_eq!(r.borrow().saturating_as::(), 0); [INFO] [stderr] 202 + assert_eq!(r.saturating_as::(), 0); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:203:17 [INFO] [stderr] | [INFO] [stderr] 203 | assert_eq!(r.borrow().wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 203 - assert_eq!(r.borrow().wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] 203 + assert_eq!(r.wrapping_as::(), 5u32.wrapping_neg()); [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.borrow()` on a reference in this situation does nothing [INFO] [stderr] --> src/tests/mod.rs:205:10 [INFO] [stderr] | [INFO] [stderr] 205 | r.borrow().overflowing_as::(), [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = 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] [stderr] help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] 205 - r.borrow().overflowing_as::(), [INFO] [stderr] 205 + r.overflowing_as::(), [INFO] [stderr] | [INFO] [stderr] help: if you meant to clone `I`, implement `Clone` for it [INFO] [stderr] | [INFO] [stderr] 161 + #[derive(Clone)] [INFO] [stderr] 162 | struct I(i32); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `az` (lib test) generated 18 warnings (run `cargo fix --lib -p az --tests` to apply 11 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/az-d93583a6337be2fb) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test tests::borrow_as ... ok [INFO] [stdout] test tests::from ... ok [INFO] [stdout] test tests::float_to_int::display ... ok [INFO] [stdout] test tests::int_to_int::bool_to_int ... ok [INFO] [stdout] test tests::int_to_int::signed_to_unsigned ... ok [INFO] [stdout] test tests::float_to_int::float_to_int ... ok [INFO] [stdout] test tests::to_float::to_float ... ok [INFO] [stdout] test tests::az ... ok [INFO] [stdout] test tests::to_float::specific_to_float ... ok [INFO] [stdout] test tests::int_to_int::signed_to_signed ... ok [INFO] [stdout] test tests::int_to_int::unsigned_to_signed ... ok [INFO] [stdout] test tests::int_to_int::unsigned_to_unsigned ... ok [INFO] [stdout] test tests::float_to_int::rounding ... ok [INFO] [stdout] test tests::float_to_int::infinite_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::infinite_overflowing_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::nan_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::int_to_int::large_int_as_panic - should panic ... ok [INFO] [stdout] test tests::int_to_int::large_int_unwrapped_as_panic - should panic ... ok [INFO] [stderr] Doc-tests az [INFO] [stdout] test tests::float_to_int::nan_saturating_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::nan_overflowing_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::large_float_unwrapped_as_panic - should panic ... ok [INFO] [stdout] test tests::float_to_int::large_float_as_panic - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 38 tests [INFO] [stdout] test src/lib.rs - CheckedAs (line 648) ... FAILED [INFO] [stdout] test src/lib.rs - Az (line 575) ... FAILED [INFO] [stdout] test src/lib.rs - (line 70) ... FAILED [INFO] [stdout] test src/lib.rs - OverflowingAs (line 873) ... FAILED [INFO] [stdout] test src/lib.rs - SaturatingAs (line 721) ... FAILED [INFO] [stdout] test src/lib.rs - CheckedAs (line 635) ... ok [INFO] [stdout] test src/lib.rs - Round (line 1125) ... ok [INFO] [stdout] test src/lib.rs - CheckedCast (line 173) ... ok [INFO] [stdout] test src/lib.rs - Cast (line 152) ... ok [INFO] [stdout] test src/lib.rs - Az (line 566) ... ok [INFO] [stdout] test src/lib.rs - CastFrom (line 310) ... ok [INFO] [stdout] test src/lib.rs - SaturatingCast (line 203) ... ok [INFO] [stdout] test src/lib.rs - (line 43) ... ok [INFO] [stdout] test src/lib.rs - CheckedCastFrom (line 345) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 952) ... FAILED [INFO] [stdout] test src/lib.rs - OverflowingCastFrom (line 453) ... ok [INFO] [stdout] test src/lib.rs - OverflowingAs (line 863) ... ok [INFO] [stdout] test src/lib.rs - SaturatingAs (line 712) ... ok [INFO] [stdout] test src/lib.rs - OverflowingCast (line 251) ... ok [INFO] [stdout] test src/lib.rs - SaturatingCastFrom (line 381) ... ok [INFO] [stdout] test src/lib.rs - (line 22) ... ok [INFO] [stdout] test src/lib.rs - WrappingAs (line 794) ... FAILED [INFO] [stdout] test src/lib.rs - cast (line 1003) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 936) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedAs (line 944) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCast (line 291) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCastFrom (line 505) ... ok [INFO] [stdout] test src/lib.rs - checked_cast (line 1017) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCast (line 282) ... ok [INFO] [stdout] test src/lib.rs - unwrapped_cast (line 1109) ... ok [INFO] [stdout] test src/lib.rs - UnwrappedCastFrom (line 489) ... ok [INFO] [stdout] test src/lib.rs - WrappingAs (line 785) ... ok [INFO] [stdout] test src/lib.rs - WrappingCastFrom (line 417) ... ok [INFO] [stdout] test src/lib.rs - WrappingCast (line 228) ... ok [INFO] [stdout] test src/lib.rs - unwrapped_cast (line 1102) ... ok [INFO] [stdout] test src/lib.rs - saturating_cast (line 1041) ... ok [INFO] [stdout] test src/lib.rs - wrapping_cast (line 1060) ... ok [INFO] [stdout] test src/lib.rs - overflowing_cast (line 1083) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - CheckedAs (line 648) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:653:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl CheckedCast for &'_ I { [INFO] [stdout] 9 | | fn checked_cast(self) -> Option { self.0.checked_cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_648_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:646:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - Az (line 575) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:580:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl Cast for &'_ I { [INFO] [stdout] 9 | | fn cast(self) -> i64 { self.0.cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_575_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:573:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - (line 70) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:76:1 [INFO] [stdout] | [INFO] [stdout] 9 | / impl Cast for &'_ I { [INFO] [stdout] 10 | | fn cast(self) -> i64 { self.0.cast() } [INFO] [stdout] 11 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_70_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:68:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - OverflowingAs (line 873) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:878:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl OverflowingCast for &'_ I { [INFO] [stdout] 9 | | fn overflowing_cast(self) -> (u32, bool) { self.0.overflowing_cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_873_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:871:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - SaturatingAs (line 721) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:726:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl SaturatingCast for &'_ I { [INFO] [stdout] 9 | | fn saturating_cast(self) -> u32 { self.0.saturating_cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_721_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:719:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - UnwrappedAs (line 952) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:957:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl UnwrappedCast for &'_ I { [INFO] [stdout] 9 | | fn unwrapped_cast(self) -> i64 { self.0.unwrapped_cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_952_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:950:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] ---- src/lib.rs - WrappingAs (line 794) stdout ---- [INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> src/lib.rs:799:1 [INFO] [stdout] | [INFO] [stdout] 8 | / impl WrappingCast for &'_ I { [INFO] [stdout] 9 | | fn wrapping_cast(self) -> u32 { self.0.wrapping_cast() } [INFO] [stdout] 10 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current function `_doctest_main_src_lib_rs_794_0` and up 2 bodies [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [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 [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> src/lib.rs:792:9 [INFO] [stdout] | [INFO] [stdout] 1 | #![deny(warnings)] [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: `#[deny(non_local_definitions)]` implied by `#[deny(warnings)]` [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - (line 70) [INFO] [stdout] src/lib.rs - Az (line 575) [INFO] [stdout] src/lib.rs - CheckedAs (line 648) [INFO] [stdout] src/lib.rs - OverflowingAs (line 873) [INFO] [stdout] src/lib.rs - SaturatingAs (line 721) [INFO] [stdout] src/lib.rs - UnwrappedAs (line 952) [INFO] [stdout] src/lib.rs - WrappingAs (line 794) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 31 passed; 7 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.43s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "2f245d79d1b3484d6b7911453811f48f647f14826e86bd30c6ee33a4f87fc081", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2f245d79d1b3484d6b7911453811f48f647f14826e86bd30c6ee33a4f87fc081", kill_on_drop: false }` [INFO] [stdout] 2f245d79d1b3484d6b7911453811f48f647f14826e86bd30c6ee33a4f87fc081