about summary refs log tree commit diff
path: root/src/librustc_codegen_llvm/debuginfo/utils.rs
diff options
context:
space:
mode:
authorIrina Popa <irinagpopa@gmail.com>2018-07-04 16:36:49 +0300
committerIrina Popa <irinagpopa@gmail.com>2018-07-30 19:27:13 +0300
commiteed48f560fa44e60cec89df894018dc4599730d0 (patch)
treed845d272c0e8b68d8faa25049febdcde63b23a14 /src/librustc_codegen_llvm/debuginfo/utils.rs
parent6d0d82ce10bfbdb44aab9a2f120b236ebc7e0175 (diff)
downloadrust-eed48f560fa44e60cec89df894018dc4599730d0.tar.gz
rust-eed48f560fa44e60cec89df894018dc4599730d0.zip
rustc_codegen_llvm: use safe references for Metadata and DI*.
Diffstat (limited to 'src/librustc_codegen_llvm/debuginfo/utils.rs')
-rw-r--r--src/librustc_codegen_llvm/debuginfo/utils.rs9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/librustc_codegen_llvm/debuginfo/utils.rs b/src/librustc_codegen_llvm/debuginfo/utils.rs
index 602a64ae3b3..d4d817abd56 100644
--- a/src/librustc_codegen_llvm/debuginfo/utils.rs
+++ b/src/librustc_codegen_llvm/debuginfo/utils.rs
@@ -17,10 +17,9 @@ use rustc::hir::def_id::DefId;
 use rustc::ty::DefIdTree;
 
 use llvm;
-use llvm::debuginfo::{DIScope, DIBuilder, DIDescriptor_opaque, DIArray};
+use llvm::debuginfo::{DIScope, DIBuilder, DIDescriptor, DIArray};
 use common::{CodegenCx};
 
-use std::ptr::NonNull;
 use syntax_pos::{self, Span};
 
 pub fn is_node_local_to_unit(cx: &CodegenCx, def_id: DefId) -> bool
@@ -37,7 +36,7 @@ pub fn is_node_local_to_unit(cx: &CodegenCx, def_id: DefId) -> bool
 }
 
 #[allow(non_snake_case)]
-pub fn create_DIArray(builder: &DIBuilder, arr: &[Option<NonNull<DIDescriptor_opaque>>]) -> DIArray {
+pub fn create_DIArray(builder: &'ll DIBuilder, arr: &[Option<&'ll DIDescriptor>]) -> &'ll DIArray {
     return unsafe {
         llvm::LLVMRustDIBuilderGetOrCreateArray(builder, arr.as_ptr(), arr.len() as u32)
     };
@@ -49,7 +48,7 @@ pub fn span_start(cx: &CodegenCx, span: Span) -> syntax_pos::Loc {
 }
 
 #[inline]
-pub fn debug_context(cx: &'a CodegenCx<'ll, 'tcx>) -> &'a CrateDebugContext<'a, 'tcx> {
+pub fn debug_context(cx: &'a CodegenCx<'ll, 'tcx>) -> &'a CrateDebugContext<'ll, 'tcx> {
     cx.dbg_cx.as_ref().unwrap()
 }
 
@@ -59,7 +58,7 @@ pub fn DIB(cx: &CodegenCx<'ll, '_>) -> &'ll DIBuilder {
     cx.dbg_cx.as_ref().unwrap().builder
 }
 
-pub fn get_namespace_for_item(cx: &CodegenCx, def_id: DefId) -> DIScope {
+pub fn get_namespace_for_item(cx: &CodegenCx<'ll, '_>, def_id: DefId) -> &'ll DIScope {
     item_namespace(cx, cx.tcx.parent(def_id)
         .expect("get_namespace_for_item: missing parent?"))
 }