Error code E0252

Two items of the same name cannot be imported without rebinding one of the items under a new local name.

Erroneous code example:

use foo::baz; use bar::baz; // error, do `use bar::baz as quux` instead fn main() {} mod foo { pub struct baz; } mod bar { pub mod baz {} }

You can use aliases in order to fix this error. Example:

use foo::baz as foo_baz; use bar::baz; // ok! fn main() {} mod foo { pub struct baz; } mod bar { pub mod baz {} }

Or you can reference the item with its parent:

use bar::baz; fn main() { let x = foo::baz; // ok! } mod foo { pub struct baz; } mod bar { pub mod baz {} }