[INFO] cloning repository https://github.com/aoikonomopoulos/subdiff [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aoikonomopoulos/subdiff" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9793cb6ac6dd0afb94b3fdc14a7eab73f7dcd2d4 [INFO] checking aoikonomopoulos/subdiff against master#385fa9d845dd326c6bbfd58c22244215e431948a for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/aoikonomopoulos/subdiff on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/aoikonomopoulos/subdiff [INFO] finished tweaking git repo https://github.com/aoikonomopoulos/subdiff [INFO] tweaked toml for git repo https://github.com/aoikonomopoulos/subdiff written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/aoikonomopoulos/subdiff already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded lcs-diff v0.1.1 [INFO] [stderr] Downloaded temporary v0.6.3 [INFO] [stderr] Downloaded nodrop v0.1.12 [INFO] [stderr] Downloaded chrono v0.4.3 [INFO] [stderr] Downloaded rayon-core v1.4.0 [INFO] [stderr] Downloaded rayon v1.0.1 [INFO] [stderr] Downloaded regex v1.0.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ed5320711e721fbc1d42ec42227adea2648ddfe962aef2c91de399e69ca45fcc [INFO] running `Command { std: "docker" "start" "-a" "ed5320711e721fbc1d42ec42227adea2648ddfe962aef2c91de399e69ca45fcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ed5320711e721fbc1d42ec42227adea2648ddfe962aef2c91de399e69ca45fcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ed5320711e721fbc1d42ec42227adea2648ddfe962aef2c91de399e69ca45fcc", kill_on_drop: false }` [INFO] [stdout] ed5320711e721fbc1d42ec42227adea2648ddfe962aef2c91de399e69ca45fcc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f925d8095763543f59aacf2f0ddb22cd98c939fefb49eac59e9a003670291074 [INFO] running `Command { std: "docker" "start" "-a" "f925d8095763543f59aacf2f0ddb22cd98c939fefb49eac59e9a003670291074", kill_on_drop: false }` [INFO] [stderr] Checking libc v0.2.42 [INFO] [stderr] Checking lazy_static v1.0.1 [INFO] [stderr] Checking cfg-if v0.1.3 [INFO] [stderr] Checking nodrop v0.1.12 [INFO] [stderr] Compiling num-traits v0.2.4 [INFO] [stderr] Compiling num-integer v0.1.38 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking either v1.5.0 [INFO] [stderr] Compiling regex v1.0.0 [INFO] [stderr] Compiling rayon-core v1.4.0 [INFO] [stderr] Checking ucd-util v0.1.1 [INFO] [stderr] Checking bitflags v1.0.3 [INFO] [stderr] Checking textwrap v0.9.0 [INFO] [stderr] Checking strsim v0.7.0 [INFO] [stderr] Checking utf8-ranges v1.0.0 [INFO] [stderr] Checking arrayvec v0.4.7 [INFO] [stderr] Checking random v0.12.2 [INFO] [stderr] Checking unreachable v1.0.0 [INFO] [stderr] Checking lcs-diff v0.1.1 [INFO] [stderr] Checking crossbeam-utils v0.2.2 [INFO] [stderr] Checking regex-syntax v0.6.1 [INFO] [stderr] Checking itertools v0.7.8 [INFO] [stderr] Checking temporary v0.6.3 [INFO] [stderr] Checking thread_local v0.3.5 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking num_cpus v1.8.0 [INFO] [stderr] Checking rand v0.4.2 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking atty v0.2.10 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking clap v2.31.2 [INFO] [stderr] Checking aho-corasick v0.6.4 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking rayon v1.0.1 [INFO] [stderr] Checking chrono v0.4.3 [INFO] [stderr] Checking subdiff v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `lcs_diff` is imported redundantly [INFO] [stdout] --> src/hunked.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use super::lcs_diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate lcs_diff; [INFO] [stdout] | ---------------------- the item `lcs_diff` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Word` is imported redundantly [INFO] [stdout] --> src/hunked.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::wdiff::*; [INFO] [stdout] | --------------- the item `Word` is already imported here [INFO] [stdout] 10 | use wdiff::Word; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:14:24 [INFO] [stdout] | [INFO] [stdout] 14 | fn do_write(&self, &Conf, [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` 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/hunked.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:19 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:26 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:64:27 [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:252:48 [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:274:43 [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:282:36 [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:145:35 [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:351:45 [INFO] [stdout] | [INFO] [stdout] 351 | ... ds : &mut Iterator>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 351 | ds : &mut dyn Iterator>) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:404:43 [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut FnMut(Option<&Hunk>) -> [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 405 | | io::Result<()>, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:441:28 [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:580:28 [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:629:16 [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:199:42 [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:234:47 [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:293:45 [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:335:40 [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:350:42 [INFO] [stdout] | [INFO] [stdout] 350 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 350 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:368:45 [INFO] [stdout] | [INFO] [stdout] 368 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 368 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:18:35 [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:30:35 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:53:35 [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut Write) -> io::Result<()>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut dyn Write) -> io::Result<()>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:165:28 [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:197:33 [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:255:35 [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:310:27 [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `lcs_diff` is imported redundantly [INFO] [stdout] --> src/hunked.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use super::lcs_diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate lcs_diff; [INFO] [stdout] | ---------------------- the item `lcs_diff` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Word` is imported redundantly [INFO] [stdout] --> src/hunked.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::wdiff::*; [INFO] [stdout] | --------------- the item `Word` is already imported here [INFO] [stdout] 10 | use wdiff::Word; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/hunked.rs:422:31 [INFO] [stdout] | [INFO] [stdout] 422 | CollectingCommonsTail(mut hunk, _, _) => hunk, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` 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/hunked.rs:14:24 [INFO] [stdout] | [INFO] [stdout] 14 | fn do_write(&self, &Conf, [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` 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/hunked.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:19 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:26 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:64:27 [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:252:48 [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:274:43 [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:282:36 [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:145:35 [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:351:45 [INFO] [stdout] | [INFO] [stdout] 351 | ... ds : &mut Iterator>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 351 | ds : &mut dyn Iterator>) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:404:43 [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut FnMut(Option<&Hunk>) -> [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 405 | | io::Result<()>, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:441:28 [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:580:28 [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:629:16 [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:199:42 [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:234:47 [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:293:45 [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:335:40 [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:350:42 [INFO] [stdout] | [INFO] [stdout] 350 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 350 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:368:45 [INFO] [stdout] | [INFO] [stdout] 368 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 368 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:18:35 [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:30:35 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:53:35 [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut Write) -> io::Result<()>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut dyn Write) -> io::Result<()>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:165:28 [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:197:33 [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:255:35 [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests.rs:110:46 [INFO] [stdout] | [INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut dyn Write) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:310:27 [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/hunked.rs:422:31 [INFO] [stdout] | [INFO] [stdout] 422 | CollectingCommonsTail(mut hunk, _, _) => hunk, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 41 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.89s [INFO] running `Command { std: "docker" "inspect" "f925d8095763543f59aacf2f0ddb22cd98c939fefb49eac59e9a003670291074", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f925d8095763543f59aacf2f0ddb22cd98c939fefb49eac59e9a003670291074", kill_on_drop: false }` [INFO] [stdout] f925d8095763543f59aacf2f0ddb22cd98c939fefb49eac59e9a003670291074 [INFO] checking aoikonomopoulos/subdiff against try#645bb72776a6a56a1a8f52631a44bd082b2ba509 for absurd-question-mark-desugar [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faoikonomopoulos%2Fsubdiff" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/aoikonomopoulos/subdiff on toolchain 645bb72776a6a56a1a8f52631a44bd082b2ba509 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/aoikonomopoulos/subdiff [INFO] finished tweaking git repo https://github.com/aoikonomopoulos/subdiff [INFO] tweaked toml for git repo https://github.com/aoikonomopoulos/subdiff written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/aoikonomopoulos/subdiff already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e362150ce9e5acaa85e1cc2295dd713416f0be61c741686b55fffd4600d58cf1 [INFO] running `Command { std: "docker" "start" "-a" "e362150ce9e5acaa85e1cc2295dd713416f0be61c741686b55fffd4600d58cf1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e362150ce9e5acaa85e1cc2295dd713416f0be61c741686b55fffd4600d58cf1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e362150ce9e5acaa85e1cc2295dd713416f0be61c741686b55fffd4600d58cf1", kill_on_drop: false }` [INFO] [stdout] e362150ce9e5acaa85e1cc2295dd713416f0be61c741686b55fffd4600d58cf1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+645bb72776a6a56a1a8f52631a44bd082b2ba509" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 27798ab4c84d18c5d1cfc2d9ac4d1ebc539e551f2019c50ff106fa4c4261c68d [INFO] running `Command { std: "docker" "start" "-a" "27798ab4c84d18c5d1cfc2d9ac4d1ebc539e551f2019c50ff106fa4c4261c68d", kill_on_drop: false }` [INFO] [stderr] Checking libc v0.2.42 [INFO] [stderr] Checking lazy_static v1.0.1 [INFO] [stderr] Checking nodrop v0.1.12 [INFO] [stderr] Compiling num-traits v0.2.4 [INFO] [stderr] Checking cfg-if v0.1.3 [INFO] [stderr] Compiling num-integer v0.1.38 [INFO] [stderr] Checking memoffset v0.2.1 [INFO] [stderr] Checking scopeguard v0.3.3 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking either v1.5.0 [INFO] [stderr] Compiling regex v1.0.0 [INFO] [stderr] Compiling rayon-core v1.4.0 [INFO] [stderr] Checking ucd-util v0.1.1 [INFO] [stderr] Checking bitflags v1.0.3 [INFO] [stderr] Checking textwrap v0.9.0 [INFO] [stderr] Checking strsim v0.7.0 [INFO] [stderr] Checking utf8-ranges v1.0.0 [INFO] [stderr] Checking unreachable v1.0.0 [INFO] [stderr] Checking random v0.12.2 [INFO] [stderr] Checking lcs-diff v0.1.1 [INFO] [stderr] Checking arrayvec v0.4.7 [INFO] [stderr] Checking crossbeam-utils v0.2.2 [INFO] [stderr] Checking itertools v0.7.8 [INFO] [stderr] Checking thread_local v0.3.5 [INFO] [stderr] Checking regex-syntax v0.6.1 [INFO] [stderr] Checking temporary v0.6.3 [INFO] [stderr] Checking crossbeam-epoch v0.3.1 [INFO] [stderr] Checking memchr v2.0.1 [INFO] [stderr] Checking num_cpus v1.8.0 [INFO] [stderr] Checking rand v0.4.2 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking atty v0.2.10 [INFO] [stderr] Checking crossbeam-deque v0.2.0 [INFO] [stderr] Checking aho-corasick v0.6.4 [INFO] [stderr] Checking clap v2.31.2 [INFO] [stderr] Checking chrono v0.4.3 [INFO] [stderr] Checking rayon v1.0.1 [INFO] [stderr] Checking subdiff v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: the item `lcs_diff` is imported redundantly [INFO] [stdout] --> src/hunked.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use super::lcs_diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate lcs_diff; [INFO] [stdout] | ---------------------- the item `lcs_diff` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Word` is imported redundantly [INFO] [stdout] --> src/hunked.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::wdiff::*; [INFO] [stdout] | --------------- the item `Word` is already imported here [INFO] [stdout] 10 | use wdiff::Word; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:14:24 [INFO] [stdout] | [INFO] [stdout] 14 | fn do_write(&self, &Conf, [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` 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/hunked.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:19 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:26 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:64:27 [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:252:48 [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:274:43 [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:282:36 [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `lcs_diff` is imported redundantly [INFO] [stdout] --> src/hunked.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use super::lcs_diff; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/main.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate lcs_diff; [INFO] [stdout] | ---------------------- the item `lcs_diff` is already imported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `Word` is imported redundantly [INFO] [stdout] --> src/hunked.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | use super::wdiff::*; [INFO] [stdout] | --------------- the item `Word` is already imported here [INFO] [stdout] 10 | use wdiff::Word; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:14:24 [INFO] [stdout] | [INFO] [stdout] 14 | fn do_write(&self, &Conf, [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] = note: `#[warn(anonymous_parameters)]` 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/hunked.rs:15:17 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:15:36 [INFO] [stdout] | [INFO] [stdout] 15 | &[Self::DiffItem], &[Self::DiffItem], [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[Self::DiffItem]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/hunked.rs:16:17 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &mut Write` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:19 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Conf` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition [INFO] [stdout] --> src/main.rs:144:26 [INFO] [stdout] | [INFO] [stdout] 144 | fn sel(&self, &Conf, &[u8]) -> Option>; [INFO] [stdout] | ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]` [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:145:35 [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:351:45 [INFO] [stdout] | [INFO] [stdout] 351 | ... ds : &mut Iterator>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 351 | ds : &mut dyn Iterator>) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:404:43 [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut FnMut(Option<&Hunk>) -> [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 405 | | io::Result<()>, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:441:28 [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:64:27 [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn file_header(out : &mut dyn Write, prefix : &[u8], path : &Path) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:580:28 [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:629:16 [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:199:42 [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:234:47 [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:293:45 [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:335:40 [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:350:42 [INFO] [stdout] | [INFO] [stdout] 350 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 350 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:368:45 [INFO] [stdout] | [INFO] [stdout] 368 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 368 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:18:35 [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:30:35 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:53:35 [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut Write) -> io::Result<()>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut dyn Write) -> io::Result<()>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:165:28 [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:197:33 [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:255:35 [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:252:48 [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 252 | fn build_re_selector(re_strs : I) -> Box [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:274:43 [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &ReSelector, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 274 | fn extract_re_matches(conf : &Conf, re : &dyn ReSelector, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:282:36 [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &ReSelector, ignore_re : &Option, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn pick_lines(conf : &Conf, mre : &dyn ReSelector, ignore_re : &Option, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 287 | fn diff_files<'a, I>(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/tests.rs:110:46 [INFO] [stdout] | [INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 110 | fn do_wdiff(s1 : &str, s2 : &str, out : &mut dyn Write) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:16:22 [INFO] [stdout] | [INFO] [stdout] 16 | &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 16 | &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:145:35 [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 145 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:351:45 [INFO] [stdout] | [INFO] [stdout] 351 | ... ds : &mut Iterator>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 351 | ds : &mut dyn Iterator>) { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:404:43 [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut FnMut(Option<&Hunk>) -> [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 405 | | io::Result<()>, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 404 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:441:28 [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 441 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:580:28 [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 580 | dump_hunk : &mut dyn FnMut(Option<&Hunk>) -> io::Result<()>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:629:16 [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 629 | out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:199:42 [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 199 | fn narrow_do_common<'a, I, T>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:234:47 [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 234 | fn narrow_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:293:45 [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 293 | fn wide_do_differences<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:335:40 [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 335 | fn wide_do_common<'a, T, I>(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:350:42 [INFO] [stdout] | [INFO] [stdout] 350 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 350 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:368:45 [INFO] [stdout] | [INFO] [stdout] 368 | ... out : &mut Write) -> io::Result<()> [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 368 | out : &mut dyn Write) -> io::Result<()> [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:18:35 [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut Write) -> io::Result<()>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 18 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:174:28 [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 174 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:30:35 [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 30 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 41 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:53:35 [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 53 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:172:32 [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut Write) -> io::Result<()>{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 172 | fn write(&self, out : &mut dyn Write) -> io::Result<()>{ [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:165:28 [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 165 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:179:29 [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 179 | fn write_off_len(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:197:33 [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut 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 [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | fn write_hunk_header(out : &mut dyn Write, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:255:35 [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut Write, conf : &Conf, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 255 | fn output_context_line(out : &mut dyn Write, conf : &Conf, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/hunked.rs:292:28 [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 292 | out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/wdiff.rs:22:35 [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut Write) -> io::Result<()> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 22 | fn write_to(&self, out : &mut dyn Write) -> io::Result<()> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:310:27 [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/main.rs:310:27 [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 310 | let mre : Box = re.map(build_re_selector) [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/hunked.rs:422:31 [INFO] [stdout] | [INFO] [stdout] 422 | CollectingCommonsTail(mut hunk, _, _) => hunk, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/hunked.rs:422:31 [INFO] [stdout] | [INFO] [stdout] 422 | CollectingCommonsTail(mut hunk, _, _) => hunk, [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 41 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.38s [INFO] running `Command { std: "docker" "inspect" "27798ab4c84d18c5d1cfc2d9ac4d1ebc539e551f2019c50ff106fa4c4261c68d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "27798ab4c84d18c5d1cfc2d9ac4d1ebc539e551f2019c50ff106fa4c4261c68d", kill_on_drop: false }` [INFO] [stdout] 27798ab4c84d18c5d1cfc2d9ac4d1ebc539e551f2019c50ff106fa4c4261c68d