Не в тему, но в то же время в тему, просто хочу поделиться. Сегодня ошибку на работе нашёл в плюсовом коде. Цикл такого вида:
## Код:
```
for (...)
{
   int b = -1;

   if (something)
   {
      b = (x1 == x2);
   }
   else if (something else)
   {
      b = (x3 == x4);
   }
   else if (something else)
   {
      b = (x5 == x6);
   }
   else if (something else)
   {
      BOOL b = (x7 == x8);
   }
   else if (something else)
   {
      b = (x9 == x10);
   }
   else if (something else)
   {
      b = (x11 == x12);
   }
   else if (something else)
   {
      b = (x13 == x14);
   }
   else
   {
      ASSERT(0);
   }
  
   if (b == TRUE)
   {
      // do something
   }
   else if (b == FALSE)   
   {
      // do something else
   }
   else ; // Do nothing.
}
```
Несколько повторяющихся блоков if с похожим, но разным содержимым, в каждом по два объявления переменных (здесь не показаны). То, что здесь достаточно легко заметить, там просто визуально терялось. В результате имеем случайные несрабатывания.