V6085. An abnormality within similar comparisons. It is possible that a typo is present inside the expression.


Анализатор обнаружил подозрительное условие, которое может содержать copy-paste ошибку.

Диагностика носит эмпирический характер, поэтому проще показать на примере, как она работает, чем объяснить сам принцип работы анализатора. Рассмотрим пример:

if (m_a != a || 
    m_b != b || 
    m_b != c) // <=
{
  ....
}

Из-за того, что имена переменных очень похожи, в коде допущена опечатка. Ошибка находится в третьей строке. Переменную 'c' следовало сравнить с 'm_c', а не с 'm_b'. Даже читая этот текст сложно заметить ошибку. Обратите внимание на окончания в названии переменных.

Правильный вариант:

if (m_a != a || 
    m_b != b || 
    m_c != c)
{
  ....
}

Если анализатор выдал предупреждение V6085, то внимательно изучите соответствующий фрагмент кода. Иногда опечатку бывает сложно заметить.


Найденные ошибки

Проверено проектов
381
Собрано ошибок
13 764

А ты совершаешь ошибки в коде?

Проверь с помощью
PVS-Studio

Статический анализ
кода для C, C++, C#
и Java

goto PVS-Studio;