blob: 852b89d809fab4c27b86e3c1e92baf33ccd68172 [file] [log] [blame]
Richard Smith9ca5c422011-10-13 22:29:441// RUN: %clang_cc1 -fsyntax-only -std=c++11 %s -verify
Douglas Gregor52235292011-09-22 23:04:352
3namespace PR10457 {
4
5 class string
6 {
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<6>' creates a delegation cycle}}
13 };
14
15 void f() {
16 string s("hello");
17 }
Douglas Gregord73f3dd2011-11-01 01:16:0318
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 }
Douglas Gregor52235292011-09-22 23:04:3531}
Eli Friedmana9e9ebc2012-05-19 23:35:2332
33namespace PR12890 {
34 class Document
35 {
36 public:
37 Document() = default;
38
39 template <class T>
40 explicit
41 Document(T&& t) : Document()
42 {
43 }
44 };
45 void f()
46 {
47 Document d(1);
48 }
49}