diff --git a/src/codegen.cpp b/src/codegen.cpp index 60fcfa8ab5be1..72a8b78dc787c 100644 --- a/src/codegen.cpp +++ b/src/codegen.cpp @@ -458,6 +458,10 @@ static Type *get_pjlvalue(LLVMContext &C) { return JuliaType::get_pjlvalue_ty(C) static FunctionType *get_func_sig(LLVMContext &C) { return JuliaType::get_jlfunc_ty(C); } +static FunctionType *get_donotdelete_sig(LLVMContext &C) { + return FunctionType::get(getVoidTy(C), true); +} + static AttributeList get_func_attrs(LLVMContext &C) { return AttributeList::get(C, @@ -1100,7 +1104,7 @@ static const auto &builtin_func_map() { { jl_f_arrayset_addr, new JuliaFunction{XSTR(jl_f_arrayset), get_func_sig, get_func_attrs} }, { jl_f_arraysize_addr, new JuliaFunction{XSTR(jl_f_arraysize), get_func_sig, get_func_attrs} }, { jl_f_apply_type_addr, new JuliaFunction{XSTR(jl_f_apply_type), get_func_sig, get_func_attrs} }, - { jl_f_donotdelete_addr, new JuliaFunction{XSTR(jl_f_donotdelete), get_func_sig, get_donotdelete_func_attrs} } + { jl_f_donotdelete_addr, new JuliaFunction{XSTR(jl_f_donotdelete), get_donotdelete_sig, get_donotdelete_func_attrs} } }; return builtins; }