[INFO] cloning repository https://github.com/James1404/little-interpreter [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/James1404/little-interpreter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJames1404%2Flittle-interpreter", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJames1404%2Flittle-interpreter'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d874c4ec2a8fda21e4e31a46a48e814d6ef5c395 [INFO] checking James1404/little-interpreter against try#0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef for pr-147859 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJames1404%2Flittle-interpreter" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/James1404/little-interpreter [INFO] finished tweaking git repo https://github.com/James1404/little-interpreter [INFO] tweaked toml for git repo https://github.com/James1404/little-interpreter written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/James1404/little-interpreter on toolchain 0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/James1404/little-interpreter 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" "+0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2b8fbc439b25f932d1d3d2ca2f8a37c9f8507ae4fa3094ef4d40ae4032d19004 [INFO] running `Command { std: "docker" "start" "-a" "2b8fbc439b25f932d1d3d2ca2f8a37c9f8507ae4fa3094ef4d40ae4032d19004", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2b8fbc439b25f932d1d3d2ca2f8a37c9f8507ae4fa3094ef4d40ae4032d19004", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2b8fbc439b25f932d1d3d2ca2f8a37c9f8507ae4fa3094ef4d40ae4032d19004", kill_on_drop: false }` [INFO] [stdout] 2b8fbc439b25f932d1d3d2ca2f8a37c9f8507ae4fa3094ef4d40ae4032d19004 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+0269aeccce4fd29ce9ad0ebd47a62e584d7e25ef" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ac226521332073307eca707386524b5ce8b8af86f84f0b232d4e0ddf0c1fdef5 [INFO] running `Command { std: "docker" "start" "-a" "ac226521332073307eca707386524b5ce8b8af86f84f0b232d4e0ddf0c1fdef5", kill_on_drop: false }` [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Checking anstyle-query v1.1.5 [INFO] [stderr] Checking anstyle v1.0.13 [INFO] [stderr] Checking is_terminal_polyfill v1.70.2 [INFO] [stderr] Compiling fastrand v2.3.0 [INFO] [stderr] Checking colorchoice v1.0.4 [INFO] [stderr] Checking clap_lex v0.7.6 [INFO] [stderr] Checking anstyle-parse v0.2.7 [INFO] [stderr] Checking strum v0.27.2 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Compiling phf_shared v0.13.1 [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Compiling phf_generator v0.13.1 [INFO] [stderr] Checking clap_builder v4.5.53 [INFO] [stderr] Compiling derive_more-impl v2.1.1 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling phf_macros v0.13.1 [INFO] [stderr] Compiling strum_macros v0.27.2 [INFO] [stderr] Checking phf v0.13.1 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Checking derive_more v2.1.1 [INFO] [stderr] Checking little-interpreter v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `fs` [INFO] [stdout] --> src/lib.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fs, io, path::Path}; [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: `fs` [INFO] [stdout] --> src/lib.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fs, io, path::Path}; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (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/mod.rs:199:16 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn run(mut self) -> AST { [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/mod.rs:199:16 [INFO] [stdout] | [INFO] [stdout] 199 | pub fn run(mut self) -> AST { [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: variants `Function` and `Struct` are never constructed [INFO] [stdout] --> src/ast/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum TopLevelStatement { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 15 | Function(FunctionDecl), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | Struct(StructDecl), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StructField` is never constructed [INFO] [stdout] --> src/ast/mod.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct StructField(pub String); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Function` and `Struct` are never constructed [INFO] [stdout] --> src/ast/mod.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum TopLevelStatement { [INFO] [stdout] | ----------------- variants in this enum [INFO] [stdout] 15 | Function(FunctionDecl), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 16 | Struct(StructDecl), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Mod` is never constructed [INFO] [stdout] --> src/ast/expression.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum BinOp { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 15 | Mod, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `StructField` is never constructed [INFO] [stdout] --> src/ast/mod.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | pub struct StructField(pub String); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/ast/expression.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl BinOp { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 33 | pub fn precedence(self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Mod` is never constructed [INFO] [stdout] --> src/ast/expression.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum BinOp { [INFO] [stdout] | ----- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 15 | Mod, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Not` and `Negate` are never constructed [INFO] [stdout] --> src/ast/expression.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum UnaryOp { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 49 | #[display("!")] [INFO] [stdout] 50 | Not, [INFO] [stdout] | ^^^ [INFO] [stdout] 51 | #[display("-")] [INFO] [stdout] 52 | Negate, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/ast/expression.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl BinOp { [INFO] [stdout] | ---------- method in this implementation [INFO] [stdout] 33 | pub fn precedence(self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Assignment`, `Binary`, `Unary`, `Literal`, and `Identifier` are never constructed [INFO] [stdout] --> src/ast/expression.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub enum Expression { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 57 | #[display("{_0}")] [INFO] [stdout] 58 | Assignment(AssignmentExpr), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 59 | #[display("{lhs} {op} {rhs}")] [INFO] [stdout] 60 | Binary { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | Unary { value: Box, op: UnaryOp }, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 67 | #[display("{_0}")] [INFO] [stdout] 68 | Literal(Literal), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 69 | #[display("{_0}")] [INFO] [stdout] 70 | Identifier(Identifier), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Not` and `Negate` are never constructed [INFO] [stdout] --> src/ast/expression.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum UnaryOp { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 49 | #[display("!")] [INFO] [stdout] 50 | Not, [INFO] [stdout] | ^^^ [INFO] [stdout] 51 | #[display("-")] [INFO] [stdout] 52 | Negate, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Int`, `Float`, `String`, and `Bool` are never constructed [INFO] [stdout] --> src/ast/expression.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 86 | pub enum Literal { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 87 | Int(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 88 | Float(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 89 | String(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | Bool(bool), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Assignment`, `Binary`, `Unary`, `Literal`, and `Identifier` are never constructed [INFO] [stdout] --> src/ast/expression.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 56 | pub enum Expression { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] 57 | #[display("{_0}")] [INFO] [stdout] 58 | Assignment(AssignmentExpr), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 59 | #[display("{lhs} {op} {rhs}")] [INFO] [stdout] 60 | Binary { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | Unary { value: Box, op: UnaryOp }, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 67 | #[display("{_0}")] [INFO] [stdout] 68 | Literal(Literal), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 69 | #[display("{_0}")] [INFO] [stdout] 70 | Identifier(Identifier), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Expression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/ast/statement.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Statement { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 7 | Block(BlockStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | [INFO] [stdout] 9 | If(IfStatement), [INFO] [stdout] | ^^ [INFO] [stdout] 10 | While(WhileStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | For(ForStatement), [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | [INFO] [stdout] 13 | Return(ReturnStatement), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 14 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 15 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 16 | [INFO] [stdout] 17 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Int`, `Float`, `String`, and `Bool` are never constructed [INFO] [stdout] --> src/ast/expression.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 86 | pub enum Literal { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 87 | Int(String), [INFO] [stdout] | ^^^ [INFO] [stdout] 88 | Float(String), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 89 | String(String), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 90 | Bool(bool), [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/ast/statement.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | pub enum Statement { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] 7 | Block(BlockStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 8 | [INFO] [stdout] 9 | If(IfStatement), [INFO] [stdout] | ^^ [INFO] [stdout] 10 | While(WhileStatement), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 11 | For(ForStatement), [INFO] [stdout] | ^^^ [INFO] [stdout] 12 | [INFO] [stdout] 13 | Return(ReturnStatement), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 14 | Continue, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 15 | Break, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 16 | [INFO] [stdout] 17 | Expression(Expression), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `OpCode` is never used [INFO] [stdout] --> src/bytecode/mod.rs:3:6 [INFO] [stdout] | [INFO] [stdout] 3 | enum OpCode {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Value` is never used [INFO] [stdout] --> src/bytecode/mod.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VirtualMachine` is never constructed [INFO] [stdout] --> src/bytecode/mod.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct VirtualMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `OpCode` is never used [INFO] [stdout] --> src/bytecode/mod.rs:3:6 [INFO] [stdout] | [INFO] [stdout] 3 | enum OpCode {} [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `Value` is never used [INFO] [stdout] --> src/bytecode/mod.rs:5:6 [INFO] [stdout] | [INFO] [stdout] 5 | enum Value { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VirtualMachine` is never constructed [INFO] [stdout] --> src/bytecode/mod.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 13 | struct VirtualMachine { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peek` is never used [INFO] [stdout] --> src/lexer/mod.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn peek(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position` and `len` are never read [INFO] [stdout] --> src/lexer/token.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Token<'src> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 98 | pub position: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub len: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/lexer/token.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 111 | impl Token<'_> { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 112 | pub fn precedence(self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position` and `tokens` are never read [INFO] [stdout] --> src/parser/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | struct Cursor<'src> { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 11 | position: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | tokens: &'src [Token<'src>], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cursor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/parser/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl<'a> Cursor<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 23 | fn eof(self) -> bool { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn advance(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | fn current(self) -> Token<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn get_advance(&mut self) -> Token<'a> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn matches(self, expected: TokenType) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn matches_many(self, expected: &[TokenType]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn advance_if(&mut self, expected: TokenType) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn advance_if_many(&mut self, expected: &[TokenType]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn expects(&mut self, expected: TokenType) -> Result<'a, ()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ParserError` is never used [INFO] [stdout] --> src/parser/mod.rs:109:10 [INFO] [stdout] | [INFO] [stdout] 109 | pub enum ParserError<'src> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `error` is never used [INFO] [stdout] --> src/parser/mod.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 114 | impl<'src> ParserError<'src> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] 115 | pub fn error(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Result` is never used [INFO] [stdout] --> src/parser/mod.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | pub type Result<'src, T> = std::result::Result>; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser/mod.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | Binary(BinOp), [INFO] [stdout] | ------ ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 128 - Binary(BinOp), [INFO] [stdout] 128 + Binary(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peek` is never used [INFO] [stdout] --> src/lexer/mod.rs:39:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl<'a> Lexer<'a> { [INFO] [stdout] | ------------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | fn peek(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position` and `len` are never read [INFO] [stdout] --> src/lexer/token.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 94 | pub struct Token<'src> { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 98 | pub position: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub len: usize, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser/mod.rs:130:15 [INFO] [stdout] | [INFO] [stdout] 130 | AssignAnd(BinOp), [INFO] [stdout] | --------- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 130 - AssignAnd(BinOp), [INFO] [stdout] 130 + AssignAnd(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/lexer/token.rs:112:12 [INFO] [stdout] | [INFO] [stdout] 111 | impl Token<'_> { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] 112 | pub fn precedence(self) -> Option { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/parser/mod.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 163 | impl Operator { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 164 | fn precedence(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cursor` is never read [INFO] [stdout] --> src/parser/mod.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 174 | pub struct Parser<'src> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 175 | cursor: Cursor<'src>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `position` and `tokens` are never read [INFO] [stdout] --> src/parser/mod.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | struct Cursor<'src> { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 11 | position: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 12 | tokens: &'src [Token<'src>], [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cursor` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `advance_alloc_ok` and `parse_ident` are never used [INFO] [stdout] --> src/parser/mod.rs:187:8 [INFO] [stdout] | [INFO] [stdout] 179 | impl<'src> Parser<'src> { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 187 | fn advance_alloc_ok(&mut self, t: T) -> Result<'src, Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | fn parse_ident(&mut self) -> Result<'src, Identifier> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/parser/mod.rs:23:8 [INFO] [stdout] | [INFO] [stdout] 15 | impl<'a> Cursor<'a> { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 23 | fn eof(self) -> bool { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | fn advance(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 31 | fn current(self) -> Token<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | fn get_advance(&mut self) -> Token<'a> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | fn matches(self, expected: TokenType) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | fn matches_many(self, expected: &[TokenType]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | fn advance_if(&mut self, expected: TokenType) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | fn advance_if_many(&mut self, expected: &[TokenType]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | fn expects(&mut self, expected: TokenType) -> Result<'a, ()> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `ParserError` is never used [INFO] [stdout] --> src/parser/mod.rs:109:10 [INFO] [stdout] | [INFO] [stdout] 109 | pub enum ParserError<'src> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `error` is never used [INFO] [stdout] --> src/parser/mod.rs:115:12 [INFO] [stdout] | [INFO] [stdout] 114 | impl<'src> ParserError<'src> { [INFO] [stdout] | ---------------------------- method in this implementation [INFO] [stdout] 115 | pub fn error(&self) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `Result` is never used [INFO] [stdout] --> src/parser/mod.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 125 | pub type Result<'src, T> = std::result::Result>; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser/mod.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | Binary(BinOp), [INFO] [stdout] | ------ ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 128 - Binary(BinOp), [INFO] [stdout] 128 + Binary(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/parser/mod.rs:130:15 [INFO] [stdout] | [INFO] [stdout] 130 | AssignAnd(BinOp), [INFO] [stdout] | --------- ^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 130 - AssignAnd(BinOp), [INFO] [stdout] 130 + AssignAnd(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `precedence` is never used [INFO] [stdout] --> src/parser/mod.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 163 | impl Operator { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] 164 | fn precedence(&self) -> i32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `cursor` is never read [INFO] [stdout] --> src/parser/mod.rs:175:5 [INFO] [stdout] | [INFO] [stdout] 174 | pub struct Parser<'src> { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] 175 | cursor: Cursor<'src>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `advance_alloc_ok` and `parse_ident` are never used [INFO] [stdout] --> src/parser/mod.rs:187:8 [INFO] [stdout] | [INFO] [stdout] 179 | impl<'src> Parser<'src> { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 187 | fn advance_alloc_ok(&mut self, t: T) -> Result<'src, Box> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | fn parse_ident(&mut self) -> Result<'src, Identifier> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.58s [INFO] running `Command { std: "docker" "inspect" "ac226521332073307eca707386524b5ce8b8af86f84f0b232d4e0ddf0c1fdef5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ac226521332073307eca707386524b5ce8b8af86f84f0b232d4e0ddf0c1fdef5", kill_on_drop: false }` [INFO] [stdout] ac226521332073307eca707386524b5ce8b8af86f84f0b232d4e0ddf0c1fdef5