Skip to main content

E0010: Missing Return Statement

A function with a non-void return type doesn't return a value in all code paths.

Example

fn get_number() -> i64 {
// Error: missing return of type `i64`
}
fn get_number(flag: bool) -> i64 {
if flag {
42
}
// Error: missing return when flag is false
}

How to fix

Ensure all code paths return a value:

fn get_number() -> i64 {
42
}
fn get_number(flag: bool) -> i64 {
if flag {
42
} else {
0
}
}