]> git.lizzy.rs Git - rust.git/blob - tests/ui/enum/issue-42747.rs
Rollup merge of #106701 - ibraheemdev:sync-sender-spin, r=Amanieu
[rust.git] / tests / ui / enum / issue-42747.rs
1 // run-pass
2 macro_rules! fooN {
3     ($cur:ident $prev:ty) => {
4         #[allow(dead_code)]
5         enum $cur {
6             Empty,
7             First($prev),
8             Second($prev),
9             Third($prev),
10             Fourth($prev),
11         }
12     }
13 }
14
15 fooN!(Foo0 ());
16 fooN!(Foo1 Foo0);
17 fooN!(Foo2 Foo1);
18 fooN!(Foo3 Foo2);
19 fooN!(Foo4 Foo3);
20 fooN!(Foo5 Foo4);
21 fooN!(Foo6 Foo5);
22 fooN!(Foo7 Foo6);
23 fooN!(Foo8 Foo7);
24 fooN!(Foo9 Foo8);
25 fooN!(Foo10 Foo9);
26 fooN!(Foo11 Foo10);
27 fooN!(Foo12 Foo11);
28 fooN!(Foo13 Foo12);
29 fooN!(Foo14 Foo13);
30 fooN!(Foo15 Foo14);
31 fooN!(Foo16 Foo15);
32 fooN!(Foo17 Foo16);
33 fooN!(Foo18 Foo17);
34 fooN!(Foo19 Foo18);
35 fooN!(Foo20 Foo19);
36 fooN!(Foo21 Foo20);
37 fooN!(Foo22 Foo21);
38 fooN!(Foo23 Foo22);
39 fooN!(Foo24 Foo23);
40 fooN!(Foo25 Foo24);
41 fooN!(Foo26 Foo25);
42 fooN!(Foo27 Foo26);
43
44 fn main() {
45     let _foo = Foo27::Empty;
46 }