[INFO] cloning repository https://github.com/ayourtch/tbpatch
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ayourtch/tbpatch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Ftbpatch", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Ftbpatch'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 804d03cf5f5d18d1f7a5afe90d32241bc83b1ec3
[INFO] checking ayourtch/tbpatch against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fayourtch%2Ftbpatch" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ayourtch/tbpatch
[INFO] finished tweaking git repo https://github.com/ayourtch/tbpatch
[INFO] tweaked toml for git repo https://github.com/ayourtch/tbpatch written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ayourtch/tbpatch on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ayourtch/tbpatch 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" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded diffus v0.10.0
[INFO] [stderr]   Downloaded diffus-derive v0.10.0
[INFO] [stderr]   Downloaded heck v0.3.2
[INFO] [stderr]   Downloaded proc-macro2 v1.0.26
[INFO] [stderr]   Downloaded unidiff v0.3.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 291314d2562a73d8e06fa8f7436906f628977e61d2449f5dc0d67bd5bcb2ecc9
[INFO] running `Command { std: "docker" "start" "-a" "291314d2562a73d8e06fa8f7436906f628977e61d2449f5dc0d67bd5bcb2ecc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "291314d2562a73d8e06fa8f7436906f628977e61d2449f5dc0d67bd5bcb2ecc9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "291314d2562a73d8e06fa8f7436906f628977e61d2449f5dc0d67bd5bcb2ecc9", kill_on_drop: false }`
[INFO] [stdout] 291314d2562a73d8e06fa8f7436906f628977e61d2449f5dc0d67bd5bcb2ecc9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0419428d98cfc1df7f0da856ce216426c5245af7c0eae2365e5f238a52324cab
[INFO] running `Command { std: "docker" "start" "-a" "0419428d98cfc1df7f0da856ce216426c5245af7c0eae2365e5f238a52324cab", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.26
[INFO] [stderr]    Compiling version_check v0.9.3
[INFO] [stderr]    Compiling syn v1.0.72
[INFO] [stderr]    Compiling memchr v2.4.0
[INFO] [stderr]    Compiling libc v0.2.94
[INFO] [stderr]    Compiling encoding_rs v0.8.28
[INFO] [stderr]    Compiling unicode-segmentation v1.7.1
[INFO] [stderr]     Checking hashbrown v0.9.1
[INFO] [stderr]    Compiling indexmap v1.6.2
[INFO] [stderr]     Checking itertools v0.10.0
[INFO] [stderr]     Checking textwrap v0.12.1
[INFO] [stderr]     Checking termcolor v1.1.2
[INFO] [stderr]     Checking os_str_bytes v2.4.0
[INFO] [stderr]    Compiling heck v0.3.2
[INFO] [stderr]    Compiling proc-macro-error-attr v1.0.4
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]     Checking diffus v0.10.0
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]     Checking unidiff v0.3.3
[INFO] [stderr]    Compiling clap_derive v3.0.0-beta.2
[INFO] [stderr]    Compiling diffus-derive v0.10.0
[INFO] [stderr]     Checking clap v3.0.0-beta.2
[INFO] [stderr]     Checking tbpatch v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/main.rs:538:5
[INFO] [stdout]     |
[INFO] [stdout] 529 |         return out_file;
[INFO] [stdout]     |         --------------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 538 |     return src_file.clone();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]    --> src/main.rs:538:5
[INFO] [stdout]     |
[INFO] [stdout] 529 |         return out_file;
[INFO] [stdout]     |         --------------- any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 538 |     return src_file.clone();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_uuid`
[INFO] [stdout]    --> src/main.rs:273:37
[INFO] [stdout]     |
[INFO] [stdout] 273 | ...                   token_uuid,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `token_uuid: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leading_ws`
[INFO] [stdout]    --> src/main.rs:274:37
[INFO] [stdout]     |
[INFO] [stdout] 274 | ...                   leading_ws,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `leading_ws: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tok`
[INFO] [stdout]    --> src/main.rs:279:49
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...                   let tok = &right.atoms[atom_index].token_value;
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]    --> src/main.rs:346:14
[INFO] [stdout]     |
[INFO] [stdout] 346 |     for (hi, ch) in haystack.into_iter().enumerate() {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/main.rs:379:9
[INFO] [stdout]     |
[INFO] [stdout] 379 |     for i in 0..p {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_uuid`
[INFO] [stdout]    --> src/main.rs:442:37
[INFO] [stdout]     |
[INFO] [stdout] 442 | ...                   token_uuid,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `token_uuid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leading_ws`
[INFO] [stdout]    --> src/main.rs:443:37
[INFO] [stdout]     |
[INFO] [stdout] 443 | ...                   leading_ws,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `leading_ws: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/main.rs:446:58
[INFO] [stdout]     |
[INFO] [stdout] 446 | ...                   edit::Edit::Copy(x) => {
[INFO] [stdout]     |                                        ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/main.rs:404:26
[INFO] [stdout]     |
[INFO] [stdout] 404 |         edit::Edit::Copy(x) => {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/main.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     file: &unidiff::PatchedFile,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `find_pos`
[INFO] [stdout]    --> src/main.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let find_pos = find_needle(&src.atoms, &src_file.atoms, true);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_find_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/main.rs:586:13
[INFO] [stdout]     |
[INFO] [stdout] 586 |         let res = res.unwrap();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `config` and `strip` are never read
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Opts {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     strip: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opts` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Test(Test),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SubCommand` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 37 -     Test(Test),
[INFO] [stdout] 37 +     Test(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `debug` is never read
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct Test {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     debug: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Test` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_nth_arg` is never used
[INFO] [stdout]    --> src/main.rs:166:4
[INFO] [stdout]     |
[INFO] [stdout] 166 | fn read_nth_arg(i: usize) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_nth_arg` is never used
[INFO] [stdout]    --> src/main.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn parse_nth_arg(i: usize) -> ParseStruct {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_diffus` is never used
[INFO] [stdout]    --> src/main.rs:317:4
[INFO] [stdout]     |
[INFO] [stdout] 317 | fn test_diffus() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `HunkOp` is never used
[INFO] [stdout]    --> src/main.rs:336:6
[INFO] [stdout]     |
[INFO] [stdout] 336 | enum HunkOp {
[INFO] [stdout]     |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_uuid`
[INFO] [stdout]    --> src/main.rs:273:37
[INFO] [stdout]     |
[INFO] [stdout] 273 | ...                   token_uuid,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `token_uuid: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leading_ws`
[INFO] [stdout]    --> src/main.rs:274:37
[INFO] [stdout]     |
[INFO] [stdout] 274 | ...                   leading_ws,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `leading_ws: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tok`
[INFO] [stdout]    --> src/main.rs:279:49
[INFO] [stdout]     |
[INFO] [stdout] 279 | ...                   let tok = &right.atoms[atom_index].token_value;
[INFO] [stdout]     |                           ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:195:21
[INFO] [stdout]     |
[INFO] [stdout] 195 | /                     diff.into_iter()
[INFO] [stdout] 196 | |                         .map(|edit| {
[INFO] [stdout] 197 | |                             match edit {
[INFO] [stdout] 198 | |                                 collection::Edit::Copy(elem) => println!("copy: {:?}", elem),
[INFO] [stdout] ...   |
[INFO] [stdout] 229 | |                         })
[INFO] [stdout] 230 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]    --> src/main.rs:251:21
[INFO] [stdout]     |
[INFO] [stdout] 251 | /                     x.into_iter().map(|xx| {
[INFO] [stdout] 252 | |                         print!("{}", &atom2str(&xx));
[INFO] [stdout] 253 | |                         atom_index = atom_index + 1;
[INFO] [stdout] 254 | |                     });
[INFO] [stdout]     | |______________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let _ = x.into_iter().map(|xx| {
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 | /                     diff.into_iter()
[INFO] [stdout] 258 | |                         .map(|edit| {
[INFO] [stdout] 259 | |                             match edit {
[INFO] [stdout] 260 | |                                 collection::Edit::Copy(elem) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 308 | |                         })
[INFO] [stdout] 309 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]    --> src/main.rs:415:21
[INFO] [stdout]     |
[INFO] [stdout] 415 | /                     x.into_iter().map(|xx| {
[INFO] [stdout] 416 | |                         assert!(&src_file.atoms[p + src_skip] == xx);
[INFO] [stdout] 417 | |                         out_file.atoms.push(xx.clone());
[INFO] [stdout] 418 | |                         src_skip = src_skip + 1;
[INFO] [stdout] 419 | |                     });
[INFO] [stdout]     | |______________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 415 |                     let _ = x.into_iter().map(|xx| {
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:422:21
[INFO] [stdout]     |
[INFO] [stdout] 422 | /                     diff.into_iter()
[INFO] [stdout] 423 | |                         .map(|edit| {
[INFO] [stdout] 424 | |                             match edit {
[INFO] [stdout] 425 | |                                 collection::Edit::Copy(elem) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 483 | |                         })
[INFO] [stdout] 484 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 422 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ch`
[INFO] [stdout]    --> src/main.rs:346:14
[INFO] [stdout]     |
[INFO] [stdout] 346 |     for (hi, ch) in haystack.into_iter().enumerate() {
[INFO] [stdout]     |              ^^ help: if this is intentional, prefix it with an underscore: `_ch`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/main.rs:379:9
[INFO] [stdout]     |
[INFO] [stdout] 379 |     for i in 0..p {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `token_uuid`
[INFO] [stdout]    --> src/main.rs:442:37
[INFO] [stdout]     |
[INFO] [stdout] 442 | ...                   token_uuid,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `token_uuid: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leading_ws`
[INFO] [stdout]    --> src/main.rs:443:37
[INFO] [stdout]     |
[INFO] [stdout] 443 | ...                   leading_ws,
[INFO] [stdout]     |                       ^^^^^^^^^^ help: try ignoring the field: `leading_ws: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/main.rs:446:58
[INFO] [stdout]     |
[INFO] [stdout] 446 | ...                   edit::Edit::Copy(x) => {
[INFO] [stdout]     |                                        ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> src/main.rs:404:26
[INFO] [stdout]     |
[INFO] [stdout] 404 |         edit::Edit::Copy(x) => {
[INFO] [stdout]     |                          ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/main.rs:494:5
[INFO] [stdout]     |
[INFO] [stdout] 494 |     file: &unidiff::PatchedFile,
[INFO] [stdout]     |     ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `find_pos`
[INFO] [stdout]    --> src/main.rs:533:13
[INFO] [stdout]     |
[INFO] [stdout] 533 |         let find_pos = find_needle(&src.atoms, &src_file.atoms, true);
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_find_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> src/main.rs:586:13
[INFO] [stdout]     |
[INFO] [stdout] 586 |         let res = res.unwrap();
[INFO] [stdout]     |             ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `config` and `strip` are never read
[INFO] [stdout]   --> src/main.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Opts {
[INFO] [stdout]    |        ---- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     config: String,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 17 |     strip: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Opts` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:37:10
[INFO] [stdout]    |
[INFO] [stdout] 37 |     Test(Test),
[INFO] [stdout]    |     ---- ^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SubCommand` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 37 -     Test(Test),
[INFO] [stdout] 37 +     Test(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `debug` is never read
[INFO] [stdout]   --> src/main.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct Test {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 45 |     debug: bool,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Test` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_nth_arg` is never used
[INFO] [stdout]    --> src/main.rs:166:4
[INFO] [stdout]     |
[INFO] [stdout] 166 | fn read_nth_arg(i: usize) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_nth_arg` is never used
[INFO] [stdout]    --> src/main.rs:172:4
[INFO] [stdout]     |
[INFO] [stdout] 172 | fn parse_nth_arg(i: usize) -> ParseStruct {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_diffus` is never used
[INFO] [stdout]    --> src/main.rs:317:4
[INFO] [stdout]     |
[INFO] [stdout] 317 | fn test_diffus() {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `HunkOp` is never used
[INFO] [stdout]    --> src/main.rs:336:6
[INFO] [stdout]     |
[INFO] [stdout] 336 | enum HunkOp {
[INFO] [stdout]     |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:195:21
[INFO] [stdout]     |
[INFO] [stdout] 195 | /                     diff.into_iter()
[INFO] [stdout] 196 | |                         .map(|edit| {
[INFO] [stdout] 197 | |                             match edit {
[INFO] [stdout] 198 | |                                 collection::Edit::Copy(elem) => println!("copy: {:?}", elem),
[INFO] [stdout] ...   |
[INFO] [stdout] 229 | |                         })
[INFO] [stdout] 230 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 195 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]    --> src/main.rs:251:21
[INFO] [stdout]     |
[INFO] [stdout] 251 | /                     x.into_iter().map(|xx| {
[INFO] [stdout] 252 | |                         print!("{}", &atom2str(&xx));
[INFO] [stdout] 253 | |                         atom_index = atom_index + 1;
[INFO] [stdout] 254 | |                     });
[INFO] [stdout]     | |______________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 251 |                     let _ = x.into_iter().map(|xx| {
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:257:21
[INFO] [stdout]     |
[INFO] [stdout] 257 | /                     diff.into_iter()
[INFO] [stdout] 258 | |                         .map(|edit| {
[INFO] [stdout] 259 | |                             match edit {
[INFO] [stdout] 260 | |                                 collection::Edit::Copy(elem) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 308 | |                         })
[INFO] [stdout] 309 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Map` that must be used
[INFO] [stdout]    --> src/main.rs:415:21
[INFO] [stdout]     |
[INFO] [stdout] 415 | /                     x.into_iter().map(|xx| {
[INFO] [stdout] 416 | |                         assert!(&src_file.atoms[p + src_skip] == xx);
[INFO] [stdout] 417 | |                         out_file.atoms.push(xx.clone());
[INFO] [stdout] 418 | |                         src_skip = src_skip + 1;
[INFO] [stdout] 419 | |                     });
[INFO] [stdout]     | |______________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: iterators are lazy and do nothing unless consumed
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 415 |                     let _ = x.into_iter().map(|xx| {
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]    --> src/main.rs:422:21
[INFO] [stdout]     |
[INFO] [stdout] 422 | /                     diff.into_iter()
[INFO] [stdout] 423 | |                         .map(|edit| {
[INFO] [stdout] 424 | |                             match edit {
[INFO] [stdout] 425 | |                                 collection::Edit::Copy(elem) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 483 | |                         })
[INFO] [stdout] 484 | |                         .collect::<Vec<_>>();
[INFO] [stdout]     | |____________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 422 |                     let _ = diff.into_iter()
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.00s
[INFO] running `Command { std: "docker" "inspect" "0419428d98cfc1df7f0da856ce216426c5245af7c0eae2365e5f238a52324cab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0419428d98cfc1df7f0da856ce216426c5245af7c0eae2365e5f238a52324cab", kill_on_drop: false }`
[INFO] [stdout] 0419428d98cfc1df7f0da856ce216426c5245af7c0eae2365e5f238a52324cab
