报告常量声明内 iota 的无规律用法。

iota 标识符会针对每个常量声明重置,并针对每个常量规范自动递增。 在一个常量规范内,标识符会保留其值。 显式引用 iota 不会重置计数器。

有关详情,请参阅 Go 规范中的 Iota

如果两个常量规范具有文本相同的表达式列表,其中至少包含一个对 iota 的引用,并且两个常量规范之间只有常量规范,而没有表达式列表,则会触发此检查。

考虑省略冗余的表达式列表,或者每次都写出表达式列表。

示例:

const (
  a = iota  // 0
  b         // 1
  c = iota  // 2
)

由于 c 的定义中的 iota 冗余,触发检查。

示例:

const (
  a, aa = iota, iota       // 0, 0
  b, bb                    // 1, 1
  c, cc = iota + 40, iota  // 42, 2
)

不会触发检查,因为没有一个表达式列表是冗余的。