[INFO] fetching crate len_constraints 0.1.2... [INFO] testing len_constraints-0.1.2 against beta-2022-04-10 for beta-1.61-1 [INFO] extracting crate len_constraints 0.1.2 into /workspace/builds/worker-57/source [INFO] validating manifest of crates.io crate len_constraints 0.1.2 on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate len_constraints 0.1.2 [INFO] finished tweaking crates.io crate len_constraints 0.1.2 [INFO] tweaked toml for crates.io crate len_constraints 0.1.2 written to /workspace/builds/worker-57/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "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-57/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2609fa2365de2680412494be2f24f7f067da3db075b633a8f0fca5f142467732 [INFO] running `Command { std: "docker" "start" "-a" "2609fa2365de2680412494be2f24f7f067da3db075b633a8f0fca5f142467732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2609fa2365de2680412494be2f24f7f067da3db075b633a8f0fca5f142467732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2609fa2365de2680412494be2f24f7f067da3db075b633a8f0fca5f142467732", kill_on_drop: false }` [INFO] [stdout] 2609fa2365de2680412494be2f24f7f067da3db075b633a8f0fca5f142467732 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7022e7a12a7eed9eceb46d9d2b999fd416bd8485fe169b270f627b1d11be7914 [INFO] running `Command { std: "docker" "start" "-a" "7022e7a12a7eed9eceb46d9d2b999fd416bd8485fe169b270f627b1d11be7914", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling len_constraints v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:41:51 [INFO] [stdout] | [INFO] [stdout] 41 | fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 - fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] 41 + fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:48:51 [INFO] [stdout] | [INFO] [stdout] 48 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 48 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 48 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:57:51 [INFO] [stdout] | [INFO] [stdout] 57 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 57 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:66:51 [INFO] [stdout] | [INFO] [stdout] 66 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 66 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:75:51 [INFO] [stdout] | [INFO] [stdout] 75 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 75 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 75 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:57:19 [INFO] [stdout] | [INFO] [stdout] 57 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - type Error = Box; [INFO] [stdout] 57 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:76:19 [INFO] [stdout] | [INFO] [stdout] 76 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 76 - type Error = Box; [INFO] [stdout] 76 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:100:73 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] 100 + pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:107:63 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 107 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 107 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:113:64 [INFO] [stdout] | [INFO] [stdout] 113 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 113 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 113 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 - type Error = Box; [INFO] [stdout] 81 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:100:19 [INFO] [stdout] | [INFO] [stdout] 100 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - type Error = Box; [INFO] [stdout] 100 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:124:77 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 124 - pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] 124 + pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:131:63 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 131 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 131 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:137:71 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 137 - pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] 137 + pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:143:64 [INFO] [stdout] | [INFO] [stdout] 143 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 143 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 143 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.70s [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7022e7a12a7eed9eceb46d9d2b999fd416bd8485fe169b270f627b1d11be7914", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7022e7a12a7eed9eceb46d9d2b999fd416bd8485fe169b270f627b1d11be7914", kill_on_drop: false }` [INFO] [stdout] 7022e7a12a7eed9eceb46d9d2b999fd416bd8485fe169b270f627b1d11be7914 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6e86bacf1efaa085cc19c60878c9bf8f794b9cdc0ccfe655bd90771eb86b051f [INFO] running `Command { std: "docker" "start" "-a" "6e86bacf1efaa085cc19c60878c9bf8f794b9cdc0ccfe655bd90771eb86b051f", kill_on_drop: false }` [INFO] [stderr] Compiling len_constraints v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:41:51 [INFO] [stdout] | [INFO] [stdout] 41 | fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 - fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] 41 + fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:48:51 [INFO] [stdout] | [INFO] [stdout] 48 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 48 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 48 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:57:51 [INFO] [stdout] | [INFO] [stdout] 57 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 57 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:66:51 [INFO] [stdout] | [INFO] [stdout] 66 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 66 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:75:51 [INFO] [stdout] | [INFO] [stdout] 75 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 75 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 75 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:57:19 [INFO] [stdout] | [INFO] [stdout] 57 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - type Error = Box; [INFO] [stdout] 57 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:76:19 [INFO] [stdout] | [INFO] [stdout] 76 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 76 - type Error = Box; [INFO] [stdout] 76 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:100:73 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] 100 + pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:107:63 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 107 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 107 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:113:64 [INFO] [stdout] | [INFO] [stdout] 113 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 113 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 113 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 - type Error = Box; [INFO] [stdout] 81 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:100:19 [INFO] [stdout] | [INFO] [stdout] 100 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - type Error = Box; [INFO] [stdout] 100 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:124:77 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 124 - pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] 124 + pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:131:63 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 131 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 131 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:137:71 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 137 - pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] 137 + pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:143:64 [INFO] [stdout] | [INFO] [stdout] 143 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 143 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 143 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> tests/constraint_macro.rs:10:29 [INFO] [stdout] | [INFO] [stdout] 10 | fn test() -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 10 - fn test() -> Result<(), Box> { [INFO] [stdout] 10 + fn test() -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:41:51 [INFO] [stdout] | [INFO] [stdout] 41 | fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 - fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] 41 + fn r#do(a: usize, b: usize) -> Result>; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:48:51 [INFO] [stdout] | [INFO] [stdout] 48 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 48 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 48 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:57:51 [INFO] [stdout] | [INFO] [stdout] 57 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 57 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:66:51 [INFO] [stdout] | [INFO] [stdout] 66 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 66 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 66 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/type_math.rs:75:51 [INFO] [stdout] | [INFO] [stdout] 75 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 75 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] 75 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:57:19 [INFO] [stdout] | [INFO] [stdout] 57 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 57 - type Error = Box; [INFO] [stdout] 57 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:76:19 [INFO] [stdout] | [INFO] [stdout] 76 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 76 - type Error = Box; [INFO] [stdout] 76 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:100:73 [INFO] [stdout] | [INFO] [stdout] 100 | pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] 100 + pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:107:63 [INFO] [stdout] | [INFO] [stdout] 107 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 107 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 107 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice.rs:113:64 [INFO] [stdout] | [INFO] [stdout] 113 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 113 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 113 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:81:19 [INFO] [stdout] | [INFO] [stdout] 81 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 81 - type Error = Box; [INFO] [stdout] 81 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:100:19 [INFO] [stdout] | [INFO] [stdout] 100 | type Error = Box; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 100 - type Error = Box; [INFO] [stdout] 100 + type Error = Box; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:124:77 [INFO] [stdout] | [INFO] [stdout] 124 | pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 124 - pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] 124 + pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:131:63 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 131 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] 131 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:137:71 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 137 - pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] 137 + pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/slice_mut.rs:143:64 [INFO] [stdout] | [INFO] [stdout] 143 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 143 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] 143 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.85s [INFO] [stderr] Executable unittests src/lib.rs (/opt/rustwide/target/debug/deps/len_constraints-43a3e158355be2f9) [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Executable tests/constraint_macro.rs (/opt/rustwide/target/debug/deps/constraint_macro-249c4906aa1a83bc) [INFO] [stdout] warning: 16 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Executable tests/lib.rs (/opt/rustwide/target/debug/deps/lib-533f472b23f071bb) [INFO] [stderr] Executable tests/slice.rs (/opt/rustwide/target/debug/deps/slice-0bf8410b70e60551) [INFO] [stderr] Executable tests/slice_mut.rs (/opt/rustwide/target/debug/deps/slice_mut-01b48bde3c072de7) [INFO] [stderr] Executable tests/type_math.rs (/opt/rustwide/target/debug/deps/type_math-826428b62b27ead6) [INFO] running `Command { std: "docker" "inspect" "6e86bacf1efaa085cc19c60878c9bf8f794b9cdc0ccfe655bd90771eb86b051f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6e86bacf1efaa085cc19c60878c9bf8f794b9cdc0ccfe655bd90771eb86b051f", kill_on_drop: false }` [INFO] [stdout] 6e86bacf1efaa085cc19c60878c9bf8f794b9cdc0ccfe655bd90771eb86b051f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-57/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" "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:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] bd16524d2d132700b62d72ba617cd9f404714516917399430301a35cbc4cd3a6 [INFO] running `Command { std: "docker" "start" "-a" "bd16524d2d132700b62d72ba617cd9f404714516917399430301a35cbc4cd3a6", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/type_math.rs:41:51 [INFO] [stderr] | [INFO] [stderr] 41 | fn r#do(a: usize, b: usize) -> Result>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 41 - fn r#do(a: usize, b: usize) -> Result>; [INFO] [stderr] 41 + fn r#do(a: usize, b: usize) -> Result>; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/type_math.rs:48:51 [INFO] [stderr] | [INFO] [stderr] 48 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 48 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] 48 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/type_math.rs:57:51 [INFO] [stderr] | [INFO] [stderr] 57 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 57 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] 57 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/type_math.rs:66:51 [INFO] [stderr] | [INFO] [stderr] 66 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 66 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] 66 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/type_math.rs:75:51 [INFO] [stderr] | [INFO] [stderr] 75 | fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 75 - fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] 75 + fn r#do(a: usize, b: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice.rs:57:19 [INFO] [stderr] | [INFO] [stderr] 57 | type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 57 - type Error = Box; [INFO] [stderr] 57 + type Error = Box; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice.rs:76:19 [INFO] [stderr] | [INFO] [stderr] 76 | type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 76 - type Error = Box; [INFO] [stderr] 76 + type Error = Box; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice.rs:100:73 [INFO] [stderr] | [INFO] [stderr] 100 | pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 100 - pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stderr] 100 + pub fn try_from(slice: &'a[T], relative_to: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice.rs:107:63 [INFO] [stderr] | [INFO] [stderr] 107 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 107 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] 107 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice.rs:113:64 [INFO] [stderr] | [INFO] [stderr] 113 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 113 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] 113 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:81:19 [INFO] [stderr] | [INFO] [stderr] 81 | type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 81 - type Error = Box; [INFO] [stderr] 81 + type Error = Box; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:100:19 [INFO] [stderr] | [INFO] [stderr] 100 | type Error = Box; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 100 - type Error = Box; [INFO] [stderr] 100 + type Error = Box; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:124:77 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 124 - pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stderr] 124 + pub fn try_from(slice: &'a mut[T], relative_to: usize) -> Result> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:131:63 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 131 - pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] 131 + pub fn slice(self, relative_to: usize) -> Result<&'a[T], Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:137:71 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 137 - pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stderr] 137 + pub fn slice_mut(self, relative_to: usize) -> Result<&'a mut[T], Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/slice_mut.rs:143:64 [INFO] [stderr] | [INFO] [stderr] 143 | fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 143 - fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] 143 + fn validate(len: usize, relative_to: usize) -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `len_constraints` (lib) generated 16 warnings [INFO] [stderr] warning: `len_constraints` (lib test) generated 16 warnings (16 duplicates) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> tests/constraint_macro.rs:10:29 [INFO] [stderr] | [INFO] [stderr] 10 | fn test() -> Result<(), Box> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: use `dyn` [INFO] [stderr] | [INFO] [stderr] 10 - fn test() -> Result<(), Box> { [INFO] [stderr] 10 + fn test() -> Result<(), Box> { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `len_constraints` (test "constraint_macro") generated 1 warning [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/len_constraints-43a3e158355be2f9) [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/constraint_macro.rs (/opt/rustwide/target/debug/deps/constraint_macro-249c4906aa1a83bc) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/lib.rs (/opt/rustwide/target/debug/deps/lib-533f472b23f071bb) [INFO] [stdout] [INFO] [stdout] running 8 tests [INFO] [stdout] test test_constraint_violation_fixed ... ok [INFO] [stdout] test test_constraint_violation_range ... ok [INFO] [stdout] test test_constraint_violation_relative ... ok [INFO] [stdout] test test_constraint_violation_fixed_panic - should panic ... ok [INFO] [stdout] test test_constraint_violation_range_panic_0 - should panic ... ok [INFO] [stdout] test test_constraint_violation_range_panic_1 - should panic ... ok [INFO] [stdout] test test_constraint_violation_relative_panic_0 - should panic ... ok [INFO] [stdout] test test_constraint_violation_relative_panic_1 - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/slice.rs (/opt/rustwide/target/debug/deps/slice-0bf8410b70e60551) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_fixed ... ok [INFO] [stdout] test test_fixed_err ... ok [INFO] [stdout] test test_ranged ... ok [INFO] [stdout] test test_ranged_err ... ok [INFO] [stdout] test test_relative ... ok [INFO] [stdout] test test_relative_err ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/slice_mut.rs (/opt/rustwide/target/debug/deps/slice_mut-01b48bde3c072de7) [INFO] [stdout] [INFO] [stdout] running 6 tests [INFO] [stdout] test test_fixed_mut ... ok [INFO] [stdout] test test_fixed_mut_err ... ok [INFO] [stdout] test test_ranged_mut ... ok [INFO] [stdout] test test_ranged_mut_err ... ok [INFO] [stdout] test test_relative_mut ... ok [INFO] [stdout] test test_relative_mut_err ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/type_math.rs (/opt/rustwide/target/debug/deps/type_math-826428b62b27ead6) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test test_add ... ok [INFO] [stdout] test test_add_err ... ok [INFO] [stdout] test test_div ... ok [INFO] [stdout] test test_div_err ... ok [INFO] [stdout] test test_mul ... ok [INFO] [stdout] test test_mul_err ... ok [INFO] [stdout] test test_sub ... ok [INFO] [stdout] test test_sub_err ... ok [INFO] [stdout] test test_type_num ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Doc-tests len_constraints [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/lib.rs - (line 27) ... ignored [INFO] [stdout] test src/lib.rs - (line 8) ... ignored [INFO] [stdout] test src/lib.rs - (line 46) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.42s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "bd16524d2d132700b62d72ba617cd9f404714516917399430301a35cbc4cd3a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bd16524d2d132700b62d72ba617cd9f404714516917399430301a35cbc4cd3a6", kill_on_drop: false }` [INFO] [stdout] bd16524d2d132700b62d72ba617cd9f404714516917399430301a35cbc4cd3a6