[INFO] cloning repository https://github.com/bem130/NEPLg2
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bem130/NEPLg2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbem130%2FNEPLg2", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbem130%2FNEPLg2'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 649fe0c5ce97611c1eb659c533f641f6e9243dd4
[INFO] testing bem130/NEPLg2 against beta-2026-01-20 for beta-1.94-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbem130%2FNEPLg2" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/bem130/NEPLg2
[INFO] finished tweaking git repo https://github.com/bem130/NEPLg2
[INFO] tweaked toml for git repo https://github.com/bem130/NEPLg2 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/bem130/NEPLg2 on toolchain beta-2026-01-20
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/bem130/NEPLg2 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" "+beta-2026-01-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cc24226e1ce786540c2acaa1d42bf7c19163d46c34a5639406d96833f4fc9600
[INFO] running `Command { std: "docker" "start" "-a" "cc24226e1ce786540c2acaa1d42bf7c19163d46c34a5639406d96833f4fc9600", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cc24226e1ce786540c2acaa1d42bf7c19163d46c34a5639406d96833f4fc9600", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc24226e1ce786540c2acaa1d42bf7c19163d46c34a5639406d96833f4fc9600", kill_on_drop: false }`
[INFO] [stdout] cc24226e1ce786540c2acaa1d42bf7c19163d46c34a5639406d96833f4fc9600
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fc23ac80576725e8933c3c03e73f043dd9d8b52a507910ec9ec4b8a481c4fe49
[INFO] running `Command { std: "docker" "start" "-a" "fc23ac80576725e8933c3c03e73f043dd9d8b52a507910ec9ec4b8a481c4fe49", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling wasm-encoder v0.241.2
[INFO] [stderr]    Compiling leb128fmt v0.1.0
[INFO] [stderr]    Compiling downcast-rs v1.2.1
[INFO] [stderr]    Compiling indexmap-nostd v0.4.0
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling anstream v0.6.21
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling wasmparser-nostd v0.100.2
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling wasmi_arena v0.4.1
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling syn v2.0.110
[INFO] [stderr]    Compiling wasmi_core v0.13.0
[INFO] [stderr]    Compiling wasmi v0.31.2
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]    Compiling nepl-core v0.1.0 (/opt/rustwide/workdir/nepl-core)
[INFO] [stdout] warning: unused import: `alloc::string::String`
[INFO] [stdout]   --> nepl-core/src/error.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use alloc::string::String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::boxed::Box`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::boxed::Box;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use alloc::vec;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HirLine`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:11:59
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hir::{FuncRef, HirBlock, HirExpr, HirExprKind, HirLine, HirModule};
[INFO] [stdout]    |                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::TypeId`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::types::TypeId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeSet`
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | use alloc::collections::{BTreeMap, BTreeSet};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToString`
[INFO] [stdout]  --> nepl-core/src/types.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::string::{String, ToString};
[INFO] [stdout]   |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/ast.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/builtins.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/codegen_wasm.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/compiler.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/hir.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/lexer.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/monomorphize.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/parser.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/drop_insertion.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/types.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/src/parser.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let mut start_span = self.peek_span().unwrap_or_else(Span::dummy);
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fn_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:301:13
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let fn_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fn_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> nepl-core/src/parser.rs:987:53
[INFO] [stdout]     |
[INFO] [stdout] 987 |             let bind = if let Some(TokenKind::Ident(bn)) = self.peek_kind() {
[INFO] [stdout]     |                                                     ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dot_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1068:21
[INFO] [stdout]      |
[INFO] [stdout] 1068 |                 let dot_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tok`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1070:25
[INFO] [stdout]      |
[INFO] [stdout] 1070 |                     let tok = self.next().unwrap();
[INFO] [stdout]      |                         ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1077:21
[INFO] [stdout]      |
[INFO] [stdout] 1077 |                 let lp_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1080:25
[INFO] [stdout]      |
[INFO] [stdout] 1080 |                     let rp_span = self.next().unwrap().span;
[INFO] [stdout]      |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1164:30
[INFO] [stdout]      |
[INFO] [stdout] 1164 |             TokenKind::Ident(name) => {
[INFO] [stdout]      |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:568:24
[INFO] [stdout]     |
[INFO] [stdout] 568 |                     Ok(mut func) => {
[INFO] [stdout]     |                        ----^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:937:13
[INFO] [stdout]     |
[INFO] [stdout] 937 |         let mut dropped = false;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp`
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1147:42
[INFO] [stdout]      |
[INFO] [stdout] 1147 |                 PrefixItem::Match(mexpr, sp) => {
[INFO] [stdout]      |                                          ^^ help: if this is intentional, prefix it with an underscore: `_sp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]   --> nepl-core/src/codegen_wasm.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl StringLower {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn is_empty(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_param` is never read
[INFO] [stdout]    --> nepl-core/src/codegen_wasm.rs:827:5
[INFO] [stdout]     |
[INFO] [stdout] 823 | struct LocalInfo {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 827 |     is_param: bool,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]   --> nepl-core/src/lexer.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct LexState<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 95 |     file_id: FileId,
[INFO] [stdout] 96 |     src: &'a str,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file_id` is never read
[INFO] [stdout]   --> nepl-core/src/parser.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Parser {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 48 |     file_id: FileId,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | struct TraitInfo {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 42 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TraitInfo` 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 `trait_name`, `target_ty`, and `methods` are never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ImplInfo {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 50 |     trait_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 51 |     target_ty: TypeId,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 52 |     methods: BTreeMap<String, (String, TypeId)>, // name -> (mangled_name, type)
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ImplInfo` 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: associated function `split_if_then_else_block_ast` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1416:8
[INFO] [stdout]      |
[INFO] [stdout]  737 | impl<'a> BlockChecker<'a> {
[INFO] [stdout]      | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1416 |     fn split_if_then_else_block_ast(b: &Block) -> Option<(Block, Block)> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `moved` is never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1857:5
[INFO] [stdout]      |
[INFO] [stdout] 1852 | struct Binding {
[INFO] [stdout]      |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1857 |     moved: bool,
[INFO] [stdout]      |     ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Binding` 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 `effect` and `arity` are never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1865:9
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     Func {
[INFO] [stdout]      |     ---- fields in this variant
[INFO] [stdout] 1865 |         effect: Effect,
[INFO] [stdout]      |         ^^^^^^
[INFO] [stdout] 1866 |         arity: usize,
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `BindingKind` 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 `lookup_current_mut` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1913:8
[INFO] [stdout]      |
[INFO] [stdout] 1876 | impl Env {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1913 |     fn lookup_current_mut(&mut self, name: &str) -> Option<&mut Binding> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nepl-cli v0.1.0 (/opt/rustwide/workdir/nepl-cli)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:168:10
[INFO] [stdout]     |
[INFO] [stdout] 168 |         |mut caller: Caller<'_, AllocState>, ptr: i32| {
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:387:14
[INFO] [stdout]     |
[INFO] [stdout] 387 |             |mut caller: Caller<'_, AllocState>,
[INFO] [stdout]     |              ----^^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 37.68s
[INFO] running `Command { std: "docker" "inspect" "fc23ac80576725e8933c3c03e73f043dd9d8b52a507910ec9ec4b8a481c4fe49", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc23ac80576725e8933c3c03e73f043dd9d8b52a507910ec9ec4b8a481c4fe49", kill_on_drop: false }`
[INFO] [stdout] fc23ac80576725e8933c3c03e73f043dd9d8b52a507910ec9ec4b8a481c4fe49
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7b4f4b9c9af8adaaa2185eb86734989ce92565669326229f26a0defd6811f25c
[INFO] running `Command { std: "docker" "start" "-a" "7b4f4b9c9af8adaaa2185eb86734989ce92565669326229f26a0defd6811f25c", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stdout] warning: unused import: `alloc::string::String`
[INFO] [stdout]   --> nepl-core/src/error.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use alloc::string::String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::boxed::Box`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::boxed::Box;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use alloc::vec;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HirLine`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:11:59
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hir::{FuncRef, HirBlock, HirExpr, HirExprKind, HirLine, HirModule};
[INFO] [stdout]    |                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::TypeId`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::types::TypeId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeSet`
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | use alloc::collections::{BTreeMap, BTreeSet};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToString`
[INFO] [stdout]  --> nepl-core/src/types.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::string::{String, ToString};
[INFO] [stdout]   |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/ast.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/builtins.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/codegen_wasm.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/compiler.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling hashbrown v0.16.1
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/hir.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wasmparser v0.241.2
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/lexer.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/monomorphize.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/parser.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/drop_insertion.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/types.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/src/parser.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let mut start_span = self.peek_span().unwrap_or_else(Span::dummy);
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fn_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:301:13
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let fn_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fn_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> nepl-core/src/parser.rs:987:53
[INFO] [stdout]     |
[INFO] [stdout] 987 |             let bind = if let Some(TokenKind::Ident(bn)) = self.peek_kind() {
[INFO] [stdout]     |                                                     ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dot_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1068:21
[INFO] [stdout]      |
[INFO] [stdout] 1068 |                 let dot_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tok`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1070:25
[INFO] [stdout]      |
[INFO] [stdout] 1070 |                     let tok = self.next().unwrap();
[INFO] [stdout]      |                         ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1077:21
[INFO] [stdout]      |
[INFO] [stdout] 1077 |                 let lp_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1080:25
[INFO] [stdout]      |
[INFO] [stdout] 1080 |                     let rp_span = self.next().unwrap().span;
[INFO] [stdout]      |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1164:30
[INFO] [stdout]      |
[INFO] [stdout] 1164 |             TokenKind::Ident(name) => {
[INFO] [stdout]      |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:568:24
[INFO] [stdout]     |
[INFO] [stdout] 568 |                     Ok(mut func) => {
[INFO] [stdout]     |                        ----^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:937:13
[INFO] [stdout]     |
[INFO] [stdout] 937 |         let mut dropped = false;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp`
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1147:42
[INFO] [stdout]      |
[INFO] [stdout] 1147 |                 PrefixItem::Match(mexpr, sp) => {
[INFO] [stdout]      |                                          ^^ help: if this is intentional, prefix it with an underscore: `_sp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]   --> nepl-core/src/codegen_wasm.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl StringLower {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn is_empty(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_param` is never read
[INFO] [stdout]    --> nepl-core/src/codegen_wasm.rs:827:5
[INFO] [stdout]     |
[INFO] [stdout] 823 | struct LocalInfo {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 827 |     is_param: bool,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]   --> nepl-core/src/lexer.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct LexState<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 95 |     file_id: FileId,
[INFO] [stdout] 96 |     src: &'a str,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file_id` is never read
[INFO] [stdout]   --> nepl-core/src/parser.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Parser {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 48 |     file_id: FileId,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | struct TraitInfo {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 42 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TraitInfo` 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 `trait_name`, `target_ty`, and `methods` are never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ImplInfo {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 50 |     trait_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 51 |     target_ty: TypeId,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 52 |     methods: BTreeMap<String, (String, TypeId)>, // name -> (mangled_name, type)
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ImplInfo` 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: associated function `split_if_then_else_block_ast` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1416:8
[INFO] [stdout]      |
[INFO] [stdout]  737 | impl<'a> BlockChecker<'a> {
[INFO] [stdout]      | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1416 |     fn split_if_then_else_block_ast(b: &Block) -> Option<(Block, Block)> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `moved` is never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1857:5
[INFO] [stdout]      |
[INFO] [stdout] 1852 | struct Binding {
[INFO] [stdout]      |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1857 |     moved: bool,
[INFO] [stdout]      |     ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Binding` 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 `effect` and `arity` are never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1865:9
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     Func {
[INFO] [stdout]      |     ---- fields in this variant
[INFO] [stdout] 1865 |         effect: Effect,
[INFO] [stdout]      |         ^^^^^^
[INFO] [stdout] 1866 |         arity: usize,
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `BindingKind` 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 `lookup_current_mut` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1913:8
[INFO] [stdout]      |
[INFO] [stdout] 1876 | impl Env {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1913 |     fn lookup_current_mut(&mut self, name: &str) -> Option<&mut Binding> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:168:10
[INFO] [stdout]     |
[INFO] [stdout] 168 |         |mut caller: Caller<'_, AllocState>, ptr: i32| {
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:387:14
[INFO] [stdout]     |
[INFO] [stdout] 387 |             |mut caller: Caller<'_, AllocState>,
[INFO] [stdout]     |              ----^^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tempfile v3.23.0
[INFO] [stderr]    Compiling nepl-cli v0.1.0 (/opt/rustwide/workdir/nepl-cli)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:168:10
[INFO] [stdout]     |
[INFO] [stdout] 168 |         |mut caller: Caller<'_, AllocState>, ptr: i32| {
[INFO] [stdout]     |          ----^^^^^^
[INFO] [stdout]     |          |
[INFO] [stdout]     |          help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-cli/src/main.rs:387:14
[INFO] [stdout]     |
[INFO] [stdout] 387 |             |mut caller: Caller<'_, AllocState>,
[INFO] [stdout]     |              ----^^^^^^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling indexmap v2.12.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling nepl-core v0.1.0 (/opt/rustwide/workdir/nepl-core)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_ok` is never used
[INFO] [stdout]   --> nepl-core/tests/block_if_semantics.rs:18:4
[INFO] [stdout]    |
[INFO] [stdout] 18 | fn compile_ok(src: &str) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src_with_options` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::string::String`
[INFO] [stdout]   --> nepl-core/src/error.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use alloc::string::String;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::boxed::Box`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::boxed::Box;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `alloc::vec`
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use alloc::vec;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `HirLine`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:11:59
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hir::{FuncRef, HirBlock, HirExpr, HirExprKind, HirLine, HirModule};
[INFO] [stdout]    |                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::TypeId`
[INFO] [stdout]   --> nepl-core/src/passes/move_check.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::types::TypeId;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BTreeSet`
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:5:36
[INFO] [stdout]   |
[INFO] [stdout] 5 | use alloc::collections::{BTreeMap, BTreeSet};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ToString`
[INFO] [stdout]  --> nepl-core/src/types.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use alloc::string::{String, ToString};
[INFO] [stdout]   |                             ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src` is never used
[INFO] [stdout]  --> nepl-core/tests/harness.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn compile_src(src: &str) -> Vec<u8> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src_with_options` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_main_i32` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn run_main_i32(src: &str) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `stdlib_root` is never used
[INFO] [stdout]    --> nepl-core/tests/harness.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn stdlib_root() -> std::path::PathBuf {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src_with_options` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src_with_options` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/ast.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/builtins.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/codegen_wasm.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/compiler.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/hir.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/lexer.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/monomorphize.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/parser.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/drop_insertion.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/passes/move_check.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/typecheck.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stdout]  --> nepl-core/src/types.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![no_std]
[INFO] [stdout]   | ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src` is never used
[INFO] [stdout]  --> nepl-core/tests/harness.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn compile_src(src: &str) -> Vec<u8> {
[INFO] [stdout]   |        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_src_with_options` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_main_i32` is never used
[INFO] [stdout]   --> nepl-core/tests/harness.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn run_main_i32(src: &str) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `stdlib_root` is never used
[INFO] [stdout]    --> nepl-core/tests/harness.rs:248:4
[INFO] [stdout]     |
[INFO] [stdout] 248 | fn stdlib_root() -> std::path::PathBuf {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stdout]    |              ----^^^^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nepl-core/src/parser.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let mut start_span = self.peek_span().unwrap_or_else(Span::dummy);
[INFO] [stdout]    |             ----^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `kw_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let kw_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `fn_span`
[INFO] [stdout]    --> nepl-core/src/parser.rs:301:13
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let fn_span = self.next()?.span;
[INFO] [stdout]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fn_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bn`
[INFO] [stdout]    --> nepl-core/src/parser.rs:987:53
[INFO] [stdout]     |
[INFO] [stdout] 987 |             let bind = if let Some(TokenKind::Ident(bn)) = self.peek_kind() {
[INFO] [stdout]     |                                                     ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dot_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1068:21
[INFO] [stdout]      |
[INFO] [stdout] 1068 |                 let dot_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tok`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1070:25
[INFO] [stdout]      |
[INFO] [stdout] 1070 |                     let tok = self.next().unwrap();
[INFO] [stdout]      |                         ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1077:21
[INFO] [stdout]      |
[INFO] [stdout] 1077 |                 let lp_span = self.next().unwrap().span;
[INFO] [stdout]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `rp_span`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1080:25
[INFO] [stdout]      |
[INFO] [stdout] 1080 |                     let rp_span = self.next().unwrap().span;
[INFO] [stdout]      |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rp_span`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `name`
[INFO] [stdout]     --> nepl-core/src/parser.rs:1164:30
[INFO] [stdout]      |
[INFO] [stdout] 1164 |             TokenKind::Ident(name) => {
[INFO] [stdout]      |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:568:24
[INFO] [stdout]     |
[INFO] [stdout] 568 |                     Ok(mut func) => {
[INFO] [stdout]     |                        ----^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nepl-core/src/typecheck.rs:937:13
[INFO] [stdout]     |
[INFO] [stdout] 937 |         let mut dropped = false;
[INFO] [stdout]     |             ----^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp`
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1147:42
[INFO] [stdout]      |
[INFO] [stdout] 1147 |                 PrefixItem::Match(mexpr, sp) => {
[INFO] [stdout]      |                                          ^^ help: if this is intentional, prefix it with an underscore: `_sp`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_empty` is never used
[INFO] [stdout]   --> nepl-core/src/codegen_wasm.rs:41:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl StringLower {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn is_empty(&self) -> bool {
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_param` is never read
[INFO] [stdout]    --> nepl-core/src/codegen_wasm.rs:827:5
[INFO] [stdout]     |
[INFO] [stdout] 823 | struct LocalInfo {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 827 |     is_param: bool,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `src` is never read
[INFO] [stdout]   --> nepl-core/src/lexer.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct LexState<'a> {
[INFO] [stdout]    |        -------- field in this struct
[INFO] [stdout] 95 |     file_id: FileId,
[INFO] [stdout] 96 |     src: &'a str,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `file_id` is never read
[INFO] [stdout]   --> nepl-core/src/parser.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | struct Parser {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 48 |     file_id: FileId,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:42:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | struct TraitInfo {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] 42 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TraitInfo` 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 `trait_name`, `target_ty`, and `methods` are never read
[INFO] [stdout]   --> nepl-core/src/typecheck.rs:50:5
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct ImplInfo {
[INFO] [stdout]    |        -------- fields in this struct
[INFO] [stdout] 50 |     trait_name: Option<String>,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 51 |     target_ty: TypeId,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 52 |     methods: BTreeMap<String, (String, TypeId)>, // name -> (mangled_name, type)
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ImplInfo` 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: associated function `split_if_then_else_block_ast` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1416:8
[INFO] [stdout]      |
[INFO] [stdout]  737 | impl<'a> BlockChecker<'a> {
[INFO] [stdout]      | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1416 |     fn split_if_then_else_block_ast(b: &Block) -> Option<(Block, Block)> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `moved` is never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1857:5
[INFO] [stdout]      |
[INFO] [stdout] 1852 | struct Binding {
[INFO] [stdout]      |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 1857 |     moved: bool,
[INFO] [stdout]      |     ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Binding` 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 `effect` and `arity` are never read
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1865:9
[INFO] [stdout]      |
[INFO] [stdout] 1864 |     Func {
[INFO] [stdout]      |     ---- fields in this variant
[INFO] [stdout] 1865 |         effect: Effect,
[INFO] [stdout]      |         ^^^^^^
[INFO] [stdout] 1866 |         arity: usize,
[INFO] [stdout]      |         ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `BindingKind` 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 `lookup_current_mut` is never used
[INFO] [stdout]     --> nepl-core/src/typecheck.rs:1913:8
[INFO] [stdout]      |
[INFO] [stdout] 1876 | impl Env {
[INFO] [stdout]      | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 1913 |     fn lookup_current_mut(&mut self, name: &str) -> Option<&mut Binding> {
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 32.35s
[INFO] running `Command { std: "docker" "inspect" "7b4f4b9c9af8adaaa2185eb86734989ce92565669326229f26a0defd6811f25c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b4f4b9c9af8adaaa2185eb86734989ce92565669326229f26a0defd6811f25c", kill_on_drop: false }`
[INFO] [stdout] 7b4f4b9c9af8adaaa2185eb86734989ce92565669326229f26a0defd6811f25c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 08e0c49be5078a4faaaf25de7262e689c95f93a9f3a11c1f82b3e9a875b5ac6c
[INFO] running `Command { std: "docker" "start" "-a" "08e0c49be5078a4faaaf25de7262e689c95f93a9f3a11c1f82b3e9a875b5ac6c", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `alloc::string::String`
[INFO] [stderr]   --> nepl-core/src/error.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use alloc::string::String;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::boxed::Box`
[INFO] [stderr]  --> nepl-core/src/passes/move_check.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use alloc::boxed::Box;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `alloc::vec`
[INFO] [stderr]  --> nepl-core/src/passes/move_check.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use alloc::vec;
[INFO] [stderr]   |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `HirLine`
[INFO] [stderr]   --> nepl-core/src/passes/move_check.rs:11:59
[INFO] [stderr]    |
[INFO] [stderr] 11 | use crate::hir::{FuncRef, HirBlock, HirExpr, HirExprKind, HirLine, HirModule};
[INFO] [stderr]    |                                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::types::TypeId`
[INFO] [stderr]   --> nepl-core/src/passes/move_check.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::types::TypeId;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BTreeSet`
[INFO] [stderr]  --> nepl-core/src/typecheck.rs:5:36
[INFO] [stderr]   |
[INFO] [stderr] 5 | use alloc::collections::{BTreeMap, BTreeSet};
[INFO] [stderr]   |                                    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ToString`
[INFO] [stderr]  --> nepl-core/src/types.rs:4:29
[INFO] [stderr]   |
[INFO] [stderr] 4 | use alloc::string::{String, ToString};
[INFO] [stderr]   |                             ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/ast.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/builtins.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/codegen_wasm.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/compiler.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/hir.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/lexer.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/monomorphize.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/parser.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/passes/drop_insertion.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/passes/move_check.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/typecheck.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: the `#![no_std]` attribute can only be used at the crate root
[INFO] [stderr]  --> nepl-core/src/types.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | #![no_std]
[INFO] [stderr]   | ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nepl-core/src/parser.rs:68:13
[INFO] [stderr]    |
[INFO] [stderr] 68 |         let mut start_span = self.peek_span().unwrap_or_else(Span::dummy);
[INFO] [stderr]    |             ----^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `kw_span`
[INFO] [stderr]    --> nepl-core/src/parser.rs:219:13
[INFO] [stderr]     |
[INFO] [stderr] 219 |         let kw_span = self.next()?.span;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `kw_span`
[INFO] [stderr]    --> nepl-core/src/parser.rs:258:13
[INFO] [stderr]     |
[INFO] [stderr] 258 |         let kw_span = self.next()?.span;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_kw_span`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `fn_span`
[INFO] [stderr]    --> nepl-core/src/parser.rs:301:13
[INFO] [stderr]     |
[INFO] [stderr] 301 |         let fn_span = self.next()?.span;
[INFO] [stderr]     |             ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_fn_span`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `bn`
[INFO] [stderr]    --> nepl-core/src/parser.rs:987:53
[INFO] [stderr]     |
[INFO] [stderr] 987 |             let bind = if let Some(TokenKind::Ident(bn)) = self.peek_kind() {
[INFO] [stderr]     |                                                     ^^ help: if this is intentional, prefix it with an underscore: `_bn`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `dot_span`
[INFO] [stderr]     --> nepl-core/src/parser.rs:1068:21
[INFO] [stderr]      |
[INFO] [stderr] 1068 |                 let dot_span = self.next().unwrap().span;
[INFO] [stderr]      |                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dot_span`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `tok`
[INFO] [stderr]     --> nepl-core/src/parser.rs:1070:25
[INFO] [stderr]      |
[INFO] [stderr] 1070 |                     let tok = self.next().unwrap();
[INFO] [stderr]      |                         ^^^ help: if this is intentional, prefix it with an underscore: `_tok`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `lp_span`
[INFO] [stderr]     --> nepl-core/src/parser.rs:1077:21
[INFO] [stderr]      |
[INFO] [stderr] 1077 |                 let lp_span = self.next().unwrap().span;
[INFO] [stderr]      |                     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_lp_span`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `rp_span`
[INFO] [stderr]     --> nepl-core/src/parser.rs:1080:25
[INFO] [stderr]      |
[INFO] [stderr] 1080 |                     let rp_span = self.next().unwrap().span;
[INFO] [stderr]      |                         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_rp_span`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `name`
[INFO] [stderr]     --> nepl-core/src/parser.rs:1164:30
[INFO] [stderr]      |
[INFO] [stderr] 1164 |             TokenKind::Ident(name) => {
[INFO] [stderr]      |                              ^^^^ help: if this is intentional, prefix it with an underscore: `_name`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nepl-core/src/typecheck.rs:568:24
[INFO] [stderr]     |
[INFO] [stderr] 568 |                     Ok(mut func) => {
[INFO] [stderr]     |                        ----^^^^
[INFO] [stderr]     |                        |
[INFO] [stderr]     |                        help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nepl-core/src/typecheck.rs:937:13
[INFO] [stderr]     |
[INFO] [stderr] 937 |         let mut dropped = false;
[INFO] [stderr]     |             ----^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sp`
[INFO] [stderr]     --> nepl-core/src/typecheck.rs:1147:42
[INFO] [stderr]      |
[INFO] [stderr] 1147 |                 PrefixItem::Match(mexpr, sp) => {
[INFO] [stderr]      |                                          ^^ help: if this is intentional, prefix it with an underscore: `_sp`
[INFO] [stderr] 
[INFO] [stderr] warning: method `is_empty` is never used
[INFO] [stderr]   --> nepl-core/src/codegen_wasm.rs:41:8
[INFO] [stderr]    |
[INFO] [stderr] 36 | impl StringLower {
[INFO] [stderr]    | ---------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 41 |     fn is_empty(&self) -> bool {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `is_param` is never read
[INFO] [stderr]    --> nepl-core/src/codegen_wasm.rs:827:5
[INFO] [stderr]     |
[INFO] [stderr] 823 | struct LocalInfo {
[INFO] [stderr]     |        --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 827 |     is_param: bool,
[INFO] [stderr]     |     ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `LocalInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `src` is never read
[INFO] [stderr]   --> nepl-core/src/lexer.rs:96:5
[INFO] [stderr]    |
[INFO] [stderr] 94 | struct LexState<'a> {
[INFO] [stderr]    |        -------- field in this struct
[INFO] [stderr] 95 |     file_id: FileId,
[INFO] [stderr] 96 |     src: &'a str,
[INFO] [stderr]    |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `file_id` is never read
[INFO] [stderr]   --> nepl-core/src/parser.rs:48:5
[INFO] [stderr]    |
[INFO] [stderr] 47 | struct Parser {
[INFO] [stderr]    |        ------ field in this struct
[INFO] [stderr] 48 |     file_id: FileId,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `name` is never read
[INFO] [stderr]   --> nepl-core/src/typecheck.rs:42:5
[INFO] [stderr]    |
[INFO] [stderr] 41 | struct TraitInfo {
[INFO] [stderr]    |        --------- field in this struct
[INFO] [stderr] 42 |     name: String,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `TraitInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `trait_name`, `target_ty`, and `methods` are never read
[INFO] [stderr]   --> nepl-core/src/typecheck.rs:50:5
[INFO] [stderr]    |
[INFO] [stderr] 49 | struct ImplInfo {
[INFO] [stderr]    |        -------- fields in this struct
[INFO] [stderr] 50 |     trait_name: Option<String>,
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 51 |     target_ty: TypeId,
[INFO] [stderr]    |     ^^^^^^^^^
[INFO] [stderr] 52 |     methods: BTreeMap<String, (String, TypeId)>, // name -> (mangled_name, type)
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `ImplInfo` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `split_if_then_else_block_ast` is never used
[INFO] [stderr]     --> nepl-core/src/typecheck.rs:1416:8
[INFO] [stderr]      |
[INFO] [stderr]  737 | impl<'a> BlockChecker<'a> {
[INFO] [stderr]      | ------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1416 |     fn split_if_then_else_block_ast(b: &Block) -> Option<(Block, Block)> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `moved` is never read
[INFO] [stderr]     --> nepl-core/src/typecheck.rs:1857:5
[INFO] [stderr]      |
[INFO] [stderr] 1852 | struct Binding {
[INFO] [stderr]      |        ------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 1857 |     moved: bool,
[INFO] [stderr]      |     ^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `Binding` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: fields `effect` and `arity` are never read
[INFO] [stderr]     --> nepl-core/src/typecheck.rs:1865:9
[INFO] [stderr]      |
[INFO] [stderr] 1864 |     Func {
[INFO] [stderr]      |     ---- fields in this variant
[INFO] [stderr] 1865 |         effect: Effect,
[INFO] [stderr]      |         ^^^^^^
[INFO] [stderr] 1866 |         arity: usize,
[INFO] [stderr]      |         ^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `BindingKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: method `lookup_current_mut` is never used
[INFO] [stderr]     --> nepl-core/src/typecheck.rs:1913:8
[INFO] [stderr]      |
[INFO] [stderr] 1876 | impl Env {
[INFO] [stderr]      | -------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 1913 |     fn lookup_current_mut(&mut self, name: &str) -> Option<&mut Binding> {
[INFO] [stderr]      |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `nepl-core` (lib) generated 42 warnings (run `cargo fix --lib -p nepl-core` to apply 20 suggestions)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nepl-core/tests/harness.rs:47:14
[INFO] [stderr]    |
[INFO] [stderr] 47 |             |mut caller: Caller<'_, ()>, ptr: i32| {
[INFO] [stderr]    |              ----^^^^^^
[INFO] [stderr]    |              |
[INFO] [stderr]    |              help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `compile_src_with_options` is never used
[INFO] [stderr]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `compile_src` is never used
[INFO] [stderr]  --> nepl-core/tests/harness.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn compile_src(src: &str) -> Vec<u8> {
[INFO] [stderr]   |        ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `compile_src_with_options` is never used
[INFO] [stderr]   --> nepl-core/tests/harness.rs:22:8
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn compile_src_with_options(src: &str, options: CompileOptions) -> Vec<u8> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `run_main_i32` is never used
[INFO] [stderr]   --> nepl-core/tests/harness.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn run_main_i32(src: &str) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `stdlib_root` is never used
[INFO] [stderr]    --> nepl-core/tests/harness.rs:248:4
[INFO] [stderr]     |
[INFO] [stderr] 248 | fn stdlib_root() -> std::path::PathBuf {
[INFO] [stderr]     |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compile_ok` is never used
[INFO] [stderr]   --> nepl-core/tests/block_if_semantics.rs:18:4
[INFO] [stderr]    |
[INFO] [stderr] 18 | fn compile_ok(src: &str) {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `nepl-core` (test "neplg2") generated 1 warning (run `cargo fix --test "neplg2" -p nepl-core` to apply 1 suggestion)
[INFO] [stderr] warning: `nepl-core` (test "stdlib") generated 2 warnings (1 duplicate)
[INFO] [stderr] warning: `nepl-core` (test "move_check") generated 5 warnings (1 duplicate)
[INFO] [stderr] warning: `nepl-core` (test "block_if_semantics") generated 3 warnings (2 duplicates)
[INFO] [stderr] warning: `nepl-core` (test "drop") generated 5 warnings (5 duplicates)
[INFO] [stderr] warning: `nepl-core` (test "harness") generated 1 warning (1 duplicate)
[INFO] [stderr] warning: `nepl-core` (lib test) generated 42 warnings (42 duplicates)
[INFO] [stderr] warning: `nepl-core` (test "plan") generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nepl-cli/src/main.rs:168:10
[INFO] [stderr]     |
[INFO] [stderr] 168 |         |mut caller: Caller<'_, AllocState>, ptr: i32| {
[INFO] [stderr]     |          ----^^^^^^
[INFO] [stderr]     |          |
[INFO] [stderr]     |          help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nepl-cli/src/main.rs:387:14
[INFO] [stderr]     |
[INFO] [stderr] 387 |             |mut caller: Caller<'_, AllocState>,
[INFO] [stderr]     |              ----^^^^^^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `nepl-cli` (bin "nepl-cli") generated 2 warnings (run `cargo fix --bin "nepl-cli" -p nepl-cli` to apply 2 suggestions)
[INFO] [stderr] warning: `nepl-cli` (bin "nepl-cli" test) generated 2 warnings (2 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/nepl_cli-f223a8fa91e691bb)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/deploy_script.rs (/opt/rustwide/target/debug/deps/deploy_script-44eb18f77900afea)
[INFO] [stdout] test tests::cli_parses_defaults ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test clones_editor_sample_into_custom_destination ... ignored, editor sample fetch script not required for NEPLG2
[INFO] [stdout] test updates_existing_clone_after_remote_change ... ignored, editor sample fetch script not required for NEPLG2
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nepl_core-7f8aa1d7cbb6f9a2)
[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] [stderr]      Running tests/block_if_semantics.rs (/opt/rustwide/target/debug/deps/block_if_semantics-90d2d84818bc9e92)
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test no_semicolons_on_line_allowed ... ok
[INFO] [stdout] test epilogue_drop_preserves_return_value ... ok
[INFO] [stdout] test match_arm_local_drop_preserves_return ... ok
[INFO] [stdout] test trailing_semicolon_makes_block_unit_and_errors_for_return ... ok
[INFO] [stdout] test multiple_semicolons_on_line_allowed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/debug_loader.rs (/opt/rustwide/target/debug/deps/debug_loader-6ca3fa5c3d3add6f)
[INFO] [stdout] running 1 test
[INFO] [stdout] test show_loaded_files ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/drop.rs (/opt/rustwide/target/debug/deps/drop-7cfa8dda8cef92df)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test drop_multiple_bindings_reverse_order ... ok
[INFO] [stdout] test drop_nested_scopes ... ok
[INFO] [stdout] test drop_if_branch ... ok
[INFO] [stderr]      Running tests/harness.rs (/opt/rustwide/target/debug/deps/harness-63f614ad49eaad5c)
[INFO] [stdout] test drop_simple_let ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/if.rs (/opt/rustwide/target/debug/deps/if-4cccd16de727f1f2)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/loader_cycle.rs (/opt/rustwide/target/debug/deps/loader_cycle-18ce5986a6f8f538)
[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] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test compile_various_if_forms ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test import_cycle_is_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/move_check.rs (/opt/rustwide/target/debug/deps/move_check-c0a10ea5063b23f3)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test move_in_branch ... ok
[INFO] [stdout] test move_in_loop ... ok
[INFO] [stdout] test move_reassign_copy ... ok
[INFO] [stdout] test move_simple_ok ... ok
[INFO] [stdout] test move_reassign_non_copy ... ok
[INFO] [stdout] test move_use_after_move ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/neplg2.rs (/opt/rustwide/target/debug/deps/neplg2-f2b4c1e35156807b)
[INFO] [stdout] running 23 tests
[INFO] [stdout] test compiles_add_block_expression ... ok
[INFO] [stdout] test compiles_literal_main ... ok
[INFO] [stdout] test duplicate_target_directive_is_error ... ok
[INFO] [stdout] test pipe_injects_first_arg ... ok
[INFO] [stdout] test name_conflict_enum_fn_is_error ... ok
[INFO] [stdout] test pipe_target_missing_after_annotation_is_error ... ok
[INFO] [stdout] test pipe_requires_callable_target ... ok
[INFO] [stdout] test pipe_with_double_type_annotation_is_ok ... ok
[INFO] [stdout] test pipe_with_type_annotation_is_ok ... ok
[INFO] [stdout] test pure_cannot_call_impure ... ok
[INFO] [stdout] test run_add_returns_12 ... ok
[INFO] [stdout] test iftarget_non_wasm_is_skipped ... ok
[INFO] [stdout] test non_exhaustive_match_is_error ... ok
[INFO] [stdout] test set_type_mismatch_is_error ... ok
[INFO] [stdout] test string_literal_compiles ... ok
[INFO] [stdout] test wasm_cannot_use_stdio ... ok
[INFO] [stdout] test wasm_stack_mismatch_is_error ... ok
[INFO] [stdout] test wasm_skips_wasi_gate ... ok
[INFO] [stdout] test wasi_allows_wasm_gate ... ok
[INFO] [stdout] test wasi_import_rejected_on_wasm_target ... ok
[INFO] [stdout] test list_get_out_of_bounds_err ... ok
[INFO] [stdout] test match_option_some_returns_value ... ok
[INFO] [stdout] test target_directive_sets_default_to_wasi ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `-p nepl-core --test neplg2`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- target_directive_sets_default_to_wasi stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'target_directive_sets_default_to_wasi' (63) panicked at nepl-core/tests/harness.rs:27:59:
[INFO] [stdout] compile failure: Diagnostics([Diagnostic { severity: Error, code: None, message: "undefined identifier", primary: Label { span: Span { file_id: FileId(3), start: 2343, end: 2347 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "undefined identifier", primary: Label { span: Span { file_id: FileId(3), start: 2397, end: 2401 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "undefined identifier", primary: Label { span: Span { file_id: FileId(3), start: 2456, end: 2460 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "block left extra values on the stack", primary: Label { span: Span { file_id: FileId(3), start: 2482, end: 3252 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "undefined identifier", primary: Label { span: Span { file_id: FileId(3), start: 3336, end: 3340 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "block left extra values on the stack", primary: Label { span: Span { file_id: FileId(3), start: 2343, end: 3378 }, message: None }, secondary: [] }, Diagnostic { severity: Error, code: None, message: "block left extra values on the stack", primary: Label { span: Span { file_id: FileId(3), start: 2008, end: 3378 }, message: None }, secondary: [] }])
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59cea242f212 - std::backtrace_rs::backtrace::libunwind::trace::hf0bd46b30bc61685
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x59cea242f212 - std::backtrace_rs::backtrace::trace_unsynchronized::h1d1fbb72ad89d7b7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x59cea242f212 - std::sys::backtrace::_print_fmt::he38b6f68ca847f47
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x59cea242f212 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hb7e843cde1bc81a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x59cea2440c0a - core::fmt::rt::Argument::fmt::hc1dd77ac64f2688c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x59cea2440c0a - core::fmt::write::h952c506e2dbe9cff
[INFO] [stdout]    6:     0x59cea23fd776 - std::io::default_write_fmt::hd23bd8145c03a23a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x59cea23fd776 - std::io::Write::write_fmt::hdd3314a2bd8a34bd
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x59cea240e649 - std::sys::backtrace::BacktraceLock::print::h1079b82381c2c252
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x59cea240e649 - std::panicking::default_hook::{{closure}}::h85cb76b8462c00f2
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x59cea240e4e1 - std::panicking::default_hook::h0134d220cc034c02
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x59cea2124f9e - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb2e68dca3970e3ca
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x59cea2124f9e - test::test_main_with_exit_callback::{{closure}}::ha7ec2063a2565ec3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x59cea240e8c2 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::haebee478d0f56cf4
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x59cea240e8c2 - std::panicking::panic_with_hook::h8119b6db1fef734f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x59cea240e708 - std::panicking::panic_handler::{{closure}}::h24f5360b91482c0e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x59cea24093c9 - std::sys::backtrace::__rust_end_short_backtrace::h4e60c5cbd1bd0108
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x59cea23f1bfd - __rustc[e4c6931bd8050421]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x59cea2449cac - core::panicking::panic_fmt::hb1614a3ff6840071
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x59cea24494b2 - core::result::unwrap_failed::h7d4c34940aded59c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x59cea20ecdcb - core::result::Result<T,E>::expect::hf1fd05fa6b8f18a3
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x59cea20fc043 - neplg2::harness::compile_src_with_options::h31e4f5db344b57b5
[INFO] [stdout]                                at /opt/rustwide/workdir/nepl-core/tests/harness.rs:27:59
[INFO] [stdout]   22:     0x59cea20f83a1 - neplg2::target_directive_sets_default_to_wasi::hc1d76a7bc081a9dd
[INFO] [stdout]                                at /opt/rustwide/workdir/nepl-core/tests/neplg2.rs:406:16
[INFO] [stdout]   23:     0x59cea20f8437 - neplg2::target_directive_sets_default_to_wasi::{{closure}}::h845101dba5fe5bb9
[INFO] [stdout]                                at /opt/rustwide/workdir/nepl-core/tests/neplg2.rs:395:43
[INFO] [stdout]   24:     0x59cea20d8b06 - core::ops::function::FnOnce::call_once::hee27cfd1c39bfed7
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x59cea2124d9b - core::ops::function::FnOnce::call_once::hefaf63600cd43d2a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x59cea2124d9b - test::__rust_begin_short_backtrace::he30322a73a0e9ea6
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:663:18
[INFO] [stdout]   27:     0x59cea213876a - test::run_test_in_process::{{closure}}::hdea3ab8d0243ef36
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:74
[INFO] [stdout]   28:     0x59cea213876a - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h66d192f42498ffce
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   29:     0x59cea213876a - std::panicking::catch_unwind::do_call::h822e18e8d3a6bb65
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x59cea213876a - std::panicking::catch_unwind::h54b1de7ceab578bf
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x59cea213876a - std::panic::catch_unwind::h60c29b7a9d0246b1
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x59cea213876a - test::run_test_in_process::h6099b5f871379b13
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:686:27
[INFO] [stdout]   33:     0x59cea213876a - test::run_test::{{closure}}::h926ce0a38281a4c8
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:607:43
[INFO] [stdout]   34:     0x59cea2112bc4 - test::run_test::{{closure}}::h508de21a9afc7140
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/test/src/lib.rs:637:41
[INFO] [stdout]   35:     0x59cea2112bc4 - std::sys::backtrace::__rust_begin_short_backtrace::h6e2f5c39ca00735a
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x59cea2116482 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::h133e44f0e5802c14
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stdout]   37:     0x59cea2116482 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4718c1285283955c
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   38:     0x59cea2116482 - std::panicking::catch_unwind::do_call::h0bba3937b4892238
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x59cea2116482 - std::panicking::catch_unwind::h5b31cab5fb8c5d7f
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x59cea2116482 - std::panic::catch_unwind::hb2fa05d52ed0124e
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x59cea2116482 - std::thread::lifecycle::spawn_unchecked::{{closure}}::hf401cf5ff501bd29
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   42:     0x59cea2116482 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h160022e94ce3b0bb
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x59cea240465f - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf234e0d1d1d272ba
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   44:     0x59cea240465f - std::sys::thread::unix::Thread::new::thread_start::h106a295241840d3b
[INFO] [stdout]                                at /rustc/9b1f8ff42d110b0ca138116745be921df5dc97e7/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   45:     0x739e1461faa4 - <unknown>
[INFO] [stdout]   46:     0x739e146aca64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     target_directive_sets_default_to_wasi
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 22 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "08e0c49be5078a4faaaf25de7262e689c95f93a9f3a11c1f82b3e9a875b5ac6c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08e0c49be5078a4faaaf25de7262e689c95f93a9f3a11c1f82b3e9a875b5ac6c", kill_on_drop: false }`
[INFO] [stdout] 08e0c49be5078a4faaaf25de7262e689c95f93a9f3a11c1f82b3e9a875b5ac6c
