diff --git a/src/module.rs b/src/module.rs index 94e9f80053..5a137e97e6 100644 --- a/src/module.rs +++ b/src/module.rs @@ -12,7 +12,7 @@ use llvm_sys::core::{ LLVMDisposeModule, LLVMDumpModule, LLVMGetFirstFunction, LLVMGetFirstGlobal, LLVMGetLastFunction, LLVMGetLastGlobal, LLVMGetModuleContext, LLVMGetModuleIdentifier, LLVMGetNamedFunction, LLVMGetNamedGlobal, LLVMGetNamedMetadataNumOperands, LLVMGetNamedMetadataOperands, LLVMGetTarget, LLVMPrintModuleToFile, - LLVMPrintModuleToString, LLVMSetDataLayout, LLVMSetModuleIdentifier, LLVMSetTarget, + LLVMPrintModuleToString, LLVMSetDataLayout, LLVMSetModuleIdentifier, LLVMSetTarget, LLVMDisposeMessage }; #[llvm_versions(7..)] use llvm_sys::core::{LLVMAddModuleFlag, LLVMGetModuleFlag}; @@ -740,6 +740,8 @@ impl<'ctx> Module<'ctx> { return unsafe { Err(LLVMString::new(err_str)) }; } + unsafe { LLVMDisposeMessage(err_str) }; + Ok(()) }