[INFO] cloning repository https://github.com/olix3001/ramen [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/olix3001/ramen" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Folix3001%2Framen", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Folix3001%2Framen'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] dd1b65a99192bf0e5ad24a8b9ba2bd9e5b7b3863 [INFO] checking olix3001/ramen against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Folix3001%2Framen" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/olix3001/ramen [INFO] finished tweaking git repo https://github.com/olix3001/ramen [INFO] tweaked toml for git repo https://github.com/olix3001/ramen written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/olix3001/ramen on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/olix3001/ramen 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 4b1a2ca92b21df2970ace1c3aa9243863d9bfd3666b7e32cfe937df0321c02a4 [INFO] running `Command { std: "docker" "start" "-a" "4b1a2ca92b21df2970ace1c3aa9243863d9bfd3666b7e32cfe937df0321c02a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4b1a2ca92b21df2970ace1c3aa9243863d9bfd3666b7e32cfe937df0321c02a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4b1a2ca92b21df2970ace1c3aa9243863d9bfd3666b7e32cfe937df0321c02a4", kill_on_drop: false }` [INFO] [stdout] 4b1a2ca92b21df2970ace1c3aa9243863d9bfd3666b7e32cfe937df0321c02a4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2545a9ed09d3438b27ceeca0e2f9de45235075aa7da4c97d7a299a23a544bb7e [INFO] running `Command { std: "docker" "start" "-a" "2545a9ed09d3438b27ceeca0e2f9de45235075aa7da4c97d7a299a23a544bb7e", kill_on_drop: false }` [INFO] [stderr] Checking once_cell v1.20.0 [INFO] [stderr] Compiling anyhow v1.0.89 [INFO] [stderr] Checking yansi v1.0.1 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling cc v1.1.21 [INFO] [stderr] Compiling beef v0.5.2 [INFO] [stderr] Compiling regex-syntax v0.8.4 [INFO] [stderr] Compiling inkwell v0.5.0 [INFO] [stderr] Checking ramen-tests v0.1.0 (/opt/rustwide/workdir/ramen-tests) [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking ariadne v0.4.1 [INFO] [stderr] Checking ahash v0.8.11 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking ramen_common v0.1.0 (/opt/rustwide/workdir/ramen-common) [INFO] [stdout] warning: unused variable: `session` [INFO] [stdout] --> ramen-common/src/error.rs:30:28 [INFO] [stdout] | [INFO] [stdout] 30 | fn build_report(&self, session: &Session) -> ariadne::Report<'static, Loc> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> ramen-common/src/scope.rs:20:42 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new(parent: Option, name: Option) -> Self { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `session` [INFO] [stdout] --> ramen-common/src/error.rs:30:28 [INFO] [stdout] | [INFO] [stdout] 30 | fn build_report(&self, session: &Session) -> ariadne::Report<'static, Loc> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> ramen-common/src/scope.rs:20:42 [INFO] [stdout] | [INFO] [stdout] 20 | pub fn new(parent: Option, name: Option) -> Self { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling llvm-sys v180.0.0 [INFO] [stderr] Compiling logos-codegen v0.14.1 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Compiling inkwell_internals v0.10.0 [INFO] [stderr] Compiling logos-derive v0.14.1 [INFO] [stderr] Checking thiserror v1.0.63 [INFO] [stderr] Checking logos v0.14.1 [INFO] [stderr] Checking ramen_frontend v0.1.0 (/opt/rustwide/workdir/ramen-frontend) [INFO] [stderr] Checking ramen_backend_llvm v0.1.0 (/opt/rustwide/workdir/ramen-backend-llvm) [INFO] [stdout] warning: unused import: `ASTPass` [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:2:118 [INFO] [stdout] | [INFO] [stdout] 2 | use ramen_common::{ast::{self, NodeId}, scope::ScopeRef, session::Session, visitor::{walk_expression, walk_function, ASTPass, ScopeStack,... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VoidType` [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:1:117 [INFO] [stdout] | [INFO] [stdout] 1 | use inkwell::{context::Context, types::{AnyTypeEnum, BasicMetadataTypeEnum, BasicType, BasicTypeEnum, FunctionType, VoidType}}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `AnyValue` [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:1:76 [INFO] [stdout] | [INFO] [stdout] 1 | use inkwell::{builder::Builder, context::Context, module::Module, values::{AnyValue, AnyValueEnum, BasicValueEnum}}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `session` [INFO] [stdout] --> ramen-backend-llvm/src/error.rs:16:28 [INFO] [stdout] | [INFO] [stdout] 16 | fn build_report(&self, session: &Session) -> ariadne::Report<'static, Loc> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> ramen-backend-llvm/src/error.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | fn from(value: BuilderError) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | _ => todo!("Throw apropriate error") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 17 | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] 18 | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 19 | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] 20 | _ => todo!("Throw apropriate error") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | codegen.visit_module(mod_id, module)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | codegen.visit_module(mod_id, module)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:43:116 [INFO] [stdout] | [INFO] [stdout] 43 | fn visit_function(&mut self, id: NodeId, function: &ast::Function) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________^ [INFO] [stdout] 44 | | let ll_function = self.module.add_function( [INFO] [stdout] 45 | | &self.session.get_symbol(id) [INFO] [stdout] 46 | | .expect("Function symbol should have been set by frontend."), [INFO] [stdout] ... | [INFO] [stdout] 57 | | Ok(None) [INFO] [stdout] 58 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | Ok(None) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:60:124 [INFO] [stdout] | [INFO] [stdout] 60 | fn visit_return_statement(&mut self, _id: NodeId, value: &ast::Expression) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________________^ [INFO] [stdout] 61 | | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] 64 | | self.builder.build_return(Some(&return_value))?; [INFO] [stdout] 65 | | Ok(None) [INFO] [stdout] 66 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicValueEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |_______________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | self.builder.build_return(Some(&return_value))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | Ok(None) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:68:124 [INFO] [stdout] | [INFO] [stdout] 68 | fn visit_literal_expression(&mut self, id: NodeId, literal: &ast::Literal) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________________^ [INFO] [stdout] 69 | | match &literal { [INFO] [stdout] 70 | | ast::Literal::Integer(value) => { [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] ... | [INFO] [stdout] 76 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | / match &literal { [INFO] [stdout] 70 | | ast::Literal::Integer(value) => { [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] 72 | | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] ... | [INFO] [stdout] 75 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:70:45 [INFO] [stdout] | [INFO] [stdout] 70 | ast::Literal::Integer(value) => { [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] 72 | | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] 73 | | Ok(Some(AnyValueEnum::IntValue(value))) [INFO] [stdout] 74 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Some(AnyValueEnum::IntValue(value))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:15:100 [INFO] [stdout] | [INFO] [stdout] 15 | fn as_llvm_type<'ctx>(&self, context: &'ctx Context) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________^ [INFO] [stdout] 16 | | match self { [INFO] [stdout] 17 | | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] 18 | | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] ... | [INFO] [stdout] 22 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | / match self { [INFO] [stdout] 17 | | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] 18 | | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] 19 | | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] 20 | | _ => todo!("Throw apropriate error") [INFO] [stdout] 21 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:17:27 [INFO] [stdout] | [INFO] [stdout] 17 | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:18:37 [INFO] [stdout] | [INFO] [stdout] 18 | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:19:41 [INFO] [stdout] | [INFO] [stdout] 19 | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:28:100 [INFO] [stdout] | [INFO] [stdout] 28 | fn as_llvm_type<'ctx>(&self, context: &'ctx Context) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________^ [INFO] [stdout] 29 | | println!("{:?}", self.return_type); [INFO] [stdout] 30 | | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] ... | [INFO] [stdout] 41 | | Ok(AnyTypeEnum::FunctionType(fn_type)) [INFO] [stdout] 42 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, inkwell::types::FunctionType<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Vec>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:50 [INFO] [stdout] | [INFO] [stdout] 34 | self.parameter_types.iter().map(|ty| { [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:36:17 [INFO] [stdout] | [INFO] [stdout] 36 | Ok(basic_ty.into()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | Ok(AnyTypeEnum::FunctionType(fn_type)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:49:47 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Result, CodegenError> { [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 50 | | match return_type { [INFO] [stdout] 51 | | AnyTypeEnum::VoidType(void_type) => [INFO] [stdout] 52 | | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | / match return_type { [INFO] [stdout] 51 | | AnyTypeEnum::VoidType(void_type) => [INFO] [stdout] 52 | | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] 53 | | _ => { [INFO] [stdout] ... | [INFO] [stdout] 57 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | _ => { [INFO] [stdout] | ______________^ [INFO] [stdout] 54 | | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] 55 | | Ok(return_type.fn_type(argument_types, is_vararg)) [INFO] [stdout] 56 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | Ok(return_type.fn_type(argument_types, is_vararg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ASTPass` [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:2:118 [INFO] [stdout] | [INFO] [stdout] 2 | use ramen_common::{ast::{self, NodeId}, scope::ScopeRef, session::Session, visitor::{walk_expression, walk_function, ASTPass, ScopeStack,... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `VoidType` [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:1:117 [INFO] [stdout] | [INFO] [stdout] 1 | use inkwell::{context::Context, types::{AnyTypeEnum, BasicMetadataTypeEnum, BasicType, BasicTypeEnum, FunctionType, VoidType}}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ramen_backend_llvm` (lib) due to 56 previous errors; 6 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unused import: `AnyValue` [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:1:76 [INFO] [stdout] | [INFO] [stdout] 1 | use inkwell::{builder::Builder, context::Context, module::Module, values::{AnyValue, AnyValueEnum, BasicValueEnum}}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `session` [INFO] [stdout] --> ramen-backend-llvm/src/error.rs:16:28 [INFO] [stdout] | [INFO] [stdout] 16 | fn build_report(&self, session: &Session) -> ariadne::Report<'static, Loc> { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_session` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `value` [INFO] [stdout] --> ramen-backend-llvm/src/error.rs:22:13 [INFO] [stdout] | [INFO] [stdout] 22 | fn from(value: BuilderError) -> Self { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_value` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | _ => todo!("Throw apropriate error") [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 17 | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] | ---------- matches some of the same values [INFO] [stdout] 18 | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 19 | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] 20 | _ => todo!("Throw apropriate error") [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | codegen.visit_module(mod_id, module)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-D unmustuse-in-always-ok` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | codegen.visit_module(mod_id, module)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:43:116 [INFO] [stdout] | [INFO] [stdout] 43 | fn visit_function(&mut self, id: NodeId, function: &ast::Function) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________^ [INFO] [stdout] 44 | | let ll_function = self.module.add_function( [INFO] [stdout] 45 | | &self.session.get_symbol(id) [INFO] [stdout] 46 | | .expect("Function symbol should have been set by frontend."), [INFO] [stdout] ... | [INFO] [stdout] 57 | | Ok(None) [INFO] [stdout] 58 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | / self.session.get_type(id) [INFO] [stdout] 48 | | .expect("Function type should have been resolved by frontend.") [INFO] [stdout] 49 | | .as_llvm_type(&self.context)?.into_function_type(), [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:55:9 [INFO] [stdout] | [INFO] [stdout] 55 | walk_function(self, id, function)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | Ok(None) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:60:124 [INFO] [stdout] | [INFO] [stdout] 60 | fn visit_return_statement(&mut self, _id: NodeId, value: &ast::Expression) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________________^ [INFO] [stdout] 61 | | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] 64 | | self.builder.build_return(Some(&return_value))?; [INFO] [stdout] 65 | | Ok(None) [INFO] [stdout] 66 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicValueEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |_______________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Option>> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:61:44 [INFO] [stdout] | [INFO] [stdout] 61 | let return_value: BasicValueEnum = walk_expression(self, value)? [INFO] [stdout] | ____________________________________________^ [INFO] [stdout] 62 | | .expect("Temporary unwrap, this will error readably later on") [INFO] [stdout] 63 | | .try_into().map_err::(|_| todo!())?; [INFO] [stdout] | |________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:64:9 [INFO] [stdout] | [INFO] [stdout] 64 | self.builder.build_return(Some(&return_value))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 65 | Ok(None) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:68:124 [INFO] [stdout] | [INFO] [stdout] 68 | fn visit_literal_expression(&mut self, id: NodeId, literal: &ast::Literal) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________________________________^ [INFO] [stdout] 69 | | match &literal { [INFO] [stdout] 70 | | ast::Literal::Integer(value) => { [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] ... | [INFO] [stdout] 76 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | / match &literal { [INFO] [stdout] 70 | | ast::Literal::Integer(value) => { [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] 72 | | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] ... | [INFO] [stdout] 75 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:70:45 [INFO] [stdout] | [INFO] [stdout] 70 | ast::Literal::Integer(value) => { [INFO] [stdout] | _____________________________________________^ [INFO] [stdout] 71 | | let int_type = self.session.get_type(id).expect("This should have been set by type resolution/checking"); [INFO] [stdout] 72 | | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] 73 | | Ok(Some(AnyValueEnum::IntValue(value))) [INFO] [stdout] 74 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:72:29 [INFO] [stdout] | [INFO] [stdout] 72 | let value = int_type.as_llvm_type(&self.context).unwrap().into_int_type().const_int(*value as _, true); // temporary. [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/codegen.rs:73:17 [INFO] [stdout] | [INFO] [stdout] 73 | Ok(Some(AnyValueEnum::IntValue(value))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:15:100 [INFO] [stdout] | [INFO] [stdout] 15 | fn as_llvm_type<'ctx>(&self, context: &'ctx Context) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________^ [INFO] [stdout] 16 | | match self { [INFO] [stdout] 17 | | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] 18 | | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] ... | [INFO] [stdout] 22 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:16:9 [INFO] [stdout] | [INFO] [stdout] 16 | / match self { [INFO] [stdout] 17 | | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] 18 | | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] 19 | | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] 20 | | _ => todo!("Throw apropriate error") [INFO] [stdout] 21 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:17:27 [INFO] [stdout] | [INFO] [stdout] 17 | Self::Unit => Ok(AnyTypeEnum::VoidType(context.void_type())), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:18:37 [INFO] [stdout] | [INFO] [stdout] 18 | Self::Integer(width) => Ok(AnyTypeEnum::IntType(context.custom_width_int_type(*width as _))), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:19:41 [INFO] [stdout] | [INFO] [stdout] 19 | Self::Callable(callable) => callable.as_llvm_type(context), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:28:100 [INFO] [stdout] | [INFO] [stdout] 28 | fn as_llvm_type<'ctx>(&self, context: &'ctx Context) -> Result, Self::Error> { [INFO] [stdout] | ____________________________________________________________________________________________________^ [INFO] [stdout] 29 | | println!("{:?}", self.return_type); [INFO] [stdout] 30 | | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] ... | [INFO] [stdout] 41 | | Ok(AnyTypeEnum::FunctionType(fn_type)) [INFO] [stdout] 42 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:30:27 [INFO] [stdout] | [INFO] [stdout] 30 | let return_type = self.return_type.as_llvm_type(context)?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, inkwell::types::FunctionType<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, Vec>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result>, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:50 [INFO] [stdout] | [INFO] [stdout] 34 | self.parameter_types.iter().map(|ty| { [INFO] [stdout] | __________________________________________________^ [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, AnyTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:35:47 [INFO] [stdout] | [INFO] [stdout] 35 | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:36:17 [INFO] [stdout] | [INFO] [stdout] 36 | Ok(basic_ty.into()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 34 | / self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] 36 | | Ok(basic_ty.into()) [INFO] [stdout] 37 | | }).collect::, CodegenError>>()?.as_slice(), [INFO] [stdout] | |_____________________________________________________________________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 32 | let fn_type = build_fn_type_from_any_type( [INFO] [stdout] | _______________________^ [INFO] [stdout] 33 | | return_type, [INFO] [stdout] 34 | | self.parameter_types.iter().map(|ty| { [INFO] [stdout] 35 | | let basic_ty: BasicTypeEnum = ty.as_llvm_type(context)?.try_into().map_err::(|_| todo!())?; [INFO] [stdout] ... | [INFO] [stdout] 38 | | self.is_vararg [INFO] [stdout] 39 | | )?; [INFO] [stdout] | |__________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:41:9 [INFO] [stdout] | [INFO] [stdout] 41 | Ok(AnyTypeEnum::FunctionType(fn_type)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:49:47 [INFO] [stdout] | [INFO] [stdout] 49 | ) -> Result, CodegenError> { [INFO] [stdout] | _______________________________________________^ [INFO] [stdout] 50 | | match return_type { [INFO] [stdout] 51 | | AnyTypeEnum::VoidType(void_type) => [INFO] [stdout] 52 | | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] ... | [INFO] [stdout] 58 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | / match return_type { [INFO] [stdout] 51 | | AnyTypeEnum::VoidType(void_type) => [INFO] [stdout] 52 | | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] 53 | | _ => { [INFO] [stdout] ... | [INFO] [stdout] 57 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:52:13 [INFO] [stdout] | [INFO] [stdout] 52 | Ok(void_type.fn_type(argument_types, is_vararg)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:53:14 [INFO] [stdout] | [INFO] [stdout] 53 | _ => { [INFO] [stdout] | ______________^ [INFO] [stdout] 54 | | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] 55 | | Ok(return_type.fn_type(argument_types, is_vararg)) [INFO] [stdout] 56 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: ControlFlow, BasicTypeEnum<'_>> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:54:46 [INFO] [stdout] | [INFO] [stdout] 54 | let return_type: BasicTypeEnum = return_type.try_into().map_err::(|_| todo!("Yes"))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this type will no longer be must used: Result, CodegenError> [INFO] [stdout] --> ramen-backend-llvm/src/types.rs:55:13 [INFO] [stdout] | [INFO] [stdout] 55 | Ok(return_type.fn_type(argument_types, is_vararg)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `ramen_backend_llvm` (lib test) due to 56 previous errors; 6 warnings emitted [INFO] running `Command { std: "docker" "inspect" "2545a9ed09d3438b27ceeca0e2f9de45235075aa7da4c97d7a299a23a544bb7e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2545a9ed09d3438b27ceeca0e2f9de45235075aa7da4c97d7a299a23a544bb7e", kill_on_drop: false }` [INFO] [stdout] 2545a9ed09d3438b27ceeca0e2f9de45235075aa7da4c97d7a299a23a544bb7e