[INFO] cloning repository https://github.com/Aurora2500/chun
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Aurora2500/chun" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAurora2500%2Fchun", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAurora2500%2Fchun'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c464bdb0f826d0b1510838f960ee8dddb36a943a
[INFO] checking Aurora2500/chun against master#8f21a5c92ea55c348c275a1bc4fedbdf181e0d64 for pr-143011
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAurora2500%2Fchun" "/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/Aurora2500/chun
[INFO] finished tweaking git repo https://github.com/Aurora2500/chun
[INFO] tweaked toml for git repo https://github.com/Aurora2500/chun written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Aurora2500/chun on toolchain 8f21a5c92ea55c348c275a1bc4fedbdf181e0d64
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Aurora2500/chun 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" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded once_cell v1.21.0
[INFO] [stderr]   Downloaded psm v0.1.25
[INFO] [stderr]   Downloaded chumsky v0.9.3
[INFO] [stderr]   Downloaded stacker v0.1.19
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 89f0ba816534859ccf501bbfc2ca64e62e5726d95c313e452e30404ed26e75db
[INFO] running `Command { std: "docker" "start" "-a" "89f0ba816534859ccf501bbfc2ca64e62e5726d95c313e452e30404ed26e75db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "89f0ba816534859ccf501bbfc2ca64e62e5726d95c313e452e30404ed26e75db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "89f0ba816534859ccf501bbfc2ca64e62e5726d95c313e452e30404ed26e75db", kill_on_drop: false }`
[INFO] [stdout] 89f0ba816534859ccf501bbfc2ca64e62e5726d95c313e452e30404ed26e75db
[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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8f21a5c92ea55c348c275a1bc4fedbdf181e0d64" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a544507342b29f6749b68a8b1fc983251c3b6ab9c62d63c7d86894f08d8f45dd
[INFO] running `Command { std: "docker" "start" "-a" "a544507342b29f6749b68a8b1fc983251c3b6ab9c62d63c7d86894f08d8f45dd", kill_on_drop: false }`
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]    Compiling libc v0.2.171
[INFO] [stderr]     Checking once_cell v1.21.0
[INFO] [stderr]     Checking ahash v0.8.11
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling psm v0.1.25
[INFO] [stderr]    Compiling stacker v0.1.19
[INFO] [stderr]     Checking chumsky v0.9.3
[INFO] [stderr]     Checking chun v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/parser/error.rs:44:22
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn with_label(self, label: Self::Label) -> Self {
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_map`
[INFO] [stdout]   --> src/transformer/concrete.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let local_map: HashMap<&'a str, Arc<LocalVar<'a>>> = HashMap::new();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param`
[INFO] [stdout]   --> src/transformer/concrete.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 |         for param in def.sig.params.iter() {}
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/transformer/concrete.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let mut prog = vec![];
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/transformer/inference.rs:257:25
[INFO] [stdout]     |
[INFO] [stdout] 257 |             ExprVariant::Binop { op, lhs, rhs } => {
[INFO] [stdout]     |                                  ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/transformer/inference.rs:274:24
[INFO] [stdout]     |
[INFO] [stdout] 274 |             ExprVariant::Unop { op, expr } => {
[INFO] [stdout]     |                                 ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/translation/ast.rs:105:14
[INFO] [stdout]     |
[INFO] [stdout] 105 |             E::Unop { op, expr } => todo!(),
[INFO] [stdout]     |                       ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/translation/ast.rs:105:18
[INFO] [stdout]     |
[INFO] [stdout] 105 |             E::Unop { op, expr } => todo!(),
[INFO] [stdout]     |                           ^^^^ help: try ignoring the field: `expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `span`, `expected`, and `found` are never read
[INFO] [stdout]   --> src/parser/error.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout] 9  |     Specific {
[INFO] [stdout]    |     -------- fields in this variant
[INFO] [stdout] 10 |         span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 11 |         expected: HashSet<Option<I>>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 12 |         found: Option<I>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `specific` is never read
[INFO] [stdout]   --> src/parser/error.rs:15:3
[INFO] [stdout]    |
[INFO] [stdout] 14 |     General {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] 15 |         specific: Vec<ParserError<I>>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserError` 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 `None` and `Generic` are never constructed
[INFO] [stdout]   --> src/parser/error.rs:20:2
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum ParseErrorLabel {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 20 |     None,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Generic(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `a`, and `b` are never read
[INFO] [stdout]   --> src/transformer/error.rs:8:3
[INFO] [stdout]    |
[INFO] [stdout] 7  |     DuplicateFunc {
[INFO] [stdout]    |     ------------- fields in this variant
[INFO] [stdout] 8  |         name: &'a str,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 9  |         a: Range<usize>,
[INFO] [stdout]    |         ^
[INFO] [stdout] 10 |         b: Range<usize>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 `ty` and `span` are never read
[INFO] [stdout]   --> src/transformer/error.rs:13:3
[INFO] [stdout]    |
[INFO] [stdout] 12 |     UnrecognizedType {
[INFO] [stdout]    |     ---------------- fields in this variant
[INFO] [stdout] 13 |         ty: &'a str,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 14 |         span: Range<usize>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 `a` and `b` are never read
[INFO] [stdout]   --> src/transformer/error.rs:17:3
[INFO] [stdout]    |
[INFO] [stdout] 16 |     IncompatibleTypes {
[INFO] [stdout]    |     ----------------- fields in this variant
[INFO] [stdout] 17 |         a: UniType,
[INFO] [stdout]    |         ^
[INFO] [stdout] 18 |         b: UniType,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 function `new` is never used
[INFO] [stdout]   --> src/translation/ast.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Ctx {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 31 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/translation/ast.rs:54:2
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum ExprVariant<'a> {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 54 |     LocalVar(Arc<LocalVar<'a>>),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 55 |     GlobalRef(&'a str),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 56 |     Integral(i64),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 57 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 58 |     Unop {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     Binop {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     FnCall {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprVariant` 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 `Assignment`, `Expr`, `Return`, `While`, and `If` are never constructed
[INFO] [stdout]    --> src/translation/ast.rs:143:2
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub enum Stmt<'a> {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] 143 |     Assignment {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     Expr(Expr<'a>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 149 |     Return(Option<Expr<'a>>),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 150 |     While {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     If {
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stmt` 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/translation/types.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum QbeExtendedScalar {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 5  |     I8,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 6  |     I16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 7  |     I32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 8  |     I64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 9  |     U8,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     U16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 11 |     U32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 12 |     U64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     F32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 14 |     F64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QbeExtendedScalar` 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 `Val` is never used
[INFO] [stdout]  --> src/translation/values.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Val<'a> {
[INFO] [stdout]   |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ptr` is never constructed
[INFO] [stdout]   --> src/types.rs:17:2
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum Scalar {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Ptr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Scalar` 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: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/transformer.rs:167:29
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn transform_fnparam(param: &parser::FnParam) -> Result<ast::FnParam, SemanticError> {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^            ------------  ------------- the lifetimes get resolved as `'_`
[INFO] [stdout]     |                             |                           |
[INFO] [stdout]     |                             |                           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                             this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn transform_fnparam(param: &parser::FnParam) -> Result<ast::FnParam<'_>, SemanticError<'_>> {
[INFO] [stdout]     |                                                                     ++++               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/transformer.rs:264:23
[INFO] [stdout]     |
[INFO] [stdout] 264 | pub fn transform(ast: &parser::Program) -> Result<out::Program, Vec<SemanticError>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^            ------------      ------------- the lifetimes get resolved as `'_`
[INFO] [stdout]     |                       |                           |
[INFO] [stdout]     |                       |                           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                       this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 264 | pub fn transform(ast: &parser::Program) -> Result<out::Program<'_>, Vec<SemanticError<'_>>> {
[INFO] [stdout]     |                                                               ++++                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 write!(il, "\t{tv} = {ty} {load_cmd} %{name}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 write!(il, "\t{tv} = l copy ${r}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 write!(il, "\t{tv} = {res_ty} copy {i}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 write!(il, "\t{tv} = {res_ty} copy {b}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 write!(il, "\t{tv} = {res_ty} {op_cmd} {lhs}, {rhs}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |                 write!(il, "\t{tv} = {res_ty} call {func} (");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:132:6
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     write!(il, "{param_ty} {param}, ");
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 write!(il, ")\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 write!(il, "\t{store_cmd} {expr} {name}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 write!(il, "\tret");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:183:6
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     write!(il, " {expr}");
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 write!(il, "\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 write!(il, "\tjnz {cond}, {branch}, {merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 write!(il, "{branch}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:196:5
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 write!(il, "{merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 write!(il, "{check}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 write!(il, "\tjnz {cond}, {branch}, {merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:205:5
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 write!(il, "{branch}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 write!(il, "\tjmp {check}");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 write!(il, "{merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:230:3
[INFO] [stdout]     |
[INFO] [stdout] 230 |         write!(il, "extern function ");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:232:4
[INFO] [stdout]     |
[INFO] [stdout] 232 |             write!(il, "{ret_ty} ");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:234:3
[INFO] [stdout]     |
[INFO] [stdout] 234 |         write!(il, "${} (", self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 |             write!(il, "{} {}, ", param.ty, param.name);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:238:3
[INFO] [stdout]     |
[INFO] [stdout] 238 |         write!(il, ") {{\n\n");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/types.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_scalar(ty: &str, span: Range<usize>) -> Result<Scalar, SemanticError> {
[INFO] [stdout]    |                         ^^^^ this lifetime flows to the output      ------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_scalar(ty: &str, span: Range<usize>) -> Result<Scalar, SemanticError<'_>> {
[INFO] [stdout]    |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `label`
[INFO] [stdout]   --> src/parser/error.rs:44:22
[INFO] [stdout]    |
[INFO] [stdout] 44 |     fn with_label(self, label: Self::Label) -> Self {
[INFO] [stdout]    |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_label`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `local_map`
[INFO] [stdout]   --> src/transformer/concrete.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let local_map: HashMap<&'a str, Arc<LocalVar<'a>>> = HashMap::new();
[INFO] [stdout]    |             ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_local_map`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `param`
[INFO] [stdout]   --> src/transformer/concrete.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 |         for param in def.sig.params.iter() {}
[INFO] [stdout]    |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_param`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/transformer/concrete.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let mut prog = vec![];
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/transformer/inference.rs:257:25
[INFO] [stdout]     |
[INFO] [stdout] 257 |             ExprVariant::Binop { op, lhs, rhs } => {
[INFO] [stdout]     |                                  ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/transformer/inference.rs:274:24
[INFO] [stdout]     |
[INFO] [stdout] 274 |             ExprVariant::Unop { op, expr } => {
[INFO] [stdout]     |                                 ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `op`
[INFO] [stdout]    --> src/translation/ast.rs:105:14
[INFO] [stdout]     |
[INFO] [stdout] 105 |             E::Unop { op, expr } => todo!(),
[INFO] [stdout]     |                       ^^ help: try ignoring the field: `op: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `expr`
[INFO] [stdout]    --> src/translation/ast.rs:105:18
[INFO] [stdout]     |
[INFO] [stdout] 105 |             E::Unop { op, expr } => todo!(),
[INFO] [stdout]     |                           ^^^^ help: try ignoring the field: `expr: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `span`, `expected`, and `found` are never read
[INFO] [stdout]   --> src/parser/error.rs:10:3
[INFO] [stdout]    |
[INFO] [stdout] 9  |     Specific {
[INFO] [stdout]    |     -------- fields in this variant
[INFO] [stdout] 10 |         span: Span,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 11 |         expected: HashSet<Option<I>>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 12 |         found: Option<I>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserError` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `specific` is never read
[INFO] [stdout]   --> src/parser/error.rs:15:3
[INFO] [stdout]    |
[INFO] [stdout] 14 |     General {
[INFO] [stdout]    |     ------- field in this variant
[INFO] [stdout] 15 |         specific: Vec<ParserError<I>>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ParserError` 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 `None` and `Generic` are never constructed
[INFO] [stdout]   --> src/parser/error.rs:20:2
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum ParseErrorLabel {
[INFO] [stdout]    |          --------------- variants in this enum
[INFO] [stdout] 20 |     None,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 21 |     Generic(String),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `a`, and `b` are never read
[INFO] [stdout]   --> src/transformer/error.rs:8:3
[INFO] [stdout]    |
[INFO] [stdout] 7  |     DuplicateFunc {
[INFO] [stdout]    |     ------------- fields in this variant
[INFO] [stdout] 8  |         name: &'a str,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 9  |         a: Range<usize>,
[INFO] [stdout]    |         ^
[INFO] [stdout] 10 |         b: Range<usize>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 `ty` and `span` are never read
[INFO] [stdout]   --> src/transformer/error.rs:13:3
[INFO] [stdout]    |
[INFO] [stdout] 12 |     UnrecognizedType {
[INFO] [stdout]    |     ---------------- fields in this variant
[INFO] [stdout] 13 |         ty: &'a str,
[INFO] [stdout]    |         ^^
[INFO] [stdout] 14 |         span: Range<usize>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 `a` and `b` are never read
[INFO] [stdout]   --> src/transformer/error.rs:17:3
[INFO] [stdout]    |
[INFO] [stdout] 16 |     IncompatibleTypes {
[INFO] [stdout]    |     ----------------- fields in this variant
[INFO] [stdout] 17 |         a: UniType,
[INFO] [stdout]    |         ^
[INFO] [stdout] 18 |         b: UniType,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SemanticError` 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 function `new` is never used
[INFO] [stdout]   --> src/translation/ast.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 30 | impl Ctx {
[INFO] [stdout]    | -------- associated function in this implementation
[INFO] [stdout] 31 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple variants are never constructed
[INFO] [stdout]   --> src/translation/ast.rs:54:2
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub enum ExprVariant<'a> {
[INFO] [stdout]    |          ----------- variants in this enum
[INFO] [stdout] 54 |     LocalVar(Arc<LocalVar<'a>>),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 55 |     GlobalRef(&'a str),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 56 |     Integral(i64),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 57 |     Boolean(bool),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 58 |     Unop {
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 62 |     Binop {
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 67 |     FnCall {
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ExprVariant` 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 `Assignment`, `Expr`, `Return`, `While`, and `If` are never constructed
[INFO] [stdout]    --> src/translation/ast.rs:143:2
[INFO] [stdout]     |
[INFO] [stdout] 142 | pub enum Stmt<'a> {
[INFO] [stdout]     |          ---- variants in this enum
[INFO] [stdout] 143 |     Assignment {
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 148 |     Expr(Expr<'a>),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 149 |     Return(Option<Expr<'a>>),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 150 |     While {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     If {
[INFO] [stdout]     |     ^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stmt` 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/translation/types.rs:5:2
[INFO] [stdout]    |
[INFO] [stdout] 4  | pub enum QbeExtendedScalar {
[INFO] [stdout]    |          ----------------- variants in this enum
[INFO] [stdout] 5  |     I8,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 6  |     I16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 7  |     I32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 8  |     I64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 9  |     U8,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 10 |     U16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 11 |     U32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 12 |     U64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 13 |     F32,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 14 |     F64,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `QbeExtendedScalar` 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 `Val` is never used
[INFO] [stdout]  --> src/translation/values.rs:1:10
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub enum Val<'a> {
[INFO] [stdout]   |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Ptr` is never constructed
[INFO] [stdout]   --> src/types.rs:17:2
[INFO] [stdout]    |
[INFO] [stdout] 9  | pub enum Scalar {
[INFO] [stdout]    |          ------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 17 |     Ptr,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Scalar` 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: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/transformer.rs:167:29
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn transform_fnparam(param: &parser::FnParam) -> Result<ast::FnParam, SemanticError> {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^            ------------  ------------- the lifetimes get resolved as `'_`
[INFO] [stdout]     |                             |                           |
[INFO] [stdout]     |                             |                           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                             this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 167 | fn transform_fnparam(param: &parser::FnParam) -> Result<ast::FnParam<'_>, SemanticError<'_>> {
[INFO] [stdout]     |                                                                     ++++               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]    --> src/transformer.rs:264:23
[INFO] [stdout]     |
[INFO] [stdout] 264 | pub fn transform(ast: &parser::Program) -> Result<out::Program, Vec<SemanticError>> {
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^            ------------      ------------- the lifetimes get resolved as `'_`
[INFO] [stdout]     |                       |                           |
[INFO] [stdout]     |                       |                           the lifetimes get resolved as `'_`
[INFO] [stdout]     |                       this lifetime flows to the output
[INFO] [stdout]     |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]     |
[INFO] [stdout] 264 | pub fn transform(ast: &parser::Program) -> Result<out::Program<'_>, Vec<SemanticError<'_>>> {
[INFO] [stdout]     |                                                               ++++                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 write!(il, "\t{tv} = {ty} {load_cmd} %{name}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:96:5
[INFO] [stdout]    |
[INFO] [stdout] 96 |                 write!(il, "\t{tv} = l copy ${r}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/translation/ast.rs:99:5
[INFO] [stdout]    |
[INFO] [stdout] 99 |                 write!(il, "\t{tv} = {res_ty} copy {i}\n");
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:103:5
[INFO] [stdout]     |
[INFO] [stdout] 103 |                 write!(il, "\t{tv} = {res_ty} copy {b}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:122:5
[INFO] [stdout]     |
[INFO] [stdout] 122 |                 write!(il, "\t{tv} = {res_ty} {op_cmd} {lhs}, {rhs}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:130:5
[INFO] [stdout]     |
[INFO] [stdout] 130 |                 write!(il, "\t{tv} = {res_ty} call {func} (");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:132:6
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     write!(il, "{param_ty} {param}, ");
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:134:5
[INFO] [stdout]     |
[INFO] [stdout] 134 |                 write!(il, ")\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:174:5
[INFO] [stdout]     |
[INFO] [stdout] 174 |                 write!(il, "\t{store_cmd} {expr} {name}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:180:5
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 write!(il, "\tret");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:183:6
[INFO] [stdout]     |
[INFO] [stdout] 183 |                     write!(il, " {expr}");
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:185:5
[INFO] [stdout]     |
[INFO] [stdout] 185 |                 write!(il, "\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:191:5
[INFO] [stdout]     |
[INFO] [stdout] 191 |                 write!(il, "\tjnz {cond}, {branch}, {merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:192:5
[INFO] [stdout]     |
[INFO] [stdout] 192 |                 write!(il, "{branch}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:196:5
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 write!(il, "{merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 |                 write!(il, "{check}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:204:5
[INFO] [stdout]     |
[INFO] [stdout] 204 |                 write!(il, "\tjnz {cond}, {branch}, {merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:205:5
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 write!(il, "{branch}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:209:5
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 write!(il, "\tjmp {check}");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:210:5
[INFO] [stdout]     |
[INFO] [stdout] 210 |                 write!(il, "{merge}\n");
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:230:3
[INFO] [stdout]     |
[INFO] [stdout] 230 |         write!(il, "extern function ");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:232:4
[INFO] [stdout]     |
[INFO] [stdout] 232 |             write!(il, "{ret_ty} ");
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:234:3
[INFO] [stdout]     |
[INFO] [stdout] 234 |         write!(il, "${} (", self.name);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:236:4
[INFO] [stdout]     |
[INFO] [stdout] 236 |             write!(il, "{} {}, ", param.ty, param.name);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/translation/ast.rs:238:3
[INFO] [stdout]     |
[INFO] [stdout] 238 |         write!(il, ") {{\n\n");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing
[INFO] [stdout]   --> src/types.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_scalar(ty: &str, span: Range<usize>) -> Result<Scalar, SemanticError> {
[INFO] [stdout]    |                         ^^^^ this lifetime flows to the output      ------------- the lifetime gets resolved as `'_`
[INFO] [stdout]    |
[INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub fn parse_scalar(ty: &str, span: Range<usize>) -> Result<Scalar, SemanticError<'_>> {
[INFO] [stdout]    |                                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.67s
[INFO] running `Command { std: "docker" "inspect" "a544507342b29f6749b68a8b1fc983251c3b6ab9c62d63c7d86894f08d8f45dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a544507342b29f6749b68a8b1fc983251c3b6ab9c62d63c7d86894f08d8f45dd", kill_on_drop: false }`
[INFO] [stdout] a544507342b29f6749b68a8b1fc983251c3b6ab9c62d63c7d86894f08d8f45dd
