2023-11-26 06:57:31 -06:00
|
|
|
//@ check-pass
|
|
|
|
|
|
|
|
#![feature(decl_macro)]
|
|
|
|
#![feature(fn_delegation)]
|
2024-03-26 10:59:03 -05:00
|
|
|
#![allow(incomplete_features)]
|
2023-11-26 06:57:31 -06:00
|
|
|
|
|
|
|
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() {}
|