[INFO] cloning repository https://github.com/liam-hatcher/monkey-lang [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/liam-hatcher/monkey-lang" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliam-hatcher%2Fmonkey-lang", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliam-hatcher%2Fmonkey-lang'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] efc59c7190be7a8f040d4aaffc5e0475b97be4db [INFO] testing liam-hatcher/monkey-lang against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759-retry [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fliam-hatcher%2Fmonkey-lang" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/liam-hatcher/monkey-lang [INFO] finished tweaking git repo https://github.com/liam-hatcher/monkey-lang [INFO] tweaked toml for git repo https://github.com/liam-hatcher/monkey-lang written to /workspace/builds/worker-1-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/liam-hatcher/monkey-lang on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/liam-hatcher/monkey-lang 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0a22dc2aa0082fc0639af94640eb2bd9fed103cf11d294fdde61cba42e2401c6 [INFO] running `Command { std: "docker" "start" "-a" "0a22dc2aa0082fc0639af94640eb2bd9fed103cf11d294fdde61cba42e2401c6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0a22dc2aa0082fc0639af94640eb2bd9fed103cf11d294fdde61cba42e2401c6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a22dc2aa0082fc0639af94640eb2bd9fed103cf11d294fdde61cba42e2401c6", kill_on_drop: false }` [INFO] [stdout] 0a22dc2aa0082fc0639af94640eb2bd9fed103cf11d294fdde61cba42e2401c6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 18f896f9a6c8077a5a89373f49261fa9dcb19e51d05d0ae0fe907ed4f390f9bc [INFO] running `Command { std: "docker" "start" "-a" "18f896f9a6c8077a5a89373f49261fa9dcb19e51d05d0ae0fe907ed4f390f9bc", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.21.1 [INFO] [stderr] Compiling monkey-interpreter v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `error::Error` [INFO] [stdout] --> src/compiler/mod.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{error::Error, fmt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `let_statement` [INFO] [stdout] --> src/compiler/mod.rs:136:32 [INFO] [stdout] | [INFO] [stdout] 136 | Statement::Let(let_statement) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_let_statement` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `return_statement` [INFO] [stdout] --> src/compiler/mod.rs:137:35 [INFO] [stdout] | [INFO] [stdout] 137 | Statement::Return(return_statement) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_statement` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `identifier_expression` [INFO] [stdout] --> src/compiler/mod.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | Expression::Identifier(identifier_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identifier_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `function_literal` [INFO] [stdout] --> src/compiler/mod.rs:247:38 [INFO] [stdout] | [INFO] [stdout] 247 | Expression::Function(function_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `call_expression` [INFO] [stdout] --> src/compiler/mod.rs:248:34 [INFO] [stdout] | [INFO] [stdout] 248 | Expression::Call(call_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_call_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_literal` [INFO] [stdout] --> src/compiler/mod.rs:249:36 [INFO] [stdout] | [INFO] [stdout] 249 | Expression::String(string_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `array_literal` [INFO] [stdout] --> src/compiler/mod.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | Expression::Array(array_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_array_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index_expression` [INFO] [stdout] --> src/compiler/mod.rs:251:35 [INFO] [stdout] | [INFO] [stdout] 251 | Expression::Index(index_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash_literal` [INFO] [stdout] --> src/compiler/mod.rs:252:34 [INFO] [stdout] | [INFO] [stdout] 252 | Expression::Hash(hash_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_string` is never used [INFO] [stdout] --> src/ast.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 347 | impl Program { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] 348 | pub fn to_string(&self) -> String { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `InstructionsExt` is never used [INFO] [stdout] --> src/code/mod.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait InstructionsExt { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `name` is never read [INFO] [stdout] --> src/code/mod.rs:105:5 [INFO] [stdout] | [INFO] [stdout] 104 | pub struct Definition { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] 105 | name: &'static str, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read_operands` is never used [INFO] [stdout] --> src/code/mod.rs:209:8 [INFO] [stdout] | [INFO] [stdout] 209 | pub fn read_operands(def: &Definition, ins: &Instructions) -> (Vec, i32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `stack_top` is never used [INFO] [stdout] --> src/vm/mod.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl MonkeyVM { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn stack_top(&self) -> Option<&Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> src/object/mod.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 35 | Native(NativeFn), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.37s [INFO] running `Command { std: "docker" "inspect" "18f896f9a6c8077a5a89373f49261fa9dcb19e51d05d0ae0fe907ed4f390f9bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "18f896f9a6c8077a5a89373f49261fa9dcb19e51d05d0ae0fe907ed4f390f9bc", kill_on_drop: false }` [INFO] [stdout] 18f896f9a6c8077a5a89373f49261fa9dcb19e51d05d0ae0fe907ed4f390f9bc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a4c0219479e099314a0b4426378695e46d9b11125c13e054f60ca87d4f71d469 [INFO] running `Command { std: "docker" "start" "-a" "a4c0219479e099314a0b4426378695e46d9b11125c13e054f60ca87d4f71d469", kill_on_drop: false }` [INFO] [stderr] Compiling monkey-interpreter v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `error::Error` [INFO] [stdout] --> src/compiler/mod.rs:1:11 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{error::Error, fmt}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `let_statement` [INFO] [stdout] --> src/compiler/mod.rs:136:32 [INFO] [stdout] | [INFO] [stdout] 136 | Statement::Let(let_statement) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_let_statement` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `return_statement` [INFO] [stdout] --> src/compiler/mod.rs:137:35 [INFO] [stdout] | [INFO] [stdout] 137 | Statement::Return(return_statement) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_statement` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `identifier_expression` [INFO] [stdout] --> src/compiler/mod.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | Expression::Identifier(identifier_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identifier_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `function_literal` [INFO] [stdout] --> src/compiler/mod.rs:247:38 [INFO] [stdout] | [INFO] [stdout] 247 | Expression::Function(function_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `call_expression` [INFO] [stdout] --> src/compiler/mod.rs:248:34 [INFO] [stdout] | [INFO] [stdout] 248 | Expression::Call(call_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_call_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string_literal` [INFO] [stdout] --> src/compiler/mod.rs:249:36 [INFO] [stdout] | [INFO] [stdout] 249 | Expression::String(string_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `array_literal` [INFO] [stdout] --> src/compiler/mod.rs:250:35 [INFO] [stdout] | [INFO] [stdout] 250 | Expression::Array(array_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_array_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `index_expression` [INFO] [stdout] --> src/compiler/mod.rs:251:35 [INFO] [stdout] | [INFO] [stdout] 251 | Expression::Index(index_expression) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index_expression` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash_literal` [INFO] [stdout] --> src/compiler/mod.rs:252:34 [INFO] [stdout] | [INFO] [stdout] 252 | Expression::Hash(hash_literal) => todo!(), [INFO] [stdout] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_literal` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/vm/vm_tests.rs:46:24 [INFO] [stdout] | [INFO] [stdout] 46 | } else if let Some(n) = expected.downcast_ref::() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `stack_top` is never used [INFO] [stdout] --> src/vm/mod.rs:54:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl MonkeyVM { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn stack_top(&self) -> Option<&Box> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stdout] --> src/object/mod.rs:35:12 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, PartialEq)] [INFO] [stdout] | --------- in this derive macro expansion [INFO] [stdout] ... [INFO] [stdout] 35 | Native(NativeFn), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: the address of the same function can vary between different codegen units [INFO] [stdout] = note: furthermore, different functions could have the same address after being merged together [INFO] [stdout] = note: for more information visit [INFO] [stdout] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.76s [INFO] running `Command { std: "docker" "inspect" "a4c0219479e099314a0b4426378695e46d9b11125c13e054f60ca87d4f71d469", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4c0219479e099314a0b4426378695e46d9b11125c13e054f60ca87d4f71d469", kill_on_drop: false }` [INFO] [stdout] a4c0219479e099314a0b4426378695e46d9b11125c13e054f60ca87d4f71d469 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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 -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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] ea93577a0de0e0ac5b3774020632033635d05f10b54ca5e0d7bd71110e75e2ea [INFO] running `Command { std: "docker" "start" "-a" "ea93577a0de0e0ac5b3774020632033635d05f10b54ca5e0d7bd71110e75e2ea", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `error::Error` [INFO] [stderr] --> src/compiler/mod.rs:1:11 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{error::Error, fmt}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `let_statement` [INFO] [stderr] --> src/compiler/mod.rs:136:32 [INFO] [stderr] | [INFO] [stderr] 136 | Statement::Let(let_statement) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_let_statement` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `return_statement` [INFO] [stderr] --> src/compiler/mod.rs:137:35 [INFO] [stderr] | [INFO] [stderr] 137 | Statement::Return(return_statement) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_return_statement` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `identifier_expression` [INFO] [stderr] --> src/compiler/mod.rs:246:40 [INFO] [stderr] | [INFO] [stderr] 246 | Expression::Identifier(identifier_expression) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_identifier_expression` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `function_literal` [INFO] [stderr] --> src/compiler/mod.rs:247:38 [INFO] [stderr] | [INFO] [stderr] 247 | Expression::Function(function_literal) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_function_literal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `call_expression` [INFO] [stderr] --> src/compiler/mod.rs:248:34 [INFO] [stderr] | [INFO] [stderr] 248 | Expression::Call(call_expression) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_call_expression` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `string_literal` [INFO] [stderr] --> src/compiler/mod.rs:249:36 [INFO] [stderr] | [INFO] [stderr] 249 | Expression::String(string_literal) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_string_literal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `array_literal` [INFO] [stderr] --> src/compiler/mod.rs:250:35 [INFO] [stderr] | [INFO] [stderr] 250 | Expression::Array(array_literal) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_array_literal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index_expression` [INFO] [stderr] --> src/compiler/mod.rs:251:35 [INFO] [stderr] | [INFO] [stderr] 251 | Expression::Index(index_expression) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_index_expression` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash_literal` [INFO] [stderr] --> src/compiler/mod.rs:252:34 [INFO] [stderr] | [INFO] [stderr] 252 | Expression::Hash(hash_literal) => todo!(), [INFO] [stderr] | ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_hash_literal` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `n` [INFO] [stderr] --> src/vm/vm_tests.rs:46:24 [INFO] [stderr] | [INFO] [stderr] 46 | } else if let Some(n) = expected.downcast_ref::() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stderr] [INFO] [stderr] warning: method `stack_top` is never used [INFO] [stderr] --> src/vm/mod.rs:54:12 [INFO] [stderr] | [INFO] [stderr] 44 | impl MonkeyVM { [INFO] [stderr] | ------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 54 | pub fn stack_top(&self) -> Option<&Box> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique [INFO] [stderr] --> src/object/mod.rs:35:12 [INFO] [stderr] | [INFO] [stderr] 26 | #[derive(Debug, PartialEq)] [INFO] [stderr] | --------- in this derive macro expansion [INFO] [stderr] ... [INFO] [stderr] 35 | Native(NativeFn), [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the address of the same function can vary between different codegen units [INFO] [stderr] = note: furthermore, different functions could have the same address after being merged together [INFO] [stderr] = note: for more information visit [INFO] [stderr] = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `monkey-interpreter` (bin "monkey-interpreter" test) generated 13 warnings (run `cargo fix --bin "monkey-interpreter" --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/monkey_interpreter-6039442c5e109278) [INFO] [stdout] [INFO] [stdout] running 44 tests [INFO] [stdout] test code::code_tests::test_instructions_string ... ok [INFO] [stdout] test code::code_tests::test_make ... ok [INFO] [stdout] test compiler::compiler_tests::test_integer_arithmetic ... ok [INFO] [stdout] test compiler::compiler_tests::test_conditionals ... ok [INFO] [stdout] test compiler::compiler_tests::test_boolean_expressions ... ok [INFO] [stdout] test compiler::compiler_tests::test_read_operands ... ok [INFO] [stdout] test evaluator::evaluator_tests::if_else_expressions ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_array_index_expressions ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_array_literals ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_bang_operator ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_closures ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_error_handling ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_eval_boolean_expression ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_function_object ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_eval_integer_expression ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_function_application ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_hash_index_expressions ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_hash_literals ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_let_statements ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_native_functions ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_string_concatenation ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_string_literal ... ok [INFO] [stdout] test evaluator::evaluator_tests::test_return_statements ... ok [INFO] [stdout] test lexer::lexer_tests::test_next_token ... ok [INFO] [stdout] test parser::parser_tests::test_call_espression_parsing ... ok [INFO] [stdout] test parser::parser_tests::test_empty_hash_literal ... ok [INFO] [stdout] test parser::parser_tests::test_identifier_expression ... ok [INFO] [stdout] test parser::parser_tests::test_function_literal ... ok [INFO] [stdout] test parser::parser_tests::test_if_expression ... ok [INFO] [stdout] test parser::parser_tests::test_integer_literal_expression ... ok [INFO] [stdout] test parser::parser_tests::test_let_statements ... ok [INFO] [stdout] test parser::parser_tests::test_infix_expresions ... ok [INFO] [stdout] test parser::parser_tests::test_parse_function_parameters ... ok [INFO] [stdout] test parser::parser_tests::test_parsing_array_literals ... ok [INFO] [stdout] test parser::parser_tests::test_operator_precedence ... ok [INFO] [stdout] test parser::parser_tests::test_parsing_hash_literals ... ok [INFO] [stdout] test parser::parser_tests::test_parsing_hash_literals_with_expressions ... ok [INFO] [stdout] test parser::parser_tests::test_parsing_index_expressions ... ok [INFO] [stdout] test parser::parser_tests::test_prefix_expressions ... ok [INFO] [stdout] test parser::parser_tests::test_string_literal_expression ... ok [INFO] [stdout] test parser::parser_tests::test_return_statements ... ok [INFO] [stdout] test vm::vm_tests::test_conditionals ... ok [INFO] [stdout] test vm::vm_tests::test_boolean_expressions ... ok [INFO] [stdout] test vm::vm_tests::test_integer_arithmetic ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "ea93577a0de0e0ac5b3774020632033635d05f10b54ca5e0d7bd71110e75e2ea", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ea93577a0de0e0ac5b3774020632033635d05f10b54ca5e0d7bd71110e75e2ea", kill_on_drop: false }` [INFO] [stdout] ea93577a0de0e0ac5b3774020632033635d05f10b54ca5e0d7bd71110e75e2ea