Точка с запятой в конце оператора if
Сегодня, после получаса поиска ошибки, я обнаружил, что можно ставить точку с запятой после оператора if вместо кода, например:
if(a == b);
// Do stuff
Что в основном означает, что все будет выполнено независимо от того, равен ли b или нет, и оператор if не имеет никакого смысла. Почему нетЯва дает мне ошибку? Есть ли ситуации, в которых это было бы полезно?