brintos

brintos / llvm-project-archived public Read only

0
0
Text · 709 B · db3939d Raw
50 lines · cpp
1// RUN: %clang_cc1 -fsyntax-only -std=c++11 %s -verify 2 3namespace PR10457 {4 5  class string6  {7    string(const char* str, unsigned);8 9  public:10    template <unsigned N>11    string(const char (&str)[N])12      : string(str) {} // expected-error{{constructor for 'string<6U>' creates a delegation cycle}}13  };14 15  void f() {16    string s("hello");17  }18 19  struct Foo {20   Foo(int) { }21 22 23   template <typename T>24   Foo(T, int i) : Foo(i) { }25};26 27  void test_Foo()28  {29    Foo f(1, 1);30  }31}32 33namespace PR12890 {34  class Document35  {36  public:37      Document() = default;38 39      template <class T>40      explicit41      Document(T&& t) : Document()42      {43      }44  };45  void f()46  {47      Document d(1);48  }49}50