iota 識別子が const 宣言に存在している場合に switch ステートメントにある未処理の値を報告します。 このような値を処理するには、case または default 節の使用を検討してください。

Go の iota キーワードは、const ブロックに連続する整数を作成します。 Go コンパイラーはすべての iota 値の処理を必要としませんが、一部の値を処理しないとバグを引き起こす可能性があります。

iota の詳細は、go.dev の「Iota」を参照してください。

例:

const (
  a = iota
  b
  c = -5
)

func main() {
  v := 5
  switch v {
  case a:
    break;
  case b:
    break;
  }
}

cswitch ステートメントで処理されないため、IDE によってインスペクションがトリガーされます。 iota を使用しない場合でも、c が同じ const ブロックにあることに注意してください。

クイックフィックスのオプションには「Create 'case' clause for values (値の 'case' 節を作成)」と「Create 'default' clause ('default' 節の作成)」があります。 「Create 'default' clause ('default' 節の作成)」クイックフィックスが適用されると、以下のようになります。

const (
  a = iota
  b
  c
)

func main() {
  v := 5
  switch v {
  case a:
    break;
  default:
  }
}