diff options
author | Nilstrieb <48135649+Nilstrieb@users.noreply.github.com> | 2023-04-16 14:33:00 +0200 |
---|---|---|
committer | Nilstrieb <48135649+Nilstrieb@users.noreply.github.com> | 2023-04-18 18:56:22 +0000 |
commit | b5d3d970fa64c25eecfbd8ebbae601a2c6cb2cb3 (patch) | |
tree | 0e19df4016facff72f38ad739a7de6b5ef7667c5 /compiler/rustc_error_messages | |
parent | de96f3d8735b70d5dc1ca178aaee198b329b8f3d (diff) | |
download | rust-b5d3d970fa64c25eecfbd8ebbae601a2c6cb2cb3.tar.gz |
Add `rustc_fluent_macro` to decouple fluent from `rustc_macros`
Fluent, with all the icu4x it brings in, takes quite some time to
compile. `fluent_messages!` is only needed in further downstream rustc
crates, but is blocking more upstream crates like `rustc_index`. By
splitting it out, we allow `rustc_macros` to be compiled earlier, which
speeds up `x check compiler` by about 5 seconds (and even more after the
needless dependency on `serde_json` is removed from
`rustc_data_structures`).
Diffstat (limited to 'compiler/rustc_error_messages')
-rw-r--r-- | compiler/rustc_error_messages/Cargo.toml | 1 | ||||
-rw-r--r-- | compiler/rustc_error_messages/src/lib.rs | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/compiler/rustc_error_messages/Cargo.toml b/compiler/rustc_error_messages/Cargo.toml index 27783d60be4..481c94266f2 100644 --- a/compiler/rustc_error_messages/Cargo.toml +++ b/compiler/rustc_error_messages/Cargo.toml @@ -11,6 +11,7 @@ fluent-syntax = "0.11" intl-memoizer = "0.5.1" rustc_baked_icu_data = { path = "../rustc_baked_icu_data" } rustc_data_structures = { path = "../rustc_data_structures" } +rustc_fluent_macro = { path = "../rustc_fluent_macro" } rustc_serialize = { path = "../rustc_serialize" } rustc_span = { path = "../rustc_span" } rustc_macros = { path = "../rustc_macros" } diff --git a/compiler/rustc_error_messages/src/lib.rs b/compiler/rustc_error_messages/src/lib.rs index 6f319b96f2f..88d94c93bf5 100644 --- a/compiler/rustc_error_messages/src/lib.rs +++ b/compiler/rustc_error_messages/src/lib.rs @@ -12,7 +12,8 @@ use fluent_bundle::FluentResource; use fluent_syntax::parser::ParserError; use icu_provider_adapters::fallback::{LocaleFallbackProvider, LocaleFallbacker}; use rustc_data_structures::sync::Lrc; -use rustc_macros::{fluent_messages, Decodable, Encodable}; +use rustc_fluent_macro::fluent_messages; +use rustc_macros::{Decodable, Encodable}; use rustc_span::Span; use std::borrow::Cow; use std::error::Error; |