Rust errors / Names, paths and imports
Rust compiler error · checked with rustc 1.99.0
Rust error E0259: the name `core` is defined multiple times
What it meansThe name chosen for an external crate conflicts with another external crate that has been imported into the current module.
What rustc prints
error[E0259]: the name `core` is defined multiple times --> main.rs:2:1 | 1 | extern crate core; | ------------------ previous import of the extern crate `core` here 2 | extern crate std as core; | ^^^^^^^^^^^^^^^^^^^^^^^^^ `core` reimported here | = note: `core` must be defined only once in the type namespace of this module help: you can use `as` to change the binding name of the import | 2 | extern crate std as other_core; | ++++++
Real output of rustc 1.99.0 compiling the official example below (2021 edition). Your names and line numbers will differ; the first line is the part to match.
The compiler team's explanation
The name chosen for an external crate conflicts with another external crate that has been imported into the current module.
Erroneous code example:
extern crate core;
extern crate std as core;
fn main() {}
The solution is to choose a different name that doesn't conflict with any external crate imported into the current module.
Correct example:
extern crate core;
extern crate std as other_name;
fn main() {}From rustc --explain E0259 (1.99.0), part of the Rust project, MIT or Apache-2.0. Official page.
Related errors
- E0425cannot find value in this scope
- E0603is private
- E0432unresolved import
- E0005refutable pattern in local binding
- E0254the name `core` is defined multiple times
- E0255the name `foo` is defined multiple times
- E0260the name `core` is defined multiple times
- E0365`foo` is only public within the crate, and cannot be re-exported outside
Up next
Often hit nextE0425: cannot find value in this scopeA related error from the same family.Read it next →Did this answer your question?