Make HandleCycleError an enum instead of a macro-generated closure#101303
Make HandleCycleError an enum instead of a macro-generated closure#101303bors merged 1 commit intorust-lang:masterfrom
HandleCycleError an enum instead of a macro-generated closure#101303Conversation
- Add a `HandleCycleError` enum to rustc_query_system, along with a `handle_cycle_error` function - Move `Value` to rustc_query_system, so `handle_cycle_error` can use it - Move the `Value` impls from rustc_query_impl to rustc_middle. This is necessary due to orphan rules.
09d146c to
4856aff
Compare
|
@bors r=cjgillot rollup=never (perf-sensitive) |
…r=cjgillot Make `HandleCycleError` an enum instead of a macro-generated closure Helps with rust-lang#96524. Based on rust-lang#100943 to avoid merge conflicts, so it looks larger than it is (only the last commit is relevant). cc https://rust-lang.zulipchat.com/#narrow/stream/241847-t-compiler.2Fwg-incr-comp/topic/Moving.20.60Value.60.20to.20rustc_query_system.20.2396524 r? `@cjgillot`
|
⌛ Testing commit 4856aff with merge a62340464732372726d292abb0be24a6e2d9b7be... |
|
💔 Test failed - checks-actions |
|
@bors tree closed GitHub is giving 500s again. |
|
@bors treeclosed |
|
@bors retry |
|
☀️ Test successful - checks-actions |
|
Finished benchmarking commit (4af35b8): comparison URL. Overall result: ❌ regressions - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Footnotes |
|
The supposed regressions are mostly in @rustbot label: +perf-regression-triaged |
…ivooeo Rename `HandleCycleError` to `CycleErrorHandling` In rust-lang#101303, the `handle_cycle_error` field was changed from a macro-generated closure to a macro-selected enum variant. But it was not renamed to reflect the fact that it now holds data, not code. Renaming the field and its associated enum to `cycle_error_handling: CycleErrorHandling` should make the relevant code less confusing to read. This PR also moves the enum out of `rustc_query_system::error`, where it was easily confused with diagnostic structs. There should be no change to compiler behaviour.
Rollup merge of #151520 - Zalathar:cycle-error-handling, r=Kivooeo Rename `HandleCycleError` to `CycleErrorHandling` In #101303, the `handle_cycle_error` field was changed from a macro-generated closure to a macro-selected enum variant. But it was not renamed to reflect the fact that it now holds data, not code. Renaming the field and its associated enum to `cycle_error_handling: CycleErrorHandling` should make the relevant code less confusing to read. This PR also moves the enum out of `rustc_query_system::error`, where it was easily confused with diagnostic structs. There should be no change to compiler behaviour.
Helps with #96524. Based on #100943 to avoid merge conflicts, so it looks larger than it is (only the last commit is relevant).
cc https://rust-lang.zulipchat.com/#narrow/stream/241847-t-compiler.2Fwg-incr-comp/topic/Moving.20.60Value.60.20to.20rustc_query_system.20.2396524
r? @cjgillot