[INFO] cloning repository https://github.com/INDA22PlusPlus/dstrombe-compiler [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/INDA22PlusPlus/dstrombe-compiler" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FINDA22PlusPlus%2Fdstrombe-compiler", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FINDA22PlusPlus%2Fdstrombe-compiler'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 610d5fb3559c1d4024b75bbe421b247500ca9c6e [INFO] checking INDA22PlusPlus/dstrombe-compiler against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FINDA22PlusPlus%2Fdstrombe-compiler" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/INDA22PlusPlus/dstrombe-compiler [INFO] finished tweaking git repo https://github.com/INDA22PlusPlus/dstrombe-compiler [INFO] tweaked toml for git repo https://github.com/INDA22PlusPlus/dstrombe-compiler written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/INDA22PlusPlus/dstrombe-compiler on toolchain b1f2594eac607c1f051534800237eeedb5590a49 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/INDA22PlusPlus/dstrombe-compiler 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] be98f3dba9d132a62fff47a64a368a57ff05edaed90eb5b6b40ac49a7ee7bc91 [INFO] running `Command { std: "docker" "start" "-a" "be98f3dba9d132a62fff47a64a368a57ff05edaed90eb5b6b40ac49a7ee7bc91", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "be98f3dba9d132a62fff47a64a368a57ff05edaed90eb5b6b40ac49a7ee7bc91", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "be98f3dba9d132a62fff47a64a368a57ff05edaed90eb5b6b40ac49a7ee7bc91", kill_on_drop: false }` [INFO] [stdout] be98f3dba9d132a62fff47a64a368a57ff05edaed90eb5b6b40ac49a7ee7bc91 [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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a9a3be05cc055dbed6ed0233bf4c55ae311e0bb7d7800f8d3972992a35c36c28 [INFO] running `Command { std: "docker" "start" "-a" "a9a3be05cc055dbed6ed0233bf4c55ae311e0bb7d7800f8d3972992a35c36c28", kill_on_drop: false }` [INFO] [stderr] Checking dstrombe-compiler v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [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::cmp::Ordering` [INFO] [stdout] --> src/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Constant::*` [INFO] [stdout] --> src/parser.rs:5:115 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::token::{Token, AssignmentOperator::*, BinaryOperator::*, UnaryOperator::*, Keyword::*, SpecialChar::*, Constant::*, Identi... [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/parser.rs:381:25 [INFO] [stdout] | [INFO] [stdout] 381 | for (matching_rulepair) in vec_of_rules { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 381 - for (matching_rulepair) in vec_of_rules { [INFO] [stdout] 381 + for matching_rulepair in vec_of_rules { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:388:27 [INFO] [stdout] | [INFO] [stdout] 388 | if(parsed.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 388 - if(parsed.is_some()) { [INFO] [stdout] 388 + if parsed.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:408:15 [INFO] [stdout] | [INFO] [stdout] 408 | if(matched_node.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 408 - if(matched_node.is_some()) { [INFO] [stdout] 408 + if matched_node.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:418:26 [INFO] [stdout] | [INFO] [stdout] 418 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 418 - match(matched_node) { [INFO] [stdout] 418 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/parser.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::collections::HashMap; [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::cmp::Ordering` [INFO] [stdout] --> src/parser.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::cmp::Ordering; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Constant::*` [INFO] [stdout] --> src/parser.rs:5:115 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::token::{Token, AssignmentOperator::*, BinaryOperator::*, UnaryOperator::*, Keyword::*, SpecialChar::*, Constant::*, Identi... [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:432:26 [INFO] [stdout] | [INFO] [stdout] 432 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 432 - match(matched_node) { [INFO] [stdout] 432 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around pattern [INFO] [stdout] --> src/parser.rs:381:25 [INFO] [stdout] | [INFO] [stdout] 381 | for (matching_rulepair) in vec_of_rules { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 381 - for (matching_rulepair) in vec_of_rules { [INFO] [stdout] 381 + for matching_rulepair in vec_of_rules { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:447:26 [INFO] [stdout] | [INFO] [stdout] 447 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 447 - match(matched_node) { [INFO] [stdout] 447 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:588:37 [INFO] [stdout] | [INFO] [stdout] 588 | let is_not_whitespace = (*c != ' ' && *c != '\t' && *c != '\n'); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 588 - let is_not_whitespace = (*c != ' ' && *c != '\t' && *c != '\n'); [INFO] [stdout] 588 + let is_not_whitespace = *c != ' ' && *c != '\t' && *c != '\n' ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:592:37 [INFO] [stdout] | [INFO] [stdout] 592 | end_of_whitespace = (end_of_whitespace || is_not_whitespace); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 592 - end_of_whitespace = (end_of_whitespace || is_not_whitespace); [INFO] [stdout] 592 + end_of_whitespace = end_of_whitespace || is_not_whitespace ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:388:27 [INFO] [stdout] | [INFO] [stdout] 388 | if(parsed.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 388 - if(parsed.is_some()) { [INFO] [stdout] 388 + if parsed.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:602:48 [INFO] [stdout] | [INFO] [stdout] 602 | advance_to_next_rule = (rule_char_idx == (string.len() - 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 602 - advance_to_next_rule = (rule_char_idx == (string.len() - 1)); [INFO] [stdout] 602 + advance_to_next_rule = rule_char_idx == (string.len() - 1) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:633:39 [INFO] [stdout] | [INFO] [stdout] 633 | ... if(rule_char_idx == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 633 - if(rule_char_idx == 0) { [INFO] [stdout] 633 + if rule_char_idx == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:640:34 [INFO] [stdout] | [INFO] [stdout] 640 | ... match(chars[curr_idx + 1]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 640 - match(chars[curr_idx + 1]) { [INFO] [stdout] 640 + match chars[curr_idx + 1] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:408:15 [INFO] [stdout] | [INFO] [stdout] 408 | if(matched_node.is_some()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 408 - if(matched_node.is_some()) { [INFO] [stdout] 408 + if matched_node.is_some() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:658:35 [INFO] [stdout] | [INFO] [stdout] 658 | ... if(rule_char_idx == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 658 - if(rule_char_idx == 0) { [INFO] [stdout] 658 + if rule_char_idx == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:665:30 [INFO] [stdout] | [INFO] [stdout] 665 | match(chars[curr_idx + 1]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 665 - match(chars[curr_idx + 1]) { [INFO] [stdout] 665 + match chars[curr_idx + 1] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:677:19 [INFO] [stdout] | [INFO] [stdout] 677 | if(advance_to_next_rule) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 677 - if(advance_to_next_rule) { [INFO] [stdout] 677 + if advance_to_next_rule { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:418:26 [INFO] [stdout] | [INFO] [stdout] 418 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 418 - match(matched_node) { [INFO] [stdout] 418 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:680:24 [INFO] [stdout] | [INFO] [stdout] 680 | if (rule_word_idx == rules.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 680 - if (rule_word_idx == rules.len()) { [INFO] [stdout] 680 + if rule_word_idx == rules.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:432:26 [INFO] [stdout] | [INFO] [stdout] 432 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 432 - match(matched_node) { [INFO] [stdout] 432 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Parser`, `Tokenizer`, `asm_emitter::AsmCtx`, and `token::Token` [INFO] [stdout] --> src/test.rs:1:36 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{*, parser::{TokenData, Tokenizer, Parser}, token::Token, asm_emitter::AsmCtx}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/main.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | mod test; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `asm_emitter` [INFO] [stdout] --> src/test.rs:2:13 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{asm_emitter}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module [INFO] [stdout] --> src/main.rs:3:1 [INFO] [stdout] | [INFO] [stdout] 3 | mod test; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:447:26 [INFO] [stdout] | [INFO] [stdout] 447 | match(matched_node) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 447 - match(matched_node) { [INFO] [stdout] 447 + match matched_node { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AssignmentOperator::*`, `BinaryOperator::*`, `Constant::*`, `Identifier::*`, `Keyword::*`, `SpecialChar::*`, and `UnaryOperator::*` [INFO] [stdout] --> src/asm_emitter.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | ...{Token, AssignmentOperator::*, BinaryOperator::*, UnaryOperator::*, Keyword::*, SpecialChar::*, Constant::*, Identifier::*}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `*` and `Grammar` [INFO] [stdout] --> src/asm_emitter.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::parser::{*, GrammarType, Grammar, SyntaxNode}; [INFO] [stdout] | ^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `asm_emitter::AsmCtx` and `token::Token` [INFO] [stdout] --> src/main.rs:5:53 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{parser::{TokenData, Tokenizer, Parser}, token::Token, asm_emitter::AsmCtx}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:588:37 [INFO] [stdout] | [INFO] [stdout] 588 | let is_not_whitespace = (*c != ' ' && *c != '\t' && *c != '\n'); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 588 - let is_not_whitespace = (*c != ' ' && *c != '\t' && *c != '\n'); [INFO] [stdout] 588 + let is_not_whitespace = *c != ' ' && *c != '\t' && *c != '\n' ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:592:37 [INFO] [stdout] | [INFO] [stdout] 592 | end_of_whitespace = (end_of_whitespace || is_not_whitespace); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 592 - end_of_whitespace = (end_of_whitespace || is_not_whitespace); [INFO] [stdout] 592 + end_of_whitespace = end_of_whitespace || is_not_whitespace ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/parser.rs:602:48 [INFO] [stdout] | [INFO] [stdout] 602 | advance_to_next_rule = (rule_char_idx == (string.len() - 1)); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 602 - advance_to_next_rule = (rule_char_idx == (string.len() - 1)); [INFO] [stdout] 602 + advance_to_next_rule = rule_char_idx == (string.len() - 1) ; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:633:39 [INFO] [stdout] | [INFO] [stdout] 633 | ... if(rule_char_idx == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 633 - if(rule_char_idx == 0) { [INFO] [stdout] 633 + if rule_char_idx == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:640:34 [INFO] [stdout] | [INFO] [stdout] 640 | ... match(chars[curr_idx + 1]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 640 - match(chars[curr_idx + 1]) { [INFO] [stdout] 640 + match chars[curr_idx + 1] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:658:35 [INFO] [stdout] | [INFO] [stdout] 658 | ... if(rule_char_idx == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 658 - if(rule_char_idx == 0) { [INFO] [stdout] 658 + if rule_char_idx == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `match` scrutinee expression [INFO] [stdout] --> src/parser.rs:665:30 [INFO] [stdout] | [INFO] [stdout] 665 | match(chars[curr_idx + 1]) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 665 - match(chars[curr_idx + 1]) { [INFO] [stdout] 665 + match chars[curr_idx + 1] { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:677:19 [INFO] [stdout] | [INFO] [stdout] 677 | if(advance_to_next_rule) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 677 - if(advance_to_next_rule) { [INFO] [stdout] 677 + if advance_to_next_rule { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/parser.rs:680:24 [INFO] [stdout] | [INFO] [stdout] 680 | if (rule_word_idx == rules.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 680 - if (rule_word_idx == rules.len()) { [INFO] [stdout] 680 + if rule_word_idx == rules.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `asm_emitter::AsmCtx` and `token::Token` [INFO] [stdout] --> src/test.rs:1:56 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::{*, parser::{TokenData, Tokenizer, Parser}, token::Token, asm_emitter::AsmCtx}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AssignmentOperator::*`, `BinaryOperator::*`, `Constant::*`, `Identifier::*`, `Keyword::*`, `SpecialChar::*`, and `UnaryOperator::*` [INFO] [stdout] --> src/asm_emitter.rs:4:27 [INFO] [stdout] | [INFO] [stdout] 4 | ...{Token, AssignmentOperator::*, BinaryOperator::*, UnaryOperator::*, Keyword::*, SpecialChar::*, Constant::*, Identifier::*}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `*` and `Grammar` [INFO] [stdout] --> src/asm_emitter.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::parser::{*, GrammarType, Grammar, SyntaxNode}; [INFO] [stdout] | ^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `asm_emitter::AsmCtx` and `token::Token` [INFO] [stdout] --> src/main.rs:5:53 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{parser::{TokenData, Tokenizer, Parser}, token::Token, asm_emitter::AsmCtx}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:328:13 [INFO] [stdout] | [INFO] [stdout] 328 | let mut grammar_to_check = grammar.grammar_type; [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/parser.rs:328:13 [INFO] [stdout] | [INFO] [stdout] 328 | let mut grammar_to_check = grammar.grammar_type; [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/parser.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | let mut rules : Vec = grammar.clone().grammar_pattern; [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/parser.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | let mut rules : Vec = grammar.clone().grammar_pattern; [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/parser.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let mut matches = 0; [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/parser.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let mut matches = 0; [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matches` [INFO] [stdout] --> src/parser.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let mut matches = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `matches` [INFO] [stdout] --> src/parser.rs:333:13 [INFO] [stdout] | [INFO] [stdout] 333 | let mut matches = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_matches` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:556:13 [INFO] [stdout] | [INFO] [stdout] 556 | let mut parse_result = self.parse_ahead(scope_grammar, tokens, 0); [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/parser.rs:556:13 [INFO] [stdout] | [INFO] [stdout] 556 | let mut parse_result = self.parse_ahead(scope_grammar, tokens, 0); [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/parser.rs:572:13 [INFO] [stdout] | [INFO] [stdout] 572 | let mut token_to_parse = &rulepair.0; [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/parser.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | let mut rules : Vec = rulepair.1.to_vec(); [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/parser.rs:584:13 [INFO] [stdout] | [INFO] [stdout] 584 | let mut fudge = 0; [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/parser.rs:572:13 [INFO] [stdout] | [INFO] [stdout] 572 | let mut token_to_parse = &rulepair.0; [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/parser.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | let mut rules : Vec = rulepair.1.to_vec(); [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/parser.rs:584:13 [INFO] [stdout] | [INFO] [stdout] 584 | let mut fudge = 0; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `group_buf` [INFO] [stdout] --> src/parser.rs:710:13 [INFO] [stdout] | [INFO] [stdout] 710 | let mut group_buf : Vec; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_group_buf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/parser.rs:713:17 [INFO] [stdout] | [INFO] [stdout] 713 | for (i, c) in chars.into_iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `group_buf` [INFO] [stdout] --> src/parser.rs:710:13 [INFO] [stdout] | [INFO] [stdout] 710 | let mut group_buf : Vec; [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_group_buf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `c` [INFO] [stdout] --> src/parser.rs:713:17 [INFO] [stdout] | [INFO] [stdout] 713 | for (i, c) in chars.into_iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_c` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/test.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | let mut testtokenizer = parser::Tokenizer {}; [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/test.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | let mut testtokenizer = parser::Tokenizer {}; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokenizer` [INFO] [stdout] --> src/test.rs:44:9 [INFO] [stdout] | [INFO] [stdout] 44 | let tokenizer : Tokenizer = Tokenizer { }; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokenizer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokenizer` [INFO] [stdout] --> src/test.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 58 | let tokenizer : Tokenizer = Tokenizer { }; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokenizer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `asm` [INFO] [stdout] --> src/test.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | let asm = asm_ctx.emit(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_asm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kw` [INFO] [stdout] --> src/asm_emitter.rs:224:39 [INFO] [stdout] | [INFO] [stdout] 224 | token::Token::Keyword(kw) => { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_kw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/asm_emitter.rs:238:25 [INFO] [stdout] | [INFO] [stdout] 238 | let offset = stack_context.scope_stack.len(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `kw` [INFO] [stdout] --> src/asm_emitter.rs:224:39 [INFO] [stdout] | [INFO] [stdout] 224 | token::Token::Keyword(kw) => { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_kw` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/asm_emitter.rs:238:25 [INFO] [stdout] | [INFO] [stdout] 238 | let offset = stack_context.scope_stack.len(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | let mut testtokenizer = parser::Tokenizer {}; [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/main.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | let mut testtokenizer = parser::Tokenizer {}; [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokenizer` [INFO] [stdout] --> src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let tokenizer : Tokenizer = Tokenizer { }; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokenizer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokenizer` [INFO] [stdout] --> src/main.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 29 | let tokenizer : Tokenizer = Tokenizer { }; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokenizer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `asm` [INFO] [stdout] --> src/main.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | let asm = asm_ctx.emit(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_asm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `asm` [INFO] [stdout] --> src/main.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 33 | let asm = asm_ctx.emit(); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_asm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Exactly` is never constructed [INFO] [stdout] --> src/parser.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 28 | enum FreqRule { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 31 | Exactly(usize), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FreqRule` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/parser.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 318 | impl Parser { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 319 | [INFO] [stdout] 320 | pub fn parse() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LBracket` and `RBracket` are never constructed [INFO] [stdout] --> src/token.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum SpecialChar { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 32 | LBracket, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 33 | RBracket, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SpecialChar` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Exactly` is never constructed [INFO] [stdout] --> src/parser.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 28 | enum FreqRule { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 31 | Exactly(usize), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FreqRule` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LShift`, `RShift`, `Greater`, `Less`, and `Xor` are never constructed [INFO] [stdout] --> src/token.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum BinaryOperator { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | LShift, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 48 | RShift, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 49 | [INFO] [stdout] 50 | Greater, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 51 | Less, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | Xor, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperator` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `parse` is never used [INFO] [stdout] --> src/parser.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 318 | impl Parser { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 319 | [INFO] [stdout] 320 | pub fn parse() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LBracket` and `RBracket` are never constructed [INFO] [stdout] --> src/token.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub enum SpecialChar { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 32 | LBracket, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 33 | RBracket, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SpecialChar` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `LShift`, `RShift`, `Greater`, `Less`, and `Xor` are never constructed [INFO] [stdout] --> src/token.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub enum BinaryOperator { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 47 | LShift, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 48 | RShift, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 49 | [INFO] [stdout] 50 | Greater, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 51 | Less, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | Xor, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinaryOperator` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `tokenize_example` is never used [INFO] [stdout] --> src/test.rs:3:4 [INFO] [stdout] | [INFO] [stdout] 3 | fn tokenize_example () -> Vec{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.23s [INFO] running `Command { std: "docker" "inspect" "a9a3be05cc055dbed6ed0233bf4c55ae311e0bb7d7800f8d3972992a35c36c28", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a9a3be05cc055dbed6ed0233bf4c55ae311e0bb7d7800f8d3972992a35c36c28", kill_on_drop: false }` [INFO] [stdout] a9a3be05cc055dbed6ed0233bf4c55ae311e0bb7d7800f8d3972992a35c36c28