[INFO] fetching crate managed-heap 0.1.5... [INFO] testing managed-heap-0.1.5 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate managed-heap 0.1.5 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate managed-heap 0.1.5 [INFO] finished tweaking crates.io crate managed-heap 0.1.5 [INFO] tweaked toml for crates.io crate managed-heap 0.1.5 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate managed-heap 0.1.5 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "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" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 949dc4a947ba52a68324ef8898a7b1929cf63521f7ac16069907c9865a780b0a [INFO] running `Command { std: "docker" "start" "-a" "949dc4a947ba52a68324ef8898a7b1929cf63521f7ac16069907c9865a780b0a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "949dc4a947ba52a68324ef8898a7b1929cf63521f7ac16069907c9865a780b0a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "949dc4a947ba52a68324ef8898a7b1929cf63521f7ac16069907c9865a780b0a", kill_on_drop: false }` [INFO] [stdout] 949dc4a947ba52a68324ef8898a7b1929cf63521f7ac16069907c9865a780b0a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] af74e598e52b94f7077ebd88799b67af88845366e9783e54edc369d951a4b67b [INFO] running `Command { std: "docker" "start" "-a" "af74e598e52b94f7077ebd88799b67af88845366e9783e54edc369d951a4b67b", kill_on_drop: false }` [INFO] [stderr] Compiling managed-heap v0.1.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/block/set.rs:23:38 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [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] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/heap.rs:144:38 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut GcRoot]) [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut dyn GcRoot]) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/trace.rs:20:42 [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/block/set.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/heap.rs:144:22 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.24s [INFO] running `Command { std: "docker" "inspect" "af74e598e52b94f7077ebd88799b67af88845366e9783e54edc369d951a4b67b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "af74e598e52b94f7077ebd88799b67af88845366e9783e54edc369d951a4b67b", kill_on_drop: false }` [INFO] [stdout] af74e598e52b94f7077ebd88799b67af88845366e9783e54edc369d951a4b67b [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] d5d8fa26e2dc36db3841c7c5a4e0902b7b5e655fe1d90ea83a5d7a37941d2ba4 [INFO] running `Command { std: "docker" "start" "-a" "d5d8fa26e2dc36db3841c7c5a4e0902b7b5e655fe1d90ea83a5d7a37941d2ba4", kill_on_drop: false }` [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/block/set.rs:23:38 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [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] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/heap.rs:144:38 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut GcRoot]) [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut dyn GcRoot]) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/trace.rs:20:42 [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/block/set.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling managed-heap v0.1.5 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/heap.rs:144:22 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:101:50 [INFO] [stdout] | [INFO] [stdout] 101 | fn children<'a>(&'a mut self) -> Box + 'a> { [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] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 101 | fn children<'a>(&'a mut self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/trace.rs:20:42 [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:215:50 [INFO] [stdout] | [INFO] [stdout] 215 | fn children<'a>(&'a mut self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 215 | fn children<'a>(&'a mut self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/block/set.rs:23:38 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/heap.rs:144:38 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:50:47 [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut GcRoot]) [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 50 | pub fn gc(&mut self, roots: &mut [&mut dyn GcRoot]) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:173:41 [INFO] [stdout] | [INFO] [stdout] 173 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 173 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:180:41 [INFO] [stdout] | [INFO] [stdout] 180 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 180 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:187:37 [INFO] [stdout] | [INFO] [stdout] 187 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 187 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:364:41 [INFO] [stdout] | [INFO] [stdout] 364 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 364 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:371:41 [INFO] [stdout] | [INFO] [stdout] 371 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 371 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:378:37 [INFO] [stdout] | [INFO] [stdout] 378 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 378 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:395:41 [INFO] [stdout] | [INFO] [stdout] 395 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 395 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:403:41 [INFO] [stdout] | [INFO] [stdout] 403 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 403 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:411:37 [INFO] [stdout] | [INFO] [stdout] 411 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 411 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:431:45 [INFO] [stdout] | [INFO] [stdout] 431 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 431 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:438:45 [INFO] [stdout] | [INFO] [stdout] 438 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 438 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:445:41 [INFO] [stdout] | [INFO] [stdout] 445 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 445 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/managed.rs:450:41 [INFO] [stdout] | [INFO] [stdout] 450 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 450 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/block/set.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/heap.rs:144:22 [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'a` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to consistently use `'a` [INFO] [stdout] | [INFO] [stdout] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.83s [INFO] running `Command { std: "docker" "inspect" "d5d8fa26e2dc36db3841c7c5a4e0902b7b5e655fe1d90ea83a5d7a37941d2ba4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d5d8fa26e2dc36db3841c7c5a4e0902b7b5e655fe1d90ea83a5d7a37941d2ba4", kill_on_drop: false }` [INFO] [stdout] d5d8fa26e2dc36db3841c7c5a4e0902b7b5e655fe1d90ea83a5d7a37941d2ba4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 86cb88f2b2b607ddd97ec01501e496df58de54c6218e674ef8fe566ae10163c7 [INFO] running `Command { std: "docker" "start" "-a" "86cb88f2b2b607ddd97ec01501e496df58de54c6218e674ef8fe566ae10163c7", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/block/set.rs:23:38 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [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] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/heap.rs:144:38 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:50:47 [INFO] [stderr] | [INFO] [stderr] 50 | pub fn gc(&mut self, roots: &mut [&mut GcRoot]) [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 50 | pub fn gc(&mut self, roots: &mut [&mut dyn GcRoot]) [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/trace.rs:20:42 [INFO] [stderr] | [INFO] [stderr] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 20 | fn children<'a>(&'a mut self) -> Box + 'a>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/block/set.rs:23:22 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'a` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | ++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/heap.rs:144:22 [INFO] [stderr] | [INFO] [stderr] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | ^^ ------ -- the lifetimes get resolved as `'a` [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'a` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to consistently use `'a` [INFO] [stderr] | [INFO] [stderr] 144 | pub fn used<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | ++ [INFO] [stderr] [INFO] [stderr] warning: `managed-heap` (lib) generated 6 warnings (run `cargo fix --lib -p managed-heap` to apply 6 suggestions) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:101:50 [INFO] [stderr] | [INFO] [stderr] 101 | fn children<'a>(&'a mut self) -> Box + 'a> { [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] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 101 | fn children<'a>(&'a mut self) -> Box + 'a> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:215:50 [INFO] [stderr] | [INFO] [stderr] 215 | fn children<'a>(&'a mut self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 215 | fn children<'a>(&'a mut self) -> Box + 'a> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/block/set.rs:23:38 [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 23 | pub fn iter<'a>(&'a self) -> Box + 'a> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stdout] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] running 20 tests [INFO] [stderr] --> src/managed.rs:173:41 [INFO] [stderr] | [INFO] [stderr] 173 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 173 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:180:41 [INFO] [stderr] | [INFO] [stderr] 180 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 180 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:187:37 [INFO] [stderr] | [INFO] [stderr] 187 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 187 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:364:41 [INFO] [stderr] | [INFO] [stderr] 364 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 364 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:371:41 [INFO] [stderr] | [INFO] [stderr] 371 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 371 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:378:37 [INFO] [stderr] | [INFO] [stderr] 378 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 378 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:395:41 [INFO] [stderr] | [INFO] [stderr] 395 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 395 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:403:41 [INFO] [stderr] | [INFO] [stderr] 403 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 403 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:411:37 [INFO] [stderr] | [INFO] [stderr] 411 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 411 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:431:45 [INFO] [stderr] | [INFO] [stderr] 431 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 431 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:438:45 [INFO] [stderr] | [INFO] [stderr] 438 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 438 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:445:41 [INFO] [stderr] | [INFO] [stderr] 445 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 445 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/managed.rs:450:41 [INFO] [stderr] | [INFO] [stderr] 450 | let mut roots: Vec<&mut GcRoot> = vec![&mut gc_root]; [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: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 450 | let mut roots: Vec<&mut dyn GcRoot> = vec![&mut gc_root]; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: `managed-heap` (lib test) generated 21 warnings (5 duplicates) (run `cargo fix --lib -p managed-heap --tests` to apply 16 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/managed_heap-72d01770b07cdf7b) [INFO] [stdout] test address::tests::test_address_has_same_size_as_usize ... ok [INFO] [stdout] test block::tests::test_block_header_change_sizes ... ok [INFO] [stdout] test block::tests::test_block_header_new ... ok [INFO] [stdout] test heap::tests::test_alloc_block_returns_correct_size_when_not_aligned ... ok [INFO] [stdout] test heap::tests::test_alloc_block_returns_correct_size_when_aligned ... ok [INFO] [stdout] test heap::tests::test_alloc_block_splits_heap_block ... ok [INFO] [stdout] test heap::tests::test_alloc_block_zero_size_should_return_header_size ... ok [INFO] [stdout] test heap::tests::test_alloc_too_big_returns_none ... ok [INFO] [stdout] test heap::tests::test_free_adjacent_blocks ... ok [INFO] [stdout] test heap::tests::test_free_adjacent_blocks_list ... ok [INFO] [stdout] test heap::tests::test_write_allocated_block ... ok [INFO] [stdout] test heap::tests::test_alloc_block_and_free_entire_heap ... ok [INFO] [stdout] test managed::tests::complex::test_double_linked_list_gets_freed_when_not_marked ... ok [INFO] [stdout] test managed::tests::complex::test_linked_list_object_constructor ... ok [INFO] [stdout] test heap::tests::test_free_single_block ... ok [INFO] [stdout] test managed::tests::complex::test_single_linked_list_gets_freed_when_not_marked ... ok [INFO] [stdout] test managed::tests::simple::test_integer_gets_freed_when_not_marked ... ok [INFO] [stdout] test managed::tests::complex::test_triple_linked_list_gets_freed_when_not_marked ... ok [INFO] [stdout] test managed::tests::simple::test_integer_object_constructor ... ok [INFO] [stdout] test block::tests::test_block_write_panics_if_out_of_bounds - should panic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "86cb88f2b2b607ddd97ec01501e496df58de54c6218e674ef8fe566ae10163c7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "86cb88f2b2b607ddd97ec01501e496df58de54c6218e674ef8fe566ae10163c7", kill_on_drop: false }` [INFO] [stdout] 86cb88f2b2b607ddd97ec01501e496df58de54c6218e674ef8fe566ae10163c7