about summary refs log tree commit diff
path: root/compiler/rustc_driver_impl/src/lib.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-10-16 16:33:42 +0000
committerbors <bors@rust-lang.org>2023-10-16 16:33:42 +0000
commit4af886f8ab94543caad689ee6bf6a93fa8bd4a98 (patch)
tree08d36ed96e86164ed272ced966a8a2e6023fcd2f /compiler/rustc_driver_impl/src/lib.rs
parent98c1e3d95ba7f5d29915dac3f391a296648aa74c (diff)
parent59f6f044f5228e039e1310b97f478c79aa745f35 (diff)
downloadrust-4af886f8ab94543caad689ee6bf6a93fa8bd4a98.tar.gz
rust-4af886f8ab94543caad689ee6bf6a93fa8bd4a98.zip
Auto merge of #116731 - Alexendoo:hash-untracked-state, r=oli-obk
Add `Config::hash_untracked_state` callback

For context, I'm looking to use [late module passes](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_lint/context/struct.LintStore.html#structfield.late_module_passes) in Clippy which unlike regular late passes run incrementally per module

However we have a config file which can change between runs, we need changes to that to invalidate the `lint_mod` query. This PR adds a side channel for us to hash some extra state into `Options` in order to do that

This does not make any changes to Clippy, I plan to do that in a PR to the Clippy repo along with some other required changes

An alternative implementation would be to add a new query to track this state and override the `lint_mod` query in Clippy to first call that

cc `@rust-lang/clippy`
Diffstat (limited to 'compiler/rustc_driver_impl/src/lib.rs')
-rw-r--r--compiler/rustc_driver_impl/src/lib.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/rustc_driver_impl/src/lib.rs b/compiler/rustc_driver_impl/src/lib.rs
index 5bb7c41677c..b0c95e1bd20 100644
--- a/compiler/rustc_driver_impl/src/lib.rs
+++ b/compiler/rustc_driver_impl/src/lib.rs
@@ -312,6 +312,7 @@ fn run_compiler(
         locale_resources: DEFAULT_LOCALE_RESOURCES,
         lint_caps: Default::default(),
         parse_sess_created: None,
+        hash_untracked_state: None,
         register_lints: None,
         override_queries: None,
         make_codegen_backend,