Skip to content

Rollup of 6 pull requests - #110978

Merged
bors merged 13 commits into
rust-lang:masterfrom
Dylan-DPC:rollup-xclzwax
Apr 29, 2023
Merged

Rollup of 6 pull requests#110978
bors merged 13 commits into
rust-lang:masterfrom
Dylan-DPC:rollup-xclzwax

Conversation

@Dylan-DPC

Copy link
Copy Markdown
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

compiler-errorsand others added 13 commits April 26, 2023 21:54
…w-response, r=lcnr
Clear response values for overflow in new solver
When we have an overflow, return a trivial query response. This fixes an ICE with the code described in rust-lang#110544:
```rust
trait Trait {}
struct W<T>(T);
impl<T, U> Trait for W<(W<T>, W<U>)>
where
W<T>: Trait,
W<U>: Trait,
{}
fn impls<T: Trait>() {}
fn main() {
impls::<W<_>>()
}
```
Where, while proving `W<?0>: Trait`, we overflow but still apply the query response of `?0 = (W<?1>, W<?2>)`. Then while re-processing the query to validate that our evaluation result was stable, we get a different query response that looks like `?1 = (W<?3>, W<?4>), ?2 = (W<?5>, W<?6>)`, and so we trigger the ICE.
Also, by returning a trivial query response we also avoid the infinite-loop/OOM behavior of the old solver.
r? ``@lcnr``
…rk-Simulacrum
Bump libffi-sys to 2.3.0
Bump libffi-sys to 2.3.0 that includes LoongArch support.
Thanks
Related: rust-lang/miri#2858
include source error for LoadLibraryExW
In rust-lang#107595, we added retry behavior for LoadLibraryExW on Windows. If it fails we do not print the underlying error that Windows returned. This made rust-lang#110889 a little harder to debug.
In this PR I am adding the source error in the message if it is available.
… r=cuviper
Make sure that some stdlib method signatures aren't accidental refinements
In the process of implementing https://rust-lang.github.io/rfcs/3245-refined-impls.html, I found a bunch of stdlib implementations that accidentally "refined" their method signatures by dropping (unnecessary) bounds.
This isn't currently a problem, but may become one if/when method signature refining is stabilized in the future. Shouldn't hurt to make these signatures a bit more accurate anyways.
NOTE (just to be clear lol): This does not affect behavior at all, since we don't actually take advantage of refined implementations yet!
… r=cjgillot
Don't duplicate anonymous lifetimes for async fn in traits
`record_lifetime_params_for_async` needs to be called outside of the scope of the function, or else it'll end up collecting anonymous lifetimes twice (those on the function and those within the `AnonymousCreateParameter` rib). This matches how `record_lifetime_params_for_async` is being used for functions with bodies below.
This fixes (partially) rust-lang#110963 when the lifetimes are late-bound, but does not do so when the lifetimes are early-bound (as seen from the known-bug that I added).
@rustbotrustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels Apr 29, 2023
@Dylan-DPC

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@bors

bors commented Apr 29, 2023

Copy link
Copy Markdown
Collaborator

📌 Commit 81910a1 has been approved by Dylan-DPC

It is now in the queue for this repository.

@borsbors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 29, 2023
@bors

bors commented Apr 29, 2023

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 81910a1 with merge af2c7e0...

@bors

bors commented Apr 29, 2023

Copy link
Copy Markdown
Collaborator

☀️ Test successful - checks-actions
Approved by: Dylan-DPC
Pushing af2c7e0 to master...

@borsbors added the merged-by-bors This PR was explicitly merged by bors. label Apr 29, 2023
@bors
bors merged commit af2c7e0 into rust-lang:masterApr 29, 2023
@rustbotrustbot added this to the 1.71.0 milestone Apr 29, 2023
@rust-timer

Copy link
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR#Perf Build Sha
#1109656b89a7fea2bc1f52a85662752ec0252e09bbd93a
#110962aa51bcb344cab8d55822fca30c259dd4a12eae3e
#1109581daec5b35df1234d58660a402c3c6dc6aefb7c8c
#110932cea335db121a63999f4ae0daf303a64e63ece963
#1108940ea810d70c56e51eb6ca394fc6778c5c36dcfe76
#110614edfe440d205b68769b066c44a7af7d94b1b47997

previous master: 572c0d553f

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (af2c7e0): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
0.3%[0.3%, 0.3%]2
Improvements ✅
(primary)
-0.3%[-0.3%, -0.3%]2
Improvements ✅
(secondary)
-0.4%[-0.4%, -0.4%]1
All ❌✅ (primary)-0.3%[-0.3%, -0.3%]2

Max RSS (memory usage)

Results

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.

meanrangecount
Regressions ❌
(primary)
3.2%[3.2%, 3.2%]1
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-0.7%[-0.7%, -0.7%]1
Improvements ✅
(secondary)
--0
All ❌✅ (primary)1.2%[-0.7%, 3.2%]2

Cycles

Results

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.

meanrangecount
Regressions ❌
(primary)
--0
Regressions ❌
(secondary)
--0
Improvements ✅
(primary)
-3.9%[-3.9%, -3.9%]1
Improvements ✅
(secondary)
--0
All ❌✅ (primary)-3.9%[-3.9%, -3.9%]1

@rustbotrustbot added the perf-regression Performance regression. label Apr 29, 2023
@pnkfelix

Copy link
Copy Markdown
Contributor
  • regressions are solely to secondary externs benchmark.
  • its so minor. marking as triaged.

@rustbot label: perf-regression-triaged

@rustbotrustbot added the perf-regression-triaged The performance regression has been triaged. label May 3, 2023
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-borsThis PR was explicitly merged by bors.perf-regressionPerformance regression.perf-regression-triagedThe performance regression has been triaged.rollupA PR which is a rollupS-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@Dylan-DPC@bors@rust-timer@pnkfelix@rustbot@compiler-errors@heiher@cjgillot