| //@ check-pass |
| |
| #![feature(decl_macro)] |
| #![feature(fn_delegation)] |
| #![allow(incomplete_features)] |
| |
| macro_rules! reuse { {} => {} } |
| |
| mod reuse { |
| pub fn to_unsafe(x: i32) -> i32 { x + 1 } |
| pub fn to_pub() {} |
| pub fn to_pub2() {} |
| |
| mod inner { |
| #[allow(non_camel_case_types)] |
| struct reuse { |
| a: i32, |
| b: i32, |
| c: i32, |
| } |
| |
| impl reuse { |
| reuse!(); |
| } |
| |
| fn baz() { |
| let (a, b, c) = (0, 0, 0); |
| reuse {a, b, c}; |
| } |
| } |
| |
| pub macro my_macro() {} |
| } |
| |
| reuse!(); |
| reuse::my_macro!(); |
| |
| #[inline] |
| pub reuse reuse::to_pub; |
| pub reuse crate::reuse::to_pub2; |
| |
| fn main() {} |