[INFO] fetching crate stream_zipper 0.2.0...
[INFO] checking stream_zipper-0.2.0 against 895980e0290783bb09b1ccf1b11f14eb09b10430 for pr-160186
[INFO] extracting crate stream_zipper 0.2.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate stream_zipper 0.2.0
[INFO] finished tweaking crates.io crate stream_zipper 0.2.0
[INFO] tweaked toml for crates.io crate stream_zipper 0.2.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate stream_zipper 0.2.0 on toolchain 895980e0290783bb09b1ccf1b11f14eb09b10430
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 11 packages to highest compatible versions
[INFO] [stderr]       Adding miniz_oxide v0.3.7 (available: v0.9.1)
[INFO] [stderr]       Adding nom v5.1.3 (available: v8.0.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `stream_zipper` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0
[INFO] running `Command { std: "docker" "start" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0" "/opt/rustwide/cargo-home/bin/cargo" "+895980e0290783bb09b1ccf1b11f14eb09b10430" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `stream_zipper` (manifest) generated 1 warning
[INFO] [stderr]    Compiling lexical-core v0.7.6
[INFO] [stderr]    Compiling nom v5.1.3
[INFO] [stderr]     Checking arrayvec v0.5.2
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]     Checking miniz_oxide v0.3.7
[INFO] [stderr]     Checking stream_zipper v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn nom_fail<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:38:26
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn nom_err<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:57:30
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn map_nom_err<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 | /     do_parse!(
[INFO] [stdout] 263 | |         i,
[INFO] [stdout] 264 | |         tag: parse_header_id
[INFO] [stdout] 265 | |             >> len: complete_le_u16
[INFO] [stdout] 266 | |             >> contents: take!(len)
[INFO] [stdout] 267 | |             >> ((tag, contents.to_vec()))
[INFO] [stdout] 268 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 | /     do_parse!(
[INFO] [stdout] 263 | |         i,
[INFO] [stdout] 264 | |         tag: parse_header_id
[INFO] [stdout] 265 | |             >> len: complete_le_u16
[INFO] [stdout] 266 | |             >> contents: take!(len)
[INFO] [stdout] 267 | |             >> ((tag, contents.to_vec()))
[INFO] [stdout] 268 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 |     length_value!(input, value!(len), many0!(parse_one_extra_field))
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `length_value`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `length_value` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:37:27
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn nom_fail<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` (part of `#[warn(rust_2018_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:38:26
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn nom_err<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/utils.rs:57:30
[INFO] [stdout]    |
[INFO] [stdout] 57 |     fn map_nom_err<E2>(self, impl Fn(E1) -> E2) -> Result<T, nom::Err<E2>>;
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: impl Fn(E1) -> E2`
[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 <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 | /     do_parse!(
[INFO] [stdout] 263 | |         i,
[INFO] [stdout] 264 | |         tag: parse_header_id
[INFO] [stdout] 265 | |             >> len: complete_le_u16
[INFO] [stdout] 266 | |             >> contents: take!(len)
[INFO] [stdout] 267 | |             >> ((tag, contents.to_vec()))
[INFO] [stdout] 268 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:262:5
[INFO] [stdout]     |
[INFO] [stdout] 262 | /     do_parse!(
[INFO] [stdout] 263 | |         i,
[INFO] [stdout] 264 | |         tag: parse_header_id
[INFO] [stdout] 265 | |             >> len: complete_le_u16
[INFO] [stdout] 266 | |             >> contents: take!(len)
[INFO] [stdout] 267 | |             >> ((tag, contents.to_vec()))
[INFO] [stdout] 268 | |     )
[INFO] [stdout]     | |_____^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:275:5
[INFO] [stdout]     |
[INFO] [stdout] 275 |     length_value!(input, value!(len), many0!(parse_one_extra_field))
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `length_value`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `length_value` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         do_parse!(
[INFO] [stdout] 349 | |             i,
[INFO] [stdout] 350 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 351 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |                 })
[INFO] [stdout] 360 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         do_parse!(
[INFO] [stdout] 365 | |             i,
[INFO] [stdout] 366 | |             tag: opt!(btag(DATA_DESCRIPTOR_TAG))
[INFO] [stdout] 367 | |                 >> crc_32: le_u32
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |                 })
[INFO] [stdout] 376 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:442:9
[INFO] [stdout]     |
[INFO] [stdout] 442 | /         do_parse!(
[INFO] [stdout] 443 | |             i,
[INFO] [stdout] 444 | |             version_made_by: parse_version_made_by
[INFO] [stdout] 445 | |                 >> version_needed: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 482 | |                 })
[INFO] [stdout] 483 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]    --> src/zip/headers.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         do_parse!(
[INFO] [stdout] 501 | |             i,
[INFO] [stdout] 502 | |             tag!(CENTRAL_DIR_END_TAG)
[INFO] [stdout] 503 | |                 >> this_disk_num: le_u16
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | |                 })
[INFO] [stdout] 520 | |         )
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: macro invocations at the end of a block are treated as expressions
[INFO] [stdout]     = note: to ignore the value produced by the macro, add a semicolon after the invocation of `do_parse`
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]     = note: this warning originates in the macro `do_parse` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip.rs:403:82
[INFO] [stdout]     |
[INFO] [stdout] 403 |                     actual_uncomp_size = (state.uncomp_size as u64) % (std::u32::MAX as u64 + 1);
[INFO] [stdout]     |                                                                                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip.rs:404:78
[INFO] [stdout]     |
[INFO] [stdout] 404 |                     actual_comp_size = (state.comp_size as u64) % (std::u32::MAX as u64 + 1);
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip/headers.rs:328:57
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 is_zip64: (compressed_size == std::u32::MAX || uncompressed_size == std::u32::MAX),
[INFO] [stdout]     |                                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip/headers.rs:328:95
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 is_zip64: (compressed_size == std::u32::MAX || uncompressed_size == std::u32::MAX),
[INFO] [stdout]     |                                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip.rs:403:82
[INFO] [stdout]     |
[INFO] [stdout] 403 |                     actual_uncomp_size = (state.uncomp_size as u64) % (std::u32::MAX as u64 + 1);
[INFO] [stdout]     |                                                                                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip.rs:404:78
[INFO] [stdout]     |
[INFO] [stdout] 404 |                     actual_comp_size = (state.comp_size as u64) % (std::u32::MAX as u64 + 1);
[INFO] [stdout]     |                                                                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip/headers.rs:328:57
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 is_zip64: (compressed_size == std::u32::MAX || uncompressed_size == std::u32::MAX),
[INFO] [stdout]     |                                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/zip/headers.rs:328:95
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 is_zip64: (compressed_size == std::u32::MAX || uncompressed_size == std::u32::MAX),
[INFO] [stdout]     |                                                                                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/deflate.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     mut state: &'o mut InnerState,
[INFO] [stdout]    |     ----^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/gzip.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 output,
[INFO] [stdout]     |                 ^^^^^^ help: try ignoring the field: `output: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `footer`
[INFO] [stdout]    --> src/gzip.rs:232:31
[INFO] [stdout]     |
[INFO] [stdout] 232 |             Ok((mut unparsed, footer)) => {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_footer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/gzip.rs:311:23
[INFO] [stdout]     |
[INFO] [stdout] 311 |         Ok((unparsed, header)) => Ok((
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed`
[INFO] [stdout]   --> src/input_helper.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let unparsed = if orig_stored > 0 {
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/zip.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<Self> {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/deflate.rs:55:5
[INFO] [stdout]    |
[INFO] [stdout] 55 |     mut state: &'o mut InnerState,
[INFO] [stdout]    |     ----^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed_input`
[INFO] [stdout]    --> src/deflate.rs:407:31
[INFO] [stdout]     |
[INFO] [stdout] 407 |                 State::Stop { unparsed_input } => last_state = Some(state),
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^ help: try ignoring the field: `unparsed_input: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inflater`
[INFO] [stdout]    --> src/zip.rs:277:21
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 let inflater = deflate::Stream::new();
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inflater`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/zip.rs:353:17
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 output,
[INFO] [stdout]     |                 ^^^^^^ help: try ignoring the field: `output: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/lib.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |             Init(file) => panic!("This shouldn't be called before autodetect!"),
[INFO] [stdout]     |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/lib.rs:219:18
[INFO] [stdout]     |
[INFO] [stdout] 219 |             GZip(ref mut file) => unimplemented!("TODO"),
[INFO] [stdout]     |                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/gzip.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 output,
[INFO] [stdout]     |                 ^^^^^^ help: try ignoring the field: `output: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `footer`
[INFO] [stdout]    --> src/gzip.rs:232:31
[INFO] [stdout]     |
[INFO] [stdout] 232 |             Ok((mut unparsed, footer)) => {
[INFO] [stdout]     |                               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_footer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]    --> src/gzip.rs:311:23
[INFO] [stdout]     |
[INFO] [stdout] 311 |         Ok((unparsed, header)) => Ok((
[INFO] [stdout]     |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `CompressedStream` is never used
[INFO] [stdout]   --> src/lib.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | trait CompressedStream: Sized {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lib.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn feed_input(&mut self, input: &[u8]) -> State<Self>;
[INFO] [stdout]    |                   ^^^^^^^^^                   ^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn feed_input(&mut self, input: &[u8]) -> State<'_, '_, Self>;
[INFO] [stdout]    |                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed`
[INFO] [stdout]   --> src/input_helper.rs:55:13
[INFO] [stdout]    |
[INFO] [stdout] 55 |         let unparsed = if orig_stored > 0 {
[INFO] [stdout]    |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/zip.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<Self> {
[INFO] [stdout]    |                   ^^^^^^^^^                   ^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<'_, '_, Self> {
[INFO] [stdout]    |                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/zip.rs:26:30
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<Self> {
[INFO] [stdout]    |                              ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `*`
[INFO] [stdout]  --> tests/test_gzip.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | use stream_zipper::deflate::{self, *};
[INFO] [stdout]   |                                    ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `stream_zipper::gzip::*`
[INFO] [stdout]  --> tests/test_gzip.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use stream_zipper::gzip::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]   --> tests/test_gzip.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |     use std::cmp::min;
[INFO] [stdout]    |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::min`
[INFO] [stdout]    --> tests/test_gzip.rs:134:9
[INFO] [stdout]     |
[INFO] [stdout] 134 |     use std::cmp::min;
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Not`
[INFO] [stdout]  --> tests/test_zip_bug_20200131.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::ops::Not;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `State`
[INFO] [stdout]  --> tests/test_zip_bug_20200131.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use stream_zipper::{zip, State};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inflater`
[INFO] [stdout]    --> src/zip.rs:277:21
[INFO] [stdout]     |
[INFO] [stdout] 277 |                 let inflater = deflate::Stream::new();
[INFO] [stdout]     |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inflater`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `output`
[INFO] [stdout]    --> src/zip.rs:353:17
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 output,
[INFO] [stdout]     |                 ^^^^^^ help: try ignoring the field: `output: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed_2`
[INFO] [stdout]   --> tests/test_gzip.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 48 |     let unparsed_2 = if let deflate::State::Stop { unparsed_input } = def
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed_2`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed_2`
[INFO] [stdout]   --> tests/test_gzip.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 89 |     let unparsed_2 = if let deflate::State::Stop { unparsed_input } = deflate_state {
[INFO] [stdout]    |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/test_zip_bug_20200131.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let mut data_zip_a = &data_zip[..critical_len];
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> tests/test_zip_bug_20200131.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout] 23 |     let mut data_zip_b = &data_zip[critical_len..];
[INFO] [stdout]    |         ----^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/lib.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |             Init(file) => panic!("This shouldn't be called before autodetect!"),
[INFO] [stdout]     |                  ^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file`
[INFO] [stdout]    --> src/lib.rs:219:18
[INFO] [stdout]     |
[INFO] [stdout] 219 |             GZip(ref mut file) => unimplemented!("TODO"),
[INFO] [stdout]     |                  ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed_2`
[INFO] [stdout]    --> tests/test_gzip.rs:119:9
[INFO] [stdout]     |
[INFO] [stdout] 119 |     let unparsed_2 = if let deflate::State::Stop { unparsed_input } = def
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `unparsed_2`
[INFO] [stdout]    --> tests/test_gzip.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let unparsed_2 = if let deflate::State::Stop { unparsed_input } = result {
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_unparsed_2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `CompressedStream` is never used
[INFO] [stdout]   --> src/lib.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | trait CompressedStream: Sized {
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/lib.rs:12:19
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn feed_input(&mut self, input: &[u8]) -> State<Self>;
[INFO] [stdout]    |                   ^^^^^^^^^                   ^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn feed_input(&mut self, input: &[u8]) -> State<'_, '_, Self>;
[INFO] [stdout]    |                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/zip.rs:26:19
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<Self> {
[INFO] [stdout]    |                   ^^^^^^^^^                   ^^^^^^^^^^^ the same lifetimes are hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn feed_input(&mut self, input: &[u8]) -> State<'_, '_, Self> {
[INFO] [stdout]    |                                                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parsed_data_desc`
[INFO] [stdout]    --> tests/test_zip.rs:145:22
[INFO] [stdout]     |
[INFO] [stdout] 145 |     let (unparsed_4, parsed_data_desc) =
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed_data_desc`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parsed_central_dir_end`
[INFO] [stdout]    --> tests/test_zip.rs:147:22
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let (unparsed_5, parsed_central_dir_end) =
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_parsed_central_dir_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]    --> tests/test_zip.rs:416:9
[INFO] [stdout]     |
[INFO] [stdout] 416 |     let end = std::time::Instant::now() - start;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end`
[INFO] [stdout]    --> tests/test_zip.rs:474:9
[INFO] [stdout]     |
[INFO] [stdout] 474 |     let end = std::time::Instant::now() - start;
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `r`
[INFO] [stdout]    --> tests/test_zip.rs:592:13
[INFO] [stdout]     |
[INFO] [stdout] 592 |         let r = file
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `res`
[INFO] [stdout]    --> tests/test_hilevel.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     let res = zip_file_1
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_res`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/test_hilevel.rs:198:17
[INFO] [stdout]     |
[INFO] [stdout] 198 |                 mut next_file,
[INFO] [stdout]     |                 ----^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> tests/test_hilevel.rs:211:17
[INFO] [stdout]     |
[INFO] [stdout] 211 |                 mut next_file,
[INFO] [stdout]     |                 ----^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `chunk_comp_bytes` is assigned to, but never used
[INFO] [stdout]    --> tests/test_hilevel.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 |     let mut chunk_comp_bytes = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_chunk_comp_bytes` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> tests/test_hilevel.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let result = match result {
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `chunk_comp_bytes` is never read
[INFO] [stdout]    --> tests/test_hilevel.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         chunk_comp_bytes += chunk.len();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 5.09s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: stream_zipper v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0", kill_on_drop: false }`
[INFO] [stdout] 2551b25cebd2464530abebd22a2f5ac526beff4d77db280ae20c62313ebf16d0
