E3010#
Only labelled arguments can have default value.
Erroneous example#
fn greet(name : String = "World") -> Unit {
// ^ Error: Only labelled arguments can have default value.
println("Hello, " + name + "!")
}
Suggestion#
Use a labelled argument with ~
if you want to provide a default value:
fn greet(name~ : String = "World") -> Unit {
println("Hello, " + name + "!")
}
fn main {
// Can be called as:
greet() // Uses default value "World"
greet(name="Alice") // Uses provided value "Alice"
}
Or remove the default value if you want to keep it as a positional argument:
fn greet(name: String) -> Unit {
println("Hello, " + name + "!")
}