[INFO] cloning repository https://github.com/Somfic/som
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Somfic/som" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSomfic%2Fsom", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSomfic%2Fsom'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 47659bb5722c80a341bbe078f71ce7bbd1794ea4
[INFO] testing Somfic/som against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSomfic%2Fsom" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Somfic/som
[INFO] finished tweaking git repo https://github.com/Somfic/som
[INFO] tweaked toml for git repo https://github.com/Somfic/som written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Somfic/som on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Somfic/som already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded logos-display v0.1.3
[INFO] [stderr]   Downloaded cranelift-control v0.128.4
[INFO] [stderr]   Downloaded cranelift-object v0.128.4
[INFO] [stderr]   Downloaded cranelift-module v0.128.4
[INFO] [stderr]   Downloaded cranelift v0.128.4
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.128.4
[INFO] [stderr]   Downloaded cranelift-bitset v0.128.4
[INFO] [stderr]   Downloaded tower-lsp-macros v0.9.0
[INFO] [stderr]   Downloaded cranelift-srcgen v0.128.4
[INFO] [stderr]   Downloaded wasmtime-internal-math v41.0.4
[INFO] [stderr]   Downloaded lsp-types v0.94.1
[INFO] [stderr]   Downloaded cranelift-entity v0.128.4
[INFO] [stderr]   Downloaded cranelift-assembler-x64 v0.128.4
[INFO] [stderr]   Downloaded cranelift-bforest v0.128.4
[INFO] [stderr]   Downloaded cranelift-assembler-x64-meta v0.128.4
[INFO] [stderr]   Downloaded cranelift-frontend v0.128.4
[INFO] [stderr]   Downloaded tower-lsp v0.20.0
[INFO] [stderr]   Downloaded cranelift-isle v0.128.4
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.128.4
[INFO] [stderr]   Downloaded regalloc2 v0.13.5
[INFO] [stderr]   Downloaded cranelift-codegen v0.128.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508
[INFO] running `Command { std: "docker" "start" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.23
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling cranelift-srcgen v0.128.4
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling cranelift-isle v0.128.4
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.128.4
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling cranelift-bitset v0.128.4
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling bumpalo v3.19.1
[INFO] [stderr]    Compiling gimli v0.32.3
[INFO] [stderr]    Compiling wasmtime-internal-math v41.0.4
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling cranelift-entity v0.128.4
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling cranelift-assembler-x64-meta v0.128.4
[INFO] [stderr]    Compiling cranelift-bforest v0.128.4
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling ena v0.14.4
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling syn v2.0.115
[INFO] [stderr]    Compiling regalloc2 v0.13.5
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.128.4
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling cranelift-control v0.128.4
[INFO] [stderr]    Compiling cranelift-assembler-x64 v0.128.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling cranelift-codegen v0.128.4
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling logos-display v0.1.3
[INFO] [stderr]    Compiling pin-project-internal v1.1.10
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling auto_impl v1.3.0
[INFO] [stderr]    Compiling tower-lsp-macros v0.9.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling tokio v1.51.0
[INFO] [stderr]    Compiling logos-codegen v0.16.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling pin-project v1.1.10
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling logos-derive v0.16.1
[INFO] [stderr]    Compiling logos v0.16.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling tower v0.4.13
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling lsp-types v0.94.1
[INFO] [stderr]    Compiling tower-lsp v0.20.0
[INFO] [stderr]    Compiling cranelift-module v0.128.4
[INFO] [stderr]    Compiling cranelift-frontend v0.128.4
[INFO] [stderr]    Compiling cranelift-object v0.128.4
[INFO] [stderr]    Compiling cranelift v0.128.4
[INFO] [stderr]    Compiling som v0.1.0 (/opt/rustwide/workdir/compiler)
[INFO] [stdout] warning: unused import: `layout`
[INFO] [stdout]  --> compiler/src/code_gen/mod.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     codegen::ir::{Function, layout},
[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: `Impl`
[INFO] [stdout]  --> compiler/src/parser/decl.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Expr, ExternBlock, ExternFunc, Func, FuncParam, FuncTypeParam, Impl, ImplBlock, Struct,
[INFO] [stdout]   |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TRAIT_ADD`, `TRAIT_DIV`, `TRAIT_EQ`, `TRAIT_GT_EQ`, `TRAIT_GT`, `TRAIT_LT_EQ`, `TRAIT_LT`, `TRAIT_MUL`, `TRAIT_NEQ`, and `TRAIT_SUB`
[INFO] [stdout]  --> compiler/src/type_check/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     TRAIT_ADD, TRAIT_DIV, TRAIT_EQ, TRAIT_GT, TRAIT_GT_EQ, TRAIT_LT, TRAIT_LT_EQ, TRAIT_MUL,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     TRAIT_NEQ, TRAIT_SUB,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg_types`
[INFO] [stdout]    --> compiler/src/type_check/error.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 arg_types,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `arg_types: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUILTIN_TRAIT_COUNT` is never used
[INFO] [stdout]    --> compiler/src/ast/mod.rs:508:7
[INFO] [stdout]     |
[INFO] [stdout] 508 | const BUILTIN_TRAIT_COUNT: u32 = 100;
[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 `mutable` is never read
[INFO] [stdout]   --> compiler/src/borrow_check/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Loan {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 35 |     at: Id<Place>,
[INFO] [stdout] 36 |     mutable: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finalize` is never used
[INFO] [stdout]    --> compiler/src/code_gen/mod.rs:969:12
[INFO] [stdout]     |
[INFO] [stdout] 961 | impl<'a> FuncCtx<'a> {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 969 |     pub fn finalize(self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NoMainFunction` and `NoReturnType` are never constructed
[INFO] [stdout]  --> compiler/src/code_gen/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub(super) enum CodegenError {
[INFO] [stdout]   |                 ------------ variants in this enum
[INFO] [stdout] 4 |     NoMainFunction,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     NoReturnType,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling som-lsp v0.1.0 (/opt/rustwide/workdir/lsp)
[INFO] [stderr]    Compiling som-cli v0.1.0 (/opt/rustwide/workdir/cli)
[INFO] [stdout] warning: unused imports: `Diagnostic`, `Source`, and `parser`
[INFO] [stdout]  --> compiler/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 |     BorrowChecker, Codegen, Diagnostic, Linker, ProgramLoader, Runner, Source, TypeInferencer,
[INFO] [stdout]   |                             ^^^^^^^^^^                                 ^^^^^^
[INFO] [stdout] 3 |     parser,
[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: `std::sync::Arc`
[INFO] [stdout]  --> compiler/src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> lsp/src/index.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Stmt(Id<Stmt>),
[INFO] [stdout]   |     ---- ^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `NodeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     Stmt(Id<Stmt>),
[INFO] [stdout] 9 +     Stmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_module_symbols` is never used
[INFO] [stdout]    --> lsp/src/index.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl AstIndex {
[INFO] [stdout]     | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn get_module_symbols(ast: &Ast, module: &Module) -> Vec<(String, NodeRef, Span)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `diagnostics` is never read
[INFO] [stdout]   --> lsp/src/server.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct AnalysisResult {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 23 |     pub typed_ast: TypedAst,
[INFO] [stdout] 24 |     pub diagnostics: Vec<SomDiagnostic>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 49s
[INFO] running `Command { std: "docker" "inspect" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stdout] warning: unused import: `layout`
[INFO] [stdout]  --> compiler/src/code_gen/mod.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     codegen::ir::{Function, layout},
[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: `Impl`
[INFO] [stdout]  --> compiler/src/parser/decl.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Expr, ExternBlock, ExternFunc, Func, FuncParam, FuncTypeParam, Impl, ImplBlock, Struct,
[INFO] [stdout]   |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TRAIT_ADD`, `TRAIT_DIV`, `TRAIT_EQ`, `TRAIT_GT_EQ`, `TRAIT_GT`, `TRAIT_LT_EQ`, `TRAIT_LT`, `TRAIT_MUL`, `TRAIT_NEQ`, and `TRAIT_SUB`
[INFO] [stdout]  --> compiler/src/type_check/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     TRAIT_ADD, TRAIT_DIV, TRAIT_EQ, TRAIT_GT, TRAIT_GT_EQ, TRAIT_LT, TRAIT_LT_EQ, TRAIT_MUL,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     TRAIT_NEQ, TRAIT_SUB,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg_types`
[INFO] [stdout]    --> compiler/src/type_check/error.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 arg_types,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `arg_types: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUILTIN_TRAIT_COUNT` is never used
[INFO] [stdout]    --> compiler/src/ast/mod.rs:508:7
[INFO] [stdout]     |
[INFO] [stdout] 508 | const BUILTIN_TRAIT_COUNT: u32 = 100;
[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 `mutable` is never read
[INFO] [stdout]   --> compiler/src/borrow_check/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Loan {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 35 |     at: Id<Place>,
[INFO] [stdout] 36 |     mutable: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finalize` is never used
[INFO] [stdout]    --> compiler/src/code_gen/mod.rs:969:12
[INFO] [stdout]     |
[INFO] [stdout] 961 | impl<'a> FuncCtx<'a> {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 969 |     pub fn finalize(self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NoMainFunction` and `NoReturnType` are never constructed
[INFO] [stdout]  --> compiler/src/code_gen/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub(super) enum CodegenError {
[INFO] [stdout]   |                 ------------ variants in this enum
[INFO] [stdout] 4 |     NoMainFunction,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     NoReturnType,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling som-cli v0.1.0 (/opt/rustwide/workdir/cli)
[INFO] [stdout] warning: unused imports: `Diagnostic`, `Source`, and `parser`
[INFO] [stdout]  --> compiler/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 |     BorrowChecker, Codegen, Diagnostic, Linker, ProgramLoader, Runner, Source, TypeInferencer,
[INFO] [stdout]   |                             ^^^^^^^^^^                                 ^^^^^^
[INFO] [stdout] 3 |     parser,
[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: `std::sync::Arc`
[INFO] [stdout]  --> compiler/src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling som-lsp v0.1.0 (/opt/rustwide/workdir/lsp)
[INFO] [stderr]    Compiling uuid v1.23.0
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> lsp/src/index.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 |     Stmt(Id<Stmt>),
[INFO] [stdout]   |     ---- ^^^^^^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout]   = note: `NodeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 9 -     Stmt(Id<Stmt>),
[INFO] [stdout] 9 +     Stmt(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `get_module_symbols` is never used
[INFO] [stdout]    --> lsp/src/index.rs:116:12
[INFO] [stdout]     |
[INFO] [stdout]  28 | impl AstIndex {
[INFO] [stdout]     | ------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn get_module_symbols(ast: &Ast, module: &Module) -> Vec<(String, NodeRef, Span)> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `diagnostics` is never read
[INFO] [stdout]   --> lsp/src/server.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct AnalysisResult {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 23 |     pub typed_ast: TypedAst,
[INFO] [stdout] 24 |     pub diagnostics: Vec<SomDiagnostic>,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tempfile v3.25.0
[INFO] [stderr]    Compiling som v0.1.0 (/opt/rustwide/workdir/compiler)
[INFO] [stdout] warning: unused imports: `Diagnostic`, `Source`, and `parser`
[INFO] [stdout]  --> compiler/src/main.rs:2:29
[INFO] [stdout]   |
[INFO] [stdout] 2 |     BorrowChecker, Codegen, Diagnostic, Linker, ProgramLoader, Runner, Source, TypeInferencer,
[INFO] [stdout]   |                             ^^^^^^^^^^                                 ^^^^^^
[INFO] [stdout] 3 |     parser,
[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: `std::sync::Arc`
[INFO] [stdout]  --> compiler/src/main.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_and_run` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn compile_and_run(source: Source) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `project_name`
[INFO] [stdout]    --> compiler/tests/modules.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |     let project_name = project.path().file_name().unwrap().to_str().unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_and_run` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn compile_and_run(source: Source) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[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 `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_and_run` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn compile_and_run(source: Source) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compile_and_run` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:99:8
[INFO] [stdout]    |
[INFO] [stdout] 99 | pub fn compile_and_run(source: Source) -> i32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_lex` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[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 `filter_whitespace` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_parse` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_type_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `type_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_borrow_check` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stdout]    |
[INFO] [stdout] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `borrow_check_or_panic` is never used
[INFO] [stdout]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_type_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stdout]     |
[INFO] [stdout] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_borrow_error` is never used
[INFO] [stdout]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stdout]     |
[INFO] [stdout] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `layout`
[INFO] [stdout]  --> compiler/src/code_gen/mod.rs:7:29
[INFO] [stdout]   |
[INFO] [stdout] 7 |     codegen::ir::{Function, layout},
[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: `Impl`
[INFO] [stdout]  --> compiler/src/parser/decl.rs:2:68
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Expr, ExternBlock, ExternFunc, Func, FuncParam, FuncTypeParam, Impl, ImplBlock, Struct,
[INFO] [stdout]   |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TRAIT_ADD`, `TRAIT_DIV`, `TRAIT_EQ`, `TRAIT_GT_EQ`, `TRAIT_GT`, `TRAIT_LT_EQ`, `TRAIT_LT`, `TRAIT_MUL`, `TRAIT_NEQ`, and `TRAIT_SUB`
[INFO] [stdout]  --> compiler/src/type_check/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     TRAIT_ADD, TRAIT_DIV, TRAIT_EQ, TRAIT_GT, TRAIT_GT_EQ, TRAIT_LT, TRAIT_LT_EQ, TRAIT_MUL,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 5 |     TRAIT_NEQ, TRAIT_SUB,
[INFO] [stdout]   |     ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `arg_types`
[INFO] [stdout]    --> compiler/src/type_check/error.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |                 arg_types,
[INFO] [stdout]     |                 ^^^^^^^^^ help: try ignoring the field: `arg_types: _`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUILTIN_TRAIT_COUNT` is never used
[INFO] [stdout]    --> compiler/src/ast/mod.rs:508:7
[INFO] [stdout]     |
[INFO] [stdout] 508 | const BUILTIN_TRAIT_COUNT: u32 = 100;
[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 `mutable` is never read
[INFO] [stdout]   --> compiler/src/borrow_check/mod.rs:36:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Loan {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 35 |     at: Id<Place>,
[INFO] [stdout] 36 |     mutable: bool,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finalize` is never used
[INFO] [stdout]    --> compiler/src/code_gen/mod.rs:969:12
[INFO] [stdout]     |
[INFO] [stdout] 961 | impl<'a> FuncCtx<'a> {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 969 |     pub fn finalize(self) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `NoMainFunction` and `NoReturnType` are never constructed
[INFO] [stdout]  --> compiler/src/code_gen/error.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub(super) enum CodegenError {
[INFO] [stdout]   |                 ------------ variants in this enum
[INFO] [stdout] 4 |     NoMainFunction,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 5 |     NoReturnType,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 15.58s
[INFO] running `Command { std: "docker" "inspect" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `layout`
[INFO] [stderr]  --> compiler/src/code_gen/mod.rs:7:29
[INFO] [stderr]   |
[INFO] [stderr] 7 |     codegen::ir::{Function, layout},
[INFO] [stderr]   |                             ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Impl`
[INFO] [stderr]  --> compiler/src/parser/decl.rs:2:68
[INFO] [stderr]   |
[INFO] [stderr] 2 |     Expr, ExternBlock, ExternFunc, Func, FuncParam, FuncTypeParam, Impl, ImplBlock, Struct,
[INFO] [stderr]   |                                                                    ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `TRAIT_ADD`, `TRAIT_DIV`, `TRAIT_EQ`, `TRAIT_GT_EQ`, `TRAIT_GT`, `TRAIT_LT_EQ`, `TRAIT_LT`, `TRAIT_MUL`, `TRAIT_NEQ`, and `TRAIT_SUB`
[INFO] [stderr]  --> compiler/src/type_check/error.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     TRAIT_ADD, TRAIT_DIV, TRAIT_EQ, TRAIT_GT, TRAIT_GT_EQ, TRAIT_LT, TRAIT_LT_EQ, TRAIT_MUL,
[INFO] [stderr]   |     ^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 5 |     TRAIT_NEQ, TRAIT_SUB,
[INFO] [stderr]   |     ^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `arg_types`
[INFO] [stderr]    --> compiler/src/type_check/error.rs:200:17
[INFO] [stderr]     |
[INFO] [stderr] 200 |                 arg_types,
[INFO] [stderr]     |                 ^^^^^^^^^ help: try ignoring the field: `arg_types: _`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `BUILTIN_TRAIT_COUNT` is never used
[INFO] [stderr]    --> compiler/src/ast/mod.rs:508:7
[INFO] [stderr]     |
[INFO] [stderr] 508 | const BUILTIN_TRAIT_COUNT: u32 = 100;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `mutable` is never read
[INFO] [stderr]   --> compiler/src/borrow_check/mod.rs:36:5
[INFO] [stderr]    |
[INFO] [stderr] 34 | pub struct Loan {
[INFO] [stderr]    |            ---- field in this struct
[INFO] [stderr] 35 |     at: Id<Place>,
[INFO] [stderr] 36 |     mutable: bool,
[INFO] [stderr]    |     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `finalize` is never used
[INFO] [stderr]    --> compiler/src/code_gen/mod.rs:969:12
[INFO] [stderr]     |
[INFO] [stderr] 961 | impl<'a> FuncCtx<'a> {
[INFO] [stderr]     | -------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 969 |     pub fn finalize(self) {
[INFO] [stderr]     |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variants `NoMainFunction` and `NoReturnType` are never constructed
[INFO] [stderr]  --> compiler/src/code_gen/error.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub(super) enum CodegenError {
[INFO] [stderr]   |                 ------------ variants in this enum
[INFO] [stderr] 4 |     NoMainFunction,
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 5 |     NoReturnType,
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (lib) generated 8 warnings (run `cargo fix --lib -p som` to apply 4 suggestions)
[INFO] [stderr] warning: function `test_lex` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:17:8
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub fn test_lex(source: &str) -> Vec<Token> {
[INFO] [stderr]    |        ^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `filter_whitespace` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:23:8
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn filter_whitespace(tokens: &[Token]) -> Vec<&Token> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_parse` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `parse_or_panic` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:38:8
[INFO] [stderr]    |
[INFO] [stderr] 38 | pub fn parse_or_panic(source: &str) -> som::Ast {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_type_check` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:51:8
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn test_type_check(source: &str) -> TypedAst {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `type_check_or_panic` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:58:8
[INFO] [stderr]    |
[INFO] [stderr] 58 | pub fn type_check_or_panic(source: &str) -> TypedAst {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_borrow_check` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:76:8
[INFO] [stderr]    |
[INFO] [stderr] 76 | pub fn test_borrow_check(source: &str) -> Vec<BorrowError> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `borrow_check_or_panic` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:83:8
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn borrow_check_or_panic(source: &str) -> TypedAst {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `has_type_error` is never used
[INFO] [stderr]    --> compiler/tests/common/mod.rs:167:8
[INFO] [stderr]     |
[INFO] [stderr] 167 | pub fn has_type_error<F>(typed_ast: &TypedAst, predicate: F) -> bool
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `has_borrow_error` is never used
[INFO] [stderr]    --> compiler/tests/common/mod.rs:175:8
[INFO] [stderr]     |
[INFO] [stderr] 175 | pub fn has_borrow_error<F>(errors: &[BorrowError], predicate: F) -> bool
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Diagnostic`, `Source`, and `parser`
[INFO] [stderr]  --> compiler/src/main.rs:2:29
[INFO] [stderr]   |
[INFO] [stderr] 2 |     BorrowChecker, Codegen, Diagnostic, Linker, ProgramLoader, Runner, Source, TypeInferencer,
[INFO] [stderr]   |                             ^^^^^^^^^^                                 ^^^^^^
[INFO] [stderr] 3 |     parser,
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::sync::Arc`
[INFO] [stderr]  --> compiler/src/main.rs:7:5
[INFO] [stderr]   |
[INFO] [stderr] 7 | use std::sync::Arc;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `compile_and_run` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:99:8
[INFO] [stderr]    |
[INFO] [stderr] 99 | pub fn compile_and_run(source: Source) -> i32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (test "structs") generated 10 warnings
[INFO] [stderr] warning: `som` (bin "somc" test) generated 2 warnings (run `cargo fix --bin "somc" -p som --tests` to apply 2 suggestions)
[INFO] [stderr] warning: `som` (test "parser") generated 10 warnings (9 duplicates)
[INFO] [stderr] warning: function `test_parse` is never used
[INFO] [stderr]   --> compiler/tests/common/mod.rs:32:8
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub fn test_parse(source: &str) -> (som::Ast, Vec<ParseError>) {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (test "floats") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: `som` (test "borrow_check") generated 5 warnings (5 duplicates)
[INFO] [stderr] warning: `som` (bin "somc") generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: `som` (test "type_check") generated 7 warnings (7 duplicates)
[INFO] [stderr] warning: `som` (test "control_flow") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: `som` (test "lexer") generated 9 warnings (8 duplicates)
[INFO] [stderr] warning: `som` (test "expressions") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: `som` (test "mutation") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: `som` (test "impl_blocks") generated 7 warnings (7 duplicates)
[INFO] [stderr] warning: `som` (test "ffi") generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: unused variable: `project_name`
[INFO] [stderr]    --> compiler/tests/modules.rs:195:9
[INFO] [stderr]     |
[INFO] [stderr] 195 |     let project_name = project.path().file_name().unwrap().to_str().unwrap();
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_project_name`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `som` (test "modules") generated 1 warning (run `cargo fix --test "modules" -p som` to apply 1 suggestion)
[INFO] [stderr] warning: `som` (lib test) generated 8 warnings (8 duplicates)
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]  --> lsp/src/index.rs:9:10
[INFO] [stderr]   |
[INFO] [stderr] 9 |     Stmt(Id<Stmt>),
[INFO] [stderr]   |     ---- ^^^^^^^^
[INFO] [stderr]   |     |
[INFO] [stderr]   |     field in this variant
[INFO] [stderr]   |
[INFO] [stderr]   = note: `NodeRef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]   |
[INFO] [stderr] 9 -     Stmt(Id<Stmt>),
[INFO] [stderr] 9 +     Stmt(()),
[INFO] [stderr]   |
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `get_module_symbols` is never used
[INFO] [stderr]    --> lsp/src/index.rs:116:12
[INFO] [stderr]     |
[INFO] [stderr]  28 | impl AstIndex {
[INFO] [stderr]     | ------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 116 |     pub fn get_module_symbols(ast: &Ast, module: &Module) -> Vec<(String, NodeRef, Span)> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `diagnostics` is never read
[INFO] [stderr]   --> lsp/src/server.rs:24:9
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub struct AnalysisResult {
[INFO] [stderr]    |            -------------- field in this struct
[INFO] [stderr] 23 |     pub typed_ast: TypedAst,
[INFO] [stderr] 24 |     pub diagnostics: Vec<SomDiagnostic>,
[INFO] [stderr]    |         ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `som-lsp` (bin "somlsp" test) generated 3 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.37s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/som-11296bd637a98aee)
[INFO] [stdout] running 0 tests
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/somc-14d3d219b44e544a)
[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 0 tests
[INFO] [stderr]      Running tests/borrow_check.rs (/opt/rustwide/target/debug/deps/borrow_check-292912769c8a3950)
[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 85 tests
[INFO] [stdout] test test_borrow_of_parameter_copy ... ok
[INFO] [stdout] test test_conditional_no_borrow_issues ... ok
[INFO] [stdout] test test_conditional_copy_in_branch ... ok
[INFO] [stdout] test test_arithmetic_no_borrow ... ok
[INFO] [stdout] test test_conditional_borrow_in_branch ... ok
[INFO] [stdout] test test_conditional_both_static ... ok
[INFO] [stdout] test test_conditional_borrow_expires_before_use ... ok
[INFO] [stdout] test test_complex_arithmetic_copies ... ok
[INFO] [stdout] test test_borrow_parameter_ok ... ok
[INFO] [stdout] test test_borrow_expires_after_scope ... ok
[INFO] [stdout] test test_conditional_nested_copies ... ok
[INFO] [stdout] test test_bool_literals ... ok
[INFO] [stdout] test test_bool_copy_ok ... ok
[INFO] [stdout] test test_block_returns_copy ... ok
[INFO] [stdout] test test_conditional_dangling_reference ... ok
[INFO] [stdout] test test_conditional_ref_to_param ... ok
[INFO] [stdout] test test_conditional_use_while_borrowed ... ok
[INFO] [stdout] test test_conditional_no_borrow_with_literals ... ok
[INFO] [stdout] test test_double_mut_borrow ... ok
[INFO] [stdout] test test_error_dangling_mut_ref ... ok
[INFO] [stdout] test test_error_dangling_simple ... ok
[INFO] [stdout] test test_deeply_nested_borrow_ok ... ok
[INFO] [stdout] test test_error_dangling_from_block ... ok
[INFO] [stdout] test test_conditional_with_copies_ok ... ok
[INFO] [stdout] test test_empty_block_ok ... ok
[INFO] [stdout] test test_error_conditional_dangling_one_branch ... ok
[INFO] [stdout] test test_conflicting_borrow_immut_then_mut ... ok
[INFO] [stdout] test test_error_conflicting_borrow_across_let ... ok
[INFO] [stdout] test test_copy_i32_after_borrow_expires ... ok
[INFO] [stdout] test test_conditional_with_mut_borrow_no_conflict ... ok
[INFO] [stdout] test test_dangling_reference_direct ... ok
[INFO] [stdout] test test_dangling_reference_through_variable ... ok
[INFO] [stdout] test test_error_dangling_through_let ... ok
[INFO] [stdout] test test_error_mut_borrow_then_immut_borrow ... ok
[INFO] [stdout] test test_error_mut_borrow_then_read_in_conditional ... ok
[INFO] [stdout] test test_error_double_mut_borrow ... ok
[INFO] [stdout] test test_conflicting_borrow_mut_then_immut ... ok
[INFO] [stdout] test test_error_immut_borrow_then_mut_borrow ... ok
[INFO] [stdout] test test_error_mut_borrow_then_use ... ok
[INFO] [stdout] test test_error_use_in_addition_while_borrowed ... ok
[INFO] [stdout] test test_multiple_immutable_borrows_ok ... ok
[INFO] [stdout] test test_multiple_functions_separate_scopes ... ok
[INFO] [stdout] test test_error_triple_mut_borrow ... ok
[INFO] [stdout] test test_nested_block_dangling ... ok
[INFO] [stdout] test test_multiple_immutable_three_refs ... ok
[INFO] [stdout] test test_four_levels_deep_ok ... ok
[INFO] [stdout] test test_immut_then_mut_after_scope ... ok
[INFO] [stdout] test test_outer_scope_reference_ok ... ok
[INFO] [stdout] test test_mut_then_immut_after_scope ... ok
[INFO] [stdout] test test_error_mut_borrow_of_param_then_use ... ok
[INFO] [stdout] test test_error_use_after_mut_borrow_in_expr ... ok
[INFO] [stdout] test test_immutable_borrow_does_not_block_read ... ok
[INFO] [stdout] test test_nested_scope_borrow_released ... ok
[INFO] [stdout] test test_param_and_local_borrows_ok ... ok
[INFO] [stdout] test test_return_param_ref_with_local_mut_borrow ... ok
[INFO] [stdout] test test_nested_blocks_separate_borrows ... ok
[INFO] [stdout] test test_separate_borrows_ok ... ok
[INFO] [stdout] test test_param_copy_ok ... ok
[INFO] [stdout] test test_string_literal_assigned_to_variable ... ok
[INFO] [stdout] test test_string_literal_assigned_twice ... ok
[INFO] [stdout] test test_string_literal_from_conditional_in_block ... ok
[INFO] [stdout] test test_param_ref_not_dangling ... ok
[INFO] [stdout] test test_parameter_reference_ok ... ok
[INFO] [stdout] test test_borrow_in_inner_scope_no_conflict ... ok
[INFO] [stdout] test test_string_literal_no_dangling ... ok
[INFO] [stdout] test test_separate_mut_borrows_ok ... ok
[INFO] [stdout] test test_struct_field_is_copy ... ok
[INFO] [stdout] test test_two_param_refs_ok ... ok
[INFO] [stdout] test test_three_sequential_borrows ... ok
[INFO] [stdout] test test_static_lifetime_ok ... ok
[INFO] [stdout] test test_string_literal_in_block ... ok
[INFO] [stdout] test test_two_variables_independent_mut_borrows ... ok
[INFO] [stdout] test test_sequential_scopes_with_different_borrows ... ok
[INFO] [stdout] test test_string_literal_multiple ... ok
[INFO] [stdout] test test_string_literal_in_conditional ... ok
[INFO] [stdout] test test_sequential_mut_borrows_ok ... ok
[INFO] [stdout] test test_reborrow_after_scope ... ok
[INFO] [stdout] test test_use_after_move ... ok
[INFO] [stdout] test test_while_no_borrow_conflict ... ok
[INFO] [stdout] test test_while_with_multiple_locals ... ok
[INFO] [stdout] test test_while_with_copy_ok ... ok
[INFO] [stdout] test test_while_condition_uses_borrow_ok ... ok
[INFO] [stderr]      Running tests/control_flow.rs (/opt/rustwide/target/debug/deps/control_flow-b5dfb5bf665e2ae3)
[INFO] [stdout] test test_while_with_immutable_borrow_ok ... ok
[INFO] [stdout] test test_use_while_mut_borrowed ... ok
[INFO] [stdout] test test_while_body_local_borrows_ok ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 85 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 38 tests
[INFO] [stdout] test loop_with_return ... ignored, loop keyword not fully implemented (parsing issue)
[INFO] [stdout] test if_inside_while ... ok
[INFO] [stdout] test if_comparison_less_equal ... ok
[INFO] [stdout] test if_else_chain_four ... ok
[INFO] [stdout] test if_deeply_nested ... ok
[INFO] [stdout] test if_comparing_variables ... ok
[INFO] [stdout] test if_comparison_not_equal ... ok
[INFO] [stdout] test nested_while ... ok
[INFO] [stdout] test multiple_functions_with_control_flow ... ok
[INFO] [stdout] test if_statement_basic ... ok
[INFO] [stdout] test while_accumulator ... ok
[INFO] [stdout] test if_multiple_conditions_sequence ... ok
[INFO] [stdout] test while_countdown ... ok
[INFO] [stdout] test if_else_statement ... ok
[INFO] [stdout] test if_with_block_result ... ok
[INFO] [stdout] test while_collatz_steps ... ok
[INFO] [stdout] test if_no_else ... ok
[INFO] [stdout] test if_comparison_equal ... ok
[INFO] [stdout] test while_count_digits ... ok
[INFO] [stdout] test nested_if_in_while_with_accumulator ... ok
[INFO] [stdout] test if_else_returns_from_function ... ok
[INFO] [stdout] test while_early_exit_via_condition ... ok
[INFO] [stdout] test while_complex_condition ... ok
[INFO] [stdout] test if_with_function_call ... ok
[INFO] [stdout] test while_basic ... ok
[INFO] [stdout] test while_factorial ... ok
[INFO] [stdout] test while_multiple_in_sequence ... ok
[INFO] [stdout] test while_false ... ok
[INFO] [stdout] test while_double_accumulator ... ok
[INFO] [stdout] test while_nested_three_deep ... ok
[INFO] [stdout] test if_else_chain ... ok
[INFO] [stdout] test while_with_function_call ... ok
[INFO] [stdout] test while_power_of_two ... ok
[INFO] [stdout] test while_with_conditional_increment ... ok
[INFO] [stdout] test while_gcd_iterative ... ok
[INFO] [stdout] test while_find_first_multiple ... ok
[INFO] [stdout] test while_fibonacci ... ok
[INFO] [stderr]      Running tests/expressions.rs (/opt/rustwide/target/debug/deps/expressions-fb8f4c1dc78ecfcc)
[INFO] [stdout] test while_with_comparison_chain ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 37 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.55s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 97 tests
[INFO] [stdout] test bool_and_true_false ... ignored, bitwise & on bool not implemented
[INFO] [stdout] test bool_and_true_true ... ignored, bitwise & on bool not implemented
[INFO] [stdout] test bool_complex_expression ... ignored, bitwise operators on bool not implemented
[INFO] [stdout] test bool_not_false ... ignored, unary ! on bool not implemented
[INFO] [stdout] test bool_not_true ... ignored, unary ! on bool not implemented
[INFO] [stdout] test bool_or_false_false ... ignored, bitwise | on bool not implemented
[INFO] [stdout] test bool_or_true_false ... ignored, bitwise | on bool not implemented
[INFO] [stdout] test block_returns_conditional ... ok
[INFO] [stdout] test add_function ... ok
[INFO] [stdout] test block_with_shadow ... ok
[INFO] [stdout] test compare_greater_equal_statement ... ok
[INFO] [stdout] test block_scoping ... ok
[INFO] [stdout] test block_expression_value ... ok
[INFO] [stdout] test compare_greater_than_statement ... ok
[INFO] [stdout] test compare_equal_expr ... ok
[INFO] [stdout] test compare_less_equal_statement ... ok
[INFO] [stdout] test compare_not_equal_expr ... ok
[INFO] [stdout] test conditional_arithmetic_true ... ok
[INFO] [stdout] test compare_less_than_statement ... ok
[INFO] [stdout] test chained_addition ... ok
[INFO] [stdout] test compare_greater_than_expr ... ok
[INFO] [stdout] test arithmetic_precedence ... ok
[INFO] [stdout] test conditional_arithmetic_false ... ok
[INFO] [stdout] test chained_multiplication ... ok
[INFO] [stdout] test compare_equal_statement ... ok
[INFO] [stdout] test complex_precedence ... ok
[INFO] [stdout] test block_is_expression ... ok
[INFO] [stdout] test compare_not_equal_statement ... ok
[INFO] [stdout] test block_with_arithmetic ... ok
[INFO] [stdout] test compare_less_than_expr ... ok
[INFO] [stdout] test i32_to_u8_truncation ... ignored, u8 type not fully supported
[INFO] [stdout] test conditional_with_comparison ... ok
[INFO] [stdout] test conditional_with_variable ... ok
[INFO] [stdout] test deeply_nested_calls ... ok
[INFO] [stdout] test constant_function ... ok
[INFO] [stdout] test deeply_nested_parens ... ok
[INFO] [stdout] test function_in_let ... ok
[INFO] [stdout] test divide_self ... ok
[INFO] [stdout] test let_chain_dependency ... ok
[INFO] [stdout] test division_truncation ... ok
[INFO] [stdout] test fibonacci_12 ... ok
[INFO] [stdout] test large_value_wraps ... ok
[INFO] [stdout] test explicit_i32_annotation ... ok
[INFO] [stdout] test many_function_params ... ok
[INFO] [stdout] test min_function ... ok
[INFO] [stdout] test chained_subtraction ... ok
[INFO] [stdout] test modulo_even_check ... ok
[INFO] [stdout] test factorial_7 ... ok
[INFO] [stdout] test modulo_in_expression ... ok
[INFO] [stdout] test identity_function ... ok
[INFO] [stdout] test conditional_in_function ... ok
[INFO] [stdout] test modulo_basic ... ok
[INFO] [stdout] test modulo_one ... ok
[INFO] [stdout] test division_and_modulo ... ok
[INFO] [stdout] test multiply_by_one ... ok
[INFO] [stdout] test function_with_multiple_calls ... ok
[INFO] [stdout] test infer_i32_literal ... ok
[INFO] [stdout] test max_function ... ok
[INFO] [stdout] test mutual_recursion ... ok
[INFO] [stdout] test modulo_larger_divisor ... ok
[INFO] [stdout] test mixed_arithmetic ... ok
[INFO] [stdout] test parentheses_override_precedence ... ok
[INFO] [stdout] test nested_conditional ... ok
[INFO] [stdout] test multiply_by_zero ... ok
[INFO] [stdout] test modulo_same ... ok
[INFO] [stdout] test nested_function_calls ... ok
[INFO] [stdout] test negative_wraps ... ok
[INFO] [stdout] test multiple_lets_sum ... ok
[INFO] [stdout] test recursive_fibonacci ... ok
[INFO] [stdout] test multiple_blocks ... ok
[INFO] [stdout] test many_bindings ... ok
[INFO] [stdout] test nested_blocks ... ok
[INFO] [stdout] test nested_block_arithmetic ... ok
[INFO] [stdout] test parenthesized_expression ... ok
[INFO] [stdout] test shadow_with_different_value ... ok
[INFO] [stdout] test overflow_wraps ... ok
[INFO] [stdout] test subtract_self ... ok
[INFO] [stdout] test shadow_different_types_return ... ok
[INFO] [stdout] test recursive_power ... ok
[INFO] [stdout] test u8_to_i32_cast ... ignored, u8 type not fully supported
[INFO] [stdout] test u8_type_annotation ... ignored, u8 type not fully supported
[INFO] [stdout] test nested_conditional_inner ... ok
[INFO] [stdout] test negative_via_subtraction ... ok
[INFO] [stdout] test recursive_gcd ... ok
[INFO] [stdout] test triple_composition ... ok
[INFO] [stdout] test recursive_countdown ... ok
[INFO] [stdout] test shadow_with_computation ... ok
[INFO] [stdout] test recursive_abs ... ok
[INFO] [stdout] test recursive_factorial ... ok
[INFO] [stdout] test shadow_in_blocks ... ok
[INFO] [stdout] test shadow_variable ... ok
[INFO] [stdout] test triple_shadow ... ok
[INFO] [stdout] test subtract_function ... ok
[INFO] [stdout] test recursive_sum_iterative ... ok
[INFO] [stdout] test recursive_sum ... ok
[INFO] [stdout] test sum_to_100 ... ok
[INFO] [stdout] test zero_operations ... ok
[INFO] [stderr]      Running tests/ffi.rs (/opt/rustwide/target/debug/deps/ffi-3556e1f986928b7d)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 87 passed; 0 failed; 10 ignored; 0 measured; 0 filtered out; finished in 1.44s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test libc_abs_in_while ... ok
[INFO] [stdout] test libc_malloc_free ... ok
[INFO] [stdout] test extern_chained ... ok
[INFO] [stdout] test libc_memset_and_free ... ok
[INFO] [stdout] test extern_with_let ... ok
[INFO] [stdout] test libc_multiple_calls ... ok
[INFO] [stdout] test libc_memset ... ok
[INFO] [stdout] test libc_strlen_empty ... ok
[INFO] [stdout] test extern_multiple_types ... ok
[INFO] [stdout] test libc_abs_with_conditional ... ok
[INFO] [stdout] test libc_abs_in_expression ... ok
[INFO] [stdout] test libc_multiple_malloc_free ... ok
[INFO] [stdout] test extern_in_function ... ok
[INFO] [stdout] test libc_abs_positive ... ok
[INFO] [stdout] test libc_abs ... ok
[INFO] [stdout] test libc_strlen_longer ... ok
[INFO] [stdout] test libc_strlen_multiple ... ok
[INFO] [stdout] test extern_result_in_arithmetic ... ok
[INFO] [stdout] test libc_strlen ... ok
[INFO] [stderr]      Running tests/floats.rs (/opt/rustwide/target/debug/deps/floats-538ca66eeb37d8cf)
[INFO] [stdout] test libc_abs_zero ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test float_add ... ignored, float arithmetic traits not implemented for f32
[INFO] [stdout] test float_div ... ignored, float arithmetic traits not implemented for f32
[INFO] [stdout] test float_equals ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_greater_than ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_greater_than_or_equal ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_less_than ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_less_than_or_equal ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_mul ... ignored, float arithmetic traits not implemented for f32
[INFO] [stdout] test float_not_equals ... ignored, float comparison traits not implemented for f32
[INFO] [stdout] test float_sub ... ignored, float arithmetic traits not implemented for f32
[INFO] [stdout] test float_zero ... ok
[INFO] [stderr]      Running tests/impl_blocks.rs (/opt/rustwide/target/debug/deps/impl_blocks-aff722cb9f97e1cc)
[INFO] [stdout] test float_literal ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 10 ignored; 0 measured; 0 filtered out; finished in 0.30s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 55 tests
[INFO] [stdout] test method_missing_method ... ok
[INFO] [stdout] test basic_method_call ... ok
[INFO] [stdout] test comprehensive_impl_test ... ok
[INFO] [stdout] test method_max_field ... ok
[INFO] [stdout] test method_modulo ... ok
[INFO] [stdout] test method_compares_fields ... ok
[INFO] [stdout] test method_is_zero ... ok
[INFO] [stdout] test method_on_single_field_struct ... ok
[INFO] [stdout] test method_on_wrapper_type ... ok
[INFO] [stdout] test method_distance_approx ... ok
[INFO] [stdout] test method_result_in_let ... ok
[INFO] [stdout] test method_complex_calc ... ok
[INFO] [stdout] test method_returns_struct ... ok
[INFO] [stdout] test free_function_calls_method ... ok
[INFO] [stdout] test method_on_four_field_struct ... ok
[INFO] [stdout] test method_dot_product ... ok
[INFO] [stdout] test method_returns_bool_true ... ok
[INFO] [stdout] test method_and_free_function ... ok
[INFO] [stdout] test method_min_field ... ok
[INFO] [stdout] test method_wrong_arg_count ... ok
[INFO] [stdout] test method_wrong_arg_type_bool ... ok
[INFO] [stdout] test method_wrong_return_used ... ok
[INFO] [stdout] test method_with_if_statement ... ok
[INFO] [stdout] test parse_impl_block ... ok
[INFO] [stdout] test parse_method_call ... ok
[INFO] [stdout] test method_result_passed_to_function ... ok
[INFO] [stdout] test method_result_in_conditional ... ok
[INFO] [stdout] test method_returns_bool_false ... ok
[INFO] [stdout] test method_iterative_sum ... ok
[INFO] [stdout] test method_result_as_loop_condition ... ok
[INFO] [stdout] test method_with_conditional ... ok
[INFO] [stdout] test method_with_struct_arg ... ok
[INFO] [stdout] test method_on_three_field_struct ... ok
[INFO] [stdout] test method_uses_free_function ... ok
[INFO] [stdout] test static_method_with_args ... ok
[INFO] [stdout] test method_takes_struct_arg ... ok
[INFO] [stdout] test method_with_while ... ok
[INFO] [stdout] test method_with_three_args ... ok
[INFO] [stdout] test multiple_methods ... ok
[INFO] [stdout] test unknown_method ... ok
[INFO] [stdout] test static_and_instance_methods ... ok
[INFO] [stdout] test static_from_pair ... ok
[INFO] [stdout] test method_with_args ... ok
[INFO] [stdout] test static_method_call ... ok
[INFO] [stdout] test static_new_with_value ... ok
[INFO] [stdout] test static_method_chain ... ok
[INFO] [stdout] test two_methods_same_struct ... ok
[INFO] [stdout] test static_new_default ... ok
[INFO] [stdout] test static_method_returns_different_value ... ok
[INFO] [stdout] test method_returns_same_struct ... ok
[INFO] [stdout] test static_method_with_conditional ... ok
[INFO] [stdout] test two_structs_with_impl ... ok
[INFO] [stdout] test static_and_instance_combined ... ok
[INFO] [stdout] test two_method_calls_combined ... ok
[INFO] [stdout] test struct_methods_interact ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 55 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.97s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/lexer.rs (/opt/rustwide/target/debug/deps/lexer-8b5bf80d5a16e217)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test test_lex_all_delimiters ... ok
[INFO] [stdout] test test_lex_bool_literals ... ok
[INFO] [stdout] test test_lex_identifiers ... ok
[INFO] [stdout] test test_lex_keywords ... ok
[INFO] [stdout] test test_lex_keyword_prefix_ident ... ok
[INFO] [stdout] test test_lex_float_literal ... ok
[INFO] [stdout] test test_lex_double_colon ... ok
[INFO] [stdout] test test_lex_empty_input ... ok
[INFO] [stdout] test test_lex_greater_equal ... ok
[INFO] [stdout] test test_lex_comments ... ok
[INFO] [stdout] test test_lex_arrow ... ok
[INFO] [stdout] test test_lex_integers ... ok
[INFO] [stdout] test test_lex_operators ... ok
[INFO] [stdout] test test_lex_string_literal ... ok
[INFO] [stdout] test test_lex_struct_keyword ... ok
[INFO] [stdout] test test_lex_less_equal ... ok
[INFO] [stdout] test test_lex_while_keyword ... ok
[INFO] [stdout] test test_spans ... ok
[INFO] [stdout] test test_lex_modulo_operator ... ok
[INFO] [stdout] test test_lex_ampersand ... ok
[INFO] [stderr]      Running tests/modules.rs (/opt/rustwide/target/debug/deps/modules-66a01168cbcc7dc0)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test test_circular_dependency_error ... ignored, circular dependency detection needs path resolution rework
[INFO] [stdout] test test_empty_main_with_module ... ok
[INFO] [stdout] test test_empty_module_directory ... ok
[INFO] [stdout] test test_deeply_nested_use ... ok
[INFO] [stdout] test test_bundled_std_loads ... ok
[INFO] [stdout] test test_function_registry_qualified_names ... ok
[INFO] [stdout] test test_bundled_std_malloc_free ... ok
[INFO] [stdout] test test_missing_module_error ... ok
[INFO] [stdout] test test_deeply_nested_three_levels ... ok
[INFO] [stdout] test test_module_loaded_only_once ... ok
[INFO] [stdout] test test_missing_nested_module ... ok
[INFO] [stdout] test test_module_internal_calls_work ... ok
[INFO] [stdout] test test_module_exports_multiple_functions ... ok
[INFO] [stdout] test test_module_function_name_collision_with_main ... ok
[INFO] [stdout] test test_module_with_constants ... ok
[INFO] [stdout] test test_bundled_std_exit ... ok
[INFO] [stdout] test test_bundled_std_println ... ok
[INFO] [stdout] test test_single_file_project ... ok
[INFO] [stdout] test test_use_and_local_functions ... ok
[INFO] [stdout] test test_multiple_use_statements ... ok
[INFO] [stdout] test test_module_with_multiple_files ... ok
[INFO] [stdout] test test_same_function_name_different_modules ... ok
[INFO] [stdout] test test_module_function_calls_other_module_function ... ok
[INFO] [stdout] test test_non_som_files_ignored ... ok
[INFO] [stdout] test test_module_with_qualified_call_type_checks ... ok
[INFO] [stdout] test test_use_loads_dependency ... ok
[INFO] [stdout] test test_extern_functions_have_qualified_names ... ok
[INFO] [stdout] test test_use_qualified_path ... ok
[INFO] [stdout] test test_two_modules_each_with_structs ... ok
[INFO] [stdout] test test_multiple_files_in_root ... ok
[INFO] [stdout] test test_module_with_extern ... ok
[INFO] [stdout] test test_module_with_struct ... ok
[INFO] [stdout] test test_multiple_modules_shared_dependency ... ok
[INFO] [stdout] test test_use_std_println_unqualified ... ok
[INFO] [stdout] test test_three_modules_independent ... ok
[INFO] [stdout] test test_bundled_std_overrides_local ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 35 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mutation.rs (/opt/rustwide/target/debug/deps/mutation-7e2f1571f98ba81c)
[INFO] [stdout] 
[INFO] [stdout] running 34 tests
[INFO] [stdout] test counting_pattern ... ok
[INFO] [stdout] test let_mut_basic ... ok
[INFO] [stdout] test counter_decrement ... ok
[INFO] [stdout] test cascade_assignments ... ok
[INFO] [stdout] test conditional_increment ... ok
[INFO] [stdout] test bubble_sort_two ... ok
[INFO] [stdout] test mut_from_function ... ok
[INFO] [stdout] test complex_mutation_sequence ... ok
[INFO] [stdout] test accumulate_evens ... ok
[INFO] [stdout] test mut_ref_in_function ... ignored, writing through mutable ref then reading original causes borrow error
[INFO] [stdout] test accumulate_with_if ... ok
[INFO] [stdout] test mut_ref_write ... ignored, writing through mutable ref then reading original causes borrow error
[INFO] [stdout] test mut_ref_write_and_read ... ignored, writing through mutable ref then reading original causes borrow error
[INFO] [stdout] test let_mut_multiple_vars ... ok
[INFO] [stdout] test fibonacci_mutation ... ok
[INFO] [stdout] test counter_increment ... ok
[INFO] [stdout] test let_mut_in_loop ... ok
[INFO] [stdout] test mutation_chain_in_while ... ok
[INFO] [stdout] test mut_in_loop_with_function ... ok
[INFO] [stdout] test counter_by_step ... ok
[INFO] [stdout] test swap_variables ... ok
[INFO] [stdout] test mut_in_block ... ok
[INFO] [stdout] test mut_in_nested_blocks ... ok
[INFO] [stdout] test assign_multiple ... ok
[INFO] [stdout] test three_mutable_vars ... ok
[INFO] [stdout] test alternating_accumulator ... ok
[INFO] [stdout] test accumulate_two_vars ... ok
[INFO] [stdout] test mut_ref_read ... ok
[INFO] [stdout] test mut_preserved_after_block ... ok
[INFO] [stdout] test mut_add_function_result ... ok
[INFO] [stdout] test mut_with_modulo ... ok
[INFO] [stdout] test assign_variable ... ok
[INFO] [stdout] test two_vars_swap_sum ... ok
[INFO] [stdout] test swap_three ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 31 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.46s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/parser.rs (/opt/rustwide/target/debug/deps/parser-c20be8a8eca0c2b7)
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test test_parse_binary_expr ... ok
[INFO] [stdout] test test_parse_extern_block ... ok
[INFO] [stdout] test test_parse_bool_literal ... ok
[INFO] [stdout] test test_parse_conditional_chained ... ok
[INFO] [stdout] test test_parse_conditional_basic ... ok
[INFO] [stdout] test test_parse_conditional_nested ... ok
[INFO] [stdout] test test_parse_generic_function ... ok
[INFO] [stdout] test test_parse_function_call ... ok
[INFO] [stdout] test test_parse_function_with_multiple_params ... ok
[INFO] [stdout] test test_parse_if_else_statement ... ok
[INFO] [stdout] test test_parse_if_else_chain ... ok
[INFO] [stdout] test test_parse_impl_block ... ok
[INFO] [stdout] test test_parse_function_with_let ... ok
[INFO] [stdout] test test_parse_conditional_with_expressions ... ok
[INFO] [stdout] test test_parse_block_expression ... ok
[INFO] [stdout] test test_parse_conditional_precedence_addition ... ok
[INFO] [stdout] test test_parse_conditional_precedence_mixed ... ok
[INFO] [stdout] test test_parse_conditional_precedence_multiply ... ok
[INFO] [stdout] test test_parse_field_access ... ok
[INFO] [stdout] test test_parse_complex_arithmetic ... ok
[INFO] [stdout] test test_parse_let_mut ... ok
[INFO] [stdout] test test_parse_modulo_expression ... ok
[INFO] [stdout] test test_parse_multiple_functions ... ok
[INFO] [stdout] test test_parse_simple_function ... ok
[INFO] [stdout] test test_parse_nested_while ... ok
[INFO] [stdout] test test_parse_reference_types ... ok
[INFO] [stdout] test test_parse_return_struct ... ok
[INFO] [stdout] test test_parse_comparison_operators ... ok
[INFO] [stdout] test test_parse_method_call_with_args ... ok
[INFO] [stderr]      Running tests/span.rs (/opt/rustwide/target/debug/deps/span-46b57104b2562b5c)
[INFO] [stdout] test test_parse_static_method_call ... ok
[INFO] [stdout] test test_parse_string_literal ... ok
[INFO] [stdout] test test_parse_void_function ... ok
[INFO] [stdout] test test_parse_struct_definition ... ok
[INFO] [stdout] test test_parse_use_statement ... ok
[INFO] [stdout] test test_parse_missing_closing_brace ... ok
[INFO] [stdout] test test_parse_struct_literal ... ok
[INFO] [stdout] test test_parse_multiple_let_bindings ... ok
[INFO] [stdout] test test_parse_mut_reference ... ok
[INFO] [stdout] test test_parse_nested_conditionals ... ok
[INFO] [stdout] test test_parse_conditional_in_let ... ok
[INFO] [stdout] test test_parse_empty_function ... ok
[INFO] [stdout] test test_parse_while_statement ... ok
[INFO] [stdout] test test_parse_conditional_with_comparison ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test test_span_empty_source ... ok
[INFO] [stdout] test test_span_last_line ... ok
[INFO] [stdout] test test_span_from_range ... ok
[INFO] [stdout] test test_span_merge ... ok
[INFO] [stdout] test test_get_line ... ok
[INFO] [stdout] test test_span_multi_line ... ok
[INFO] [stdout] test test_span_single_char ... ok
[INFO] [stdout] test test_span_text ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/std_lib.rs (/opt/rustwide/target/debug/deps/std_lib-32fd0d3024a132f3)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test test_multiple_allocations ... ok
[INFO] [stdout] test test_std_exit_nonzero ... ok
[INFO] [stdout] test test_pointer_as_return_type ... ok
[INFO] [stdout] test test_std_free_null_like ... ok
[INFO] [stdout] test test_std_exit_in_conditional ... ok
[INFO] [stdout] test test_std_exit_zero_explicit ... ok
[INFO] [stdout] test1
[INFO] [stdout] test2
[INFO] [stdout] test test_module_calls_own_extern ... ok
[INFO] [stdout] test test_std_exit_large_code ... ok
[INFO] [stdout] Starting...
[INFO] [stdout] Allocated memory
[INFO] [stdout] Freed memory
[INFO] [stdout] test test_full_std_usage ... ok
[INFO] [stdout] test test_std_malloc_free ... ok
[INFO] [stdout] test test_std_exit_zero ... ok
[INFO] [stdout] test test_std_malloc_free_in_function ... ok
[INFO] [stdout] Hello from mylib!
[INFO] [stdout] test test_user_module_with_extern ... ok
[INFO] [stdout] about to exit
[INFO] [stdout] test test_std_combined_println_and_exit ... ok
[INFO] [stdout] Hello from test!
[INFO] [stdout] test test_std_println ... ok
[INFO] [stdout] test test_std_malloc_in_loop ... ok
[INFO] [stdout] 
[INFO] [stdout] test test_std_println_empty_string ... ok
[INFO] [stdout] allocated
[INFO] [stdout] freed
[INFO] [stdout] test test_std_combined_malloc_println_exit ... ok
[INFO] [stdout] test test_pointer_as_parameter ... ok
[INFO] [stdout] test test_std_multiple_malloc_sizes ... ok
[INFO] [stdout] allocated via helper
[INFO] [stdout] test test_std_with_function_composition ... ok
[INFO] [stdout] test test_std_with_structs ... ok
[INFO] [stdout] line one
[INFO] [stdout] line two
[INFO] [stdout] line three
[INFO] [stdout] loop
[INFO] [stdout] loop
[INFO] [stdout] loop
[INFO] [stdout] test test_std_println_multiple_lines ... ok
[INFO] [stdout] test test_std_println_in_while ... ok
[INFO] [stdout] from user module
[INFO] [stderr]      Running tests/structs.rs (/opt/rustwide/target/debug/deps/structs-e2305cef3afd6058)
[INFO] [stdout] test test_user_module_calls_std ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.67s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 57 tests
[INFO] [stdout] test struct_bool_field_false ... ok
[INFO] [stdout] test field_access ... ok
[INFO] [stdout] test struct_compare_fields_of_two ... ok
[INFO] [stdout] test struct_default_pattern ... ok
[INFO] [stdout] test struct_as_accumulator ... ok
[INFO] [stdout] test parse_struct_definition ... ok
[INFO] [stdout] test struct_add_two_points ... ok
[INFO] [stdout] test chained_struct_returns ... ok
[INFO] [stdout] test struct_distance_squared ... ok
[INFO] [stdout] test struct_conditional_false ... ok
[INFO] [stdout] test struct_field_equal ... ok
[INFO] [stdout] test struct_conditional_true ... ok
[INFO] [stdout] test return_struct_access_single_field ... ok
[INFO] [stdout] test return_struct_with_pointer_field ... ok
[INFO] [stdout] test return_struct_from_function ... ok
[INFO] [stdout] test return_struct_with_three_fields ... ok
[INFO] [stdout] test struct_chain ... ok
[INFO] [stdout] test struct_area_rectangle ... ok
[INFO] [stdout] test struct_field_as_loop_bound ... ok
[INFO] [stdout] test struct_field_as_function_arg ... ok
[INFO] [stdout] test struct_field_subtract ... ok
[INFO] [stdout] test struct_field_in_conditional ... ok
[INFO] [stdout] test struct_field_modulo ... ok
[INFO] [stdout] test struct_bool_field ... ok
[INFO] [stdout] test struct_function_chain ... ok
[INFO] [stdout] test struct_field_add ... ok
[INFO] [stdout] test struct_five_fields ... ok
[INFO] [stdout] test struct_multiple_args ... ok
[INFO] [stdout] test struct_mixed_fields ... ok
[INFO] [stdout] test struct_function_takes_two ... ok
[INFO] [stdout] test struct_pass_and_return ... ok
[INFO] [stdout] test struct_multiple_same_type ... ok
[INFO] [stdout] test struct_pointer_field_len ... ok
[INFO] [stdout] test struct_pass_by_value_large ... ok
[INFO] [stdout] test struct_four_i32 ... ok
[INFO] [stdout] test struct_field_greater ... ok
[INFO] [stdout] test struct_returned_by_helper ... ok
[INFO] [stdout] test struct_from_other_fields ... ok
[INFO] [stdout] test struct_three_i32 ... ok
[INFO] [stdout] test struct_literal ... ok
[INFO] [stdout] test struct_pass_by_value_small ... ok
[INFO] [stdout] test struct_negate ... ok
[INFO] [stdout] test struct_six_fields ... ok
[INFO] [stdout] test struct_pointer_and_i32 ... ok
[INFO] [stdout] test struct_field_less ... ok
[INFO] [stdout] test struct_single_field_arithmetic ... ok
[INFO] [stdout] test struct_three_field_mixed ... ok
[INFO] [stdout] test struct_wrapper_unwrap ... ok
[INFO] [stdout] test struct_two_i32 ... ok
[INFO] [stdout] test struct_returned_false ... ok
[INFO] [stdout] test struct_returned_from_while ... ok
[INFO] [stdout] test struct_returned_from_function_conditional ... ok
[INFO] [stdout] test struct_field_multiply ... ok
[INFO] [stdout] test struct_with_string_field ... ok
[INFO] [stdout] test struct_two_functions ... ok
[INFO] [stdout] test struct_single_i32 ... ok
[INFO] [stdout] test struct_update_pattern ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 57 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.60s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/type_check.rs (/opt/rustwide/target/debug/deps/type_check-77db3235a2952fdc)
[INFO] [stdout] 
[INFO] [stdout] running 103 tests
[INFO] [stdout] test test_conditional_basic ... ok
[INFO] [stdout] test test_conditional_branch_type_mismatch ... ok
[INFO] [stdout] test test_conditional_condition_not_bool ... ok
[INFO] [stdout] test test_conditional_with_variable_condition ... ok
[INFO] [stdout] test test_conditional_type_inference_from_annotation ... ok
[INFO] [stdout] test test_error_add_bool_and_int ... ok
[INFO] [stdout] test test_conditional_nested ... ok
[INFO] [stdout] test test_error_conditional_branches_different_types ... ok
[INFO] [stdout] test test_error_assign_wrong_type ... ok
[INFO] [stdout] test test_error_if_condition_not_bool ... ok
[INFO] [stdout] test test_error_conditional_condition_i32 ... ok
[INFO] [stdout] test test_conditional_with_comparison_condition ... ok
[INFO] [stdout] test test_conditional_with_arithmetic ... ok
[INFO] [stdout] test test_conditional_in_let_binding ... ok
[INFO] [stdout] test test_error_method_wrong_arg_type ... ok
[INFO] [stdout] test test_conditional_bool_result ... ok
[INFO] [stdout] test test_error_missing_struct_field ... ok
[INFO] [stdout] test test_error_compare_bool_and_int ... ok
[INFO] [stdout] test test_error_field_access_on_non_struct ... ok
[INFO] [stdout] test test_error_while_condition_not_bool ... ok
[INFO] [stdout] test test_error_return_type_mismatch_bool_for_i32 ... ok
[INFO] [stdout] test test_error_unknown_function ... ok
[INFO] [stdout] test test_error_multiple_errors ... ok
[INFO] [stdout] test test_error_unbound_in_block ... ok
[INFO] [stdout] test test_error_return_type_mismatch_i32_for_bool ... ok
[INFO] [stdout] test test_error_wrong_arg_type ... ok
[INFO] [stdout] test test_error_wrong_arg_count_too_few ... ok
[INFO] [stdout] test test_error_wrong_arg_count_too_many ... ok
[INFO] [stdout] test test_error_unknown_struct ... ok
[INFO] [stdout] test test_generic_multiple_type_params ... ok
[INFO] [stdout] test test_generic_identity_bool ... ok
[INFO] [stdout] test test_infer_binary_add ... ok
[INFO] [stdout] test test_infer_bool_literal ... ok
[INFO] [stdout] test test_error_unknown_struct_field ... ok
[INFO] [stdout] test test_generic_type_mismatch ... ok
[INFO] [stdout] test test_generic_identity_string ... ok
[INFO] [stdout] test test_infer_bool_param ... ok
[INFO] [stdout] test test_infer_chained_calls ... ok
[INFO] [stdout] test test_generic_identity ... ok
[INFO] [stdout] test test_error_wrong_field_type ... ok
[INFO] [stdout] test test_infer_comparison_equals ... ok
[INFO] [stdout] test test_infer_comparison ... ok
[INFO] [stdout] test test_infer_assignment_in_while ... ok
[INFO] [stdout] test test_infer_bool_true_false ... ok
[INFO] [stdout] test test_infer_comparison_gt ... ok
[INFO] [stdout] test test_infer_comparison_gt_eq ... ok
[INFO] [stdout] test test_infer_comparison_not_equals ... ok
[INFO] [stdout] test test_infer_deref ... ok
[INFO] [stdout] test test_infer_function_param_types ... ok
[INFO] [stdout] test test_infer_extern_function ... ok
[INFO] [stdout] test test_infer_comparison_lt_eq ... ok
[INFO] [stdout] test test_infer_conditional_with_function_call ... ok
[INFO] [stdout] test test_infer_modulo ... ok
[INFO] [stdout] test test_infer_let_with_block ... ok
[INFO] [stdout] test test_infer_multiplication ... ok
[INFO] [stdout] test test_infer_i32_literal ... ok
[INFO] [stdout] test test_infer_if_else_statement ... ok
[INFO] [stdout] test test_infer_multiple_structs ... ok
[INFO] [stdout] test test_infer_if_statement ... ok
[INFO] [stdout] test test_infer_method_with_args ... ok
[INFO] [stdout] test test_infer_division ... ok
[INFO] [stdout] test test_infer_method_call ... ok
[INFO] [stdout] test test_infer_mut_reference ... ok
[INFO] [stdout] test test_infer_multiple_params ... ok
[INFO] [stdout] test test_infer_let_binding ... ok
[INFO] [stdout] test test_infer_nested_arithmetic ... ok
[INFO] [stdout] test test_generic_two_calls ... ok
[INFO] [stdout] test test_infer_mut_variable ... ok
[INFO] [stdout] test test_infer_function_call ... ok
[INFO] [stdout] test test_infer_string_param ... ok
[INFO] [stdout] test test_infer_nested_if ... ok
[INFO] [stdout] test test_infer_shadowed_variable ... ok
[INFO] [stdout] test test_infer_reference_type ... ok
[INFO] [stdout] test test_infer_string_literal ... ok
[INFO] [stdout] test test_infer_struct_field_access ... ok
[INFO] [stdout] test test_infer_nested_function_call ... ok
[INFO] [stdout] test test_infer_subtraction ... ok
[INFO] [stdout] test test_infer_struct_parameter ... ok
[INFO] [stdout] test test_infer_nested_blocks ... ok
[INFO] [stdout] test test_infer_void_function ... ok
[INFO] [stdout] test test_infer_struct_return_type ... ok
[INFO] [stdout] test test_infer_static_method_call ... ok
[INFO] [stdout] test test_infer_while_loop ... ok
[INFO] [stdout] test test_multiple_functions ... ok
[INFO] [stdout] test test_pointer_function_chain ... ok
[INFO] [stdout] test test_pointer_type_mismatch_with_i32 ... ok
[INFO] [stdout] test test_pointer_type_mismatch_with_reference ... ok
[INFO] [stdout] test test_string_literal_type_mismatch ... ok
[INFO] [stdout] test test_struct_field_type_inference ... ok
[INFO] [stdout] test test_infer_recursive_function ... ok
[INFO] [stdout] test test_pointer_type_parameter ... ok
[INFO] [stdout] test test_struct_in_conditional ... ok
[INFO] [stdout] test test_pointer_in_struct ... ok
[INFO] [stdout] test test_infer_struct_construction ... ok
[INFO] [stdout] test test_pointer_type_return ... ok
[INFO] [stdout] test test_struct_method_returns_struct ... ok
[INFO] [stdout] test test_type_annotation_mismatch ... ok
[INFO] [stdout] test test_struct_two_fields_wrong_type ... ok
[INFO] [stdout] test test_unknown_type_error ... ok
[INFO] [stdout] test test_type_mismatch_return ... ok
[INFO] [stdout] test test_unbound_variable ... ok
[INFO] [stdout] test test_pointer_type_annotation ... ok
[INFO] [stdout] test test_pointer_passed_to_wrong_param_type ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 103 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/som-e9c523da09f4a969)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/somlsp-a7df1264ba85f0c3)
[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 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]    Doc-tests som
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test compiler/src/span.rs - span::source_raw (line 6) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 0.41s; merged doctests compilation took 0.41s
[INFO] running `Command { std: "docker" "inspect" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508", kill_on_drop: false }`
[INFO] [stdout] c4c75f75d9feb1bc9e939107e58e41157568c98236c3860fd4576a6a3e8a1508
