[INFO] cloning repository https://github.com/invpt/sil
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/invpt/sil" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finvpt%2Fsil", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finvpt%2Fsil'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d7c0b736cba9bb0dc3d1913159bd9d0454adbc7c
[INFO] checking invpt/sil against try#a3dffdb3a32d0dedc198f9de7d43173f3eb6727b for pr-136303
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Finvpt%2Fsil" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/invpt/sil on toolchain a3dffdb3a32d0dedc198f9de7d43173f3eb6727b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a3dffdb3a32d0dedc198f9de7d43173f3eb6727b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/invpt/sil
[INFO] finished tweaking git repo https://github.com/invpt/sil
[INFO] tweaked toml for git repo https://github.com/invpt/sil written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/invpt/sil 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" "+a3dffdb3a32d0dedc198f9de7d43173f3eb6727b" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c80049f3b88b82089a44e0f06d0d6029d44b96b7257e55a1cd63dbc9f4c33334" "/opt/rustwide/cargo-home/bin/cargo" "+a3dffdb3a32d0dedc198f9de7d43173f3eb6727b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 3929d148bd35fe4f542234a40fd7bfbbaaee3d04068714d74b3ececc6bc3c7b0
[INFO] running `Command { std: "docker" "start" "-a" "3929d148bd35fe4f542234a40fd7bfbbaaee3d04068714d74b3ececc6bc3c7b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3929d148bd35fe4f542234a40fd7bfbbaaee3d04068714d74b3ececc6bc3c7b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3929d148bd35fe4f542234a40fd7bfbbaaee3d04068714d74b3ececc6bc3c7b0", kill_on_drop: false }`
[INFO] [stdout] 3929d148bd35fe4f542234a40fd7bfbbaaee3d04068714d74b3ececc6bc3c7b0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c80049f3b88b82089a44e0f06d0d6029d44b96b7257e55a1cd63dbc9f4c33334" "/opt/rustwide/cargo-home/bin/cargo" "+a3dffdb3a32d0dedc198f9de7d43173f3eb6727b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2c801c17d011eb2cf8b8aec3f7f99a2d278df35f246eba42f2702244411d30be
[INFO] running `Command { std: "docker" "start" "-a" "2c801c17d011eb2cf8b8aec3f7f99a2d278df35f246eba42f2702244411d30be", kill_on_drop: false }`
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking sil v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `UnOp`
[INFO] [stdout]  --> src/stages/ur/mod.rs:7:60
[INFO] [stdout]   |
[INFO] [stdout] 7 |     primitive::{BinOp, PrimitiveOperation, PrimitiveValue, UnOp},
[INFO] [stdout]   |                                                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `UnOp`
[INFO] [stdout]  --> src/stages/ur/mod.rs:7:60
[INFO] [stdout]   |
[INFO] [stdout] 7 |     primitive::{BinOp, PrimitiveOperation, PrimitiveValue, UnOp},
[INFO] [stdout]   |                                                            ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `preds::tpred` and `scoper::Scoper`
[INFO] [stdout]   --> src/stages/ur/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::{preds::tpred, scoper::Scoper};
[INFO] [stdout]    |            ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `preds::tpred` and `scoper::Scoper`
[INFO] [stdout]   --> src/stages/ur/mod.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | use self::{preds::tpred, scoper::Scoper};
[INFO] [stdout]    |            ^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `either`
[INFO] [stdout]  --> src/stages/ur/parser.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use preds::{either, epred};
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `either`
[INFO] [stdout]  --> src/stages/ur/parser.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | use preds::{either, epred};
[INFO] [stdout]   |             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `tpred`
[INFO] [stdout]   --> src/stages/ur/preds.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 | macro_rules! tpred {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `tpred`
[INFO] [stdout]   --> src/stages/ur/preds.rs:39:14
[INFO] [stdout]    |
[INFO] [stdout] 39 | macro_rules! tpred {
[INFO] [stdout]    |              ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_macros)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_pred`
[INFO] [stdout]    --> src/stages/ur/parser.rs:185:25
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn scope(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrExprKind<'s>> {
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_pred`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `end_pred`
[INFO] [stdout]    --> src/stages/ur/parser.rs:185:25
[INFO] [stdout]     |
[INFO] [stdout] 185 |     fn scope(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrExprKind<'s>> {
[INFO] [stdout]     |                         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_pred`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/stages/ur/mod.rs:317:15
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn of(tokens: Tokens<'s, impl CharReader>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]    --> src/stages/ur/mod.rs:317:52
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn of(tokens: Tokens<'s, impl CharReader>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_errors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `finish` are never used
[INFO] [stdout]   --> src/char_reader.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<'r, R: CharReader> CharReaderSaver<'r, R> {
[INFO] [stdout]    | ---------------------------------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(chars: &'r mut R) -> CharReaderSaver<'r, R> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn finish(self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `error` is never used
[INFO] [stdout]   --> src/error_stream.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 6  | impl ErrorStream {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn error<T: std::fmt::Debug>(&self, error: T, span: Option<Span>) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `S32`, `S64`, `F32`, `F64`, and `Str` are never constructed
[INFO] [stdout]  --> src/primitive.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum PrimitiveValue<'s> {
[INFO] [stdout]   |          -------------- variants in this enum
[INFO] [stdout] 3 |     S32(i32),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     S64(i64),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 5 |     F32(f32),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 6 |     F64(f64),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 7 |     Str(&'s str),
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PrimitiveValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Binary` and `Unary` are never constructed
[INFO] [stdout]   --> src/primitive.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum PrimitiveOperation<T> {
[INFO] [stdout]    |          ------------------ variants in this enum
[INFO] [stdout] 12 |     Binary(BinOp, T, T),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 13 |     Unary(UnOp, T),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrimitiveOperation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/primitive.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum BinOp {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 18 |     Apply,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 19 |
[INFO] [stdout] 20 |     LogOr,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 21 |     LogAnd,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 22 |
[INFO] [stdout] 23 |     Eq,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 24 |     Neq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     Lt,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 26 |     Leq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     Gt,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 28 |     Geq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     Recv,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |     BitOr,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 32 |     BitXor,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     BitAnd,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 34 |
[INFO] [stdout] 35 |     Shl,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     Shr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 37 |
[INFO] [stdout] 38 |     Add,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 39 |     Sub,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 40 |
[INFO] [stdout] 41 |     Mul,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 42 |     Div,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 43 |     Rem,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Not` and `Neg` are never constructed
[INFO] [stdout]   --> src/primitive.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub enum UnOp {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 48 |     Not,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 49 |     Neg,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Builtin` is never used
[INFO] [stdout]  --> src/builtin.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Builtin {
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Builtin` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `COUNT`, `VALUES`, `name`, and `index` are never used
[INFO] [stdout]   --> src/builtin.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Builtin {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 14 |     pub const COUNT: usize = 5;
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 15 |     pub const VALUES: [Builtin; Builtin::COUNT] = [Builtin::S32, Builtin::F32, Builtin::Str, Builtin::True, Builtin::False];
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 16 |
[INFO] [stdout] 17 |     pub fn name(self) -> Intern<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn index(self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `FAKE` is never used
[INFO] [stdout]  --> src/span.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl Span {
[INFO] [stdout]   | --------- associated constant in this implementation
[INFO] [stdout] 8 |     pub const FAKE: Span = Span { start: usize::MAX, end: 0 };
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/strings.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Intern<'static> {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(text: &'static str) -> Intern<'static> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `text` is never used
[INFO] [stdout]   --> src/strings.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'s> Intern<'s> {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 23 |     pub fn text(&self) -> &'s str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `intern` is never used
[INFO] [stdout]   --> src/strings.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl Strings {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn intern<'a>(&'a self, s: Box<str>) -> Intern<'a> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Val`, `Var`, and `Set` are never constructed
[INFO] [stdout]  --> src/unknown.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum UnknownQualifier {
[INFO] [stdout]   |          ---------------- variants in this enum
[INFO] [stdout] 3 |     Val,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     Var,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 5 |     Set,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `UnknownQualifier` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unexpected` and `UnexpectedEof` are never constructed
[INFO] [stdout]   --> src/stages/tok/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum TokenizationErrorKind {
[INFO] [stdout]    |          --------------------- variants in this enum
[INFO] [stdout] 17 |     Unexpected,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 18 |     UnexpectedEof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenizationErrorKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Result` is never used
[INFO] [stdout]   --> src/stages/tok/mod.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Result<T> = std::result::Result<T, TokenizationError>;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `chars`, `strings`, and `peek` are never read
[INFO] [stdout]   --> src/stages/tok/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Tokens<'s, R> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 35 |     chars: R,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 36 |     pub(crate) strings: &'s Strings,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 37 |     peek: Option<Token<'s>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `kind` and `span` are never read
[INFO] [stdout]   --> src/stages/tok/mod.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct Token<'s> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 42 |     pub kind: TokenKind<'s>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 43 |     pub span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/stages/tok/mod.rs:49:5
[INFO] [stdout]     |
[INFO] [stdout] 47  | pub enum TokenKind<'s> {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] 48  |     /* Keywords */
[INFO] [stdout] 49  |     Def,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 50  |     Ext,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 51  |     Use,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 52  |     Val,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 53  |     Var,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 54  |     Set,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 55  |     Type,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 56  |     If,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 57  |     Else,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 58  |     Loop,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 59  |     In,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 60  |     On,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 63  |     Comma,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 64  |     Colon,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 65  |     ColonColon,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 66  |     Semicolon,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 67  |     Question,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 68  |     Bang,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 69  |     Pipe,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 70  |     Amp,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 71  |     Dollar,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 72  |     ThinArrow,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 73  |     FatArrow,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 74  |     ColonEqual,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 75  |     Eq,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 76  |     Neq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 77  |     Gt,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 78  |     Lt,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 79  |     Geq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 80  |     Leq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 81  |     Shl,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 82  |     Shr,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 83  |     Plus,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 84  |     Minus,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 85  |     Star,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 86  |     Slash,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 87  |     Percent,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 88  |     Caret,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 89  |     Tilde,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 90  |     AmpAmp,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 91  |     PipePipe,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 92  |     Backslash,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 93  |     OpenParen,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 94  |     CloseParen,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 95  |     OpenBracket,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 96  |     CloseBracket,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 97  |     OpenBrace,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 98  |     DotOpenBrace,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 99  |     CloseBrace,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 100 |     LeftArrow,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 101 |
[INFO] [stdout] 102 |     Float(f64),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 103 |     Integer(u64),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 104 |     Name(Intern<'s>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 105 |     Label(Intern<'s>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 106 |     String(Intern<'s>),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TokenKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/stages/tok/mod.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<'i, 's, R: CharReader> Tokens<'s, R> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn next(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn peek(&mut self) -> Result<Option<&Token<'s>>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     fn skip_line(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn block_comment(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fn string(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |     fn label(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     fn name(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn ident(&mut self) -> Result<(Intern<'s>, Span)> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 432 |     fn number(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn advance_single(&mut self, kind: TokenKind<'s>) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 488 |     fn advance_double(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ty`, `kind`, and `span` are never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct UrExpr<'s> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 26 |     pub ty: UrType<'s>,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 27 |     pub kind: UrExprKind<'s>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 28 |     pub span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrExpr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/stages/ur/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum UrExprKind<'s> {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 33 |     Abstraction {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     Func(UrFunc<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 40 |     Dict(UrDict<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 41 |     Selection {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Iteration {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     Scope {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     Tuple {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     Variant {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     Lookup {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     Unknown {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     PrimitiveOperation {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     PrimitiveValue {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     Label {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `defs` is never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UrDict<'s> {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 84 |     pub defs: Box<[UrDef<'s>]>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrDict` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `input_pat`, `output_ty`, and `body_expr` are never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct UrFunc<'s> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 89 |     pub id: UrFuncId,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 90 |     pub input_pat: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 91 |     pub output_ty: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 92 |     pub body_expr: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrFunc` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Def` and `Expr` are never constructed
[INFO] [stdout]   --> src/stages/ur/mod.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub enum UrStmt<'s> {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 97 |     Def(UrDef<'s>),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 98 |     Expr(UrExpr<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrStmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `span` is never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'s> UrStmt<'s> {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] 102 |     fn span(&self) -> Span {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/stages/ur/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub enum UrType<'s> {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] 112 |     Abstraction(
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     Dictionary(Box<[UrDefTypeEntry<'s>]>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 118 |     Derivative(UrFuncId, Box<UrType<'s>>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 119 |     Tuple(Box<[UrTupleItem<'s, UrType<'s>>]>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 120 |     Variant(Box<[UrVariantItem<'s, UrType<'s>>]>),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Label(Intern<'s>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 122 |     S32,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 123 |     F32,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 124 |     Str,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 125 |     Bool,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     AnyOf(&'s [UrType<'s>]),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 129 |     Any,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `NUMBER`, `INTEGER`, `FLOAT`, `compatible_with`, and `is_subtype` are never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:133:15
[INFO] [stdout]     |
[INFO] [stdout] 132 | impl<'s> UrType<'s> {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 133 |     pub const NUMBER: UrType<'static> = UrType::AnyOf(&[UrType::S32, UrType::F32]);
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 134 |     pub const INTEGER: UrType<'static> = UrType::AnyOf(&[UrType::S32]);
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 135 |     pub const FLOAT: UrType<'static> = UrType::AnyOf(&[UrType::F32]);
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 136 |
[INFO] [stdout] 137 |     pub fn compatible_with(&self, other: &UrType<'s>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn is_subtype(&self, other: &UrType<'s>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:266:9
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct Symbol<'s> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 266 |     pub name: Intern<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Symbol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `builtin`, `unknown`, and `is_unknown` are never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:285:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | impl<'s> Symbol<'s> {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 285 |     fn builtin(builtin: Builtin) -> Symbol<'static> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 292 |     fn unknown(name: Intern<'s>) -> Symbol<'s> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     fn is_unknown(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `func`, and `span` are never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 305 | pub struct UrDef<'s> {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 306 |     pub name: Option<Symbol<'s>>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 307 |     pub func: UrFunc<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 308 |     pub span: Span,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct Ur<'s> {
[INFO] [stdout]     |            -- field in this struct
[INFO] [stdout] 313 |     pub root: UrDict<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Ur` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:329:23
[INFO] [stdout]     |
[INFO] [stdout] 329 |     TokenizationError(TokenizationError),
[INFO] [stdout]     |     ----------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrError` 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] 329 |     TokenizationError(()),
[INFO] [stdout]     |                       ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unexpected`, `InvalidTrailingExpr`, `ImplNotAlone`, and `UndefinedSymbol` are never constructed
[INFO] [stdout]    --> src/stages/ur/mod.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 327 | pub enum UrError<'s> {
[INFO] [stdout]     |          ------- variants in this enum
[INFO] [stdout] 328 |     Unexpected(Option<Token<'s>>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 329 |     TokenizationError(TokenizationError),
[INFO] [stdout] 330 |     InvalidTrailingExpr,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 331 |     ImplNotAlone,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 332 |     UndefinedSymbol,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]  --> src/stages/ur/parser.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn parse<'s, R: CharReader>(tokens: Tokens<'s, R>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]   --> src/stages/ur/parser.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Parser<'s, R> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/stages/ur/parser.rs:34:8
[INFO] [stdout]     |
[INFO] [stdout] 24  | impl<'s, R: CharReader> Parser<'s, R> {
[INFO] [stdout]     | ------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn parse(mut self) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40  |     fn dict_inner(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrDict<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     fn def(&mut self) -> Result<'s, UrDef<'s>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn func_always(&mut self) -> Result<'s, UrFunc<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     fn func_level(&mut self) -> Result<'s, UrExpr<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn minmax_span(spans: impl IntoIterator<Item = Span>) -> Span {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn func_inner(&mut self) -> Result<'s, [Option<UrExpr<'s>>; 3]> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 |     fn scope(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrExprKind<'s>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     fn next_lower(&mut self) -> Result<'s, UrExpr<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 862 |     fn bin_op(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 889 |     fn peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, Option<T>> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 901 |     fn require_peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 914 |     fn has_peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, bool> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 929 |     fn require<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, T> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 940 |     fn maybe_require<T>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 959 |     fn eat<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, Option<T>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 972 |     fn func_id(&mut self) -> UrFuncId {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TupleParseResult` is never used
[INFO] [stdout]    --> src/stages/ur/parser.rs:979:6
[INFO] [stdout]     |
[INFO] [stdout] 979 | enum TupleParseResult<'s> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `either` is never used
[INFO] [stdout]  --> src/stages/ur/preds.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn either<'s, T>(
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scoper` is never constructed
[INFO] [stdout]  --> src/stages/ur/scoper.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Scoper<'s> {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Scoper` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `lookup`, `new_symbol`, `push`, and `pop` are never used
[INFO] [stdout]   --> src/stages/ur/scoper.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<'s> Scoper<'s> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Scoper<'s> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn lookup(&mut self, name: Intern<'s>) -> Option<Symbol<'s>> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn new_symbol(&mut self, name: Intern<'s>) -> Symbol<'s> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn push(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn pop(&mut self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vr` is never constructed
[INFO] [stdout]  --> src/stages/vr/mod.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Vr<'s> {
[INFO] [stdout]   |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VrProc` is never constructed
[INFO] [stdout]  --> src/stages/vr/mod.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct VrProc<'s> {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `tokens`
[INFO] [stdout]    --> src/stages/ur/mod.rs:317:15
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn of(tokens: Tokens<'s, impl CharReader>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |               ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `errors`
[INFO] [stdout]    --> src/stages/ur/mod.rs:317:52
[INFO] [stdout]     |
[INFO] [stdout] 317 |     pub fn of(tokens: Tokens<'s, impl CharReader>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |                                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_errors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `finish` are never used
[INFO] [stdout]   --> src/char_reader.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<'r, R: CharReader> CharReaderSaver<'r, R> {
[INFO] [stdout]    | ---------------------------------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new(chars: &'r mut R) -> CharReaderSaver<'r, R> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn finish(self) -> String {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `error` is never used
[INFO] [stdout]   --> src/error_stream.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 6  | impl ErrorStream {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub fn error<T: std::fmt::Debug>(&self, error: T, span: Option<Span>) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `S32`, `S64`, `F32`, `F64`, and `Str` are never constructed
[INFO] [stdout]  --> src/primitive.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum PrimitiveValue<'s> {
[INFO] [stdout]   |          -------------- variants in this enum
[INFO] [stdout] 3 |     S32(i32),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     S64(i64),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 5 |     F32(f32),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 6 |     F64(f64),
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 7 |     Str(&'s str),
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `PrimitiveValue` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Binary` and `Unary` are never constructed
[INFO] [stdout]   --> src/primitive.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum PrimitiveOperation<T> {
[INFO] [stdout]    |          ------------------ variants in this enum
[INFO] [stdout] 12 |     Binary(BinOp, T, T),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 13 |     Unary(UnOp, T),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PrimitiveOperation` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/primitive.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub enum BinOp {
[INFO] [stdout]    |          ----- variants in this enum
[INFO] [stdout] 18 |     Apply,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 19 |
[INFO] [stdout] 20 |     LogOr,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 21 |     LogAnd,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 22 |
[INFO] [stdout] 23 |     Eq,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 24 |     Neq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 25 |     Lt,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 26 |     Leq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 27 |     Gt,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 28 |     Geq,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 29 |     Recv,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 30 |
[INFO] [stdout] 31 |     BitOr,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 32 |     BitXor,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 33 |     BitAnd,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 34 |
[INFO] [stdout] 35 |     Shl,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     Shr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 37 |
[INFO] [stdout] 38 |     Add,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 39 |     Sub,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 40 |
[INFO] [stdout] 41 |     Mul,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 42 |     Div,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 43 |     Rem,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Not` and `Neg` are never constructed
[INFO] [stdout]   --> src/primitive.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub enum UnOp {
[INFO] [stdout]    |          ---- variants in this enum
[INFO] [stdout] 48 |     Not,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 49 |     Neg,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UnOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Builtin` is never used
[INFO] [stdout]  --> src/builtin.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Builtin {
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Builtin` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `COUNT`, `VALUES`, `name`, and `index` are never used
[INFO] [stdout]   --> src/builtin.rs:14:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl Builtin {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 14 |     pub const COUNT: usize = 5;
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 15 |     pub const VALUES: [Builtin; Builtin::COUNT] = [Builtin::S32, Builtin::F32, Builtin::Str, Builtin::True, Builtin::False];
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout] 16 |
[INFO] [stdout] 17 |     pub fn name(self) -> Intern<'static> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn index(self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `FAKE` is never used
[INFO] [stdout]  --> src/span.rs:8:15
[INFO] [stdout]   |
[INFO] [stdout] 7 | impl Span {
[INFO] [stdout]   | --------- associated constant in this implementation
[INFO] [stdout] 8 |     pub const FAKE: Span = Span { start: usize::MAX, end: 0 };
[INFO] [stdout]   |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/strings.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Intern<'static> {
[INFO] [stdout]    | -------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(text: &'static str) -> Intern<'static> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `text` is never used
[INFO] [stdout]   --> src/strings.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'s> Intern<'s> {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] 23 |     pub fn text(&self) -> &'s str {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `intern` is never used
[INFO] [stdout]   --> src/strings.rs:63:12
[INFO] [stdout]    |
[INFO] [stdout] 56 | impl Strings {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub fn intern<'a>(&'a self, s: Box<str>) -> Intern<'a> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Val`, `Var`, and `Set` are never constructed
[INFO] [stdout]  --> src/unknown.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum UnknownQualifier {
[INFO] [stdout]   |          ---------------- variants in this enum
[INFO] [stdout] 3 |     Val,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 4 |     Var,
[INFO] [stdout]   |     ^^^
[INFO] [stdout] 5 |     Set,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `UnknownQualifier` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unexpected` and `UnexpectedEof` are never constructed
[INFO] [stdout]   --> src/stages/tok/mod.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum TokenizationErrorKind {
[INFO] [stdout]    |          --------------------- variants in this enum
[INFO] [stdout] 17 |     Unexpected,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 18 |     UnexpectedEof,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TokenizationErrorKind` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Result` is never used
[INFO] [stdout]   --> src/stages/tok/mod.rs:32:6
[INFO] [stdout]    |
[INFO] [stdout] 32 | type Result<T> = std::result::Result<T, TokenizationError>;
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `chars`, `strings`, and `peek` are never read
[INFO] [stdout]   --> src/stages/tok/mod.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Tokens<'s, R> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 35 |     chars: R,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 36 |     pub(crate) strings: &'s Strings,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout] 37 |     peek: Option<Token<'s>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `kind` and `span` are never read
[INFO] [stdout]   --> src/stages/tok/mod.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub struct Token<'s> {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 42 |     pub kind: TokenKind<'s>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 43 |     pub span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Token` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/stages/tok/mod.rs:49:5
[INFO] [stdout]     |
[INFO] [stdout] 47  | pub enum TokenKind<'s> {
[INFO] [stdout]     |          --------- variants in this enum
[INFO] [stdout] 48  |     /* Keywords */
[INFO] [stdout] 49  |     Def,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 50  |     Ext,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 51  |     Use,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 52  |     Val,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 53  |     Var,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 54  |     Set,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 55  |     Type,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 56  |     If,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 57  |     Else,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 58  |     Loop,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 59  |     In,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 60  |     On,
[INFO] [stdout]     |     ^^
[INFO] [stdout] ...
[INFO] [stdout] 63  |     Comma,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 64  |     Colon,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 65  |     ColonColon,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 66  |     Semicolon,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 67  |     Question,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 68  |     Bang,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 69  |     Pipe,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 70  |     Amp,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 71  |     Dollar,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 72  |     ThinArrow,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 73  |     FatArrow,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 74  |     ColonEqual,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 75  |     Eq,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 76  |     Neq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 77  |     Gt,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 78  |     Lt,
[INFO] [stdout]     |     ^^
[INFO] [stdout] 79  |     Geq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 80  |     Leq,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 81  |     Shl,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 82  |     Shr,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 83  |     Plus,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 84  |     Minus,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 85  |     Star,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 86  |     Slash,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 87  |     Percent,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 88  |     Caret,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 89  |     Tilde,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 90  |     AmpAmp,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 91  |     PipePipe,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 92  |     Backslash,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 93  |     OpenParen,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 94  |     CloseParen,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 95  |     OpenBracket,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 96  |     CloseBracket,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 97  |     OpenBrace,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 98  |     DotOpenBrace,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 99  |     CloseBrace,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 100 |     LeftArrow,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 101 |
[INFO] [stdout] 102 |     Float(f64),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 103 |     Integer(u64),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 104 |     Name(Intern<'s>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 105 |     Label(Intern<'s>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 106 |     String(Intern<'s>),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `TokenKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/stages/tok/mod.rs:119:12
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl<'i, 's, R: CharReader> Tokens<'s, R> {
[INFO] [stdout]     | ----------------------------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn next(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 223 |     pub fn peek(&mut self) -> Result<Option<&Token<'s>>> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 232 |     fn skip_line(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn block_comment(&mut self) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     fn string(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 332 |     fn label(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 366 |     fn name(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn ident(&mut self) -> Result<(Intern<'s>, Span)> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 432 |     fn number(&mut self) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 477 |     fn advance_single(&mut self, kind: TokenKind<'s>) -> Result<Option<Token<'s>>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 488 |     fn advance_double(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ty`, `kind`, and `span` are never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct UrExpr<'s> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 26 |     pub ty: UrType<'s>,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 27 |     pub kind: UrExprKind<'s>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 28 |     pub span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrExpr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/stages/ur/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub enum UrExprKind<'s> {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 33 |     Abstraction {
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     Func(UrFunc<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 40 |     Dict(UrDict<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 41 |     Selection {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     Iteration {
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     Scope {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 54 |     Tuple {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     Variant {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     Lookup {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     Unknown {
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     PrimitiveOperation {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     PrimitiveValue {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     Label {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrExprKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `defs` is never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:84:9
[INFO] [stdout]    |
[INFO] [stdout] 83 | pub struct UrDict<'s> {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 84 |     pub defs: Box<[UrDef<'s>]>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrDict` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `id`, `input_pat`, `output_ty`, and `body_expr` are never read
[INFO] [stdout]   --> src/stages/ur/mod.rs:89:9
[INFO] [stdout]    |
[INFO] [stdout] 88 | pub struct UrFunc<'s> {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 89 |     pub id: UrFuncId,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 90 |     pub input_pat: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 91 |     pub output_ty: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 92 |     pub body_expr: Option<Box<UrExpr<'s>>>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrFunc` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Def` and `Expr` are never constructed
[INFO] [stdout]   --> src/stages/ur/mod.rs:97:5
[INFO] [stdout]    |
[INFO] [stdout] 96 | pub enum UrStmt<'s> {
[INFO] [stdout]    |          ------ variants in this enum
[INFO] [stdout] 97 |     Def(UrDef<'s>),
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 98 |     Expr(UrExpr<'s>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UrStmt` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `span` is never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:102:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl<'s> UrStmt<'s> {
[INFO] [stdout]     | ------------------- method in this implementation
[INFO] [stdout] 102 |     fn span(&self) -> Span {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]    --> src/stages/ur/mod.rs:112:5
[INFO] [stdout]     |
[INFO] [stdout] 111 | pub enum UrType<'s> {
[INFO] [stdout]     |          ------ variants in this enum
[INFO] [stdout] 112 |     Abstraction(
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     Dictionary(Box<[UrDefTypeEntry<'s>]>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 118 |     Derivative(UrFuncId, Box<UrType<'s>>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 119 |     Tuple(Box<[UrTupleItem<'s, UrType<'s>>]>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 120 |     Variant(Box<[UrVariantItem<'s, UrType<'s>>]>),
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 121 |     Label(Intern<'s>),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 122 |     S32,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 123 |     F32,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 124 |     Str,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 125 |     Bool,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     AnyOf(&'s [UrType<'s>]),
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 129 |     Any,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `NUMBER`, `INTEGER`, `FLOAT`, `compatible_with`, and `is_subtype` are never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:133:15
[INFO] [stdout]     |
[INFO] [stdout] 132 | impl<'s> UrType<'s> {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 133 |     pub const NUMBER: UrType<'static> = UrType::AnyOf(&[UrType::S32, UrType::F32]);
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 134 |     pub const INTEGER: UrType<'static> = UrType::AnyOf(&[UrType::S32]);
[INFO] [stdout]     |               ^^^^^^^
[INFO] [stdout] 135 |     pub const FLOAT: UrType<'static> = UrType::AnyOf(&[UrType::F32]);
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] 136 |
[INFO] [stdout] 137 |     pub fn compatible_with(&self, other: &UrType<'s>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub fn is_subtype(&self, other: &UrType<'s>) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `name` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:266:9
[INFO] [stdout]     |
[INFO] [stdout] 265 | pub struct Symbol<'s> {
[INFO] [stdout]     |            ------ field in this struct
[INFO] [stdout] 266 |     pub name: Intern<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Symbol` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `builtin`, `unknown`, and `is_unknown` are never used
[INFO] [stdout]    --> src/stages/ur/mod.rs:285:8
[INFO] [stdout]     |
[INFO] [stdout] 284 | impl<'s> Symbol<'s> {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 285 |     fn builtin(builtin: Builtin) -> Symbol<'static> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 292 |     fn unknown(name: Intern<'s>) -> Symbol<'s> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 299 |     fn is_unknown(&self) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `func`, and `span` are never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:306:9
[INFO] [stdout]     |
[INFO] [stdout] 305 | pub struct UrDef<'s> {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] 306 |     pub name: Option<Symbol<'s>>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 307 |     pub func: UrFunc<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 308 |     pub span: Span,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrDef` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `root` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 312 | pub struct Ur<'s> {
[INFO] [stdout]     |            -- field in this struct
[INFO] [stdout] 313 |     pub root: UrDict<'s>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Ur` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/stages/ur/mod.rs:329:23
[INFO] [stdout]     |
[INFO] [stdout] 329 |     TokenizationError(TokenizationError),
[INFO] [stdout]     |     ----------------- ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     field in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrError` 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] 329 |     TokenizationError(()),
[INFO] [stdout]     |                       ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Unexpected`, `InvalidTrailingExpr`, `ImplNotAlone`, and `UndefinedSymbol` are never constructed
[INFO] [stdout]    --> src/stages/ur/mod.rs:328:5
[INFO] [stdout]     |
[INFO] [stdout] 327 | pub enum UrError<'s> {
[INFO] [stdout]     |          ------- variants in this enum
[INFO] [stdout] 328 |     Unexpected(Option<Token<'s>>),
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 329 |     TokenizationError(TokenizationError),
[INFO] [stdout] 330 |     InvalidTrailingExpr,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 331 |     ImplNotAlone,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 332 |     UndefinedSymbol,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UrError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse` is never used
[INFO] [stdout]  --> src/stages/ur/parser.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub fn parse<'s, R: CharReader>(tokens: Tokens<'s, R>, errors: ErrorStream) -> Result<'s, Ur<'s>> {
[INFO] [stdout]   |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Parser` is never constructed
[INFO] [stdout]   --> src/stages/ur/parser.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | struct Parser<'s, R> {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/stages/ur/parser.rs:34:8
[INFO] [stdout]     |
[INFO] [stdout] 24  | impl<'s, R: CharReader> Parser<'s, R> {
[INFO] [stdout]     | ------------------------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 34  |     fn parse(mut self) -> Result<'s, Ur<'s>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40  |     fn dict_inner(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrDict<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70  |     fn def(&mut self) -> Result<'s, UrDef<'s>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 89  |     fn func_always(&mut self) -> Result<'s, UrFunc<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 101 |     fn func_level(&mut self) -> Result<'s, UrExpr<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     fn minmax_span(spans: impl IntoIterator<Item = Span>) -> Span {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn func_inner(&mut self) -> Result<'s, [Option<UrExpr<'s>>; 3]> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 185 |     fn scope(&mut self, end_pred: impl Fn(&Token<'s>) -> Option<()>) -> Result<'s, UrExprKind<'s>> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     fn next_lower(&mut self) -> Result<'s, UrExpr<'s>> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 862 |     fn bin_op(
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 889 |     fn peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, Option<T>> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 901 |     fn require_peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, T> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 914 |     fn has_peek<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, bool> {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 929 |     fn require<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, T> {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 940 |     fn maybe_require<T>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 959 |     fn eat<T>(&mut self, pred: impl FnOnce(&Token<'s>) -> Option<T>) -> Result<'s, Option<T>> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 972 |     fn func_id(&mut self) -> UrFuncId {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `TupleParseResult` is never used
[INFO] [stdout]    --> src/stages/ur/parser.rs:979:6
[INFO] [stdout]     |
[INFO] [stdout] 979 | enum TupleParseResult<'s> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `either` is never used
[INFO] [stdout]  --> src/stages/ur/preds.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn either<'s, T>(
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scoper` is never constructed
[INFO] [stdout]  --> src/stages/ur/scoper.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Scoper<'s> {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Scoper` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `lookup`, `new_symbol`, `push`, and `pop` are never used
[INFO] [stdout]   --> src/stages/ur/scoper.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<'s> Scoper<'s> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] 14 |     pub fn new() -> Scoper<'s> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 20 |     pub fn lookup(&mut self, name: Intern<'s>) -> Option<Symbol<'s>> {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn new_symbol(&mut self, name: Intern<'s>) -> Symbol<'s> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn push(&mut self) {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn pop(&mut self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Vr` is never constructed
[INFO] [stdout]  --> src/stages/vr/mod.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Vr<'s> {
[INFO] [stdout]   |            ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VrProc` is never constructed
[INFO] [stdout]  --> src/stages/vr/mod.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct VrProc<'s> {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.29s
[INFO] running `Command { std: "docker" "inspect" "2c801c17d011eb2cf8b8aec3f7f99a2d278df35f246eba42f2702244411d30be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c801c17d011eb2cf8b8aec3f7f99a2d278df35f246eba42f2702244411d30be", kill_on_drop: false }`
[INFO] [stdout] 2c801c17d011eb2cf8b8aec3f7f99a2d278df35f246eba42f2702244411d30be
