40 lines
506 B
Rust
40 lines
506 B
Rust
// check-pass
|
|
|
|
#![feature(decl_macro)]
|
|
|
|
mod type_ns {
|
|
pub type A = u8;
|
|
}
|
|
mod value_ns {
|
|
pub const A: u8 = 0;
|
|
}
|
|
mod macro_ns {
|
|
pub macro A() {}
|
|
}
|
|
|
|
mod merge2 {
|
|
pub use type_ns::A;
|
|
pub use value_ns::A;
|
|
}
|
|
mod merge3 {
|
|
pub use type_ns::A;
|
|
pub use value_ns::A;
|
|
pub use macro_ns::A;
|
|
}
|
|
|
|
mod use2 {
|
|
pub use merge2::A;
|
|
}
|
|
mod use3 {
|
|
pub use merge3::A;
|
|
}
|
|
|
|
fn main() {
|
|
type B2 = use2::A;
|
|
let a2 = use2::A;
|
|
|
|
type B3 = use3::A;
|
|
let a3 = use3::A;
|
|
use3::A!();
|
|
}
|