[INFO] cloning repository https://github.com/TheRobotFox/lexer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheRobotFox/lexer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheRobotFox%2Flexer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheRobotFox%2Flexer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 6cae657c9a662c0251485f3163ccfbc3ff418f3a [INFO] checking TheRobotFox/lexer against try#cd420d8bda33494ba3cc45048d5f067484a32b94 for pr-140209-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheRobotFox%2Flexer" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/TheRobotFox/lexer on toolchain cd420d8bda33494ba3cc45048d5f067484a32b94 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cd420d8bda33494ba3cc45048d5f067484a32b94" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/TheRobotFox/lexer [INFO] finished tweaking git repo https://github.com/TheRobotFox/lexer [INFO] tweaked toml for git repo https://github.com/TheRobotFox/lexer written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/TheRobotFox/lexer 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" "+cd420d8bda33494ba3cc45048d5f067484a32b94" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+cd420d8bda33494ba3cc45048d5f067484a32b94" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 106691e4ea2f817e80e6fcee46c2ce262ecf96d369d19adb1d4d70409c667d55 [INFO] running `Command { std: "docker" "start" "-a" "106691e4ea2f817e80e6fcee46c2ce262ecf96d369d19adb1d4d70409c667d55", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "106691e4ea2f817e80e6fcee46c2ce262ecf96d369d19adb1d4d70409c667d55", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "106691e4ea2f817e80e6fcee46c2ce262ecf96d369d19adb1d4d70409c667d55", kill_on_drop: false }` [INFO] [stdout] 106691e4ea2f817e80e6fcee46c2ce262ecf96d369d19adb1d4d70409c667d55 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:b0b074c097205a61b89e8ad263052f976b2b332c4dc5f02aef1fe52501660d6e" "/opt/rustwide/cargo-home/bin/cargo" "+cd420d8bda33494ba3cc45048d5f067484a32b94" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c01bc8f4324080936fd48c7a5271106e1b48e92ddd8df9ecdb3ee9133d5841a1 [INFO] running `Command { std: "docker" "start" "-a" "c01bc8f4324080936fd48c7a5271106e1b48e92ddd8df9ecdb3ee9133d5841a1", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.17 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling prettyplease v0.2.29 [INFO] [stderr] Compiling libc v0.2.170 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling either v1.14.0 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling minimal-lexical v0.2.1 [INFO] [stderr] Compiling shlex v1.3.0 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling bitflags v2.8.0 [INFO] [stderr] Compiling bindgen v0.69.5 [INFO] [stderr] Compiling libloading v0.8.6 [INFO] [stderr] Compiling home v0.5.11 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling cc v1.2.15 [INFO] [stderr] Compiling log v0.4.26 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling lazy_static v1.5.0 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Checking smallvec v1.14.0 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling fs_extra v1.3.0 [INFO] [stderr] Checking ahash v0.3.8 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling hashbrown v0.7.2 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling beef v0.5.2 [INFO] [stderr] Checking mopa v0.2.2 [INFO] [stderr] Checking arrayvec v0.5.2 [INFO] [stderr] Compiling fnv v1.0.7 [INFO] [stderr] Compiling regex-syntax v0.6.29 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking hibitset v0.6.4 [INFO] [stderr] Checking shrev v1.1.3 [INFO] [stderr] Checking tuple_utils v0.3.0 [INFO] [stderr] Checking crossbeam-queue v0.2.3 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling syn v2.0.98 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling cmake v0.1.54 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking tynm v0.1.10 [INFO] [stderr] Checking shred v0.10.2 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking specs v0.16.1 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling specs-derive v0.4.1 [INFO] [stderr] Compiling logos-codegen v0.13.0 [INFO] [stderr] Compiling logos-derive v0.13.0 [INFO] [stderr] Checking logos v0.13.0 [INFO] [stderr] Compiling raylib-sys v5.0.2 [INFO] [stderr] Checking raylib v5.0.2 [INFO] [stderr] Checking lexer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parse.rs:340:23 [INFO] [stdout] | [INFO] [stdout] 340 | if(c=='\n'){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 340 - if(c=='\n'){ [INFO] [stdout] 340 + if c=='\n' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parse.rs:340:23 [INFO] [stdout] | [INFO] [stdout] 340 | if(c=='\n'){ [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 340 - if(c=='\n'){ [INFO] [stdout] 340 + if c=='\n' { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse.rs:167:16 [INFO] [stdout] | [INFO] [stdout] 167 | fn reduction0(mut s: &str) -> char {s.chars().nth(1).unwrap()} [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse.rs:168:16 [INFO] [stdout] | [INFO] [stdout] 168 | fn reduction1(mut s: &str) -> char {s.chars().next().unwrap()} [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/parse.rs:169:16 [INFO] [stdout] | [INFO] [stdout] 169 | fn reduction2(mut s: BTreeSet) -> BTreeSet {s} [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/parse.rs:170:16 [INFO] [stdout] | [INFO] [stdout] 170 | fn reduction3(mut c: char) -> BTreeSet {BTreeSet::from([c])} [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/parse.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 171 | fn reduction4(mut a: char, mut b: char) -> BTreeSet {(a..=b).collect()} [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/parse.rs:171:29 [INFO] [stdout] | [INFO] [stdout] 171 | fn reduction4(mut a: char, mut b: char) -> BTreeSet {(a..=b).collect()} [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/parse.rs:172:16 [INFO] [stdout] | [INFO] [stdout] 172 | fn reduction5(mut s: BTreeSet) -> Pattern {Pattern::Terminal(Term{chars: s, negate: true}) } [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/parse.rs:173:16 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [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/parse.rs:173:43 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [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/parse.rs:174:16 [INFO] [stdout] | [INFO] [stdout] 174 | fn reduction7(mut s: BTreeSet) -> Pattern {Pattern::Terminal(Term{chars: s, negate: false}) } [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/parse.rs:175:16 [INFO] [stdout] | [INFO] [stdout] 175 | fn reduction8(mut e: Regexpr) -> Vec {vec![e]} [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/parse.rs:176:16 [INFO] [stdout] | [INFO] [stdout] 176 | fn reduction9(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: true, transparent: false}} [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/parse.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | fn reduction10(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: false, transparent: true}} [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/parse.rs:178:17 [INFO] [stdout] | [INFO] [stdout] 178 | fn reduction11(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: true, transparent: true}} [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/parse.rs:179:17 [INFO] [stdout] | [INFO] [stdout] 179 | fn reduction12(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: false, transparent: false}} [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/parse.rs:180:17 [INFO] [stdout] | [INFO] [stdout] 180 | fn reduction13(mut p: Pattern) -> Pattern {p } [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/parse.rs:181:17 [INFO] [stdout] | [INFO] [stdout] 181 | fn reduction14(mut s: char) -> Pattern {Pattern::Terminal(Term{chars: BTreeSet::from([s]), negate: false})} [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/parse.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | fn reduction15(mut a: Pattern, mut b: Vec) -> Pattern {Pattern::Or(Box::new(a),Box::new(Pattern::Group(b))) } [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/parse.rs:182:33 [INFO] [stdout] | [INFO] [stdout] 182 | fn reduction15(mut a: Pattern, mut b: Vec) -> Pattern {Pattern::Or(Box::new(a),Box::new(Pattern::Group(b))) } [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/parse.rs:183:42 [INFO] [stdout] | [INFO] [stdout] 183 | fn reduction16(mut stack: Vec, mut e: Regexpr) -> Vec {stack.push(e); stack} [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/parse.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | fn reduction17(mut t: Vec) -> Pattern {Pattern::Group(t) } [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EOF` is never constructed [INFO] [stdout] --> src/parse.rs:8:2 [INFO] [stdout] | [INFO] [stdout] 7 | #[logos(skip " ")]pub enum Token { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 8 | EOF, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DFAState` is never constructed [INFO] [stdout] --> src/automaton.rs:219:12 [INFO] [stdout] | [INFO] [stdout] 219 | pub struct DFAState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DFA` is never constructed [INFO] [stdout] --> src/automaton.rs:224:12 [INFO] [stdout] | [INFO] [stdout] 224 | pub struct DFA { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::collections::btree_set::Union` that must be used [INFO] [stdout] --> src/parse.rs:173:85 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this returns the union as an iterator, without modifying either input set [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {let _ = stack.union(&s); stack} [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse.rs:167:16 [INFO] [stdout] | [INFO] [stdout] 167 | fn reduction0(mut s: &str) -> char {s.chars().nth(1).unwrap()} [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parse.rs:168:16 [INFO] [stdout] | [INFO] [stdout] 168 | fn reduction1(mut s: &str) -> char {s.chars().next().unwrap()} [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/parse.rs:169:16 [INFO] [stdout] | [INFO] [stdout] 169 | fn reduction2(mut s: BTreeSet) -> BTreeSet {s} [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/parse.rs:170:16 [INFO] [stdout] | [INFO] [stdout] 170 | fn reduction3(mut c: char) -> BTreeSet {BTreeSet::from([c])} [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/parse.rs:171:16 [INFO] [stdout] | [INFO] [stdout] 171 | fn reduction4(mut a: char, mut b: char) -> BTreeSet {(a..=b).collect()} [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/parse.rs:171:29 [INFO] [stdout] | [INFO] [stdout] 171 | fn reduction4(mut a: char, mut b: char) -> BTreeSet {(a..=b).collect()} [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/parse.rs:172:16 [INFO] [stdout] | [INFO] [stdout] 172 | fn reduction5(mut s: BTreeSet) -> Pattern {Pattern::Terminal(Term{chars: s, negate: true}) } [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/parse.rs:173:16 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [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/parse.rs:173:43 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [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/parse.rs:174:16 [INFO] [stdout] | [INFO] [stdout] 174 | fn reduction7(mut s: BTreeSet) -> Pattern {Pattern::Terminal(Term{chars: s, negate: false}) } [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/parse.rs:175:16 [INFO] [stdout] | [INFO] [stdout] 175 | fn reduction8(mut e: Regexpr) -> Vec {vec![e]} [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/parse.rs:176:16 [INFO] [stdout] | [INFO] [stdout] 176 | fn reduction9(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: true, transparent: false}} [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/parse.rs:177:17 [INFO] [stdout] | [INFO] [stdout] 177 | fn reduction10(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: false, transparent: true}} [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/parse.rs:178:17 [INFO] [stdout] | [INFO] [stdout] 178 | fn reduction11(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: true, transparent: true}} [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/parse.rs:179:17 [INFO] [stdout] | [INFO] [stdout] 179 | fn reduction12(mut t: Pattern) -> Regexpr {Regexpr{pattern: t, looping: false, transparent: false}} [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/parse.rs:180:17 [INFO] [stdout] | [INFO] [stdout] 180 | fn reduction13(mut p: Pattern) -> Pattern {p } [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/parse.rs:181:17 [INFO] [stdout] | [INFO] [stdout] 181 | fn reduction14(mut s: char) -> Pattern {Pattern::Terminal(Term{chars: BTreeSet::from([s]), negate: false})} [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/parse.rs:182:17 [INFO] [stdout] | [INFO] [stdout] 182 | fn reduction15(mut a: Pattern, mut b: Vec) -> Pattern {Pattern::Or(Box::new(a),Box::new(Pattern::Group(b))) } [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/parse.rs:182:33 [INFO] [stdout] | [INFO] [stdout] 182 | fn reduction15(mut a: Pattern, mut b: Vec) -> Pattern {Pattern::Or(Box::new(a),Box::new(Pattern::Group(b))) } [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/parse.rs:183:42 [INFO] [stdout] | [INFO] [stdout] 183 | fn reduction16(mut stack: Vec, mut e: Regexpr) -> Vec {stack.push(e); stack} [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/parse.rs:184:17 [INFO] [stdout] | [INFO] [stdout] 184 | fn reduction17(mut t: Vec) -> Pattern {Pattern::Group(t) } [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EOF` is never constructed [INFO] [stdout] --> src/parse.rs:8:2 [INFO] [stdout] | [INFO] [stdout] 7 | #[logos(skip " ")]pub enum Token { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] 8 | EOF, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DFAState` is never constructed [INFO] [stdout] --> src/automaton.rs:219:12 [INFO] [stdout] | [INFO] [stdout] 219 | pub struct DFAState { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `DFA` is never constructed [INFO] [stdout] --> src/automaton.rs:224:12 [INFO] [stdout] | [INFO] [stdout] 224 | pub struct DFA { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::collections::btree_set::Union` that must be used [INFO] [stdout] --> src/parse.rs:173:85 [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {stack.union(&s); stack} [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this returns the union as an iterator, without modifying either input set [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 173 | fn reduction6(mut stack: BTreeSet, mut s: BTreeSet) -> BTreeSet {let _ = stack.union(&s); stack} [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 47.35s [INFO] running `Command { std: "docker" "inspect" "c01bc8f4324080936fd48c7a5271106e1b48e92ddd8df9ecdb3ee9133d5841a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c01bc8f4324080936fd48c7a5271106e1b48e92ddd8df9ecdb3ee9133d5841a1", kill_on_drop: false }` [INFO] [stdout] c01bc8f4324080936fd48c7a5271106e1b48e92ddd8df9ecdb3ee9133d5841a1