[INFO] cloning repository https://github.com/romdotdog/w [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/romdotdog/w" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fromdotdog%2Fw", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fromdotdog%2Fw'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 5dd124fe8483255cc6ccb5ecff8af29d290b1cba [INFO] building romdotdog/w against master#11663cd3bfefef7d34e8f0892c250bf698049392+rustflags=-Dtail-expr-drop-order for pr-134523 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fromdotdog%2Fw" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/romdotdog/w on toolchain 11663cd3bfefef7d34e8f0892c250bf698049392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/romdotdog/w [INFO] finished tweaking git repo https://github.com/romdotdog/w [INFO] tweaked toml for git repo https://github.com/romdotdog/w written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/romdotdog/w already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded appendlist v1.4.0 [INFO] [stderr] Downloaded similar v2.1.0 [INFO] [stderr] Downloaded getopts v0.2.21 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 77cdd782d0b37a5da013a79a53da05e5ef4e8bb2eb5fe6dc2ae1ec48fb5315db [INFO] running `Command { std: "docker" "start" "-a" "77cdd782d0b37a5da013a79a53da05e5ef4e8bb2eb5fe6dc2ae1ec48fb5315db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "77cdd782d0b37a5da013a79a53da05e5ef4e8bb2eb5fe6dc2ae1ec48fb5315db", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77cdd782d0b37a5da013a79a53da05e5ef4e8bb2eb5fe6dc2ae1ec48fb5315db", kill_on_drop: false }` [INFO] [stdout] 77cdd782d0b37a5da013a79a53da05e5ef4e8bb2eb5fe6dc2ae1ec48fb5315db [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4af06ce1819dba526096bdc14e332850de43d3ce718ba47d139268067f760c9f [INFO] running `Command { std: "docker" "start" "-a" "4af06ce1819dba526096bdc14e332850de43d3ce718ba47d139268067f760c9f", kill_on_drop: false }` [INFO] [stderr] Compiling dec2flt v0.0.0 (/opt/rustwide/workdir/compiler/dec2flt) [INFO] [stderr] Compiling w_utils v0.0.0 (/opt/rustwide/workdir/compiler/w_utils) [INFO] [stderr] Compiling w_codegen v0.0.0 (/opt/rustwide/workdir/compiler/w_codegen) [INFO] [stderr] Compiling w_errors v0.0.0 (/opt/rustwide/workdir/compiler/w_errors) [INFO] [stderr] Compiling appendlist v1.4.0 [INFO] [stderr] Compiling getopts v0.2.21 [INFO] [stdout] warning: methods `eq_ignore_case` and `skip_chars2` are never used [INFO] [stdout] --> compiler/dec2flt/src/common.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) trait ByteSlice: AsRef<[u8]> { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 47 | fn eq_ignore_case(&self, u: &[u8]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn skip_chars2(&self, c1: u8, c2: u8) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling w_lexer v0.0.0 (/opt/rustwide/workdir/compiler/w_lexer) [INFO] [stderr] Compiling w_compiler v0.0.0 (/opt/rustwide/workdir/compiler/w_compiler) [INFO] [stdout] warning: unused label [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `panic_block` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | macro_rules! panic_block { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `panic` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fmt::Display, panic}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HeapType` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | itemref::{HeapType, ItemRef, StackType}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src_ref` [INFO] [stdout] --> compiler/w_compiler/src/handler.rs:54:22 [INFO] [stdout] | [INFO] [stdout] 54 | fn finish(&self, src_ref: &'ast Self::SourceRef) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_ref` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let ret = match self.tk { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `label` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | let label = match self.tk { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let cond = match self.tk { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cond` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | let a = self.primaryatom(None); // TODO: contextual type [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:24 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contextual_type` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:33 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contextual_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:137:13 [INFO] [stdout] | [INFO] [stdout] 137 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binding` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let binding = match self.tk { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `atom` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:258:25 [INFO] [stdout] | [INFO] [stdout] 258 | let atom = self.atom(Some(U32)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_atom` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:37 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:51 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:233:31 [INFO] [stdout] | [INFO] [stdout] 233 | fn postfixatom(&mut self, mut lhs: Value) -> Value { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | let t = self.parse_type().unwrap(); // TODO [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:401:40 [INFO] [stdout] | [INFO] [stdout] 401 | Some(Token::String(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | Some(Token::Char(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decl` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let decl = self.parse_decl().unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_decl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | let name = self.expect_ident(&Some(Token::LeftBracket)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fields` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let fields = self.type_body(false); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_fields` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:235:39 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn struct_or_union(&mut self, is_struct: bool) { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `paren_end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let paren_end = match self.tk { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paren_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exported` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:32 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exported` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `static_` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:48 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_static_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `module` [INFO] [stdout] --> compiler/w_compiler/src/types/mod.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 18 | fn coerce_inner(self, module: &mut S, to: Type) -> Result, Value> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:355:25 [INFO] [stdout] | [INFO] [stdout] 355 | let is_struct = ch == &Token::Struct; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:357:25 [INFO] [stdout] | [INFO] [stdout] 357 | let body = self.type_body(true); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_temp_local` and `free_temp_local` are never used [INFO] [stdout] --> compiler/w_compiler/src/util/locals.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Flow { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn get_temp_local(&mut self, t: Type) -> (String, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn free_temp_local(&mut self, t: Type, index: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 6 | Enum(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Struct`, `Union`, and `Global` are never constructed [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Item<'ast> { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] 7 | Struct(HashMap<&'ast str, (Type, i32)>), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | Union(HashMap<&'ast str, Type>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Global(&'ast str, Type), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Registry::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `SymbolStack::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 327 | let _ = self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling w_session v0.0.0 (/opt/rustwide/workdir/compiler/w_session) [INFO] [stderr] Compiling w v0.0.0 (/opt/rustwide/workdir/compiler/w) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.49s [INFO] running `Command { std: "docker" "inspect" "4af06ce1819dba526096bdc14e332850de43d3ce718ba47d139268067f760c9f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4af06ce1819dba526096bdc14e332850de43d3ce718ba47d139268067f760c9f", kill_on_drop: false }` [INFO] [stdout] 4af06ce1819dba526096bdc14e332850de43d3ce718ba47d139268067f760c9f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail-expr-drop-order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+11663cd3bfefef7d34e8f0892c250bf698049392" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 90d199d0db7fe7037e6d6d5b7de846fb62688dfd4fdd6652037ae4c3e2484cbe [INFO] running `Command { std: "docker" "start" "-a" "90d199d0db7fe7037e6d6d5b7de846fb62688dfd4fdd6652037ae4c3e2484cbe", kill_on_drop: false }` [INFO] [stderr] Compiling similar v2.1.0 [INFO] [stdout] warning: methods `eq_ignore_case` and `skip_chars2` are never used [INFO] [stdout] --> compiler/dec2flt/src/common.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) trait ByteSlice: AsRef<[u8]> { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 47 | fn eq_ignore_case(&self, u: &[u8]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn skip_chars2(&self, c1: u8, c2: u8) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling w_lexer v0.0.0 (/opt/rustwide/workdir/compiler/w_lexer) [INFO] [stderr] Compiling w_codegen v0.0.0 (/opt/rustwide/workdir/compiler/w_codegen) [INFO] [stderr] Compiling dec2flt v0.0.0 (/opt/rustwide/workdir/compiler/dec2flt) [INFO] [stderr] Compiling w_utils v0.0.0 (/opt/rustwide/workdir/compiler/w_utils) [INFO] [stderr] Compiling w_errors v0.0.0 (/opt/rustwide/workdir/compiler/w_errors) [INFO] [stdout] warning: unused label [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `panic_block` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | macro_rules! panic_block { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `panic` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fmt::Display, panic}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HeapType` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | itemref::{HeapType, ItemRef, StackType}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src_ref` [INFO] [stdout] --> compiler/w_compiler/src/handler.rs:54:22 [INFO] [stdout] | [INFO] [stdout] 54 | fn finish(&self, src_ref: &'ast Self::SourceRef) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_ref` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let ret = match self.tk { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `label` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | let label = match self.tk { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let cond = match self.tk { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cond` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | let a = self.primaryatom(None); // TODO: contextual type [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:24 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contextual_type` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:33 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contextual_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:137:13 [INFO] [stdout] | [INFO] [stdout] 137 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binding` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let binding = match self.tk { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `atom` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:258:25 [INFO] [stdout] | [INFO] [stdout] 258 | let atom = self.atom(Some(U32)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_atom` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:37 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:51 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:233:31 [INFO] [stdout] | [INFO] [stdout] 233 | fn postfixatom(&mut self, mut lhs: Value) -> Value { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling w_compiler v0.0.0 (/opt/rustwide/workdir/compiler/w_compiler) [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | let t = self.parse_type().unwrap(); // TODO [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:401:40 [INFO] [stdout] | [INFO] [stdout] 401 | Some(Token::String(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | Some(Token::Char(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decl` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let decl = self.parse_decl().unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_decl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | let name = self.expect_ident(&Some(Token::LeftBracket)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fields` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let fields = self.type_body(false); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_fields` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:235:39 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn struct_or_union(&mut self, is_struct: bool) { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `paren_end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let paren_end = match self.tk { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paren_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exported` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:32 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exported` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `static_` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:48 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_static_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `module` [INFO] [stdout] --> compiler/w_compiler/src/types/mod.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 18 | fn coerce_inner(self, module: &mut S, to: Type) -> Result, Value> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:355:25 [INFO] [stdout] | [INFO] [stdout] 355 | let is_struct = ch == &Token::Struct; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:357:25 [INFO] [stdout] | [INFO] [stdout] 357 | let body = self.type_body(true); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_temp_local` and `free_temp_local` are never used [INFO] [stdout] --> compiler/w_compiler/src/util/locals.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Flow { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn get_temp_local(&mut self, t: Type) -> (String, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn free_temp_local(&mut self, t: Type, index: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 6 | Enum(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Struct`, `Union`, and `Global` are never constructed [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Item<'ast> { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] 7 | Struct(HashMap<&'ast str, (Type, i32)>), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | Union(HashMap<&'ast str, Type>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Global(&'ast str, Type), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Registry::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `SymbolStack::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 327 | let _ = self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition: `panic_block` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:34:26 [INFO] [stdout] | [INFO] [stdout] 34 | macro_rules! panic_block { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `panic` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:1:25 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{fmt::Display, panic}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `HeapType` [INFO] [stdout] --> compiler/w_compiler/src/types/typ.rs:6:15 [INFO] [stdout] | [INFO] [stdout] 6 | itemref::{HeapType, ItemRef, StackType}, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `eq_ignore_case` and `skip_chars2` are never used [INFO] [stdout] --> compiler/dec2flt/src/common.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) trait ByteSlice: AsRef<[u8]> { [INFO] [stdout] | --------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 47 | fn eq_ignore_case(&self, u: &[u8]) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn skip_chars2(&self, c1: u8, c2: u8) -> &[u8] { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `src_ref` [INFO] [stdout] --> compiler/w_compiler/src/handler.rs:54:22 [INFO] [stdout] | [INFO] [stdout] 54 | fn finish(&self, src_ref: &'ast Self::SourceRef) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_ref` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:87:13 [INFO] [stdout] | [INFO] [stdout] 87 | let ret = match self.tk { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `label` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:92:13 [INFO] [stdout] | [INFO] [stdout] 92 | let label = match self.tk { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_label` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cond` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:114:13 [INFO] [stdout] | [INFO] [stdout] 114 | let cond = match self.tk { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_cond` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:156:13 [INFO] [stdout] | [INFO] [stdout] 156 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | let a = self.primaryatom(None); // TODO: contextual type [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:24 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_u` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contextual_type` [INFO] [stdout] --> compiler/w_compiler/src/primaryatom.rs:155:33 [INFO] [stdout] | [INFO] [stdout] 155 | fn unop(&mut self, u: UnOp, contextual_type: Option) -> Value { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contextual_type` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:33:13 [INFO] [stdout] | [INFO] [stdout] 33 | let end = 'm: loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:137:13 [INFO] [stdout] | [INFO] [stdout] 137 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `binding` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:141:13 [INFO] [stdout] | [INFO] [stdout] 141 | let binding = match self.tk { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_binding` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `atom` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:258:25 [INFO] [stdout] | [INFO] [stdout] 258 | let atom = self.atom(Some(U32)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_atom` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:37 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ret` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:298:51 [INFO] [stdout] | [INFO] [stdout] 298 | if let Item::Fn(name, params, ret) = item { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ret` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:233:31 [INFO] [stdout] | [INFO] [stdout] 233 | fn postfixatom(&mut self, mut lhs: Value) -> Value { [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | let t = self.parse_type().unwrap(); // TODO [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:401:40 [INFO] [stdout] | [INFO] [stdout] 401 | Some(Token::String(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `s` [INFO] [stdout] --> compiler/w_compiler/src/simpleatom.rs:402:38 [INFO] [stdout] | [INFO] [stdout] 402 | Some(Token::Char(s)) => todo!(), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:36:13 [INFO] [stdout] | [INFO] [stdout] 36 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `decl` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:44:13 [INFO] [stdout] | [INFO] [stdout] 44 | let decl = self.parse_decl().unwrap(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_decl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:64:13 [INFO] [stdout] | [INFO] [stdout] 64 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:172:13 [INFO] [stdout] | [INFO] [stdout] 172 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:194:17 [INFO] [stdout] | [INFO] [stdout] 194 | let end = loop { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:236:13 [INFO] [stdout] | [INFO] [stdout] 236 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:240:13 [INFO] [stdout] | [INFO] [stdout] 240 | let name = self.expect_ident(&Some(Token::LeftBracket)); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `fields` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:241:13 [INFO] [stdout] | [INFO] [stdout] 241 | let fields = self.type_body(false); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_fields` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:235:39 [INFO] [stdout] | [INFO] [stdout] 235 | pub fn struct_or_union(&mut self, is_struct: bool) { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `start` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | let start = self.start; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_start` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `paren_end` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:265:13 [INFO] [stdout] | [INFO] [stdout] 265 | let paren_end = match self.tk { [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_paren_end` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `exported` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:32 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exported` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `static_` [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:256:48 [INFO] [stdout] | [INFO] [stdout] 256 | pub fn function(&mut self, exported: bool, static_: bool) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_static_` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `module` [INFO] [stdout] --> compiler/w_compiler/src/types/mod.rs:18:27 [INFO] [stdout] | [INFO] [stdout] 18 | fn coerce_inner(self, module: &mut S, to: Type) -> Result, Value> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_module` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `is_struct` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:355:25 [INFO] [stdout] | [INFO] [stdout] 355 | let is_struct = ch == &Token::Struct; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_struct` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `body` [INFO] [stdout] --> compiler/w_compiler/src/lib.rs:357:25 [INFO] [stdout] | [INFO] [stdout] 357 | let body = self.type_body(true); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_body` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_temp_local` and `free_temp_local` are never used [INFO] [stdout] --> compiler/w_compiler/src/util/locals.rs:30:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Flow { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 30 | pub fn get_temp_local(&mut self, t: Type) -> (String, usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn free_temp_local(&mut self, t: Type, index: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:6:10 [INFO] [stdout] | [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 6 | Enum(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Struct`, `Union`, and `Global` are never constructed [INFO] [stdout] --> compiler/w_compiler/src/util/registry.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub enum Item<'ast> { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 6 | Enum(HashMap<&'ast str, i64>), [INFO] [stdout] 7 | Struct(HashMap<&'ast str, (Type, i32)>), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 8 | Union(HashMap<&'ast str, Type>), [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | Global(&'ast str, Type), [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `Registry::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = self.registry.push(name, Item::Enum(fields)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused return value of `SymbolStack::<'ast>::push` that must be used [INFO] [stdout] --> compiler/w_compiler/src/toplevel.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 327 | self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 327 | let _ = self.symbols.push(param.ident, Binding::Type(param.typ)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling w_session v0.0.0 (/opt/rustwide/workdir/compiler/w_session) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.05s [INFO] running `Command { std: "docker" "inspect" "90d199d0db7fe7037e6d6d5b7de846fb62688dfd4fdd6652037ae4c3e2484cbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "90d199d0db7fe7037e6d6d5b7de846fb62688dfd4fdd6652037ae4c3e2484cbe", kill_on_drop: false }` [INFO] [stdout] 90d199d0db7fe7037e6d6d5b7de846fb62688dfd4fdd6652037ae4c3e2484cbe