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:31:09 +0300
committerIrina Popa <irinagpopa@gmail.com>2018-07-30 20:10:47 +0300
commit2e3a6af7faf1841d620baee12993f59cccdd4e4c (patch)
tree28205c5dea223d08b2ab2d6b12c62314789316b7 /src/librustc_codegen_llvm/back
parentab4f93c7420e34f172b617c0a3dd4d6579d0edb6 (diff)
downloadrust-2e3a6af7faf1841d620baee12993f59cccdd4e4c.tar.gz
rust-2e3a6af7faf1841d620baee12993f59cccdd4e4c.zip
rustc_codegen_llvm: use safe references for ThinLTOBuffer.
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 27a8b5c1d07..ce56be734d7 100644
--- a/src/librustc_codegen_llvm/back/lto.rs
+++ b/src/librustc_codegen_llvm/back/lto.rs
@@ -579,7 +579,7 @@ impl Drop for ThinData {
     }
 }
 
-pub struct ThinBuffer(*mut llvm::ThinLTOBuffer);
+pub struct ThinBuffer(&'static mut llvm::ThinLTOBuffer);
 
 unsafe impl Send for ThinBuffer {}
 unsafe impl Sync for ThinBuffer {}
@@ -604,7 +604,7 @@ impl ThinBuffer {
 impl Drop for ThinBuffer {
     fn drop(&mut self) {
         unsafe {
-            llvm::LLVMRustThinLTOBufferFree(self.0);
+            llvm::LLVMRustThinLTOBufferFree(&mut *(self.0 as *mut _));
         }
     }
 }