Home | History | Annotate | Download | only in expr.const

Lines Matching full:expression

3 // A converted constant expression of type T is a core constant expression,
5 enum NonConstE : unsigned char { NCE = nonconst }; // expected-error {{enumerator value is not a constant expression}} expected-note {{read of non-const}}
6 template<int = nonconst> struct NonConstT {}; // expected-error {{non-type template argument is not a constant expression}} expected-note {{read of non-const}}
9 case nonconst: // expected-error {{case value is not a constant expression}} expected-note {{read of non-const}}
15 // implicitly converted to a prvalue of type T, where the converted expression
16 // is a literal constant expression
84 using Int = A<1.0>; // expected-error {{conversion from 'double' to 'unsigned char' is not allowed in a converted constant expression}}
86 True = &a, // expected-error {{conversion from 'bool (*)(int)' to 'bool' is not allowed in a converted constant expression}}
87 False = nullptr // expected-error {{conversion from 'nullptr_t' to 'bool' is not allowed in a converted constant expression}}
92 case 0.0f: // expected-error {{conversion from 'float' to 'int' is not allowed in a converted constant expression}}
100 int n = Val<bool, &S::operator int>::value; // expected-error-re {{conversion from 'int (S::*)(){{( __attribute__\(\(thiscall\)\))?}} const' to 'bool' is not allowed in a converted constant expression}}
107 // Under the FDIS, this is not a converted constant expression.