[INFO] cloning repository https://github.com/justDeeevin/monkey [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/justDeeevin/monkey" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FjustDeeevin%2Fmonkey", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FjustDeeevin%2Fmonkey'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3ffd2b15ffafcdb334e93a2a8069218c6efd2561 [INFO] testing justDeeevin/monkey against 1.85.0 for beta-1.86-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FjustDeeevin%2Fmonkey" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/justDeeevin/monkey on toolchain 1.85.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.85.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/justDeeevin/monkey [INFO] finished tweaking git repo https://github.com/justDeeevin/monkey [INFO] tweaked toml for git repo https://github.com/justDeeevin/monkey written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/justDeeevin/monkey 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" "+1.85.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded downcast-rs v2.0.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9648c11d25444dfdeb13557b60ec0ced887b76e0f3f72e6f9f6ebb7e94a736a4 [INFO] running `Command { std: "docker" "start" "-a" "9648c11d25444dfdeb13557b60ec0ced887b76e0f3f72e6f9f6ebb7e94a736a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9648c11d25444dfdeb13557b60ec0ced887b76e0f3f72e6f9f6ebb7e94a736a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9648c11d25444dfdeb13557b60ec0ced887b76e0f3f72e6f9f6ebb7e94a736a4", kill_on_drop: false }` [INFO] [stdout] 9648c11d25444dfdeb13557b60ec0ced887b76e0f3f72e6f9f6ebb7e94a736a4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:3959728d45483eb673ba100a951a6b9f5012970368db2a9e08e0ac9b67c8a5ad" "/opt/rustwide/cargo-home/bin/cargo" "+1.85.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c19d6ba6968f0f02e1fa09fcb7aeab179182d57f70df981fd89d8d62d2b7e3d6 [INFO] running `Command { std: "docker" "start" "-a" "c19d6ba6968f0f02e1fa09fcb7aeab179182d57f70df981fd89d8d62d2b7e3d6", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.16 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Compiling bitflags v2.8.0 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling libc v0.2.169 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling linux-raw-sys v0.4.15 [INFO] [stderr] Compiling endian-type v0.1.2 [INFO] [stderr] Compiling thiserror v2.0.11 [INFO] [stderr] Compiling home v0.5.11 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling unicode-segmentation v1.12.0 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling log v0.4.25 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling nix v0.29.0 [INFO] [stderr] Compiling downcast-rs v2.0.1 [INFO] [stderr] Compiling dyn-clone v1.0.18 [INFO] [stderr] Compiling nibble_vec v0.1.0 [INFO] [stderr] Compiling radix_trie v0.2.1 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling syn v2.0.98 [INFO] [stderr] Compiling fd-lock v4.0.2 [INFO] [stderr] Compiling thiserror-impl v2.0.11 [INFO] [stderr] Compiling rustyline v15.0.0 [INFO] [stderr] Compiling monkey v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:114:45 [INFO] [stdout] | [INFO] [stdout] 114 | expr as ExpressionStatement => eval(expr.expression.as_ref(), scope), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:118:30 [INFO] [stdout] | [INFO] [stdout] 118 | let right = eval(prefix.right.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:122:29 [INFO] [stdout] | [INFO] [stdout] 122 | let left = eval(infix.left.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:123:30 [INFO] [stdout] | [INFO] [stdout] 123 | let right = eval(infix.right.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:129:25 [INFO] [stdout] | [INFO] [stdout] 129 | value: eval(return_statement.value.as_ref(), scope)?, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:132:34 [INFO] [stdout] | [INFO] [stdout] 132 | let mut value = eval(let_statement.value.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:147:33 [INFO] [stdout] | [INFO] [stdout] 147 | let function = eval(call.function.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:158:28 [INFO] [stdout] | [INFO] [stdout] 158 | match eval(element.as_ref(), scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:169:53 [INFO] [stdout] | [INFO] [stdout] 169 | index as IndexExpression => eval_index(eval(index.left.as_ref(), scope)?, eval(index.index.as_ref(), scope)?), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:169:88 [INFO] [stdout] | [INFO] [stdout] 169 | index as IndexExpression => eval_index(eval(index.left.as_ref(), scope)?, eval(index.index.as_ref(), scope)?), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:178:22 [INFO] [stdout] | [INFO] [stdout] 178 | let k = eval(k.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:179:22 [INFO] [stdout] | [INFO] [stdout] 179 | let v = eval(v.as_ref(), scope)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:243:20 [INFO] [stdout] | [INFO] [stdout] 243 | match eval(expression.as_ref(), env) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Statement` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:270:20 [INFO] [stdout] | [INFO] [stdout] 270 | match eval(statement.as_ref(), &mut scope) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Statement` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Statement` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:293:20 [INFO] [stdout] | [INFO] [stdout] 293 | match eval(statement.as_ref(), env) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Statement` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0658]: cannot cast `dyn ast::traits::Expression` to `dyn ast::traits::Node`, trait upcasting coercion is experimental [INFO] [stdout] --> src/eval/mod.rs:432:21 [INFO] [stdout] | [INFO] [stdout] 432 | let cond = eval(if_expr.cond.as_ref(), env)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #65991 for more information [INFO] [stdout] = note: required when coercing `&dyn ast::traits::Expression` into `&(dyn ast::traits::Node + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] [INFO] [stderr] error: could not compile `monkey` (bin "monkey") due to 16 previous errors [INFO] running `Command { std: "docker" "inspect" "c19d6ba6968f0f02e1fa09fcb7aeab179182d57f70df981fd89d8d62d2b7e3d6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c19d6ba6968f0f02e1fa09fcb7aeab179182d57f70df981fd89d8d62d2b7e3d6", kill_on_drop: false }` [INFO] [stdout] c19d6ba6968f0f02e1fa09fcb7aeab179182d57f70df981fd89d8d62d2b7e3d6