E0032

E0032#

可选参数的默认值未被使用。这意味着在这个函数的每个调用点,可选参数总是显式地提供一个值。这意味着可选参数可以重构为带标签的参数。

错误示例#

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

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

///|
fn main {
  println(f(opt=3))
  println(f(opt=3))
}

建议#

将可选参数转换为带标签的参数:

///|
fn f(opt~ : Int) -> Int {
  ignore(opt)
  0
}

///|
fn main {
  println(f(opt=3))
  println(f(opt=3))
}