]>
Commit | Line | Data |
---|---|---|
923072b8 | 1 | #![feature(array_windows)] |
5099ac24 FG |
2 | #![feature(associated_type_bounds)] |
3 | #![feature(associated_type_defaults)] | |
94222f64 | 4 | #![feature(if_let_guard)] |
5e7ed085 | 5 | #![feature(let_chains)] |
04454e1e | 6 | #![feature(macro_metavar_expr)] |
e74abb32 XL |
7 | #![feature(proc_macro_diagnostic)] |
8 | #![feature(proc_macro_internals)] | |
9 | #![feature(proc_macro_span)] | |
064997fb | 10 | #![feature(rustc_attrs)] |
ba9703b0 | 11 | #![feature(try_blocks)] |
94222f64 | 12 | #![recursion_limit = "256"] |
9c376795 | 13 | #![deny(rustc::untranslatable_diagnostic)] |
e74abb32 | 14 | |
3dfed10e XL |
15 | #[macro_use] |
16 | extern crate rustc_macros; | |
17 | ||
f2b60f7d FG |
18 | #[macro_use] |
19 | extern crate tracing; | |
20 | ||
e74abb32 XL |
21 | extern crate proc_macro as pm; |
22 | ||
9ffffee4 FG |
23 | use rustc_errors::{DiagnosticMessage, SubdiagnosticMessage}; |
24 | use rustc_macros::fluent_messages; | |
25 | ||
e74abb32 XL |
26 | mod placeholders; |
27 | mod proc_macro_server; | |
28 | ||
e74abb32 | 29 | pub use mbe::macro_rules::compile_declarative_macro; |
923072b8 | 30 | pub(crate) use rustc_span::hygiene; |
e74abb32 XL |
31 | pub mod base; |
32 | pub mod build; | |
ba9703b0 XL |
33 | #[macro_use] |
34 | pub mod config; | |
f2b60f7d | 35 | pub mod errors; |
e74abb32 | 36 | pub mod expand; |
ba9703b0 | 37 | pub mod module; |
9c376795 FG |
38 | |
39 | // FIXME(Nilstrieb) Translate proc_macro diagnostics | |
40 | #[allow(rustc::untranslatable_diagnostic)] | |
e74abb32 XL |
41 | pub mod proc_macro; |
42 | ||
9c376795 FG |
43 | // FIXME(Nilstrieb) Translate macro_rules diagnostics |
44 | #[allow(rustc::untranslatable_diagnostic)] | |
923072b8 | 45 | pub(crate) mod mbe; |
60c5eb7d XL |
46 | |
47 | // HACK(Centril, #64197): These shouldn't really be here. | |
48 | // Rather, they should be with their respective modules which are defined in other crates. | |
49 | // However, since for now constructing a `ParseSess` sorta requires `config` from this crate, | |
5e7ed085 | 50 | // these tests will need to live here in the interim. |
60c5eb7d XL |
51 | |
52 | #[cfg(test)] | |
53 | mod tests; | |
54 | #[cfg(test)] | |
55 | mod parse { | |
60c5eb7d | 56 | mod tests; |
60c5eb7d XL |
57 | } |
58 | #[cfg(test)] | |
59 | mod tokenstream { | |
60c5eb7d XL |
60 | mod tests; |
61 | } | |
62 | #[cfg(test)] | |
63 | mod mut_visit { | |
60c5eb7d XL |
64 | mod tests; |
65 | } | |
9ffffee4 | 66 | |
353b0b11 | 67 | fluent_messages! { "../messages.ftl" } |