E0031

E0031#

可选参数从未被提供。如果可选参数从未被提供,那么它可以安全地从参数列表中移除,并作为普通变量纯粹在内部使用。

错误示例#

注意,默认情况下,此警告是关闭的。要启用此警告,你必须修改 moon.pkg.json"warn-list"

moon.pkg.json#
{
  "is_main": true,
  "warn-list": "+31"
}
main.mbt#
///|
fn f(opt~ : Int = 4) -> Int {
  ignore(opt)
  0
}

///|
fn main {
  println(f())
  println(f())
}

建议#

你可以移除可选参数,并使用局部变量定义代替:

///|
fn f() -> Int {
  let opt = 4
  ignore(opt)
  0
}

///|
fn main {
  println(f())
  println(f())
}