A non-const function was called in a const context.
Erroneous code example:
#![allow(unused)]
fn main() {
fn create_some() -> Option<u8> {
Some(1)
}
// error: cannot call non-const function `create_some` in constants
const FOO: Option<u8> = create_some();
} All functions used in a const context (constant or static expression) must be marked const.
To fix this error, you can declare create_some as a constant function:
#![allow(unused)]
fn main() {
// declared as a `const` function:
const fn create_some() -> Option<u8> {
Some(1)
}
const FOO: Option<u8> = create_some(); // no error!
}
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/error_codes/E0015.html