Add note regarding parent module containing use statement.

This commit is contained in:
Mark Simulacrum 2017-05-28 08:28:21 -06:00
parent 924898f88a
commit c85a8fb709

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##"