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 9 pull requests #94103

Merged
merged 20 commits into from
Feb 18, 2022
Merged

Rollup of 9 pull requests #94103

merged 20 commits into from
Feb 18, 2022

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Amanieu and others added 20 commits January 26, 2022 15:59
Tweaked `try_collect()` to accept more `Try` types

Updated feature attribute for tracking issue
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
I have found this code confusing for years. I've always roughly
understood it, but never exactly. I just made my fourth(?) attempt and
finally cracked it.

This commit improves the comments. In particular, it explicitly
describes how you can't do a custom fold/visit of any type; there are
actually a handful of "types of interest" (e.g. `Ty`, `Predicate`,
`Region`, `Const`) that can be custom folded/visted, and all other types
just get a generic traversal. I think this was the part that eluded me
on all my prior attempts at understanding.

The commit also updates comments to account for some newer changes such
as the fallible/infallible folding distinction, does some minor
reorderings, and moves one `impl` to a better place.
It seems to be unused and it is incorrect for arm/aarch64 anyway.
Update tracking issue numbers for inline assembly sub-features

The main tracking issue for inline assembly is [closed](rust-lang#72016 (comment)), further tracking of the remaining sub-features has been moved to separate tracking issues.
…s, r=BoxyUwU

Improve comments about type folding/visiting.

I have found this code confusing for years. I've always roughly
understood it, but never exactly. I just made my fourth(?) attempt and
finally cracked it.

This commit improves the comments. In particular, it explicitly
describes how you can't do a custom fold/visit of any type; there are
actually a handful of "types of interest" (e.g. `Ty`, `Predicate`,
`Region`, `Const`) that can be custom folded/visted, and all other types
just get a generic traversal. I think this was the part that eluded me
on all my prior attempts at understanding.

The commit also updates comments to account for some newer changes such
as the fallible/infallible folding distinction, does some minor
reorderings, and moves one `impl` to a better place.

r? `@BoxyUwU`
…jsha

Generate list instead of div items in sidebar

Fixes rust-lang#92986.

Surprisingly, we didn't have much CSS for this...

[Demo](https://rustdoc.crud.net/imperio/links-in-sidebar/std/index.html).

r? `@jsha`
Add MAIN_SEPARATOR_STR

Currently, if someone needs access to the path separator as a str, they need to go through this mess:

```rust
unsafe {
    std::str::from_utf8_unchecked(slice::from_ref(&(MAIN_SEPARATOR as u8)))
}
```

This PR just re-exports an existing path separator str API.
Add a `try_collect()` helper method to `Iterator`

Implement `Iterator::try_collect()` as a helper around `Iterator::collect()` as discussed [here](https://internals.rust-lang.org/t/idea-fallible-iterator-mapping-with-try-map/15715/5?u=a.lafrance).

First time contributor so definitely open to any feedback about my implementation! Specifically wondering if I should open a tracking issue for the unstable feature I introduced.

As the main participant in the internals discussion: r? `@scottmcm`
Fix ICE when using Box<T, A> with pointer sized A

Fixes rust-lang#78459

Note that using `Box<T, A>` with a more than pointer sized `A` or using a pointer sized `A` with a Box of a DST will produce a different ICE (rust-lang#92054) which is not fixed by this PR.
…Simulacrum

Remove CFG_PLATFORM

It seems to be unused and it is incorrect for arm/aarch64 anyway.
…p_fix, r=Manishearth

Clippy: Don't lint `needless_borrow` in method receiver positions

r? `@Manishearth`

cc `@camsteffen` `@Jarcho`

cc rust-lang/rust-clippy#8441

Let's get this fix in before the beta branching tomorrow.
@rustbot rustbot added T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Feb 17, 2022
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=9

@bors
Copy link
Contributor

bors commented Feb 17, 2022

📌 Commit 39c1748 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 Feb 17, 2022
@bors
Copy link
Contributor

bors commented Feb 17, 2022

⌛ Testing commit 39c1748 with merge 73a7423...

@bors
Copy link
Contributor

bors commented Feb 18, 2022

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing 73a7423 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Feb 18, 2022
@bors bors merged commit 73a7423 into rust-lang:master Feb 18, 2022
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (73a7423): comparison url.

Summary: This benchmark run shows 13 relevant regressions 😿 to instruction counts.

  • Average relevant regression: 1.1%
  • Largest regression in instruction counts: 2.1% on full builds of deeply-nested-async check

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

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

@rustbot rustbot added the perf-regression Performance regression. label Feb 18, 2022
@rylev
Copy link
Member

rylev commented Feb 24, 2022

@matthiaskrgr none of the rolled up PRs here seem remotely suspicious as to why there would be a performance regression. Any ideas?

@matthiaskrgr
Copy link
Member Author

Yeah, the only thing that looks like it might have a very very slight performance impact is the ICE-fix but maybe it is just unlucky noise..?

@matthiaskrgr matthiaskrgr deleted the rollup-cd70ofn branch March 11, 2022 15:32
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. perf-regression Performance regression. 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. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.