Skip to content
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 6 pull requests #91539

Merged
merged 15 commits into from
Dec 5, 2021
Merged

Rollup of 6 pull requests #91539

merged 15 commits into from
Dec 5, 2021

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

devnexen and others added 15 commits October 7, 2021 20:47
This commit is intended to follow the stabilization disposition of the
FCP that has now finished in rust-lang#84223. This stabilizes the ability to flag
thread local initializers as `const` expressions which enables the macro
to generate more efficient code for accessing it, notably removing
runtime checks for initialization.

More information can also be found in rust-lang#84223 as well as the tests where
the feature usage was removed in this PR.

Closes rust-lang#84223
environ on macos uses directly libc which has the correct signature.
…arameter, r=jackh726

Explain why `Self` is invalid in generic parameters

Close rust-lang#89985.

r? `@estebank`
…ars, r=nikomatsakis

Postpone the evaluation of constant expressions that depend on inference variables

Previously `delay_span_bug` calls were triggered once an inference variable was included in the substs of a constant that was to be evaluated. Some of these would merely have resulted in trait candidates being rejected, hence no real error was ever encountered, but the triggering of the `delay_span_bug` then caused an ICE in later stages of the compiler due to no error ever occurring.
We now postpone the evaluation of these constants, so any trait obligation fulfillment will simply stall on this constant and the existing type inference machinery of the compiler handles any type errors if present.

Fixes rust-lang#89320
Fixes rust-lang#89146
Fixes rust-lang#87964
Fixes rust-lang#87470
Fixes rust-lang#83288
Fixes rust-lang#83249
Fixes rust-lang#90654

I want to thank `@BoxyUwU` for cooperating on this and for providing some help.

r? `@lcnr` maybe?
…, r=m-ou-se

Implement VecDeque::retain_mut

Part of rust-lang#90829.

In rust-lang#90772, someone suggested that `retain_mut` should also be implemented on `VecDeque`. I think that it follows the same logic (coherency). So first: is it ok? Second: should I create a new feature for it or can we put it into the same one?

r? `@joshtriplett`
…-const, r=m-ou-se

std: Stabilize the `thread_local_const_init` feature

This commit is intended to follow the stabilization disposition of the
FCP that has now finished in rust-lang#84223. This stabilizes the ability to flag
thread local initializers as `const` expressions which enables the macro
to generate more efficient code for accessing it, notably removing
runtime checks for initialization.

More information can also be found in rust-lang#84223 as well as the tests where
the feature usage was removed in this PR.

Closes rust-lang#84223
@rustbot rustbot added the rollup A PR which is a rollup label Dec 4, 2021
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=6

@bors
Copy link
Contributor

bors commented Dec 4, 2021

📌 Commit 2ba5917 has been approved by matthiaskrgr

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Dec 4, 2021
@bors
Copy link
Contributor

bors commented Dec 5, 2021

⌛ Testing commit 2ba5917 with merge 5e93f6e...

@bors
Copy link
Contributor

bors commented Dec 5, 2021

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 5e93f6e to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Dec 5, 2021
@bors bors merged commit 5e93f6e into rust-lang:master Dec 5, 2021
@rustbot rustbot added this to the 1.59.0 milestone Dec 5, 2021
@rust-highfive
Copy link
Collaborator

📣 Toolstate changed by #91539!

Tested on commit 5e93f6e.
Direct link to PR: #91539

💔 miri on windows: test-pass → test-fail (cc @RalfJung @eddyb @oli-obk).
💔 miri on linux: test-pass → test-fail (cc @RalfJung @eddyb @oli-obk).
💔 rls on windows: test-pass → build-fail (cc @Xanewok).
💔 rls on linux: test-pass → build-fail (cc @Xanewok).

rust-highfive added a commit to rust-lang-nursery/rust-toolstate that referenced this pull request Dec 5, 2021
Tested on commit rust-lang/rust@5e93f6e.
Direct link to PR: <rust-lang/rust#91539>

💔 miri on windows: test-pass → test-fail (cc @RalfJung @eddyb @oli-obk).
💔 miri on linux: test-pass → test-fail (cc @RalfJung @eddyb @oli-obk).
💔 rls on windows: test-pass → build-fail (cc @Xanewok).
💔 rls on linux: test-pass → build-fail (cc @Xanewok).
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (5e93f6e): comparison url.

Summary: This benchmark run did not return any relevant changes.

If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf.

@rustbot label: -perf-regression

@matthiaskrgr matthiaskrgr deleted the rollup-rnl10yb branch December 12, 2021 09:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.