[INFO] updating cached repository https://github.com/zesterer/bread [INFO] running `"git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune"` [INFO] [stderr] From https://github.com/zesterer/bread [INFO] [stderr] dde3050..139da7c master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 139da7c2cf46a2c2b71c75c6164355054715d80d [INFO] checking zesterer/bread against try#b2a885c600d942fb829a214e798f7ae205a0594e for pr-71796 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzesterer%2Fbread" "/workspace/builds/worker-9/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/zesterer/bread on toolchain b2a885c600d942fb829a214e798f7ae205a0594e [INFO] running `"/workspace/cargo-home/bin/cargo" "+b2a885c600d942fb829a214e798f7ae205a0594e" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking git repo https://github.com/zesterer/bread [INFO] finished tweaking git repo https://github.com/zesterer/bread [INFO] tweaked toml for git repo https://github.com/zesterer/bread written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/zesterer/bread already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+b2a885c600d942fb829a214e798f7ae205a0594e" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+b2a885c600d942fb829a214e798f7ae205a0594e" "check" "--frozen" "--all" "--all-targets"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 36c976f5d4045e06918ec3e4c147dc4d148d15e35637be5ec2c605d4c1475f65 [INFO] running `"docker" "start" "-a" "36c976f5d4045e06918ec3e4c147dc4d148d15e35637be5ec2c605d4c1475f65"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Compiling nix v0.14.1 [INFO] [stderr] Compiling memchr v2.3.0 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Checking parze v0.1.0 (https://github.com/zesterer/parze-new.git#d42e00db) [INFO] [stderr] Compiling im-rc v14.1.0 [INFO] [stderr] Checking rand_xoshiro v0.4.0 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking thread-id v3.3.0 [INFO] [stderr] Checking dirs-sys v0.3.4 [INFO] [stderr] Checking bitmaps v2.0.0 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking dirs v2.0.2 [INFO] [stderr] Checking thread_local v0.3.3 [INFO] [stderr] Checking nanbox v0.2.0 [INFO] [stderr] Checking state v0.4.1 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking tinyset v0.4.2 [INFO] [stderr] Checking sized-chunks v0.5.1 [INFO] [stderr] Checking rustyline v6.0.0 [INFO] [stderr] Checking internment v0.3.12 [INFO] [stderr] Checking tao v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/hir/mod.rs:781:13 [INFO] [stderr] | [INFO] [stderr] 781 | Pat::Tuple(items) => Pat::Tuple(items [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/mir.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | expr => todo!("{:?}", expr), [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/mir.rs:403:13 [INFO] [stderr] | [INFO] [stderr] 403 | ty => todo!("{:?}", ty), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/vm/compile.rs:189:13 [INFO] [stderr] | [INFO] [stderr] 189 | expr => todo!("{:?}", expr), [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:213:32 [INFO] [stderr] | [INFO] [stderr] 213 | .or(just('<').map(|sc| Token::Op(Op::Less))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:214:32 [INFO] [stderr] | [INFO] [stderr] 214 | .or(just('>').map(|sc| Token::Op(Op::More))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:215:32 [INFO] [stderr] | [INFO] [stderr] 215 | .or(just('!').map(|sc| Token::Op(Op::Not))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:216:32 [INFO] [stderr] | [INFO] [stderr] 216 | .or(just(',').map(|sc| Token::Comma)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:217:32 [INFO] [stderr] | [INFO] [stderr] 217 | .or(just(':').map(|sc| Token::Colon)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:218:32 [INFO] [stderr] | [INFO] [stderr] 218 | .or(just('.').map(|sc| Token::Dot)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:219:32 [INFO] [stderr] | [INFO] [stderr] 219 | .or(just('?').map(|sc| Token::QuestionMark)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:220:32 [INFO] [stderr] | [INFO] [stderr] 220 | .or(just('|').map(|sc| Token::Pipe)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> src/lex.rs:137:32 [INFO] [stderr] | [INFO] [stderr] 137 | Token::Tree(delim, tokens) => write!(f, "{}...{}", delim.left(), delim.right()), [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_a` [INFO] [stderr] --> src/src.rs:133:26 [INFO] [stderr] | [INFO] [stderr] 133 | (Span::Range(from_a, until_a), Span::Range(from_b, until_b)) => [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_b` [INFO] [stderr] --> src/src.rs:133:56 [INFO] [stderr] | [INFO] [stderr] 133 | (Span::Range(from_a, until_a), Span::Range(from_b, until_b)) => [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/src.rs:204:15 [INFO] [stderr] | [INFO] [stderr] 204 | fn single(index: usize, sym: &SrcNode) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/error.rs:34:25 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `other` [INFO] [stderr] --> src/error.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thing` [INFO] [stderr] --> src/error.rs:79:27 [INFO] [stderr] | [INFO] [stderr] 79 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_thing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thing` [INFO] [stderr] --> src/error.rs:110:27 [INFO] [stderr] | [INFO] [stderr] 110 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_thing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `end_col` [INFO] [stderr] --> src/error.rs:134:62 [INFO] [stderr] | [INFO] [stderr] 134 | if let Some(((start_line, start_col), (end_line, end_col))) = span_iter [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/error.rs:161:46 [INFO] [stderr] | [INFO] [stderr] 161 | ... if let Some((span, is_primary)) = span_iter [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `atom` [INFO] [stderr] --> src/ast.rs:193:21 [INFO] [stderr] | [INFO] [stderr] 193 | let atom = atom.link(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_atom` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `paren_ty_list` [INFO] [stderr] --> src/ast.rs:229:21 [INFO] [stderr] | [INFO] [stderr] 229 | let paren_ty_list = nested_parser( [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paren_ty_list` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:659:61 [INFO] [stderr] | [INFO] [stderr] 659 | .map_with_span(|(((name, generics), ty), body), span| Decl::Def(Def { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:673:53 [INFO] [stderr] | [INFO] [stderr] 673 | .map_with_span(|((name, generics), ty), span| Decl::TypeAlias(TypeAlias { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:686:58 [INFO] [stderr] | [INFO] [stderr] 686 | .map_with_span(|((name, generics), data_ty), span| Decl::Data(Data { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `module` [INFO] [stderr] --> src/ast.rs:637:13 [INFO] [stderr] | [INFO] [stderr] 637 | let module = module.link(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iter` [INFO] [stderr] --> src/ty.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | let iter = match &**self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `global_span` [INFO] [stderr] --> src/hir/mod.rs:229:48 [INFO] [stderr] | [INFO] [stderr] 229 | .unwrap_or_else(|| Ok(if let Some((global_span, generics, hint)) = self.globals.0.get(&ident) { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_global_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:344:35 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:344:52 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:344:55 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:360:35 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:360:52 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:360:55 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:375:35 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:375:52 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:375:55 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:391:55 [INFO] [stderr] | [INFO] [stderr] 391 | ... Some(|this: &mut Self, a, b| { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ty` [INFO] [stderr] --> src/hir/infer.rs:474:21 [INFO] [stderr] | [INFO] [stderr] 474 | Unknown(ty) => return Err(ReconstructError::Unknown(id)), [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_ty` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `extractor` [INFO] [stderr] --> src/mir.rs:180:28 [INFO] [stderr] | [INFO] [stderr] 180 | Expr::MakeFunc(extractor, f_env, _) => { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `entry` [INFO] [stderr] --> src/mir.rs:286:13 [INFO] [stderr] | [INFO] [stderr] 286 | let entry = this.instantiate_def(prog, entry, Vec::new()); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/vm/compile.rs:209:36 [INFO] [stderr] | [INFO] [stderr] 209 | hir::Value::String(x) => todo!(), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/hir/mod.rs:781:13 [INFO] [stderr] | [INFO] [stderr] 781 | Pat::Tuple(items) => Pat::Tuple(items [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/mir.rs:354:13 [INFO] [stderr] | [INFO] [stderr] 354 | expr => todo!("{:?}", expr), [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/mir.rs:403:13 [INFO] [stderr] | [INFO] [stderr] 403 | ty => todo!("{:?}", ty), [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/vm/compile.rs:189:13 [INFO] [stderr] | [INFO] [stderr] 189 | expr => todo!("{:?}", expr), [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:213:32 [INFO] [stderr] | [INFO] [stderr] 213 | .or(just('<').map(|sc| Token::Op(Op::Less))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:214:32 [INFO] [stderr] | [INFO] [stderr] 214 | .or(just('>').map(|sc| Token::Op(Op::More))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:215:32 [INFO] [stderr] | [INFO] [stderr] 215 | .or(just('!').map(|sc| Token::Op(Op::Not))) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:216:32 [INFO] [stderr] | [INFO] [stderr] 216 | .or(just(',').map(|sc| Token::Comma)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:217:32 [INFO] [stderr] | [INFO] [stderr] 217 | .or(just(':').map(|sc| Token::Colon)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:218:32 [INFO] [stderr] | [INFO] [stderr] 218 | .or(just('.').map(|sc| Token::Dot)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:219:32 [INFO] [stderr] | [INFO] [stderr] 219 | .or(just('?').map(|sc| Token::QuestionMark)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sc` [INFO] [stderr] --> src/lex.rs:220:32 [INFO] [stderr] | [INFO] [stderr] 220 | .or(just('|').map(|sc| Token::Pipe)) [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_sc` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tokens` [INFO] [stderr] --> src/lex.rs:137:32 [INFO] [stderr] | [INFO] [stderr] 137 | Token::Tree(delim, tokens) => write!(f, "{}...{}", delim.left(), delim.right()), [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_a` [INFO] [stderr] --> src/src.rs:133:26 [INFO] [stderr] | [INFO] [stderr] 133 | (Span::Range(from_a, until_a), Span::Range(from_b, until_b)) => [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `from_b` [INFO] [stderr] --> src/src.rs:133:56 [INFO] [stderr] | [INFO] [stderr] 133 | (Span::Range(from_a, until_a), Span::Range(from_b, until_b)) => [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_from_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `index` [INFO] [stderr] --> src/src.rs:204:15 [INFO] [stderr] | [INFO] [stderr] 204 | fn single(index: usize, sym: &SrcNode) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_index` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/error.rs:34:25 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `other` [INFO] [stderr] --> src/error.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_other` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thing` [INFO] [stderr] --> src/error.rs:79:27 [INFO] [stderr] | [INFO] [stderr] 79 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_thing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `thing` [INFO] [stderr] --> src/error.rs:110:27 [INFO] [stderr] | [INFO] [stderr] 110 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_thing` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `end_col` [INFO] [stderr] --> src/error.rs:134:62 [INFO] [stderr] | [INFO] [stderr] 134 | if let Some(((start_line, start_col), (end_line, end_col))) = span_iter [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_end_col` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/error.rs:161:46 [INFO] [stderr] | [INFO] [stderr] 161 | ... if let Some((span, is_primary)) = span_iter [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `atom` [INFO] [stderr] --> src/ast.rs:193:21 [INFO] [stderr] | [INFO] [stderr] 193 | let atom = atom.link(); [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_atom` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `paren_ty_list` [INFO] [stderr] --> src/ast.rs:229:21 [INFO] [stderr] | [INFO] [stderr] 229 | let paren_ty_list = nested_parser( [INFO] [stderr] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paren_ty_list` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:659:61 [INFO] [stderr] | [INFO] [stderr] 659 | .map_with_span(|(((name, generics), ty), body), span| Decl::Def(Def { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:673:53 [INFO] [stderr] | [INFO] [stderr] 673 | .map_with_span(|((name, generics), ty), span| Decl::TypeAlias(TypeAlias { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/ast.rs:686:58 [INFO] [stderr] | [INFO] [stderr] 686 | .map_with_span(|((name, generics), data_ty), span| Decl::Data(Data { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `module` [INFO] [stderr] --> src/ast.rs:637:13 [INFO] [stderr] | [INFO] [stderr] 637 | let module = module.link(); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iter` [INFO] [stderr] --> src/ty.rs:36:13 [INFO] [stderr] | [INFO] [stderr] 36 | let iter = match &**self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `global_span` [INFO] [stderr] --> src/hir/mod.rs:229:48 [INFO] [stderr] | [INFO] [stderr] 229 | .unwrap_or_else(|| Ok(if let Some((global_span, generics, hint)) = self.globals.0.get(&ident) { [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_global_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:344:35 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:344:52 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:344:55 [INFO] [stderr] | [INFO] [stderr] 344 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:360:35 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:360:52 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:360:55 [INFO] [stderr] | [INFO] [stderr] 360 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Number), TypeInfo::Primitive(Primitive::Number))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/hir/infer.rs:375:35 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_this` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/hir/infer.rs:375:52 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:375:55 [INFO] [stderr] | [INFO] [stderr] 375 | ... Some(|this: &mut Self, a, b| (TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean), TypeInfo::Primitive(Primitive::Boolean))) [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/hir/infer.rs:391:55 [INFO] [stderr] | [INFO] [stderr] 391 | ... Some(|this: &mut Self, a, b| { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ty` [INFO] [stderr] --> src/hir/infer.rs:474:21 [INFO] [stderr] | [INFO] [stderr] 474 | Unknown(ty) => return Err(ReconstructError::Unknown(id)), [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_ty` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `extractor` [INFO] [stderr] --> src/mir.rs:180:28 [INFO] [stderr] | [INFO] [stderr] 180 | Expr::MakeFunc(extractor, f_env, _) => { [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_extractor` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `entry` [INFO] [stderr] --> src/mir.rs:286:13 [INFO] [stderr] | [INFO] [stderr] 286 | let entry = this.instantiate_def(prog, entry, Vec::new()); [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_entry` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/vm/compile.rs:209:36 [INFO] [stderr] | [INFO] [stderr] 209 | hir::Value::String(x) => todo!(), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_x` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:39:18 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:79:17 [INFO] [stderr] | [INFO] [stderr] 79 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:34:15 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:39:18 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:39:28 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn merge(mut self, mut other: Self) -> Self { [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:79:17 [INFO] [stderr] | [INFO] [stderr] 79 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/error.rs:110:17 [INFO] [stderr] | [INFO] [stderr] 110 | fn expected(mut self, thing: Self::Thing) -> Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/hir/mod.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | let mut body = ast_def.body.to_hir(&data, &mut infer, &scope)?; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/hir/mod.rs:353:17 [INFO] [stderr] | [INFO] [stderr] 353 | let mut body = ast_def.body.to_hir(&data, &mut infer, &scope)?; [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error[E0382]: use of moved value: `number` [INFO] [stderr] --> src/hir/infer.rs:537:46 [INFO] [stderr] | [INFO] [stderr] 525 | let number = Primitive::Number; [INFO] [stderr] | ------ move occurs because `number` has type `ty::Primitive`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 528 | let a = ctx.insert(TypeInfo::Primitive(number), Span::none()); [INFO] [stderr] | ------ value moved here [INFO] [stderr] ... [INFO] [stderr] 537 | SrcNode::new(Type::Primitive(number), Span::none()), [INFO] [stderr] | ^^^^^^ value used here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: use of moved value: `boolean` [INFO] [stderr] --> src/hir/infer.rs:538:46 [INFO] [stderr] | [INFO] [stderr] 526 | let boolean = Primitive::Boolean; [INFO] [stderr] | ------- move occurs because `boolean` has type `ty::Primitive`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 531 | let d = ctx.insert(TypeInfo::Primitive(boolean), Span::none()); [INFO] [stderr] | ------- value moved here [INFO] [stderr] ... [INFO] [stderr] 538 | SrcNode::new(Type::Primitive(boolean), Span::none()), [INFO] [stderr] | ^^^^^^^ value used here after move [INFO] [stderr] [INFO] [stderr] error[E0382]: use of moved value: `number` [INFO] [stderr] --> src/hir/infer.rs:559:53 [INFO] [stderr] | [INFO] [stderr] 548 | let number = Primitive::Number; [INFO] [stderr] | ------ move occurs because `number` has type `ty::Primitive`, which does not implement the `Copy` trait [INFO] [stderr] ... [INFO] [stderr] 552 | let c = ctx.insert(TypeInfo::Primitive(number), Span::none()); [INFO] [stderr] | ------ value moved here [INFO] [stderr] ... [INFO] [stderr] 559 | Type::List(SrcNode::new(Type::Primitive(number), Span::none())), [INFO] [stderr] | ^^^^^^ value used here after move [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/builder.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn link(mut self, program: &mut Program) -> (CodeAddr, Vec<(CodeAddr, mir::DefId)>) { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/vm.rs:8:20 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn execute(mut self, prog: &Program) -> Value { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/vm.rs:33:25 [INFO] [stderr] | [INFO] [stderr] 33 | let mut env = (0..n).map(|_| expr_stack.pop().unwrap()).collect(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/builder.rs:43:17 [INFO] [stderr] | [INFO] [stderr] 43 | pub fn link(mut self, program: &mut Program) -> (CodeAddr, Vec<(CodeAddr, mir::DefId)>) { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: private type `hir::GlobalHints<'_>` in public interface (error E0446) [INFO] [stderr] --> src/hir/mod.rs:332:5 [INFO] [stderr] | [INFO] [stderr] 332 | / pub fn insert_def_inner(&mut self, globals: GlobalHints, ast_def: &ast::Def) -> Result<(), Error> { [INFO] [stderr] 333 | | // Check for double declaration [INFO] [stderr] 334 | | if let Some(existing_def) = self.root.defs.get(&**ast_def.name) { [INFO] [stderr] 335 | | return Err(Error::custom(format!("Definition with name '{}' already exists", **ast_def.name)) [INFO] [stderr] ... | [INFO] [stderr] 392 | | Ok(()) [INFO] [stderr] 393 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(private_in_public)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `hir::GlobalHints<'_>` in public interface (error E0446) [INFO] [stderr] --> src/hir/mod.rs:395:5 [INFO] [stderr] | [INFO] [stderr] 395 | / pub fn insert_type_alias(&mut self, globals: GlobalHints, ast_type_alias: &ast::TypeAlias) -> Result<(), Error> { [INFO] [stderr] 396 | | let mut infer = InferCtx::default(); [INFO] [stderr] 397 | | let data = DataCtx { [INFO] [stderr] 398 | | module: &self.root, [INFO] [stderr] ... | [INFO] [stderr] 439 | | Ok(()) [INFO] [stderr] 440 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Brace` [INFO] [stderr] --> src/lex.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | Brace, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `start` [INFO] [stderr] --> src/src.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub const fn start() -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `prev` [INFO] [stderr] --> src/src.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | pub const fn prev(self) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `later_than` [INFO] [stderr] --> src/src.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn later_than(self, other: Self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `extend_to` [INFO] [stderr] --> src/src.rs:108:5 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn extend_to(self, limit: Loc) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `homogenize` [INFO] [stderr] --> src/src.rs:124:5 [INFO] [stderr] | [INFO] [stderr] 124 | pub fn homogenize(self, other: Self) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `later_than` [INFO] [stderr] --> src/src.rs:131:5 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn later_than(self, other: Self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `earliest` [INFO] [stderr] --> src/src.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | pub fn earliest(self, other: Self) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `map_inner` [INFO] [stderr] --> src/node.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | pub fn map_inner(self, f: impl FnOnce(T) -> V) -> Node { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `as_ref` [INFO] [stderr] --> src/node.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | pub fn as_ref(&self) -> Node<&T, U> where U: Clone { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `attr_mut` [INFO] [stderr] --> src/node.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn attr_mut(&mut self) -> &mut U { &mut self.1 } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `at` [INFO] [stderr] --> src/error.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `parts` [INFO] [stderr] --> src/ast.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn parts(&self) -> &[Ident] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Constructor` [INFO] [stderr] --> src/ast.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | Constructor(SrcNode, SrcNode), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Sum` [INFO] [stderr] --> src/mir.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | Sum(Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/vm.rs:8:20 [INFO] [stderr] | [INFO] [stderr] 8 | pub fn execute(mut self, prog: &Program) -> Value { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/vm/vm.rs:33:25 [INFO] [stderr] | [INFO] [stderr] 33 | let mut env = (0..n).map(|_| expr_stack.pop().unwrap()).collect(); [INFO] [stderr] | ----^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors; 53 warnings emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0382`. [INFO] [stderr] error: could not compile `tao`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: 70 warnings emitted [INFO] [stderr] [INFO] [stderr] error: build failed [INFO] running `"docker" "inspect" "36c976f5d4045e06918ec3e4c147dc4d148d15e35637be5ec2c605d4c1475f65"` [INFO] running `"docker" "rm" "-f" "36c976f5d4045e06918ec3e4c147dc4d148d15e35637be5ec2c605d4c1475f65"` [INFO] [stdout] 36c976f5d4045e06918ec3e4c147dc4d148d15e35637be5ec2c605d4c1475f65