aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/tests/data/parser/err
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_syntax/tests/data/parser/err')
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.rs20
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt201
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.rs7
-rw-r--r--crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt64
4 files changed, 292 insertions, 0 deletions
diff --git a/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.rs b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.rs
new file mode 100644
index 000000000..06aa47770
--- /dev/null
+++ b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.rs
@@ -0,0 +1,20 @@
1fn foo() {
2 match () {
3 _ => (),
4 #![doc("Not allowed here")]
5 _ => (),
6 }
7
8 match () {
9 _ => (),
10 _ => (),
11 #![doc("Nor here")]
12 }
13
14 match () {
15 #[cfg(test)]
16 #![doc("Nor here")]
17 _ => (),
18 _ => (),
19 }
20}
diff --git a/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt
new file mode 100644
index 000000000..b7543abc9
--- /dev/null
+++ b/crates/ra_syntax/tests/data/parser/err/0032_match_arms_inner_attrs.txt
@@ -0,0 +1,201 @@
1SOURCE_FILE@[0; 293)
2 FN_DEF@[0; 292)
3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3)
5 NAME@[3; 6)
6 IDENT@[3; 6) "foo"
7 PARAM_LIST@[6; 8)
8 L_PAREN@[6; 7)
9 R_PAREN@[7; 8)
10 WHITESPACE@[8; 9)
11 BLOCK@[9; 292)
12 L_CURLY@[9; 10)
13 WHITESPACE@[10; 15)
14 EXPR_STMT@[15; 101)
15 MATCH_EXPR@[15; 101)
16 MATCH_KW@[15; 20)
17 WHITESPACE@[20; 21)
18 TUPLE_EXPR@[21; 23)
19 L_PAREN@[21; 22)
20 R_PAREN@[22; 23)
21 WHITESPACE@[23; 24)
22 MATCH_ARM_LIST@[24; 101)
23 L_CURLY@[24; 25)
24 WHITESPACE@[25; 34)
25 MATCH_ARM@[34; 41)
26 PLACEHOLDER_PAT@[34; 35)
27 UNDERSCORE@[34; 35)
28 WHITESPACE@[35; 36)
29 FAT_ARROW@[36; 38)
30 WHITESPACE@[38; 39)
31 TUPLE_EXPR@[39; 41)
32 L_PAREN@[39; 40)
33 R_PAREN@[40; 41)
34 COMMA@[41; 42)
35 WHITESPACE@[42; 51)
36 ATTR@[51; 52)
37 POUND@[51; 52)
38 err: `expected `[``
39 err: `expected pattern`
40 MATCH_ARM@[52; 78)
41 ERROR@[52; 53)
42 EXCL@[52; 53)
43 err: `expected FAT_ARROW`
44 ARRAY_EXPR@[53; 78)
45 L_BRACK@[53; 54)
46 CALL_EXPR@[54; 77)
47 PATH_EXPR@[54; 57)
48 PATH@[54; 57)
49 PATH_SEGMENT@[54; 57)
50 NAME_REF@[54; 57)
51 IDENT@[54; 57) "doc"
52 ARG_LIST@[57; 77)
53 L_PAREN@[57; 58)
54 LITERAL@[58; 76)
55 STRING@[58; 76)
56 R_PAREN@[76; 77)
57 R_BRACK@[77; 78)
58 err: `expected COMMA`
59 WHITESPACE@[78; 87)
60 MATCH_ARM@[87; 94)
61 PLACEHOLDER_PAT@[87; 88)
62 UNDERSCORE@[87; 88)
63 WHITESPACE@[88; 89)
64 FAT_ARROW@[89; 91)
65 WHITESPACE@[91; 92)
66 TUPLE_EXPR@[92; 94)
67 L_PAREN@[92; 93)
68 R_PAREN@[93; 94)
69 COMMA@[94; 95)
70 WHITESPACE@[95; 100)
71 R_CURLY@[100; 101)
72 WHITESPACE@[101; 107)
73 EXPR_STMT@[107; 185)
74 MATCH_EXPR@[107; 185)
75 MATCH_KW@[107; 112)
76 WHITESPACE@[112; 113)
77 TUPLE_EXPR@[113; 115)
78 L_PAREN@[113; 114)
79 R_PAREN@[114; 115)
80 WHITESPACE@[115; 116)
81 MATCH_ARM_LIST@[116; 185)
82 L_CURLY@[116; 117)
83 WHITESPACE@[117; 126)
84 MATCH_ARM@[126; 133)
85 PLACEHOLDER_PAT@[126; 127)
86 UNDERSCORE@[126; 127)
87 WHITESPACE@[127; 128)
88 FAT_ARROW@[128; 130)
89 WHITESPACE@[130; 131)
90 TUPLE_EXPR@[131; 133)
91 L_PAREN@[131; 132)
92 R_PAREN@[132; 133)
93 COMMA@[133; 134)
94 WHITESPACE@[134; 143)
95 MATCH_ARM@[143; 150)
96 PLACEHOLDER_PAT@[143; 144)
97 UNDERSCORE@[143; 144)
98 WHITESPACE@[144; 145)
99 FAT_ARROW@[145; 147)
100 WHITESPACE@[147; 148)
101 TUPLE_EXPR@[148; 150)
102 L_PAREN@[148; 149)
103 R_PAREN@[149; 150)
104 COMMA@[150; 151)
105 WHITESPACE@[151; 160)
106 ATTR@[160; 161)
107 POUND@[160; 161)
108 err: `expected `[``
109 err: `expected pattern`
110 MATCH_ARM@[161; 179)
111 ERROR@[161; 162)
112 EXCL@[161; 162)
113 err: `expected FAT_ARROW`
114 ARRAY_EXPR@[162; 179)
115 L_BRACK@[162; 163)
116 CALL_EXPR@[163; 178)
117 PATH_EXPR@[163; 166)
118 PATH@[163; 166)
119 PATH_SEGMENT@[163; 166)
120 NAME_REF@[163; 166)
121 IDENT@[163; 166) "doc"
122 ARG_LIST@[166; 178)
123 L_PAREN@[166; 167)
124 LITERAL@[167; 177)
125 STRING@[167; 177)
126 R_PAREN@[177; 178)
127 R_BRACK@[178; 179)
128 WHITESPACE@[179; 184)
129 R_CURLY@[184; 185)
130 WHITESPACE@[185; 191)
131 MATCH_EXPR@[191; 290)
132 MATCH_KW@[191; 196)
133 WHITESPACE@[196; 197)
134 TUPLE_EXPR@[197; 199)
135 L_PAREN@[197; 198)
136 R_PAREN@[198; 199)
137 WHITESPACE@[199; 200)
138 MATCH_ARM_LIST@[200; 290)
139 L_CURLY@[200; 201)
140 WHITESPACE@[201; 210)
141 ATTR@[210; 222)
142 POUND@[210; 211)
143 TOKEN_TREE@[211; 222)
144 L_BRACK@[211; 212)
145 IDENT@[212; 215) "cfg"
146 TOKEN_TREE@[215; 221)
147 L_PAREN@[215; 216)
148 IDENT@[216; 220) "test"
149 R_PAREN@[220; 221)
150 R_BRACK@[221; 222)
151 WHITESPACE@[222; 231)
152 ATTR@[231; 232)
153 POUND@[231; 232)
154 err: `expected `[``
155 err: `expected pattern`
156 MATCH_ARM@[232; 250)
157 ERROR@[232; 233)
158 EXCL@[232; 233)
159 err: `expected FAT_ARROW`
160 ARRAY_EXPR@[233; 250)
161 L_BRACK@[233; 234)
162 CALL_EXPR@[234; 249)
163 PATH_EXPR@[234; 237)
164 PATH@[234; 237)
165 PATH_SEGMENT@[234; 237)
166 NAME_REF@[234; 237)
167 IDENT@[234; 237) "doc"
168 ARG_LIST@[237; 249)
169 L_PAREN@[237; 238)
170 LITERAL@[238; 248)
171 STRING@[238; 248)
172 R_PAREN@[248; 249)
173 R_BRACK@[249; 250)
174 err: `expected COMMA`
175 WHITESPACE@[250; 259)
176 MATCH_ARM@[259; 266)
177 PLACEHOLDER_PAT@[259; 260)
178 UNDERSCORE@[259; 260)
179 WHITESPACE@[260; 261)
180 FAT_ARROW@[261; 263)
181 WHITESPACE@[263; 264)
182 TUPLE_EXPR@[264; 266)
183 L_PAREN@[264; 265)
184 R_PAREN@[265; 266)
185 COMMA@[266; 267)
186 WHITESPACE@[267; 276)
187 MATCH_ARM@[276; 283)
188 PLACEHOLDER_PAT@[276; 277)
189 UNDERSCORE@[276; 277)
190 WHITESPACE@[277; 278)
191 FAT_ARROW@[278; 280)
192 WHITESPACE@[280; 281)
193 TUPLE_EXPR@[281; 283)
194 L_PAREN@[281; 282)
195 R_PAREN@[282; 283)
196 COMMA@[283; 284)
197 WHITESPACE@[284; 289)
198 R_CURLY@[289; 290)
199 WHITESPACE@[290; 291)
200 R_CURLY@[291; 292)
201 WHITESPACE@[292; 293)
diff --git a/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.rs b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.rs
new file mode 100644
index 000000000..4635222da
--- /dev/null
+++ b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.rs
@@ -0,0 +1,7 @@
1fn foo() {
2 match () {
3 _ => (),
4 _ => (),
5 #[cfg(test)]
6 }
7}
diff --git a/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt
new file mode 100644
index 000000000..7f8767001
--- /dev/null
+++ b/crates/ra_syntax/tests/data/parser/err/0033_match_arms_outer_attrs.txt
@@ -0,0 +1,64 @@
1SOURCE_FILE@[0; 89)
2 FN_DEF@[0; 88)
3 FN_KW@[0; 2)
4 WHITESPACE@[2; 3)
5 NAME@[3; 6)
6 IDENT@[3; 6) "foo"
7 PARAM_LIST@[6; 8)
8 L_PAREN@[6; 7)
9 R_PAREN@[7; 8)
10 WHITESPACE@[8; 9)
11 BLOCK@[9; 88)
12 L_CURLY@[9; 10)
13 WHITESPACE@[10; 15)
14 MATCH_EXPR@[15; 86)
15 MATCH_KW@[15; 20)
16 WHITESPACE@[20; 21)
17 TUPLE_EXPR@[21; 23)
18 L_PAREN@[21; 22)
19 R_PAREN@[22; 23)
20 WHITESPACE@[23; 24)
21 MATCH_ARM_LIST@[24; 86)
22 L_CURLY@[24; 25)
23 WHITESPACE@[25; 34)
24 MATCH_ARM@[34; 41)
25 PLACEHOLDER_PAT@[34; 35)
26 UNDERSCORE@[34; 35)
27 WHITESPACE@[35; 36)
28 FAT_ARROW@[36; 38)
29 WHITESPACE@[38; 39)
30 TUPLE_EXPR@[39; 41)
31 L_PAREN@[39; 40)
32 R_PAREN@[40; 41)
33 COMMA@[41; 42)
34 WHITESPACE@[42; 51)
35 MATCH_ARM@[51; 58)
36 PLACEHOLDER_PAT@[51; 52)
37 UNDERSCORE@[51; 52)
38 WHITESPACE@[52; 53)
39 FAT_ARROW@[53; 55)
40 WHITESPACE@[55; 56)
41 TUPLE_EXPR@[56; 58)
42 L_PAREN@[56; 57)
43 R_PAREN@[57; 58)
44 COMMA@[58; 59)
45 WHITESPACE@[59; 68)
46 ATTR@[68; 80)
47 POUND@[68; 69)
48 TOKEN_TREE@[69; 80)
49 L_BRACK@[69; 70)
50 IDENT@[70; 73) "cfg"
51 TOKEN_TREE@[73; 79)
52 L_PAREN@[73; 74)
53 IDENT@[74; 78) "test"
54 R_PAREN@[78; 79)
55 R_BRACK@[79; 80)
56 WHITESPACE@[80; 85)
57 err: `expected pattern`
58 err: `expected FAT_ARROW`
59 err: `expected expression`
60 MATCH_ARM@[85; 85)
61 R_CURLY@[85; 86)
62 WHITESPACE@[86; 87)
63 R_CURLY@[87; 88)
64 WHITESPACE@[88; 89)