6742e2b185
rustc_interface: Dismantle `register_plugins` query It did three independent things: - Constructed `LintStore` - Prepared incremental directories and dep graph - Initialized some fields in `Session` The `LintStore` construction (now `passes::create_lint_store`) is more or less left in place. The incremental stuff is now moved into `fn dep_graph_future`. This helps us to start loading the dep graph a bit earlier. The `Session` field initialization is moved to tcx construction point. Now that tcx is constructed early these fields don't even need to live in `Session`, they can live in tcx instead and be initialized at its creation (see the FIXME). Three previously existing `rustc_interface` queries are de-querified (`register_plugins`, `dep_graph_future`, `dep_graph`) because they are only used locally in `fn global_ctxt` and their results don't need to be saved elsewhere. On the other hand, `crate_types` and `stable_crate_id` are querified. They are used from different places and their use is very similar to the existing `crate_name` query in this regard. |
||
---|---|---|
.. | ||
src | ||
Cargo.toml | ||
messages.ftl |