[INFO] cloning repository https://github.com/xfix/advent-of-code-2017
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xfix/advent-of-code-2017" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxfix%2Fadvent-of-code-2017", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxfix%2Fadvent-of-code-2017'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c8f6320827b1154fe374df602f7bb5090f3e5c0c
[INFO] checking xfix/advent-of-code-2017/c8f6320827b1154fe374df602f7bb5090f3e5c0c against 018018e881e2db0956f229dbb543e21f058d1ce7 for pr-162600
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxfix%2Fadvent-of-code-2017" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/xfix/advent-of-code-2017
[INFO] finished tweaking git repo https://github.com/xfix/advent-of-code-2017
[INFO] tweaked toml for git repo https://github.com/xfix/advent-of-code-2017 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/xfix/advent-of-code-2017 on toolchain 018018e881e2db0956f229dbb543e21f058d1ce7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+018018e881e2db0956f229dbb543e21f058d1ce7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/xfix/advent-of-code-2017 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+018018e881e2db0956f229dbb543e21f058d1ce7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded rustc-demangle v0.1.5
[INFO] [stderr]   Downloaded backtrace v0.3.4
[INFO] [stderr]   Downloaded cc v1.0.3
[INFO] [stderr]   Downloaded if_chain v0.1.2
[INFO] [stderr]   Downloaded either v1.4.0
[INFO] [stderr]   Downloaded enum-map v2.0.2
[INFO] [stderr]   Downloaded hex2d v1.1.0
[INFO] [stderr]   Downloaded revord v0.0.2
[INFO] [stderr]   Downloaded libc v0.2.34
[INFO] [stderr]   Downloaded integer-sqrt v0.1.0
[INFO] [stderr]   Downloaded itertools v0.7.4
[INFO] [stderr]   Downloaded array-macro v2.1.5
[INFO] [stderr]   Downloaded enum-map-derive v0.8.0
[INFO] [stderr]   Downloaded nom v3.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92
[INFO] running `Command { std: "docker" "start" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92", 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" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92" "/opt/rustwide/cargo-home/bin/cargo" "+018018e881e2db0956f229dbb543e21f058d1ce7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92", 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" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92" "/opt/rustwide/cargo-home/bin/cargo" "+018018e881e2db0956f229dbb543e21f058d1ce7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Checking libc v0.2.34
[INFO] [stderr]    Compiling cc v1.0.3
[INFO] [stderr]     Checking cfg-if v0.1.2
[INFO] [stderr]     Checking rustc-demangle v0.1.5
[INFO] [stderr]     Checking either v1.4.0
[INFO] [stderr]     Checking array-macro v2.1.5
[INFO] [stderr]     Checking revord v0.0.2
[INFO] [stderr]     Checking if_chain v0.1.2
[INFO] [stderr]     Checking integer-sqrt v0.1.0
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling num-rational v0.4.0
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling enum-map-derive v0.8.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]     Checking memchr v1.0.2
[INFO] [stderr]     Checking itertools v0.7.4
[INFO] [stderr]     Checking nom v3.2.1
[INFO] [stderr]    Compiling backtrace-sys v0.1.16
[INFO] [stderr]     Checking enum-map v2.0.2
[INFO] [stderr]     Checking day17 v0.1.0 (/opt/rustwide/workdir/day17)
[INFO] [stderr]     Checking thiserror v1.0.31
[INFO] [stderr]     Checking day1 v0.1.0 (/opt/rustwide/workdir/day1)
[INFO] [stderr]     Checking num-complex v0.4.2
[INFO] [stderr]     Checking day20 v0.1.0 (/opt/rustwide/workdir/day20)
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | named!(particles<Vec<Particle>>, many1!(particle));
[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 `many1`
[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 `many1` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / named!(
[INFO] [stdout] 10 | |     integer<i64>,
[INFO] [stdout] 11 | |     map_res!(
[INFO] [stdout] 12 | |         map_res!(
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / named!(
[INFO] [stdout] 21 | |     point<Point>,
[INFO] [stdout] 22 | |     ws!(do_parse!(
[INFO] [stdout] 23 | |         tag!("<")
[INFO] [stdout] ...  |
[INFO] [stdout] 31 | |     ))
[INFO] [stdout] 32 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | / named!(
[INFO] [stdout] 35 | |     particle<Particle>,
[INFO] [stdout] 36 | |     ws!(do_parse!(
[INFO] [stdout] 37 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 54 | |     ))
[INFO] [stdout] 55 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day20/src/main.rs:57:1
[INFO] [stdout]    |
[INFO] [stdout] 57 | named!(particles<Vec<Particle>>, many1!(particle));
[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 `many1`
[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 `many1` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day19 v0.1.0 (/opt/rustwide/workdir/day19)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day19/src/main.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn new(input: &[u8]) -> Grid {
[INFO] [stdout]    |                   ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn new(input: &[u8]) -> Grid<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day19/src/main.rs:15:19
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn new(input: &[u8]) -> Grid {
[INFO] [stdout]    |                   ^^^^^     ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |
[INFO] [stdout]    |                   the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn new(input: &[u8]) -> Grid<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking num v0.4.0
[INFO] [stderr]     Checking hex2d v1.1.0
[INFO] [stderr]     Checking backtrace v0.3.4
[INFO] [stderr]     Checking error-chain v0.11.0
[INFO] [stderr]     Checking day2 v0.1.0 (/opt/rustwide/workdir/day2)
[INFO] [stderr]     Checking day14 v0.1.0 (/opt/rustwide/workdir/day14)
[INFO] [stderr]     Checking day5 v0.1.0 (/opt/rustwide/workdir/day5)
[INFO] [stderr]     Checking day13 v0.1.0 (/opt/rustwide/workdir/day13)
[INFO] [stderr]     Checking day4 v0.1.0 (/opt/rustwide/workdir/day4)
[INFO] [stderr]     Checking day11 v0.1.0 (/opt/rustwide/workdir/day11)
[INFO] [stderr]     Checking day18 v0.1.0 (/opt/rustwide/workdir/day18)
[INFO] [stderr]     Checking day3b v0.1.0 (/opt/rustwide/workdir/day3b)
[INFO] [stderr]     Checking day15 v0.1.0 (/opt/rustwide/workdir/day15)
[INFO] [stderr]     Checking day3 v0.1.0 (/opt/rustwide/workdir/day3)
[INFO] [stderr]     Checking day8 v0.1.0 (/opt/rustwide/workdir/day8)
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day11/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     errors {
[INFO] [stdout] 10 | |         UnrecognizedDirection {
[INFO] [stdout] 11 | |             description("unrecognized direction")
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day11/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     errors {
[INFO] [stdout] 10 | |         UnrecognizedDirection {
[INFO] [stdout] 11 | |             description("unrecognized direction")
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day11/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     errors {
[INFO] [stdout] 10 | |         UnrecognizedDirection {
[INFO] [stdout] 11 | |             description("unrecognized direction")
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day14/src/main.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / error_chain! {
[INFO] [stdout] 14 | |     foreign_links {
[INFO] [stdout] 15 | |         Fmt(fmt::Error);
[INFO] [stdout] 16 | |         Io(io::Error);
[INFO] [stdout] 17 | |     }
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day11/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     errors {
[INFO] [stdout] 10 | |         UnrecognizedDirection {
[INFO] [stdout] 11 | |             description("unrecognized direction")
[INFO] [stdout] ...  |
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day14/src/main.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / error_chain! {
[INFO] [stdout] 14 | |     foreign_links {
[INFO] [stdout] 15 | |         Fmt(fmt::Error);
[INFO] [stdout] 16 | |         Io(io::Error);
[INFO] [stdout] 17 | |     }
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day2/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         EmptyLine {
[INFO] [stdout] 12 | |             description("empty line retrieved: they have neither minimal nor maximal value")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day2/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         EmptyLine {
[INFO] [stdout] 12 | |             description("empty line retrieved: they have neither minimal nor maximal value")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:120:1
[INFO] [stdout]     |
[INFO] [stdout] 120 | / named!(
[INFO] [stdout] 121 | |     instructions<Vec<Instruction>>,
[INFO] [stdout] 122 | |     complete!(many0!(instruction))
[INFO] [stdout] 123 | | );
[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 `many0`
[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 `many0` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / named!(
[INFO] [stdout] 129 | |     snd<Instruction>,
[INFO] [stdout] 130 | |     ws!(preceded!(tag!("snd"), map!(value, Instruction::Snd)))
[INFO] [stdout] 131 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / named!(
[INFO] [stdout] 133 | |     rcv<Instruction>,
[INFO] [stdout] 134 | |     ws!(preceded!(tag!("rcv"), map!(register, Instruction::Rcv)))
[INFO] [stdout] 135 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:136:1
[INFO] [stdout]     |
[INFO] [stdout] 136 | / named!(
[INFO] [stdout] 137 | |     arithm<Instruction>,
[INFO] [stdout] 138 | |     ws!(do_parse!(
[INFO] [stdout] 139 | |         Instruction:
[INFO] [stdout] ...   |
[INFO] [stdout] 149 | |     ))
[INFO] [stdout] 150 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:136:1
[INFO] [stdout]     |
[INFO] [stdout] 136 | / named!(
[INFO] [stdout] 137 | |     arithm<Instruction>,
[INFO] [stdout] 138 | |     ws!(do_parse!(
[INFO] [stdout] 139 | |         Instruction:
[INFO] [stdout] ...   |
[INFO] [stdout] 149 | |     ))
[INFO] [stdout] 150 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | / named!(
[INFO] [stdout] 152 | |     jgz<Instruction>,
[INFO] [stdout] 153 | |     ws!(do_parse!(
[INFO] [stdout] 154 | |         tag!("jgz") >> check: value >> offset: value >> (Instruction::Jgz(check, offset))
[INFO] [stdout] 155 | |     ))
[INFO] [stdout] 156 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day4/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     foreign_links {
[INFO] [stdout] 10 | |         Io(io::Error);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day3b/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     foreign_links {
[INFO] [stdout] 11 | |         Io(io::Error);
[INFO] [stdout] 12 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | / named!(
[INFO] [stdout] 152 | |     jgz<Instruction>,
[INFO] [stdout] 153 | |     ws!(do_parse!(
[INFO] [stdout] 154 | |         tag!("jgz") >> check: value >> offset: value >> (Instruction::Jgz(check, offset))
[INFO] [stdout] 155 | |     ))
[INFO] [stdout] 156 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / named!(
[INFO] [stdout] 158 | |     value<Value>,
[INFO] [stdout] 159 | |     alt!(integer => { |i| Value::Constant(i) } | register => {|r| Value::Register(r)})
[INFO] [stdout] 160 | | );
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day2/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         EmptyLine {
[INFO] [stdout] 12 | |             description("empty line retrieved: they have neither minimal nor maximal value")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / named!(
[INFO] [stdout] 158 | |     value<Value>,
[INFO] [stdout] 159 | |     alt!(integer => { |i| Value::Constant(i) } | register => {|r| Value::Register(r)})
[INFO] [stdout] 160 | | );
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:161:1
[INFO] [stdout]     |
[INFO] [stdout] 161 | named!(register<Register>, map!(be_u8, Register));
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day5/src/main.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / error_chain! {
[INFO] [stdout]  8 | |     foreign_links {
[INFO] [stdout]  9 | |         Io(io::Error);
[INFO] [stdout] 10 | |         ParseInt(ParseIntError);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:104:1
[INFO] [stdout]     |
[INFO] [stdout] 104 | named!(identifier<&str, &str>, take_while1_s!(char::is_alphabetic));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | / named!(integer<&str, i32>, map_res!(
[INFO] [stdout] 107 | |     take_while1_s!(|c| c == '-' || char::is_digit(c, 10)),
[INFO] [stdout] 108 | |     str::parse
[INFO] [stdout] 109 | | ));
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | / named!(integer<&str, i32>, map_res!(
[INFO] [stdout] 107 | |     take_while1_s!(|c| c == '-' || char::is_digit(c, 10)),
[INFO] [stdout] 108 | |     str::parse
[INFO] [stdout] 109 | | ));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day3b/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     foreign_links {
[INFO] [stdout] 11 | |         Io(io::Error);
[INFO] [stdout] 12 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day18/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day7 v0.1.0 (/opt/rustwide/workdir/day7)
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> day8/src/main.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / error_chain! {
[INFO] [stdout] 112 | |     errors {
[INFO] [stdout] 113 | |         InvalidFormat {
[INFO] [stdout] 114 | |             description("input format doesn't match expected")
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day18/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day4/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     foreign_links {
[INFO] [stdout] 10 | |         Io(io::Error);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day15/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         InvalidFormat {
[INFO] [stdout] 13 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day3/src/main.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | / error_chain! {
[INFO] [stdout] 25 | |     foreign_links {
[INFO] [stdout] 26 | |         Io(io::Error);
[INFO] [stdout] 27 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 28 | |     }
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day13/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     firewall<Firewall>,
[INFO] [stdout] 48 | |     ws!(do_parse!(
[INFO] [stdout] 49 | |         depth: integer >> tag!(":") >> range: integer >> (Firewall { depth, range })
[INFO] [stdout] 50 | |     ))
[INFO] [stdout] 51 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     firewall<Firewall>,
[INFO] [stdout] 48 | |     ws!(do_parse!(
[INFO] [stdout] 49 | |         depth: integer >> tag!(":") >> range: integer >> (Firewall { depth, range })
[INFO] [stdout] 50 | |     ))
[INFO] [stdout] 51 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day2/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         EmptyLine {
[INFO] [stdout] 12 | |             description("empty line retrieved: they have neither minimal nor maximal value")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day5/src/main.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / error_chain! {
[INFO] [stdout]  8 | |     foreign_links {
[INFO] [stdout]  9 | |         Io(io::Error);
[INFO] [stdout] 10 | |         ParseInt(ParseIntError);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day3/src/main.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | / error_chain! {
[INFO] [stdout] 25 | |     foreign_links {
[INFO] [stdout] 26 | |         Io(io::Error);
[INFO] [stdout] 27 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 28 | |     }
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day3b/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     foreign_links {
[INFO] [stdout] 11 | |         Io(io::Error);
[INFO] [stdout] 12 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:120:1
[INFO] [stdout]     |
[INFO] [stdout] 120 | / named!(
[INFO] [stdout] 121 | |     instructions<Vec<Instruction>>,
[INFO] [stdout] 122 | |     complete!(many0!(instruction))
[INFO] [stdout] 123 | | );
[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 `many0`
[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 `many0` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:124:1
[INFO] [stdout]     |
[INFO] [stdout] 124 | / named!(
[INFO] [stdout] 125 | |     instruction<Instruction>,
[INFO] [stdout] 126 | |     ws!(alt!(snd | rcv | arithm | jgz))
[INFO] [stdout] 127 | | );
[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 `alt_sep`
[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 `alt_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / named!(
[INFO] [stdout] 129 | |     snd<Instruction>,
[INFO] [stdout] 130 | |     ws!(preceded!(tag!("snd"), map!(value, Instruction::Snd)))
[INFO] [stdout] 131 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day3/src/main.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | / error_chain! {
[INFO] [stdout] 25 | |     foreign_links {
[INFO] [stdout] 26 | |         Io(io::Error);
[INFO] [stdout] 27 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 28 | |     }
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:132:1
[INFO] [stdout]     |
[INFO] [stdout] 132 | / named!(
[INFO] [stdout] 133 | |     rcv<Instruction>,
[INFO] [stdout] 134 | |     ws!(preceded!(tag!("rcv"), map!(register, Instruction::Rcv)))
[INFO] [stdout] 135 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:136:1
[INFO] [stdout]     |
[INFO] [stdout] 136 | / named!(
[INFO] [stdout] 137 | |     arithm<Instruction>,
[INFO] [stdout] 138 | |     ws!(do_parse!(
[INFO] [stdout] 139 | |         Instruction:
[INFO] [stdout] ...   |
[INFO] [stdout] 149 | |     ))
[INFO] [stdout] 150 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:136:1
[INFO] [stdout]     |
[INFO] [stdout] 136 | / named!(
[INFO] [stdout] 137 | |     arithm<Instruction>,
[INFO] [stdout] 138 | |     ws!(do_parse!(
[INFO] [stdout] 139 | |         Instruction:
[INFO] [stdout] ...   |
[INFO] [stdout] 149 | |     ))
[INFO] [stdout] 150 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day13/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         InvalidFormat {
[INFO] [stdout] 12 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day18/src/main.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | / named!(
[INFO] [stdout] 152 | |     jgz<Instruction>,
[INFO] [stdout] 153 | |     ws!(do_parse!(
[INFO] [stdout] 154 | |         tag!("jgz") >> check: value >> offset: value >> (Instruction::Jgz(check, offset))
[INFO] [stdout] 155 | |     ))
[INFO] [stdout] 156 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | / named!(
[INFO] [stdout] 152 | |     jgz<Instruction>,
[INFO] [stdout] 153 | |     ws!(do_parse!(
[INFO] [stdout] 154 | |         tag!("jgz") >> check: value >> offset: value >> (Instruction::Jgz(check, offset))
[INFO] [stdout] 155 | |     ))
[INFO] [stdout] 156 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / named!(
[INFO] [stdout] 158 | |     value<Value>,
[INFO] [stdout] 159 | |     alt!(integer => { |i| Value::Constant(i) } | register => {|r| Value::Register(r)})
[INFO] [stdout] 160 | | );
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:157:1
[INFO] [stdout]     |
[INFO] [stdout] 157 | / named!(
[INFO] [stdout] 158 | |     value<Value>,
[INFO] [stdout] 159 | |     alt!(integer => { |i| Value::Constant(i) } | register => {|r| Value::Register(r)})
[INFO] [stdout] 160 | | );
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:161:1
[INFO] [stdout]     |
[INFO] [stdout] 161 | named!(register<Register>, map!(be_u8, Register));
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day18/src/main.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | / named!(
[INFO] [stdout] 163 | |     integer<i64>,
[INFO] [stdout] 164 | |     map_res!(
[INFO] [stdout] 165 | |         map_res!(
[INFO] [stdout] ...   |
[INFO] [stdout] 171 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(lines<&str, Vec<Line> >, many0!(terminated!(line, nom::line_ending)));
[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 `terminated`
[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 `terminated` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout] 36 | |     label: identifier >>
[INFO] [stdout] 37 | |     weight: delimited!(tag_s!("("), integer, tag_s!(")")) >>
[INFO] [stdout] 38 | |     parts: opt!(preceded!(tag_s!("->"), separated_list!(tag_s!(","), sep!(space, identifier)))) >>
[INFO] [stdout] 39 | |     (Line { label, weight, parts: parts.unwrap_or_default() })
[INFO] [stdout] 40 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout] 36 | |     label: identifier >>
[INFO] [stdout] 37 | |     weight: delimited!(tag_s!("("), integer, tag_s!(")")) >>
[INFO] [stdout] 38 | |     parts: opt!(preceded!(tag_s!("->"), separated_list!(tag_s!(","), sep!(space, identifier)))) >>
[INFO] [stdout] 39 | |     (Line { label, weight, parts: parts.unwrap_or_default() })
[INFO] [stdout] 40 | | )));
[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 `tuple_sep`
[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 `tuple_sep` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | named!(identifier<&str, &str>, take_while1_s!(char::is_alphabetic));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | named!(integer<&str, u32>,  map_res!(take_while1_s!(|c| char::is_digit(c, 10)), str::parse));
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | named!(integer<&str, u32>,  map_res!(take_while1_s!(|c| char::is_digit(c, 10)), str::parse));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day15/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         InvalidFormat {
[INFO] [stdout] 13 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day3b/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     foreign_links {
[INFO] [stdout] 11 | |         Io(io::Error);
[INFO] [stdout] 12 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:83:1
[INFO] [stdout]     |
[INFO] [stdout]  83 | / named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]  84 | |     variable: identifier >>
[INFO] [stdout]  85 | |     direction: alt!(
[INFO] [stdout]  86 | |         tag_s!("inc") => { |_| Direction::Increment } |
[INFO] [stdout] ...   |
[INFO] [stdout] 101 | |     (Instruction {variable, direction, change, condvariable, operator, condconst})
[INFO] [stdout] 102 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:104:1
[INFO] [stdout]     |
[INFO] [stdout] 104 | named!(identifier<&str, &str>, take_while1_s!(char::is_alphabetic));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | / named!(integer<&str, i32>, map_res!(
[INFO] [stdout] 107 | |     take_while1_s!(|c| c == '-' || char::is_digit(c, 10)),
[INFO] [stdout] 108 | |     str::parse
[INFO] [stdout] 109 | | ));
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]    --> day8/src/main.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | / named!(integer<&str, i32>, map_res!(
[INFO] [stdout] 107 | |     take_while1_s!(|c| c == '-' || char::is_digit(c, 10)),
[INFO] [stdout] 108 | |     str::parse
[INFO] [stdout] 109 | | ));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day3/src/main.rs:24:1
[INFO] [stdout]    |
[INFO] [stdout] 24 | / error_chain! {
[INFO] [stdout] 25 | |     foreign_links {
[INFO] [stdout] 26 | |         Io(io::Error);
[INFO] [stdout] 27 | |         ParseInt(std::num::ParseIntError);
[INFO] [stdout] 28 | |     }
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> day8/src/main.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / error_chain! {
[INFO] [stdout] 112 | |     errors {
[INFO] [stdout] 113 | |         InvalidFormat {
[INFO] [stdout] 114 | |             description("input format doesn't match expected")
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day7/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         BottomNotFound {
[INFO] [stdout] 13 | |             description("bottom element doesn't exist")
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> day8/src/main.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / error_chain! {
[INFO] [stdout] 112 | |     errors {
[INFO] [stdout] 113 | |         InvalidFormat {
[INFO] [stdout] 114 | |             description("input format doesn't match expected")
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day13/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         InvalidFormat {
[INFO] [stdout] 12 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day18/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day12 v0.1.0 (/opt/rustwide/workdir/day12)
[INFO] [stderr]     Checking day9 v0.1.0 (/opt/rustwide/workdir/day9)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day8/src/main.rs:83:20
[INFO] [stdout]    |
[INFO] [stdout] 83 | named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |                    the same 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] 83 | named!(instruction<&str, Instruction<'_>>, ws!(do_parse!(
[INFO] [stdout]    |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / named!(
[INFO] [stdout] 23 | |     generators<(Generator, Generator)>,
[INFO] [stdout] 24 | |     do_parse!(
[INFO] [stdout] 25 | |         tag!("Generator A starts with ")
[INFO] [stdout] ...  |
[INFO] [stdout] 41 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day15/src/main.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / named!(
[INFO] [stdout] 44 | |     integer<u32>,
[INFO] [stdout] 45 | |     map_res!(
[INFO] [stdout] 46 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day18/src/main.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn step(&mut self) -> Command {
[INFO] [stdout]    |             ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn step(&mut self) -> Command<'_> {
[INFO] [stdout]    |                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Instruction` should have a snake case name
[INFO] [stdout]    --> day18/src/main.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         Instruction:
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `instruction`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]    --> day8/src/main.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / error_chain! {
[INFO] [stdout] 112 | |     errors {
[INFO] [stdout] 113 | |         InvalidFormat {
[INFO] [stdout] 114 | |             description("input format doesn't match expected")
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day15/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         InvalidFormat {
[INFO] [stdout] 13 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day13/src/main.rs:38:1
[INFO] [stdout]    |
[INFO] [stdout] 38 | / named!(
[INFO] [stdout] 39 | |     integer<u32>,
[INFO] [stdout] 40 | |     map_res!(
[INFO] [stdout] 41 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     firewall<Firewall>,
[INFO] [stdout] 48 | |     ws!(do_parse!(
[INFO] [stdout] 49 | |         depth: integer >> tag!(":") >> range: integer >> (Firewall { depth, range })
[INFO] [stdout] 50 | |     ))
[INFO] [stdout] 51 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day13/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     firewall<Firewall>,
[INFO] [stdout] 48 | |     ws!(do_parse!(
[INFO] [stdout] 49 | |         depth: integer >> tag!(":") >> range: integer >> (Firewall { depth, range })
[INFO] [stdout] 50 | |     ))
[INFO] [stdout] 51 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day18/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day7/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         BottomNotFound {
[INFO] [stdout] 13 | |             description("bottom element doesn't exist")
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day15/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         InvalidFormat {
[INFO] [stdout] 13 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / named!(
[INFO] [stdout] 38 | |     pipe<Pipe>,
[INFO] [stdout] 39 | |     ws!(do_parse!(
[INFO] [stdout] 40 | |         identifier: integer
[INFO] [stdout] ...  |
[INFO] [stdout] 47 | |     ))
[INFO] [stdout] 48 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day13/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         InvalidFormat {
[INFO] [stdout] 12 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> day12/src/main.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::usize;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> day9/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day9/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day12/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day9/src/main.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / named!(
[INFO] [stdout] 51 | |     braces<Vec<Group>>,
[INFO] [stdout] 52 | |     delimited!(tag!("{"), separated_list!(tag!(","), group), tag!("}"))
[INFO] [stdout] 53 | | );
[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 `separated_list`
[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 `separated_list` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day8/src/main.rs:83:20
[INFO] [stdout]    |
[INFO] [stdout] 83 | named!(instruction<&str, Instruction>, ws!(do_parse!(
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |
[INFO] [stdout]    |                    the lifetime is elided here
[INFO] [stdout]    |                    the same 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] 83 | named!(instruction<&str, Instruction<'_>>, ws!(do_parse!(
[INFO] [stdout]    |                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> day7/src/main.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(lines<&str, Vec<Line> >, many0!(terminated!(line, nom::line_ending)));
[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 `terminated`
[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 `terminated` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout] 36 | |     label: identifier >>
[INFO] [stdout] 37 | |     weight: delimited!(tag_s!("("), integer, tag_s!(")")) >>
[INFO] [stdout] 38 | |     parts: opt!(preceded!(tag_s!("->"), separated_list!(tag_s!(","), sep!(space, identifier)))) >>
[INFO] [stdout] 39 | |     (Line { label, weight, parts: parts.unwrap_or_default() })
[INFO] [stdout] 40 | | )));
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout] 36 | |     label: identifier >>
[INFO] [stdout] 37 | |     weight: delimited!(tag_s!("("), integer, tag_s!(")")) >>
[INFO] [stdout] 38 | |     parts: opt!(preceded!(tag_s!("->"), separated_list!(tag_s!(","), sep!(space, identifier)))) >>
[INFO] [stdout] 39 | |     (Line { label, weight, parts: parts.unwrap_or_default() })
[INFO] [stdout] 40 | | )));
[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 `tuple_sep`
[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 `tuple_sep` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:44:1
[INFO] [stdout]    |
[INFO] [stdout] 44 | named!(identifier<&str, &str>, take_while1_s!(char::is_alphabetic));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (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]   --> day7/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | named!(integer<&str, u32>,  map_res!(take_while1_s!(|c| char::is_digit(c, 10)), str::parse));
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day12/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day7/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | named!(integer<&str, u32>,  map_res!(take_while1_s!(|c| char::is_digit(c, 10)), str::parse));
[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 `take_while1_s`
[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 `take_while1_s` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day9/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / error_chain! {
[INFO] [stdout] 64 | |     errors {
[INFO] [stdout] 65 | |         InvalidFormat {
[INFO] [stdout] 66 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day6 v0.1.0 (/opt/rustwide/workdir/day6)
[INFO] [stderr]     Checking day16 v0.1.0 (/opt/rustwide/workdir/day16)
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day7/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         BottomNotFound {
[INFO] [stdout] 13 | |             description("bottom element doesn't exist")
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day13/src/main.rs:9:1
[INFO] [stdout]    |
[INFO] [stdout]  9 | / error_chain! {
[INFO] [stdout] 10 | |     errors {
[INFO] [stdout] 11 | |         InvalidFormat {
[INFO] [stdout] 12 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day9/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day9/src/main.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day9/src/main.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / named!(
[INFO] [stdout] 51 | |     braces<Vec<Group>>,
[INFO] [stdout] 52 | |     delimited!(tag!("{"), separated_list!(tag!(","), group), tag!("}"))
[INFO] [stdout] 53 | | );
[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 `separated_list`
[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 `separated_list` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day7/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         BottomNotFound {
[INFO] [stdout] 13 | |             description("bottom element doesn't exist")
[INFO] [stdout] ...  |
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day9/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / error_chain! {
[INFO] [stdout] 64 | |     errors {
[INFO] [stdout] 65 | |         InvalidFormat {
[INFO] [stdout] 66 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day14/src/main.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / error_chain! {
[INFO] [stdout] 14 | |     foreign_links {
[INFO] [stdout] 15 | |         Fmt(fmt::Error);
[INFO] [stdout] 16 | |         Io(io::Error);
[INFO] [stdout] 17 | |     }
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day9/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / error_chain! {
[INFO] [stdout] 64 | |     errors {
[INFO] [stdout] 65 | |         InvalidFormat {
[INFO] [stdout] 66 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day14/src/main.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / error_chain! {
[INFO] [stdout] 14 | |     foreign_links {
[INFO] [stdout] 15 | |         Fmt(fmt::Error);
[INFO] [stdout] 16 | |         Io(io::Error);
[INFO] [stdout] 17 | |     }
[INFO] [stdout] 18 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day9/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / error_chain! {
[INFO] [stdout] 64 | |     errors {
[INFO] [stdout] 65 | |         InvalidFormat {
[INFO] [stdout] 66 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day7/src/main.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(lines<&str, Vec<Line> >, many0!(terminated!(line, nom::line_ending)));
[INFO] [stdout]    |              ^^^^      ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |              the same 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] 33 | named!(lines<&str, Vec<Line<'_>> >, many0!(terminated!(line, nom::line_ending)));
[INFO] [stdout]    |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day7/src/main.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout]    |             ^^^^  ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |             the same 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] 35 | named!(line<&str, Line<'_>>, sep!(space, do_parse!(
[INFO] [stdout]    |                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `identifier` is never read
[INFO] [stdout]   --> day12/src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Pipe {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 25 |     identifier: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pipe` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking day10 v0.1.0 (/opt/rustwide/workdir/day10)
[INFO] [stderr]     Checking day2b v0.1.0 (/opt/rustwide/workdir/day2b)
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> day9/src/main.rs:47:11
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout]    | |           ^^^^^ the same lifetime is hidden here
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[INFO] [stdout]    | | -
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_the lifetime is named here
[INFO] [stdout]    |   the same lifetime is named 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: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     group<Group<'a>>,
[INFO] [stdout]    |                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> day9/src/main.rs:51:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | / named!(
[INFO] [stdout] 51 | |     braces<Vec<Group>>,
[INFO] [stdout]    | |                ^^^^^ the same lifetime is hidden here
[INFO] [stdout] 52 | |     delimited!(tag!("{"), separated_list!(tag!(","), group), tag!("}"))
[INFO] [stdout] 53 | | );
[INFO] [stdout]    | | -
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_the lifetime is named here
[INFO] [stdout]    |   the same lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     braces<Vec<Group<'a>>>,
[INFO] [stdout]    |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> day9/src/main.rs:47:11
[INFO] [stdout]    |
[INFO] [stdout] 46 | / named!(
[INFO] [stdout] 47 | |     group<Group>,
[INFO] [stdout]    | |           ^^^^^ the same lifetime is hidden here
[INFO] [stdout] 48 | |     alt!(map!(braces, Group::Braces) | map!(garbage, Group::Garbage))
[INFO] [stdout] 49 | | );
[INFO] [stdout]    | | -
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_the lifetime is named here
[INFO] [stdout]    |   the same lifetime is named 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: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     group<Group<'a>>,
[INFO] [stdout]    |                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> day9/src/main.rs:51:16
[INFO] [stdout]    |
[INFO] [stdout] 50 | / named!(
[INFO] [stdout] 51 | |     braces<Vec<Group>>,
[INFO] [stdout]    | |                ^^^^^ the same lifetime is hidden here
[INFO] [stdout] 52 | |     delimited!(tag!("{"), separated_list!(tag!(","), group), tag!("}"))
[INFO] [stdout] 53 | | );
[INFO] [stdout]    | | -
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_the lifetime is named here
[INFO] [stdout]    |   the same lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     braces<Vec<Group<'a>>>,
[INFO] [stdout]    |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day18/src/main.rs:39:13
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn step(&mut self) -> Command {
[INFO] [stdout]    |             ^^^^^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn step(&mut self) -> Command<'_> {
[INFO] [stdout]    |                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Instruction` should have a snake case name
[INFO] [stdout]    --> day18/src/main.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 |         Instruction:
[INFO] [stdout]     |         ^^^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `instruction`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / named!(
[INFO] [stdout] 30 | |     integer<usize>,
[INFO] [stdout] 31 | |     map_res!(
[INFO] [stdout] 32 | |         map_res!(take_while1!(nom::is_digit), str::from_utf8),
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | );
[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 `take_while1`
[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 `take_while1` which comes from the expansion of the macro `named` (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]   --> day12/src/main.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / named!(
[INFO] [stdout] 38 | |     pipe<Pipe>,
[INFO] [stdout] 39 | |     ws!(do_parse!(
[INFO] [stdout] 40 | |         identifier: integer
[INFO] [stdout] ...  |
[INFO] [stdout] 47 | |     ))
[INFO] [stdout] 48 | | );
[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_sep`
[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_sep` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> day12/src/main.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::usize;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day12/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day12/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     errors {
[INFO] [stdout] 13 | |         InvalidFormat {
[INFO] [stdout] 14 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day6/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     foreign_links {
[INFO] [stdout] 13 | |         Io(io::Error);
[INFO] [stdout] 14 | |         ParseInt(ParseIntError);
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day4/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     foreign_links {
[INFO] [stdout] 10 | |         Io(io::Error);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day16/src/main.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(commands<Vec<Command>>, separated_list!(tag!(","), command));
[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 `separated_list`
[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 `separated_list` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / named!(
[INFO] [stdout] 37 | |     spin<Command>,
[INFO] [stdout] 38 | |     map!(preceded!(tag!("s"), integer), Command::Spin)
[INFO] [stdout] 39 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / named!(
[INFO] [stdout] 37 | |     spin<Command>,
[INFO] [stdout] 38 | |     map!(preceded!(tag!("s"), integer), Command::Spin)
[INFO] [stdout] 39 | | );
[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 `preceded`
[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 `preceded` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / named!(
[INFO] [stdout] 42 | |     exchange<Command>,
[INFO] [stdout] 43 | |     do_parse!(
[INFO] [stdout] 44 | |         tag!("x")
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / named!(
[INFO] [stdout] 42 | |     exchange<Command>,
[INFO] [stdout] 43 | |     do_parse!(
[INFO] [stdout] 44 | |         tag!("x")
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:52:1
[INFO] [stdout]    |
[INFO] [stdout] 52 | / named!(
[INFO] [stdout] 53 | |     partner<Command>,
[INFO] [stdout] 54 | |     do_parse!(
[INFO] [stdout] 55 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:52:1
[INFO] [stdout]    |
[INFO] [stdout] 52 | / named!(
[INFO] [stdout] 53 | |     partner<Command>,
[INFO] [stdout] 54 | |     do_parse!(
[INFO] [stdout] 55 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / named!(
[INFO] [stdout] 64 | |     integer<u8>,
[INFO] [stdout] 65 | |     map_res!(map_res!(digit, str::from_utf8), str::parse)
[INFO] [stdout] 66 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / named!(
[INFO] [stdout] 64 | |     integer<u8>,
[INFO] [stdout] 65 | |     map_res!(map_res!(digit, str::from_utf8), str::parse)
[INFO] [stdout] 66 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `identifier` is never read
[INFO] [stdout]   --> day12/src/main.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Pipe {
[INFO] [stdout]    |        ---- field in this struct
[INFO] [stdout] 25 |     identifier: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pipe` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day6/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     foreign_links {
[INFO] [stdout] 13 | |         Io(io::Error);
[INFO] [stdout] 14 | |         ParseInt(ParseIntError);
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day16/src/main.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / error_chain! {
[INFO] [stdout] 13 | |     errors {
[INFO] [stdout] 14 | |         InvalidFormat {
[INFO] [stdout] 15 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day16/src/main.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / error_chain! {
[INFO] [stdout] 13 | |     errors {
[INFO] [stdout] 14 | |         InvalidFormat {
[INFO] [stdout] 15 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day4/src/main.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / error_chain! {
[INFO] [stdout]  9 | |     foreign_links {
[INFO] [stdout] 10 | |         Io(io::Error);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day16/src/main.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(commands<Vec<Command>>, separated_list!(tag!(","), command));
[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 `separated_list`
[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 `separated_list` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day10/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     foreign_links {
[INFO] [stdout] 12 | |         Io(io::Error);
[INFO] [stdout] 13 | |         ParseInt(ParseIntError);
[INFO] [stdout] 14 | |     }
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:34:1
[INFO] [stdout]    |
[INFO] [stdout] 34 | named!(command<Command>, alt!(spin | exchange | partner));
[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 `alt`
[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 `alt` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / named!(
[INFO] [stdout] 37 | |     spin<Command>,
[INFO] [stdout] 38 | |     map!(preceded!(tag!("s"), integer), Command::Spin)
[INFO] [stdout] 39 | | );
[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 `map`
[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 `map` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / named!(
[INFO] [stdout] 37 | |     spin<Command>,
[INFO] [stdout] 38 | |     map!(preceded!(tag!("s"), integer), Command::Spin)
[INFO] [stdout] 39 | | );
[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 `preceded`
[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 `preceded` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / named!(
[INFO] [stdout] 42 | |     exchange<Command>,
[INFO] [stdout] 43 | |     do_parse!(
[INFO] [stdout] 44 | |         tag!("x")
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | / named!(
[INFO] [stdout] 42 | |     exchange<Command>,
[INFO] [stdout] 43 | |     do_parse!(
[INFO] [stdout] 44 | |         tag!("x")
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:52:1
[INFO] [stdout]    |
[INFO] [stdout] 52 | / named!(
[INFO] [stdout] 53 | |     partner<Command>,
[INFO] [stdout] 54 | |     do_parse!(
[INFO] [stdout] 55 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:52:1
[INFO] [stdout]    |
[INFO] [stdout] 52 | / named!(
[INFO] [stdout] 53 | |     partner<Command>,
[INFO] [stdout] 54 | |     do_parse!(
[INFO] [stdout] 55 | |         tag!("p")
[INFO] [stdout] ...  |
[INFO] [stdout] 61 | | );
[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` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / named!(
[INFO] [stdout] 64 | |     integer<u8>,
[INFO] [stdout] 65 | |     map_res!(map_res!(digit, str::from_utf8), str::parse)
[INFO] [stdout] 66 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (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]   --> day16/src/main.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / named!(
[INFO] [stdout] 64 | |     integer<u8>,
[INFO] [stdout] 65 | |     map_res!(map_res!(digit, str::from_utf8), str::parse)
[INFO] [stdout] 66 | | );
[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 `map_res`
[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 `map_res` which comes from the expansion of the macro `named` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day2b/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         NoEvenlyDivisibleNumber {
[INFO] [stdout] 13 | |             description("no evenly divisible number")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day5/src/main.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / error_chain! {
[INFO] [stdout]  8 | |     foreign_links {
[INFO] [stdout]  9 | |         Io(io::Error);
[INFO] [stdout] 10 | |         ParseInt(ParseIntError);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day16/src/main.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / error_chain! {
[INFO] [stdout] 13 | |     errors {
[INFO] [stdout] 14 | |         InvalidFormat {
[INFO] [stdout] 15 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day10/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     foreign_links {
[INFO] [stdout] 12 | |         Io(io::Error);
[INFO] [stdout] 13 | |         ParseInt(ParseIntError);
[INFO] [stdout] 14 | |     }
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day6/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     foreign_links {
[INFO] [stdout] 13 | |         Io(io::Error);
[INFO] [stdout] 14 | |         ParseInt(ParseIntError);
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day10/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     foreign_links {
[INFO] [stdout] 12 | |         Io(io::Error);
[INFO] [stdout] 13 | |         ParseInt(ParseIntError);
[INFO] [stdout] 14 | |     }
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day2b/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         NoEvenlyDivisibleNumber {
[INFO] [stdout] 13 | |             description("no evenly divisible number")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day16/src/main.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / error_chain! {
[INFO] [stdout] 13 | |     errors {
[INFO] [stdout] 14 | |         InvalidFormat {
[INFO] [stdout] 15 | |             description("input format doesn't match expected")
[INFO] [stdout] ...  |
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day5/src/main.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / error_chain! {
[INFO] [stdout]  8 | |     foreign_links {
[INFO] [stdout]  9 | |         Io(io::Error);
[INFO] [stdout] 10 | |         ParseInt(ParseIntError);
[INFO] [stdout] 11 | |     }
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> day2b/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         NoEvenlyDivisibleNumber {
[INFO] [stdout] 13 | |             description("no evenly divisible number")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day6/src/main.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / error_chain! {
[INFO] [stdout] 12 | |     foreign_links {
[INFO] [stdout] 13 | |         Io(io::Error);
[INFO] [stdout] 14 | |         ParseInt(ParseIntError);
[INFO] [stdout] ...  |
[INFO] [stdout] 17 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day10/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     foreign_links {
[INFO] [stdout] 12 | |         Io(io::Error);
[INFO] [stdout] 13 | |         ParseInt(ParseIntError);
[INFO] [stdout] 14 | |     }
[INFO] [stdout] 15 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> day2b/src/main.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / error_chain! {
[INFO] [stdout] 11 | |     errors {
[INFO] [stdout] 12 | |         NoEvenlyDivisibleNumber {
[INFO] [stdout] 13 | |             description("no evenly divisible number")
[INFO] [stdout] ...  |
[INFO] [stdout] 21 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `impl_error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day7/src/main.rs:33:14
[INFO] [stdout]    |
[INFO] [stdout] 33 | named!(lines<&str, Vec<Line> >, many0!(terminated!(line, nom::line_ending)));
[INFO] [stdout]    |              ^^^^      ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |              the same 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] 33 | named!(lines<&str, Vec<Line<'_>> >, many0!(terminated!(line, nom::line_ending)));
[INFO] [stdout]    |                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> day7/src/main.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 35 | named!(line<&str, Line>, sep!(space, do_parse!(
[INFO] [stdout]    |             ^^^^  ^^^^ the same lifetime is hidden here
[INFO] [stdout]    |             |
[INFO] [stdout]    |             the lifetime is elided here
[INFO] [stdout]    |             the same 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] 35 | named!(line<&str, Line<'_>>, sep!(space, do_parse!(
[INFO] [stdout]    |                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.16s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: day12 v0.1.0 (/opt/rustwide/workdir/day12), day13 v0.1.0 (/opt/rustwide/workdir/day13), day15 v0.1.0 (/opt/rustwide/workdir/day15), day16 v0.1.0 (/opt/rustwide/workdir/day16), day18 v0.1.0 (/opt/rustwide/workdir/day18), day20 v0.1.0 (/opt/rustwide/workdir/day20), day7 v0.1.0 (/opt/rustwide/workdir/day7), day8 v0.1.0 (/opt/rustwide/workdir/day8), day9 v0.1.0 (/opt/rustwide/workdir/day9), nom v3.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 8`
[INFO] running `Command { std: "docker" "inspect" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92", kill_on_drop: false }`
[INFO] [stdout] af33f0d1f90ee28d6c76d2b12759be2a0166f61c62481478e00b2f1f461beb92
