brintos

brintos / llvm-project-archived public Read only

0
0
Text · 703 B · d303938 Raw
30 lines · cpp
1// RUN: %clang_cc1 -triple x86_64-linux -std=c++14 %s -emit-llvm -o - | FileCheck %s2// RUN: %clang_cc1 -triple x86_64-linux -std=c++17 %s -emit-llvm -o - | FileCheck %s3 4namespace std {5  template<typename T> class initializer_list {6    const T *data;7    __SIZE_TYPE__ size;8 9  public:10    initializer_list();11  };12}13 14namespace ParenBraceInitList {15  struct Vector {16    Vector(std::initializer_list<int>);17    ~Vector();18  };19 20  struct Base { Base(Vector) {} };21 22  // CHECK: define {{.*}}18ParenBraceInitList1fILi0EE23  template<int> void f() {24    // CHECK: call {{.*}}18ParenBraceInitList6VectorC125    // CHECK: call {{.*}}18ParenBraceInitList6VectorD126    Base({0});27  }28  template void f<0>();29}30