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

Вебинар: Хороший тимлид — не друг и не надсмотрщик. Как найти баланс через 1-to-1 - 28.05

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

V8021. Using a unary operator several times is meaningless or reverses the result.

27 Май 2026

Анализатор обнаружил унарный оператор !, ^, - или +, который два раза подряд применяется к одному выражению. Повторное применение оператора + является избыточным. В случае других операторов это приведёт к отмене эффекта первого применения.

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

func foo() { 
  ....
  for _, u := range users { 
    if !(!hideInactive) && !u.IsActive { 
      continue 
    }
    ....
  }
}

Здесь оператор ! дважды применяется к переменной hideInactive, что эквивалентно отсутствию отрицания. Такая ошибка может возникнуть из-за опечатки при расстановке скобок в условии.

Корректный код:

if !(!hideInactive && !u.IsActive) { 
  continue 
}