E4107

E4107#

此 for 循环中多次声明了名称。

当在 for 循环的初始化块中多次声明相同的变量名时,会发生此错误。在 for 循环的初始化中,每个变量必须有一个唯一的名称,以避免应该使用哪个值的歧义。

错误示例#

pub fn f(x: Int) -> Unit {
   for i = 0, i = 1; i < x; i = i + 1 {
//            ^ --- Error: i is declared multiple times in this for-loop
    println(i)
  }
}

建议#

要修复此错误,您可以更改初始化块中的变量名称:

pub fn f(x: Int) -> Unit {
  for i = 0, j = 1; i < x; i = i + 1 {
    println(i)
  }
}