[INFO] cloning repository https://github.com/krishnarg04/OxyPy [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/krishnarg04/OxyPy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkrishnarg04%2FOxyPy", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkrishnarg04%2FOxyPy'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ff5fb897d4d5d515ecce02a46dd6a0f7092a2667 [INFO] testing krishnarg04/OxyPy against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759-retry [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkrishnarg04%2FOxyPy" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/krishnarg04/OxyPy [INFO] finished tweaking git repo https://github.com/krishnarg04/OxyPy [INFO] tweaked toml for git repo https://github.com/krishnarg04/OxyPy written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/krishnarg04/OxyPy on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/krishnarg04/OxyPy 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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] cacbb0813c81604fcc9154f2986500dfe24eeb47a67284b71ab0a761867e1da2 [INFO] running `Command { std: "docker" "start" "-a" "cacbb0813c81604fcc9154f2986500dfe24eeb47a67284b71ab0a761867e1da2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "cacbb0813c81604fcc9154f2986500dfe24eeb47a67284b71ab0a761867e1da2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "cacbb0813c81604fcc9154f2986500dfe24eeb47a67284b71ab0a761867e1da2", kill_on_drop: false }` [INFO] [stdout] cacbb0813c81604fcc9154f2986500dfe24eeb47a67284b71ab0a761867e1da2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8a4e271c154f628856956c9b4b37e128e6ddc384c0d8860e63d338a73c90e1bf [INFO] running `Command { std: "docker" "start" "-a" "8a4e271c154f628856956c9b4b37e128e6ddc384c0d8860e63d338a73c90e1bf", kill_on_drop: false }` [INFO] [stderr] Compiling OxyPy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EQUALS_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | EQUALS_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualsEquals` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOT_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | NOT_EQUALS, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `NotEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LESS_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | LESS_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `GREATER_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | GREATER_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CONDITIONAL_EXPRESSION` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ConditionalExpression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ConditionalExpression` and `ExpressionNode` [INFO] [stdout] --> src/AstTree.rs:5:98 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tokenizer::{Types, DataHolder, Tokens, Callable, ComparisonOperator, LogicalOperator, ConditionalExpression, ExpressionNode, A... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/runtime.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Types` [INFO] [stdout] --> src/Functions.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tokenizer::{Types, DataHolder}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/Repl.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/Repl.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `method` [INFO] [stdout] --> src/AstTree.rs:243:50 [INFO] [stdout] | [INFO] [stdout] 243 | AstExpressions::MethodCall { object, method, arguments } => { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `method: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instance` [INFO] [stdout] --> src/AstTree.rs:254:51 [INFO] [stdout] | [INFO] [stdout] 254 | DataHolder::CLASSINSTANCE(ref instance) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instance` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/AstTree.rs:407:77 [INFO] [stdout] | [INFO] [stdout] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/runtime.rs:450:21 [INFO] [stdout] | [INFO] [stdout] 450 | let mut instance = DataHolder::CLASSINSTANCE(ClassInstance { [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: unused variable: `name` [INFO] [stdout] --> src/runtime.rs:484:62 [INFO] [stdout] | [INFO] [stdout] 484 | if let Some(Statement::FunctionDeclaration { name, params, body }) = fields.get(method_name) { [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `DOUBLEQUOTES` and `SINGLEQUOTES` are never constructed [INFO] [stdout] --> src/tokenizer.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Tokens { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | DOUBLEQUOTES, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | SINGLEQUOTES, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tokens` has derived impls for the traits `Clone` and `Debug`, 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 `LIST` and `NONE` are never constructed [INFO] [stdout] --> src/tokenizer.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum Types{ [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 55 | LIST, [INFO] [stdout] | ^^^^ [INFO] [stdout] 56 | NONE, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Types` 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 `FUNCTION` and `CONDITIONAL_EXPRESSION` are never constructed [INFO] [stdout] --> src/tokenizer.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 60 | pub enum DataHolder { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 68 | FUNCTION(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataHolder` 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 `Comparison`, `Logical`, and `Value` are never constructed [INFO] [stdout] --> src/tokenizer.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 80 | pub enum ConditionalExpression { [INFO] [stdout] | --------------------- variants in this enum [INFO] [stdout] 81 | [INFO] [stdout] 82 | Comparison { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | Logical { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | Value(ExpressionNode), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConditionalExpression` 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 `Literal`, `Variable`, `BinaryOperation`, `FunctionCall`, and `ConditionalExpression` are never constructed [INFO] [stdout] --> src/tokenizer.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub enum ExpressionNode { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 99 | Literal(DataHolder), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 100 | Variable(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 101 | BinaryOperation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | FunctionCall { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | ConditionalExpression(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpressionNode` 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: variant `Not` is never constructed [INFO] [stdout] --> src/tokenizer.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 130 | pub enum ArithmeticOperator { [INFO] [stdout] | ------------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 136 | Not, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArithmeticOperator` 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 `get_type` is never used [INFO] [stdout] --> src/tokenizer.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 139 | impl DataHolder { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 140 | pub fn get_type(&self) -> Types { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `Build_in` is never read [INFO] [stdout] --> src/tokenizer.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Callable{ [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 157 | Build_in : BuildInFunction [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Callable` 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: fields `name`, `param_count`, and `body` are never read [INFO] [stdout] --> src/tokenizer.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 161 | struct BuildInFunction{ [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 162 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 163 | param_count: i32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 164 | body: fn(Vec) -> DataHolder, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BuildInFunction` 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 `process_line` is never used [INFO] [stdout] --> src/tokenizer.rs:434:12 [INFO] [stdout] | [INFO] [stdout] 169 | impl Tokenizer { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn process_line(&self, line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_type` is never read [INFO] [stdout] --> src/AstTree.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 10 | VariableDeclaration { [INFO] [stdout] | ------------------- field in this variant [INFO] [stdout] 11 | name: String, [INFO] [stdout] 12 | data_type: Types, [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: field `name` is never read [INFO] [stdout] --> src/AstTree.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 70 | ClassAttribute { [INFO] [stdout] | -------------- field in this variant [INFO] [stdout] 71 | name: String, [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 `ListDeclaration` and `Function` are never constructed [INFO] [stdout] --> src/AstTree.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Statement { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 15 | ListDeclaration { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | Function { [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: struct `StructField` is never constructed [INFO] [stdout] --> src/AstTree.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | struct StructField { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_type` is never read [INFO] [stdout] --> src/AstTree.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct FunctionParameter { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 84 | pub name: String, [INFO] [stdout] 85 | pub data_type: Types, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionParameter` 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: variant `Literal` is never constructed [INFO] [stdout] --> src/AstTree.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 89 | pub enum AstExpressions { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 115 | Literal { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AstExpressions` 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 `evaluate`, `perform_arithmetic_operation`, `perform_unary_operation`, `perform_comparison_operation`, and `execute_function_call` are never used [INFO] [stdout] --> src/AstTree.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 142 | impl AstExpressions { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 143 | pub fn evaluate(&self, env: &Environment) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | fn perform_arithmetic_operation(&self, left: &DataHolder, operator: &ArithmeticOperator, right: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | fn perform_unary_operation(&self, operator: &ArithmeticOperator, operand: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | fn perform_comparison_operation(&self, left: &DataHolder, operator: &ComparisonOperator, right: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peek_token` is never used [INFO] [stdout] --> src/AstTree.rs:478:8 [INFO] [stdout] | [INFO] [stdout] 469 | impl TokenCursor { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 478 | fn peek_token(&self, offset: usize) -> Option<&Tokens> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `GLOBAL_ENV` is never used [INFO] [stdout] --> src/Environment.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | static GLOBAL_ENV: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_global_env` is never used [INFO] [stdout] --> src/Environment.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn get_global_env() -> &'static Mutex { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/runtime.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | Return(DataHolder), [INFO] [stdout] | ------ ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [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] 12 - Return(DataHolder), [INFO] [stdout] 12 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `None` is never constructed [INFO] [stdout] --> src/runtime.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum ExecutionResult { [INFO] [stdout] | --------------- variant in this enum [INFO] [stdout] 11 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionResult` 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: fields `name` and `is_method` are never read [INFO] [stdout] --> src/runtime.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct UserFunction { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 25 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub is_method: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UserFunction` 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 `get_environment` and `get_environment_mut` are never used [INFO] [stdout] --> src/runtime.rs:783:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl Runtime { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 783 | pub fn get_environment(&self) -> &Environment { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 787 | pub fn get_environment_mut(&mut self) -> &mut Environment { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `has_function` and `get_function_names` are never used [INFO] [stdout] --> src/Functions.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl BuiltInFunction { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn has_function(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn get_function_names(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `AstTree` should have a snake case name [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | mod AstTree; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `ast_tree` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Environment` should have a snake case name [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | mod Environment; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `environment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Functions` should have a snake case name [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | mod Functions; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `functions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Repl` should have a snake case name [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | mod Repl; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `repl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `Build_in` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | Build_in : BuildInFunction [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `build_in` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.12s [INFO] running `Command { std: "docker" "inspect" "8a4e271c154f628856956c9b4b37e128e6ddc384c0d8860e63d338a73c90e1bf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8a4e271c154f628856956c9b4b37e128e6ddc384c0d8860e63d338a73c90e1bf", kill_on_drop: false }` [INFO] [stdout] 8a4e271c154f628856956c9b4b37e128e6ddc384c0d8860e63d338a73c90e1bf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 36334b4bd1e8f431809fee7ce1bc015e7dd6ea79fd59b6bb5f360096e7d66caf [INFO] running `Command { std: "docker" "start" "-a" "36334b4bd1e8f431809fee7ce1bc015e7dd6ea79fd59b6bb5f360096e7d66caf", kill_on_drop: false }` [INFO] [stderr] Compiling OxyPy v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::io` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::io; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `EQUALS_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | EQUALS_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualsEquals` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `NOT_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | NOT_EQUALS, [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `NotEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `LESS_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | LESS_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `GREATER_EQUALS` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | GREATER_EQUALS, [INFO] [stdout] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEquals` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `CONDITIONAL_EXPRESSION` should have an upper camel case name [INFO] [stdout] --> src/tokenizer.rs:69:5 [INFO] [stdout] | [INFO] [stdout] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ConditionalExpression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ConditionalExpression` and `ExpressionNode` [INFO] [stdout] --> src/AstTree.rs:5:98 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tokenizer::{Types, DataHolder, Tokens, Callable, ComparisonOperator, LogicalOperator, ConditionalExpression, ExpressionNode, A... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/runtime.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Types` [INFO] [stdout] --> src/Functions.rs:2:24 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::tokenizer::{Types, DataHolder}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Read` [INFO] [stdout] --> src/Repl.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::io::Read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/Repl.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | use std::io::{self, Write}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `method` [INFO] [stdout] --> src/AstTree.rs:243:50 [INFO] [stdout] | [INFO] [stdout] 243 | AstExpressions::MethodCall { object, method, arguments } => { [INFO] [stdout] | ^^^^^^ help: try ignoring the field: `method: _` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `instance` [INFO] [stdout] --> src/AstTree.rs:254:51 [INFO] [stdout] | [INFO] [stdout] 254 | DataHolder::CLASSINSTANCE(ref instance) => { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instance` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env` [INFO] [stdout] --> src/AstTree.rs:407:77 [INFO] [stdout] | [INFO] [stdout] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/runtime.rs:450:21 [INFO] [stdout] | [INFO] [stdout] 450 | let mut instance = DataHolder::CLASSINSTANCE(ClassInstance { [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: unused variable: `name` [INFO] [stdout] --> src/runtime.rs:484:62 [INFO] [stdout] | [INFO] [stdout] 484 | if let Some(Statement::FunctionDeclaration { name, params, body }) = fields.get(method_name) { [INFO] [stdout] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `DOUBLEQUOTES` and `SINGLEQUOTES` are never constructed [INFO] [stdout] --> src/tokenizer.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 4 | pub enum Tokens { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 18 | DOUBLEQUOTES, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 19 | SINGLEQUOTES, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tokens` has derived impls for the traits `Clone` and `Debug`, 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 `LIST` and `NONE` are never constructed [INFO] [stdout] --> src/tokenizer.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 48 | pub enum Types{ [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 55 | LIST, [INFO] [stdout] | ^^^^ [INFO] [stdout] 56 | NONE, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Types` 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 `FUNCTION` and `CONDITIONAL_EXPRESSION` are never constructed [INFO] [stdout] --> src/tokenizer.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 60 | pub enum DataHolder { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 68 | FUNCTION(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `DataHolder` 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 `Comparison`, `Logical`, and `Value` are never constructed [INFO] [stdout] --> src/tokenizer.rs:82:5 [INFO] [stdout] | [INFO] [stdout] 80 | pub enum ConditionalExpression { [INFO] [stdout] | --------------------- variants in this enum [INFO] [stdout] 81 | [INFO] [stdout] 82 | Comparison { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | Logical { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | Value(ExpressionNode), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ConditionalExpression` 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 `Literal`, `Variable`, `BinaryOperation`, `FunctionCall`, and `ConditionalExpression` are never constructed [INFO] [stdout] --> src/tokenizer.rs:99:5 [INFO] [stdout] | [INFO] [stdout] 98 | pub enum ExpressionNode { [INFO] [stdout] | -------------- variants in this enum [INFO] [stdout] 99 | Literal(DataHolder), [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 100 | Variable(String), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 101 | BinaryOperation { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | FunctionCall { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | ConditionalExpression(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpressionNode` 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: variant `Not` is never constructed [INFO] [stdout] --> src/tokenizer.rs:136:5 [INFO] [stdout] | [INFO] [stdout] 130 | pub enum ArithmeticOperator { [INFO] [stdout] | ------------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 136 | Not, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ArithmeticOperator` 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 `get_type` is never used [INFO] [stdout] --> src/tokenizer.rs:140:12 [INFO] [stdout] | [INFO] [stdout] 139 | impl DataHolder { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] 140 | pub fn get_type(&self) -> Types { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `Build_in` is never read [INFO] [stdout] --> src/tokenizer.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 156 | pub struct Callable{ [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 157 | Build_in : BuildInFunction [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Callable` 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: fields `name`, `param_count`, and `body` are never read [INFO] [stdout] --> src/tokenizer.rs:162:5 [INFO] [stdout] | [INFO] [stdout] 161 | struct BuildInFunction{ [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 162 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 163 | param_count: i32, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 164 | body: fn(Vec) -> DataHolder, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BuildInFunction` 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 `process_line` is never used [INFO] [stdout] --> src/tokenizer.rs:434:12 [INFO] [stdout] | [INFO] [stdout] 169 | impl Tokenizer { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 434 | pub fn process_line(&self, line: &str) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_type` is never read [INFO] [stdout] --> src/AstTree.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 10 | VariableDeclaration { [INFO] [stdout] | ------------------- field in this variant [INFO] [stdout] 11 | name: String, [INFO] [stdout] 12 | data_type: Types, [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: field `name` is never read [INFO] [stdout] --> src/AstTree.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 70 | ClassAttribute { [INFO] [stdout] | -------------- field in this variant [INFO] [stdout] 71 | name: String, [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 `ListDeclaration` and `Function` are never constructed [INFO] [stdout] --> src/AstTree.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub enum Statement { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 15 | ListDeclaration { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | Function { [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: struct `StructField` is never constructed [INFO] [stdout] --> src/AstTree.rs:77:8 [INFO] [stdout] | [INFO] [stdout] 77 | struct StructField { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `data_type` is never read [INFO] [stdout] --> src/AstTree.rs:85:9 [INFO] [stdout] | [INFO] [stdout] 83 | pub struct FunctionParameter { [INFO] [stdout] | ----------------- field in this struct [INFO] [stdout] 84 | pub name: String, [INFO] [stdout] 85 | pub data_type: Types, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionParameter` 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: variant `Literal` is never constructed [INFO] [stdout] --> src/AstTree.rs:115:5 [INFO] [stdout] | [INFO] [stdout] 89 | pub enum AstExpressions { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 115 | Literal { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `AstExpressions` 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 `evaluate`, `perform_arithmetic_operation`, `perform_unary_operation`, `perform_comparison_operation`, and `execute_function_call` are never used [INFO] [stdout] --> src/AstTree.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 142 | impl AstExpressions { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] 143 | pub fn evaluate(&self, env: &Environment) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 267 | fn perform_arithmetic_operation(&self, left: &DataHolder, operator: &ArithmeticOperator, right: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | fn perform_unary_operation(&self, operator: &ArithmeticOperator, operand: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | fn perform_comparison_operation(&self, left: &DataHolder, operator: &ComparisonOperator, right: &DataHolder) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `peek_token` is never used [INFO] [stdout] --> src/AstTree.rs:478:8 [INFO] [stdout] | [INFO] [stdout] 469 | impl TokenCursor { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 478 | fn peek_token(&self, offset: usize) -> Option<&Tokens> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `GLOBAL_ENV` is never used [INFO] [stdout] --> src/Environment.rs:46:8 [INFO] [stdout] | [INFO] [stdout] 46 | static GLOBAL_ENV: OnceLock> = OnceLock::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_global_env` is never used [INFO] [stdout] --> src/Environment.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn get_global_env() -> &'static Mutex { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/runtime.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | Return(DataHolder), [INFO] [stdout] | ------ ^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [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] 12 - Return(DataHolder), [INFO] [stdout] 12 + Return(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `None` is never constructed [INFO] [stdout] --> src/runtime.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum ExecutionResult { [INFO] [stdout] | --------------- variant in this enum [INFO] [stdout] 11 | None, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExecutionResult` 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: fields `name` and `is_method` are never read [INFO] [stdout] --> src/runtime.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub struct UserFunction { [INFO] [stdout] | ------------ fields in this struct [INFO] [stdout] 25 | pub name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub is_method: bool, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `UserFunction` 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 `get_environment` and `get_environment_mut` are never used [INFO] [stdout] --> src/runtime.rs:783:12 [INFO] [stdout] | [INFO] [stdout] 39 | impl Runtime { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 783 | pub fn get_environment(&self) -> &Environment { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 787 | pub fn get_environment_mut(&mut self) -> &mut Environment { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `has_function` and `get_function_names` are never used [INFO] [stdout] --> src/Functions.rs:31:12 [INFO] [stdout] | [INFO] [stdout] 10 | impl BuiltInFunction { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn has_function(&self, name: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn get_function_names(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `AstTree` should have a snake case name [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | mod AstTree; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `ast_tree` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Environment` should have a snake case name [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | mod Environment; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `environment` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Functions` should have a snake case name [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | mod Functions; [INFO] [stdout] | ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `functions` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `Repl` should have a snake case name [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | mod Repl; [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `repl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: structure field `Build_in` should have a snake case name [INFO] [stdout] --> src/tokenizer.rs:157:5 [INFO] [stdout] | [INFO] [stdout] 157 | Build_in : BuildInFunction [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `build_in` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.63s [INFO] running `Command { std: "docker" "inspect" "36334b4bd1e8f431809fee7ce1bc015e7dd6ea79fd59b6bb5f360096e7d66caf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36334b4bd1e8f431809fee7ce1bc015e7dd6ea79fd59b6bb5f360096e7d66caf", kill_on_drop: false }` [INFO] [stdout] 36334b4bd1e8f431809fee7ce1bc015e7dd6ea79fd59b6bb5f360096e7d66caf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c82b27d5c2453f2106443ae2d8e6b10d7b854b4969e997e2304f99aa45949ac0 [INFO] running `Command { std: "docker" "start" "-a" "c82b27d5c2453f2106443ae2d8e6b10d7b854b4969e997e2304f99aa45949ac0", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::io` [INFO] [stderr] --> src/main.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::io; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `EQUALS_EQUALS` should have an upper camel case name [INFO] [stderr] --> src/tokenizer.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | EQUALS_EQUALS, [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `EqualsEquals` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant `NOT_EQUALS` should have an upper camel case name [INFO] [stderr] --> src/tokenizer.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | NOT_EQUALS, [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to upper camel case: `NotEquals` [INFO] [stderr] [INFO] [stderr] warning: variant `LESS_EQUALS` should have an upper camel case name [INFO] [stderr] --> src/tokenizer.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | LESS_EQUALS, [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to upper camel case: `LessEquals` [INFO] [stderr] [INFO] [stderr] warning: variant `GREATER_EQUALS` should have an upper camel case name [INFO] [stderr] --> src/tokenizer.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | GREATER_EQUALS, [INFO] [stderr] | ^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `GreaterEquals` [INFO] [stderr] [INFO] [stderr] warning: variant `CONDITIONAL_EXPRESSION` should have an upper camel case name [INFO] [stderr] --> src/tokenizer.rs:69:5 [INFO] [stderr] | [INFO] [stderr] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ help: convert the identifier to upper camel case: `ConditionalExpression` [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ConditionalExpression` and `ExpressionNode` [INFO] [stderr] --> src/AstTree.rs:5:98 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::tokenizer::{Types, DataHolder, Tokens, Callable, ComparisonOperator, LogicalOperator, ConditionalExpression, ExpressionNode, A... [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::time::Instant` [INFO] [stderr] --> src/runtime.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use std::time::Instant; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Types` [INFO] [stderr] --> src/Functions.rs:2:24 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::tokenizer::{Types, DataHolder}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Read` [INFO] [stderr] --> src/Repl.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | use std::io::Read; [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> src/Repl.rs:6:15 [INFO] [stderr] | [INFO] [stderr] 6 | use std::io::{self, Write}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `method` [INFO] [stderr] --> src/AstTree.rs:243:50 [INFO] [stderr] | [INFO] [stderr] 243 | AstExpressions::MethodCall { object, method, arguments } => { [INFO] [stderr] | ^^^^^^ help: try ignoring the field: `method: _` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `instance` [INFO] [stderr] --> src/AstTree.rs:254:51 [INFO] [stderr] | [INFO] [stderr] 254 | DataHolder::CLASSINSTANCE(ref instance) => { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_instance` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `env` [INFO] [stderr] --> src/AstTree.rs:407:77 [INFO] [stderr] | [INFO] [stderr] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_env` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/runtime.rs:450:21 [INFO] [stderr] | [INFO] [stderr] 450 | let mut instance = DataHolder::CLASSINSTANCE(ClassInstance { [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/runtime.rs:484:62 [INFO] [stderr] | [INFO] [stderr] 484 | if let Some(Statement::FunctionDeclaration { name, params, body }) = fields.get(method_name) { [INFO] [stderr] | ^^^^ help: try ignoring the field: `name: _` [INFO] [stderr] [INFO] [stderr] warning: variants `DOUBLEQUOTES` and `SINGLEQUOTES` are never constructed [INFO] [stderr] --> src/tokenizer.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 4 | pub enum Tokens { [INFO] [stderr] | ------ variants in this enum [INFO] [stderr] ... [INFO] [stderr] 18 | DOUBLEQUOTES, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] 19 | SINGLEQUOTES, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Tokens` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variants `LIST` and `NONE` are never constructed [INFO] [stderr] --> src/tokenizer.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 48 | pub enum Types{ [INFO] [stderr] | ----- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 55 | LIST, [INFO] [stderr] | ^^^^ [INFO] [stderr] 56 | NONE, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Types` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `FUNCTION` and `CONDITIONAL_EXPRESSION` are never constructed [INFO] [stderr] --> src/tokenizer.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 60 | pub enum DataHolder { [INFO] [stderr] | ---------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 68 | FUNCTION(String), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 69 | CONDITIONAL_EXPRESSION(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `DataHolder` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `Comparison`, `Logical`, and `Value` are never constructed [INFO] [stderr] --> src/tokenizer.rs:82:5 [INFO] [stderr] | [INFO] [stderr] 80 | pub enum ConditionalExpression { [INFO] [stderr] | --------------------- variants in this enum [INFO] [stderr] 81 | [INFO] [stderr] 82 | Comparison { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 88 | Logical { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 94 | Value(ExpressionNode), [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ConditionalExpression` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `Literal`, `Variable`, `BinaryOperation`, `FunctionCall`, and `ConditionalExpression` are never constructed [INFO] [stderr] --> src/tokenizer.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 98 | pub enum ExpressionNode { [INFO] [stderr] | -------------- variants in this enum [INFO] [stderr] 99 | Literal(DataHolder), [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 100 | Variable(String), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 101 | BinaryOperation { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 106 | FunctionCall { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 110 | ConditionalExpression(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ExpressionNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `Not` is never constructed [INFO] [stderr] --> src/tokenizer.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 130 | pub enum ArithmeticOperator { [INFO] [stderr] | ------------------ variant in this enum [INFO] [stderr] ... [INFO] [stderr] 136 | Not, [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ArithmeticOperator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `get_type` is never used [INFO] [stderr] --> src/tokenizer.rs:140:12 [INFO] [stderr] | [INFO] [stderr] 139 | impl DataHolder { [INFO] [stderr] | --------------- method in this implementation [INFO] [stderr] 140 | pub fn get_type(&self) -> Types { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `Build_in` is never read [INFO] [stderr] --> src/tokenizer.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 156 | pub struct Callable{ [INFO] [stderr] | -------- field in this struct [INFO] [stderr] 157 | Build_in : BuildInFunction [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Callable` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name`, `param_count`, and `body` are never read [INFO] [stderr] --> src/tokenizer.rs:162:5 [INFO] [stderr] | [INFO] [stderr] 161 | struct BuildInFunction{ [INFO] [stderr] | --------------- fields in this struct [INFO] [stderr] 162 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] 163 | param_count: i32, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] 164 | body: fn(Vec) -> DataHolder, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `BuildInFunction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: method `process_line` is never used [INFO] [stderr] --> src/tokenizer.rs:434:12 [INFO] [stderr] | [INFO] [stderr] 169 | impl Tokenizer { [INFO] [stderr] | -------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 434 | pub fn process_line(&self, line: &str) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `data_type` is never read [INFO] [stderr] --> src/AstTree.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 10 | VariableDeclaration { [INFO] [stderr] | ------------------- field in this variant [INFO] [stderr] 11 | name: String, [INFO] [stderr] 12 | data_type: Types, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: field `name` is never read [INFO] [stderr] --> src/AstTree.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 70 | ClassAttribute { [INFO] [stderr] | -------------- field in this variant [INFO] [stderr] 71 | name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variants `ListDeclaration` and `Function` are never constructed [INFO] [stderr] --> src/AstTree.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 9 | pub enum Statement { [INFO] [stderr] | --------- variants in this enum [INFO] [stderr] ... [INFO] [stderr] 15 | ListDeclaration { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 20 | Function { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Statement` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: struct `StructField` is never constructed [INFO] [stderr] --> src/AstTree.rs:77:8 [INFO] [stderr] | [INFO] [stderr] 77 | struct StructField { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `data_type` is never read [INFO] [stderr] --> src/AstTree.rs:85:9 [INFO] [stderr] | [INFO] [stderr] 83 | pub struct FunctionParameter { [INFO] [stderr] | ----------------- field in this struct [INFO] [stderr] 84 | pub name: String, [INFO] [stderr] 85 | pub data_type: Types, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `FunctionParameter` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: variant `Literal` is never constructed [INFO] [stderr] --> src/AstTree.rs:115:5 [INFO] [stderr] | [INFO] [stderr] 89 | pub enum AstExpressions { [INFO] [stderr] | -------------- variant in this enum [INFO] [stderr] ... [INFO] [stderr] 115 | Literal { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `AstExpressions` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `evaluate`, `perform_arithmetic_operation`, `perform_unary_operation`, `perform_comparison_operation`, and `execute_function_call` are never used [INFO] [stderr] --> src/AstTree.rs:143:12 [INFO] [stderr] | [INFO] [stderr] 142 | impl AstExpressions { [INFO] [stderr] | ------------------- methods in this implementation [INFO] [stderr] 143 | pub fn evaluate(&self, env: &Environment) -> Option { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 267 | fn perform_arithmetic_operation(&self, left: &DataHolder, operator: &ArithmeticOperator, right: &DataHolder) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 336 | fn perform_unary_operation(&self, operator: &ArithmeticOperator, operand: &DataHolder) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 352 | fn perform_comparison_operation(&self, left: &DataHolder, operator: &ComparisonOperator, right: &DataHolder) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 407 | fn execute_function_call(&self, func_name: &str, args: Vec, env: &Environment) -> Option { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `peek_token` is never used [INFO] [stderr] --> src/AstTree.rs:478:8 [INFO] [stderr] | [INFO] [stderr] 469 | impl TokenCursor { [INFO] [stderr] | ---------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 478 | fn peek_token(&self, offset: usize) -> Option<&Tokens> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: static `GLOBAL_ENV` is never used [INFO] [stderr] --> src/Environment.rs:46:8 [INFO] [stderr] | [INFO] [stderr] 46 | static GLOBAL_ENV: OnceLock> = OnceLock::new(); [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `get_global_env` is never used [INFO] [stderr] --> src/Environment.rs:48:8 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn get_global_env() -> &'static Mutex { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/runtime.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 12 | Return(DataHolder), [INFO] [stderr] | ------ ^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | field in this variant [INFO] [stderr] | [INFO] [stderr] = note: `ExecutionResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stderr] | [INFO] [stderr] 12 - Return(DataHolder), [INFO] [stderr] 12 + Return(()), [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: variant `None` is never constructed [INFO] [stderr] --> src/runtime.rs:11:5 [INFO] [stderr] | [INFO] [stderr] 10 | pub enum ExecutionResult { [INFO] [stderr] | --------------- variant in this enum [INFO] [stderr] 11 | None, [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `ExecutionResult` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: fields `name` and `is_method` are never read [INFO] [stderr] --> src/runtime.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 24 | pub struct UserFunction { [INFO] [stderr] | ------------ fields in this struct [INFO] [stderr] 25 | pub name: String, [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 28 | pub is_method: bool, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `UserFunction` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: methods `get_environment` and `get_environment_mut` are never used [INFO] [stderr] --> src/runtime.rs:783:12 [INFO] [stderr] | [INFO] [stderr] 39 | impl Runtime { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 783 | pub fn get_environment(&self) -> &Environment { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 787 | pub fn get_environment_mut(&mut self) -> &mut Environment { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `has_function` and `get_function_names` are never used [INFO] [stderr] --> src/Functions.rs:31:12 [INFO] [stderr] | [INFO] [stderr] 10 | impl BuiltInFunction { [INFO] [stderr] | -------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn has_function(&self, name: &str) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 35 | pub fn get_function_names(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: module `AstTree` should have a snake case name [INFO] [stderr] --> src/main.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | mod AstTree; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `ast_tree` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: module `Environment` should have a snake case name [INFO] [stderr] --> src/main.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | mod Environment; [INFO] [stderr] | ^^^^^^^^^^^ help: convert the identifier to snake case: `environment` [INFO] [stderr] [INFO] [stderr] warning: module `Functions` should have a snake case name [INFO] [stderr] --> src/main.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | mod Functions; [INFO] [stderr] | ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `functions` [INFO] [stderr] [INFO] [stderr] warning: module `Repl` should have a snake case name [INFO] [stderr] --> src/main.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | mod Repl; [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `repl` [INFO] [stderr] [INFO] [stderr] warning: structure field `Build_in` should have a snake case name [INFO] [stderr] --> src/tokenizer.rs:157:5 [INFO] [stderr] | [INFO] [stderr] 157 | Build_in : BuildInFunction [INFO] [stderr] | ^^^^^^^^ help: convert the identifier to snake case: `build_in` [INFO] [stderr] [INFO] [stderr] warning: `OxyPy` (bin "OxyPy" test) generated 46 warnings (run `cargo fix --bin "OxyPy" --tests` to apply 7 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/OxyPy-07165f64319185b7) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c82b27d5c2453f2106443ae2d8e6b10d7b854b4969e997e2304f99aa45949ac0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c82b27d5c2453f2106443ae2d8e6b10d7b854b4969e997e2304f99aa45949ac0", kill_on_drop: false }` [INFO] [stdout] c82b27d5c2453f2106443ae2d8e6b10d7b854b4969e997e2304f99aa45949ac0