about summary refs log tree commit diff
path: root/src/librustc_codegen_llvm/llvm/ffi.rs
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-10-12 07:34:14 -0600
committerTom Tromey <tom@tromey.com>2018-11-29 13:04:09 -0700
commitfb204cb92f5da2cd0b630ee4b6be85b02404823e (patch)
tree4586fecc69bb15a73ec5337261eef0a3cb840151 /src/librustc_codegen_llvm/llvm/ffi.rs
parent0c1dc62c1ec3c23dcb5e90500a2b3b25817ad03a (diff)
downloadrust-fb204cb92f5da2cd0b630ee4b6be85b02404823e.tar.gz
rust-fb204cb92f5da2cd0b630ee4b6be85b02404823e.zip
Add template parameter debuginfo to generic types
This changes debuginfo generation to add template parameters to
generic types.  With this change the DWARF now has
DW_TAG_template_type_param for types, not just for functions, like:

 <2><40d>: Abbrev Number: 6 (DW_TAG_structure_type)
    <40e>   DW_AT_name        : (indirect string, offset: 0x375): Generic<i32>
    <412>   DW_AT_byte_size   : 4
    <413>   DW_AT_alignment   : 4
...
 <3><41f>: Abbrev Number: 8 (DW_TAG_template_type_param)
    <420>   DW_AT_type        : <0x42a>
    <424>   DW_AT_name        : (indirect string, offset: 0xa65e): T

Closes #9224
Diffstat (limited to 'src/librustc_codegen_llvm/llvm/ffi.rs')
-rw-r--r--src/librustc_codegen_llvm/llvm/ffi.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/librustc_codegen_llvm/llvm/ffi.rs b/src/librustc_codegen_llvm/llvm/ffi.rs
index f1a966d7654..88915c2beb0 100644
--- a/src/librustc_codegen_llvm/llvm/ffi.rs
+++ b/src/librustc_codegen_llvm/llvm/ffi.rs
@@ -1586,9 +1586,10 @@ extern "C" {
                                             LineNo: c_uint)
                                             -> &'a DINameSpace;
 
-    pub fn LLVMRustDICompositeTypeSetTypeArray(Builder: &DIBuilder<'a>,
-                                               CompositeType: &'a DIType,
-                                               TypeArray: &'a DIArray);
+    pub fn LLVMRustDICompositeTypeReplaceArrays(Builder: &DIBuilder<'a>,
+                                                CompositeType: &'a DIType,
+                                                Elements: Option<&'a DIArray>,
+                                                Params: Option<&'a DIArray>);
 
 
     pub fn LLVMRustDIBuilderCreateDebugLocation(Context: &'a Context,