Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top

Вебинар: Зачем тестировщику нужна безопасность? - 16.04

menu mobile close menu
Проверка проектов
Дополнительная информация
toggle menu Оглавление

V8006. Unconditional 'break/continue/return/goto' within a loop.

03 Апр 2026

Анализатор обнаружил подозрительный цикл, в котором безусловно выполняется одна из следующих инструкций: continue, break, return, goto.

Рассмотрим пример:

for i := 0; i < max; i++ {                
  if i == index {
    value += Calculate(i)
  }
  break
}

В данном коде инструкция break не принадлежит телу инструкции if, из-за чего выполняться будет вне зависимости от истинности условия i == index. Вследствие этого тело цикла будет всегда исполняться только один раз.

Корректный код мог бы выглядеть так:

for i := 0; i < max; i++ {                
  if i == index {
    value += Calculate(i)
    break
  }
}