| //@ run-pass | |
| #![allow(unused_imports)] | |
| pub use foo::bar::{self, First}; | |
| use self::bar::Second; | |
| mod foo { | |
| pub use self::bar::baz::{self}; | |
| pub mod bar { | |
| pub mod baz { | |
| pub struct Fourth; | |
| } | |
| pub struct First; | |
| pub struct Second; | |
| } | |
| pub struct Third; | |
| } | |
| mod baz { | |
| use super::foo::{bar, self}; | |
| pub use foo::Third; | |
| } | |
| fn main() { | |
| let _ = First; | |
| let _ = Second; | |
| let _ = baz::Third; | |
| let _ = foo::baz::Fourth; | |
| } |