diff options
author | Adrian Prantl <aprantl@apple.com> | 2016-04-15 15:55:45 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2016-04-15 15:55:45 +0000 |
commit | 92e0abcf102d39387eef8758f9d204d1d4d5a218 (patch) | |
tree | 766e2963bfa18ec8b052f9f45542d8f79343b8c0 /test/CodeGenCXX/debug-info-template-member.cpp | |
parent | 3db93627ecc1853318445d03bcf89718a0f51fde (diff) |
Update to match LLVM changes for PR27284.
(Reverse the ownership between DICompileUnit and DISubprogram.)
http://reviews.llvm.org/D19034
<rdar://problem/25256815>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@266445 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/debug-info-template-member.cpp')
-rw-r--r-- | test/CodeGenCXX/debug-info-template-member.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/test/CodeGenCXX/debug-info-template-member.cpp b/test/CodeGenCXX/debug-info-template-member.cpp index b94ff05df4..a6ba82aa94 100644 --- a/test/CodeGenCXX/debug-info-template-member.cpp +++ b/test/CodeGenCXX/debug-info-template-member.cpp @@ -50,15 +50,6 @@ inline int add3(int x) { // CHECK: [[ELEM_X]] = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !"_ZTS4elem" // CHECK-SAME: baseType: !"_ZTS4virtI4elemE" -// Check that the member function template specialization and implicit special -// members (the default ctor) refer to their class by scope, even though they -// didn't appear in the class's member list (C_MEM). This prevents the functions -// from being added to type units, while still appearing in the type -// declaration/reference in the compile unit. -// CHECK: !DISubprogram(name: "MyClass" -// CHECK-SAME: scope: !"_ZTS7MyClass" -// CHECK: !DISubprogram(name: "add<2>" -// CHECK-SAME: scope: !"_ZTS7MyClass" template<typename T> struct outer { @@ -98,3 +89,13 @@ inline void f1() { void f2() { virt<elem> d; // emit 'virt<elem>' } + +// Check that the member function template specialization and implicit special +// members (the default ctor) refer to their class by scope, even though they +// didn't appear in the class's member list (C_MEM). This prevents the functions +// from being added to type units, while still appearing in the type +// declaration/reference in the compile unit. +// CHECK: !DISubprogram(name: "MyClass" +// CHECK-SAME: scope: !"_ZTS7MyClass" +// CHECK: !DISubprogram(name: "add<2>" +// CHECK-SAME: scope: !"_ZTS7MyClass" |