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

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

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

V8040. The value of the variable is overwritten before it is used.

06 Авг 2026

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

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

func createUser(req *http.Request) error {
  user, err := parseUser(req)
  if err != nil {
    return err
  }

  err = validateUser(user)
  err = saveUser(user)

  return err
}

Возвращаемое значение функции validateUser присваивается переменной err. На следующей строке этой же переменной присваивается новое значение. Следовательно, результат validateUser не был обработан.

Для исправления нужно добавить проверку переменной err сразу после присваивания ей возвращаемого значения validateUser:

func createUser(req *http.Request) error {
  user, err := parseUser(req)
  if err != nil {
    return err
  }

  err = validateUser(user)

  if err != nil {
    return err
  }

  err = saveUser(user)

  return err
}