Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
menu mobile close menu
Проверка проектов
Дополнительная информация
toggle menu Оглавление

V8010. Two or more 'case' branches have equivalent expressions.

03 Апр 2026

Анализатор обнаружил одинаковые выражения в case. Это может быть опечаткой, возникшей в результате copy-paste. Она может привести к тому, что в switch будут обработаны не все варианты, которые задумывал разработчик, а также часть кода будет недостижимой.

Рассмотрим пример ошибки:

const (
    MONDAY    = 1
    TUESDAY   = 2
    WEDNESDAY = 3
    THURSDAY  = 4
    FRIDAY    = 5
)

switch {
case day == MONDAY:
  ....  
case day == TUESDAY:
  ....
case day == WEDNESDAY:
  ....
case day == THURSDAY:
  ....
case day == MONDAY:
  ....
}

В данном примере два раза используется условие day == MONDAY. Таким образом, код внутри последнего case будет недостижим. Вместо второго одинакового выражения предполагалось использовать условие day == FRIDAY.

Исправленный вариант:

switch {
case day == MONDAY:
  ....  
case day == TUESDAY:
  ....
case day == WEDNESDAY:
  ....
case day == THURSDAY:
  ....
case day == FRIDAY:
  ....
}

Взгляните на примеры ошибок, обнаруженных с помощью диагностики V8010.

Испытай
удачу!

Испытай удачу —
крути колесо!

Prize circle Prize circle Outer ring

Поздравляем!
Вы получили триал на 30 дней!

Обманул систему, молодец! В качестве приза получи триал на 30 дней!