[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] 929b029..dde3050 master -> master [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] dde305027a037982b459af642530c75751046bbb [INFO] checking zesterer/bread against master#7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3 for pr-71873 [INFO] running `"git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzesterer%2Fbread" "/workspace/builds/worker-11/source"` [INFO] [stderr] Cloning into '/workspace/builds/worker-11/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/zesterer/bread on toolchain 7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3 [INFO] running `"/workspace/cargo-home/bin/cargo" "+7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3" "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-11/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" "+7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-11/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" "+7c59a81a5fcbaaca311f744cd7c68d99bfbb05d3" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] ef861198f55d71241bf2018be9267d66ffa86d7a94f3f7764757b35cf0f24432 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "ef861198f55d71241bf2018be9267d66ffa86d7a94f3f7764757b35cf0f24432"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Checking void v1.0.2 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling serde v1.0.104 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Compiling version_check v0.9.1 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking fnv v1.0.6 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking utf8parse v0.1.1 [INFO] [stderr] Checking parze v0.1.0 (https://github.com/zesterer/parze-new.git#d42e00db) [INFO] [stderr] Checking bitmaps v2.0.0 [INFO] [stderr] Checking unreachable v0.1.1 [INFO] [stderr] Checking rand_xoshiro v0.4.0 [INFO] [stderr] Checking itertools v0.8.2 [INFO] [stderr] Checking nanbox v0.2.0 [INFO] [stderr] Compiling im-rc v14.1.0 [INFO] [stderr] Checking thread-id v3.3.0 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking dirs-sys v0.3.4 [INFO] [stderr] Checking nix v0.14.1 [INFO] [stderr] Checking thread_local v0.3.3 [INFO] [stderr] Checking dirs v2.0.2 [INFO] [stderr] Checking state v0.4.1 [INFO] [stderr] Checking sized-chunks v0.5.1 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking tinyset v0.4.2 [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: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | Self::custom(format!("Unexpected character '{}'", c)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | Self::custom(format!("Unexpected end of input")) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | Self::custom(format!("Expected end of input, found '{}'", c)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | Self::custom(format!("Unexpected token '{}'", **sym)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | Self::custom(format!("Unexpected end of input")) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | Self::custom(format!("Expected end of input, found '{}'", **sym)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:498:52 [INFO] [stderr] | [INFO] [stderr] 498 | self.unify_inner(0, a, b).map_err(|(x, y)| Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:601:25 [INFO] [stderr] | [INFO] [stderr] 601 | Err(Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:705:25 [INFO] [stderr] | [INFO] [stderr] 705 | Err(Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:791:44 [INFO] [stderr] | [INFO] [stderr] 791 | ReconstructError::Recursive => Error::custom(format!("Recursive type")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:798:17 [INFO] [stderr] | [INFO] [stderr] 798 | Error::custom(msg) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:209:21 [INFO] [stderr] | [INFO] [stderr] 209 | Err(Error::custom(format!("Primitive type '{}' cannot be parameterised", **name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:218:25 [INFO] [stderr] | [INFO] [stderr] 218 | Err(Error::custom(format!("Type '{}' expected {} parameters, found {}", **name, generics.len(), params.len())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | Err(Error::custom(format!("No such data type '{}'", **name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:345:77 [INFO] [stderr] | [INFO] [stderr] 345 | Expr::Func(param, _) if param.pat.is_refutable() => Err(Error::custom(format!("Refutable pattern may not be used here")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:365:24 [INFO] [stderr] | [INFO] [stderr] 365 | return Err(Error::custom(format!("Definition with name '{}' already exists", **ast_def.name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:411:28 [INFO] [stderr] | [INFO] [stderr] 411 | return Err(Error::custom(format!("Type parameter '{}' must be mentioned by type {}", **gen, **body.ty())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:459:28 [INFO] [stderr] | [INFO] [stderr] 459 | return Err(Error::custom(format!("Type parameter '{}' must be mentioned by type {}", **gen, *ty)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:630:32 [INFO] [stderr] | [INFO] [stderr] 630 | return Err(Error::custom(format!("No such binding '{}' in scope", path.base().to_string())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:779:32 [INFO] [stderr] | [INFO] [stderr] 779 | return Err(Error::custom(format!("Match requires irrefutable pattern somewhere (TODO: Implement proper exhaustivity checks)")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unreachable pattern [INFO] [stderr] --> src/hir/mod.rs:811:13 [INFO] [stderr] | [INFO] [stderr] 811 | 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:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | expr => todo!("{:?}", expr), [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:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let iter = match &**self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iter` [INFO] [stderr] --> src/ty.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | let iter = match &mut **self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tr` [INFO] [stderr] --> src/ty.rs:439:42 [INFO] [stderr] | [INFO] [stderr] 439 | TypeInfo::Associated(tr, params, a, assoc) => { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_tr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/ty.rs:638:35 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:638:52 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:638:55 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:654:35 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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/ty.rs:654:52 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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/ty.rs:654:55 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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/ty.rs:669:35 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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/ty.rs:669:52 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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/ty.rs:669:55 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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/ty.rs:685:55 [INFO] [stderr] | [INFO] [stderr] 685 | ... 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/ty.rs:768:21 [INFO] [stderr] | [INFO] [stderr] 768 | 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: `infer` [INFO] [stderr] --> src/hir/mod.rs:39:33 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn get_type_info(&self, infer: &mut InferCtx) -> TypeInfo { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_infer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `items` [INFO] [stderr] --> src/hir/mod.rs:122:23 [INFO] [stderr] | [INFO] [stderr] 122 | Pat::List(items) => true, // List could be different size [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/hir/mod.rs:324:14 [INFO] [stderr] | [INFO] [stderr] 324 | for (name, def) in self.root.defs.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/hir/mod.rs:489:64 [INFO] [stderr] | [INFO] [stderr] 489 | fn get_def_type(&self, ident: Ident, infer: &mut InferCtx, span: Span) -> Option<(TypeId, Vec<(SrcNode, TypeId)>)> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val_type_id` [INFO] [stderr] --> src/hir/mod.rs:718:21 [INFO] [stderr] | [INFO] [stderr] 718 | let val_type_id = val.type_id(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_val_type_id` [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: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:66:9 [INFO] [stderr] | [INFO] [stderr] 66 | Self::custom(format!("Unexpected character '{}'", c)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:71:9 [INFO] [stderr] | [INFO] [stderr] 71 | Self::custom(format!("Unexpected end of input")) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | Self::custom(format!("Expected end of input, found '{}'", c)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:95:9 [INFO] [stderr] | [INFO] [stderr] 95 | Self::custom(format!("Unexpected token '{}'", **sym)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:101:9 [INFO] [stderr] | [INFO] [stderr] 101 | Self::custom(format!("Unexpected end of input")) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/error.rs:105:9 [INFO] [stderr] | [INFO] [stderr] 105 | Self::custom(format!("Expected end of input, found '{}'", **sym)) [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:498:52 [INFO] [stderr] | [INFO] [stderr] 498 | self.unify_inner(0, a, b).map_err(|(x, y)| Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [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: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:601:25 [INFO] [stderr] | [INFO] [stderr] 601 | Err(Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:705:25 [INFO] [stderr] | [INFO] [stderr] 705 | Err(Error::custom(format!( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:791:44 [INFO] [stderr] | [INFO] [stderr] 791 | ReconstructError::Recursive => Error::custom(format!("Recursive type")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/ty.rs:798:17 [INFO] [stderr] | [INFO] [stderr] 798 | Error::custom(msg) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:209:21 [INFO] [stderr] | [INFO] [stderr] 209 | Err(Error::custom(format!("Primitive type '{}' cannot be parameterised", **name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:218:25 [INFO] [stderr] | [INFO] [stderr] 218 | Err(Error::custom(format!("Type '{}' expected {} parameters, found {}", **name, generics.len(), params.len())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:231:21 [INFO] [stderr] | [INFO] [stderr] 231 | Err(Error::custom(format!("No such data type '{}'", **name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:345:77 [INFO] [stderr] | [INFO] [stderr] 345 | Expr::Func(param, _) if param.pat.is_refutable() => Err(Error::custom(format!("Refutable pattern may not be used here")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:365:24 [INFO] [stderr] | [INFO] [stderr] 365 | return Err(Error::custom(format!("Definition with name '{}' already exists", **ast_def.name)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:411:28 [INFO] [stderr] | [INFO] [stderr] 411 | return Err(Error::custom(format!("Type parameter '{}' must be mentioned by type {}", **gen, **body.ty())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:459:28 [INFO] [stderr] | [INFO] [stderr] 459 | return Err(Error::custom(format!("Type parameter '{}' must be mentioned by type {}", **gen, *ty)) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:630:32 [INFO] [stderr] | [INFO] [stderr] 630 | return Err(Error::custom(format!("No such binding '{}' in scope", path.base().to_string())) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'error::Error::custom' [INFO] [stderr] --> src/hir/mod.rs:779:32 [INFO] [stderr] | [INFO] [stderr] 779 | return Err(Error::custom(format!("Match requires irrefutable pattern somewhere (TODO: Implement proper exhaustivity checks)")) [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/hir/mod.rs:384:17 [INFO] [stderr] | [INFO] [stderr] 384 | 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/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: unreachable pattern [INFO] [stderr] --> src/hir/mod.rs:811:13 [INFO] [stderr] | [INFO] [stderr] 811 | 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:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | expr => todo!("{:?}", expr), [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:45:13 [INFO] [stderr] | [INFO] [stderr] 45 | let iter = match &**self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `iter` [INFO] [stderr] --> src/ty.rs:66:13 [INFO] [stderr] | [INFO] [stderr] 66 | let iter = match &mut **self { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_iter` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `tr` [INFO] [stderr] --> src/ty.rs:439:42 [INFO] [stderr] | [INFO] [stderr] 439 | TypeInfo::Associated(tr, params, a, assoc) => { [INFO] [stderr] | ^^ help: if this is intentional, prefix it with an underscore: `_tr` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/ty.rs:638:35 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:638:52 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:638:55 [INFO] [stderr] | [INFO] [stderr] 638 | ... 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/ty.rs:654:35 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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: 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: unused variable: `a` [INFO] [stderr] --> src/ty.rs:654:52 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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: associated function is never used: `start` [INFO] [stderr] --> src/src.rs:12:18 [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:18 [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:12 [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:12 [INFO] [stderr] | [INFO] [stderr] 108 | pub fn extend_to(self, limit: Loc) -> Self { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/ty.rs:654:55 [INFO] [stderr] | [INFO] [stderr] 654 | ... 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: associated function is never used: `homogenize` [INFO] [stderr] --> src/src.rs:124:12 [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:12 [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:12 [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:24:12 [INFO] [stderr] | [INFO] [stderr] 24 | pub fn map_inner(self, f: impl FnOnce(T) -> V) -> Node { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `this` [INFO] [stderr] --> src/ty.rs:669:35 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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: associated function is never used: `as_ref` [INFO] [stderr] --> src/node.rs:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | 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:40:12 [INFO] [stderr] | [INFO] [stderr] 40 | 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:12 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn at(mut self, span: Span) -> Self { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `a` [INFO] [stderr] --> src/ty.rs:669:52 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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: associated function is never used: `parts` [INFO] [stderr] --> src/ast.rs:29:12 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn parts(&self) -> &[Ident] { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `b` [INFO] [stderr] --> src/ty.rs:669:55 [INFO] [stderr] | [INFO] [stderr] 669 | ... 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: 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: unused variable: `b` [INFO] [stderr] --> src/ty.rs:685:55 [INFO] [stderr] | [INFO] [stderr] 685 | ... Some(|this: &mut Self, a, b| { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `visit_mut` [INFO] [stderr] --> src/ty.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn visit_mut(self: &mut SrcNode, f: &mut impl FnMut(&mut SrcNode)) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `substitute_generics` [INFO] [stderr] --> src/ty.rs:86:8 [INFO] [stderr] | [INFO] [stderr] 86 | fn substitute_generics(self: &mut SrcNode, name: Ident, new_ty: SrcNode) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `GenericId` [INFO] [stderr] --> src/ty.rs:129:1 [INFO] [stderr] | [INFO] [stderr] 129 | pub type GenericId = usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Primitive` [INFO] [stderr] --> src/ty.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | Primitive, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `ty` [INFO] [stderr] --> src/ty.rs:768:21 [INFO] [stderr] | [INFO] [stderr] 768 | 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: `infer` [INFO] [stderr] --> src/hir/mod.rs:39:33 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn get_type_info(&self, infer: &mut InferCtx) -> TypeInfo { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_infer` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `items` [INFO] [stderr] --> src/hir/mod.rs:122:23 [INFO] [stderr] | [INFO] [stderr] 122 | Pat::List(items) => true, // List could be different size [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_items` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Sum` [INFO] [stderr] --> src/ty.rs:137:5 [INFO] [stderr] | [INFO] [stderr] 137 | Sum(Vec, HashMap), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `name` [INFO] [stderr] --> src/hir/mod.rs:324:14 [INFO] [stderr] | [INFO] [stderr] 324 | for (name, def) in self.root.defs.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Tuple` [INFO] [stderr] --> src/ty.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | Tuple(Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Record` [INFO] [stderr] --> src/ty.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | Record(HashMap), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `id_counter` [INFO] [stderr] --> src/ty.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | id_counter: DataId, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `decls` [INFO] [stderr] --> src/ty.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | decls: HashMap, DataType)>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_id` [INFO] [stderr] --> src/ty.rs:149:8 [INFO] [stderr] | [INFO] [stderr] 149 | fn new_id(&mut self) -> DataId { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `declare` [INFO] [stderr] --> src/ty.rs:154:12 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn declare(&mut self) -> DataId { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `define` [INFO] [stderr] --> src/ty.rs:158:12 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn define(&mut self, id: DataId, params: Vec, data: DataType) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `insert` [INFO] [stderr] --> src/ty.rs:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn insert(&mut self, params: Vec, data: DataType) -> DataId { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MustImpl` [INFO] [stderr] --> src/ty.rs:174:5 [INFO] [stderr] | [INFO] [stderr] 174 | MustImpl(TraitId, Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `params` [INFO] [stderr] --> src/ty.rs:185:5 [INFO] [stderr] | [INFO] [stderr] 185 | params: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `tr` [INFO] [stderr] --> src/ty.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | tr: (TraitId, Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `target` [INFO] [stderr] --> src/ty.rs:187:5 [INFO] [stderr] | [INFO] [stderr] 187 | target: Type, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `span` [INFO] [stderr] --> src/hir/mod.rs:489:64 [INFO] [stderr] | [INFO] [stderr] 489 | fn get_def_type(&self, ident: Ident, infer: &mut InferCtx, span: Span) -> Option<(TypeId, Vec<(SrcNode, TypeId)>)> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_span` [INFO] [stderr] [INFO] [stderr] warning: field is never read: `associated_types` [INFO] [stderr] --> src/ty.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | associated_types: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `data_ctx` [INFO] [stderr] --> src/ty.rs:219:5 [INFO] [stderr] | [INFO] [stderr] 219 | data_ctx: DataCtx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Associated` [INFO] [stderr] --> src/ty.rs:303:5 [INFO] [stderr] | [INFO] [stderr] 303 | Associated(TraitId, Vec, TypeId, Ident), // e.g: (Add, Int, "Output") = Int [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `intern` [INFO] [stderr] --> src/hir/mod.rs:52:12 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn intern<'a, T: ToString, I: IntoIterator>(parts: I) -> LocalIntern { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `from_path` [INFO] [stderr] --> src/hir/mod.rs:56:12 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn from_path(path: &ast::Path) -> LocalIntern { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `PhoneyData` [INFO] [stderr] --> src/hir/mod.rs:251:8 [INFO] [stderr] | [INFO] [stderr] 251 | struct PhoneyData { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `op_to_unary_trait` [INFO] [stderr] --> src/hir/mod.rs:256:4 [INFO] [stderr] | [INFO] [stderr] 256 | fn op_to_unary_trait(core: &Core, op: ast::UnaryOp) -> TraitId { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `op_to_binary_trait` [INFO] [stderr] --> src/hir/mod.rs:263:4 [INFO] [stderr] | [INFO] [stderr] 263 | fn op_to_binary_trait(core: &Core, op: ast::BinaryOp) -> TraitId { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_engine` [INFO] [stderr] --> src/hir/mod.rs:283:5 [INFO] [stderr] | [INFO] [stderr] 283 | type_engine: TypeEngine, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `modules` [INFO] [stderr] --> src/hir/mod.rs:477:5 [INFO] [stderr] | [INFO] [stderr] 477 | modules: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `traits` [INFO] [stderr] --> src/hir/mod.rs:478:5 [INFO] [stderr] | [INFO] [stderr] 478 | traits: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `datatypes` [INFO] [stderr] --> src/hir/mod.rs:479:5 [INFO] [stderr] | [INFO] [stderr] 479 | datatypes: HashMap, [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: associated function is never used: `global` [INFO] [stderr] --> src/mir.rs:291:12 [INFO] [stderr] | [INFO] [stderr] 291 | pub fn global(&self, id: DefId) -> &RawTypeNode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `val_type_id` [INFO] [stderr] --> src/hir/mod.rs:718:21 [INFO] [stderr] | [INFO] [stderr] 718 | let val_type_id = val.type_id(); [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_val_type_id` [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: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ty.rs:828:9 [INFO] [stderr] | [INFO] [stderr] 828 | ctx.unify(b, d); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ty.rs:850:9 [INFO] [stderr] | [INFO] [stderr] 850 | ctx.unify(a, b); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/ty.rs:851:9 [INFO] [stderr] | [INFO] [stderr] 851 | ctx.unify(b, c); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [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: 126 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/hir/mod.rs:384:17 [INFO] [stderr] | [INFO] [stderr] 384 | 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/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: 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:18 [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:18 [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:12 [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:12 [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:12 [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:12 [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:12 [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:24:12 [INFO] [stderr] | [INFO] [stderr] 24 | 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:34:12 [INFO] [stderr] | [INFO] [stderr] 34 | 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:40:12 [INFO] [stderr] | [INFO] [stderr] 40 | 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:12 [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:12 [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: associated function is never used: `visit_mut` [INFO] [stderr] --> src/ty.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 65 | pub fn visit_mut(self: &mut SrcNode, f: &mut impl FnMut(&mut SrcNode)) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `substitute_generics` [INFO] [stderr] --> src/ty.rs:86:8 [INFO] [stderr] | [INFO] [stderr] 86 | fn substitute_generics(self: &mut SrcNode, name: Ident, new_ty: SrcNode) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: type alias is never used: `GenericId` [INFO] [stderr] --> src/ty.rs:129:1 [INFO] [stderr] | [INFO] [stderr] 129 | pub type GenericId = usize; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Primitive` [INFO] [stderr] --> src/ty.rs:136:5 [INFO] [stderr] | [INFO] [stderr] 136 | Primitive, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Sum` [INFO] [stderr] --> src/ty.rs:137:5 [INFO] [stderr] | [INFO] [stderr] 137 | Sum(Vec, HashMap), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Tuple` [INFO] [stderr] --> src/ty.rs:138:5 [INFO] [stderr] | [INFO] [stderr] 138 | Tuple(Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Record` [INFO] [stderr] --> src/ty.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | Record(HashMap), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `id_counter` [INFO] [stderr] --> src/ty.rs:144:5 [INFO] [stderr] | [INFO] [stderr] 144 | id_counter: DataId, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `decls` [INFO] [stderr] --> src/ty.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | decls: HashMap, DataType)>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_id` [INFO] [stderr] --> src/ty.rs:149:8 [INFO] [stderr] | [INFO] [stderr] 149 | fn new_id(&mut self) -> DataId { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `declare` [INFO] [stderr] --> src/ty.rs:154:12 [INFO] [stderr] | [INFO] [stderr] 154 | pub fn declare(&mut self) -> DataId { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `define` [INFO] [stderr] --> src/ty.rs:158:12 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn define(&mut self, id: DataId, params: Vec, data: DataType) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `insert` [INFO] [stderr] --> src/ty.rs:162:12 [INFO] [stderr] | [INFO] [stderr] 162 | pub fn insert(&mut self, params: Vec, data: DataType) -> DataId { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MustImpl` [INFO] [stderr] --> src/ty.rs:174:5 [INFO] [stderr] | [INFO] [stderr] 174 | MustImpl(TraitId, Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `params` [INFO] [stderr] --> src/ty.rs:185:5 [INFO] [stderr] | [INFO] [stderr] 185 | params: Vec, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `tr` [INFO] [stderr] --> src/ty.rs:186:5 [INFO] [stderr] | [INFO] [stderr] 186 | tr: (TraitId, Vec), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `target` [INFO] [stderr] --> src/ty.rs:187:5 [INFO] [stderr] | [INFO] [stderr] 187 | target: Type, [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `associated_types` [INFO] [stderr] --> src/ty.rs:188:5 [INFO] [stderr] | [INFO] [stderr] 188 | associated_types: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `data_ctx` [INFO] [stderr] --> src/ty.rs:219:5 [INFO] [stderr] | [INFO] [stderr] 219 | data_ctx: DataCtx, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Associated` [INFO] [stderr] --> src/ty.rs:303:5 [INFO] [stderr] | [INFO] [stderr] 303 | Associated(TraitId, Vec, TypeId, Ident), // e.g: (Add, Int, "Output") = Int [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `intern` [INFO] [stderr] --> src/hir/mod.rs:52:12 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn intern<'a, T: ToString, I: IntoIterator>(parts: I) -> LocalIntern { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `from_path` [INFO] [stderr] --> src/hir/mod.rs:56:12 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn from_path(path: &ast::Path) -> LocalIntern { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `PhoneyData` [INFO] [stderr] --> src/hir/mod.rs:251:8 [INFO] [stderr] | [INFO] [stderr] 251 | struct PhoneyData { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `op_to_unary_trait` [INFO] [stderr] --> src/hir/mod.rs:256:4 [INFO] [stderr] | [INFO] [stderr] 256 | fn op_to_unary_trait(core: &Core, op: ast::UnaryOp) -> TraitId { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `op_to_binary_trait` [INFO] [stderr] --> src/hir/mod.rs:263:4 [INFO] [stderr] | [INFO] [stderr] 263 | fn op_to_binary_trait(core: &Core, op: ast::BinaryOp) -> TraitId { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `type_engine` [INFO] [stderr] --> src/hir/mod.rs:283:5 [INFO] [stderr] | [INFO] [stderr] 283 | type_engine: TypeEngine, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `modules` [INFO] [stderr] --> src/hir/mod.rs:477:5 [INFO] [stderr] | [INFO] [stderr] 477 | modules: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `traits` [INFO] [stderr] --> src/hir/mod.rs:478:5 [INFO] [stderr] | [INFO] [stderr] 478 | traits: HashMap, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never read: `datatypes` [INFO] [stderr] --> src/hir/mod.rs:479:5 [INFO] [stderr] | [INFO] [stderr] 479 | datatypes: HashMap, [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: associated function is never used: `global` [INFO] [stderr] --> src/mir.rs:291:12 [INFO] [stderr] | [INFO] [stderr] 291 | pub fn global(&self, id: DefId) -> &RawTypeNode { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 123 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 48.60s [INFO] running `"docker" "inspect" "ef861198f55d71241bf2018be9267d66ffa86d7a94f3f7764757b35cf0f24432"` [INFO] running `"docker" "rm" "-f" "ef861198f55d71241bf2018be9267d66ffa86d7a94f3f7764757b35cf0f24432"` [INFO] [stdout] ef861198f55d71241bf2018be9267d66ffa86d7a94f3f7764757b35cf0f24432