[INFO] fetching crate zlo 0.1.0... [INFO] testing zlo-0.1.0 against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] extracting crate zlo 0.1.0 into /workspace/builds/worker-5-tc2/source [INFO] started tweaking crates.io crate zlo 0.1.0 [INFO] finished tweaking crates.io crate zlo 0.1.0 [INFO] tweaked toml for crates.io crate zlo 0.1.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate zlo 0.1.0 on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 7 packages to latest compatible versions [INFO] [stderr] Adding serde_bytes v0.10.5 (available: v0.11.17) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2a35eadec2749eff1e796a546e11076f4befe09a84fa34a258d5716b51faec7c [INFO] running `Command { std: "docker" "start" "-a" "2a35eadec2749eff1e796a546e11076f4befe09a84fa34a258d5716b51faec7c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2a35eadec2749eff1e796a546e11076f4befe09a84fa34a258d5716b51faec7c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2a35eadec2749eff1e796a546e11076f4befe09a84fa34a258d5716b51faec7c", kill_on_drop: false }` [INFO] [stdout] 2a35eadec2749eff1e796a546e11076f4befe09a84fa34a258d5716b51faec7c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2d4ef5d5ce5e3a8b33308bbc55ebf1d0e4ff57c2871da3f49f5dfb80e41a11d6 [INFO] running `Command { std: "docker" "start" "-a" "2d4ef5d5ce5e3a8b33308bbc55ebf1d0e4ff57c2871da3f49f5dfb80e41a11d6", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling zlo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:84:24 [INFO] [stdout] | [INFO] [stdout] 84 | let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 84 - let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] 84 + let w = if a { self.store >> self.shift } else { 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:85:28 [INFO] [stdout] | [INFO] [stdout] 85 | | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] 85 + | (s << if a { 8 - self.shift } else { 0 }); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/de/mod.rs:434:29 [INFO] [stdout] | [INFO] [stdout] 434 | let value = try!(serde::de::DeserializeSeed::deserialize( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/lib.rs:70:49 [INFO] [stdout] | [INFO] [stdout] 70 | Error::Io(ref err) => error::Error::description(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:79:32 [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de/mod.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 308 | / fn deserialize_enum( [INFO] [stdout] 309 | | self, [INFO] [stdout] 310 | | _enum: &'static str, [INFO] [stdout] 311 | | _variants: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 314 | | where [INFO] [stdout] 315 | | V: serde::de::Visitor<'de>, [INFO] [stdout] | |___________________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] 316 | { [INFO] [stdout] 317 | impl<'de, 'a, R: 'a, S> serde::de::EnumAccess<'de> [INFO] [stdout] | ^ --------------------- `EnumAccess` is not local [INFO] [stdout] | _________| [INFO] [stdout] | | [INFO] [stdout] 318 | | for &'a mut Deserializer [INFO] [stdout] | |_________________________------------_____^ [INFO] [stdout] | | [INFO] [stdout] | `Deserializer` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s [INFO] running `Command { std: "docker" "inspect" "2d4ef5d5ce5e3a8b33308bbc55ebf1d0e4ff57c2871da3f49f5dfb80e41a11d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d4ef5d5ce5e3a8b33308bbc55ebf1d0e4ff57c2871da3f49f5dfb80e41a11d6", kill_on_drop: false }` [INFO] [stdout] 2d4ef5d5ce5e3a8b33308bbc55ebf1d0e4ff57c2871da3f49f5dfb80e41a11d6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0e96e6f0d1189e4c60572a290bea6670a8d1f590acc66d9fe6c35db6fc1e7421 [INFO] running `Command { std: "docker" "start" "-a" "0e96e6f0d1189e4c60572a290bea6670a8d1f590acc66d9fe6c35db6fc1e7421", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:84:24 [INFO] [stdout] | [INFO] [stdout] 84 | let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 84 - let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] 84 + let w = if a { self.store >> self.shift } else { 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:85:28 [INFO] [stdout] | [INFO] [stdout] 85 | | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] 85 + | (s << if a { 8 - self.shift } else { 0 }); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/de/mod.rs:434:29 [INFO] [stdout] | [INFO] [stdout] 434 | let value = try!(serde::de::DeserializeSeed::deserialize( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/lib.rs:70:49 [INFO] [stdout] | [INFO] [stdout] 70 | Error::Io(ref err) => error::Error::description(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:79:32 [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de/mod.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 308 | / fn deserialize_enum( [INFO] [stdout] 309 | | self, [INFO] [stdout] 310 | | _enum: &'static str, [INFO] [stdout] 311 | | _variants: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 314 | | where [INFO] [stdout] 315 | | V: serde::de::Visitor<'de>, [INFO] [stdout] | |___________________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] 316 | { [INFO] [stdout] 317 | impl<'de, 'a, R: 'a, S> serde::de::EnumAccess<'de> [INFO] [stdout] | ^ --------------------- `EnumAccess` is not local [INFO] [stdout] | _________| [INFO] [stdout] | | [INFO] [stdout] 318 | | for &'a mut Deserializer [INFO] [stdout] | |_________________________------------_____^ [INFO] [stdout] | | [INFO] [stdout] | `Deserializer` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling serde_bytes v0.10.5 [INFO] [stderr] Compiling zlo v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:84:24 [INFO] [stdout] | [INFO] [stdout] 84 | let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 84 - let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stdout] 84 + let w = if a { self.store >> self.shift } else { 0 } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around block return value [INFO] [stdout] --> src/de/mod.rs:85:28 [INFO] [stdout] | [INFO] [stdout] 85 | | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 85 - | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stdout] 85 + | (s << if a { 8 - self.shift } else { 0 }); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/de/mod.rs:434:29 [INFO] [stdout] | [INFO] [stdout] 434 | let value = try!(serde::de::DeserializeSeed::deserialize( [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/lib.rs:70:49 [INFO] [stdout] | [INFO] [stdout] 70 | Error::Io(ref err) => error::Error::description(err), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> tests/test.rs:193:6 [INFO] [stdout] | [INFO] [stdout] 193 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:79:32 [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 79 | fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `zlo::Infinite` [INFO] [stdout] --> examples/float_delta.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use zlo::Infinite; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `zlo::deserialize` [INFO] [stdout] --> examples/float_delta.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use zlo::deserialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `zlo::serialize` [INFO] [stdout] --> examples/float_delta.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use zlo::serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `f32_diff` is never used [INFO] [stdout] --> examples/float_delta.rs:9:4 [INFO] [stdout] | [INFO] [stdout] 9 | fn f32_diff(a: f32, b: f32) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `f64_diff` is never used [INFO] [stdout] --> examples/float_delta.rs:24:4 [INFO] [stdout] | [INFO] [stdout] 24 | fn f64_diff(a: f64, b: f64) -> f64 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de/mod.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 308 | / fn deserialize_enum( [INFO] [stdout] 309 | | self, [INFO] [stdout] 310 | | _enum: &'static str, [INFO] [stdout] 311 | | _variants: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 314 | | where [INFO] [stdout] 315 | | V: serde::de::Visitor<'de>, [INFO] [stdout] | |___________________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] 316 | { [INFO] [stdout] 317 | impl<'de, 'a, R: 'a, S> serde::de::EnumAccess<'de> [INFO] [stdout] | ^ --------------------- `EnumAccess` is not local [INFO] [stdout] | _________| [INFO] [stdout] | | [INFO] [stdout] 318 | | for &'a mut Deserializer [INFO] [stdout] | |_________________________------------_____^ [INFO] [stdout] | | [INFO] [stdout] | `Deserializer` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.76s [INFO] running `Command { std: "docker" "inspect" "0e96e6f0d1189e4c60572a290bea6670a8d1f590acc66d9fe6c35db6fc1e7421", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0e96e6f0d1189e4c60572a290bea6670a8d1f590acc66d9fe6c35db6fc1e7421", kill_on_drop: false }` [INFO] [stdout] 0e96e6f0d1189e4c60572a290bea6670a8d1f590acc66d9fe6c35db6fc1e7421 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7e1ed9c0516f8e481e460f9ea0b2ef8a6269377f1d8a7423b9c590b9277cd140 [INFO] running `Command { std: "docker" "start" "-a" "7e1ed9c0516f8e481e460f9ea0b2ef8a6269377f1d8a7423b9c590b9277cd140", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/de/mod.rs:84:24 [INFO] [stderr] | [INFO] [stderr] 84 | let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 84 - let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stderr] 84 + let w = if a { self.store >> self.shift } else { 0 } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/de/mod.rs:85:28 [INFO] [stderr] | [INFO] [stderr] 85 | | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 85 - | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stderr] 85 + | (s << if a { 8 - self.shift } else { 0 }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stderr] --> src/de/mod.rs:434:29 [INFO] [stderr] | [INFO] [stderr] 434 | let value = try!(serde::de::DeserializeSeed::deserialize( [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/lib.rs:70:49 [INFO] [stderr] | [INFO] [stderr] 70 | Error::Io(ref err) => error::Error::description(err), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:79:32 [INFO] [stderr] | [INFO] [stderr] 79 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 79 | fn cause(&self) -> Option<&dyn error::Error> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/de/mod.rs:317:9 [INFO] [stderr] | [INFO] [stderr] 308 | / fn deserialize_enum( [INFO] [stderr] 309 | | self, [INFO] [stderr] 310 | | _enum: &'static str, [INFO] [stderr] 311 | | _variants: &'static [&'static str], [INFO] [stderr] ... | [INFO] [stderr] 314 | | where [INFO] [stderr] 315 | | V: serde::de::Visitor<'de>, [INFO] [stderr] | |___________________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stderr] 316 | { [INFO] [stderr] 317 | impl<'de, 'a, R: 'a, S> serde::de::EnumAccess<'de> [INFO] [stderr] | ^ --------------------- `EnumAccess` is not local [INFO] [stderr] | _________| [INFO] [stderr] | | [INFO] [stderr] 318 | | for &'a mut Deserializer [INFO] [stderr] | |_________________________------------_____^ [INFO] [stderr] | | [INFO] [stderr] | `Deserializer` is not local [INFO] [stderr] | [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `zlo` (lib) generated 6 warnings (run `cargo fix --lib -p zlo` to apply 3 suggestions) [INFO] [stderr] warning: unnecessary trailing semicolon [INFO] [stderr] --> tests/test.rs:193:6 [INFO] [stderr] | [INFO] [stderr] 193 | }; [INFO] [stderr] | ^ help: remove this semicolon [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `zlo::Infinite` [INFO] [stderr] --> examples/float_delta.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use zlo::Infinite; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `zlo::deserialize` [INFO] [stderr] --> examples/float_delta.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use zlo::deserialize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `zlo::serialize` [INFO] [stderr] --> examples/float_delta.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use zlo::serialize; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `f32_diff` is never used [INFO] [stderr] --> examples/float_delta.rs:9:4 [INFO] [stderr] | [INFO] [stderr] 9 | fn f32_diff(a: f32, b: f32) -> f32 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: function `f64_diff` is never used [INFO] [stderr] --> examples/float_delta.rs:24:4 [INFO] [stderr] | [INFO] [stderr] 24 | fn f64_diff(a: f64, b: f64) -> f64 { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `zlo` (test "test") generated 1 warning [INFO] [stderr] warning: `zlo` (lib test) generated 6 warnings (6 duplicates) [INFO] [stderr] warning: `zlo` (example "float_delta") generated 5 warnings (run `cargo fix --example "float_delta"` to apply 3 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/zlo-c38e20ca05554e15) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/test.rs (/opt/rustwide/target/debug/deps/test-9921fae577ce7060) [INFO] [stdout] [INFO] [stdout] running 30 tests [INFO] [stdout] test char_serialization ... ok [INFO] [stdout] test fuzzer_f32 ... ignored [INFO] [stdout] test fuzzer_f64 ... ignored [INFO] [stdout] test encode_box ... ok [INFO] [stdout] test path_buf ... ok [INFO] [stdout] test deserializing_errors ... ok [INFO] [stdout] test serde_bytes ... ok [INFO] [stdout] test test_basic_struct ... ok [INFO] [stdout] test test_bool ... ok [INFO] [stdout] test test_enum ... ok [INFO] [stdout] test test_fixed_size_array ... ok [INFO] [stdout] test test_multi_strings_serialize ... ok [INFO] [stdout] test test_proxy_encoded_size ... ok [INFO] [stdout] test test_map ... ok [INFO] [stdout] test test_numbers ... ok [INFO] [stdout] test test_oom_protection ... ok [INFO] [stdout] test test_nested_struct ... ok [INFO] [stdout] test test_strbox_serialize ... ok [INFO] [stdout] test test_struct_tuple ... ok [INFO] [stdout] test test_size_predictions ... ok [INFO] [stdout] test test_slicebox_serialize ... ok [INFO] [stdout] test test_string ... ok [INFO] [stdout] test test_unicode ... ok [INFO] [stdout] test test_vec ... ok [INFO] [stdout] test too_big_serialize ... ok [INFO] [stdout] test too_big_char_deserialize ... ok [INFO] [stdout] test test_cow_serialize ... ok [INFO] [stdout] test test_tuple ... ok [INFO] [stdout] test test_option ... ok [INFO] [stdout] test test_struct_newtype ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 28 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Doc-tests zlo [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/de/mod.rs:84:24 [INFO] [stderr] | [INFO] [stderr] 84 | let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 84 - let w = if a { (self.store >> self.shift) } else { 0 } [INFO] [stderr] 84 + let w = if a { self.store >> self.shift } else { 0 } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around block return value [INFO] [stderr] --> src/de/mod.rs:85:28 [INFO] [stderr] | [INFO] [stderr] 85 | | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 85 - | (s << if a { (8 - self.shift) } else { 0 }); [INFO] [stderr] 85 + | (s << if a { 8 - self.shift } else { 0 }); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/de/mod.rs - de::Deserializer (line 16) ... ignored [INFO] [stdout] test src/lib.rs - (line 8) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/lib.rs - (line 8) stdout ---- [INFO] [stdout] error[E0423]: cannot initialize a tuple struct which contains private fields [INFO] [stdout] --> src/lib.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 8 | let limit = Bounded(20); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: constructor is not visible here due to private fields [INFO] [stdout] --> /opt/rustwide/workdir/src/lib.rs:295:20 [INFO] [stdout] | [INFO] [stdout] 295 | pub struct Bounded(u64); [INFO] [stdout] | ^^^ private field [INFO] [stdout] help: you might have meant to use an associated function to build this type [INFO] [stdout] | [INFO] [stdout] 8 - let limit = Bounded(20); [INFO] [stdout] 8 + let limit = Bounded::new_bits(_); [INFO] [stdout] | [INFO] [stdout] 8 - let limit = Bounded(20); [INFO] [stdout] 8 + let limit = Bounded::new_bytes(_); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0423`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/lib.rs - (line 8) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.18s [INFO] [stdout] [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "7e1ed9c0516f8e481e460f9ea0b2ef8a6269377f1d8a7423b9c590b9277cd140", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7e1ed9c0516f8e481e460f9ea0b2ef8a6269377f1d8a7423b9c590b9277cd140", kill_on_drop: false }` [INFO] [stdout] 7e1ed9c0516f8e481e460f9ea0b2ef8a6269377f1d8a7423b9c590b9277cd140