[INFO] cloning repository https://github.com/he-andy/etac [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/he-andy/etac" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhe-andy%2Fetac", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhe-andy%2Fetac'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] fe3a34da3b0adfb908014f800eafcc05523e27be [INFO] testing he-andy/etac against beta-2026-04-21 for beta-1.96-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhe-andy%2Fetac" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] [stderr] Updating files: 37% (4400/11596) Updating files: 38% (4407/11596) Updating files: 39% (4523/11596) Updating files: 40% (4639/11596) Updating files: 41% (4755/11596) Updating files: 42% (4871/11596) Updating files: 43% (4987/11596) Updating files: 43% (5094/11596) Updating files: 44% (5103/11596) Updating files: 44% (5181/11596) Updating files: 45% (5219/11596) Updating files: 45% (5236/11596) Updating files: 46% (5335/11596) Updating files: 47% (5451/11596) Updating files: 48% (5567/11596) Updating files: 48% (5593/11596) Updating files: 49% (5683/11596) Updating files: 50% (5798/11596) Updating files: 51% (5914/11596) Updating files: 52% (6030/11596) Updating files: 53% (6146/11596) Updating files: 53% (6218/11596) Updating files: 54% (6262/11596) Updating files: 55% (6378/11596) Updating files: 56% (6494/11596) Updating files: 56% (6608/11596) Updating files: 57% (6610/11596) Updating files: 58% (6726/11596) Updating files: 59% (6842/11596) Updating files: 59% (6913/11596) Updating files: 60% (6958/11596) Updating files: 61% (7074/11596) Updating files: 62% (7190/11596) Updating files: 63% (7306/11596) Updating files: 64% (7422/11596) Updating files: 65% (7538/11596) Updating files: 66% (7654/11596) Updating files: 67% (7770/11596) Updating files: 68% (7886/11596) Updating files: 69% (8002/11596) Updating files: 70% (8118/11596) Updating files: 71% (8234/11596) Updating files: 72% (8350/11596) Updating files: 73% (8466/11596) Updating files: 74% (8582/11596) Updating files: 75% (8697/11596) Updating files: 76% (8813/11596) Updating files: 77% (8929/11596) Updating files: 78% (9045/11596) Updating files: 79% (9161/11596) Updating files: 80% (9277/11596) Updating files: 81% (9393/11596) Updating files: 82% (9509/11596) Updating files: 83% (9625/11596) Updating files: 84% (9741/11596) Updating files: 85% (9857/11596) Updating files: 86% (9973/11596) Updating files: 87% (10089/11596) Updating files: 88% (10205/11596) Updating files: 89% (10321/11596) Updating files: 90% (10437/11596) Updating files: 91% (10553/11596) Updating files: 92% (10669/11596) Updating files: 93% (10785/11596) Updating files: 94% (10901/11596) Updating files: 95% (11017/11596) Updating files: 96% (11133/11596) Updating files: 97% (11249/11596) Updating files: 98% (11365/11596) Updating files: 99% (11481/11596) Updating files: 100% (11596/11596) Updating files: 100% (11596/11596), done. [INFO] started tweaking git repo https://github.com/he-andy/etac [INFO] finished tweaking git repo https://github.com/he-andy/etac [INFO] tweaked toml for git repo https://github.com/he-andy/etac written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/he-andy/etac on toolchain beta-2026-04-21 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/he-andy/etac 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `edition` is set on binary `etac` which is deprecated [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3e03fd1879b1930777834ea39cc0ab44d583e1fbd24c665f59aa80e7fcc19c1e [INFO] running `Command { std: "docker" "start" "-a" "3e03fd1879b1930777834ea39cc0ab44d583e1fbd24c665f59aa80e7fcc19c1e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3e03fd1879b1930777834ea39cc0ab44d583e1fbd24c665f59aa80e7fcc19c1e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3e03fd1879b1930777834ea39cc0ab44d583e1fbd24c665f59aa80e7fcc19c1e", kill_on_drop: false }` [INFO] [stdout] 3e03fd1879b1930777834ea39cc0ab44d583e1fbd24c665f59aa80e7fcc19c1e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5d4167f873c3edb2cbe49fb1ae83e94625963d1a5ba04fce6cba9a2765902e70 [INFO] running `Command { std: "docker" "start" "-a" "5d4167f873c3edb2cbe49fb1ae83e94625963d1a5ba04fce6cba9a2765902e70", kill_on_drop: false }` [INFO] [stderr] warning: `edition` is set on binary `etac` which is deprecated [INFO] [stderr] Compiling proc-macro2 v1.0.57 [INFO] [stderr] Compiling quote v1.0.27 [INFO] [stderr] Compiling unicode-ident v1.0.8 [INFO] [stderr] Compiling thiserror v1.0.40 [INFO] [stderr] Compiling ucd-trie v0.1.5 [INFO] [stderr] Compiling once_cell v1.17.1 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling regex-syntax v0.7.1 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling ansi_term v0.12.1 [INFO] [stderr] Compiling aho-corasick v1.0.1 [INFO] [stderr] Compiling petgraph v0.6.3 [INFO] [stderr] Compiling syn v2.0.16 [INFO] [stderr] Compiling regex v1.8.1 [INFO] [stderr] Compiling thiserror-impl v1.0.40 [INFO] [stderr] Compiling pest v2.6.0 [INFO] [stderr] Compiling pest_meta v2.6.0 [INFO] [stderr] Compiling pest_generator v2.6.0 [INFO] [stderr] Compiling pest_derive v2.6.0 [INFO] [stderr] Compiling etac v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `petgraph::dot::Config::NodeNoLabel` [INFO] [stdout] --> src/cfg.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use petgraph::dot::Config::NodeNoLabel; [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 import: `Config` [INFO] [stdout] --> src/cfg.rs:5:21 [INFO] [stdout] | [INFO] [stdout] 5 | use petgraph::dot::{Config, Dot}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cfg` [INFO] [stdout] --> src/eta_irgen.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::cfg; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::function_analysis` [INFO] [stdout] --> src/eta_irgen.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::function_analysis; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::array::Array` [INFO] [stdout] --> src/eta_irgen.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::types::array::Array; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `HIRFuncDecl`, `Id`, `analysis`, `get_next_temp`, and `next_int` [INFO] [stdout] --> src/function_analysis.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | analysis, get_next_temp, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] 3 | ir_types::{Dest, HIRCompUnit, HIRExpr, HIRFuncDecl, HIRStmt, Id}, [INFO] [stdout] | ^^^^^^^^^^^ ^^ [INFO] [stdout] 4 | next_int, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HashSet` [INFO] [stdout] --> src/function_analysis.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | use std::collections::{HashMap, HashSet}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::record::Record` [INFO] [stdout] --> src/ir_types.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::types::record::Record; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::analysis` [INFO] [stdout] --> src/loop_opt.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::analysis; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cfg` [INFO] [stdout] --> src/loop_opt.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::cfg; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cfg::CFGNode` [INFO] [stdout] --> src/loop_opt.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::cfg::CFGNode; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::ir_types::LIRStmt` [INFO] [stdout] --> src/loop_opt.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::ir_types::LIRStmt; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LIRCompUnit` and `LIRFuncDecl` [INFO] [stdout] --> src/loop_opt.rs:7:23 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::ir_types::{LIRCompUnit, LIRFuncDecl}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/loop_opt.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CFGNode`, `graph_from_bblocks`, and `instructions` [INFO] [stdout] --> src/regalloc.rs:3:11 [INFO] [stdout] | [INFO] [stdout] 3 | cfg::{graph_from_bblocks, CFGNode, Var, CFG}, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] 4 | instructions, next_int, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `petgraph::graph::NodeIndex` [INFO] [stdout] --> src/regalloc.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use petgraph::graph::NodeIndex; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::types::array::Array` [INFO] [stdout] --> src/rho_irgen.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::types::array::Array; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32::consts::E` [INFO] [stdout] --> src/rho_typechecker.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::f32::consts::E; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ssa` [INFO] [stdout] --> src/translate.rs:8:45 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::{cfg, next_int, regalloc, reset, ssa}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `copyprop` and `loop_opt` [INFO] [stdout] --> src/translate.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::{copyprop, dce, loop_opt}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::cfg::Var` [INFO] [stdout] --> src/translate_types.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::cfg::Var; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::cell::RefCell` [INFO] [stdout] --> src/types/assignment.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::cell::RefCell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::Term` [INFO] [stdout] --> src/types/record_field.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use super::Term; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `used_labels` [INFO] [stdout] --> src/cfg.rs:614:13 [INFO] [stdout] | [INFO] [stdout] 614 | let used_labels = code [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_used_labels` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/dce.rs:98:17 [INFO] [stdout] | [INFO] [stdout] 98 | let a = defsite.insert(def.to_string(), stmt.get_idx()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/eta_irgen.rs:144:77 [INFO] [stdout] | [INFO] [stdout] 144 | if let l_value::LValue::TypePair((_, VarType::Array(a)), _) = [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exp` [INFO] [stdout] --> src/ir_types.rs:456:54 [INFO] [stdout] | [INFO] [stdout] 456 | if let Primary::ArrayIndex(ArrayIndex::Index(ai, ref exp, _, _)) = &expr { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exp` [INFO] [stdout] --> src/ir_types.rs:463:56 [INFO] [stdout] | [INFO] [stdout] 463 | if let Primary::RecordField(RecordField::Field(rf, exp, _, _)) = expr { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_exp` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cu` [INFO] [stdout] --> src/ir_types.rs:809:50 [INFO] [stdout] | [INFO] [stdout] 809 | pub fn trans_record(r_fields: Vec>, cu: &mut HIRCompUnit) -> HIRExpr { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/ir_types.rs:1349:16 [INFO] [stdout] | [INFO] [stdout] 1349 | fn trans_break(b: statement::Break, cu: &mut HIRCompUnit, bl: String) -> HIRStmt { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cu` [INFO] [stdout] --> src/ir_types.rs:1349:37 [INFO] [stdout] | [INFO] [stdout] 1349 | fn trans_break(b: statement::Break, cu: &mut HIRCompUnit, bl: String) -> HIRStmt { [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_cu` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cfg` [INFO] [stdout] --> src/loop_opt.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | cfg: &mut CFG>, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_cfg` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `loops` [INFO] [stdout] --> src/loop_opt.rs:111:5 [INFO] [stdout] | [INFO] [stdout] 111 | loops: &Vec>, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_loops` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `invariants` [INFO] [stdout] --> src/loop_opt.rs:112:5 [INFO] [stdout] | [INFO] [stdout] 112 | invariants: &Vec>, [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_invariants` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> src/rho_irgen.rs:142:77 [INFO] [stdout] | [INFO] [stdout] 142 | if let l_value::LValue::TypePair((_, VarType::Array(a)), _) = [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/ssa.rs:136:21 [INFO] [stdout] | [INFO] [stdout] 136 | for (k, mut v) in new_nodes { [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `node_weight` [INFO] [stdout] --> src/ssa.rs:82:17 [INFO] [stdout] | [INFO] [stdout] 82 | let node_weight = self.graph.node_weight_mut(node).unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_weight` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/ssa.rs:463:29 [INFO] [stdout] | [INFO] [stdout] 463 | LIRNode::Jump { val, .. } => (), [INFO] [stdout] | ^^^ help: try ignoring the field: `val: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/ssa.rs:483:28 [INFO] [stdout] | [INFO] [stdout] 483 | LIRNode::Mem { idx, val } => val.rename_phi_temp(), [INFO] [stdout] | ^^^ help: try ignoring the field: `idx: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `idx` [INFO] [stdout] --> src/ssa.rs:484:29 [INFO] [stdout] | [INFO] [stdout] 484 | LIRNode::Name { idx, val } => (), [INFO] [stdout] | ^^^ help: try ignoring the field: `idx: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `val` [INFO] [stdout] --> src/ssa.rs:484:34 [INFO] [stdout] | [INFO] [stdout] 484 | LIRNode::Name { idx, val } => (), [INFO] [stdout] | ^^^ help: try ignoring the field: `val: _` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fnname` [INFO] [stdout] --> src/translate.rs:359:10 [INFO] [stdout] | [INFO] [stdout] 359 | for (fnname, decl) in functions { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_fnname` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rec` [INFO] [stdout] --> src/types/declaration.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 72 | rec: String, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rec` [INFO] [stdout] --> src/types/interface.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 39 | rec: String, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rec` [INFO] [stdout] --> src/types/interface_function.rs:40:62 [INFO] [stdout] | [INFO] [stdout] 40 | fn type_check(&self, _gamma: &mut HashMap, rec: String) -> Result> { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/types/record_field.rs:66:52 [INFO] [stdout] | [INFO] [stdout] 66 | ... if let VarType::Record(r) = gamma.get(k).unwrap().first.clone() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `gamma` [INFO] [stdout] --> src/types/var_type.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | gamma: &mut HashMap, [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_gamma` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rec` [INFO] [stdout] --> src/types/var_type.rs:53:9 [INFO] [stdout] | [INFO] [stdout] 53 | rec: String, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rec` [INFO] [stdout] --> src/types.rs:209:9 [INFO] [stdout] | [INFO] [stdout] 209 | rec: String, [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rec` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/types.rs:258:28 [INFO] [stdout] | [INFO] [stdout] 258 | if let VarType::Record(r) = &vartype { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `intersection` is never used [INFO] [stdout] --> src/analysis.rs:17:4 [INFO] [stdout] | [INFO] [stdout] 17 | fn intersection(a: &HashSet, b: &HashSet) -> HashSet [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `available_copies_transfer` is never used [INFO] [stdout] --> src/analysis.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn available_copies_transfer( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name`, `size`, `call_count`, and `is_recursive` are never read [INFO] [stdout] --> src/function_analysis.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FunctionAnalysis { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 10 | name: String, [INFO] [stdout] | ^^^^ [INFO] [stdout] 11 | size: usize, [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | call_count: usize, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 13 | is_recursive: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FunctionAnalysis` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `should_inline` is never used [INFO] [stdout] --> src/function_analysis.rs:174:4 [INFO] [stdout] | [INFO] [stdout] 174 | fn should_inline(analysis: &FunctionAnalysis) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `analyze_intervals` is never used [INFO] [stdout] --> src/regalloc.rs:621:4 [INFO] [stdout] | [INFO] [stdout] 621 | fn analyze_intervals(intervals: &Vec<(Var, (i32, i32))>) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `debug_cfg` is never used [INFO] [stdout] --> src/reorder.rs:390:4 [INFO] [stdout] | [INFO] [stdout] 390 | fn debug_cfg(cfg: &Graph, s: &Vec) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_type_from_tpvec` is never used [INFO] [stdout] --> src/types/expr.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn get_type_from_tpvec(s: String, vec: Vec) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `wrap_SSA` should have a snake case name [INFO] [stdout] --> src/cfg.rs:183:12 [INFO] [stdout] | [INFO] [stdout] 183 | pub fn wrap_SSA(&self) -> CFG> { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `wrap_ssa` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/cfg.rs:330:9 [INFO] [stdout] | [INFO] [stdout] 330 | writeln!(out, "{:?}", Dot::with_config(&self.graph, &[])); [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)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 330 | let _ = writeln!(out, "{:?}", Dot::with_config(&self.graph, &[])); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unwrap_SSA` should have a snake case name [INFO] [stdout] --> src/cfg.rs:768:12 [INFO] [stdout] | [INFO] [stdout] 768 | pub fn unwrap_SSA(&self) -> CFG { [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `unwrap_ssa` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Register` instead of cloning the inner type [INFO] [stdout] --> src/regalloc.rs:328:31 [INFO] [stdout] | [INFO] [stdout] 328 | loc::Register(*reg.clone()), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&Register` instead of cloning the inner type [INFO] [stdout] --> src/regalloc.rs:339:31 [INFO] [stdout] | [INFO] [stdout] 339 | loc::Register(*reg.clone()), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `DF` should have a snake case name [INFO] [stdout] --> src/ssa.rs:50:17 [INFO] [stdout] | [INFO] [stdout] 50 | let mut DF: HashSet = cfg [INFO] [stdout] | ^^ help: convert the identifier to snake case: `df` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `etac_emw236` [INFO] [stdout] --> src/main.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use etac_emw236::cfg; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `etac_emw236` [INFO] [stdout] --> src/main.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use etac_emw236::eta_typechecker; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find module or crate `etac_emw236` in this scope [INFO] [stdout] --> src/main.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use etac_emw236::translate::OptOptions; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: cannot find module or crate `etac_emw236` in this scope [INFO] [stdout] --> src/main.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use etac_emw236::translate_types::LIRNode; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `etac_emw236` [INFO] [stdout] --> src/main.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use etac_emw236::rho_typechecker; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `etac_emw236` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use etac_emw236::{ [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved import `etac_emw236` [INFO] [stdout] --> src/main.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use etac_emw236::load_file; [INFO] [stdout] | ^^^^^^^^^^^ use of unresolved module or unlinked crate `etac_emw236` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `etac_emw236`, use `cargo add etac_emw236` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:308:17 [INFO] [stdout] | [INFO] [stdout] 308 | let contents = match load_file(&(source_path.clone() + &filename)) { [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:309:20 [INFO] [stdout] | [INFO] [stdout] 309 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:359:17 [INFO] [stdout] | [INFO] [stdout] 359 | let contents = match load_file(&(source_path.clone() + &filename)) { [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:360:20 [INFO] [stdout] | [INFO] [stdout] 360 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:360:17 [INFO] [stdout] | [INFO] [stdout] 360 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:420:28 [INFO] [stdout] | [INFO] [stdout] 420 | Ok(c) => string_to_file(&out_file, &c), [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:420:25 [INFO] [stdout] | [INFO] [stdout] 420 | Ok(c) => string_to_file(&out_file, &c), [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:434:28 [INFO] [stdout] | [INFO] [stdout] 434 | Ok(c) => string_to_file(&out_file, &c), [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:434:25 [INFO] [stdout] | [INFO] [stdout] 434 | Ok(c) => string_to_file(&out_file, &c), [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:457:28 [INFO] [stdout] | [INFO] [stdout] 457 | Ok(c) => { [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:457:25 [INFO] [stdout] | [INFO] [stdout] 457 | Ok(c) => { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:482:28 [INFO] [stdout] | [INFO] [stdout] 482 | Ok(c) => { [INFO] [stdout] | ^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:482:25 [INFO] [stdout] | [INFO] [stdout] 482 | Ok(c) => { [INFO] [stdout] | ^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:706:13 [INFO] [stdout] | [INFO] [stdout] 706 | let contents = match load_file(&(source_path.clone() + &filename)) { [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:707:16 [INFO] [stdout] | [INFO] [stdout] 707 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `str` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:707:13 [INFO] [stdout] | [INFO] [stdout] 707 | Ok(contents) => contents, [INFO] [stdout] | ^^^^^^^^^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `str` [INFO] [stdout] note: required by a bound in `Ok` [INFO] [stdout] --> /rustc/8489f1adbe1c8f8921cf18b9962cf565237a5489/library/core/src/result.rs:561:4 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `etac` (bin "etac") due to 24 previous errors [INFO] running `Command { std: "docker" "inspect" "5d4167f873c3edb2cbe49fb1ae83e94625963d1a5ba04fce6cba9a2765902e70", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5d4167f873c3edb2cbe49fb1ae83e94625963d1a5ba04fce6cba9a2765902e70", kill_on_drop: false }` [INFO] [stdout] 5d4167f873c3edb2cbe49fb1ae83e94625963d1a5ba04fce6cba9a2765902e70