[INFO] fetching crate reproto-core 0.3.36...
[INFO] building reproto-core-0.3.36 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1
[INFO] extracting crate reproto-core 0.3.36 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate reproto-core 0.3.36
[INFO] finished tweaking crates.io crate reproto-core 0.3.36
[INFO] tweaked toml for crates.io crate reproto-core 0.3.36 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate reproto-core 0.3.36 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "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" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 39 packages to latest compatible versions
[INFO] [stderr]       Adding num-bigint v0.1.45 (available: v0.4.6)
[INFO] [stderr]       Adding num-traits v0.1.43 (available: v0.2.19)
[INFO] [stderr]       Adding relative-path v0.3.7 (available: v2.0.1)
[INFO] [stderr]       Adding ropey v0.6.3 (available: v1.6.1)
[INFO] [stderr]       Adding url v1.7.2 (available: v2.5.7)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-bigint` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-integer` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-traits` dependency)
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 328bfde3e664e6a2e500db3ecb2598289c633d7cdee9aee66120c8312dbfc79c
[INFO] running `Command { std: "docker" "start" "-a" "328bfde3e664e6a2e500db3ecb2598289c633d7cdee9aee66120c8312dbfc79c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "328bfde3e664e6a2e500db3ecb2598289c633d7cdee9aee66120c8312dbfc79c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "328bfde3e664e6a2e500db3ecb2598289c633d7cdee9aee66120c8312dbfc79c", kill_on_drop: false }`
[INFO] [stdout] 328bfde3e664e6a2e500db3ecb2598289c633d7cdee9aee66120c8312dbfc79c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 550a8414ec820d8863df204f5c30c6358d689dd91c80bd8683a4fff527bb49d9
[INFO] running `Command { std: "docker" "start" "-a" "550a8414ec820d8863df204f5c30c6358d689dd91c80bd8683a4fff527bb49d9", kill_on_drop: false }`
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-bigint` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-integer` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-traits` dependency)
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling libc v0.2.176
[INFO] [stderr]    Compiling num-bigint v0.1.45
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling matches v0.1.10
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling percent-encoding v1.0.1
[INFO] [stderr]    Compiling rustc-demangle v0.1.26
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling ropey v0.6.3
[INFO] [stderr]    Compiling unicode-normalization v0.1.24
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling idna v0.1.5
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-traits v0.1.43
[INFO] [stderr]    Compiling url v1.7.2
[INFO] [stderr]    Compiling addr2line v0.25.1
[INFO] [stderr]    Compiling relative-path v0.3.7
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling reproto-semver v0.3.36
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling reproto-core v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/import.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn import(&mut self, &RpRequiredPackage) -> Result<Option<RpVersionedPackage>>;
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &RpRequiredPackage`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         <Self::Source as Flavor>::Package,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Package`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         <Self::Source as Flavor>::Type,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Type`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |         <Self::Source as Flavor>::Field,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Field`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         <Self::Source as Flavor>::Endpoint,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Endpoint`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/errors.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 131 -         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout] 131 +         static ENABLED: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<Filesystem>>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<dyn Filesystem>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:23:57
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>>;
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:129:57
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:68:65
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<Read + '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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<dyn Read + 'a>>(
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<Read + 'a>, S: Into<Span>>(
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<dyn Read + 'a>, S: Into<Span>>(
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/source.rs:171:38
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<Filesystem>) -> Context {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<dyn Filesystem>) -> Context {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:26
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<dyn Filesystem>>) -> Box<Filesystem>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:47
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<dyn Filesystem>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:91:37
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<Filesystem> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<dyn Filesystem> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:23:34
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<Read> = match *self {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<dyn Read> = match *self {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/diagnostics.rs:82:18
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_enum.rs:269:17
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<'_, F> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_tuple.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:161:20
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_file.rs:49:26
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<F> {
[INFO] [stdout]    |                          ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<'_, F> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes<'_> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_interface.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_interface.rs:152:34
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<F> {
[INFO] [stdout]     |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<'_, F> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                  ^^^^^                    ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<'_, Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_type_model.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_decl.rs:97:18
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<F> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<'_, F> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_decl.rs:188:21
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<F>> {
[INFO] [stdout]     |                     ^^^^^         ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<'_, F>> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 let _ = mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             mem::replace(p, new_name);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |             let _ = mem::replace(p, new_name);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_package.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts {
[INFO] [stdout]     |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_path_spec.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<'_, F> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsLoc` is never used
[INFO] [stdout]  --> src/as_loc.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait AsLoc {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.53s
[INFO] running `Command { std: "docker" "inspect" "550a8414ec820d8863df204f5c30c6358d689dd91c80bd8683a4fff527bb49d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "550a8414ec820d8863df204f5c30c6358d689dd91c80bd8683a4fff527bb49d9", kill_on_drop: false }`
[INFO] [stdout] 550a8414ec820d8863df204f5c30c6358d689dd91c80bd8683a4fff527bb49d9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8e61a668ebe255b09c940a8d27917c7cbd00c125b718c3ee98f19541814ef3b6
[INFO] running `Command { std: "docker" "start" "-a" "8e61a668ebe255b09c940a8d27917c7cbd00c125b718c3ee98f19541814ef3b6", kill_on_drop: false }`
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-bigint` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-integer` dependency)
[INFO] [stderr] warning: `default_features` is deprecated in favor of `default-features` and will not work in the 2024 edition
[INFO] [stderr] (in the `num-traits` dependency)
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/import.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn import(&mut self, &RpRequiredPackage) -> Result<Option<RpVersionedPackage>>;
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &RpRequiredPackage`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         <Self::Source as Flavor>::Package,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Package`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         <Self::Source as Flavor>::Type,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Type`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |         <Self::Source as Flavor>::Field,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Field`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         <Self::Source as Flavor>::Endpoint,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Endpoint`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/errors.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 131 -         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout] 131 +         static ENABLED: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<Filesystem>>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<dyn Filesystem>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:23:57
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>>;
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:129:57
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:68:65
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<Read + '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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<dyn Read + 'a>>(
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<Read + 'a>, S: Into<Span>>(
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<dyn Read + 'a>, S: Into<Span>>(
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/source.rs:171:38
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<Filesystem>) -> Context {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<dyn Filesystem>) -> Context {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:26
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<dyn Filesystem>>) -> Box<Filesystem>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:47
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<dyn Filesystem>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:91:37
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<Filesystem> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<dyn Filesystem> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:23:34
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<Read> = match *self {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<dyn Read> = match *self {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/diagnostics.rs:82:18
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_enum.rs:269:17
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<'_, F> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_tuple.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:161:20
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_file.rs:49:26
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<F> {
[INFO] [stdout]    |                          ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<'_, F> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling reproto-core v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes<'_> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_interface.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_interface.rs:152:34
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<F> {
[INFO] [stdout]     |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<'_, F> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                  ^^^^^                    ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<'_, Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_type_model.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_decl.rs:97:18
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<F> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<'_, F> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_decl.rs:188:21
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<F>> {
[INFO] [stdout]     |                     ^^^^^         ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<'_, F>> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 let _ = mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             mem::replace(p, new_name);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |             let _ = mem::replace(p, new_name);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_package.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts {
[INFO] [stdout]     |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_path_spec.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<'_, F> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsLoc` is never used
[INFO] [stdout]  --> src/as_loc.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait AsLoc {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]  --> src/import.rs:8:26
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn import(&mut self, &RpRequiredPackage) -> Result<Option<RpVersionedPackage>>;
[INFO] [stdout]   |                          ^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &RpRequiredPackage`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:166:9
[INFO] [stdout]     |
[INFO] [stdout] 166 |         <Self::Source as Flavor>::Package,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Package`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |         <Self::Source as Flavor>::Type,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Type`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 |         <Self::Source as Flavor>::Field,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Field`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]    --> src/translator.rs:187:9
[INFO] [stdout]     |
[INFO] [stdout] 187 |         <Self::Source as Flavor>::Endpoint,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: <Self::Source as Flavor>::Endpoint`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]     = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> src/errors.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 131 -         static ENABLED: atomic::AtomicUsize = atomic::ATOMIC_USIZE_INIT;
[INFO] [stdout] 131 +         static ENABLED: atomic::AtomicUsize = atomic::AtomicUsize::new(0);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:25:24
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<Filesystem>>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |     filesystem: Rc<Box<dyn Filesystem>>,
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:23:57
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>>;
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:29:60
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>>;
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>>;
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     fn open_root(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:68:65
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 |             fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn open_root(&self, _root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]     |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fs.rs:129:57
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<io::Write>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 129 |     fn create(&self, path: &RelativePath) -> Result<Box<dyn io::Write>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<Read + '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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub fn find_line<'a, R: AsMut<dyn Read + 'a>>(
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/utils.rs:63:32
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<Read + 'a>, S: Into<Span>>(
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub fn find_range<'a, R: AsMut<dyn Read + 'a>, S: Into<Span>>(
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/source.rs:171:38
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 171 |     pub fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:32:32
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<Filesystem>) -> Context {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     pub fn new(filesystem: Box<dyn Filesystem>) -> Context {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:26
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<dyn Filesystem>>) -> Box<Filesystem>,
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:47:47
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<Filesystem>,
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |         F: FnOnce(Rc<Box<Filesystem>>) -> Box<dyn Filesystem>,
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/context.rs:56:65
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<Handle>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     pub fn filesystem(&self, root: Option<&Path>) -> Result<Box<dyn Handle>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:23:34
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<Read>> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     fn read(&self) -> Result<Box<dyn Read>> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/fs.rs:91:37
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<Filesystem> {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn filesystem(&self) -> Box<dyn Filesystem> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/source.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<Read> = match *self {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let out: Box<dyn Read> = match *self {
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/context.rs:71:18
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                  ^^^^^                    ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn items(&self) -> result::Result<Ref<'_, Vec<ContextItem>>, BorrowError> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_tuple.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/diagnostics.rs:82:18
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 82 |     pub fn items(&self) -> Items<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_file.rs:49:26
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<F> {
[INFO] [stdout]    |                          ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 49 |     pub fn for_each_decl(&self) -> ForEachDecl<'_, F> {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_type_model.rs:36:19
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_interface.rs:84:19
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<F> {
[INFO] [stdout]    |                   ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn fields(&self) -> Fields<'_, F> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_interface.rs:152:34
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<F> {
[INFO] [stdout]     |                                  ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |     pub fn discriminating_fields(&self) -> DiscriminatingFields<'_, F> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:161:20
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display {
[INFO] [stdout]     |                    ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 161 |     pub fn display(&self) -> Display<'_> {
[INFO] [stdout]     |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/errors.rs:188:19
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes {
[INFO] [stdout]     |                   ^^^^^     ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn causes(&self) -> Causes<'_> {
[INFO] [stdout]     |                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_path_spec.rs:100:17
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 100 |     pub fn vars(&self) -> Vars<'_, F> {
[INFO] [stdout]     |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rp_decl.rs:97:18
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<F> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     pub fn decls(&self) -> Decls<'_, F> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_decl.rs:188:21
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<F>> {
[INFO] [stdout]     |                     ^^^^^         ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub fn to_named(&self) -> Vec<RpNamed<'_, F>> {
[INFO] [stdout]     |                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 121 |                 let _ = mem::replace(p, keyword.to_string());
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::mem::replace` that must be used
[INFO] [stdout]    --> src/rp_package.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |             mem::replace(p, new_name);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you don't need the old value, you can just assign the new value directly
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |             let _ = mem::replace(p, new_name);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_package.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts {
[INFO] [stdout]     |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 142 |     pub fn parts(&self) -> Parts<'_> {
[INFO] [stdout]     |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/rp_enum.rs:269:17
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<F> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 269 |     pub fn iter(&self) -> RpVariantsIter<'_, F> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsLoc` is never used
[INFO] [stdout]  --> src/as_loc.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub trait AsLoc {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.10s
[INFO] running `Command { std: "docker" "inspect" "8e61a668ebe255b09c940a8d27917c7cbd00c125b718c3ee98f19541814ef3b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8e61a668ebe255b09c940a8d27917c7cbd00c125b718c3ee98f19541814ef3b6", kill_on_drop: false }`
[INFO] [stdout] 8e61a668ebe255b09c940a8d27917c7cbd00c125b718c3ee98f19541814ef3b6
