[INFO] cloning repository https://github.com/Kittenlover229/wb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Kittenlover229/wb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKittenlover229%2Fwb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKittenlover229%2Fwb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e01b01a57a11e239abab93ae12f13b8bddba57a9
[INFO] checking Kittenlover229/wb against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKittenlover229%2Fwb" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Kittenlover229/wb
[INFO] finished tweaking git repo https://github.com/Kittenlover229/wb
[INFO] tweaked toml for git repo https://github.com/Kittenlover229/wb written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Kittenlover229/wb on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Kittenlover229/wb already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded dot v0.1.4
[INFO] [stderr]   Downloaded backtrace v0.3.67
[INFO] [stderr]   Downloaded addr2line v0.19.0
[INFO] [stderr]   Downloaded object v0.30.3
[INFO] [stderr]   Downloaded gimli v0.27.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1c11df5dfd65c0a23f0cf26e66305936153bb076b6aa0040bc3d0f3a7e36d12e
[INFO] running `Command { std: "docker" "start" "-a" "1c11df5dfd65c0a23f0cf26e66305936153bb076b6aa0040bc3d0f3a7e36d12e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1c11df5dfd65c0a23f0cf26e66305936153bb076b6aa0040bc3d0f3a7e36d12e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1c11df5dfd65c0a23f0cf26e66305936153bb076b6aa0040bc3d0f3a7e36d12e", kill_on_drop: false }`
[INFO] [stdout] 1c11df5dfd65c0a23f0cf26e66305936153bb076b6aa0040bc3d0f3a7e36d12e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 019fdbd5fdbe4fa116ee20e323a112bb7f626fc7a0e736e1f9f8d33e05ec136f
[INFO] running `Command { std: "docker" "start" "-a" "019fdbd5fdbe4fa116ee20e323a112bb7f626fc7a0e736e1f9f8d33e05ec136f", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling proc-macro2 v1.0.50
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]     Checking regex-syntax v0.6.28
[INFO] [stderr]    Compiling cc v1.0.78
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]     Checking gimli v0.27.1
[INFO] [stderr]    Compiling anyhow v1.0.68
[INFO] [stderr]     Checking rustc-demangle v0.1.21
[INFO] [stderr]     Checking dot v0.1.4
[INFO] [stderr]     Checking miniz_oxide v0.6.2
[INFO] [stderr]     Checking aho-corasick v0.7.20
[INFO] [stderr]     Checking object v0.30.3
[INFO] [stderr]    Compiling backtrace v0.3.67
[INFO] [stderr]     Checking regex v1.7.1
[INFO] [stderr]     Checking addr2line v0.19.0
[INFO] [stderr]     Checking macro v0.0.0 (/opt/rustwide/workdir/crates/macro)
[INFO] [stderr]     Checking lex v0.0.0 (/opt/rustwide/workdir/crates/lex)
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout]  20 | /             (
[INFO] [stdout]  21 | |                 Token {
[INFO] [stdout]  22 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  23 | |                     span: newline_span,
[INFO] [stdout] ...   |
[INFO] [stdout]  31 | |                 }),
[INFO] [stdout]  32 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  67 | /             (
[INFO] [stdout]  68 | |                 Token {
[INFO] [stdout]  69 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  70 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |                 Some(next),
[INFO] [stdout]  74 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  91 | /             (
[INFO] [stdout]  92 | |                 Token {
[INFO] [stdout]  93 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  94 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  97 | |                 None,
[INFO] [stdout]  98 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 114 |               (last_tok, None) => {
[INFO] [stdout]     |               ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 124 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout]  20 | /             (
[INFO] [stdout]  21 | |                 Token {
[INFO] [stdout]  22 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  23 | |                     span: newline_span,
[INFO] [stdout] ...   |
[INFO] [stdout]  31 | |                 }),
[INFO] [stdout]  32 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  67 | /             (
[INFO] [stdout]  68 | |                 Token {
[INFO] [stdout]  69 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  70 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |                 Some(next),
[INFO] [stdout]  74 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  91 | /             (
[INFO] [stdout]  92 | |                 Token {
[INFO] [stdout]  93 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  94 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  97 | |                 None,
[INFO] [stdout]  98 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 114 |               (last_tok, None) => {
[INFO] [stdout]     |               ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 124 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonTokenizableSubstringError` is never constructed
[INFO] [stdout]  --> crates/lex/src/err.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NonTokenizableSubstringError {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TokenizerResult` is never used
[INFO] [stdout]   --> crates/lex/src/err.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type TokenizerResult = Result<Token, NonTokenizableSubstringError>;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ErrorAwareTokenStream` is never constructed
[INFO] [stdout]   --> crates/lex/src/err.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ErrorAwareTokenStream<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NonTokenizableSubstringError` is never constructed
[INFO] [stdout]  --> crates/lex/src/err.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NonTokenizableSubstringError {
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `TokenizerResult` is never used
[INFO] [stdout]   --> crates/lex/src/err.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub type TokenizerResult = Result<Token, NonTokenizableSubstringError>;
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ErrorAwareTokenStream` is never constructed
[INFO] [stdout]   --> crates/lex/src/err.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct ErrorAwareTokenStream<'a> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> crates/lex/src/err.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<'a> ErrorAwareTokenStream<'a> {
[INFO] [stdout]    | ---------------------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> crates/lex/src/err.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<'a> ErrorAwareTokenStream<'a> {
[INFO] [stdout]    | ---------------------------------- associated function in this implementation
[INFO] [stdout] 17 |     pub fn new(input: &'a str) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking parse v0.0.0 (/opt/rustwide/workdir/crates/parse)
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout]  20 | /             (
[INFO] [stdout]  21 | |                 Token {
[INFO] [stdout]  22 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  23 | |                     span: newline_span,
[INFO] [stdout] ...   |
[INFO] [stdout]  31 | |                 }),
[INFO] [stdout]  32 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  67 | /             (
[INFO] [stdout]  68 | |                 Token {
[INFO] [stdout]  69 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  70 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |                 Some(next),
[INFO] [stdout]  74 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  91 | /             (
[INFO] [stdout]  92 | |                 Token {
[INFO] [stdout]  93 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  94 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  97 | |                 None,
[INFO] [stdout]  98 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 114 |               (last_tok, None) => {
[INFO] [stdout]     |               ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 124 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `loc` and `span` are never read
[INFO] [stdout]  --> crates/lex/src/err.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NonTokenizableSubstringError {
[INFO] [stdout]   |            ---------------------------- fields in this struct
[INFO] [stdout] 6 |     pub loc: SourceLocation,
[INFO] [stdout]   |         ^^^
[INFO] [stdout] 7 |     pub span: SourceSpan,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `NonTokenizableSubstringError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SourceObject` is never used
[INFO] [stdout]   --> crates/lex/src/token.rs:48:11
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub trait SourceObject {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_binop` is never used
[INFO] [stdout]    --> crates/lex/src/token.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl Token {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] 137 |     pub fn is_binop(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_tokenize` is never used
[INFO] [stdout]    --> crates/lex/src/tokenizer.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn try_tokenize<'a>(input: &'a str) -> TokenStream<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout] 124 |             _ => unreachable!(),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> crates/lex/src/indent.rs:124:13
[INFO] [stdout]     |
[INFO] [stdout]  20 | /             (
[INFO] [stdout]  21 | |                 Token {
[INFO] [stdout]  22 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  23 | |                     span: newline_span,
[INFO] [stdout] ...   |
[INFO] [stdout]  31 | |                 }),
[INFO] [stdout]  32 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  67 | /             (
[INFO] [stdout]  68 | |                 Token {
[INFO] [stdout]  69 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  70 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  73 | |                 Some(next),
[INFO] [stdout]  74 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout]  91 | /             (
[INFO] [stdout]  92 | |                 Token {
[INFO] [stdout]  93 | |                     kind: TokenKind::Newline,
[INFO] [stdout]  94 | |                     span,
[INFO] [stdout] ...   |
[INFO] [stdout]  97 | |                 None,
[INFO] [stdout]  98 | |             ) => {
[INFO] [stdout]     | |_____________- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 114 |               (last_tok, None) => {
[INFO] [stdout]     |               ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 124 |               _ => unreachable!(),
[INFO] [stdout]     |               ^ ...and 1 other patterns collectively make this unreachable
[INFO] [stdout]     = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking sem v0.0.0 (/opt/rustwide/workdir/crates/sem)
[INFO] [stdout] warning: fields `loc` and `span` are never read
[INFO] [stdout]  --> crates/lex/src/err.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct NonTokenizableSubstringError {
[INFO] [stdout]   |            ---------------------------- fields in this struct
[INFO] [stdout] 6 |     pub loc: SourceLocation,
[INFO] [stdout]   |         ^^^
[INFO] [stdout] 7 |     pub span: SourceSpan,
[INFO] [stdout]   |         ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `NonTokenizableSubstringError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SourceObject` is never used
[INFO] [stdout]   --> crates/lex/src/token.rs:48:11
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub trait SourceObject {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_binop` is never used
[INFO] [stdout]    --> crates/lex/src/token.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 136 | impl Token {
[INFO] [stdout]     | ---------- method in this implementation
[INFO] [stdout] 137 |     pub fn is_binop(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `try_tokenize` is never used
[INFO] [stdout]    --> crates/lex/src/tokenizer.rs:114:8
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub fn try_tokenize<'a>(input: &'a str) -> TokenStream<'a> {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `lex::try_tokenize`
[INFO] [stdout]   --> crates/parse/src/main.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let tokens = try_tokenize(contents.as_str());
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `lex::try_tokenize`
[INFO] [stdout]   --> crates/parse/src/main.rs:12:18
[INFO] [stdout]    |
[INFO] [stdout] 12 |     let tokens = try_tokenize(contents.as_str());
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `lex::try_tokenize`
[INFO] [stdout]   --> crates/sem/src/main.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let tokens = try_tokenize(contents.as_str());
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loc` is never read
[INFO] [stdout]   --> crates/parse/src/parser.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct ParserFault {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     pub loc: SourceLocation,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserFault` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Bool` is never constructed
[INFO] [stdout]  --> crates/sem/src/ty.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum Type {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 5 |     Bool,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Type` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `loc` is never read
[INFO] [stdout]   --> crates/parse/src/parser.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct ParserFault {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 14 |     pub loc: SourceLocation,
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserFault` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `lex::try_tokenize`
[INFO] [stdout]   --> crates/sem/src/main.rs:18:18
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let tokens = try_tokenize(contents.as_str());
[INFO] [stdout]    |                  ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Bool` is never constructed
[INFO] [stdout]  --> crates/sem/src/ty.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub enum Type {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 5 |     Bool,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Type` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.96s
[INFO] running `Command { std: "docker" "inspect" "019fdbd5fdbe4fa116ee20e323a112bb7f626fc7a0e736e1f9f8d33e05ec136f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "019fdbd5fdbe4fa116ee20e323a112bb7f626fc7a0e736e1f9f8d33e05ec136f", kill_on_drop: false }`
[INFO] [stdout] 019fdbd5fdbe4fa116ee20e323a112bb7f626fc7a0e736e1f9f8d33e05ec136f
