== Why is this an issue? Implicit casts which do not make sense are likely to be programming errors. The rule reports an issue for the following implicit casts: * Boolean to pointer * Float to boolean * ``++nullptr++`` constant to integer === Noncompliant code example [source,cpp] ---- float f(); bool test() { int* j = false; // Noncompliant bool b = f(); // Noncompliant if (b) { return j; // Compliant, pointer to bool } else { return nullptr; // Noncompliant, just return false } } ----