[INFO] cloning repository https://github.com/KuangjuX/minigo
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/KuangjuX/minigo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKuangjuX%2Fminigo", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKuangjuX%2Fminigo'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0f24a5ec8583a5eff953bc91ad43a1d14bcd4188
[INFO] checking KuangjuX/minigo against master#b286722878e18db29a7fbe672be7c4d3b02e8e4d for pr-127655
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKuangjuX%2Fminigo" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/KuangjuX/minigo on toolchain b286722878e18db29a7fbe672be7c4d3b02e8e4d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b286722878e18db29a7fbe672be7c4d3b02e8e4d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/KuangjuX/minigo
[INFO] finished tweaking git repo https://github.com/KuangjuX/minigo
[INFO] tweaked toml for git repo https://github.com/KuangjuX/minigo written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/KuangjuX/minigo 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" "+b286722878e18db29a7fbe672be7c4d3b02e8e4d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded llvm-sys v140.0.3
[INFO] [stderr]   Downloaded llvm-ir v0.8.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+b286722878e18db29a7fbe672be7c4d3b02e8e4d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d86cbb13b63b6add3a8ad3073a88837994fbcc1d781513dd0d33aac66f0ed5c8
[INFO] running `Command { std: "docker" "start" "-a" "d86cbb13b63b6add3a8ad3073a88837994fbcc1d781513dd0d33aac66f0ed5c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d86cbb13b63b6add3a8ad3073a88837994fbcc1d781513dd0d33aac66f0ed5c8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d86cbb13b63b6add3a8ad3073a88837994fbcc1d781513dd0d33aac66f0ed5c8", kill_on_drop: false }`
[INFO] [stdout] d86cbb13b63b6add3a8ad3073a88837994fbcc1d781513dd0d33aac66f0ed5c8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+b286722878e18db29a7fbe672be7c4d3b02e8e4d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a71d02b64acb6c84f96cb3f82126209a0f5f54a561edf6c1cd5244fd59e838d8
[INFO] running `Command { std: "docker" "start" "-a" "a71d02b64acb6c84f96cb3f82126209a0f5f54a561edf6c1cd5244fd59e838d8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling syn v1.0.99
[INFO] [stderr]    Compiling serde_derive v1.0.144
[INFO] [stderr]    Compiling serde v1.0.144
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling indexmap v1.9.1
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling lock_api v0.4.8
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling anyhow v1.0.62
[INFO] [stderr]     Checking ryu v1.0.11
[INFO] [stderr]     Checking smallvec v1.9.0
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]    Compiling serde_json v1.0.85
[INFO] [stderr]     Checking traitobject v0.1.0
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]    Compiling llvm-ir v0.8.2
[INFO] [stderr]     Checking iana-time-zone v0.1.46
[INFO] [stderr]     Checking itoa v1.0.3
[INFO] [stderr]     Checking unsafe-any v0.4.2
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking thread-id v4.0.0
[INFO] [stderr]     Checking typemap v0.3.3
[INFO] [stderr]     Checking either v1.8.0
[INFO] [stderr]     Checking arc-swap v1.5.1
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking bit_field v0.10.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]     Checking ordered-float v2.10.0
[INFO] [stderr]     Checking chrono v0.4.22
[INFO] [stderr]    Compiling regex v1.6.0
[INFO] [stderr]    Compiling llvm-sys v140.0.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.32
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]     Checking thiserror v1.0.32
[INFO] [stderr]     Checking serde-value v0.7.0
[INFO] [stderr]     Checking serde_yaml v0.8.26
[INFO] [stderr]     Checking log4rs v1.1.1
[INFO] [stderr]     Checking minigo v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |             /// Output assemble file
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |             asm_file: RefCell::new(asm),
[INFO] [stdout]    |             --------------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |                         /// All function in ir
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47 |                         funcs: VecDeque::new(),
[INFO] [stdout]    |                         ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                         /// All global variable in ir
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |                         vars: VecDeque::new(),
[INFO] [stdout]    |                         --------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:42:13
[INFO] [stdout]    |
[INFO] [stdout] 42 |             /// Output assemble file
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 43 |             asm_file: RefCell::new(asm),
[INFO] [stdout]    |             --------------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Debug`
[INFO] [stdout]  --> src/codegen/expr.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PhysicalReg`
[INFO] [stdout]   --> src/codegen/mod.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use reg::{ PhysicalRegs, PhysicalReg };
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:46:25
[INFO] [stdout]    |
[INFO] [stdout] 46 |                         /// All function in ir
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 47 |                         funcs: VecDeque::new(),
[INFO] [stdout]    |                         ---------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `name::Name`
[INFO] [stdout]  --> src/utils.rs:1:60
[INFO] [stdout]   |
[INFO] [stdout] 1 | use llvm_ir::{ Type, TypeRef, Operand, constant::Constant, name::Name };
[INFO] [stdout]   |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> src/codegen/program.rs:48:25
[INFO] [stdout]    |
[INFO] [stdout] 48 |                         /// All global variable in ir
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 49 |                         vars: VecDeque::new(),
[INFO] [stdout]    |                         --------------------- rustdoc does not generate documentation for expression fields
[INFO] [stdout]    |
[INFO] [stdout]    = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StackVar`
[INFO] [stdout]   --> src/ir/mod.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use virtual_reg::{VirtualReg, StackVar, RegVar};
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Debug`
[INFO] [stdout]  --> src/codegen/expr.rs:1:16
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PhysicalReg`
[INFO] [stdout]   --> src/codegen/mod.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub use reg::{ PhysicalRegs, PhysicalReg };
[INFO] [stdout]    |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `name::Name`
[INFO] [stdout]  --> src/utils.rs:1:60
[INFO] [stdout]   |
[INFO] [stdout] 1 | use llvm_ir::{ Type, TypeRef, Operand, constant::Constant, name::Name };
[INFO] [stdout]   |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StackVar`
[INFO] [stdout]   --> src/ir/mod.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub use virtual_reg::{VirtualReg, StackVar, RegVar};
[INFO] [stdout]    |                                   ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg`
[INFO] [stdout]   --> src/codegen/func.rs:86:37
[INFO] [stdout]    |
[INFO] [stdout] 86 |                     VirtualReg::Reg(reg) => { num += 1 }
[INFO] [stdout]    |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_reg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg`
[INFO] [stdout]   --> src/codegen/func.rs:86:37
[INFO] [stdout]    |
[INFO] [stdout] 86 |                     VirtualReg::Reg(reg) => { num += 1 }
[INFO] [stdout]    |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_reg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog_inner`
[INFO] [stdout]    --> src/codegen/expr.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub(crate) fn handle_alloca(&self, prog_inner: &mut ProgInner, func: &Function, inst: &Alloca) -> Result<()> {
[INFO] [stdout]     |                                        ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prog_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg`
[INFO] [stdout]    --> src/codegen/expr.rs:443:37
[INFO] [stdout]     |
[INFO] [stdout] 443 |                     VirtualReg::Reg(reg) => {
[INFO] [stdout]     |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stack`
[INFO] [stdout]    --> src/codegen/expr.rs:577:43
[INFO] [stdout]     |
[INFO] [stdout] 577 |                         VirtualReg::Stack(stack) => {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog_inner`
[INFO] [stdout]    --> src/codegen/expr.rs:333:40
[INFO] [stdout]     |
[INFO] [stdout] 333 |     pub(crate) fn handle_alloca(&self, prog_inner: &mut ProgInner, func: &Function, inst: &Alloca) -> Result<()> {
[INFO] [stdout]     |                                        ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prog_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reg`
[INFO] [stdout]    --> src/codegen/expr.rs:443:37
[INFO] [stdout]     |
[INFO] [stdout] 443 |                     VirtualReg::Reg(reg) => {
[INFO] [stdout]     |                                     ^^^ help: if this is intentional, prefix it with an underscore: `_reg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]   --> src/utils.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 |         &Type::IntegerType { bits } => {
[INFO] [stdout]    |                              ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/utils.rs:32:49
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 Constant::GlobalReference{name, ty} => {
[INFO] [stdout]    |                                                 ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/utils.rs:38:37
[INFO] [stdout]    |
[INFO] [stdout] 38 |         Operand::LocalOperand{name, ty} => {
[INFO] [stdout]    |                                     ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stack`
[INFO] [stdout]    --> src/codegen/expr.rs:577:43
[INFO] [stdout]     |
[INFO] [stdout] 577 |                         VirtualReg::Stack(stack) => {
[INFO] [stdout]     |                                           ^^^^^ help: if this is intentional, prefix it with an underscore: `_stack`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `command`
[INFO] [stdout]   --> src/elf.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |             let command = Command::new(ld)
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/elf.rs:55:19
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn run_linker(input: &str, output: &str) {
[INFO] [stdout]    |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog`
[INFO] [stdout]   --> src/ir/virtual_reg.rs:70:39
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) fn free_reg_var(&self, prog: &Program) {
[INFO] [stdout]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_prog`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]   --> src/utils.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 |         &Type::IntegerType { bits } => {
[INFO] [stdout]    |                              ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog_inner`
[INFO] [stdout]    --> src/ir/virtual_reg.rs:118:39
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub(crate) fn insert_virt_reg_var(prog_inner: &mut ProgInner, func: &Function, name: Name, reg_var: RegVar) {
[INFO] [stdout]     |                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prog_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/utils.rs:32:49
[INFO] [stdout]    |
[INFO] [stdout] 32 |                 Constant::GlobalReference{name, ty} => {
[INFO] [stdout]    |                                                 ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/utils.rs:38:37
[INFO] [stdout]    |
[INFO] [stdout] 38 |         Operand::LocalOperand{name, ty} => {
[INFO] [stdout]    |                                     ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/ir/mod.rs:55:60
[INFO] [stdout]    |
[INFO] [stdout] 55 |                     if let Constant::GlobalReference{name, ty} = addr {
[INFO] [stdout]    |                                                            ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]   --> src/ir/mod.rs:73:52
[INFO] [stdout]    |
[INFO] [stdout] 73 | ...                   &Constant::Int{bits, value} => {
[INFO] [stdout]    |                                      ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr_space`
[INFO] [stdout]    --> src/ir/mod.rs:102:46
[INFO] [stdout]     |
[INFO] [stdout] 102 |             Type::PointerType{ pointee_type, addr_space } => {
[INFO] [stdout]     |                                              ^^^^^^^^^^ help: try ignoring the field: `addr_space: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]    --> src/ir/mod.rs:105:40
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     Type::IntegerType{ bits } => {
[INFO] [stdout]     |                                        ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_elements`
[INFO] [stdout]    --> src/ir/mod.rs:120:51
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     Type::ArrayType{element_type, num_elements} => {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ help: try ignoring the field: `num_elements: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]    --> src/ir/mod.rs:123:49
[INFO] [stdout]     |
[INFO] [stdout] 123 | ...                   &Type::IntegerType{ bits} => {
[INFO] [stdout]     |                                           ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pointee_type`
[INFO] [stdout]    --> src/ir/mod.rs:136:39
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     Type::PointerType{pointee_type, addr_space} => {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^ help: try ignoring the field: `pointee_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr_space`
[INFO] [stdout]    --> src/ir/mod.rs:136:53
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     Type::PointerType{pointee_type, addr_space} => {
[INFO] [stdout]     |                                                     ^^^^^^^^^^ help: try ignoring the field: `addr_space: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `command`
[INFO] [stdout]   --> src/elf.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 58 |             let command = Command::new(ld)
[INFO] [stdout]    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `input`
[INFO] [stdout]   --> src/elf.rs:55:19
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn run_linker(input: &str, output: &str) {
[INFO] [stdout]    |                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_input`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Global` and `Local` are never constructed
[INFO] [stdout]  --> src/codegen/var.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum VarType {
[INFO] [stdout]   |          ------- variants in this enum
[INFO] [stdout] 6 |     Global,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 7 |     Local,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `VarType` 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: variant `Struct` is never constructed
[INFO] [stdout]   --> src/codegen/var.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum Ty {
[INFO] [stdout]    |          -- variant in this enum
[INFO] [stdout] 17 |     Num,
[INFO] [stdout] 18 |     Struct,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Ty` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_local` is never read
[INFO] [stdout]   --> src/codegen/var.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Var {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub(crate) is_local: bool,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Var` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ret_ty` is never read
[INFO] [stdout]   --> src/codegen/func.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Function {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub(crate) ret_ty: Ty,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CALLER_SAVED_REGS` is never used
[INFO] [stdout]  --> src/codegen/reg.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub static CALLER_SAVED_REGS: [&str; 16] = [
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CALLEE_SAVED_REGD` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static CALLEE_SAVED_REGD: [&str; 13] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_physical_reg` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl ProgInner {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub(crate) fn free_physical_reg(&mut self, name: String) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_physical_name` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl PhysicalRegs {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub(crate) fn free_physical_name(&mut self, name: String) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     RegNotFoundErr{ err: String },
[INFO] [stdout]    |     --------------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 |     LabelNotFoundErr{ err: String },
[INFO] [stdout]    |     ----------------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     ParseErr{ err: String },
[INFO] [stdout]    |     --------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     DefaultErr{ err: String }
[INFO] [stdout]    |     ----------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog`
[INFO] [stdout]   --> src/ir/virtual_reg.rs:70:39
[INFO] [stdout]    |
[INFO] [stdout] 70 |     pub(crate) fn free_reg_var(&self, prog: &Program) {
[INFO] [stdout]    |                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_prog`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RegAllocateErr` is never constructed
[INFO] [stdout]   --> src/codegen/error.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Error {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] 19 |     RegAllocateErr{ err: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` 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 `align_to` is never used
[INFO] [stdout]  --> src/utils.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn align_to(size: usize, align: usize) -> usize {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type` is never used
[INFO] [stdout]   --> src/utils.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn parse_type(rawty: &TypeRef) -> Result<(Ty, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Linker` is never constructed
[INFO] [stdout]  --> src/elf.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Linker {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_linker` is never used
[INFO] [stdout]   --> src/elf.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn run_linker(input: &str, output: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_ld` is never used
[INFO] [stdout]   --> src/elf.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn find_ld() -> Option<String> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_libpath` is never used
[INFO] [stdout]    --> src/elf.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn find_libpath() -> Option<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `size` is never read
[INFO] [stdout]   --> src/ir/virtual_reg.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct StackVar {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub size: usize
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StackVar` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/ir/virtual_reg.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RegVar {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 23 |     /// physical register index
[INFO] [stdout] 24 |     pub id: usize,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RegVar` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_reg_var` is never used
[INFO] [stdout]   --> src/ir/virtual_reg.rs:70:19
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl RegVar {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 70 |     pub(crate) fn free_reg_var(&self, prog: &Program) {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `prog_inner`
[INFO] [stdout]    --> src/ir/virtual_reg.rs:118:39
[INFO] [stdout]     |
[INFO] [stdout] 118 |     pub(crate) fn insert_virt_reg_var(prog_inner: &mut ProgInner, func: &Function, name: Name, reg_var: RegVar) {
[INFO] [stdout]     |                                       ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_prog_inner`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ty`
[INFO] [stdout]   --> src/ir/mod.rs:55:60
[INFO] [stdout]    |
[INFO] [stdout] 55 |                     if let Constant::GlobalReference{name, ty} = addr {
[INFO] [stdout]    |                                                            ^^ help: try ignoring the field: `ty: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]   --> src/ir/mod.rs:73:52
[INFO] [stdout]    |
[INFO] [stdout] 73 | ...                   &Constant::Int{bits, value} => {
[INFO] [stdout]    |                                      ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr_space`
[INFO] [stdout]    --> src/ir/mod.rs:102:46
[INFO] [stdout]     |
[INFO] [stdout] 102 |             Type::PointerType{ pointee_type, addr_space } => {
[INFO] [stdout]     |                                              ^^^^^^^^^^ help: try ignoring the field: `addr_space: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]    --> src/ir/mod.rs:105:40
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     Type::IntegerType{ bits } => {
[INFO] [stdout]     |                                        ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `num_elements`
[INFO] [stdout]    --> src/ir/mod.rs:120:51
[INFO] [stdout]     |
[INFO] [stdout] 120 |                     Type::ArrayType{element_type, num_elements} => {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^ help: try ignoring the field: `num_elements: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bits`
[INFO] [stdout]    --> src/ir/mod.rs:123:49
[INFO] [stdout]     |
[INFO] [stdout] 123 | ...                   &Type::IntegerType{ bits} => {
[INFO] [stdout]     |                                           ^^^^ help: try ignoring the field: `bits: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pointee_type`
[INFO] [stdout]    --> src/ir/mod.rs:136:39
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     Type::PointerType{pointee_type, addr_space} => {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^ help: try ignoring the field: `pointee_type: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `addr_space`
[INFO] [stdout]    --> src/ir/mod.rs:136:53
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     Type::PointerType{pointee_type, addr_space} => {
[INFO] [stdout]     |                                                     ^^^^^^^^^^ help: try ignoring the field: `addr_space: _`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> src/ir/mod.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         drop(inner);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&mut ProgInner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 228 -         drop(inner);
[INFO] [stdout] 228 +         let _ = inner;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Global` and `Local` are never constructed
[INFO] [stdout]  --> src/codegen/var.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum VarType {
[INFO] [stdout]   |          ------- variants in this enum
[INFO] [stdout] 6 |     Global,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 7 |     Local,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `VarType` 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: variant `Struct` is never constructed
[INFO] [stdout]   --> src/codegen/var.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub enum Ty {
[INFO] [stdout]    |          -- variant in this enum
[INFO] [stdout] 17 |     Num,
[INFO] [stdout] 18 |     Struct,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Ty` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `is_local` is never read
[INFO] [stdout]   --> src/codegen/var.rs:55:16
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct Var {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub(crate) is_local: bool,
[INFO] [stdout]    |                ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Var` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ret_ty` is never read
[INFO] [stdout]   --> src/codegen/func.rs:27:16
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Function {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub(crate) ret_ty: Ty,
[INFO] [stdout]    |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CALLER_SAVED_REGS` is never used
[INFO] [stdout]  --> src/codegen/reg.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub static CALLER_SAVED_REGS: [&str; 16] = [
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `CALLEE_SAVED_REGD` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:10:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub static CALLEE_SAVED_REGD: [&str; 13] = [
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_physical_reg` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:23:19
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl ProgInner {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub(crate) fn free_physical_reg(&mut self, name: String) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_physical_name` is never used
[INFO] [stdout]   --> src/codegen/reg.rs:93:19
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl PhysicalRegs {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 93 |     pub(crate) fn free_physical_name(&mut self, name: String) -> bool {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:20:21
[INFO] [stdout]    |
[INFO] [stdout] 20 |     RegNotFoundErr{ err: String },
[INFO] [stdout]    |     --------------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:21:23
[INFO] [stdout]    |
[INFO] [stdout] 21 |     LabelNotFoundErr{ err: String },
[INFO] [stdout]    |     ----------------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:22:15
[INFO] [stdout]    |
[INFO] [stdout] 22 |     ParseErr{ err: String },
[INFO] [stdout]    |     --------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `err` is never read
[INFO] [stdout]   --> src/codegen/error.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |     DefaultErr{ err: String }
[INFO] [stdout]    |     ----------  ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `RegAllocateErr` is never constructed
[INFO] [stdout]   --> src/codegen/error.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum Error {
[INFO] [stdout]    |          ----- variant in this enum
[INFO] [stdout] 19 |     RegAllocateErr{ err: String },
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` 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 `align_to` is never used
[INFO] [stdout]  --> src/utils.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub fn align_to(size: usize, align: usize) -> usize {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_type` is never used
[INFO] [stdout]   --> src/utils.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub fn parse_type(rawty: &TypeRef) -> Result<(Ty, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Linker` is never constructed
[INFO] [stdout]  --> src/elf.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct Linker {
[INFO] [stdout]   |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `run_linker` is never used
[INFO] [stdout]   --> src/elf.rs:55:8
[INFO] [stdout]    |
[INFO] [stdout] 55 | pub fn run_linker(input: &str, output: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_ld` is never used
[INFO] [stdout]   --> src/elf.rs:95:4
[INFO] [stdout]    |
[INFO] [stdout] 95 | fn find_ld() -> Option<String> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_libpath` is never used
[INFO] [stdout]    --> src/elf.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn find_libpath() -> Option<String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `size` is never read
[INFO] [stdout]   --> src/ir/virtual_reg.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct StackVar {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 17 |     pub size: usize
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StackVar` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `id` is never read
[INFO] [stdout]   --> src/ir/virtual_reg.rs:24:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct RegVar {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] 23 |     /// physical register index
[INFO] [stdout] 24 |     pub id: usize,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `RegVar` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `free_reg_var` is never used
[INFO] [stdout]   --> src/ir/virtual_reg.rs:70:19
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl RegVar {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] 70 |     pub(crate) fn free_reg_var(&self, prog: &Program) {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 49 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing
[INFO] [stdout]    --> src/ir/mod.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         drop(inner);
[INFO] [stdout]     |         ^^^^^-----^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `&mut ProgInner`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_references)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 228 -         drop(inner);
[INFO] [stdout] 228 +         let _ = inner;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 49 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.89s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: traitobject v0.1.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "a71d02b64acb6c84f96cb3f82126209a0f5f54a561edf6c1cd5244fd59e838d8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a71d02b64acb6c84f96cb3f82126209a0f5f54a561edf6c1cd5244fd59e838d8", kill_on_drop: false }`
[INFO] [stdout] a71d02b64acb6c84f96cb3f82126209a0f5f54a561edf6c1cd5244fd59e838d8
[INFO] checking KuangjuX/minigo against try#6a5749073f2ebf59d7740d30e50a932a85756ee7 for pr-127655
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FKuangjuX%2Fminigo" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/KuangjuX/minigo on toolchain 6a5749073f2ebf59d7740d30e50a932a85756ee7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6a5749073f2ebf59d7740d30e50a932a85756ee7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/KuangjuX/minigo
[INFO] finished tweaking git repo https://github.com/KuangjuX/minigo
[INFO] tweaked toml for git repo https://github.com/KuangjuX/minigo written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/KuangjuX/minigo 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" "+6a5749073f2ebf59d7740d30e50a932a85756ee7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+6a5749073f2ebf59d7740d30e50a932a85756ee7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f313e77f41317e0c84b378c1c49f0989680b842f9636ac97ea2e270e4427b12a
[INFO] running `Command { std: "docker" "start" "-a" "f313e77f41317e0c84b378c1c49f0989680b842f9636ac97ea2e270e4427b12a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f313e77f41317e0c84b378c1c49f0989680b842f9636ac97ea2e270e4427b12a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f313e77f41317e0c84b378c1c49f0989680b842f9636ac97ea2e270e4427b12a", kill_on_drop: false }`
[INFO] [stdout] f313e77f41317e0c84b378c1c49f0989680b842f9636ac97ea2e270e4427b12a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:dff56e7819e73ed36160586b3445e93eb0be776c16704aeeded9c3fb668b2384" "/opt/rustwide/cargo-home/bin/cargo" "+6a5749073f2ebf59d7740d30e50a932a85756ee7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 57e8b1e9c101e674df834430a9fc94e71b4d5f3d3ef42a29aeec1d6005bde9ad
[INFO] running `Command { std: "docker" "start" "-a" "57e8b1e9c101e674df834430a9fc94e71b4d5f3d3ef42a29aeec1d6005bde9ad", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.43
[INFO] [stderr]    Compiling unicode-ident v1.0.3
[INFO] [stderr]    Compiling quote v1.0.21
[INFO] [stderr]    Compiling syn v1.0.99
[INFO] [stderr]    Compiling serde_derive v1.0.144
[INFO] [stderr]    Compiling serde v1.0.144
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling cc v1.0.73
[INFO] [stderr]    Compiling indexmap v1.9.1
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling lock_api v0.4.8
[INFO] [stderr]    Compiling parking_lot_core v0.9.3
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling serde_json v1.0.85
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]    Compiling anyhow v1.0.62
[INFO] [stderr]     Checking smallvec v1.9.0
[INFO] [stderr]     Checking traitobject v0.1.0
[INFO] [stderr]     Checking ryu v1.0.11
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking itoa v1.0.3
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]    Compiling llvm-ir v0.8.2
[INFO] [stderr]     Checking iana-time-zone v0.1.46
[INFO] [stderr]     Checking unsafe-any v0.4.2
[INFO] [stderr]     Checking thread-id v4.0.0
[INFO] [stderr]     Checking typemap v0.3.3
[INFO] [stderr]     Checking either v1.8.0
[INFO] [stderr]     Checking log-mdc v0.1.0
[INFO] [stderr]     Checking arc-swap v1.5.1
[INFO] [stdout] error: defaults for type parameters are only allowed in `struct`, `enum`, `type`, or `trait` definitions
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/typemap-0.3.3/src/lib.rs:185:18
[INFO] [stdout]     |
[INFO] [stdout] 185 | impl<'a, K: Key, A: ?Sized + UnsafeAnyExt + 'a = UnsafeAny> Entry<'a, K, A> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking bit_field v0.10.1
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr] error: could not compile `typemap` (lib) due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "57e8b1e9c101e674df834430a9fc94e71b4d5f3d3ef42a29aeec1d6005bde9ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57e8b1e9c101e674df834430a9fc94e71b4d5f3d3ef42a29aeec1d6005bde9ad", kill_on_drop: false }`
[INFO] [stdout] 57e8b1e9c101e674df834430a9fc94e71b4d5f3d3ef42a29aeec1d6005bde9ad
