'operation' : unsafe operation: no value of type 'type' promoted to type 'type' can equal the given constant
This message warns against code such as b == 3
, where b
has type bool. The promotion rules cause bool to be promoted to int. This is legal, but it can never be true. The following sample generates C4806:
void main() { bool b = true; // try.. // int b = true; if (b == 3) { // C4806 b = false; } }