-
Notifications
You must be signed in to change notification settings - Fork 13.4k
cache types during normalization #76928
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
@bors try @rust-timer queue |
Awaiting bors try build completion |
⌛ Trying commit 1146c39 with merge 88f354df8a313170036daa0e4156f8e75242ebd6... |
We'll want to trim it down so that it takes around a second at most on current nightly, but yes adding it definitely seems good to me. |
☀️ Try build successful - checks-actions, checks-azure |
Queued 88f354df8a313170036daa0e4156f8e75242ebd6 with parent 8e9d5db, future comparison URL. |
Finished benchmarking try commit (88f354df8a313170036daa0e4156f8e75242ebd6): comparison url. Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. Please note that if the perf results are neutral, you should likely undo the rollup=never given below by specifying Importantly, though, if the results of this run are non-neutral do not roll this PR up -- it will mask other regressions or improvements in the roll up. @bors rollup=never |
looks mostly neutral, I guess this is ready for review |
Other than perf (which looks neutral to positive for existing cases), the only possible side effects I see here are
Which all seem like a good thing! +1 to adding a case to rustc-perf. I don't think we have to wait on that to merge this, though. @bors r+ |
📌 Commit 1146c39 has been approved by |
☀️ Test successful - checks-actions, checks-azure |
Along the lines of #72412 (comment), I am nominating this for beta backport. Would someone on the compiler team be willing to approve this? See rationale laid out in that comment. |
@rust-lang/compiler -- cc on the previous comment, this needs to be beta-approved to go out in the release next week. See rationale in #72412 (comment). |
…k-Simulacrum [beta] backports This backports a number of PRs to beta, not all of which have been approved (yet). * Switch to environment files to change the environment on GHA rust-lang#77418 * cache types during normalization rust-lang#76928 * Fixing memory exhaustion when formatting short code suggestion rust-lang#76598 * Issue 72408 nested closures exponential rust-lang#72412 r? `@Mark-Simulacrum`
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(lgtm)
let ty = ty.super_fold_with(self); | ||
match *ty.kind() { | ||
let res = (|| match *ty.kind() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this just for outlining?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is mostly so we don't accidentally return
here. I kind of like this pattern myself but I do think that it can be somewhat counterintuitive
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When using a counterintuitive pattern, please add a comment explaining it. :)
partially fixes #75992
reduces the following test from 14 to 3 seconds locally.
cc @Mark-Simulacrum would it make sense to add that test to
perf
?r? @eddyb requires a perf run.