>
>
>
V6085. An abnormality within similar co…


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, то внимательно изучите соответствующий фрагмент кода. Иногда опечатку бывает сложно заметить.

Данная диагностика классифицируется как: