// run-pass macro_rules! bar { ($($t:tt)*) => { impl $($t)* }; } macro_rules! baz { ($t:tt) => { fn test(&self) -> usize { $t } }; } struct Foo; bar!(Foo { baz!{ M } }); fn main() { assert_eq!(Foo::<7>.test::<3>(), 3); }