Skip to content

Rollup of 6 pull requests - #154688

Closed
JonathanBrouwer wants to merge 17 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-Wwoug1L
Closed

Rollup of 6 pull requests#154688
JonathanBrouwer wants to merge 17 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-Wwoug1L

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

Zoxcand others added 17 commits March 24, 2026 18:25
PR rust-lang#154634 recently renamed many type parameters that impl
`HashStableContext` as `Hcx`. It missed a few that are named `HirCtx`.
This commit renames them.
They're in multiple sections with no rhyme or reason.
`derive(HashStable_Generic)` generates impls like this:
```
impl<__CTX> HashStable<__CTX> for ExpnKind
where
__CTX: crate::HashStableContext
{
fn hash_stable(&self, hcx : &mut __CTX, __hasher: &mut StableHasher) {
...
}
}
```
This is used for crates that are upstream of `rustc_middle`.
The `crate::HashStableContext` bound means every crate that uses
`derive(HashStable_Generic)` must provide (or import) a trait
`HashStableContext` which `rustc_middle` then impls. In `rustc_span`
this trait is sensible, with three methods. In other crates, this trait
is empty, and there is the following trait hierarchy:
```
rustc_session::HashStableContext
| |
| rustc_hir::HashStableContext
| / \
rustc_ast::HashStableContext rustc_abi::HashStableContext
|
rustc_span::HashStableContext
```
All very strange and unnecessary. This commit changes
`derive(HashStable_Generic)` to use `rustc_span::HashStableContext`
instead of `crate::HashStableContext`. This eliminates the need for all
the empty `HashStableContext` traits and impls. Much better.
Compute the result of a projection type with region errors
Fixes: rust-lang#152682
With the old trait solver, `type_known_to_meet_bound_modulo_regions()` isn't really operating "modulo regions" if there are any region errors, since `normalize` will just return a type error to the trait solver if given a ty with a region error, which then starts cascading when there are so many assumptions.
So I think it would be good to erase regions if there are any region errors before we normalize the type when collecting predicates for confirmation.
That said, I somehow feel like this is kind of ad-hoc... I'd really appreciate if someone more familiar with this code could take a closer look :3
…O8Ki
Make `layout_of` cycles fatal errors
This makes `layout_of` cycles fatal errors.
This is a step towards removing query cycle recovery.
…mpls, r=petrochenkov
Remove `StableHashContext` impls
Details in individual commits.
r? @petrochenkov
Export `derive` at the crate root: `core::derive` and `std::derive`
This PR makes the `derive` macro available at the crate root:
```rust
#[std::derive(Clone)]
#[core::derive(Copy)]
struct X;
```
ACP: rust-lang/libs-team#766
Tracking issue: rust-lang#154645
…-items, r=GuillaumeGomez
rustdoc: seperate methods and associated functions in sidebar
fixesrust-lang#154602
r? @fmease
before:
<img width="340" height="591" alt="image" src="https://github.com/user-attachments/assets/79268155-5260-4bb9-a826-46f459fc81eb" />
after:
<img width="514" height="588" alt="image" src="https://github.com/user-attachments/assets/b56b5ca6-28d7-45a7-86a9-ad6bf37f608a" />
example of type with both (`Box`):
<img width="410" height="760" alt="image" src="https://github.com/user-attachments/assets/a74dd536-e931-4d8f-af95-275bfcf48285" />
…ooeo
Avoid creating async return opaques for foreign async fns
Fixesrust-lang#146754
Previously, def collection created the desugared async return opaque for foreign `async fn` items, but AST lowering won't lower that opaque for foreign items. That left a `DefId` without a corresponding HIR owner, which later caused an ICE during analysis.
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 1, 2026
@rustbotrustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. labels Apr 1, 2026
@JonathanBrouwer

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 1, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 06e85fa has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 1, 2026
@JonathanBrouwer

Copy link
Copy Markdown
MemberAuthor

Trying commonly failed jobs
@bors try jobs=test-various,x86_64-gnu-aux,x86_64-gnu-llvm-21-3,x86_64-msvc-1,aarch64-apple,x86_64-mingw-1

@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 1, 2026
Rollup of 6 pull requests
try-job: test-various
try-job: x86_64-gnu-aux
try-job: x86_64-gnu-llvm-21-3
try-job: x86_64-msvc-1
try-job: aarch64-apple
try-job: x86_64-mingw-1
@rust-borsrust-borsBot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 1, 2026
@rust-borsrust-borsBot closed this Apr 1, 2026
@rust-bors

rust-borsBot commented Apr 1, 2026

Copy link
Copy Markdown
Contributor

PR #154644, which is a member of this rollup, changed its commit SHA.

This rollup was thus unapproved due to being closed.

@rustbotrustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 1, 2026
@rust-bors

rust-borsBot commented Apr 1, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 726f8c8 (726f8c898c93b208f43688cacbf5c958d670fd8a, parent: 2bd7a97871a74d4333bd3edb6564136167ac604b)

@JonathanBrouwer
JonathanBrouwer deleted the rollup-Wwoug1L branch August 21, 2026 08:19
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.A-query-systemArea: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html)rollupA PR which is a rollupT-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.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants

@JonathanBrouwer@rustbot@Zoxc@lolbinarycat@mu001999@nnethercote@makai410@nik-rev