[INFO] cloning repository https://github.com/russell0430/rust_ast [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/russell0430/rust_ast" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frussell0430%2Frust_ast", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frussell0430%2Frust_ast'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c33681783b6c3029b01dd9c983a869dbb518be52 [INFO] checking russell0430/rust_ast against try#901e6d56697c79b2e80df6a487b2318ec6f57ee3 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frussell0430%2Frust_ast" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/russell0430/rust_ast on toolchain 901e6d56697c79b2e80df6a487b2318ec6f57ee3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/russell0430/rust_ast [INFO] finished tweaking git repo https://github.com/russell0430/rust_ast [INFO] tweaked toml for git repo https://github.com/russell0430/rust_ast written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/russell0430/rust_ast 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" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: alias [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking russell0430/rust_ast against try#901e6d56697c79b2e80df6a487b2318ec6f57ee3 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frussell0430%2Frust_ast" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/russell0430/rust_ast on toolchain 901e6d56697c79b2e80df6a487b2318ec6f57ee3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/russell0430/rust_ast [INFO] finished tweaking git repo https://github.com/russell0430/rust_ast [INFO] tweaked toml for git repo https://github.com/russell0430/rust_ast written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/russell0430/rust_ast 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" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: alias [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5b447a2de18176185fe586e2c038f9533ff34bf668c02bb6e1a1f9eceba6e277 [INFO] running `Command { std: "docker" "start" "-a" "5b447a2de18176185fe586e2c038f9533ff34bf668c02bb6e1a1f9eceba6e277", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5b447a2de18176185fe586e2c038f9533ff34bf668c02bb6e1a1f9eceba6e277", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5b447a2de18176185fe586e2c038f9533ff34bf668c02bb6e1a1f9eceba6e277", kill_on_drop: false }` [INFO] [stdout] 5b447a2de18176185fe586e2c038f9533ff34bf668c02bb6e1a1f9eceba6e277 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 49bc7431a327037636e94405503f102c66c204a119746ddd90559cf8d39b3c2a [INFO] running `Command { std: "docker" "start" "-a" "49bc7431a327037636e94405503f102c66c204a119746ddd90559cf8d39b3c2a", kill_on_drop: false }` [INFO] [stderr] warning: unused manifest key: alias [INFO] [stderr] Checking ast v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `tokenizer::Tokenizer` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use tokenizer::Tokenizer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizer::Tokenizer` [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use tokenizer::Tokenizer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/parser.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | let mut local = if self.check_current_token_type(TokenType::As) { [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/parser.rs:115:21 [INFO] [stdout] | [INFO] [stdout] 115 | let mut local = if self.check_current_token_type(TokenType::As) { [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: multiple variants are never constructed [INFO] [stdout] --> src/node_types.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum NodeType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 5 | Program, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 6 | VariableDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 7 | FunctionDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 8 | Identifier, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 9 | BlockStatement, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 10 | ExpressionStatement, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 11 | ReturnStatement, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 12 | CallExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 13 | BinaryExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 14 | MemberExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 15 | FunctionExpression, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 16 | Literal, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 17 | ImportDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 18 | ImportSpecifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 19 | ImportDefaultSpecifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 20 | ImportNamespaceSpecifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 21 | ExportDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | ExportSpecifier, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 23 | ExportDefaultDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 24 | ExportNamedDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 25 | ExportAllDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 26 | VariableDeclarator, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `FunctionType` is never used [INFO] [stdout] --> src/node_types.rs:58:10 [INFO] [stdout] | [INFO] [stdout] 58 | pub enum FunctionType { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionType` 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: struct `Program` is never constructed [INFO] [stdout] --> src/node_types.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct Program { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Program` 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 `Identifier` and `MemberExpression` are never constructed [INFO] [stdout] --> src/node_types.rs:104:5 [INFO] [stdout] | [INFO] [stdout] 103 | pub enum MemberObject { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 104 | Identifier(Identifier), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 105 | MemberExpression(MemberExpression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MemberObject` 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 `Expression` and `Identifier` are never constructed [INFO] [stdout] --> src/node_types.rs:130:5 [INFO] [stdout] | [INFO] [stdout] 129 | pub enum FunctionParam { [INFO] [stdout] | ------------- variants in this enum [INFO] [stdout] 130 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 131 | Identifier(Identifier), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionParam` 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 `new` is never used [INFO] [stdout] --> src/node_types.rs:148:12 [INFO] [stdout] | [INFO] [stdout] 147 | impl FunctionExpression { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 148 | pub fn new(node: FunctionNode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/node_types.rs:163:12 [INFO] [stdout] | [INFO] [stdout] 162 | impl FunctionDeclaration { [INFO] [stdout] | ------------------------ associated function in this implementation [INFO] [stdout] 163 | pub fn new(node: FunctionNode) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Var`, `Let`, and `Const` are never constructed [INFO] [stdout] --> src/node_types.rs:179:5 [INFO] [stdout] | [INFO] [stdout] 178 | pub enum VariableKind { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] 179 | Var, [INFO] [stdout] | ^^^ [INFO] [stdout] 180 | Let, [INFO] [stdout] | ^^^ [INFO] [stdout] 181 | Const, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VariableKind` 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 `Expression` and `Literal` are never constructed [INFO] [stdout] --> src/node_types.rs:186:5 [INFO] [stdout] | [INFO] [stdout] 185 | pub enum ExpressionOrLiteral { [INFO] [stdout] | ------------------- variants in this enum [INFO] [stdout] 186 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 187 | Literal(Literal), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpressionOrLiteral` 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 `ImportSpecifier`, `ImportDefaultSpecifier`, and `ImportNameSpaceSpecifier` are never constructed [INFO] [stdout] --> src/node_types.rs:237:5 [INFO] [stdout] | [INFO] [stdout] 236 | pub enum MixedImportSpecifier { [INFO] [stdout] | -------------------- variants in this enum [INFO] [stdout] 237 | ImportSpecifier(ImportSpecifier), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 238 | ImportDefaultSpecifier(ImportDefaultSpecifier), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 239 | ImportNameSpaceSpecifier(ImportNameSpaceSpecifier), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `MixedImportSpecifier` 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 `Declaration` and `Expression` are never constructed [INFO] [stdout] --> src/node_types.rs:272:5 [INFO] [stdout] | [INFO] [stdout] 271 | pub enum DeclarationOrExpression { [INFO] [stdout] | ----------------------- variants in this enum [INFO] [stdout] 272 | Declaration(Declaration), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 273 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DeclarationOrExpression` 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 `ExportNamedDeclaration`, `ExportDefaultDeclaration`, and `ExportAllDeclaration` are never constructed [INFO] [stdout] --> src/node_types.rs:291:5 [INFO] [stdout] | [INFO] [stdout] 290 | pub enum ExportDeclaration { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 291 | ExportNamedDeclaration(ExportNamedDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 292 | ExportDefaultDeclaration(ExportDefaultDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 293 | ExportAllDeclaration(ExportAllDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExportDeclaration` 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: method `get_node` is never used [INFO] [stdout] --> src/node_types.rs:297:12 [INFO] [stdout] | [INFO] [stdout] 296 | impl ExportDeclaration { [INFO] [stdout] | ---------------------- method in this implementation [INFO] [stdout] 297 | pub fn get_node(&self) -> &Node { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `FunctionDeclaration`, `VariableDeclaration`, `ImportDeclaration`, and `ExportDeclaration` are never constructed [INFO] [stdout] --> src/node_types.rs:316:5 [INFO] [stdout] | [INFO] [stdout] 315 | pub enum Declaration { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] 316 | FunctionDeclaration(FunctionDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 317 | VariableDeclaration(VariableDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 318 | ImportDeclaration(ImportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 319 | ExportDeclaration(ExportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Declaration` 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: multiple variants are never constructed [INFO] [stdout] --> src/node_types.rs:330:5 [INFO] [stdout] | [INFO] [stdout] 329 | pub enum Statement { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 330 | ImportDeclaration(ImportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 331 | ExportDeclaration(ExportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 332 | VariableDeclaration(VariableDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 333 | FunctionDeclaration(FunctionDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 334 | ExpressionStatement(ExpressionStatement), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 335 | BlockStatement(BlockStatement), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 336 | ReturnStatement(ReturnStatement), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` 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: method `get_node` is never used [INFO] [stdout] --> src/node_types.rs:340:12 [INFO] [stdout] | [INFO] [stdout] 339 | impl Statement { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 340 | pub fn get_node(&self) -> &Node { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `CallExpression`, `MemberExpression`, `Liternal`, `BinaryExpression`, `FunctionExpression`, and `Identifier` are never constructed [INFO] [stdout] --> src/node_types.rs:355:5 [INFO] [stdout] | [INFO] [stdout] 354 | pub enum Expression { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 355 | CallExpression(CallExpression), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 356 | MemberExpression(MemberExpression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 357 | Liternal(Literal), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 358 | BinaryExpression(BinaryExpression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 359 | FunctionExpression(FunctionExpression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 360 | Identifier(Identifier), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` 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: method `get_node` is never used [INFO] [stdout] --> src/node_types.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 364 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 365 | pub fn get_node(&self) -> &Node { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/node_types.rs:417:12 [INFO] [stdout] | [INFO] [stdout] 416 | impl Program { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 417 | pub fn new(start: usize, end: usize, body: Vec) -> Program { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Parser` is never constructed [INFO] [stdout] --> src/parser.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct Parser { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/parser.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Parser { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 17 | pub fn new(tokens: Vec) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 24 | pub fn parse(&mut self) -> Program { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | fn parse_program(&mut self) -> Program { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | fn is_end(&self) -> bool { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | fn go_next( [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 68 | fn parse_literal(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | fn parse_import_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | fn parse_export_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 314 | fn is_variable_declaration_end(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | fn parse_variable_declaration(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 394 | fn parse_identify(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 411 | fn parse_function_declaration(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 434 | fn parse_expression(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | fn parse_function_expression(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | fn parse_params(&mut self, mode: Option) -> Result, String> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 516 | fn parse_call_expression(&mut self, callee: Expression) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 544 | fn parse_member_expression( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 568 | fn parse_binary_operator_expression( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 591 | fn parse_block_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 612 | fn parse_expression_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 626 | fn parse_return_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 646 | fn parse_statement(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 672 | fn check_current_token_type(&self, token_types: impl IntoIterator) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 688 | fn skip_semicolon(&mut self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 695 | fn get_current_token(&self) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 698 | fn get_previous_token(&self) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 702 | fn get_next_token(&self) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `parse` is never used [INFO] [stdout] --> src/parser.rs:708:8 [INFO] [stdout] | [INFO] [stdout] 708 | pub fn parse(code: &str) -> Result { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/tokenizer.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum TokenType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 6 | Let, [INFO] [stdout] | ^^^ [INFO] [stdout] 7 | Const, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | Var, [INFO] [stdout] | ^^^ [INFO] [stdout] 9 | Assign, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 10 | Function, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 11 | Number, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | Operator, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 13 | Identifier, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 14 | LeftParen, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 15 | RightParen, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 16 | LeftCurly, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 17 | RightCurly, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 18 | Comma, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | Dot, [INFO] [stdout] | ^^^ [INFO] [stdout] 20 | Semicolon, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 21 | StringLiteral, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 22 | Return, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 23 | Import, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 24 | Export, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 25 | Default, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 26 | From, [INFO] [stdout] | ^^^^ [INFO] [stdout] 27 | As, [INFO] [stdout] | ^^ [INFO] [stdout] 28 | Asterisk, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TokenType` 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: enum `ScanMode` is never used [INFO] [stdout] --> src/tokenizer.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 74 | pub enum ScanMode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ScanMode` 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: struct `Token` is never constructed [INFO] [stdout] --> src/tokenizer.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 81 | pub struct Token { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` 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: struct `Tokenizer` is never constructed [INFO] [stdout] --> src/tokenizer.rs:338:12 [INFO] [stdout] | [INFO] [stdout] 338 | pub struct Tokenizer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `Quotation_Tokens` is never used [INFO] [stdout] --> src/tokenizer.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | static Quotation_Tokens: &[char] = &['\'', '"', '`']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `Known_Char_Tokens` is never used [INFO] [stdout] --> src/tokenizer.rs:346:8 [INFO] [stdout] | [INFO] [stdout] 346 | static Known_Char_Tokens: &[char] = &['(', ')', '{', '}', '.', ';', ',', '*', '=']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OPERATOR_TOKENS` is never used [INFO] [stdout] --> src/tokenizer.rs:347:8 [INFO] [stdout] | [INFO] [stdout] 347 | static OPERATOR_TOKENS: &[&str] = &["+", "-", "*", "/", "%", "^", "&", "|", "~", "<<", ">>"]; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/tokenizer.rs:349:12 [INFO] [stdout] | [INFO] [stdout] 348 | impl Tokenizer { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 349 | pub fn new(input: &str) -> Tokenizer { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 358 | pub fn tokenize(&mut self) -> Result, String> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 440 | fn scan_identifier(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 473 | fn scan_string_literal(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 496 | fn scan_number(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 521 | fn get_current_char(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 528 | fn get_next_char(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 535 | fn get_previous_token(&mut self) -> Option<&Token> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `let_token` is never used [INFO] [stdout] --> src/tokenizer.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 116 | pub fn let_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `const_token` is never used [INFO] [stdout] --> src/tokenizer.rs:126:12 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn const_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `var_token` is never used [INFO] [stdout] --> src/tokenizer.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn var_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `function_token` is never used [INFO] [stdout] --> src/tokenizer.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn function_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `number_token` is never used [INFO] [stdout] --> src/tokenizer.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub fn number_token(start: usize, value: String) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `operator_token` is never used [INFO] [stdout] --> src/tokenizer.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn operator_token(start: usize, value: String) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `asterisk_token` is never used [INFO] [stdout] --> src/tokenizer.rs:174:12 [INFO] [stdout] | [INFO] [stdout] 174 | pub fn asterisk_token(start: usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `assign_token` is never used [INFO] [stdout] --> src/tokenizer.rs:184:12 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn assign_token(start: usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `import_token` is never used [INFO] [stdout] --> src/tokenizer.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn import_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `export_token` is never used [INFO] [stdout] --> src/tokenizer.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 203 | pub fn export_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `from_token` is never used [INFO] [stdout] --> src/tokenizer.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub fn from_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `as_token` is never used [INFO] [stdout] --> src/tokenizer.rs:221:12 [INFO] [stdout] | [INFO] [stdout] 221 | pub fn as_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `default_token` is never used [INFO] [stdout] --> src/tokenizer.rs:230:12 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn default_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `return_token` is never used [INFO] [stdout] --> src/tokenizer.rs:239:12 [INFO] [stdout] | [INFO] [stdout] 239 | pub fn return_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `comma_token` is never used [INFO] [stdout] --> src/tokenizer.rs:248:12 [INFO] [stdout] | [INFO] [stdout] 248 | pub fn comma_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `left_paren_token` is never used [INFO] [stdout] --> src/tokenizer.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | pub fn left_paren_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `right_paren_token` is never used [INFO] [stdout] --> src/tokenizer.rs:267:12 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn right_paren_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `left_curly_token` is never used [INFO] [stdout] --> src/tokenizer.rs:277:12 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn left_curly_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `right_curly_token` is never used [INFO] [stdout] --> src/tokenizer.rs:287:12 [INFO] [stdout] | [INFO] [stdout] 287 | pub fn right_curly_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `dot_token` is never used [INFO] [stdout] --> src/tokenizer.rs:297:12 [INFO] [stdout] | [INFO] [stdout] 297 | pub fn dot_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `semicolon_token` is never used [INFO] [stdout] --> src/tokenizer.rs:307:12 [INFO] [stdout] | [INFO] [stdout] 307 | pub fn semicolon_token() -> fn(usize) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `string_literal_token` is never used [INFO] [stdout] --> src/tokenizer.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 317 | pub fn string_literal_token(start: usize, value: String, raw: String) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `identifier_token` is never used [INFO] [stdout] --> src/tokenizer.rs:327:12 [INFO] [stdout] | [INFO] [stdout] 327 | pub fn identifier_token(start: usize, value: String) -> Token { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/node_types.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | write!(f, "{}", self.node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `defaultSpecifier` should have a snake case name [INFO] [stdout] --> src/parser.rs:95:17 [INFO] [stdout] | [INFO] [stdout] 95 | let defaultSpecifier = ImportDefaultSpecifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_specifier` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `importNameSpaceSpecifier` should have a snake case name [INFO] [stdout] --> src/parser.rs:142:17 [INFO] [stdout] | [INFO] [stdout] 142 | let importNameSpaceSpecifier = ImportNameSpaceSpecifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `import_name_space_specifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 169 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `exportDeclaration` should have a snake case name [INFO] [stdout] --> src/parser.rs:174:17 [INFO] [stdout] | [INFO] [stdout] 174 | let mut exportDeclaration = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `export_declaration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 308 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:564:9 [INFO] [stdout] | [INFO] [stdout] 564 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 564 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `Quotation_Tokens` should have an upper case name [INFO] [stdout] --> src/tokenizer.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | static Quotation_Tokens: &[char] = &['\'', '"', '`']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUOTATION_TOKENS` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `Known_Char_Tokens` should have an upper case name [INFO] [stdout] --> src/tokenizer.rs:346:8 [INFO] [stdout] | [INFO] [stdout] 346 | static Known_Char_Tokens: &[char] = &['(', ')', '{', '}', '.', ';', ',', '*', '=']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNOWN_CHAR_TOKENS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `startIndex` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | let startIndex = self.current_index; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `start_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `_setScanMode` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:538:8 [INFO] [stdout] | [INFO] [stdout] 538 | fn _setScanMode(&mut self, mode: &ScanMode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `_set_scan_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `_resetScanMode` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:541:8 [INFO] [stdout] | [INFO] [stdout] 541 | fn _resetScanMode(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `_reset_scan_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/__test__/tokenizer_test.rs:70:13 [INFO] [stdout] | [INFO] [stdout] 70 | let mut input = "123.45"; [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `input` [INFO] [stdout] --> src/__test__/parser_test.rs:471:13 [INFO] [stdout] | [INFO] [stdout] 471 | let input = "export default function() {}"; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_input` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expected` [INFO] [stdout] --> src/__test__/parser_test.rs:472:13 [INFO] [stdout] | [INFO] [stdout] 472 | let expected = Program::new( [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expected` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `ExportDeclaration` is never constructed [INFO] [stdout] --> src/node_types.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum NodeType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 21 | ExportDeclaration, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ImportDeclaration` and `ExportDeclaration` are never constructed [INFO] [stdout] --> src/node_types.rs:318:5 [INFO] [stdout] | [INFO] [stdout] 315 | pub enum Declaration { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 318 | ImportDeclaration(ImportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] 319 | ExportDeclaration(ExportDeclaration), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Declaration` 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: method `get_node` is never used [INFO] [stdout] --> src/node_types.rs:365:12 [INFO] [stdout] | [INFO] [stdout] 364 | impl Expression { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 365 | pub fn get_node(&self) -> &Node { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_reexport` is never used [INFO] [stdout] --> src/__test__/tokenizer_test.rs:456:8 [INFO] [stdout] | [INFO] [stdout] 456 | fn test_reexport() { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `test_export_declaration` is never used [INFO] [stdout] --> src/__test__/parser_test.rs:386:8 [INFO] [stdout] | [INFO] [stdout] 386 | fn test_export_declaration() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/node_types.rs:250:9 [INFO] [stdout] | [INFO] [stdout] 250 | write!(f, "{}", self.node); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `defaultSpecifier` should have a snake case name [INFO] [stdout] --> src/parser.rs:95:17 [INFO] [stdout] | [INFO] [stdout] 95 | let defaultSpecifier = ImportDefaultSpecifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `default_specifier` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `importNameSpaceSpecifier` should have a snake case name [INFO] [stdout] --> src/parser.rs:142:17 [INFO] [stdout] | [INFO] [stdout] 142 | let importNameSpaceSpecifier = ImportNameSpaceSpecifier { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `import_name_space_specifier` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:169:9 [INFO] [stdout] | [INFO] [stdout] 169 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 169 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `exportDeclaration` should have a snake case name [INFO] [stdout] --> src/parser.rs:174:17 [INFO] [stdout] | [INFO] [stdout] 174 | let mut exportDeclaration = None; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `export_declaration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 308 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/parser.rs:564:9 [INFO] [stdout] | [INFO] [stdout] 564 | self.skip_semicolon(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 564 | let _ = self.skip_semicolon(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `Quotation_Tokens` should have an upper case name [INFO] [stdout] --> src/tokenizer.rs:345:8 [INFO] [stdout] | [INFO] [stdout] 345 | static Quotation_Tokens: &[char] = &['\'', '"', '`']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `QUOTATION_TOKENS` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static variable `Known_Char_Tokens` should have an upper case name [INFO] [stdout] --> src/tokenizer.rs:346:8 [INFO] [stdout] | [INFO] [stdout] 346 | static Known_Char_Tokens: &[char] = &['(', ')', '{', '}', '.', ';', ',', '*', '=']; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to upper case: `KNOWN_CHAR_TOKENS` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `startIndex` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | let startIndex = self.current_index; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `start_index` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `_setScanMode` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:538:8 [INFO] [stdout] | [INFO] [stdout] 538 | fn _setScanMode(&mut self, mode: &ScanMode) { [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `_set_scan_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `_resetScanMode` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:541:8 [INFO] [stdout] | [INFO] [stdout] 541 | fn _resetScanMode(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to snake case: `_reset_scan_mode` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.25s [INFO] running `Command { std: "docker" "inspect" "49bc7431a327037636e94405503f102c66c204a119746ddd90559cf8d39b3c2a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49bc7431a327037636e94405503f102c66c204a119746ddd90559cf8d39b3c2a", kill_on_drop: false }` [INFO] [stdout] 49bc7431a327037636e94405503f102c66c204a119746ddd90559cf8d39b3c2a