[INFO] cloning repository https://github.com/emm312/eepy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/emm312/eepy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femm312%2Feepy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femm312%2Feepy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cb1d3cc976efdac2b5220ae34f2d220af15603e2
[INFO] checking emm312/eepy against master#bca37a20bd376ce3fd138e7cdee7fe704e0f8814 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Femm312%2Feepy" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/emm312/eepy
[INFO] finished tweaking git repo https://github.com/emm312/eepy
[INFO] tweaked toml for git repo https://github.com/emm312/eepy written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/emm312/eepy on toolchain bca37a20bd376ce3fd138e7cdee7fe704e0f8814
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/emm312/eepy 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" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating git repository `https://github.com/swgillespie/gccjit.rs`
[INFO] [stderr]     Updating git repository `https://github.com/rookieCookies/istd`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libc v0.1.12
[INFO] [stderr]   Downloaded gccjit_sys v0.0.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4aa9ce50cf0a4ddcf1012e63ad0f36f6a43cb8d7a624c1c9e93b3a25ae6a917c
[INFO] running `Command { std: "docker" "start" "-a" "4aa9ce50cf0a4ddcf1012e63ad0f36f6a43cb8d7a624c1c9e93b3a25ae6a917c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4aa9ce50cf0a4ddcf1012e63ad0f36f6a43cb8d7a624c1c9e93b3a25ae6a917c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4aa9ce50cf0a4ddcf1012e63ad0f36f6a43cb8d7a624c1c9e93b3a25ae6a917c", kill_on_drop: false }`
[INFO] [stdout] 4aa9ce50cf0a4ddcf1012e63ad0f36f6a43cb8d7a624c1c9e93b3a25ae6a917c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+bca37a20bd376ce3fd138e7cdee7fe704e0f8814" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1537cdc208cde9fb2ec6a3df90ab48c0fc79920ba3800f43334184bf84d0bff1
[INFO] running `Command { std: "docker" "start" "-a" "1537cdc208cde9fb2ec6a3df90ab48c0fc79920ba3800f43334184bf84d0bff1", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.1.12
[INFO] [stderr]     Checking istd v0.1.0 (https://github.com/rookieCookies/istd#dbedfa30)
[INFO] [stderr]     Checking colored v2.0.4
[INFO] [stderr]    Compiling clap_derive v4.3.2
[INFO] [stderr]     Checking gccjit_sys v0.0.1
[INFO] [stderr]     Checking gccjit v1.0.0 (https://github.com/swgillespie/gccjit.rs#314741b4)
[INFO] [stderr]     Checking clap v4.3.11
[INFO] [stderr]     Checking eepy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BinaryOp` and `CompileResult`
[INFO] [stdout]  --> src/backend/codegen.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     BinaryOp, CompileResult, Context, Field, Function, LValue, OutputKind, Parameter, RValue,
[INFO] [stdout]   |     ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IRFunction` and `IRLinkage`
[INFO] [stdout]   --> src/backend/codegen.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ir::{IRExpr, IRFunction, IRInstr, IRLinkage, IRModule, IRTerminator, IRType, IRValue},
[INFO] [stdout]    |                  ^^^^^^^^^^           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `features`
[INFO] [stdout]  --> src/envs.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 |     #[cfg(features = "afl")]
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] help: there is a config with a similar name and value
[INFO] [stdout]   |
[INFO] [stdout] 6 -     #[cfg(features = "afl")]
[INFO] [stdout] 6 +     #[cfg(feature = "afl")]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `features`
[INFO] [stdout]   --> src/envs.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[cfg(not(features = "afl"))]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] help: there is a config with a similar name and value
[INFO] [stdout]    |
[INFO] [stdout] 11 -     #[cfg(not(features = "afl"))]
[INFO] [stdout] 11 +     #[cfg(not(feature = "afl"))]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/frontend/parser/ast.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SymbolMap`
[INFO] [stdout]  --> src/frontend/parser/ast.rs:5:72
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::frontend::{SourceRange, Literal, lexer::{Token, TokenKind}, SymbolMap, SymbolIndex};
[INFO] [stdout]   |                                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/codegen.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 139 | ...                   _ => todo!(),
[INFO] [stdout]     |                       ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 125 | ...                   IRInstr::Expr(e) => {
[INFO] [stdout]     |                       ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 128 | ...                   IRInstr::NewVar(name, typ) => {
[INFO] [stdout]     |                       -------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 134 | ...                   IRInstr::SetVar(name, expr) => bb.add_assignment(
[INFO] [stdout]     |                       --------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 139 | ...                   _ => todo!(),
[INFO] [stdout]     |                       ^ collectively making 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]    --> src/backend/codegen.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 151 |                         _ => todo!(),
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         IRTerminator::Ret(val) => {
[INFO] [stdout]     |                         ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 146 |                         IRTerminator::Branch(cond, t, f) => {
[INFO] [stdout]     |                         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 150 |                         IRTerminator::Jmp(b) => bb.end_with_jump(None, blocks_map[&b]),
[INFO] [stdout]     |                         -------------------- matches some of the same values
[INFO] [stdout] 151 |                         _ => todo!(),
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/codegen.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             _ => todo!("unimplemented type"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |             IRType::I8 => self.ctx.new_type::<i8>(),
[INFO] [stdout]     |             ---------- matches some of the same values
[INFO] [stdout] 238 |             IRType::I16 => self.ctx.new_type::<i16>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 239 |             IRType::I32 => self.ctx.new_type::<i32>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 240 |             IRType::I64 => self.ctx.new_type::<i64>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 270 |             _ => todo!("unimplemented type"),
[INFO] [stdout]     |             ^ ...and 9 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BinaryOp` and `CompileResult`
[INFO] [stdout]  --> src/backend/codegen.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 |     BinaryOp, CompileResult, Context, Field, Function, LValue, OutputKind, Parameter, RValue,
[INFO] [stdout]   |     ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IRFunction` and `IRLinkage`
[INFO] [stdout]   --> src/backend/codegen.rs:10:18
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ir::{IRExpr, IRFunction, IRInstr, IRLinkage, IRModule, IRTerminator, IRType, IRValue},
[INFO] [stdout]    |                  ^^^^^^^^^^           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `features`
[INFO] [stdout]  --> src/envs.rs:6:11
[INFO] [stdout]   |
[INFO] [stdout] 6 |     #[cfg(features = "afl")]
[INFO] [stdout]   |           ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] help: there is a config with a similar name and value
[INFO] [stdout]   |
[INFO] [stdout] 6 -     #[cfg(features = "afl")]
[INFO] [stdout] 6 +     #[cfg(feature = "afl")]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `features`
[INFO] [stdout]   --> src/envs.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 |     #[cfg(not(features = "afl"))]
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] help: there is a config with a similar name and value
[INFO] [stdout]    |
[INFO] [stdout] 11 -     #[cfg(not(features = "afl"))]
[INFO] [stdout] 11 +     #[cfg(not(feature = "afl"))]
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Write`
[INFO] [stdout]  --> src/frontend/parser/ast.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::Write;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SymbolMap`
[INFO] [stdout]  --> src/frontend/parser/ast.rs:5:72
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::frontend::{SourceRange, Literal, lexer::{Token, TokenKind}, SymbolMap, SymbolIndex};
[INFO] [stdout]   |                                                                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `left_value` and `peek_range` are never used
[INFO] [stdout]    --> src/frontend/parser.rs:242:8
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl Parser<'_> {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn left_value(&mut self) -> Result<NodeIndex, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     fn peek_range(self) -> Option<SourceRange> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tree` and `node_map` are never read
[INFO] [stdout]   --> src/frontend/parser/ast.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct AbstractSyntaxTree {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 19 |     tree: Block,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     node_map: NodeMap,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AbstractSyntaxTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `UnaryOperation` and `AsCast` are never constructed
[INFO] [stdout]    --> src/frontend/parser/ast.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub enum Expression {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 128 |     UnaryOperation {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     AsCast {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Expression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Not` and `Neg` are never constructed
[INFO] [stdout]    --> src/frontend/parser/ast.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 260 | enum UnaryOperatorKind {
[INFO] [stdout]     |      ----------------- variants in this enum
[INFO] [stdout] 261 |     Not,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 262 |     Neg,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UnaryOperatorKind` 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 function `from_token` is never used
[INFO] [stdout]    --> src/frontend/parser/ast.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 266 | impl UnaryOperator {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn from_token(token: &Token) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/backend/codegen.rs:164:10
[INFO] [stdout]     |
[INFO] [stdout] 160 |         &'gcc self,
[INFO] [stdout]     |          ---- the lifetime is named here
[INFO] [stdout] 161 |         expr: IRExpr,
[INFO] [stdout] 162 |         functions: &HashMap<String, Function<'gcc>>,
[INFO] [stdout]     |                                              ---- the lifetime is named here
[INFO] [stdout] 163 |         vars: &'gcc HashMap<String, LValue>,
[INFO] [stdout]     |                ---- the lifetime is named here
[INFO] [stdout] 164 |     ) -> RValue {
[INFO] [stdout]     |          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'gcc`
[INFO] [stdout]     |
[INFO] [stdout] 164 |     ) -> RValue<'gcc> {
[INFO] [stdout]     |                ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/backend/codegen.rs:235:34
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn convert_ir_to_gccjit_type(&self, typ: IRType) -> Type {
[INFO] [stdout]     |                                  ^^^^^                  ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn convert_ir_to_gccjit_type(&self, typ: IRType) -> Type<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/frontend/errors.rs:308:41
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn new(file: SymbolIndex, text: &str) -> CompilerError {
[INFO] [stdout]     |                                         ^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn new(file: SymbolIndex, text: &str) -> CompilerError<'_> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |         lexer::{self, lex},
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/codegen.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 139 | ...                   _ => todo!(),
[INFO] [stdout]     |                       ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:139:29
[INFO] [stdout]     |
[INFO] [stdout] 125 | ...                   IRInstr::Expr(e) => {
[INFO] [stdout]     |                       ---------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 128 | ...                   IRInstr::NewVar(name, typ) => {
[INFO] [stdout]     |                       -------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 134 | ...                   IRInstr::SetVar(name, expr) => bb.add_assignment(
[INFO] [stdout]     |                       --------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 139 | ...                   _ => todo!(),
[INFO] [stdout]     |                       ^ collectively making 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]    --> src/backend/codegen.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 151 |                         _ => todo!(),
[INFO] [stdout]     |                         ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:151:25
[INFO] [stdout]     |
[INFO] [stdout] 143 |                         IRTerminator::Ret(val) => {
[INFO] [stdout]     |                         ---------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 146 |                         IRTerminator::Branch(cond, t, f) => {
[INFO] [stdout]     |                         -------------------------------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 150 |                         IRTerminator::Jmp(b) => bb.end_with_jump(None, blocks_map[&b]),
[INFO] [stdout]     |                         -------------------- matches some of the same values
[INFO] [stdout] 151 |                         _ => todo!(),
[INFO] [stdout]     |                         ^ collectively making this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/main.rs:11:17
[INFO] [stdout]    |
[INFO] [stdout] 11 |         lexer::{self, lex},
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]    --> src/backend/codegen.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 270 |             _ => todo!("unimplemented type"),
[INFO] [stdout]     |             ^ no value can reach this
[INFO] [stdout]     |
[INFO] [stdout] note: multiple earlier patterns match some of the same values
[INFO] [stdout]    --> src/backend/codegen.rs:270:13
[INFO] [stdout]     |
[INFO] [stdout] 237 |             IRType::I8 => self.ctx.new_type::<i8>(),
[INFO] [stdout]     |             ---------- matches some of the same values
[INFO] [stdout] 238 |             IRType::I16 => self.ctx.new_type::<i16>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 239 |             IRType::I32 => self.ctx.new_type::<i32>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] 240 |             IRType::I64 => self.ctx.new_type::<i64>(),
[INFO] [stdout]     |             ----------- matches some of the same values
[INFO] [stdout] ...
[INFO] [stdout] 270 |             _ => todo!("unimplemented type"),
[INFO] [stdout]     |             ^ ...and 9 other patterns collectively make this unreachable
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `left_value` and `peek_range` are never used
[INFO] [stdout]    --> src/frontend/parser.rs:242:8
[INFO] [stdout]     |
[INFO] [stdout]  46 | impl Parser<'_> {
[INFO] [stdout]     | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 242 |     fn left_value(&mut self) -> Result<NodeIndex, Error> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     fn peek_range(self) -> Option<SourceRange> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tree` and `node_map` are never read
[INFO] [stdout]   --> src/frontend/parser/ast.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct AbstractSyntaxTree {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 19 |     tree: Block,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 20 |     node_map: NodeMap,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AbstractSyntaxTree` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `UnaryOperation` and `AsCast` are never constructed
[INFO] [stdout]    --> src/frontend/parser/ast.rs:128:5
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub enum Expression {
[INFO] [stdout]     |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 128 |     UnaryOperation {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     AsCast {
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Expression` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Not` and `Neg` are never constructed
[INFO] [stdout]    --> src/frontend/parser/ast.rs:261:5
[INFO] [stdout]     |
[INFO] [stdout] 260 | enum UnaryOperatorKind {
[INFO] [stdout]     |      ----------------- variants in this enum
[INFO] [stdout] 261 |     Not,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 262 |     Neg,
[INFO] [stdout]     |     ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UnaryOperatorKind` 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 function `from_token` is never used
[INFO] [stdout]    --> src/frontend/parser/ast.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 266 | impl UnaryOperator {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 270 |     pub fn from_token(token: &Token) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/backend/codegen.rs:164:10
[INFO] [stdout]     |
[INFO] [stdout] 160 |         &'gcc self,
[INFO] [stdout]     |          ---- the lifetime is named here
[INFO] [stdout] 161 |         expr: IRExpr,
[INFO] [stdout] 162 |         functions: &HashMap<String, Function<'gcc>>,
[INFO] [stdout]     |                                              ---- the lifetime is named here
[INFO] [stdout] 163 |         vars: &'gcc HashMap<String, LValue>,
[INFO] [stdout]     |                ---- the lifetime is named here
[INFO] [stdout] 164 |     ) -> RValue {
[INFO] [stdout]     |          ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'gcc`
[INFO] [stdout]     |
[INFO] [stdout] 164 |     ) -> RValue<'gcc> {
[INFO] [stdout]     |                ++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/backend/codegen.rs:235:34
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn convert_ir_to_gccjit_type(&self, typ: IRType) -> Type {
[INFO] [stdout]     |                                  ^^^^^                  ^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn convert_ir_to_gccjit_type(&self, typ: IRType) -> Type<'_> {
[INFO] [stdout]     |                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/frontend/errors.rs:308:41
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn new(file: SymbolIndex, text: &str) -> CompilerError {
[INFO] [stdout]     |                                         ^^^^     ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                         |
[INFO] [stdout]     |                                         the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn new(file: SymbolIndex, text: &str) -> CompilerError<'_> {
[INFO] [stdout]     |                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.06s
[INFO] running `Command { std: "docker" "inspect" "1537cdc208cde9fb2ec6a3df90ab48c0fc79920ba3800f43334184bf84d0bff1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1537cdc208cde9fb2ec6a3df90ab48c0fc79920ba3800f43334184bf84d0bff1", kill_on_drop: false }`
[INFO] [stdout] 1537cdc208cde9fb2ec6a3df90ab48c0fc79920ba3800f43334184bf84d0bff1
