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

Вебинар: Стратегия без иллюзий: как превращать цели в результаты - 19.08

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

V8033. Two similar code fragments were found. A second fragment may contain a typo.

06 Авг 2026

Анализатор обнаружил потенциальную опечатку: в коде используется идентификатор (локальная переменная, поле, параметр или функция) который, скорее всего, должен быть заменён другим идентификатором. На это указывает наличие структурно похожего фрагмента кода, который, вероятно, послужил шаблоном при написании текущего.

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

if currentUser != nil 
{ 
  updateProfile(currentUser)
  sendNotification(currentUser)
} 
if newUser != nil 
{ 
  updateProfile(newUser)
  sendNotification(currentUser)
}

Во втором if вместо переменной currentUser должна использоваться переменная newUser. Корректный код выглядит так:

if currentUser != nil 
{ 
  updateProfile(currentUser)
  sendNotification(currentUser)
} 
if newUser != nil 
{ 
  updateProfile(newUser)
  sendNotification(newUser)
}

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

if FindMin(xCoords) < FindMin(yCoords) {
  minBoundary = FindMin(xCoords)
} else {
  minBoundary = FindMin(yCoords)
}

if FindMax(xCoords) < FindMax(yCoords) {
  maxBoundary = FindMin(yCoords)          // <=
} else {
  maxBoundary = FindMax(xCoords)
}

В then-блоке второго if вместо FindMin должен вызываться FindMax. Корректный вариант будет выглядеть так:

if FindMin(xCoords) < FindMin(yCoords) {
  minBoundary = FindMin(xCoords)
} else {
  minBoundary = FindMin(yCoords)
}

if FindMax(xCoords) < FindMax(yCoords) {
  maxBoundary = FindMax(yCoords)
} else {
  maxBoundary = FindMax(xCoords)
}