[INFO] cloning repository https://github.com/iptq/pgen
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/iptq/pgen" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiptq%2Fpgen", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiptq%2Fpgen'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 50433781d345b2f8cf798871e59a4c1b91acc72d
[INFO] checking iptq/pgen against try#8ac0915e346f9a2e49ca3951b642c55bd7d1eaab for pr-158447
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiptq%2Fpgen" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/iptq/pgen
[INFO] finished tweaking git repo https://github.com/iptq/pgen
[INFO] tweaked toml for git repo https://github.com/iptq/pgen written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/iptq/pgen on toolchain 8ac0915e346f9a2e49ca3951b642c55bd7d1eaab
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/iptq/pgen 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" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded thiserror-impl v1.0.11
[INFO] [stderr]   Downloaded proc-macro2 v1.0.9
[INFO] [stderr]   Downloaded symbol v0.1.7
[INFO] [stderr]   Downloaded thiserror v1.0.11
[INFO] [stderr]   Downloaded fnv v1.0.6
[INFO] [stderr]   Downloaded syn v1.0.16
[INFO] [stderr]   Downloaded serde v1.0.104
[INFO] [stderr]   Downloaded autocfg v0.1.7
[INFO] [stderr]   Downloaded rand_chacha v0.2.1
[INFO] [stderr]   Downloaded fuchsia-cprng v0.1.1
[INFO] [stderr]   Downloaded rand_isaac v0.1.1
[INFO] [stderr]   Downloaded rand_hc v0.1.0
[INFO] [stderr]   Downloaded rdrand v0.4.0
[INFO] [stderr]   Downloaded spin v0.4.10
[INFO] [stderr]   Downloaded bit-set v0.5.1
[INFO] [stderr]   Downloaded c2-chacha v0.2.3
[INFO] [stderr]   Downloaded rand_xorshift v0.1.1
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded wait-timeout v0.2.0
[INFO] [stderr]   Downloaded rand_chacha v0.1.1
[INFO] [stderr]   Downloaded rand_pcg v0.1.2
[INFO] [stderr]   Downloaded hermit-abi v0.1.8
[INFO] [stderr]   Downloaded rand_os v0.1.3
[INFO] [stderr]   Downloaded prettytable-rs v0.8.0
[INFO] [stderr]   Downloaded unicode-width v0.1.7
[INFO] [stderr]   Downloaded maplit v1.0.2
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.6
[INFO] [stderr]   Downloaded rusty-fork v0.2.2
[INFO] [stderr]   Downloaded rand_core v0.4.2
[INFO] [stderr]   Downloaded bit-vec v0.5.1
[INFO] [stderr]   Downloaded rand_core v0.3.1
[INFO] [stderr]   Downloaded rand_jitter v0.1.4
[INFO] [stderr]   Downloaded encode_unicode v0.3.6
[INFO] [stderr]   Downloaded csv-core v0.1.10
[INFO] [stderr]   Downloaded term v0.5.2
[INFO] [stderr]   Downloaded ryu v1.0.2
[INFO] [stderr]   Downloaded indexmap v1.3.2
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded regex-automata v0.1.8
[INFO] [stderr]   Downloaded aho-corasick v0.7.9
[INFO] [stderr]   Downloaded rand v0.6.5
[INFO] [stderr]   Downloaded proptest v0.9.5
[INFO] [stderr]   Downloaded regex v1.3.4
[INFO] [stderr]   Downloaded regex-syntax v0.6.14
[INFO] [stderr]   Downloaded bstr v0.2.11
[INFO] [stderr]   Downloaded libc v0.2.67
[INFO] [stderr]   Downloaded csv v1.1.3
[INFO] [stderr]   Downloaded winapi v0.3.8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb
[INFO] running `Command { std: "docker" "start" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb" "/opt/rustwide/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb" "/opt/rustwide/cargo-home/bin/cargo" "+8ac0915e346f9a2e49ca3951b642c55bd7d1eaab" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.67
[INFO] [stderr]    Compiling proc-macro2 v1.0.9
[INFO] [stderr]    Compiling serde v1.0.104
[INFO] [stderr]    Compiling syn v1.0.16
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling ryu v1.0.2
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]     Checking regex-automata v0.1.8
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]    Compiling indexmap v1.3.2
[INFO] [stderr]     Checking regex-syntax v0.6.14
[INFO] [stderr]     Checking aho-corasick v0.7.9
[INFO] [stderr]     Checking spin v0.4.10
[INFO] [stderr]     Checking encode_unicode v0.3.6
[INFO] [stderr]     Checking unicode-width v0.1.7
[INFO] [stderr]     Checking symbol v0.1.7
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking getrandom v0.1.14
[INFO] [stderr]     Checking term v0.5.2
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.6
[INFO] [stderr]     Checking ordmap v0.1.0 (/opt/rustwide/workdir/ordmap)
[INFO] [stdout] warning: unused variable: `boxed`
[INFO] [stdout]    --> ordmap/src/lib.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let boxed = unsafe { Box::from_raw(node_ptr) };
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_boxed`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling num-traits v0.2.11
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking c2-chacha v0.2.3
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking wait-timeout v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.2.1
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking fnv v1.0.6
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking bit-vec v0.5.1
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking maplit v1.0.2
[INFO] [stderr]     Checking bit-set v0.5.1
[INFO] [stdout] warning: unused variable: `boxed`
[INFO] [stdout]    --> ordmap/src/lib.rs:116:17
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let boxed = unsafe { Box::from_raw(node_ptr) };
[INFO] [stdout]     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_boxed`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking regex v1.3.4
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]     Checking rusty-fork v0.2.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.11
[INFO] [stderr]     Checking proptest v0.9.5
[INFO] [stderr]     Checking bstr v0.2.11
[INFO] [stderr]     Checking thiserror v1.0.11
[INFO] [stderr]     Checking csv v1.1.3
[INFO] [stderr]     Checking prettytable-rs v0.8.0
[INFO] [stderr]     Checking pgen v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/grammar.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Write;
[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 variable: `items`
[INFO] [stdout]   --> src/grammar.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let items = {
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_items`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/grammar.rs:406:14
[INFO] [stdout]     |
[INFO] [stdout] 406 |         for (i, item_set) in self.canonical_collection.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/parser.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |         for (i, (action, _)) in self.table_iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/parser.rs:83:14
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for (i, (_, goto)) in self.table_iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gotos`
[INFO] [stdout]    --> src/parser.rs:172:31
[INFO] [stdout]     |
[INFO] [stdout] 172 |                 let (actions, gotos) = &self.table.0[state];
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_gotos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/grammar.rs:31:30
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn create_grammar_helper(&self) -> Result<GrammarHelper, GrammarError> {
[INFO] [stdout]    |                              ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn create_grammar_helper(&self) -> Result<GrammarHelper<'_>, GrammarError> {
[INFO] [stdout]    |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X` should have a snake case name
[INFO] [stdout]    --> src/grammar.rs:441:49
[INFO] [stdout]     |
[INFO] [stdout] 441 |     fn goto(&self, item_set: BTreeSet<LR0Item>, X: Symbol) -> BTreeSet<LR0Item> {
[INFO] [stdout]     |                                                 ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking wtf v0.1.0 (/opt/rustwide/workdir/wtf)
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> wtf/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[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: `pgen::Grammar`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use pgen::Grammar;
[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: `pgen::Parser`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use pgen::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> wtf/src/lib.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Read;
[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 variable: `starting_state`
[INFO] [stdout]   --> wtf/src/lib.rs:45:33
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn generic_parse(&mut self, starting_state: usize) {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_starting_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACTIONS` is never used
[INFO] [stdout]   --> wtf/src/lib.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const ACTIONS: &[[i8;5]] = &[
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GOTOS` is never used
[INFO] [stdout]   --> wtf/src/lib.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 | const GOTOS: &[[i8;2]] = &[
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `regex_set` and `input` are never read
[INFO] [stdout]   --> wtf/src/lib.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Parser<'a> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 33 |     regex_set: RegexSet,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     position: usize,
[INFO] [stdout] 35 |     input: &'a str,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `starting_state`
[INFO] [stdout]   --> wtf/src/lib.rs:45:33
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn generic_parse(&mut self, starting_state: usize) {
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_starting_state`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> wtf/src/lib.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 | let regex_set = RegexSet::new(PATTERNS.clone()).unwrap();
[INFO] [stdout]    |                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[&str]` does not implement `Clone`, so calling `clone` on `&[&str]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_E` should have a snake case name
[INFO] [stdout]   --> wtf/src/lib.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn parse_E(&mut self) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `parse_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ACTIONS` is never used
[INFO] [stdout]   --> wtf/src/lib.rs:10:7
[INFO] [stdout]    |
[INFO] [stdout] 10 | const ACTIONS: &[[i8;5]] = &[
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `GOTOS` is never used
[INFO] [stdout]   --> wtf/src/lib.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 | const GOTOS: &[[i8;2]] = &[
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `regex_set` and `input` are never read
[INFO] [stdout]   --> wtf/src/lib.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct Parser<'a> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 33 |     regex_set: RegexSet,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 34 |     position: usize,
[INFO] [stdout] 35 |     input: &'a str,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> wtf/src/lib.rs:39:39
[INFO] [stdout]    |
[INFO] [stdout] 39 | let regex_set = RegexSet::new(PATTERNS.clone()).unwrap();
[INFO] [stdout]    |                                       ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `[&str]` does not implement `Clone`, so calling `clone` on `&[&str]` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_E` should have a snake case name
[INFO] [stdout]   --> wtf/src/lib.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 42 | pub fn parse_E(&mut self) {
[INFO] [stdout]    |        ^^^^^^^ help: convert the identifier to snake case: `parse_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Cursor`
[INFO] [stdout]  --> wtf/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Cursor;
[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: `std::io::Cursor`
[INFO] [stdout]  --> wtf/src/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Cursor;
[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: `pgen::Grammar`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use pgen::Grammar;
[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: `pgen::Parser`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use pgen::Parser;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/grammar.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::Write;
[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 variable: `items`
[INFO] [stdout]   --> src/grammar.rs:51:13
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let items = {
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_items`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/grammar.rs:406:14
[INFO] [stdout]     |
[INFO] [stdout] 406 |         for (i, item_set) in self.canonical_collection.iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/parser.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |         for (i, (action, _)) in self.table_iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/parser.rs:83:14
[INFO] [stdout]    |
[INFO] [stdout] 83 |         for (i, (_, goto)) in self.table_iter() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `gotos`
[INFO] [stdout]    --> src/parser.rs:172:31
[INFO] [stdout]     |
[INFO] [stdout] 172 |                 let (actions, gotos) = &self.table.0[state];
[INFO] [stdout]     |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_gotos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/grammar.rs:31:30
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn create_grammar_helper(&self) -> Result<GrammarHelper, GrammarError> {
[INFO] [stdout]    |                              ^^^^^            ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn create_grammar_helper(&self) -> Result<GrammarHelper<'_>, GrammarError> {
[INFO] [stdout]    |                                                            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `X` should have a snake case name
[INFO] [stdout]    --> src/grammar.rs:441:49
[INFO] [stdout]     |
[INFO] [stdout] 441 |     fn goto(&self, item_set: BTreeSet<LR0Item>, X: Symbol) -> BTreeSet<LR0Item> {
[INFO] [stdout]     |                                                 ^ help: convert the identifier to snake case (notice the capitalization): `x`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.06s
[INFO] running `Command { std: "docker" "inspect" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb", kill_on_drop: false }`
[INFO] [stdout] 01ee5cd40fcd979ac93ee6373dfa0cec81791a43538fb089ec185a6a3bdb5fcb
