An unresolved name was used.
Erroneous code examples:
something_that_doesnt_exist::foo; // error: unresolved name `something_that_doesnt_exist::foo` // or: trait Foo { fn bar() { Self; // error: unresolved name `Self` } } // or: let x = unknown_variable; // error: unresolved name `unknown_variable`
Please verify that the name wasn't misspelled and ensure that the identifier being referred to is valid for the given situation. Example:
enum something_that_does_exist { Foo, }
Or:
mod something_that_does_exist { pub static foo : i32 = 0i32; } something_that_does_exist::foo; // ok!
Or:
let unknown_variable = 12u32; let x = unknown_variable; // ok!
If the item is not defined in the current module, it must be imported using a use
statement, like so:
# mod foo { pub fn bar() {} } # fn main() { use foo::bar; bar(); # }
If the item you are importing is not defined in some super-module of the current module, then it must also be declared as public (e.g., pub fn
).