diff options
| author | bors <bors@rust-lang.org> | 2018-12-03 11:59:11 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2018-12-03 11:59:11 +0000 |
| commit | 9cd3bef4cfaaac2a608682d4b0834cda344249e0 (patch) | |
| tree | 9d76d2956c5130a1225e96b17fb664434fe1dca9 /src/test/debuginfo | |
| parent | 7139e1c3ab0f6b912955f27a0f7df13c582ce5ec (diff) | |
| parent | fb204cb92f5da2cd0b630ee4b6be85b02404823e (diff) | |
| download | rust-9cd3bef4cfaaac2a608682d4b0834cda344249e0.tar.gz rust-9cd3bef4cfaaac2a608682d4b0834cda344249e0.zip | |
Auto merge of #55010 - tromey:Bug-9224-generic-parameters, r=michaelwoerister
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/test/debuginfo')
| -rw-r--r-- | src/test/debuginfo/associated-types.rs | 4 | ||||
| -rw-r--r-- | src/test/debuginfo/generic-method-on-generic-struct.rs | 5 | ||||
| -rw-r--r-- | src/test/debuginfo/generic-struct.rs | 5 | ||||
| -rw-r--r-- | src/test/debuginfo/generic-tuple-style-enum.rs | 4 | ||||
| -rw-r--r-- | src/test/debuginfo/method-on-generic-struct.rs | 4 |
5 files changed, 16 insertions, 6 deletions
diff --git a/src/test/debuginfo/associated-types.rs b/src/test/debuginfo/associated-types.rs index 229f9466b51..c9c23955348 100644 --- a/src/test/debuginfo/associated-types.rs +++ b/src/test/debuginfo/associated-types.rs @@ -8,7 +8,9 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// min-lldb-version: 310 +// Some versions of the non-rust-enabled LLDB print the wrong generic +// parameter type names in this test. +// rust-lldb // compile-flags:-g diff --git a/src/test/debuginfo/generic-method-on-generic-struct.rs b/src/test/debuginfo/generic-method-on-generic-struct.rs index 97bb9aa98e8..df1f1e3d4ee 100644 --- a/src/test/debuginfo/generic-method-on-generic-struct.rs +++ b/src/test/debuginfo/generic-method-on-generic-struct.rs @@ -11,7 +11,10 @@ // ignore-tidy-linelength // compile-flags:-g -// min-lldb-version: 310 + +// Some versions of the non-rust-enabled LLDB print the wrong generic +// parameter type names in this test. +// rust-lldb // === GDB TESTS =================================================================================== diff --git a/src/test/debuginfo/generic-struct.rs b/src/test/debuginfo/generic-struct.rs index 4e06a15e1cd..ebaac96946c 100644 --- a/src/test/debuginfo/generic-struct.rs +++ b/src/test/debuginfo/generic-struct.rs @@ -9,7 +9,10 @@ // except according to those terms. // ignore-tidy-linelength -// min-lldb-version: 310 + +// Some versions of the non-rust-enabled LLDB print the wrong generic +// parameter type names in this test. +// rust-lldb // compile-flags:-g diff --git a/src/test/debuginfo/generic-tuple-style-enum.rs b/src/test/debuginfo/generic-tuple-style-enum.rs index ebd43daf464..8bda0e41915 100644 --- a/src/test/debuginfo/generic-tuple-style-enum.rs +++ b/src/test/debuginfo/generic-tuple-style-enum.rs @@ -41,7 +41,7 @@ // lldb-command:run // lldb-command:print case1 -// lldbr-check:(generic_tuple_style_enum::Regular<u16, u32, u64>::Case1) case1 = { = 0 = 31868 = 31868 = 31868 = 31868 } +// lldbr-check:(generic_tuple_style_enum::Regular<u16, u32, u64>::Case1) case1 = { __0 = 0 __1 = 31868 __2 = 31868 __3 = 31868 __4 = 31868 } // lldb-command:print case2 // lldbr-check:(generic_tuple_style_enum::Regular<i16, i32, i64>::Case2) case2 = Regular<i16, i32, i64>::Case2 { Case1: 0, Case2: 286331153, Case3: 286331153 } @@ -50,7 +50,7 @@ // lldbr-check:(generic_tuple_style_enum::Regular<i16, i32, i64>::Case3) case3 = Regular<i16, i32, i64>::Case3 { Case1: 0, Case2: 6438275382588823897 } // lldb-command:print univariant -// lldbr-check:(generic_tuple_style_enum::Univariant<i64>) univariant = { TheOnlyCase = { = -1 } } +// lldbr-check:(generic_tuple_style_enum::Univariant<i64>) univariant = Univariant<i64> { TheOnlyCase: Univariant<i64>::TheOnlyCase(-1) } #![feature(omit_gdb_pretty_printer_section)] #![omit_gdb_pretty_printer_section] diff --git a/src/test/debuginfo/method-on-generic-struct.rs b/src/test/debuginfo/method-on-generic-struct.rs index 57238961e3f..f4f7bdcecc6 100644 --- a/src/test/debuginfo/method-on-generic-struct.rs +++ b/src/test/debuginfo/method-on-generic-struct.rs @@ -8,7 +8,9 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. -// min-lldb-version: 310 +// Some versions of the non-rust-enabled LLDB print the wrong generic +// parameter type names in this test. +// rust-lldb // compile-flags:-g |
