Do not cache lints_that_dont_need_to_run across sessions#156214
Do not cache lints_that_dont_need_to_run across sessions#156214rust-bors[bot] merged 1 commit intorust-lang:mainfrom
lints_that_dont_need_to_run across sessions#156214Conversation
|
r? @folkertdev rustbot has assigned @folkertdev. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
This looks reasonable, but with the query system I might be missing something r? nnethercote |
This comment has been minimized.
This comment has been minimized.
…, r=<try> Do not cache `lints_that_dont_need_to_run` across sessions
|
Also seems reasonable to me. @Zalathar, what do you think? |
|
Looks reasonable to me. If Note that strictly speaking, we already don't cache the value of the |
|
It's possible that we should have a dedicated query for accessing the lint store from But I think it's fine to not let those possible follow-ups block this particular fix. |
|
@bors r+ rollup |
…to-run-incr, r=nnethercote Do not cache `lints_that_dont_need_to_run` across sessions The `lints_that_dont_need_to_run` query depends on the lint store (which includes internal lints under `-Zunstable-options`). Because that flag is deliberately not part of the incremental command-line hash, incremental builds could load stale results from sessions with a different lint configuration, leading to an ICE. This PR marks the query `eval_always` so it is recomputed for the current session instead of being loaded from cache. Fixes rust-lang#156182.
…uwer Rollup of 7 pull requests Successful merges: - #156236 (resolve: Remove `MacroData`) - #156298 (Rename the unstable integer `extend` function to `widen`) - #154498 (turn some long-deprecated -C options into errors) - #155734 (Reject outer attributes on `cfg_select` branches) - #156123 (Simplify the creation of synthetic HIR.) - #156175 (Dep graph cleanups) - #156214 (Do not cache `lints_that_dont_need_to_run` across sessions)
…uwer Rollup of 7 pull requests Successful merges: - #156236 (resolve: Remove `MacroData`) - #156298 (Rename the unstable integer `extend` function to `widen`) - #154498 (turn some long-deprecated -C options into errors) - #155734 (Reject outer attributes on `cfg_select` branches) - #156123 (Simplify the creation of synthetic HIR.) - #156175 (Dep graph cleanups) - #156214 (Do not cache `lints_that_dont_need_to_run` across sessions)
Rollup merge of #156214 - qaijuang:fix-lints-that-dont-need-to-run-incr, r=nnethercote Do not cache `lints_that_dont_need_to_run` across sessions The `lints_that_dont_need_to_run` query depends on the lint store (which includes internal lints under `-Zunstable-options`). Because that flag is deliberately not part of the incremental command-line hash, incremental builds could load stale results from sessions with a different lint configuration, leading to an ICE. This PR marks the query `eval_always` so it is recomputed for the current session instead of being loaded from cache. Fixes #156182.
The
lints_that_dont_need_to_runquery depends on the lint store (which includes internal lints under-Zunstable-options). Because that flag is deliberately not part of the incremental command-line hash, incremental builds could load stale results from sessions with a different lint configuration, leading to an ICE.This PR marks the query
eval_alwaysso it is recomputed for the current session instead of being loaded from cache.Fixes #156182.