# 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 {}
    }