[INFO] fetching crate obis 1.0.0...
[INFO] building obis-1.0.0 against master#ad85bc524b1ad696e42061ad8338d382dffbdbe5 for pr-146237-1
[INFO] extracting crate obis 1.0.0 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate obis 1.0.0
[INFO] finished tweaking crates.io crate obis 1.0.0
[INFO] tweaked toml for crates.io crate obis 1.0.0 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate obis 1.0.0 on toolchain ad85bc524b1ad696e42061ad8338d382dffbdbe5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 3 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 057149c3002693e0955d5fc73441014bb48432c441d8efe728e830b99bed407a
[INFO] running `Command { std: "docker" "start" "-a" "057149c3002693e0955d5fc73441014bb48432c441d8efe728e830b99bed407a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "057149c3002693e0955d5fc73441014bb48432c441d8efe728e830b99bed407a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "057149c3002693e0955d5fc73441014bb48432c441d8efe728e830b99bed407a", kill_on_drop: false }`
[INFO] [stdout] 057149c3002693e0955d5fc73441014bb48432c441d8efe728e830b99bed407a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 53c4a9f23cc4c70fbb010f889e04ad8c6efb14ff610310837d8b480a240e6c23
[INFO] running `Command { std: "docker" "start" "-a" "53c4a9f23cc4c70fbb010f889e04ad8c6efb14ff610310837d8b480a240e6c23", kill_on_drop: false }`
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling obis v1.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.53s
[INFO] running `Command { std: "docker" "inspect" "53c4a9f23cc4c70fbb010f889e04ad8c6efb14ff610310837d8b480a240e6c23", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53c4a9f23cc4c70fbb010f889e04ad8c6efb14ff610310837d8b480a240e6c23", kill_on_drop: false }`
[INFO] [stdout] 53c4a9f23cc4c70fbb010f889e04ad8c6efb14ff610310837d8b480a240e6c23
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+ad85bc524b1ad696e42061ad8338d382dffbdbe5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c4fa21b83ec79a13140b0cbdb1db32a97540a5313310a400ed433485c99bbae1
[INFO] running `Command { std: "docker" "start" "-a" "c4fa21b83ec79a13140b0cbdb1db32a97540a5313310a400ed433485c99bbae1", kill_on_drop: false }`
[INFO] [stderr]    Compiling obis v1.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/tests.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 40 | test_valid_code!(test_code_all_zero, 0-0:0 .0 .0*0 + b"");
[INFO] [stdout]    | --------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `test_valid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/tests.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 41 | test_valid_code!(test_code_all_max, 255-255:255 .255 .255*255 + b"");
[INFO] [stdout]    | -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_valid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/tests.rs:10:21
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 42 | test_valid_code!(test_code_diff_groups, 5-4:3 .2 .1*9 + b",9");
[INFO] [stdout]    | -------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_valid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 43 | / test_invalid_code!(
[INFO] [stdout] 44 | |     test_code_truncated,
[INFO] [stdout] 45 | |     b"1-2:3.4.5*",
[INFO] [stdout] 46 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 47 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 43 | / test_invalid_code!(
[INFO] [stdout] 44 | |     test_code_truncated,
[INFO] [stdout] 45 | |     b"1-2:3.4.5*",
[INFO] [stdout] 46 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 47 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 48 | / test_invalid_code!(
[INFO] [stdout] 49 | |     test_code_missing_start,
[INFO] [stdout] 50 | |     b"-2:3.4.5*6",
[INFO] [stdout] 51 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 52 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 48 | / test_invalid_code!(
[INFO] [stdout] 49 | |     test_code_missing_start,
[INFO] [stdout] 50 | |     b"-2:3.4.5*6",
[INFO] [stdout] 51 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 52 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 53 | / test_invalid_code!(
[INFO] [stdout] 54 | |     test_code_group_a_too_large,
[INFO] [stdout] 55 | |     b"256-2:3.4.5*6",
[INFO] [stdout] 56 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 57 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 53 | / test_invalid_code!(
[INFO] [stdout] 54 | |     test_code_group_a_too_large,
[INFO] [stdout] 55 | |     b"256-2:3.4.5*6",
[INFO] [stdout] 56 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 57 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 58 | / test_invalid_code!(
[INFO] [stdout] 59 | |     test_code_group_b_too_large,
[INFO] [stdout] 60 | |     b"1-99999999999999999999999999999999999999999999999:3.4.5*6",
[INFO] [stdout] 61 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 62 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 58 | / test_invalid_code!(
[INFO] [stdout] 59 | |     test_code_group_b_too_large,
[INFO] [stdout] 60 | |     b"1-99999999999999999999999999999999999999999999999:3.4.5*6",
[INFO] [stdout] 61 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 62 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 63 | / test_invalid_code!(
[INFO] [stdout] 64 | |     test_code_group_c_too_large,
[INFO] [stdout] 65 | |     b"1-2:300.4.5*6",
[INFO] [stdout] 66 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 67 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 63 | / test_invalid_code!(
[INFO] [stdout] 64 | |     test_code_group_c_too_large,
[INFO] [stdout] 65 | |     b"1-2:300.4.5*6",
[INFO] [stdout] 66 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 67 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 68 | / test_invalid_code!(
[INFO] [stdout] 69 | |     test_code_group_d_too_large,
[INFO] [stdout] 70 | |     b"1-2:3.400.5*6",
[INFO] [stdout] 71 | |     CodeParseError::GroupD(6)
[INFO] [stdout] 72 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 68 | / test_invalid_code!(
[INFO] [stdout] 69 | |     test_code_group_d_too_large,
[INFO] [stdout] 70 | |     b"1-2:3.400.5*6",
[INFO] [stdout] 71 | |     CodeParseError::GroupD(6)
[INFO] [stdout] 72 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 73 | / test_invalid_code!(
[INFO] [stdout] 74 | |     test_code_group_e_too_large,
[INFO] [stdout] 75 | |     b"1-2:3.4.500*6",
[INFO] [stdout] 76 | |     CodeParseError::GroupE(8)
[INFO] [stdout] 77 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 73 | / test_invalid_code!(
[INFO] [stdout] 74 | |     test_code_group_e_too_large,
[INFO] [stdout] 75 | |     b"1-2:3.4.500*6",
[INFO] [stdout] 76 | |     CodeParseError::GroupE(8)
[INFO] [stdout] 77 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 78 | / test_invalid_code!(
[INFO] [stdout] 79 | |     test_code_group_f_too_large,
[INFO] [stdout] 80 | |     b"1-2:3.4.5*600",
[INFO] [stdout] 81 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 82 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 78 | / test_invalid_code!(
[INFO] [stdout] 79 | |     test_code_group_f_too_large,
[INFO] [stdout] 80 | |     b"1-2:3.4.5*600",
[INFO] [stdout] 81 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 82 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 83 | / test_invalid_code!(
[INFO] [stdout] 84 | |     test_code_interior_whitespace,
[INFO] [stdout] 85 | |     b"1 -2:3.4.5*6",
[INFO] [stdout] 86 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 87 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 83 | / test_invalid_code!(
[INFO] [stdout] 84 | |     test_code_interior_whitespace,
[INFO] [stdout] 85 | |     b"1 -2:3.4.5*6",
[INFO] [stdout] 86 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 87 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 88 | / test_invalid_code!(
[INFO] [stdout] 89 | |     test_code_interior_whitespace_2,
[INFO] [stdout] 90 | |     b"1- 2:3.4.5*6",
[INFO] [stdout] 91 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 92 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 88 | / test_invalid_code!(
[INFO] [stdout] 89 | |     test_code_interior_whitespace_2,
[INFO] [stdout] 90 | |     b"1- 2:3.4.5*6",
[INFO] [stdout] 91 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 92 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]   --> src/tests.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 93 | / test_invalid_code!(
[INFO] [stdout] 94 | |     test_code_interior_whitespace_3,
[INFO] [stdout] 95 | |     b"1-2 :3.4.5*6",
[INFO] [stdout] 96 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 97 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]   --> src/tests.rs:32:27
[INFO] [stdout]    |
[INFO] [stdout] 32 |                   Ok((code, leftover)) => {
[INFO] [stdout]    |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 93 | / test_invalid_code!(
[INFO] [stdout] 94 | |     test_code_interior_whitespace_3,
[INFO] [stdout] 95 | |     b"1-2 :3.4.5*6",
[INFO] [stdout] 96 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 97 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:32:21
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout]  98 | / test_invalid_code!(
[INFO] [stdout]  99 | |     test_code_interior_whitespace_4,
[INFO] [stdout] 100 | |     b"1-2: 3.4.5*6",
[INFO] [stdout] 101 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 102 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:32:27
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout]  98 | / test_invalid_code!(
[INFO] [stdout]  99 | |     test_code_interior_whitespace_4,
[INFO] [stdout] 100 | |     b"1-2: 3.4.5*6",
[INFO] [stdout] 101 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 102 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:32:21
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 103 | / test_invalid_code!(
[INFO] [stdout] 104 | |     test_code_mixed_separators_1,
[INFO] [stdout] 105 | |     b"1.2.3.4.5.6",
[INFO] [stdout] 106 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 107 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:32:27
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 103 | / test_invalid_code!(
[INFO] [stdout] 104 | |     test_code_mixed_separators_1,
[INFO] [stdout] 105 | |     b"1.2.3.4.5.6",
[INFO] [stdout] 106 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 107 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:32:21
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 108 | / test_invalid_code!(
[INFO] [stdout] 109 | |     test_code_mixed_separators_2,
[INFO] [stdout] 110 | |     b"1-2.3.4.5*6",
[INFO] [stdout] 111 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 112 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:32:27
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 108 | / test_invalid_code!(
[INFO] [stdout] 109 | |     test_code_mixed_separators_2,
[INFO] [stdout] 110 | |     b"1-2.3.4.5*6",
[INFO] [stdout] 111 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 112 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:32:21
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 114 | / test_invalid_code!(
[INFO] [stdout] 115 | |     test_code_invalid_separators_1,
[INFO] [stdout] 116 | |     b"1!2:3.4.5*6",
[INFO] [stdout] 117 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 118 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:32:27
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 114 | / test_invalid_code!(
[INFO] [stdout] 115 | |     test_code_invalid_separators_1,
[INFO] [stdout] 116 | |     b"1!2:3.4.5*6",
[INFO] [stdout] 117 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 118 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:32:21
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 120 | / test_invalid_code!(
[INFO] [stdout] 121 | |     test_code_invalid_separators_2,
[INFO] [stdout] 122 | |     b"1-2:3#4.5*6",
[INFO] [stdout] 123 | |     CodeParseError::ExpectedDot(5)
[INFO] [stdout] 124 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:32:27
[INFO] [stdout]     |
[INFO] [stdout]  32 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 120 | / test_invalid_code!(
[INFO] [stdout] 121 | |     test_code_invalid_separators_2,
[INFO] [stdout] 122 | |     b"1-2:3#4.5*6",
[INFO] [stdout] 123 | |     CodeParseError::ExpectedDot(5)
[INFO] [stdout] 124 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 162 | test_valid_reduced_code!(test_reduced_code_full, b"1-2:3.4.5*6" => a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, manual_reset: false, b"");
[INFO] [stdout]     | -------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 163 | test_valid_reduced_code!(test_reduced_code_no_a, b"1:2.3.4*5" => b: 1, c: 2, d: 3, e: 4, f: 5, manual_reset: false, b"");
[INFO] [stdout]     | ------------------------------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 164 | test_valid_reduced_code!(test_reduced_code_no_b, b"1-2.3.4*5" => a: 1, c: 2, d: 3, e: 4, f: 5, manual_reset: false, b"");
[INFO] [stdout]     | ------------------------------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 165 | test_valid_reduced_code!(test_reduced_code_no_ab, b"1.2.3*4" => c: 1, d: 2, e: 3, f: 4, manual_reset: false, b"");
[INFO] [stdout]     | ----------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 166 | test_valid_reduced_code!(test_reduced_code_no_abe, b"1.2*3" => c: 1, d: 2, f: 3, manual_reset: false, b"");
[INFO] [stdout]     | ---------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 167 | test_valid_reduced_code!(test_reduced_code_no_abe_mr, b"1.2&3" => c: 1, d: 2, f: 3, manual_reset: true, b"");
[INFO] [stdout]     | ------------------------------------------------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 168 | test_valid_reduced_code!(test_reduced_code_no_f, b"1:2.3.4" => b: 1, c: 2, d: 3, e: 4, manual_reset: false, b"");
[INFO] [stdout]     | ---------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 169 | test_valid_reduced_code!(test_reduced_code_cd, b"1.2" => c: 1, d: 2, manual_reset: false, b"");
[INFO] [stdout]     | ---------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 170 | test_valid_reduced_code!(test_reduced_code_cd_leftovers, b"1.2(0*kWh)" => c: 1, d: 2, manual_reset: false, b"(0*kWh)");
[INFO] [stdout]     | ---------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 171 | test_valid_reduced_code!(test_reduced_code_full_leftovers, b"1-2:3.4.5&6(0*kWh)" => a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, manual_reset: true, b"(0*kWh)");
[INFO] [stdout]     | ------------------------------------------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 172 | test_valid_reduced_code!(test_reduced_code_no_e_leftovers, b"1-2:3.4*6*6" => a: 1, b: 2, c: 3, d: 4, f: 6, b"*6");
[INFO] [stdout]     | ----------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/tests.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] ...
[INFO] [stdout] 173 | test_valid_reduced_code!(test_reduced_code_invalid_separators_leftover, b"1-2:3.4:6" => a: 1, b: 2, c: 3, d: 4, b":6");
[INFO] [stdout]     | ---------------------------------------------------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_valid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 175 | / test_invalid_reduced_code!(
[INFO] [stdout] 176 | |     test_reduced_code_no_d,
[INFO] [stdout] 177 | |     b"1-2:4..5*6",
[INFO] [stdout] 178 | |     ReducedCodeParseError::Group(6)
[INFO] [stdout] 179 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:154:27
[INFO] [stdout]     |
[INFO] [stdout] 154 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 175 | / test_invalid_reduced_code!(
[INFO] [stdout] 176 | |     test_reduced_code_no_d,
[INFO] [stdout] 177 | |     b"1-2:4..5*6",
[INFO] [stdout] 178 | |     ReducedCodeParseError::Group(6)
[INFO] [stdout] 179 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `code`
[INFO] [stdout]    --> src/tests.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                       ^^^^ help: if this is intentional, prefix it with an underscore: `_code`
[INFO] [stdout] ...
[INFO] [stdout] 181 | / test_invalid_reduced_code!(
[INFO] [stdout] 182 | |     test_reduced_code_no_cd,
[INFO] [stdout] 183 | |     b"1-2:4*6",
[INFO] [stdout] 184 | |     ReducedCodeParseError::GroupCMissing(5)
[INFO] [stdout] 185 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `leftover`
[INFO] [stdout]    --> src/tests.rs:154:27
[INFO] [stdout]     |
[INFO] [stdout] 154 |                   Ok((code, leftover)) => {
[INFO] [stdout]     |                             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_leftover`
[INFO] [stdout] ...
[INFO] [stdout] 181 | / test_invalid_reduced_code!(
[INFO] [stdout] 182 | |     test_reduced_code_no_cd,
[INFO] [stdout] 183 | |     b"1-2:4*6",
[INFO] [stdout] 184 | |     ReducedCodeParseError::GroupCMissing(5)
[INFO] [stdout] 185 | | );
[INFO] [stdout]     | |_- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `test_invalid_reduced_code` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]   --> src/tests.rs:40:1
[INFO] [stdout]    |
[INFO] [stdout] 40 | test_valid_code!(test_code_all_zero, 0-0:0 .0 .0*0 + b"");
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]    |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]   --> src/tests.rs:41:1
[INFO] [stdout]    |
[INFO] [stdout] 41 | test_valid_code!(test_code_all_max, 255-255:255 .255 .255*255 + b"");
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]    |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]   --> src/tests.rs:42:1
[INFO] [stdout]    |
[INFO] [stdout] 42 | test_valid_code!(test_code_diff_groups, 5-4:3 .2 .1*9 + b",9");
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]    |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 10 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]    |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:43:1
[INFO] [stdout]    |
[INFO] [stdout] 43 | / test_invalid_code!(
[INFO] [stdout] 44 | |     test_code_truncated,
[INFO] [stdout] 45 | |     b"1-2:3.4.5*",
[INFO] [stdout] 46 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 47 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:48:1
[INFO] [stdout]    |
[INFO] [stdout] 48 | / test_invalid_code!(
[INFO] [stdout] 49 | |     test_code_missing_start,
[INFO] [stdout] 50 | |     b"-2:3.4.5*6",
[INFO] [stdout] 51 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 52 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | / test_invalid_code!(
[INFO] [stdout] 54 | |     test_code_group_a_too_large,
[INFO] [stdout] 55 | |     b"256-2:3.4.5*6",
[INFO] [stdout] 56 | |     CodeParseError::GroupA(0)
[INFO] [stdout] 57 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / test_invalid_code!(
[INFO] [stdout] 59 | |     test_code_group_b_too_large,
[INFO] [stdout] 60 | |     b"1-99999999999999999999999999999999999999999999999:3.4.5*6",
[INFO] [stdout] 61 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 62 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / test_invalid_code!(
[INFO] [stdout] 64 | |     test_code_group_c_too_large,
[INFO] [stdout] 65 | |     b"1-2:300.4.5*6",
[INFO] [stdout] 66 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 67 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / test_invalid_code!(
[INFO] [stdout] 69 | |     test_code_group_d_too_large,
[INFO] [stdout] 70 | |     b"1-2:3.400.5*6",
[INFO] [stdout] 71 | |     CodeParseError::GroupD(6)
[INFO] [stdout] 72 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:73:1
[INFO] [stdout]    |
[INFO] [stdout] 73 | / test_invalid_code!(
[INFO] [stdout] 74 | |     test_code_group_e_too_large,
[INFO] [stdout] 75 | |     b"1-2:3.4.500*6",
[INFO] [stdout] 76 | |     CodeParseError::GroupE(8)
[INFO] [stdout] 77 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:78:1
[INFO] [stdout]    |
[INFO] [stdout] 78 | / test_invalid_code!(
[INFO] [stdout] 79 | |     test_code_group_f_too_large,
[INFO] [stdout] 80 | |     b"1-2:3.4.5*600",
[INFO] [stdout] 81 | |     CodeParseError::GroupF(10)
[INFO] [stdout] 82 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:83:1
[INFO] [stdout]    |
[INFO] [stdout] 83 | / test_invalid_code!(
[INFO] [stdout] 84 | |     test_code_interior_whitespace,
[INFO] [stdout] 85 | |     b"1 -2:3.4.5*6",
[INFO] [stdout] 86 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 87 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | / test_invalid_code!(
[INFO] [stdout] 89 | |     test_code_interior_whitespace_2,
[INFO] [stdout] 90 | |     b"1- 2:3.4.5*6",
[INFO] [stdout] 91 | |     CodeParseError::GroupB(2)
[INFO] [stdout] 92 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]   --> src/tests.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | / test_invalid_code!(
[INFO] [stdout] 94 | |     test_code_interior_whitespace_3,
[INFO] [stdout] 95 | |     b"1-2 :3.4.5*6",
[INFO] [stdout] 96 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 97 | | );
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]    |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]    |
[INFO] [stdout] 33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]    |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / test_invalid_code!(
[INFO] [stdout]  99 | |     test_code_interior_whitespace_4,
[INFO] [stdout] 100 | |     b"1-2: 3.4.5*6",
[INFO] [stdout] 101 | |     CodeParseError::GroupC(4)
[INFO] [stdout] 102 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:103:1
[INFO] [stdout]     |
[INFO] [stdout] 103 | / test_invalid_code!(
[INFO] [stdout] 104 | |     test_code_mixed_separators_1,
[INFO] [stdout] 105 | |     b"1.2.3.4.5.6",
[INFO] [stdout] 106 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 107 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / test_invalid_code!(
[INFO] [stdout] 109 | |     test_code_mixed_separators_2,
[INFO] [stdout] 110 | |     b"1-2.3.4.5*6",
[INFO] [stdout] 111 | |     CodeParseError::ExpectedColon(3)
[INFO] [stdout] 112 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:114:1
[INFO] [stdout]     |
[INFO] [stdout] 114 | / test_invalid_code!(
[INFO] [stdout] 115 | |     test_code_invalid_separators_1,
[INFO] [stdout] 116 | |     b"1!2:3.4.5*6",
[INFO] [stdout] 117 | |     CodeParseError::ExpectedDash(1)
[INFO] [stdout] 118 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:120:1
[INFO] [stdout]     |
[INFO] [stdout] 120 | / test_invalid_code!(
[INFO] [stdout] 121 | |     test_code_invalid_separators_2,
[INFO] [stdout] 122 | |     b"1-2:3#4.5*6",
[INFO] [stdout] 123 | |     CodeParseError::ExpectedDot(5)
[INFO] [stdout] 124 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout]  33 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:162:1
[INFO] [stdout]     |
[INFO] [stdout] 162 | test_valid_reduced_code!(test_reduced_code_full, b"1-2:3.4.5*6" => a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | test_valid_reduced_code!(test_reduced_code_no_a, b"1:2.3.4*5" => b: 1, c: 2, d: 3, e: 4, f: 5, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:164:1
[INFO] [stdout]     |
[INFO] [stdout] 164 | test_valid_reduced_code!(test_reduced_code_no_b, b"1-2.3.4*5" => a: 1, c: 2, d: 3, e: 4, f: 5, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:165:1
[INFO] [stdout]     |
[INFO] [stdout] 165 | test_valid_reduced_code!(test_reduced_code_no_ab, b"1.2.3*4" => c: 1, d: 2, e: 3, f: 4, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:166:1
[INFO] [stdout]     |
[INFO] [stdout] 166 | test_valid_reduced_code!(test_reduced_code_no_abe, b"1.2*3" => c: 1, d: 2, f: 3, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:167:1
[INFO] [stdout]     |
[INFO] [stdout] 167 | test_valid_reduced_code!(test_reduced_code_no_abe_mr, b"1.2&3" => c: 1, d: 2, f: 3, manual_reset: true, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:168:1
[INFO] [stdout]     |
[INFO] [stdout] 168 | test_valid_reduced_code!(test_reduced_code_no_f, b"1:2.3.4" => b: 1, c: 2, d: 3, e: 4, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:169:1
[INFO] [stdout]     |
[INFO] [stdout] 169 | test_valid_reduced_code!(test_reduced_code_cd, b"1.2" => c: 1, d: 2, manual_reset: false, b"");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:170:1
[INFO] [stdout]     |
[INFO] [stdout] 170 | test_valid_reduced_code!(test_reduced_code_cd_leftovers, b"1.2(0*kWh)" => c: 1, d: 2, manual_reset: false, b"(0*kWh)");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:171:1
[INFO] [stdout]     |
[INFO] [stdout] 171 | test_valid_reduced_code!(test_reduced_code_full_leftovers, b"1-2:3.4.5&6(0*kWh)" => a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, manual_reset: true, b"(0*kWh)");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | test_valid_reduced_code!(test_reduced_code_no_e_leftovers, b"1-2:3.4*6*6" => a: 1, b: 2, c: 3, d: 4, f: 6, b"*6");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains an unused formatting placeholder
[INFO] [stdout]    --> src/tests.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | test_valid_reduced_code!(test_reduced_code_invalid_separators_leftover, b"1-2:3.4:6" => a: 1, b: 2, c: 3, d: 4, b":6");
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing argument
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("expected successful code parse, got error {e:?}", ...),
[INFO] [stdout]     |                                                                                   +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 131 |                 Err(e) => panic!("{}", "expected successful code parse, got error {e:?}"),
[INFO] [stdout]     |                                  +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:175:1
[INFO] [stdout]     |
[INFO] [stdout] 175 | / test_invalid_reduced_code!(
[INFO] [stdout] 176 | |     test_reduced_code_no_d,
[INFO] [stdout] 177 | |     b"1-2:4..5*6",
[INFO] [stdout] 178 | |     ReducedCodeParseError::Group(6)
[INFO] [stdout] 179 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message contains unused formatting placeholders
[INFO] [stdout]    --> src/tests.rs:181:1
[INFO] [stdout]     |
[INFO] [stdout] 181 | / test_invalid_reduced_code!(
[INFO] [stdout] 182 | |     test_reduced_code_no_cd,
[INFO] [stdout] 183 | |     b"1-2:4*6",
[INFO] [stdout] 184 | |     ReducedCodeParseError::GroupCMissing(5)
[INFO] [stdout] 185 | | );
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this message is not used as a format string when given without arguments, but will be in Rust 2021
[INFO] [stdout] help: add the missing arguments
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     panic!("expected an error: parsed {code:?} with leftover bytes: {leftover:?}", ...);
[INFO] [stdout]     |                                                                                                  +++++
[INFO] [stdout] help: or add a "{}" format string to use the message literally
[INFO] [stdout]     |
[INFO] [stdout] 155 |                     panic!("{}", "expected an error: parsed {code:?} with leftover bytes: {leftover:?}");
[INFO] [stdout]     |                            +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.50s
[INFO] running `Command { std: "docker" "inspect" "c4fa21b83ec79a13140b0cbdb1db32a97540a5313310a400ed433485c99bbae1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4fa21b83ec79a13140b0cbdb1db32a97540a5313310a400ed433485c99bbae1", kill_on_drop: false }`
[INFO] [stdout] c4fa21b83ec79a13140b0cbdb1db32a97540a5313310a400ed433485c99bbae1
