//@ run-pass | |
macro_rules! fooN { | |
($cur:ident $prev:ty) => { | |
#[allow(dead_code)] | |
enum $cur { | |
Empty, | |
First($prev), | |
Second($prev), | |
Third($prev), | |
Fourth($prev), | |
} | |
} | |
} | |
fooN!(Foo0 ()); | |
fooN!(Foo1 Foo0); | |
fooN!(Foo2 Foo1); | |
fooN!(Foo3 Foo2); | |
fooN!(Foo4 Foo3); | |
fooN!(Foo5 Foo4); | |
fooN!(Foo6 Foo5); | |
fooN!(Foo7 Foo6); | |
fooN!(Foo8 Foo7); | |
fooN!(Foo9 Foo8); | |
fooN!(Foo10 Foo9); | |
fooN!(Foo11 Foo10); | |
fooN!(Foo12 Foo11); | |
fooN!(Foo13 Foo12); | |
fooN!(Foo14 Foo13); | |
fooN!(Foo15 Foo14); | |
fooN!(Foo16 Foo15); | |
fooN!(Foo17 Foo16); | |
fooN!(Foo18 Foo17); | |
fooN!(Foo19 Foo18); | |
fooN!(Foo20 Foo19); | |
fooN!(Foo21 Foo20); | |
fooN!(Foo22 Foo21); | |
fooN!(Foo23 Foo22); | |
fooN!(Foo24 Foo23); | |
fooN!(Foo25 Foo24); | |
fooN!(Foo26 Foo25); | |
fooN!(Foo27 Foo26); | |
fn main() { | |
let _foo = Foo27::Empty; | |
} |