//@ edition:2015
//@ run-rustfix
use std::vec;

use std::sync::atomic::AtomicBool;

mod foo {
    pub mod bar {
        pub mod baz {
            pub use std::vec::Vec as MyVec;
        }
    }
}

mod u {
    use foo::bar::baz::MyVec;

fn _a() {
        let _: Vec<i32> = MyVec::new(); //~ ERROR cannot find
    }
}

mod v {
    use foo::bar::baz::MyVec;

fn _b() {
        let _: Vec<i32> = MyVec::new(); //~ ERROR cannot find
    }
}

fn main() {
    let _t: Vec<i32> = Vec::new(); //~ ERROR cannot find
    type _B = vec::Vec::<u8>; //~ ERROR cannot find
    let _t = AtomicBool::new(true); //~ ERROR cannot find
}
