Skip to content

Rollup of 12 pull requests - #163827

Closed
JonathanBrouwer wants to merge 40 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-miFdVKH
Closed

JonathanBrouwer wants to merge 40 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-miFdVKH

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

GuillaumeGomez and others added 30 commits September 11, 2026 14:46
…, r=petrochenkov

rustc_ast_lowering: track implicit Self via explicit flag instead of name

fixes rust-lang#163457
& added a ui regression test for the reported reproducer.

r? @bjorn3
[rustdoc] Fix how `Deref` items is handled.

Fixes rust-lang#160236.

This PR fixes a few things around how we handle `Deref`:
 * Since nothing except for methods is callable through a `Deref`, only methods should be kept
 * If the `Deref::Target` is a type implementing `Copy`, then methods taking `self` work and should be displayed.

<del>During the `clean` pass, I store the item `DefId` on which `Deref` is implemented in a `DefIdSet` if the `Deref::Target` implements `Copy`. Then during rendering, we check if the "parent item" is in in the `DefIdSet`, and if so, we keep methods with `self`.</del>

<del>Now you might wonder why the item and not the derefed item. It's because the `DefId` we get from the computed type doesn't match the `DefId` of the actual type (that's where I spent most of my time, finding an ID (`DefId`/`ItemId`) I can use as key T_T).</del>

It computes in `html/render` if the `Deref::Target` item is copy before rendering it.

So to resume:

* `&self` is always kept.
* `&mut self` is kept if `DerefMut` is implemented (nothing changed there).
* `self` is kept only if `Deref::Target` is `Copy`.
* Everything else disappears as they're not callable through `Deref`.

r? @camelid
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Oct 5, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-clippy Relevant to the Clippy team. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure 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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Oct 5, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Member Author

@bors r+ p=5 force

Trying commonly failed jobs
@bors try jobs=dist-various-1,test-various,test-x86_64-gnu-aux,test-x86_64-msvc-1,test-aarch64-apple-1,test-aarch64-apple-2,test-x86_64-mingw-1,test-i686-msvc,test-armhf-gnu

@rust-bors

rust-bors Bot commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

📌 Commit f2010fb has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Oct 5, 2026
rust-bors Bot pushed a commit that referenced this pull request Oct 5, 2026
Rollup of 12 pull requests


try-job: dist-various-1
try-job: test-various
try-job: test-x86_64-gnu-aux
try-job: test-x86_64-msvc-1
try-job: test-aarch64-apple-1
try-job: test-aarch64-apple-2
try-job: test-x86_64-mingw-1
try-job: test-i686-msvc
try-job: test-armhf-gnu
@rust-bors

rust-bors Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

⌛ Trying commit f2010fb with merge fbe3787…

To cancel the try build, run the command @bors try cancel.

Workflow: https://github.com/rust-lang/rust/actions/runs/37347377614

@rust-bors

rust-bors Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

⌛ Testing commit f2010fb with merge a93d401...

Workflow: https://github.com/rust-lang/rust/actions/runs/37347410137

rust-bors Bot pushed a commit that referenced this pull request Oct 5, 2026
…uwer

Rollup of 12 pull requests

Successful merges:

 - #163531 (rustc_ast_lowering: track implicit Self via explicit flag instead of name)
 - #160915 ([rustdoc] Fix how `Deref` items is handled.)
 - #163364 (make semicolon_in_expressions_from_non_local_macros not report-in-deps)
 - #163770 (document the rustc_comptime attribute)
 - #163780 (Skip optional asserts in SsaRangePropagation)
 - #163785 (Bump Windows CI LLVM to 22.1.8)
 - #163796 (continue crashes tests `-Znext-solver` work)
 - #163646 (Get `inputs_hir` directly from `decl`)
 - #163733 (Fix extra spaces in integer format_into docs)
 - #163773 (Update GitHub Actions to v26)
 - #163787 (moves rustc_legacy_const_generics checks into attribute parsing)
 - #163810 (Fix an issue for clippy's `search_is_some` with the next-solver)
@rust-bors rust-bors Bot 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 Oct 5, 2026
@rust-bors

rust-bors Bot commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

PR #160915, which is a member of this rollup, was unapproved.

This rollup was thus unapproved.

Auto build was cancelled due to unapproval. Cancelled workflows:

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Oct 5, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Member Author

@bors try cancel

@rust-bors

rust-bors Bot commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

Try build cancelled. Cancelled workflows:

Hint: if you want to run another try build, you do not need to manually cancel the previous one. Just run @bors try and bors will cancel the previous build automatically.

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job test-pr-check-2 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] askama test:false 0.141
error[E0433]: cannot find module or crate `hir` in this scope
    --> src/librustdoc/html/render/mod.rs:3188:16
     |
3188 |         && let hir::ItemKind::Impl(impl_item) = item.kind
     |                ^^^ use of unresolved module or unlinked crate `hir`
     |
     = help: if you wanted to use a crate named `hir`, use `cargo add hir` to add it to your `Cargo.toml`
help: consider importing one of these enums
     |
  42 + use crate::ast::ItemKind;
---
     |
     = and 1 other candidate
help: if you import `ItemKind`, refer to it directly
     |
3188 -         && let hir::ItemKind::Impl(impl_item) = item.kind
3188 +         && let ItemKind::Impl(impl_item) = item.kind
     |

error[E0433]: cannot find module or crate `hir` in this scope
    --> src/librustdoc/html/render/mod.rs:3192:36
     |
3192 |             if matches!(item.kind, hir::ImplItemKind::Type(_)) {
     |                                    ^^^ use of unresolved module or unlinked crate `hir`
     |
     = help: if you wanted to use a crate named `hir`, use `cargo add hir` to add it to your `Cargo.toml`
help: consider importing this enum
     |
  42 + use rustc_hir::ImplItemKind;
     |
help: if you import `ImplItemKind`, refer to it directly
     |
3192 -             if matches!(item.kind, hir::ImplItemKind::Type(_)) {
3192 +             if matches!(item.kind, ImplItemKind::Type(_)) {
     |

For more information about this error, try `rustc --explain E0433`.
[RUSTC-TIMING] rustdoc test:false 2.943
error: could not compile `rustdoc` (lib) due to 2 previous errors

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc rollup A PR which is a rollup T-clippy Relevant to the Clippy team. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure 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. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.