[INFO] cloning repository https://github.com/nulldatamap/urt
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nulldatamap/urt" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnulldatamap%2Furt", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnulldatamap%2Furt'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ce349429663a434b792b23017279a66dd4ac3316
[INFO] checking nulldatamap/urt against 615014f15745532730b9ce7a1d9309f8b4756f93 for pr-160491
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnulldatamap%2Furt" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/nulldatamap/urt
[INFO] finished tweaking git repo https://github.com/nulldatamap/urt
[INFO] tweaked toml for git repo https://github.com/nulldatamap/urt written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nulldatamap/urt on toolchain 615014f15745532730b9ce7a1d9309f8b4756f93
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+615014f15745532730b9ce7a1d9309f8b4756f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nulldatamap/urt 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" "+615014f15745532730b9ce7a1d9309f8b4756f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded micromap v0.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:00c5645b54fe3ce5dae1417175e3c7fb6a6646c021d554ecd63a097b8b9f3602" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605
[INFO] running `Command { std: "docker" "start" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605", 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" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605" "/opt/rustwide/cargo-home/bin/cargo" "+615014f15745532730b9ce7a1d9309f8b4756f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605" "/opt/rustwide/cargo-home/bin/cargo" "+615014f15745532730b9ce7a1d9309f8b4756f93" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking micromap v0.3.0
[INFO] [stderr]     Checking urt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `stack_usage`
[INFO] [stdout]    --> src/analysis/mod.rs:444:16
[INFO] [stdout]     |
[INFO] [stdout] 444 | pub(crate) use stack_usage;
[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 variable: `bt`
[INFO] [stdout]   --> src/analysis/mod.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |             (TypeInfo::Code(Some(bt)), v) => unimplemented!(),
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_bt`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/analysis/mod.rs:94:40
[INFO] [stdout]    |
[INFO] [stdout] 94 |             (TypeInfo::Code(Some(bt)), v) => unimplemented!(),
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/analysis/mod.rs:176:35
[INFO] [stdout]     |
[INFO] [stdout] 176 |             (VirtualVal::Concrete(v), StackParam::Any | StackParam::Arg(_, None)) => true,
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp0`
[INFO] [stdout]    --> src/analysis/mod.rs:201:39
[INFO] [stdout]     |
[INFO] [stdout] 201 |             (Some(TypeInfo::Code(Some(sp0))), Some(TypeInfo::Code(Some(sp1)))) => {
[INFO] [stdout]     |                                       ^^^ help: if this is intentional, prefix it with an underscore: `_sp0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp1`
[INFO] [stdout]    --> src/analysis/mod.rs:201:72
[INFO] [stdout]     |
[INFO] [stdout] 201 |             (Some(TypeInfo::Code(Some(sp0))), Some(TypeInfo::Code(Some(sp1)))) => {
[INFO] [stdout]     |                                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_sp1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/analysis/mod.rs:631:21
[INFO] [stdout]     |
[INFO] [stdout] 631 |         if let Some(v) = self.lexical_lookup(s) {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/analysis/tests.rs:60:45
[INFO] [stdout]    |
[INFO] [stdout] 60 |         Err(AnalysisError::StackMismatch(_, x, y)) if y == stack_usage!((int int) -> (int))
[INFO] [stdout]    |                                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/analysis/tests.rs:65:45
[INFO] [stdout]    |
[INFO] [stdout] 65 |         Err(AnalysisError::StackMismatch(_, x, y)) if y == stack_usage!((anycode) -> (eval(0)))
[INFO] [stdout]    |                                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]   --> src/analysis/tests.rs:85:45
[INFO] [stdout]    |
[INFO] [stdout] 85 |         Err(AnalysisError::StackMismatch(_, x, y)) if y == stack_usage!((anycode) -> (eval(0)))
[INFO] [stdout]    |                                             ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bt`
[INFO] [stdout]   --> src/analysis/mod.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |             (TypeInfo::Code(Some(bt)), v) => unimplemented!(),
[INFO] [stdout]    |                                  ^^ help: if this is intentional, prefix it with an underscore: `_bt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]   --> src/analysis/mod.rs:94:40
[INFO] [stdout]    |
[INFO] [stdout] 94 |             (TypeInfo::Code(Some(bt)), v) => unimplemented!(),
[INFO] [stdout]    |                                        ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/analysis/mod.rs:176:35
[INFO] [stdout]     |
[INFO] [stdout] 176 |             (VirtualVal::Concrete(v), StackParam::Any | StackParam::Arg(_, None)) => true,
[INFO] [stdout]     |                                   ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp0`
[INFO] [stdout]    --> src/analysis/mod.rs:201:39
[INFO] [stdout]     |
[INFO] [stdout] 201 |             (Some(TypeInfo::Code(Some(sp0))), Some(TypeInfo::Code(Some(sp1)))) => {
[INFO] [stdout]     |                                       ^^^ help: if this is intentional, prefix it with an underscore: `_sp0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sp1`
[INFO] [stdout]    --> src/analysis/mod.rs:201:72
[INFO] [stdout]     |
[INFO] [stdout] 201 |             (Some(TypeInfo::Code(Some(sp0))), Some(TypeInfo::Code(Some(sp1)))) => {
[INFO] [stdout]     |                                                                        ^^^ help: if this is intentional, prefix it with an underscore: `_sp1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `v`
[INFO] [stdout]    --> src/analysis/mod.rs:631:21
[INFO] [stdout]     |
[INFO] [stdout] 631 |         if let Some(v) = self.lexical_lookup(s) {
[INFO] [stdout]     |                     ^ help: if this is intentional, prefix it with an underscore: `_v`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `VirtualVal` is more private than the item `AnalysisError::StackMismatch::1`
[INFO] [stdout]    --> src/analysis/mod.rs:14:27
[INFO] [stdout]     |
[INFO] [stdout]  14 |     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout]     |                           ^^^^^^^^^^^^ field `AnalysisError::StackMismatch::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `VirtualVal` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | enum VirtualVal {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::StackMismatch::2`
[INFO] [stdout]    --> src/analysis/mod.rs:14:41
[INFO] [stdout]     |
[INFO] [stdout]  14 |     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout]     |                                         ^^^^^^^^^^ field `AnalysisError::StackMismatch::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::TypeMismatch::1`
[INFO] [stdout]    --> src/analysis/mod.rs:15:26
[INFO] [stdout]     |
[INFO] [stdout]  15 |     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout]     |                          ^^^^^^^^^^ field `AnalysisError::TypeMismatch::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::TypeMismatch::2`
[INFO] [stdout]    --> src/analysis/mod.rs:15:38
[INFO] [stdout]     |
[INFO] [stdout]  15 |     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout]     |                                      ^^^^^^^^^^ field `AnalysisError::TypeMismatch::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `VirtualVal` is more private than the item `AnalysisError::AmbiguousType::0`
[INFO] [stdout]    --> src/analysis/mod.rs:16:19
[INFO] [stdout]     |
[INFO] [stdout]  16 |     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout]     |                   ^^^^^^^^^^^^ field `AnalysisError::AmbiguousType::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `VirtualVal` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | enum VirtualVal {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::AmbiguousType::1`
[INFO] [stdout]    --> src/analysis/mod.rs:16:33
[INFO] [stdout]     |
[INFO] [stdout]  16 |     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout]     |                                 ^^^^^^^^^^ field `AnalysisError::AmbiguousType::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackParam` is more private than the item `AnalysisError::TypeMergeError::1`
[INFO] [stdout]    --> src/analysis/mod.rs:17:36
[INFO] [stdout]     |
[INFO] [stdout]  17 |     TypeMergeError(Option<String>, StackParam, StackParam),
[INFO] [stdout]     |                                    ^^^^^^^^^^ field `AnalysisError::TypeMergeError::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackParam` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | enum StackParam {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackParam` is more private than the item `AnalysisError::TypeMergeError::2`
[INFO] [stdout]    --> src/analysis/mod.rs:17:48
[INFO] [stdout]     |
[INFO] [stdout]  17 |     TypeMergeError(Option<String>, StackParam, StackParam),
[INFO] [stdout]     |                                                ^^^^^^^^^^ field `AnalysisError::TypeMergeError::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackParam` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | enum StackParam {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `analyze`
[INFO] [stdout]    --> src/analysis/mod.rs:683:1
[INFO] [stdout]     |
[INFO] [stdout] 683 | pub fn analyze(t: &SymbolTable, program: &Vals) -> AnalysisResult {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `analyze` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `AnalysisError` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum AnalysisError {
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ArrayLikeIter` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | trait ArrayLikeIter<'a, T: 'a>:
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Result` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:28:6
[INFO] [stdout]    |
[INFO] [stdout] 28 | type Result<T> = std::result::Result<T, AnalysisError>;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `AnalysisResult` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:29:6
[INFO] [stdout]    |
[INFO] [stdout] 29 | type AnalysisResult = Result<StackUsage>;
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `BuiltinInfo` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:31:6
[INFO] [stdout]    |
[INFO] [stdout] 31 | type BuiltinInfo = HashMap<Sym, BuiltinInfoEntry>;
[INFO] [stdout]    |      ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BasicType` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:34:6
[INFO] [stdout]    |
[INFO] [stdout] 34 | enum BasicType {
[INFO] [stdout]    |      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `matches` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:42:8
[INFO] [stdout]    |
[INFO] [stdout] 41 | impl BasicType {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] 42 |     fn matches(&self, v: &Val) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TypeInfo` is never used
[INFO] [stdout]   --> src/analysis/mod.rs:53:6
[INFO] [stdout]    |
[INFO] [stdout] 53 | enum TypeInfo {
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/analysis/mod.rs:60:14
[INFO] [stdout]    |
[INFO] [stdout] 59 | impl TypeInfo {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 60 |     const fn int() -> TypeInfo {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     const fn sym() -> TypeInfo {
[INFO] [stdout]    |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     const fn kw() -> TypeInfo {
[INFO] [stdout]    |              ^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     const fn list() -> TypeInfo {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     const fn bool() -> TypeInfo {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 80 |     const fn anycode() -> TypeInfo {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     const fn syms() -> TypeInfo {
[INFO] [stdout]    |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     fn matches(&self, v: &Val) -> bool {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 98 |     fn from_concrete(v: &Val) -> TypeInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Eval` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:130:6
[INFO] [stdout]     |
[INFO] [stdout] 130 | enum Eval {
[INFO] [stdout]     |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `StackParam` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:137:6
[INFO] [stdout]     |
[INFO] [stdout] 137 | enum StackParam {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_any`, `type_info`, `matches`, `matches_virtual`, `in_type`, and `merge` are never used
[INFO] [stdout]    --> src/analysis/mod.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl StackParam {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] 146 |     fn is_any(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn type_info(&self) -> Option<TypeInfo> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     fn matches(&self, other: &Self) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 173 |     fn matches_virtual(&self, other: &VirtualVal) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 184 |     fn in_type(&self) -> Option<TypeInfo> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 193 |     fn merge(&self, other: &Self) -> Result<Self> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StackUsage` is never constructed
[INFO] [stdout]    --> src/analysis/mod.rs:240:8
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/analysis/mod.rs:246:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | impl StackUsage {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 246 |     fn matches(&self, other: &StackUsage) -> bool {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 260 |     fn matches_exact(&self, other: &StackUsage) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 266 |     fn usage_matches_virtual<'a>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     fn in_matches_virtual<'a>(&'a self, other: impl ArrayLikeIter<'a, VirtualVal>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn out_matches_virtual<'a>(&'a self, other: impl ArrayLikeIter<'a, VirtualVal>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 283 |     fn in_len(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn out_len(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 291 |     pub fn new(sin: Vec<StackParam>, sout: Vec<StackParam>) -> StackUsage {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 298 |     pub fn from_in_out_sizes(sin: usize, sout: usize) -> StackUsage {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BuiltinInfoEntry` is never constructed
[INFO] [stdout]    --> src/analysis/mod.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | struct BuiltinInfoEntry {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:336:8
[INFO] [stdout]     |
[INFO] [stdout] 335 | impl BuiltinInfoEntry {
[INFO] [stdout]     | --------------------- associated function in this implementation
[INFO] [stdout] 336 |     fn new(s: Sym, usage: StackUsage) -> BuiltinInfoEntry {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `LocalInfo` is never constructed
[INFO] [stdout]    --> src/analysis/mod.rs:345:8
[INFO] [stdout]     |
[INFO] [stdout] 345 | struct LocalInfo {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `VirtualVal` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:350:6
[INFO] [stdout]     |
[INFO] [stdout] 350 | enum VirtualVal {
[INFO] [stdout]     |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `merge` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:356:8
[INFO] [stdout]     |
[INFO] [stdout] 355 | impl VirtualVal {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 356 |     fn merge(&self, other: &Self) -> Result<Self> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `VirtualStack` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:372:6
[INFO] [stdout]     |
[INFO] [stdout] 372 | type VirtualStack = VecDeque<VirtualVal>;
[INFO] [stdout]     |      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ctx` is never constructed
[INFO] [stdout]    --> src/analysis/mod.rs:374:8
[INFO] [stdout]     |
[INFO] [stdout] 374 | struct Ctx<'a> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `builtin_info` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:446:4
[INFO] [stdout]     |
[INFO] [stdout] 446 | fn builtin_info(t: &SymbolTable) -> BuiltinInfo {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Target` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:494:6
[INFO] [stdout]     |
[INFO] [stdout] 494 | enum Target {
[INFO] [stdout]     |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/analysis/mod.rs:501:8
[INFO] [stdout]     |
[INFO] [stdout] 500 | impl<'a> Ctx<'a> {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout] 501 |     fn new(t: &'a SymbolTable, bi: &'a BuiltinInfo) -> Ctx<'a> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 511 |     fn lexical_lookup(&self, s: Sym) -> Option<&LocalInfo> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 521 |     fn stack_depth(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 525 |     fn show_target(&self, t: &Target) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 533 |     fn uses(&mut self, s: Target, stack_usage: &StackUsage) -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 630 |     fn analyze_sym(&mut self, s: Sym) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 645 |     fn analyze<'p>(
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `analyze` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:683:8
[INFO] [stdout]     |
[INFO] [stdout] 683 | pub fn analyze(t: &SymbolTable, program: &Vals) -> AnalysisResult {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Vals` is never constructed
[INFO] [stdout]   --> src/rt/eval.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Continuation {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 15 |     Vals(Vals),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Continuation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ContinuationIter` is never used
[INFO] [stdout]   --> src/rt/eval.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum ContinuationIter<'a> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_empty` and `iter` are never used
[INFO] [stdout]    --> src/rt/eval.rs:67:8
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl Continuation {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout]  67 |     fn is_empty(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn iter(&self) -> ContinuationIter<'_> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `eval` is never used
[INFO] [stdout]    --> src/rt/eval.rs:248:8
[INFO] [stdout]     |
[INFO] [stdout] 248 | pub fn eval(program: Vals, t: SymbolTable) -> Result<Vals, Eval> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_stack` is never used
[INFO] [stdout]    --> src/rt/eval.rs:305:12
[INFO] [stdout]     |
[INFO] [stdout] 292 | impl Eval {
[INFO] [stdout]     | --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 305 |     pub fn get_stack(&self) -> Vals {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `try_get` and `get` are never used
[INFO] [stdout]   --> src/rt/val.rs:47:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SymbolTable {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn try_get(&self, x: &str) -> Option<Sym> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn get(&self, x: &str) -> Sym {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VAL_EMPTY` is never used
[INFO] [stdout]    --> src/rt/val.rs:211:11
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub const VAL_EMPTY: Val = Val::List(VecDeque::new());
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `list_or_ref_mut` and `kw` are never used
[INFO] [stdout]    --> src/rt/val.rs:331:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl Val {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub fn list_or_ref_mut(&mut self) -> Result<&mut Vals, &mut Ref> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn kw(&self) -> Sym {
[INFO] [stdout]     |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `VirtualVal` is more private than the item `AnalysisError::StackMismatch::1`
[INFO] [stdout]    --> src/analysis/mod.rs:14:27
[INFO] [stdout]     |
[INFO] [stdout]  14 |     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout]     |                           ^^^^^^^^^^^^ field `AnalysisError::StackMismatch::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `VirtualVal` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | enum VirtualVal {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::StackMismatch::2`
[INFO] [stdout]    --> src/analysis/mod.rs:14:41
[INFO] [stdout]     |
[INFO] [stdout]  14 |     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout]     |                                         ^^^^^^^^^^ field `AnalysisError::StackMismatch::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::TypeMismatch::1`
[INFO] [stdout]    --> src/analysis/mod.rs:15:26
[INFO] [stdout]     |
[INFO] [stdout]  15 |     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout]     |                          ^^^^^^^^^^ field `AnalysisError::TypeMismatch::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::TypeMismatch::2`
[INFO] [stdout]    --> src/analysis/mod.rs:15:38
[INFO] [stdout]     |
[INFO] [stdout]  15 |     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout]     |                                      ^^^^^^^^^^ field `AnalysisError::TypeMismatch::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `VirtualVal` is more private than the item `AnalysisError::AmbiguousType::0`
[INFO] [stdout]    --> src/analysis/mod.rs:16:19
[INFO] [stdout]     |
[INFO] [stdout]  16 |     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout]     |                   ^^^^^^^^^^^^ field `AnalysisError::AmbiguousType::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `VirtualVal` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:350:1
[INFO] [stdout]     |
[INFO] [stdout] 350 | enum VirtualVal {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `AnalysisError::AmbiguousType::1`
[INFO] [stdout]    --> src/analysis/mod.rs:16:33
[INFO] [stdout]     |
[INFO] [stdout]  16 |     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout]     |                                 ^^^^^^^^^^ field `AnalysisError::AmbiguousType::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackParam` is more private than the item `AnalysisError::TypeMergeError::1`
[INFO] [stdout]    --> src/analysis/mod.rs:17:36
[INFO] [stdout]     |
[INFO] [stdout]  17 |     TypeMergeError(Option<String>, StackParam, StackParam),
[INFO] [stdout]     |                                    ^^^^^^^^^^ field `AnalysisError::TypeMergeError::1` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackParam` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | enum StackParam {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackParam` is more private than the item `AnalysisError::TypeMergeError::2`
[INFO] [stdout]    --> src/analysis/mod.rs:17:48
[INFO] [stdout]     |
[INFO] [stdout]  17 |     TypeMergeError(Option<String>, StackParam, StackParam),
[INFO] [stdout]     |                                                ^^^^^^^^^^ field `AnalysisError::TypeMergeError::2` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackParam` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:137:1
[INFO] [stdout]     |
[INFO] [stdout] 137 | enum StackParam {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `StackUsage` is more private than the item `analysis::analyze`
[INFO] [stdout]    --> src/analysis/mod.rs:683:1
[INFO] [stdout]     |
[INFO] [stdout] 683 | pub fn analyze(t: &SymbolTable, program: &Vals) -> AnalysisResult {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function `analysis::analyze` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `StackUsage` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/analysis/mod.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | struct StackUsage {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/analysis/mod.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 |     LexicallyUndefinedSymbol(String),
[INFO] [stdout]    |     ------------------------ ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisError` has a derived impl for the trait `Debug`, but this is 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] 13 -     LexicallyUndefinedSymbol(String),
[INFO] [stdout] 13 +     LexicallyUndefinedSymbol(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/analysis/mod.rs:14:19
[INFO] [stdout]    |
[INFO] [stdout] 14 |     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout]    |     ------------- ^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 14 -     StackMismatch(String, VirtualStack, StackUsage),
[INFO] [stdout] 14 +     StackMismatch((), VirtualStack, StackUsage),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0`, `1`, and `2` are never read
[INFO] [stdout]   --> src/analysis/mod.rs:15:18
[INFO] [stdout]    |
[INFO] [stdout] 15 |     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout]    |     ------------ ^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 15 -     TypeMismatch(String, StackUsage, StackUsage),
[INFO] [stdout] 15 +     TypeMismatch((), (), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/analysis/mod.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 |     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout]    |     ------------- ^^^^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AnalysisError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 16 -     AmbiguousType(VirtualStack, StackUsage),
[INFO] [stdout] 16 +     AmbiguousType((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_any` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:146:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | impl StackParam {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] 146 |     fn is_any(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `out_matches_virtual` and `out_len` are never used
[INFO] [stdout]    --> src/analysis/mod.rs:279:8
[INFO] [stdout]     |
[INFO] [stdout] 245 | impl StackUsage {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 279 |     fn out_matches_virtual<'a>(&'a self, other: impl ArrayLikeIter<'a, VirtualVal>) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 287 |     fn out_len(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/analysis/mod.rs:331:5
[INFO] [stdout]     |
[INFO] [stdout] 330 | struct BuiltinInfoEntry {
[INFO] [stdout]     |        ---------------- field in this struct
[INFO] [stdout] 331 |     name: Sym,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stack_usage` is never read
[INFO] [stdout]    --> src/analysis/mod.rs:346:5
[INFO] [stdout]     |
[INFO] [stdout] 345 | struct LocalInfo {
[INFO] [stdout]     |        --------- field in this struct
[INFO] [stdout] 346 |     stack_usage: StackUsage,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LocalInfo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `stack_depth` is never used
[INFO] [stdout]    --> src/analysis/mod.rs:521:8
[INFO] [stdout]     |
[INFO] [stdout] 500 | impl<'a> Ctx<'a> {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 521 |     fn stack_depth(&self) -> usize {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Vals` is never constructed
[INFO] [stdout]   --> src/rt/eval.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub enum Continuation {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 15 |     Vals(Vals),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Continuation` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/rt/val.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SymbolTable {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub fn get(&self, x: &str) -> Sym {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `VAL_EMPTY` is never used
[INFO] [stdout]    --> src/rt/val.rs:211:11
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub const VAL_EMPTY: Val = Val::List(VecDeque::new());
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `list_or_ref_mut` and `kw` are never used
[INFO] [stdout]    --> src/rt/val.rs:331:12
[INFO] [stdout]     |
[INFO] [stdout] 214 | impl Val {
[INFO] [stdout]     | -------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 331 |     pub fn list_or_ref_mut(&mut self) -> Result<&mut Vals, &mut Ref> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn kw(&self) -> Sym {
[INFO] [stdout]     |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] running `Command { std: "docker" "inspect" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605", kill_on_drop: false }`
[INFO] [stdout] 9cde3ba4f2947b294b3ada728c2a9fa738cf1f047037287283d76c3a45d0c605
