[INFO] cloning repository https://github.com/1yesman9/combinators
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/1yesman9/combinators" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1yesman9%2Fcombinators", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1yesman9%2Fcombinators'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b07eb37fe524db3c082cb5622d12513a1ec44041
[INFO] testing 1yesman9/combinators against master#1ef7943ee607160a564655b6596f83670ef95df5 for pr-146098-6
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F1yesman9%2Fcombinators" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/1yesman9/combinators
[INFO] finished tweaking git repo https://github.com/1yesman9/combinators
[INFO] tweaked toml for git repo https://github.com/1yesman9/combinators written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/1yesman9/combinators on toolchain 1ef7943ee607160a564655b6596f83670ef95df5
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/1yesman9/combinators 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" "+1ef7943ee607160a564655b6596f83670ef95df5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 83ff950cfd9959ec4e22b684edc493fc9a20a395990eeab67cdaba235f88c0d2
[INFO] running `Command { std: "docker" "start" "-a" "83ff950cfd9959ec4e22b684edc493fc9a20a395990eeab67cdaba235f88c0d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "83ff950cfd9959ec4e22b684edc493fc9a20a395990eeab67cdaba235f88c0d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "83ff950cfd9959ec4e22b684edc493fc9a20a395990eeab67cdaba235f88c0d2", kill_on_drop: false }`
[INFO] [stdout] 83ff950cfd9959ec4e22b684edc493fc9a20a395990eeab67cdaba235f88c0d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5f97e3b7f8bd4d218b9bac331d58b4c254dafe64774b0e9b98db967b734b768e
[INFO] running `Command { std: "docker" "start" "-a" "5f97e3b7f8bd4d218b9bac331d58b4c254dafe64774b0e9b98db967b734b768e", kill_on_drop: false }`
[INFO] [stderr]    Compiling combinators v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `or` and `string`
[INFO] [stdout]  --> src/string.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{str, or, combinator::{string, or}};
[INFO] [stdout]   |                                   ^^^^^^  ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::combinator::zero_or_more`
[INFO] [stdout]  --> src/string.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::combinator::zero_or_more;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `map`
[INFO] [stdout]  --> src/number.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::combinator::{and_then, map};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/combinator.rs:21:33
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn zero_or_more<'a, Output>(mut parser: impl Parser<'a, Output>) -> impl Parser<'a, Vec<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]   --> src/combinator.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more(parser);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/string.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more_chr(predicate);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/combinator.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             .and_then(|(result, remaining)| right.parse(remaining))
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right_res`
[INFO] [stdout]   --> src/combinator.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 right.parse(left_rem).and_then(|(right_res, right_rem)| Ok((left_res, right_rem))).map_err(|_| input)
[INFO] [stdout]    |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elements`
[INFO] [stdout]   --> src/lib.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn or_trie<'a, Output>(elements: &[(&str, Output)]) {//-> impl Parser<'a, Output> {
[INFO] [stdout]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.32s
[INFO] running `Command { std: "docker" "inspect" "5f97e3b7f8bd4d218b9bac331d58b4c254dafe64774b0e9b98db967b734b768e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5f97e3b7f8bd4d218b9bac331d58b4c254dafe64774b0e9b98db967b734b768e", kill_on_drop: false }`
[INFO] [stdout] 5f97e3b7f8bd4d218b9bac331d58b4c254dafe64774b0e9b98db967b734b768e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c0291a00eed1586f8e30ea510045a4bcf63575389bc69fb0127d747668c9053a
[INFO] running `Command { std: "docker" "start" "-a" "c0291a00eed1586f8e30ea510045a4bcf63575389bc69fb0127d747668c9053a", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `or` and `string`
[INFO] [stdout]  --> src/string.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{str, or, combinator::{string, or}};
[INFO] [stdout]   |                                   ^^^^^^  ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::combinator::zero_or_more`
[INFO] [stdout]  --> src/string.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::combinator::zero_or_more;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `map`
[INFO] [stdout]  --> src/number.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::combinator::{and_then, map};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/combinator.rs:21:33
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn zero_or_more<'a, Output>(mut parser: impl Parser<'a, Output>) -> impl Parser<'a, Vec<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]   --> src/combinator.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more(parser);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/string.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more_chr(predicate);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/combinator.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             .and_then(|(result, remaining)| right.parse(remaining))
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right_res`
[INFO] [stdout]   --> src/combinator.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 right.parse(left_rem).and_then(|(right_res, right_rem)| Ok((left_res, right_rem))).map_err(|_| input)
[INFO] [stdout]    |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elements`
[INFO] [stdout]   --> src/lib.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn or_trie<'a, Output>(elements: &[(&str, Output)]) {//-> impl Parser<'a, Output> {
[INFO] [stdout]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling combinators v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `or` and `string`
[INFO] [stdout]  --> src/string.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::{str, or, combinator::{string, or}};
[INFO] [stdout]   |                                   ^^^^^^  ^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::combinator::zero_or_more`
[INFO] [stdout]  --> src/string.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::combinator::zero_or_more;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `map`
[INFO] [stdout]  --> src/number.rs:3:35
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::combinator::{and_then, map};
[INFO] [stdout]   |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/combinator.rs:21:33
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub fn zero_or_more<'a, Output>(mut parser: impl Parser<'a, Output>) -> impl Parser<'a, Vec<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]   --> src/combinator.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more(parser);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/string.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 33 |     let mut parser = zero_or_more_chr(predicate);
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]   --> src/combinator.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             .and_then(|(result, remaining)| right.parse(remaining))
[INFO] [stdout]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `right_res`
[INFO] [stdout]   --> src/combinator.rs:75:50
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 right.parse(left_rem).and_then(|(right_res, right_rem)| Ok((left_res, right_rem))).map_err(|_| input)
[INFO] [stdout]    |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_res`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `elements`
[INFO] [stdout]   --> src/lib.rs:33:28
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn or_trie<'a, Output>(elements: &[(&str, Output)]) {//-> impl Parser<'a, Output> {
[INFO] [stdout]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/lib.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                    let ($(mut $name),+);
[INFO] [stdout]    |                           ----^^^^^
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           help: remove this `mut`
[INFO] [stdout] ...
[INFO] [stdout] 75 | / tuple!(
[INFO] [stdout] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stdout] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stdout] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stdout] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stdout] 80 | | );
[INFO] [stdout]    | |_- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.68s
[INFO] running `Command { std: "docker" "inspect" "c0291a00eed1586f8e30ea510045a4bcf63575389bc69fb0127d747668c9053a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c0291a00eed1586f8e30ea510045a4bcf63575389bc69fb0127d747668c9053a", kill_on_drop: false }`
[INFO] [stdout] c0291a00eed1586f8e30ea510045a4bcf63575389bc69fb0127d747668c9053a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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" "+1ef7943ee607160a564655b6596f83670ef95df5" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b5ce335fdfebb40baf3ceea49568aaa3171bce62e126b57aee820a506f4fac88
[INFO] running `Command { std: "docker" "start" "-a" "b5ce335fdfebb40baf3ceea49568aaa3171bce62e126b57aee820a506f4fac88", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `or` and `string`
[INFO] [stderr]  --> src/string.rs:3:35
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::{str, or, combinator::{string, or}};
[INFO] [stderr]   |                                   ^^^^^^  ^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::combinator::zero_or_more`
[INFO] [stderr]  --> src/string.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::combinator::zero_or_more;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `map`
[INFO] [stderr]  --> src/number.rs:3:35
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::combinator::{and_then, map};
[INFO] [stderr]   |                                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/combinator.rs:21:33
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn zero_or_more<'a, Output>(mut parser: impl Parser<'a, Output>) -> impl Parser<'a, Vec<Output>> {
[INFO] [stderr]    |                                 ----^^^^^^
[INFO] [stderr]    |                                 |
[INFO] [stderr]    |                                 help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/combinator.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |     let mut parser = zero_or_more(parser);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/string.rs:33:9
[INFO] [stderr]    |
[INFO] [stderr] 33 |     let mut parser = zero_or_more_chr(predicate);
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `result`
[INFO] [stderr]   --> src/combinator.rs:63:25
[INFO] [stderr]    |
[INFO] [stderr] 63 |             .and_then(|(result, remaining)| right.parse(remaining))
[INFO] [stderr]    |                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `right_res`
[INFO] [stderr]   --> src/combinator.rs:75:50
[INFO] [stderr]    |
[INFO] [stderr] 75 |                 right.parse(left_rem).and_then(|(right_res, right_rem)| Ok((left_res, right_rem))).map_err(|_| input)
[INFO] [stderr]    |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_right_res`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `elements`
[INFO] [stderr]   --> src/lib.rs:33:28
[INFO] [stderr]    |
[INFO] [stderr] 33 | pub fn or_trie<'a, Output>(elements: &[(&str, Output)]) {//-> impl Parser<'a, Output> {
[INFO] [stderr]    |                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_elements`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/lib.rs:48:25
[INFO] [stderr]    |
[INFO] [stderr] 48 |                    let ($(mut $name),+);
[INFO] [stderr]    |                           ----^^^^^
[INFO] [stderr]    |                           |
[INFO] [stderr]    |                           help: remove this `mut`
[INFO] [stderr] ...
[INFO] [stderr] 75 | / tuple!(
[INFO] [stderr] 76 | |     P1 O1 o1, P2 O2 o2, P3 O3 o3, P4 O4 o4, P5 O5 o5,
[INFO] [stderr] 77 | |     P6 O6 o6, P7 O7 o7, P8 O8 o8, P9 O9 o9, P10 O10 o10,
[INFO] [stderr] 78 | |     P11 O11 o11, P12 O12 o12, P13 O13 o13, P14 O14 o14, P15 O15 o15,
[INFO] [stderr] 79 | |     P16 O16 o16, P17 O17 o17, P18 O18 o18, P19 O19 o19, P20 O20 o20
[INFO] [stderr] 80 | | );
[INFO] [stderr]    | |_- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `tuple_inner` which comes from the expansion of the macro `tuple` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `combinators` (lib) generated 28 warnings (18 duplicates) (run `cargo fix --lib -p combinators` to apply 10 suggestions)
[INFO] [stderr] warning: `combinators` (lib test) generated 28 warnings (28 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/combinators-6146d29567e23304)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stderr]    Doc-tests combinators
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b5ce335fdfebb40baf3ceea49568aaa3171bce62e126b57aee820a506f4fac88", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b5ce335fdfebb40baf3ceea49568aaa3171bce62e126b57aee820a506f4fac88", kill_on_drop: false }`
[INFO] [stdout] b5ce335fdfebb40baf3ceea49568aaa3171bce62e126b57aee820a506f4fac88
