Вебинар: Go-Go-Gadg...Error? Смотрим, как ошибаются Go разработчики! - 26.08
Анализатор обнаружил фрагмент кода, который может содержать логическую ошибку: оператор, операнды которого эквивалентны.
Пример:
if (a != 0 && a != 0)
В данном случае слева и справа от оператора && находятся одинаковые выражения a != 0, что сигнализирует об ошибке, допущенной по невнимательности. Вероятно, требовалось проверить другую переменную:
if (a != 0 && b != 0)
Также вторая проверка могла оказаться лишней.
Учитываются также не идентичные, но эквивалентные выражения. Например, на данный фрагмент кода:
if ((a * b) > (b * a))
Будет выдано предупреждение, так как операция умножения является коммутативной, и результат окажется одинаковым.
Взгляните на примеры ошибок, обнаруженных с помощью диагностики V7001. |
Была ли полезна эта страница документации?
Мы ответим вам на:
Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок: