From 97b64a90a45fb6cd74a3bb0eccea6dabc2e852fc Mon Sep 17 00:00:00 2001 From: Folkert Date: Sat, 26 Mar 2022 19:05:28 +0100 Subject: [PATCH] hacky fix to make llvm + standard linker work --- compiler/gen_llvm/src/llvm/build.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/compiler/gen_llvm/src/llvm/build.rs b/compiler/gen_llvm/src/llvm/build.rs index f053f47a94..ac43a1011c 100644 --- a/compiler/gen_llvm/src/llvm/build.rs +++ b/compiler/gen_llvm/src/llvm/build.rs @@ -3375,7 +3375,14 @@ fn expose_function_to_host_help_c_abi_generic<'a, 'ctx, 'env>( let loaded = env.builder.build_load(fastcc_ptr, "load_arg"); arguments_for_call.push(loaded); } else { - todo!("C <-> Fastcc interaction that we haven't seen before") + // todo!("C <-> Fastcc interaction that we haven't seen before") + + let as_cc_type = env.builder.build_pointer_cast( + arg.into_pointer_value(), + fastcc_type.into_pointer_type(), + "to_cc_type_ptr", + ); + arguments_for_call.push(as_cc_type.into()); } // let cast = complex_bitcast_check_size(env, *arg, fastcc_type, "to_fastcc_type");