Auto merge of #42283 - Mark-Simulacrum:issue-40341, r=pnkfelix

Add note regarding parent module containing use statement.

Fixes #40341.
This commit is contained in:
bors 2017-05-30 05:01:10 +00:00
commit e1fe1a8933

View file

@ -838,6 +838,32 @@ trait Foo {
fn foo<T>(x: T) {} // ok!
```
Another case that causes this error is when a type is imported into a parent
module. To fix this, you can follow the suggestion and use File directly or
`use super::File;` which will import the types from the parent namespace. An
example that causes this error is below:
```compile_fail,E0412
use std::fs::File;
mod foo {
fn some_function(f: File) {}
}
```
```
use std::fs::File;
mod foo {
// either
use super::File;
// or
// use std::fs::File;
fn foo(f: File) {}
}
# fn main() {} // don't insert it for us; that'll break imports
```
"##,
E0415: r##"