Skip to content

Commit 62d79f2

Browse files
committed
[cxx-interop] Add a test for instantiation of a default destructor
This is a follow-up to f56fa41. rdar://124061505 (cherry picked from commit 34c796d)
1 parent 70b489c commit 62d79f2

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

test/Interop/Cxx/class/Inputs/destructors.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,16 @@ struct HasNonTrivialImplicitDestructor {
2828
HasUserProvidedDestructor member;
2929
};
3030

31+
template <typename T>
32+
struct TemplatedHasVirtualDestructor {
33+
T value;
34+
virtual ~TemplatedHasVirtualDestructor() {}
35+
};
36+
37+
template <typename T>
38+
struct DerivedTemplatedHasVirtualDestructor : TemplatedHasVirtualDestructor<T> {
39+
};
40+
41+
using DerivedTemplatedHasVirtualDestructorChar = DerivedTemplatedHasVirtualDestructor<char>;
42+
3143
#endif // TEST_INTEROP_CXX_CLASS_INPUTS_DESTRUCTORS_H
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// RUN: %target-swiftxx-frontend -emit-ir -I %S/Inputs -validate-tbd-against-ir=none %s | %FileCheck %s
2+
3+
import Destructors
4+
5+
let _ = DerivedTemplatedHasVirtualDestructorChar()
6+
7+
// CHECK: define {{.*}} @{{_ZN36DerivedTemplatedHasVirtualDestructorIcED2Ev|"\?\?1\?\$DerivedTemplatedHasVirtualDestructor@D@@UEAA@XZ"}}
8+
// CHECK: entry:
9+
// CHECK: call {{.*}} @{{_ZN29TemplatedHasVirtualDestructorIcED2Ev|"\?\?1\?\$TemplatedHasVirtualDestructor@D@@UEAA@XZ"}}

0 commit comments

Comments
 (0)