-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Rollup of 7 pull requests #141345
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 7 pull requests #141345
Conversation
We resolve guard patterns' guards in `resolve_pattern_inner`, so to avoid resolving them multiple times, we must avoid doing so earlier. To accomplish this, `LateResolutionVisitor::visit_pat` contains a case for guard patterns that avoids visiting their guards while walking patterns. This fixes an ICE due to `visit::walk_pat` being used instead, which meant guards at the top level of a pattern would be visited twice.
This is needed to make the cache work after moving CI from the `rust-lang-ci` org to `rust-lang`.
… later projection' (rust-lang#140975)
only resolve top-level guard patterns' guards once We resolve guard patterns' guards in `resolve_pattern_inner`, so to avoid resolving them multiple times, we must avoid doing so earlier. To accomplish this, `LateResolutionVisitor::visit_pat` contains a case for guard patterns that avoids visiting their guards while walking patterns. This PR fixes rust-lang#141265, which was due to `visit::walk_pat` being used instead; this meant guards at the top level of a pattern would be visited twice. e.g. it would ICE on `for x if x in [] {}`, but not `for (x if x) in [] {}`. `visit_pat` was already used for the guard pattern in the second example, on account of the top-level pattern being parens.
…arcoieni Use Docker cache from the current repository This is needed to make the cache work after moving CI from the `rust-lang-ci` org to `rust-lang`. Shouldn't be merged until we actually move bors. Context: rust-lang/infra-team#188 r? `@marcoieni`
…mir-place-deref-fix, r=oli-obk Async drop fix for 'broken mir, place has deref as later projection' fixes rust-lang#140975 Problem in codegen fixed with an additional temporary local.
…-empty-impl-fix, r=oli-obk When AsyncDrop impl is empty, sync drop generated in elaborator Fixes rust-lang#140974.
Do not eagerly fold consts in `normalize_param_env_or_error` if new solver Fixes rust-lang/trait-system-refactor-initiative#213 Given: ``` trait Trait: Deref<Target = [u8; { 1 + 1 }]> {} ``` when elaborating param env for `Trait`, we have `Self: Trait`, `Self: Deref<Target = [u8; {anon const}]>`. Before this PR, we would fold the anon consts away *before* elaborating. However, we end up getting another *un-folded* copy of the anon const from elaborating `Self: Trait`. This leads to normalization ambiguity. r? lcnr
…e-unnorm, r=lcnr Use `DeepRejectCtxt` in `assemble_inherent_candidates_from_param` Fixes rust-lang/trait-system-refactor-initiative#214 We were not properly considering unnormalized param-env candidates in `assemble_inherent_candidates_from_param`. r? lcnr
…compiler-errors eagerly check nested obligations when coercing fndefs fixes rust-lang/trait-system-refactor-initiative#212 r? `@compiler-errors`
@bors r+ rollup=never p=5 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: 356f2d0774 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 356f2d0 (parent) -> 462cc09 (this PR) Test differencesShow 60 test diffsStage 1
Stage 2
Additionally, 16 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 462cc099c93b2915eef61c3fbc504588b41b27d1 --output-dir test-dashboard And then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Finished benchmarking commit (462cc09): comparison URL. Overall result: ❌ regressions - please read the text belowOur benchmarks found a performance regression caused by this PR. Next Steps:
@rustbot label: +perf-regression Instruction countThis is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.
Max RSS (memory usage)Results (primary -2.6%, secondary -2.1%)This 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.
CyclesResults (secondary 0.0%)This 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.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 775.51s -> 777.166s (0.21%) |
Successful merges:
normalize_param_env_or_error
if new solver #141332 (Do not eagerly fold consts innormalize_param_env_or_error
if new solver)DeepRejectCtxt
inassemble_inherent_candidates_from_param
#141333 (UseDeepRejectCtxt
inassemble_inherent_candidates_from_param
)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup