[INFO] cloning repository https://github.com/Gadersd/ic [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Gadersd/ic" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGadersd%2Fic", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGadersd%2Fic'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 56916fdce6b6931b72e0d5d9a28d9001cb9949ea [INFO] testing Gadersd/ic against beta-2026-01-20 for beta-1.94-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FGadersd%2Fic" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Gadersd/ic [INFO] finished tweaking git repo https://github.com/Gadersd/ic [INFO] tweaked toml for git repo https://github.com/Gadersd/ic written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Gadersd/ic on toolchain beta-2026-01-20 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Gadersd/ic 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-01-20" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 512660be891b10c992912625beb8fc3aaa3cbacd1cca60282fe7cc9fd2c07a35 [INFO] running `Command { std: "docker" "start" "-a" "512660be891b10c992912625beb8fc3aaa3cbacd1cca60282fe7cc9fd2c07a35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "512660be891b10c992912625beb8fc3aaa3cbacd1cca60282fe7cc9fd2c07a35", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "512660be891b10c992912625beb8fc3aaa3cbacd1cca60282fe7cc9fd2c07a35", kill_on_drop: false }` [INFO] [stdout] 512660be891b10c992912625beb8fc3aaa3cbacd1cca60282fe7cc9fd2c07a35 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:98afbf2d16093dec2546ff8915fddc74e65664aa03fc460b3712b1c2c54a33e4" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-01-20" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] eb0650bdb76a30570bdeb050af304d2bd327f7245c5269b077c52b42c5c383f5 [INFO] running `Command { std: "docker" "start" "-a" "eb0650bdb76a30570bdeb050af304d2bd327f7245c5269b077c52b42c5c383f5", kill_on_drop: false }` [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling ic v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | #![feature(box_into_inner)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel [INFO] [stdout] --> src/lib.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(inherent_associated_types)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the feature `inherent_associated_types` is incomplete and may not be safe to use and/or cause compiler crashes [INFO] [stdout] --> src/lib.rs:2:12 [INFO] [stdout] | [INFO] [stdout] 2 | #![feature(inherent_associated_types)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: see issue #8995 for more information [INFO] [stdout] = note: `#[warn(incomplete_features)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/parser.rs:1:22 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::lexical::{self, Token}; [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: `std::str::FromStr` [INFO] [stdout] --> src/parser.rs:784:5 [INFO] [stdout] | [INFO] [stdout] 784 | use std::str::FromStr; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Alphanumeric` and `Duplicator` [INFO] [stdout] --> src/unrust/affine.rs:2:46 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::parser::{self, Node, Constructor, Duplicator, Alphanumeric, Redex, Book}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Operator` [INFO] [stdout] --> src/unrust/affine.rs:3:28 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::numeric::{self, Operator}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/unrust/core.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/unrust/global.rs:2:22 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::numeric::{self, Operator}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/unrust/parse.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::numeric::{self, Operator}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Book`, `Constructor`, `Duplicator`, `Node`, `Redex`, and `self` [INFO] [stdout] --> src/unrust/parse.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::parser::{self, Node, Constructor, Duplicator, Alphanumeric, Redex, Book}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/allocator.rs:283:9 [INFO] [stdout] | [INFO] [stdout] 273 | / loop { [INFO] [stdout] 274 | | let id_range = self.allocator.read().unwrap().allocate_u64s_from_iter(xs.clone()); [INFO] [stdout] 275 | | if let Some( (start_id, end_id) ) = id_range { [INFO] [stdout] 276 | | return (EntityId(start_id), EntityId(end_id)) [INFO] [stdout] ... | [INFO] [stdout] 281 | | } [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 282 | [INFO] [stdout] 283 | panic!(); [INFO] [stdout] | ^^^^^^^^ unreachable statement [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_1` [INFO] [stdout] --> src/runtime.rs:491:14 [INFO] [stdout] | [INFO] [stdout] 491 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_1` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_2` [INFO] [stdout] --> src/runtime.rs:491:21 [INFO] [stdout] | [INFO] [stdout] 491 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `redex` [INFO] [stdout] --> src/runtime.rs:517:31 [INFO] [stdout] | [INFO] [stdout] 517 | fn reduce_void(&mut self, redex: Pair) -> Option<()> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_redex` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_binary` [INFO] [stdout] --> src/runtime.rs:529:13 [INFO] [stdout] | [INFO] [stdout] 529 | let tag_binary = port_binary.get_tag(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_binary` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag` [INFO] [stdout] --> src/runtime.rs:603:13 [INFO] [stdout] | [INFO] [stdout] 603 | let tag = port_1.get_tag(); // tags should be the same [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_tag` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_1` [INFO] [stdout] --> src/runtime.rs:640:14 [INFO] [stdout] | [INFO] [stdout] 640 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_2` [INFO] [stdout] --> src/runtime.rs:640:21 [INFO] [stdout] | [INFO] [stdout] 640 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `address_1` [INFO] [stdout] --> src/runtime.rs:642:14 [INFO] [stdout] | [INFO] [stdout] 642 | let (address_1, address_2) = (port_1.get_value(), port_2.get_value()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `address_2` [INFO] [stdout] --> src/runtime.rs:642:25 [INFO] [stdout] | [INFO] [stdout] 642 | let (address_1, address_2) = (port_1.get_value(), port_2.get_value()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_1` [INFO] [stdout] --> src/runtime.rs:687:14 [INFO] [stdout] | [INFO] [stdout] 687 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_2` [INFO] [stdout] --> src/runtime.rs:687:21 [INFO] [stdout] | [INFO] [stdout] 687 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `address_1` [INFO] [stdout] --> src/runtime.rs:689:14 [INFO] [stdout] | [INFO] [stdout] 689 | let (address_1, address_2) = (port_1.get_value(), port_2.get_value()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_1` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `address_2` [INFO] [stdout] --> src/runtime.rs:689:25 [INFO] [stdout] | [INFO] [stdout] 689 | let (address_1, address_2) = (port_1.get_value(), port_2.get_value()); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_address_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start_id` [INFO] [stdout] --> src/allocator.rs:151:27 [INFO] [stdout] | [INFO] [stdout] 151 | if let Some( (start_id, end_id) ) = id_range { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start_id` [INFO] [stdout] --> src/allocator.rs:196:27 [INFO] [stdout] | [INFO] [stdout] 196 | if let Some( (start_id, end_id) ) = id_range { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_start_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end_id` [INFO] [stdout] --> src/allocator.rs:196:37 [INFO] [stdout] | [INFO] [stdout] 196 | if let Some( (start_id, end_id) ) = id_range { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lexical.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | let mut k = 0; [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: `s` [INFO] [stdout] --> src/lexical.rs:142:66 [INFO] [stdout] | [INFO] [stdout] 142 | parse_fixed_token(&s[i..], token.as_str()).map(|(s, e)| (token, e)) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/lexical.rs:146:66 [INFO] [stdout] | [INFO] [stdout] 146 | parse_fixed_token(&s[i..], token.as_str()).map(|(s, e)| (token, e)) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/lexical.rs:136:9 [INFO] [stdout] | [INFO] [stdout] 136 | let mut k = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tag_2` [INFO] [stdout] --> src/numeric.rs:10:17 [INFO] [stdout] | [INFO] [stdout] 10 | let (tag_1, tag_2) = (port_1.get_tag(), port_2.get_tag()); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_tag_2` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/numeric.rs:219:80 [INFO] [stdout] | [INFO] [stdout] 219 | Numeric::Sym(op) => 22u32 | (( Operator::iter().enumerate().find(|(i, o)| op == o).unwrap().0 as u32) << 5 ), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/affine.rs:67:100 [INFO] [stdout] | [INFO] [stdout] 67 | fn make_function_affine(function: Function, function_names: &BTreeSet, mut namer: &mut UniqueNamer) -> (... [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/unrust/core.rs:203:59 [INFO] [stdout] | [INFO] [stdout] 203 | ... let elements = elements.into_iter().map(|(name, expr)| CoreExpression::from_expression(expr, namer, add_functions, functions,... [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/unrust/core.rs:199:77 [INFO] [stdout] | [INFO] [stdout] 199 | ...ents.iter().enumerate().find(|(i, (name, _))| name == &enum_.struct_.name).map(|(i, _)| i).unwrap(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/unrust/core.rs:156:67 [INFO] [stdout] | [INFO] [stdout] 156 | let elements: Vec<_> = elements.into_iter().map(|(name, expr)| [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/unrust/core.rs:379:28 [INFO] [stdout] | [INFO] [stdout] 379 | elems.sort_by_key(|(n, t)| order.iter().enumerate().find(|(_, no)| no == &n).map(|(i, _)| i).unwrap()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/global.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | let mut namer = UniqueNamer { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/global.rs:92:20 [INFO] [stdout] | [INFO] [stdout] 92 | pub fn to_core(mut self) -> GlobalProgram { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `undefined_vars` [INFO] [stdout] --> src/unrust/check.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | let (program, _, undefined_vars) = program.map_vars( [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_undefined_vars` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `x` [INFO] [stdout] --> src/unrust/check.rs:189:27 [INFO] [stdout] | [INFO] [stdout] 189 | NativeNumber::F24(x) => Ok(()) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:51:13 [INFO] [stdout] | [INFO] [stdout] 51 | let mut functions = HashMap::new(); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/unrust/parse.rs:79:23 [INFO] [stdout] | [INFO] [stdout] 79 | let (program, s) = Self::parse(text_cursor)?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:162:13 [INFO] [stdout] | [INFO] [stdout] 162 | let mut parameters = Vec::with_capacity(self.parameters.len()); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/unrust/parse.rs:620:74 [INFO] [stdout] | [INFO] [stdout] 620 | ..._from(num.s.as_str()).map_err(|e| ParseError::new(s.index, "Unable to parse number".into()))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:776:13 [INFO] [stdout] | [INFO] [stdout] 776 | let mut statements = Vec::with_capacity(self.statements.len()); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:853:13 [INFO] [stdout] | [INFO] [stdout] 853 | let mut elements = Vec::with_capacity(self.elements.len()); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:945:13 [INFO] [stdout] | [INFO] [stdout] 945 | let mut parameters = Vec::with_capacity(self.parameters.len()); [INFO] [stdout] | ----^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:1033:13 [INFO] [stdout] | [INFO] [stdout] 1033 | let mut elements = Vec::with_capacity(self.elements.len()); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `field` [INFO] [stdout] --> src/unrust/parse.rs:1191:58 [INFO] [stdout] | [INFO] [stdout] 1191 | pub fn get_variant_field_index(&self, variant: &str, field: &str) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_field` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:1226:13 [INFO] [stdout] | [INFO] [stdout] 1226 | let mut else_ifs = Vec::with_capacity(self.else_ifs.len()); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:1330:13 [INFO] [stdout] | [INFO] [stdout] 1330 | let mut arguments = Vec::with_capacity(self.arguments.len()); [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/unrust/parse.rs:1468:53 [INFO] [stdout] | [INFO] [stdout] 1468 | let val = text.parse().map_err(|e| ParseError::new(s.index, "Unable to parse alphanumeric".into()))?; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:1489:13 [INFO] [stdout] | [INFO] [stdout] 1489 | let mut cases = Vec::with_capacity(self.cases.len()); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/parse.rs:1579:13 [INFO] [stdout] | [INFO] [stdout] 1579 | let mut cases = Vec::with_capacity(self.cases.len()); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/unrust/lexical.rs:231:9 [INFO] [stdout] | [INFO] [stdout] 231 | let mut k = 0; [INFO] [stdout] | ----^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> src/unrust/lexical.rs:238:66 [INFO] [stdout] | [INFO] [stdout] 238 | parse_fixed_token(&s[i..], token.as_str()).map(|(s, e)| (token, e)) [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `last_token` is assigned to, but never used [INFO] [stdout] --> src/unrust/lexical.rs:229:9 [INFO] [stdout] | [INFO] [stdout] 229 | let mut last_token = None; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_last_token` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/unrust/lexical.rs:231:9 [INFO] [stdout] | [INFO] [stdout] 231 | let mut k = 0; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `last_token` is never read [INFO] [stdout] --> src/unrust/lexical.rs:260:9 [INFO] [stdout] | [INFO] [stdout] 260 | last_token = Some(token.clone()); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0554`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ic` (lib) due to 2 previous errors; 60 warnings emitted [INFO] running `Command { std: "docker" "inspect" "eb0650bdb76a30570bdeb050af304d2bd327f7245c5269b077c52b42c5c383f5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "eb0650bdb76a30570bdeb050af304d2bd327f7245c5269b077c52b42c5c383f5", kill_on_drop: false }` [INFO] [stdout] eb0650bdb76a30570bdeb050af304d2bd327f7245c5269b077c52b42c5c383f5