Ruta graveolens  ·  notes from a language experiment  ·  cultivated since 2025

E0207: Wrong argument count

CodeCategoryStability
E0207SemanticPermanent

Explanation

A call-like construct supplied the wrong number of values or bindings. This applies to function and built-in calls, enum tuple-variant construction (including a payload variant used as a bare value), and enum payload patterns with an explicit binding list. Rue has no default arguments, so a missing call argument is never filled in from the declaration.

Likely cause

A function or built-in call has a missing or extra argument; an enum value supplies the wrong number of payload values; a payload-carrying variant was used without constructing its payload; or a match pattern's parenthesized bindings do not match the variant's payload arity. Pass every argument at the call, or give the common case its own function name.

Examples

Missing call argument

fn identity(value: i32) -> i32 { value }
fn main() -> i32 {
    identity()
}

Supply every argument

fn identity(value: i32) -> i32 { value }
fn main() -> i32 {
    identity(42)
}

References