Patch to instantiate destructors used to destruct
base and data members when they are needed.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80967 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGenCXX/constructor-template.cpp b/test/CodeGenCXX/constructor-template.cpp
index 5fc6c2d..84e77d4 100644
--- a/test/CodeGenCXX/constructor-template.cpp
+++ b/test/CodeGenCXX/constructor-template.cpp
@@ -22,12 +22,14 @@
 template <typename T> class List {
 public:
   List(){ }	// List<BinomialNode<int>*>::List() remains undefined.
+  ~List() {}
 };
 
 template <typename T> class Node {
  int i;
 public:
  Node(){ }      // Node<BinomialNode<int>*>::Node() remains undefined.
+ ~Node() {}
 };
 
 
@@ -40,10 +42,15 @@
 int main() {
   B<int> *n = new B<int>(4);
   BinomialNode<int> *node = new BinomialNode<int>(1);
+  delete node;
 }
 
+// CHECK-LP64: __ZN4ListIP12BinomialNodeIiEED1Ev:
+// CHECK-LP64: __ZN4ListIP12BinomialNodeIiEED2Ev:
 // CHECK-LP64:	__ZN4NodeIP12BinomialNodeIiEEC1Ev:
 // CHECK-LP64: __ZN4ListIP12BinomialNodeIiEEC1Ev:
 
+// CHECK-LP32: __ZN4ListIP12BinomialNodeIiEED1Ev:
+// CHECK-LP32: __ZN4ListIP12BinomialNodeIiEED2Ev:
 // CHECK-LP32: __ZN4NodeIP12BinomialNodeIiEEC1Ev:
 // CHECK-LP32: __ZN4ListIP12BinomialNodeIiEEC1Ev: