about summary refs log tree commit diff
path: root/src/librustc_codegen_llvm/back
diff options
context:
space:
mode:
authorIrina Popa <irinagpopa@gmail.com>2018-07-17 16:08:25 +0300
committerIrina Popa <irinagpopa@gmail.com>2018-07-30 20:10:45 +0300
commitab4f93c7420e34f172b617c0a3dd4d6579d0edb6 (patch)
tree96c019cc619c725b3dcd2857c9dbbf82c04de878 /src/librustc_codegen_llvm/back
parentb643e5144e1109bca5e16f85919d66bc53e88325 (diff)
downloadrust-ab4f93c7420e34f172b617c0a3dd4d6579d0edb6.tar.gz
rust-ab4f93c7420e34f172b617c0a3dd4d6579d0edb6.zip
rustc_codegen_llvm: use safe references for ModuleBuffer.
Diffstat (limited to 'src/librustc_codegen_llvm/back')
-rw-r--r--src/librustc_codegen_llvm/back/lto.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/librustc_codegen_llvm/back/lto.rs b/src/librustc_codegen_llvm/back/lto.rs
index d5d21eb91ec..27a8b5c1d07 100644
--- a/src/librustc_codegen_llvm/back/lto.rs
+++ b/src/librustc_codegen_llvm/back/lto.rs
@@ -527,7 +527,7 @@ impl SerializedModule {
     }
 }
 
-pub struct ModuleBuffer(*mut llvm::ModuleBuffer);
+pub struct ModuleBuffer(&'static mut llvm::ModuleBuffer);
 
 unsafe impl Send for ModuleBuffer {}
 unsafe impl Sync for ModuleBuffer {}
@@ -550,7 +550,7 @@ impl ModuleBuffer {
 
 impl Drop for ModuleBuffer {
     fn drop(&mut self) {
-        unsafe { llvm::LLVMRustModuleBufferFree(self.0); }
+        unsafe { llvm::LLVMRustModuleBufferFree(&mut *(self.0 as *mut _)); }
     }
 }