Error code E0755

The ffi_pure attribute was used on a non-foreign function.

Erroneous code example:


#[ffi_pure] // error!
pub fn foo() {}
fn main() {}

The ffi_pure attribute can only be used on foreign functions which do not have side effects or infinite loops:


extern "C" {
    #[ffi_pure] // ok!
    pub fn strlen(s: *const i8) -> isize;
fn main() {}

You can find more information about it in the unstable Rust Book.