Error code E0015
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 fn `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! }