This repository was archived by the owner on May 28, 2025. It is now read-only.
Commit df7fd99
committed
Auto merge of rust-lang#108221 - petrochenkov:cratecfg, r=michaelwoerister
rustc_interface: Add a new query `pre_configure`
It partially expands crate attributes before the main expansion pass (without modifying the crate), and the produced preliminary crate attribute list is used for querying a few attributes that are required very early.
Crate-level cfg attributes on the crate itself are then expanded normally during the main expansion pass, like attributes on any other nodes.
This is a continuation of rust-lang#92473 and one more step to very unstable crate-level proc macro attributes maybe actually working.
Previously crate attributes were pre-configured simultaneously with feature extraction, and then written directly into `ast::Crate`.File tree
20 files changed
+207
-128
lines changed- compiler
- rustc_builtin_macros/src
- rustc_driver_impl/src
- rustc_expand/src
- rustc_interface/src
- rustc_lint/src
- rustc_middle/src
- query
- rustc_plugin_impl/src
- rustc_resolve/src
- tests/ui/cfg
- auxiliary
20 files changed
+207
-128
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| |||
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | | - | |
40 | | - | |
41 | 39 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| 46 | + | |
46 | 47 | | |
47 | 48 | | |
48 | | - | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
| 53 | + | |
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| |||
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
67 | | - | |
| 67 | + | |
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
82 | | - | |
83 | 81 | | |
84 | 82 | | |
85 | 83 | | |
| |||
Lines changed: 9 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | | - | |
| 16 | + | |
| 17 | + | |
16 | 18 | | |
17 | 19 | | |
18 | 20 | | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
23 | 25 | | |
24 | 26 | | |
25 | 27 | | |
| |||
88 | 90 | | |
89 | 91 | | |
90 | 92 | | |
91 | | - | |
92 | | - | |
| 93 | + | |
93 | 94 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
| 40 | + | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
353 | 353 | | |
354 | 354 | | |
355 | 355 | | |
356 | | - | |
| 356 | + | |
357 | 357 | | |
358 | 358 | | |
359 | 359 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1002 | 1002 | | |
1003 | 1003 | | |
1004 | 1004 | | |
| 1005 | + | |
1005 | 1006 | | |
1006 | 1007 | | |
1007 | 1008 | | |
| |||
1030 | 1031 | | |
1031 | 1032 | | |
1032 | 1033 | | |
| 1034 | + | |
1033 | 1035 | | |
1034 | 1036 | | |
1035 | 1037 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
28 | 27 | | |
29 | 28 | | |
30 | 29 | | |
| |||
37 | 36 | | |
38 | 37 | | |
39 | 38 | | |
40 | | - | |
| 39 | + | |
41 | 40 | | |
42 | 41 | | |
43 | 42 | | |
| |||
191 | 190 | | |
192 | 191 | | |
193 | 192 | | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
212 | | - | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
223 | | - | |
224 | | - | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
225 | 199 | | |
226 | | - | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
227 | 203 | | |
228 | 204 | | |
229 | 205 | | |
| |||
254 | 230 | | |
255 | 231 | | |
256 | 232 | | |
257 | | - | |
258 | | - | |
259 | | - | |
260 | | - | |
261 | | - | |
262 | 233 | | |
263 | 234 | | |
264 | 235 | | |
| |||
281 | 252 | | |
282 | 253 | | |
283 | 254 | | |
284 | | - | |
| 255 | + | |
285 | 256 | | |
286 | 257 | | |
287 | 258 | | |
| |||
319 | 290 | | |
320 | 291 | | |
321 | 292 | | |
322 | | - | |
| 293 | + | |
323 | 294 | | |
324 | 295 | | |
325 | 296 | | |
326 | | - | |
327 | | - | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
328 | 303 | | |
329 | 304 | | |
330 | 305 | | |
| |||
334 | 309 | | |
335 | 310 | | |
336 | 311 | | |
337 | | - | |
| 312 | + | |
338 | 313 | | |
339 | | - | |
| 314 | + | |
340 | 315 | | |
341 | 316 | | |
342 | 317 | | |
| |||
365 | 340 | | |
366 | 341 | | |
367 | 342 | | |
368 | | - | |
| 343 | + | |
369 | 344 | | |
370 | 345 | | |
371 | | - | |
| 346 | + | |
372 | 347 | | |
373 | 348 | | |
374 | 349 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1038 | 1038 | | |
1039 | 1039 | | |
1040 | 1040 | | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
1041 | 1044 | | |
1042 | 1045 | | |
1043 | 1046 | | |
| |||
1378 | 1381 | | |
1379 | 1382 | | |
1380 | 1383 | | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
1381 | 1389 | | |
1382 | 1390 | | |
1383 | 1391 | | |
| |||
1688 | 1696 | | |
1689 | 1697 | | |
1690 | 1698 | | |
1691 | | - | |
| 1699 | + | |
1692 | 1700 | | |
1693 | 1701 | | |
1694 | 1702 | | |
| |||
1712 | 1720 | | |
1713 | 1721 | | |
1714 | 1722 | | |
1715 | | - | |
| 1723 | + | |
1716 | 1724 | | |
1717 | 1725 | | |
1718 | 1726 | | |
| |||
1756 | 1764 | | |
1757 | 1765 | | |
1758 | 1766 | | |
1759 | | - | |
| 1767 | + | |
1760 | 1768 | | |
1761 | 1769 | | |
1762 | 1770 | | |
1763 | | - | |
| 1771 | + | |
1764 | 1772 | | |
1765 | 1773 | | |
1766 | 1774 | | |
| |||
0 commit comments