[INFO] cloning repository https://github.com/jugglerchris/aoc2017
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jugglerchris/aoc2017" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjugglerchris%2Faoc2017", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjugglerchris%2Faoc2017'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 916cad896d19425b197d0bc3bc24f851242fe72d
[INFO] checking jugglerchris/aoc2017 against master#642c19bfc3a5c1de985bf5d0cc8207ac9d22708a for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjugglerchris%2Faoc2017" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/jugglerchris/aoc2017
[INFO] finished tweaking git repo https://github.com/jugglerchris/aoc2017
[INFO] tweaked toml for git repo https://github.com/jugglerchris/aoc2017 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/jugglerchris/aoc2017 on toolchain 642c19bfc3a5c1de985bf5d0cc8207ac9d22708a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/jugglerchris/aoc2017 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded lazy_static v0.2.11
[INFO] [stderr]   Downloaded thread_local v0.3.4
[INFO] [stderr]   Downloaded unreachable v1.0.0
[INFO] [stderr]   Downloaded aho-corasick v0.6.4
[INFO] [stderr]   Downloaded libc v0.2.34
[INFO] [stderr]   Downloaded memchr v2.0.1
[INFO] [stderr]   Downloaded regex-syntax v0.4.1
[INFO] [stderr]   Downloaded utf8-ranges v1.0.0
[INFO] [stderr]   Downloaded regex v0.2.3
[INFO] [stderr]   Downloaded lazy_static v1.0.0
[INFO] [stderr]   Downloaded void v1.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9cfa839756b39eea8de0fdc4800ae8d41050188f84f3d1423f123e8777d0d04a
[INFO] running `Command { std: "docker" "start" "-a" "9cfa839756b39eea8de0fdc4800ae8d41050188f84f3d1423f123e8777d0d04a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9cfa839756b39eea8de0fdc4800ae8d41050188f84f3d1423f123e8777d0d04a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9cfa839756b39eea8de0fdc4800ae8d41050188f84f3d1423f123e8777d0d04a", kill_on_drop: false }`
[INFO] [stdout] 9cfa839756b39eea8de0fdc4800ae8d41050188f84f3d1423f123e8777d0d04a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+642c19bfc3a5c1de985bf5d0cc8207ac9d22708a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6d41fb15618a747605ea2214ea7271f734d328032c83c3a7c2be769a3ed6f74b
[INFO] running `Command { std: "docker" "start" "-a" "6d41fb15618a747605ea2214ea7271f734d328032c83c3a7c2be769a3ed6f74b", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking libc v0.2.34
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking regex-syntax v0.4.1
[INFO] [stderr]     Checking utf8-ranges v1.0.0
[INFO] [stderr]     Checking lazy_static v1.0.0
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking memchr v2.0.1
[INFO] [stderr]     Checking thread_local v0.3.4
[INFO] [stderr]     Checking aho-corasick v0.6.4
[INFO] [stderr]     Checking regex v0.2.3
[INFO] [stderr]     Checking aoc2017 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut f = try!(File::open(&filename));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/lib.rs:38:17
[INFO] [stdout]    |
[INFO] [stdout] 38 |     let mut f = try!(File::open(&filename));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     regex_parser!(parse_operand: Operand {
[INFO] [stdout] 164 | |         VAL = r#"^(-?\d+)$"# => | val: isize | Operand::Val(val),
[INFO] [stdout] 165 | |         REG = r#"^(\w)$"# => | reg: String | Operand::Reg((reg.chars().next().unwrap() as u8 - b'a') as usize)
[INFO] [stdout] 166 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     regex_parser!(parse_operand: Operand {
[INFO] [stdout] 164 | |         VAL = r#"^(-?\d+)$"# => | val: isize | Operand::Val(val),
[INFO] [stdout] 165 | |         REG = r#"^(\w)$"# => | reg: String | Operand::Reg((reg.chars().next().unwrap() as u8 - b'a') as usize)
[INFO] [stdout] 166 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     regex_parser!(parse_operand: Operand {
[INFO] [stdout] 164 | |         VAL = r#"^(-?\d+)$"# => | val: isize | Operand::Val(val),
[INFO] [stdout] 165 | |         REG = r#"^(\w)$"# => | reg: String | Operand::Reg((reg.chars().next().unwrap() as u8 - b'a') as usize)
[INFO] [stdout] 166 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 | /     regex_parser!(parse_operand: Operand {
[INFO] [stdout] 164 | |         VAL = r#"^(-?\d+)$"# => | val: isize | Operand::Val(val),
[INFO] [stdout] 165 | |         REG = r#"^(\w)$"# => | reg: String | Operand::Reg((reg.chars().next().unwrap() as u8 - b'a') as usize)
[INFO] [stdout] 166 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]    --> src/lib.rs:190:5
[INFO] [stdout]     |
[INFO] [stdout] 190 | /     regex_parser!(parse_insn: Insn {
[INFO] [stdout] 191 | |         SND = r#"snd (.*)$"# => | op: Operand | Snd(op),
[INFO] [stdout] 192 | |         SET = r#"set (.*) (.*)$"# => | op1: Operand, op2: Operand | Set(op1, op2),
[INFO] [stdout] 193 | |         ADD = r#"add (.*) (.*)$"# => | op1: Operand, op2: Operand | Add(op1, op2),
[INFO] [stdout] ...   |
[INFO] [stdout] 199 | |         JNZ = r#"jnz (.*) (.*)$"# => | op1: Operand, op2: Operand | Jnz(op1, op2)
[INFO] [stdout] 200 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day2.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day13.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use] extern crate aoc2017;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day13.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day13.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day19.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use] extern crate aoc2017;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day19.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> examples/day19.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |             b'A' ... b'|' => {
[INFO] [stdout]    |                  ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day19.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `height`
[INFO] [stdout]   --> examples/day19.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     let height = map.len() as isize;
[INFO] [stdout]    |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_height`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day16.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / regex_parser!(parse_move: Move {
[INFO] [stdout] 14 | |     SPIN = r#"^s(\d+)$"# => | x: usize | Spin(x),
[INFO] [stdout] 15 | |     EXCHANGE = r#"^x(\d+)/(\d+)$"# => | a: usize, b: usize | Exchange(a,b),
[INFO] [stdout] 16 | |     PARTNER = r#"^p(.)/(.)$"# => | a: char, b: char | Partner(a as u8 - b'a', b as u8 - b'a')
[INFO] [stdout] 17 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day16.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / regex_parser!(parse_move: Move {
[INFO] [stdout] 14 | |     SPIN = r#"^s(\d+)$"# => | x: usize | Spin(x),
[INFO] [stdout] 15 | |     EXCHANGE = r#"^x(\d+)/(\d+)$"# => | a: usize, b: usize | Exchange(a,b),
[INFO] [stdout] 16 | |     PARTNER = r#"^p(.)/(.)$"# => | a: char, b: char | Partner(a as u8 - b'a', b as u8 - b'a')
[INFO] [stdout] 17 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day21.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day4.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day16.rs:13:1
[INFO] [stdout]    |
[INFO] [stdout] 13 | / regex_parser!(parse_move: Move {
[INFO] [stdout] 14 | |     SPIN = r#"^s(\d+)$"# => | x: usize | Spin(x),
[INFO] [stdout] 15 | |     EXCHANGE = r#"^x(\d+)/(\d+)$"# => | a: usize, b: usize | Exchange(a,b),
[INFO] [stdout] 16 | |     PARTNER = r#"^p(.)/(.)$"# => | a: char, b: char | Partner(a as u8 - b'a', b as u8 - b'a')
[INFO] [stdout] 17 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day16.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day3.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> examples/day18.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 |     };
[INFO] [stdout]    |      ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day18.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day15.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use] extern crate aoc2017;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day15.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day15.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day25.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day1.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day10.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day20.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | / regex_parser!(parse_particle: Particle {
[INFO] [stdout] 50 | |     LINE = r#"^p=<(-?\d+),(-?\d+),(-?\d+)>, v=<(-?\d+),(-?\d+),(-?\d+)>, a=<(-?\d+),(-?\d+),(-?\d+)>$"# =>
[INFO] [stdout] 51 | |         | px: isize, py: isize, pz: isize,
[INFO] [stdout] 52 | |           vx: isize, vy: isize, vz: isize,
[INFO] [stdout] ...  |
[INFO] [stdout] 59 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day20.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day11.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> examples/day18.rs:54:48
[INFO] [stdout]    |
[INFO] [stdout] 54 |     pub fn new(id: isize, code: &'a [Insn]) -> Thread {
[INFO] [stdout]    |                                  --            ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  the 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] 54 |     pub fn new(id: isize, code: &'a [Insn]) -> Thread<'a> {
[INFO] [stdout]    |                                                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day7.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | / regex_parser!(parse_tinfo: TowerInfo {
[INFO] [stdout] 15 | |     TOWER = r#"^\s*(\w+) \((\d+)\) -> ([\w, ]*)$"# =>
[INFO] [stdout] 16 | |         | name: String, weight: usize, childstring: String|
[INFO] [stdout] 17 | |             TowerInfo {
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day7.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | / regex_parser!(parse_tinfo: TowerInfo {
[INFO] [stdout] 15 | |     TOWER = r#"^\s*(\w+) \((\d+)\) -> ([\w, ]*)$"# =>
[INFO] [stdout] 16 | |         | name: String, weight: usize, childstring: String|
[INFO] [stdout] 17 | |             TowerInfo {
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day7.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `smaller`
[INFO] [stdout]   --> examples/day11.rs:19:13
[INFO] [stdout]    |
[INFO] [stdout] 19 |         let smaller = min(ne.abs(), n.abs());
[INFO] [stdout]    |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_smaller`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `se` is never read
[INFO] [stdout]   --> examples/day11.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     se = 0;
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/day21.rs:152:17
[INFO] [stdout]     |
[INFO] [stdout] 152 |             let mut output = rule.output;
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/day21.rs:177:17
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let mut output = rule.output;
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_grid` is never used
[INFO] [stdout]   --> examples/day21.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn print_grid(data: &[Square], size: usize) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `print` is never used
[INFO] [stdout]    --> examples/day21.rs:136:8
[INFO] [stdout]     |
[INFO] [stdout]  89 | impl Grid {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 136 |     fn print(&self) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day9.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use] extern crate aoc2017;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day9.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day22.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day14.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day17.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #[macro_use] extern crate aoc2017;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/day17.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use] extern crate lazy_static;
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day17.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day12.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | / regex_parser!(parse_pipes: Connections {
[INFO] [stdout] 13 | |     LINE = r#"^(\d+) <-> ([\d, ]+)$"# =>
[INFO] [stdout] 14 | |         | name: usize, pipes: String |
[INFO] [stdout] 15 | |             Connections {
[INFO] [stdout] ...  |
[INFO] [stdout] 23 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day12.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day5.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> examples/day23.rs:19:6
[INFO] [stdout]    |
[INFO] [stdout] 19 |     };
[INFO] [stdout]    |      ^ help: remove this semicolon
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(redundant_semicolons)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]   --> examples/day23.rs:52:6
[INFO] [stdout]    |
[INFO] [stdout] 52 |     };
[INFO] [stdout]    |      ^ help: remove this semicolon
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day23.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day24.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day6.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::ONCE_INIT`: the `Once::new()` function is now preferred
[INFO] [stdout]   --> examples/day8.rs:66:1
[INFO] [stdout]    |
[INFO] [stdout] 66 | / regex_parser!(parse_insn: Instruction {
[INFO] [stdout] 67 | |     INSN = r#"^(\w+) (inc|dec) (-?\d+) if (\w+) (==|!=|<|>|<=|>=) (-?\d+)$"# =>
[INFO] [stdout] 68 | |         | target: String, op: Operation, adjval: isize, cond_src: String,
[INFO] [stdout] 69 | |           cmp: Comparison, cmpval: isize |
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | | });
[INFO] [stdout]    | |__^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `__lazy_static_create` which comes from the expansion of the macro `regex_parser` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `conservative_impl_trait` has been stable since 1.26.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> examples/day8.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(conservative_impl_trait)]
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> examples/day24.rs:60:43
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 assert!(piece.used.get(), true);
[INFO] [stdout]    |                                           ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 60 |                 assert!(piece.used.get(), "{}", true);
[INFO] [stdout]    |                                           +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.84s
[INFO] running `Command { std: "docker" "inspect" "6d41fb15618a747605ea2214ea7271f734d328032c83c3a7c2be769a3ed6f74b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d41fb15618a747605ea2214ea7271f734d328032c83c3a7c2be769a3ed6f74b", kill_on_drop: false }`
[INFO] [stdout] 6d41fb15618a747605ea2214ea7271f734d328032c83c3a7c2be769a3ed6f74b
