//@ run-pass #![allow(unused_imports)] //@ pretty-expanded FIXME #23616 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; }