== Why is this an issue? There is no point in creating a branch in the code only to execute an empty statement. Such code can only be due to the presence of an unexpected trailing semi-colon. === Noncompliant code example [source,text] ---- if(foo); // Noncompliant, the semi-colon must be removed trigger(action1); // executes unconditionally else if (bar); // Noncompliant, the semi-colon must be removed trigger(action2); // executes unconditionally while (condition); // Noncompliant doTheThing(); // executes once, unconditionally ----