[INFO] cloning repository https://github.com/Arylite/Nox
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Arylite/Nox" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArylite%2FNox", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArylite%2FNox'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 97d65583991b2d2c31c5155336b53c81282d4394
[INFO] checking Arylite/Nox against master#36b21637e93b038453924d3c66821089e71d8baa for pr-143164
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FArylite%2FNox" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Arylite/Nox
[INFO] finished tweaking git repo https://github.com/Arylite/Nox
[INFO] tweaked toml for git repo https://github.com/Arylite/Nox written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Arylite/Nox on toolchain 36b21637e93b038453924d3c66821089e71d8baa
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Arylite/Nox 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" "+36b21637e93b038453924d3c66821089e71d8baa" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded logos v0.13.0
[INFO] [stderr]   Downloaded logos-codegen v0.13.0
[INFO] [stderr]   Downloaded logos-derive v0.13.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6d06e3562a081bc7a1bd973d686785eaa7de1681e26e95a1713f043c061f35e4
[INFO] running `Command { std: "docker" "start" "-a" "6d06e3562a081bc7a1bd973d686785eaa7de1681e26e95a1713f043c061f35e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6d06e3562a081bc7a1bd973d686785eaa7de1681e26e95a1713f043c061f35e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6d06e3562a081bc7a1bd973d686785eaa7de1681e26e95a1713f043c061f35e4", kill_on_drop: false }`
[INFO] [stdout] 6d06e3562a081bc7a1bd973d686785eaa7de1681e26e95a1713f043c061f35e4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+36b21637e93b038453924d3c66821089e71d8baa" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38c47fb39835cbc407779d195c3d8940b9e6580f268fd63a6b17e8364df02780
[INFO] running `Command { std: "docker" "start" "-a" "38c47fb39835cbc407779d195c3d8940b9e6580f268fd63a6b17e8364df02780", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling beef v0.5.2
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling logos-codegen v0.13.0
[INFO] [stderr]    Compiling logos-derive v0.13.0
[INFO] [stderr]     Checking logos v0.13.0
[INFO] [stderr]     Checking Nox v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/ast/mod.rs:306:42
[INFO] [stdout]     |
[INFO] [stdout] 306 |             Expression::UnaryOperation { operator, operand } => operand.is_constant(),
[INFO] [stdout]     |                                          ^^^^^^^^ help: try ignoring the field: `operator: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `operator`
[INFO] [stdout]    --> src/ast/mod.rs:306:42
[INFO] [stdout]     |
[INFO] [stdout] 306 |             Expression::UnaryOperation { operator, operand } => operand.is_constant(),
[INFO] [stdout]     |                                          ^^^^^^^^ help: try ignoring the field: `operator: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SourceLocation` is never constructed
[INFO] [stdout]   --> src/ast/mod.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SourceLocation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/ast/mod.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Node<T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Expression` is never used
[INFO] [stdout]   --> src/ast/mod.rs:31:10
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum Expression {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Literal` is never used
[INFO] [stdout]   --> src/ast/mod.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum Literal {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Type` is never used
[INFO] [stdout]   --> src/ast/mod.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub enum Type {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrimitiveType` is never used
[INFO] [stdout]   --> src/ast/mod.rs:90:10
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub enum PrimitiveType {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Statement` is never used
[INFO] [stdout]   --> src/ast/mod.rs:99:10
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub enum Statement {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AssignmentTarget` is never used
[INFO] [stdout]    --> src/ast/mod.rs:164:10
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub enum AssignmentTarget {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MatchArm` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct MatchArm {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Pattern` is never used
[INFO] [stdout]    --> src/ast/mod.rs:184:10
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub enum Pattern {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EnumVariant` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub struct EnumVariant {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Module` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct Module {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Import` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Import {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ImportItem` is never used
[INFO] [stdout]    --> src/ast/mod.rs:216:10
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub enum ImportItem {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Export` is never used
[INFO] [stdout]    --> src/ast/mod.rs:222:10
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub enum Export {
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct Program {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BinaryOperation` is never used
[INFO] [stdout]    --> src/ast/mod.rs:234:10
[INFO] [stdout]     |
[INFO] [stdout] 234 | pub enum BinaryOperation {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UnaryOperation` is never used
[INFO] [stdout]    --> src/ast/mod.rs:258:10
[INFO] [stdout]     |
[INFO] [stdout] 258 | pub enum UnaryOperation {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Visitor` is never used
[INFO] [stdout]    --> src/ast/mod.rs:268:11
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub trait Visitor {
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_constant` and `infer_type` are never used
[INFO] [stdout]    --> src/ast/mod.rs:303:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl Expression {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 302 |     /// Checks if this expression is constant and can be evaluated at compile time
[INFO] [stdout] 303 |     pub fn is_constant(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn infer_type(&self, type_context: &HashMap<String, Type>) -> Option<Type> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]    --> src/lexer/mod.rs:457:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub enum Token {
[INFO] [stdout]     |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 457 |     Error,
[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: methods `to_string`, `is_keyword`, `is_operator`, and `is_literal` are never used
[INFO] [stdout]    --> src/lexer/mod.rs:462:12
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl Token {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 461 |     /// Convert a token to its string representation
[INFO] [stdout] 462 |     pub fn to_string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 559 |     pub fn is_keyword(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 |     pub fn is_operator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 640 |     pub fn is_literal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SourceLocation` is never constructed
[INFO] [stdout]   --> src/ast/mod.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct SourceLocation {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Node` is never constructed
[INFO] [stdout]   --> src/ast/mod.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Node<T> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/ast/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum Expression {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 32 |     Literal(Literal),
[INFO] [stdout] 33 |     Variable(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 34 |     FunctionCall {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     UnaryOperation {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     ArrayLiteral(Vec<Expression>),
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 48 |     ObjectLiteral(HashMap<String, Expression>),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout] 49 |     MemberAccess {
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 53 |     IndexAccess {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     Lambda {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     Ternary {
[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 `String`, `Boolean`, `Null`, and `Char` are never constructed
[INFO] [stdout]   --> src/ast/mod.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub enum Literal {
[INFO] [stdout]    |          ------- variants in this enum
[INFO] [stdout] 70 |     Number(f64),  // Changed from i64 to f64 to support floating point
[INFO] [stdout] 71 |     String(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 72 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 73 |     Null,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 74 |     Char(char),  // Added support for character literals
[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: enum `Type` is never used
[INFO] [stdout]   --> src/ast/mod.rs:78:10
[INFO] [stdout]    |
[INFO] [stdout] 78 | pub enum Type {
[INFO] [stdout]    |          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PrimitiveType` is never used
[INFO] [stdout]   --> src/ast/mod.rs:90:10
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub enum PrimitiveType {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Statement` is never used
[INFO] [stdout]   --> src/ast/mod.rs:99:10
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub enum Statement {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AssignmentTarget` is never used
[INFO] [stdout]    --> src/ast/mod.rs:164:10
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub enum AssignmentTarget {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MatchArm` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:177:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | pub struct MatchArm {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Pattern` is never used
[INFO] [stdout]    --> src/ast/mod.rs:184:10
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub enum Pattern {
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EnumVariant` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout] 196 | pub struct EnumVariant {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Module` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:202:12
[INFO] [stdout]     |
[INFO] [stdout] 202 | pub struct Module {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Import` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Import {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ImportItem` is never used
[INFO] [stdout]    --> src/ast/mod.rs:216:10
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub enum ImportItem {
[INFO] [stdout]     |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Export` is never used
[INFO] [stdout]    --> src/ast/mod.rs:222:10
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub enum Export {
[INFO] [stdout]     |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Program` is never constructed
[INFO] [stdout]    --> src/ast/mod.rs:228:12
[INFO] [stdout]     |
[INFO] [stdout] 228 | pub struct Program {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/ast/mod.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 234 | pub enum BinaryOperation {
[INFO] [stdout]     |          --------------- variants in this enum
[INFO] [stdout] 235 |     Add,
[INFO] [stdout] 236 |     Subtract,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 237 |     Multiply,
[INFO] [stdout] 238 |     Divide,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 239 |     Modulus,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 240 |     And,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 241 |     Or,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 242 |     Equal,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 243 |     NotEqual,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 244 |     GreaterThan,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 245 |     LessThan,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 246 |     GreaterThanOrEqual,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 247 |     LessThanOrEqual,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 248 |     BitwiseAnd,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 249 |     BitwiseOr,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 250 |     BitwiseXor,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 251 |     LeftShift,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 252 |     RightShift,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 253 |     NullishCoalescing,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 254 |     OptionalChaining,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `BinaryOperation` 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 `Negate`, `Not`, `BitwiseNot`, `Increment`, `Decrement`, and `TypeOf` are never constructed
[INFO] [stdout]    --> src/ast/mod.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 258 | pub enum UnaryOperation {
[INFO] [stdout]     |          -------------- variants in this enum
[INFO] [stdout] 259 |     Negate,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 260 |     Not,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 261 |     BitwiseNot,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 262 |     Increment,  // ++
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 263 |     Decrement,  // --
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 264 |     TypeOf,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UnaryOperation` 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: trait `Visitor` is never used
[INFO] [stdout]    --> src/ast/mod.rs:268:11
[INFO] [stdout]     |
[INFO] [stdout] 268 | pub trait Visitor {
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `infer_type` is never used
[INFO] [stdout]    --> src/ast/mod.rs:315:12
[INFO] [stdout]     |
[INFO] [stdout] 301 | impl Expression {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 315 |     pub fn infer_type(&self, type_context: &HashMap<String, Type>) -> Option<Type> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Error` is never constructed
[INFO] [stdout]    --> src/lexer/mod.rs:457:5
[INFO] [stdout]     |
[INFO] [stdout] 173 | pub enum Token {
[INFO] [stdout]     |          ----- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 457 |     Error,
[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: methods `to_string`, `is_keyword`, `is_operator`, and `is_literal` are never used
[INFO] [stdout]    --> src/lexer/mod.rs:462:12
[INFO] [stdout]     |
[INFO] [stdout] 460 | impl Token {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] 461 |     /// Convert a token to its string representation
[INFO] [stdout] 462 |     pub fn to_string(&self) -> String {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 559 |     pub fn is_keyword(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 596 |     pub fn is_operator(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 640 |     pub fn is_literal(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.12s
[INFO] running `Command { std: "docker" "inspect" "38c47fb39835cbc407779d195c3d8940b9e6580f268fd63a6b17e8364df02780", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38c47fb39835cbc407779d195c3d8940b9e6580f268fd63a6b17e8364df02780", kill_on_drop: false }`
[INFO] [stdout] 38c47fb39835cbc407779d195c3d8940b9e6580f268fd63a6b17e8364df02780
