Conditional statements using a condition which cannot be anything but `false` have the effect of making blocks of code non-functional. If the condition cannot evaluate to anything but `true`, the conditional statement is completely redundant, and makes the code less readable.

It is quite likely that the code does not match the programmer's intent.

Either the condition should be removed or it should be updated so that it does not always evaluate to `true` or `false`.

## Noncompliant Code Example

    var foo = 42;
    // ...
    if (foo) { // Noncompliant, always true
    }

    if (foo) {
      if (!foo) { // Noncompliant, always false
        // ...
      }
    }

## See

- MISRA C:2004, 13.7 - Boolean operations whose results are invariant shall not be permitted.
- MISRA C:2012, 14.3 - Controlling expressions shall not be invariant
- MITRE, CWE-489 - Leftover Debug Code
- MITRE, CWE-570 - Expression is Always False
- MITRE, CWE-571 - Expression is Always True
- CERT, MSC12-C. - Detect and remove code that has no effect or is never executed
- CERT, MSC12-CPP. - Detect and remove code that has no effect