brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 130a4f8 Raw
55 lines · cpp
1// REQUIRES: x86-registered-target2// RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++11 -S %s -o %t-64.s3// RUN: FileCheck -check-prefix CHECK-LP64 --input-file=%t-64.s %s4// RUN: %clang_cc1 -triple i386-apple-darwin -std=c++11 -S %s -o %t-32.s5// RUN: FileCheck -check-prefix CHECK-LP32 --input-file=%t-32.s %s6 7// PR48268struct A {9  A() {10  }11};12 13template<typename T>14struct B {15  B(T) {}16  17  A nodes;18};19 20 21// PR485322template <typename T> class List {23public:24  List(){ }     // List<BinomialNodeptr>::List() remains undefined.25  ~List() {}26};27 28template <typename T> class Node {29 int i;30public:31 Node(){ }      // Node<BinomialNodeptr>::Node() remains undefined.32 ~Node() {}33};34 35 36template<typename T> class BinomialNode : Node<BinomialNode<T>*> {37public:38  BinomialNode(T value) {}39  List<BinomialNode<T>*> nodes;40};41 42int main() {43  B<int> *n = new B<int>(4);44  BinomialNode<int> *node = new BinomialNode<int>(1);45  delete node;46}47 48// CHECK-LP64: __ZN4ListIP12BinomialNodeIiEED1Ev:49// CHECK-LP64: __ZN4NodeIP12BinomialNodeIiEEC2Ev:50// CHECK-LP64: __ZN4ListIP12BinomialNodeIiEEC1Ev:51 52// CHECK-LP32: __ZN4ListIP12BinomialNodeIiEED1Ev:53// CHECK-LP32: __ZN4NodeIP12BinomialNodeIiEEC2Ev:54// CHECK-LP32: __ZN4ListIP12BinomialNodeIiEEC1Ev:55