[INFO] cloning repository https://github.com/onyx-language/onyx [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/onyx-language/onyx" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fonyx-language%2Fonyx", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fonyx-language%2Fonyx'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c73f5e7b93ceb92570027bcd9d66d03125a20f1c [INFO] building onyx-language/onyx 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%2Fonyx-language%2Fonyx" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/onyx-language/onyx 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/onyx-language/onyx [INFO] finished tweaking git repo https://github.com/onyx-language/onyx [INFO] tweaked toml for git repo https://github.com/onyx-language/onyx written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/onyx-language/onyx 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] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 24e1a2c359ad3c4ee1f067879b18dc17d6f3f497628855d1f05493f62ee64c7d [INFO] running `Command { std: "docker" "start" "-a" "24e1a2c359ad3c4ee1f067879b18dc17d6f3f497628855d1f05493f62ee64c7d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "24e1a2c359ad3c4ee1f067879b18dc17d6f3f497628855d1f05493f62ee64c7d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "24e1a2c359ad3c4ee1f067879b18dc17d6f3f497628855d1f05493f62ee64c7d", kill_on_drop: false }` [INFO] [stdout] 24e1a2c359ad3c4ee1f067879b18dc17d6f3f497628855d1f05493f62ee64c7d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] c7d92fcf2bc1c34dbb1efa16eab8c785ac49d863aa46ff504518497fb18fdb02 [INFO] running `Command { std: "docker" "start" "-a" "c7d92fcf2bc1c34dbb1efa16eab8c785ac49d863aa46ff504518497fb18fdb02", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.139 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling colored v2.0.0 [INFO] [stderr] Compiling onyx v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `typechecker::CheckedExpression` [INFO] [stdout] --> src/parser.rs:4:23 [INFO] [stdout] | [INFO] [stdout] 4 | error::OnyxError, typechecker::CheckedExpression [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::format` [INFO] [stdout] --> src/typechecker.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, fmt::format}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 259 | ParsedFirstClassStatement::Function(function) => { [INFO] [stdout] | --------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 287 | ParsedFirstClassStatement::Enum(enum_) => { [INFO] [stdout] | -------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 319 | ParsedFirstClassStatement::Class(class) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/typechecker.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let mut checked_parameter: CheckedParameter = CheckedParameter { [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: `integer` [INFO] [stdout] --> src/typechecker.rs:568:41 [INFO] [stdout] | [INFO] [stdout] 568 | CheckedExpression::Integer8(integer, _) => Ok(Type::I8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:569:42 [INFO] [stdout] | [INFO] [stdout] 569 | CheckedExpression::Integer16(integer, _) => Ok(Type::I16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:570:42 [INFO] [stdout] | [INFO] [stdout] 570 | CheckedExpression::Integer32(integer, _) => Ok(Type::I32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:571:42 [INFO] [stdout] | [INFO] [stdout] 571 | CheckedExpression::Integer64(integer, _) => Ok(Type::I64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:572:49 [INFO] [stdout] | [INFO] [stdout] 572 | CheckedExpression::UnsignedInteger8(integer, _) => Ok(Type::U8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:573:50 [INFO] [stdout] | [INFO] [stdout] 573 | CheckedExpression::UnsignedInteger16(integer, _) => Ok(Type::U16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:574:50 [INFO] [stdout] | [INFO] [stdout] 574 | CheckedExpression::UnsignedInteger32(integer, _) => Ok(Type::U32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:575:50 [INFO] [stdout] | [INFO] [stdout] 575 | CheckedExpression::UnsignedInteger64(integer, _) => Ok(Type::U64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:576:40 [INFO] [stdout] | [INFO] [stdout] 576 | CheckedExpression::Float32(float, _) => Ok(Type::F32), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:577:40 [INFO] [stdout] | [INFO] [stdout] 577 | CheckedExpression::Float64(float, _) => Ok(Type::F64), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `character` [INFO] [stdout] --> src/typechecker.rs:578:37 [INFO] [stdout] | [INFO] [stdout] 578 | CheckedExpression::Char(character, _) => Ok(Type::Char), [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boolean` [INFO] [stdout] --> src/typechecker.rs:579:37 [INFO] [stdout] | [INFO] [stdout] 579 | CheckedExpression::Bool(boolean, _) => Ok(Type::Bool), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boolean` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string` [INFO] [stdout] --> src/typechecker.rs:580:39 [INFO] [stdout] | [INFO] [stdout] 580 | CheckedExpression::String(string, _) => Ok(Type::Array(Box::new(Type::Char))), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/typechecker.rs:581:39 [INFO] [stdout] | [INFO] [stdout] 581 | CheckedExpression::Sizeof(t, _) => Ok(Type::Usize), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:103:26 [INFO] [stdout] | [INFO] [stdout] 103 | for (i, variant) in enum_.variants.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:105:55 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `types` [INFO] [stdout] --> src/codegen.rs:105:64 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_types` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:119:50 [INFO] [stdout] | [INFO] [stdout] 119 | ... for (i, parameter) in enum_.generic_parameters.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:137:38 [INFO] [stdout] | [INFO] [stdout] 137 | ... for (i, field) in fields.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:165:55 [INFO] [stdout] | [INFO] [stdout] 165 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/codegen.rs:506:33 [INFO] [stdout] | [INFO] [stdout] 506 | fn codegen_block(&mut self, block: CheckedBlock) -> Result<(), OnyxError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RustCodegen` [INFO] [stdout] --> src/main.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | codegen::{ CppCodegen, RustCodegen }, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.73s [INFO] running `Command { std: "docker" "inspect" "c7d92fcf2bc1c34dbb1efa16eab8c785ac49d863aa46ff504518497fb18fdb02", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c7d92fcf2bc1c34dbb1efa16eab8c785ac49d863aa46ff504518497fb18fdb02", kill_on_drop: false }` [INFO] [stdout] c7d92fcf2bc1c34dbb1efa16eab8c785ac49d863aa46ff504518497fb18fdb02 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 4b4562e10021d4875f60f27d1d8c267814d14afb0114483058b863be5b8301a8 [INFO] running `Command { std: "docker" "start" "-a" "4b4562e10021d4875f60f27d1d8c267814d14afb0114483058b863be5b8301a8", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `typechecker::CheckedExpression` [INFO] [stdout] --> src/parser.rs:4:23 [INFO] [stdout] | [INFO] [stdout] 4 | error::OnyxError, typechecker::CheckedExpression [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::format` [INFO] [stdout] --> src/typechecker.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, fmt::format}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 259 | ParsedFirstClassStatement::Function(function) => { [INFO] [stdout] | --------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 287 | ParsedFirstClassStatement::Enum(enum_) => { [INFO] [stdout] | -------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 319 | ParsedFirstClassStatement::Class(class) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/typechecker.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let mut checked_parameter: CheckedParameter = CheckedParameter { [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: `integer` [INFO] [stdout] --> src/typechecker.rs:568:41 [INFO] [stdout] | [INFO] [stdout] 568 | CheckedExpression::Integer8(integer, _) => Ok(Type::I8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:569:42 [INFO] [stdout] | [INFO] [stdout] 569 | CheckedExpression::Integer16(integer, _) => Ok(Type::I16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:570:42 [INFO] [stdout] | [INFO] [stdout] 570 | CheckedExpression::Integer32(integer, _) => Ok(Type::I32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:571:42 [INFO] [stdout] | [INFO] [stdout] 571 | CheckedExpression::Integer64(integer, _) => Ok(Type::I64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:572:49 [INFO] [stdout] | [INFO] [stdout] 572 | CheckedExpression::UnsignedInteger8(integer, _) => Ok(Type::U8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:573:50 [INFO] [stdout] | [INFO] [stdout] 573 | CheckedExpression::UnsignedInteger16(integer, _) => Ok(Type::U16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:574:50 [INFO] [stdout] | [INFO] [stdout] 574 | CheckedExpression::UnsignedInteger32(integer, _) => Ok(Type::U32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:575:50 [INFO] [stdout] | [INFO] [stdout] 575 | CheckedExpression::UnsignedInteger64(integer, _) => Ok(Type::U64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:576:40 [INFO] [stdout] | [INFO] [stdout] 576 | CheckedExpression::Float32(float, _) => Ok(Type::F32), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:577:40 [INFO] [stdout] | [INFO] [stdout] 577 | CheckedExpression::Float64(float, _) => Ok(Type::F64), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `character` [INFO] [stdout] --> src/typechecker.rs:578:37 [INFO] [stdout] | [INFO] [stdout] 578 | CheckedExpression::Char(character, _) => Ok(Type::Char), [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boolean` [INFO] [stdout] --> src/typechecker.rs:579:37 [INFO] [stdout] | [INFO] [stdout] 579 | CheckedExpression::Bool(boolean, _) => Ok(Type::Bool), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boolean` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string` [INFO] [stdout] --> src/typechecker.rs:580:39 [INFO] [stdout] | [INFO] [stdout] 580 | CheckedExpression::String(string, _) => Ok(Type::Array(Box::new(Type::Char))), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/typechecker.rs:581:39 [INFO] [stdout] | [INFO] [stdout] 581 | CheckedExpression::Sizeof(t, _) => Ok(Type::Usize), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:103:26 [INFO] [stdout] | [INFO] [stdout] 103 | for (i, variant) in enum_.variants.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling onyx v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:105:55 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `types` [INFO] [stdout] --> src/codegen.rs:105:64 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_types` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:119:50 [INFO] [stdout] | [INFO] [stdout] 119 | ... for (i, parameter) in enum_.generic_parameters.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:137:38 [INFO] [stdout] | [INFO] [stdout] 137 | ... for (i, field) in fields.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:165:55 [INFO] [stdout] | [INFO] [stdout] 165 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/codegen.rs:506:33 [INFO] [stdout] | [INFO] [stdout] 506 | fn codegen_block(&mut self, block: CheckedBlock) -> Result<(), OnyxError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RustCodegen` [INFO] [stdout] --> src/main.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | codegen::{ CppCodegen, RustCodegen }, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `typechecker::CheckedExpression` [INFO] [stdout] --> src/parser.rs:4:23 [INFO] [stdout] | [INFO] [stdout] 4 | error::OnyxError, typechecker::CheckedExpression [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fmt::format` [INFO] [stdout] --> src/typechecker.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, fmt::format}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/typechecker.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 259 | ParsedFirstClassStatement::Function(function) => { [INFO] [stdout] | --------------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 287 | ParsedFirstClassStatement::Enum(enum_) => { [INFO] [stdout] | -------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 319 | ParsedFirstClassStatement::Class(class) => { [INFO] [stdout] | --------------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 392 | _ => { [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/typechecker.rs:263:25 [INFO] [stdout] | [INFO] [stdout] 263 | let mut checked_parameter: CheckedParameter = CheckedParameter { [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: `integer` [INFO] [stdout] --> src/typechecker.rs:568:41 [INFO] [stdout] | [INFO] [stdout] 568 | CheckedExpression::Integer8(integer, _) => Ok(Type::I8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:569:42 [INFO] [stdout] | [INFO] [stdout] 569 | CheckedExpression::Integer16(integer, _) => Ok(Type::I16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:570:42 [INFO] [stdout] | [INFO] [stdout] 570 | CheckedExpression::Integer32(integer, _) => Ok(Type::I32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:571:42 [INFO] [stdout] | [INFO] [stdout] 571 | CheckedExpression::Integer64(integer, _) => Ok(Type::I64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:572:49 [INFO] [stdout] | [INFO] [stdout] 572 | CheckedExpression::UnsignedInteger8(integer, _) => Ok(Type::U8), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:573:50 [INFO] [stdout] | [INFO] [stdout] 573 | CheckedExpression::UnsignedInteger16(integer, _) => Ok(Type::U16), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:574:50 [INFO] [stdout] | [INFO] [stdout] 574 | CheckedExpression::UnsignedInteger32(integer, _) => Ok(Type::U32), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `integer` [INFO] [stdout] --> src/typechecker.rs:575:50 [INFO] [stdout] | [INFO] [stdout] 575 | CheckedExpression::UnsignedInteger64(integer, _) => Ok(Type::U64), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_integer` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:576:40 [INFO] [stdout] | [INFO] [stdout] 576 | CheckedExpression::Float32(float, _) => Ok(Type::F32), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `float` [INFO] [stdout] --> src/typechecker.rs:577:40 [INFO] [stdout] | [INFO] [stdout] 577 | CheckedExpression::Float64(float, _) => Ok(Type::F64), [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_float` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `character` [INFO] [stdout] --> src/typechecker.rs:578:37 [INFO] [stdout] | [INFO] [stdout] 578 | CheckedExpression::Char(character, _) => Ok(Type::Char), [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_character` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `boolean` [INFO] [stdout] --> src/typechecker.rs:579:37 [INFO] [stdout] | [INFO] [stdout] 579 | CheckedExpression::Bool(boolean, _) => Ok(Type::Bool), [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_boolean` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `string` [INFO] [stdout] --> src/typechecker.rs:580:39 [INFO] [stdout] | [INFO] [stdout] 580 | CheckedExpression::String(string, _) => Ok(Type::Array(Box::new(Type::Char))), [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_string` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `t` [INFO] [stdout] --> src/typechecker.rs:581:39 [INFO] [stdout] | [INFO] [stdout] 581 | CheckedExpression::Sizeof(t, _) => Ok(Type::Usize), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:103:26 [INFO] [stdout] | [INFO] [stdout] 103 | for (i, variant) in enum_.variants.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:105:55 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `types` [INFO] [stdout] --> src/codegen.rs:105:64 [INFO] [stdout] | [INFO] [stdout] 105 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_types` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:119:50 [INFO] [stdout] | [INFO] [stdout] 119 | ... for (i, parameter) in enum_.generic_parameters.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/codegen.rs:137:38 [INFO] [stdout] | [INFO] [stdout] 137 | ... for (i, field) in fields.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> src/codegen.rs:165:55 [INFO] [stdout] | [INFO] [stdout] 165 | ... CheckedEnumVariant::Tuple(name, _, types) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `block` [INFO] [stdout] --> src/codegen.rs:506:33 [INFO] [stdout] | [INFO] [stdout] 506 | fn codegen_block(&mut self, block: CheckedBlock) -> Result<(), OnyxError> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_block` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.92s [INFO] running `Command { std: "docker" "inspect" "4b4562e10021d4875f60f27d1d8c267814d14afb0114483058b863be5b8301a8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b4562e10021d4875f60f27d1d8c267814d14afb0114483058b863be5b8301a8", kill_on_drop: false }` [INFO] [stdout] 4b4562e10021d4875f60f27d1d8c267814d14afb0114483058b863be5b8301a8