[INFO] fetching crate ccl_owning_ref 0.4.2...
[INFO] checking ccl_owning_ref-0.4.2 against master#e59540968e0c6fc3c37d92a639b83fc8fcee5e81 for pr-114559
[INFO] extracting crate ccl_owning_ref 0.4.2 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate ccl_owning_ref 0.4.2 on toolchain e59540968e0c6fc3c37d92a639b83fc8fcee5e81
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ccl_owning_ref 0.4.2
[INFO] finished tweaking crates.io crate ccl_owning_ref 0.4.2
[INFO] tweaked toml for crates.io crate ccl_owning_ref 0.4.2 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ccl_stable_deref_trait v1.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:5c16f4e6c37141f9fef0bc86f7a492d732943053e42aab8461035881e3f53823" "/opt/rustwide/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7c4c2b06cc38b79331a2b09b3c3e8a424fc6fc057bfa915a87bf1a937d61cbdb
[INFO] running `Command { std: "docker" "start" "-a" "7c4c2b06cc38b79331a2b09b3c3e8a424fc6fc057bfa915a87bf1a937d61cbdb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7c4c2b06cc38b79331a2b09b3c3e8a424fc6fc057bfa915a87bf1a937d61cbdb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c4c2b06cc38b79331a2b09b3c3e8a424fc6fc057bfa915a87bf1a937d61cbdb", kill_on_drop: false }`
[INFO] [stdout] 7c4c2b06cc38b79331a2b09b3c3e8a424fc6fc057bfa915a87bf1a937d61cbdb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:5c16f4e6c37141f9fef0bc86f7a492d732943053e42aab8461035881e3f53823" "/opt/rustwide/cargo-home/bin/cargo" "+e59540968e0c6fc3c37d92a639b83fc8fcee5e81" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3026aee3ff31e609a6ec3e82d3142b49319bcfd3a69352e402c2ac15e9bb4e2d
[INFO] running `Command { std: "docker" "start" "-a" "3026aee3ff31e609a6ec3e82d3142b49319bcfd3a69352e402c2ac15e9bb4e2d", kill_on_drop: false }`
[INFO] [stderr]     Checking parking_lot_core v0.6.3
[INFO] [stderr]     Checking parking_lot v0.9.0
[INFO] [stderr]     Checking ccl_stable_deref_trait v1.0.2
[INFO] [stderr]     Checking ccl_owning_ref v0.4.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1009:28
[INFO] [stdout]      |
[INFO] [stdout] 1009 |     where O: Send, for<'a> (&'a T): Send {}
[INFO] [stdout]      |                            ^     ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1009 -     where O: Send, for<'a> (&'a T): Send {}
[INFO] [stdout] 1009 +     where O: Send, for<'a> &'a T: Send {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1011:28
[INFO] [stdout]      |
[INFO] [stdout] 1011 |     where O: Sync, for<'a> (&'a T): Sync {}
[INFO] [stdout]      |                            ^     ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1011 -     where O: Sync, for<'a> (&'a T): Sync {}
[INFO] [stdout] 1011 +     where O: Sync, for<'a> &'a T: Sync {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1014:28
[INFO] [stdout]      |
[INFO] [stdout] 1014 |     where O: Send, for<'a> (&'a mut T): Send {}
[INFO] [stdout]      |                            ^         ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1014 -     where O: Send, for<'a> (&'a mut T): Send {}
[INFO] [stdout] 1014 +     where O: Send, for<'a> &'a mut T: Send {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1016:28
[INFO] [stdout]      |
[INFO] [stdout] 1016 |     where O: Sync, for<'a> (&'a mut T): Sync {}
[INFO] [stdout]      |                            ^         ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1016 -     where O: Sync, for<'a> (&'a mut T): Sync {}
[INFO] [stdout] 1016 +     where O: Sync, for<'a> &'a mut T: Sync {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1018:16
[INFO] [stdout]      |
[INFO] [stdout] 1018 | impl Debug for Erased {
[INFO] [stdout]      |                ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1018 | impl Debug for dyn Erased {
[INFO] [stdout]      |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1157:42
[INFO] [stdout]      |
[INFO] [stdout] 1157 | pub type ErasedBoxRef<U> = OwningRef<Box<Erased>, U>;
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1157 | pub type ErasedBoxRef<U> = OwningRef<Box<dyn Erased>, U>;
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1159:40
[INFO] [stdout]      |
[INFO] [stdout] 1159 | pub type ErasedRcRef<U> = OwningRef<Rc<Erased>, U>;
[INFO] [stdout]      |                                        ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1159 | pub type ErasedRcRef<U> = OwningRef<Rc<dyn Erased>, U>;
[INFO] [stdout]      |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1161:42
[INFO] [stdout]      |
[INFO] [stdout] 1161 | pub type ErasedArcRef<U> = OwningRef<Arc<Erased>, U>;
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1161 | pub type ErasedArcRef<U> = OwningRef<Arc<dyn Erased>, U>;
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1164:48
[INFO] [stdout]      |
[INFO] [stdout] 1164 | pub type ErasedBoxRefMut<U> = OwningRefMut<Box<Erased>, U>;
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1164 | pub type ErasedBoxRefMut<U> = OwningRefMut<Box<dyn Erased>, U>;
[INFO] [stdout]      |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1138:23
[INFO] [stdout]      |
[INFO] [stdout] 1138 |     type Erased = Box<Erased + 'a>;
[INFO] [stdout]      |                       ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1138 |     type Erased = Box<dyn Erased + 'a>;
[INFO] [stdout]      |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1144:22
[INFO] [stdout]      |
[INFO] [stdout] 1144 |     type Erased = Rc<Erased + 'a>;
[INFO] [stdout]      |                      ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1144 |     type Erased = Rc<dyn Erased + 'a>;
[INFO] [stdout]      |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1150:23
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     type Erased = Arc<Erased + 'a>;
[INFO] [stdout]      |                       ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     type Erased = Arc<dyn Erased + 'a>;
[INFO] [stdout]      |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1009:28
[INFO] [stdout]      |
[INFO] [stdout] 1009 |     where O: Send, for<'a> (&'a T): Send {}
[INFO] [stdout]      |                            ^     ^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1009 -     where O: Send, for<'a> (&'a T): Send {}
[INFO] [stdout] 1009 +     where O: Send, for<'a> &'a T: Send {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1011:28
[INFO] [stdout]      |
[INFO] [stdout] 1011 |     where O: Sync, for<'a> (&'a T): Sync {}
[INFO] [stdout]      |                            ^     ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1011 -     where O: Sync, for<'a> (&'a T): Sync {}
[INFO] [stdout] 1011 +     where O: Sync, for<'a> &'a T: Sync {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1014:28
[INFO] [stdout]      |
[INFO] [stdout] 1014 |     where O: Send, for<'a> (&'a mut T): Send {}
[INFO] [stdout]      |                            ^         ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1014 -     where O: Send, for<'a> (&'a mut T): Send {}
[INFO] [stdout] 1014 +     where O: Send, for<'a> &'a mut T: Send {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]     --> src/lib.rs:1016:28
[INFO] [stdout]      |
[INFO] [stdout] 1016 |     where O: Sync, for<'a> (&'a mut T): Sync {}
[INFO] [stdout]      |                            ^         ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1016 -     where O: Sync, for<'a> (&'a mut T): Sync {}
[INFO] [stdout] 1016 +     where O: Sync, for<'a> &'a mut T: Sync {}
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1018:16
[INFO] [stdout]      |
[INFO] [stdout] 1018 | impl Debug for Erased {
[INFO] [stdout]      |                ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]      = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1018 | impl Debug for dyn Erased {
[INFO] [stdout]      |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1157:42
[INFO] [stdout]      |
[INFO] [stdout] 1157 | pub type ErasedBoxRef<U> = OwningRef<Box<Erased>, U>;
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1157 | pub type ErasedBoxRef<U> = OwningRef<Box<dyn Erased>, U>;
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1159:40
[INFO] [stdout]      |
[INFO] [stdout] 1159 | pub type ErasedRcRef<U> = OwningRef<Rc<Erased>, U>;
[INFO] [stdout]      |                                        ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1159 | pub type ErasedRcRef<U> = OwningRef<Rc<dyn Erased>, U>;
[INFO] [stdout]      |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1161:42
[INFO] [stdout]      |
[INFO] [stdout] 1161 | pub type ErasedArcRef<U> = OwningRef<Arc<Erased>, U>;
[INFO] [stdout]      |                                          ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1161 | pub type ErasedArcRef<U> = OwningRef<Arc<dyn Erased>, U>;
[INFO] [stdout]      |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1164:48
[INFO] [stdout]      |
[INFO] [stdout] 1164 | pub type ErasedBoxRefMut<U> = OwningRefMut<Box<Erased>, U>;
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1164 | pub type ErasedBoxRefMut<U> = OwningRefMut<Box<dyn Erased>, U>;
[INFO] [stdout]      |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1138:23
[INFO] [stdout]      |
[INFO] [stdout] 1138 |     type Erased = Box<Erased + 'a>;
[INFO] [stdout]      |                       ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1138 |     type Erased = Box<dyn Erased + 'a>;
[INFO] [stdout]      |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1144:22
[INFO] [stdout]      |
[INFO] [stdout] 1144 |     type Erased = Rc<Erased + 'a>;
[INFO] [stdout]      |                      ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1144 |     type Erased = Rc<dyn Erased + 'a>;
[INFO] [stdout]      |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1150:23
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     type Erased = Arc<Erased + 'a>;
[INFO] [stdout]      |                       ^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1150 |     type Erased = Arc<dyn Erased + 'a>;
[INFO] [stdout]      |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 12 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1287:27
[INFO] [stdout]      |
[INFO] [stdout] 1287 |             let o: BoxRef<Erased, i32> = o.erase_owner();
[INFO] [stdout]      |                           ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1287 |             let o: BoxRef<dyn Erased, i32> = o.erase_owner();
[INFO] [stdout]      |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1408:33
[INFO] [stdout]      |
[INFO] [stdout] 1408 |             let e: OwningRef<Rc<Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                 ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1408 |             let e: OwningRef<Rc<dyn Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1409:33
[INFO] [stdout]      |
[INFO] [stdout] 1409 |             let f: OwningRef<Rc<Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                 ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1409 |             let f: OwningRef<Rc<dyn Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1425:35
[INFO] [stdout]      |
[INFO] [stdout] 1425 |             let _e: OwningRef<Box<Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                   ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1425 |             let _e: OwningRef<Box<dyn Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1426:35
[INFO] [stdout]      |
[INFO] [stdout] 1426 |             let _f: OwningRef<Box<Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                   ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1426 |             let _f: OwningRef<Box<dyn Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1434:24
[INFO] [stdout]      |
[INFO] [stdout] 1434 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1434 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1444:24
[INFO] [stdout]      |
[INFO] [stdout] 1444 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1444 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1725:30
[INFO] [stdout]      |
[INFO] [stdout] 1725 |             let o: BoxRefMut<Erased, i32> = o.erase_owner();
[INFO] [stdout]      |                              ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1725 |             let o: BoxRefMut<dyn Erased, i32> = o.erase_owner();
[INFO] [stdout]      |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1827:38
[INFO] [stdout]      |
[INFO] [stdout] 1827 |             let _e: OwningRefMut<Box<Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1827 |             let _e: OwningRefMut<Box<dyn Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1828:38
[INFO] [stdout]      |
[INFO] [stdout] 1828 |             let _f: OwningRefMut<Box<Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1828 |             let _f: OwningRefMut<Box<dyn Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1841:38
[INFO] [stdout]      |
[INFO] [stdout] 1841 |             let _e: OwningRefMut<Box<Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1841 |             let _e: OwningRefMut<Box<dyn Erased>, [u8]> = c.erase_owner();
[INFO] [stdout]      |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1842:38
[INFO] [stdout]      |
[INFO] [stdout] 1842 |             let _f: OwningRefMut<Box<Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                      ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1842 |             let _f: OwningRefMut<Box<dyn Erased>, [u8]> = d.erase_owner();
[INFO] [stdout]      |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1850:24
[INFO] [stdout]      |
[INFO] [stdout] 1850 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1850 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1860:24
[INFO] [stdout]      |
[INFO] [stdout] 1860 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1860 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1870:24
[INFO] [stdout]      |
[INFO] [stdout] 1870 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1870 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> src/lib.rs:1880:24
[INFO] [stdout]      |
[INFO] [stdout] 1880 |             let y: Box<Any> = x;
[INFO] [stdout]      |                        ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]      |
[INFO] [stdout] 1880 |             let y: Box<dyn Any> = x;
[INFO] [stdout]      |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_ok` that must be used
[INFO] [stdout]     --> src/lib.rs:1436:13
[INFO] [stdout]      |
[INFO] [stdout] 1436 |             OwningRef::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is ok, consider `.unwrap()` instead
[INFO] [stdout]      = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1436 |             let _ = OwningRef::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_err` that must be used
[INFO] [stdout]     --> src/lib.rs:1446:13
[INFO] [stdout]      |
[INFO] [stdout] 1446 |             OwningRef::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is err, consider `.unwrap_err()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1446 |             let _ = OwningRef::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_ok` that must be used
[INFO] [stdout]     --> src/lib.rs:1852:13
[INFO] [stdout]      |
[INFO] [stdout] 1852 |             OwningRefMut::new(y).try_map_mut(|x| x.downcast_mut::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is ok, consider `.unwrap()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1852 |             let _ = OwningRefMut::new(y).try_map_mut(|x| x.downcast_mut::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_err` that must be used
[INFO] [stdout]     --> src/lib.rs:1862:13
[INFO] [stdout]      |
[INFO] [stdout] 1862 |             OwningRefMut::new(y).try_map_mut(|x| x.downcast_mut::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is err, consider `.unwrap_err()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1862 |             let _ = OwningRefMut::new(y).try_map_mut(|x| x.downcast_mut::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_ok` that must be used
[INFO] [stdout]     --> src/lib.rs:1872:13
[INFO] [stdout]      |
[INFO] [stdout] 1872 |             OwningRefMut::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is ok, consider `.unwrap()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1872 |             let _ = OwningRefMut::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_ok();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `Result::<T, E>::is_err` that must be used
[INFO] [stdout]     --> src/lib.rs:1882:13
[INFO] [stdout]      |
[INFO] [stdout] 1882 |             OwningRefMut::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: if you intended to assert that this is err, consider `.unwrap_err()` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1882 |             let _ = OwningRefMut::new(y).try_map(|x| x.downcast_ref::<i32>().ok_or(())).is_err();
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 34 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.46s
[INFO] running `Command { std: "docker" "inspect" "3026aee3ff31e609a6ec3e82d3142b49319bcfd3a69352e402c2ac15e9bb4e2d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3026aee3ff31e609a6ec3e82d3142b49319bcfd3a69352e402c2ac15e9bb4e2d", kill_on_drop: false }`
[INFO] [stdout] 3026aee3ff31e609a6ec3e82d3142b49319bcfd3a69352e402c2ac15e9bb4e2d
