diagnostics for E0432: imports are relative to crate root

This is curiously missing from both the short message and this
long diagnostic.

Refs #31573 (not sure if it should be considered "fixed" as the
short message still only refers to extern crates).
This commit is contained in:
Georg Brandl 2016-05-01 20:40:16 +02:00
parent 2a815a26c8
commit d20b4067fd

View File

@ -916,11 +916,14 @@ An import was unresolved. Erroneous code example:
use something::Foo; // error: unresolved import `something::Foo`. use something::Foo; // error: unresolved import `something::Foo`.
``` ```
Please verify you didn't misspell the import name or the import does exist Paths in `use` statements are relative to the crate root. To import items
in the module from where you tried to import it. Example: relative to the current and parent modules, use the `self::` and `super::`
prefixes, respectively. Also verify that you didn't misspell the import
name and that the import exists in the module from where you tried to
import it. Example:
```ignore ```ignore
use something::Foo; // ok! use self::something::Foo; // ok!
mod something { mod something {
pub struct Foo; pub struct Foo;
@ -928,7 +931,7 @@ mod something {
``` ```
Or, if you tried to use a module from an external crate, you may have missed Or, if you tried to use a module from an external crate, you may have missed
the `extern crate` declaration: the `extern crate` declaration (which is usually placed in the crate root):
```ignore ```ignore
extern crate homura; // Required to use the `homura` crate extern crate homura; // Required to use the `homura` crate