blob: ebeb3fe07adb4401d660066d9e22102e6475a896 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
// Regression test for #57597.
//
// Make sure that nested matchers work correctly rather than causing an infinite loop or crash.
// edition:2018
macro_rules! foo1 {
($($($i:ident)?)+) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo2 {
($($($i:ident)?)*) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo3 {
($($($i:ident)?)?) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo4 {
($($($($i:ident)?)?)?) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo5 {
($($($($i:ident)*)?)?) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo6 {
($($($($i:ident)?)*)?) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo7 {
($($($($i:ident)?)?)*) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo8 {
($($($($i:ident)*)*)?) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo9 {
($($($($i:ident)?)*)*) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo10 {
($($($($i:ident)?)*)+) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo11 {
($($($($i:ident)+)?)*) => {};
//~^ ERROR repetition matches empty token tree
}
macro_rules! foo12 {
($($($($i:ident)+)*)?) => {};
//~^ ERROR repetition matches empty token tree
}
fn main() {
foo1!();
foo2!();
foo3!();
foo4!();
foo5!();
foo6!();
foo7!();
foo8!();
foo9!();
foo10!();
foo11!();
foo12!();
}
|