Lines Matching full:explicit

24   explicit(1 << a)
26 // expected-error@-2 {{explicit specifier argument is not a constant expression}}
37 explicit(b)
44 explicit(a +)
50 explicit(false) explicit
52 // expected-error@-2 {{duplicate 'explicit' declaration specifier}}
59 explicit(a == 0)
69 explicit(false) void f(int);// expected-error {{'explicit' can only be specified inside the class definition}}
72 explicit(false) void f(int);// expected-error {{'explicit' can only be applied to a constructor or conversion function}}
77 explicit((T{}, false))
92 explicit(b) B(int) {}
97 explicit(b) A(int) : B<b>(0) {}
110 explicit(b) A(int, int = 0); // expected-note {{not a candidate}}
111 // expected-note@-1+ {{explicit constructor declared here}}
124 A<true> && a5 = { 0};// expected-error {{chosen constructor is explicit}}
126 A<true> a7 = { 0}; // expected-error {{chosen constructor is explicit in copy-initialization}}
143 A<true> d3 = { 0, 0}; // expected-error {{chosen constructor is explicit in copy-initialization}}
158 explicit(a ^ is_same<T1, T2>::value)
160 // expected-note@-1+ {{explicit constructor declared here}}
169 A<true, int> && a5 = { 0.0};// expected-error {{chosen constructor is explicit}}
171 A<true, int> a7 = { 0.0}; // expected-error {{chosen constructor is explicit in copy-initialization}}
187 A<true, double> && c5 = { 0};// expected-error {{chosen constructor is explicit}}
189 A<true, double> c7 = { 0}; // expected-error {{chosen constructor is explicit in copy-initialization}}
199 explicit(enable_ifv<is_same<int, T>::value, a>::value)
203 // expected-note@-3 {{explicit constructor declared here}}
205 explicit(enable_ifv<is_same<bool, T>::value, a>::value)
209 // expected-note@-3 {{explicit constructor declared here}}
220 A<true> b7 = { 0}; // expected-error {{chosen constructor is explicit}}
230 A<true> d7 = { true}; // expected-error {{chosen constructor is explicit}}
238 explicit(a) operator int (); // expected-note+ {{not a candidate}}
294 explicit(enable_ifv<is_same<B, T2>::value, a>::value)
348 explicit((is_same<T, Ts>::value && ...))
351 // expected-note@-2 {{explicit constructor}}
363 A<int> a3 = { 0, 1}; // expected-error {{chosen constructor is explicit}}
398 explicit(false)
405 explicit(enable_ifv<is_same<T1, T2>::value, b>::value)
407 // expected-note@-1+ {{explicit deduction guide declared here}}
419 A b2 = { 0, 1, b_true}; // expected-error {{explicit deduction guide for copy-list-initialization}}
441 explicit(b)
443 //expected-note@-1 {{explicit constructor declared here}}
447 explicit(!is_same<T1, int>::value)
449 // expected-note@-1+ {{explicit deduction guide declared here}}
466 A b2 = { 0.0, 1}; // expected-error {{explicit deduction guide for copy-list-initialization}}
472 A c2 = { 0, 1.0}; // expected-error {{chosen constructor is explicit}}
480 A d2 = { 0.0, 1.0}; // expected-error {{explicit deduction guide for copy-list-initialization}}
492 explicit(!b) operator int();
493 explicit(b) operator bool();
518 explicit(b) operator X() const;
519 explicit(b) operator Y() const; // expected-note 2{{not a candidate}}
520 explicit(b) operator int() const; // expected-note {{not a candidate}}
560 explicit(!is_same<T1, T>::value)
561 operator T(); // expected-note+ {{explicit conversion function is not a candidate}}
684 explicit(!is_same<T1, T2>::value)
686 // expected-note@-1 {{explicit constructor declared here}}
687 // expected-note@-2 2{{explicit constructor is not a candidate}}
701 A b4 = {0.0, 0}; // expected-error {{explicit constructor}}
704 explicit A(T1, T2) -> A<T1, T2>;
705 // expected-note@-1+ {{explicit deduction guide}}
710 A c3 = {0, 0};// expected-error {{explicit deduction guide}}
715 A d3 = {0.0, 0.0};// expected-error {{explicit deduction guide}}
724 explicit(N > 7)
725 Str(char const (&str)[N]); // expected-note {{explicit constructor is not a candidate}}
741 explicit(sizeof(char[2])) S(char); // expected-error {{explicit specifier argument evaluates to 2, which cannot be narrowed to type 'bool'}}
742 explicit(ptr) S(long); // expected-error {{conversion from 'const int *' to 'bool' is not allowed in a converted constant expression}}
743 explicit(nullptr) S(int); // expected-error {{conversion from 'std::nullptr_t' to 'bool' is not allowed in a converted constant expression}}
744 explicit(42L) S(int, int); // expected-error {{explicit specifier argument evaluates to 42, which cannot be narrowed to type 'bool'}}
745 explicit(sizeof(char)) S();
746 explicit(0) S(char, char);
747 explicit(1L) S(char, char, char);