Skip to content

Rollup of 12 pull requests - #160081

Closed
JonathanBrouwer wants to merge 33 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-F2lssiG
Closed

Rollup of 12 pull requests#160081
JonathanBrouwer wants to merge 33 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-F2lssiG

Conversation

@JonathanBrouwer

@JonathanBrouwer JonathanBrouwer commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Successful merges:

r? @ghost

Create a similar rollup

chenyukang and others added 30 commits July 10, 2026 12:40
Coercing the fn item `bar` to a fn pointer while `Foo::value` holds the
associated-type projection `<<T as Func>::Ret as Id>::Assoc` used to ICE
during normalization ("maybe try to call `try_normalize_erasing_regions`
instead"). It now reports the ordinary `u32: Id` trait-bound error instead
of crashing.
Lots of names weren't changed to account for the introduction of the
`Clause` type as a specialized form of `Predicate`, presumably because
it was tedious. This commit converts as many of them as I could find.
It's mostly very tedious renamings of types, functions, variables, and
queries. The more interesting ones are a couple of files
(`predicates_of.rs`, `impossible_predicates.rs`) and a MIR pass
(`ImpossiblePredicates`).
The carets should ideally point to the path, not the entire attribute,
but that's hard to achieve with the current code structure.
The carets already point to just the attribute path, which is what we
want.
…=oli-obk

Many "predicate"-to-"clause" renamings

Lots of names weren't changed to account for the introduction of the `Clause` type as a specialized form of `Predicate`, presumably because it was tedious. This commit converts as many of them as I could find. It's mostly very tedious renamings of types, functions, variables, and queries. The more interesting ones are a couple of files (`predicates_of.rs`, `impossible_predicates.rs`) and a MIR pass (`ImpossiblePredicates`).

r? @oli-obk
Replace most `Ty::new_fn_def` calls with `type_of` queries directly

This is so we can reduce the amount of code and changes in rust-lang#159403. It should stand on its own, but really it's meant as an extended part of 159403.

This allows getting the right `ty::FnDef` even cross-crate, as the `type_of` query results are stored in metadata, in contrast to the queries for computing the binder for various declarations. These binders are already cached via `fn_sig`, but using that is somewhat overkill and can cause cycle errors in some cases.
…d-braces-temp-scope-lite, r=oli-obk

Skip linting unused braces for FunctionArg and MethodArg context for 2024 later

Fixes rust-lang#154247

`unused_braces` is a AST level lint, but in Rust 2024 braces around function and method arguments can affect temporary drop scope.

I tried to find a more complete fix for it, but seems all too heavy, which involve AST visitor or need `hir` related stuff.

Instead of teaching this lint to reason about semantics, so it's better to stop linting those argument-position braces in 2024 later edition.
… r=Kobzol

run intrinsic-test by default on x86_64-gnu

This PR runs intrinsic-test by default on x86_64-gnu and set sde bootstrap config in `RUST_CONFIGURE_ARGS` .

r? @Kobzol
…, r=mati865

Avoid stale closure recovery state across statements

Fixes rust-lang#159989

`current_closure` was cleared when starting a new expression through `parse_expr`, but statement expressions call `parse_expr_res` directly. This allowed closure recovery state from one statement to remain active while parsing the next statement.

This pr clears `current_closure` when entering `parse_stmt_without_recovery`, matching the behavior of `parse_expr`.

https://github.com/rust-lang/rust/blob/da2697d1d842f4faf83083115aab396f82829a3a/compiler/rustc_parse/src/parser/expr.rs#L55-L56

https://github.com/rust-lang/rust/blob/da2697d1d842f4faf83083115aab396f82829a3a/compiler/rustc_parse/src/parser/expr.rs#L63-L64
Add regression test for rust-lang#132767

Closes rust-lang#132767. Coercing a fn item to a fn pointer with an associated type projection used to ICE during normalization. now errors with E0277.
…est, r=GuillaumeGomez

Update `browser-ui-test` version to `0.25.0`

With this new version we should be able to finally add a regression test for [the "code copy" ](rust-lang#158137).

r? ghost
Improve consistency of attribute error messages (part 2)

A sequel to rust-lang#159755.

r? @estebank
…-fn-turbofish, r=estebank

Fix associated function suggestion for generic ADTs

Fixes rust-lang#159813

r? @estebank
@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors r+ rollup=never p=5

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

@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc O-unix Operating system: Unix-like S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) 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 Jul 28, 2026
@rust-bors

rust-bors Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 105fbd4 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 Jul 28, 2026
@rust-bors

rust-bors Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

⌛ Trying commit 105fbd4 with merge a349e16

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

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

rust-bors Bot pushed a commit that referenced this pull request Jul 28, 2026
Rollup of 12 pull requests


try-job: dist-various-1
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
try-job: i686-msvc-*
@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 Jul 28, 2026
@rust-bors

rust-bors Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

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

This rollup was thus unapproved.

@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors try cancel

@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 Jul 28, 2026
@rust-bors

rust-bors Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Try build cancelled. Cancelled workflows:

@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job 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] rustc_passes test:false 1.313
    Checking rustc_borrowck v0.0.0 (/checkout/compiler/rustc_borrowck)
[RUSTC-TIMING] rustc_const_eval test:false 4.108
    Checking rustc_mir_transform v0.0.0 (/checkout/compiler/rustc_mir_transform)
error[E0004]: non-exhaustive patterns: `&rustc_ast::ExprKind::DirectConstArg(_)` not covered
    --> compiler/rustc_lint/src/unused.rs:147:15
     |
 147 |         match &expr.peel_parens().kind {
     |               ^^^^^^^^^^^^^^^^^^^^^^^^ pattern `&rustc_ast::ExprKind::DirectConstArg(_)` not covered
     |
note: `rustc_ast::ExprKind` defined here
    --> compiler/rustc_ast/src/ast.rs:1746:1
     |
1746 | pub enum ExprKind {
     | ^^^^^^^^^^^^^^^^^
...
1921 |     DirectConstArg(Box<Expr>),
     |     -------------- not covered
     = note: the matched value is of type `&rustc_ast::ExprKind`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
     |
 202 ~             Underscore | Err(_) | Dummy => false,
 203 ~             &rustc_ast::ExprKind::DirectConstArg(_) => todo!(),
     |

For more information about this error, try `rustc --explain E0004`.
[RUSTC-TIMING] rustc_lint test:false 2.935
error: could not compile `rustc_lint` (lib) due to 1 previous error

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-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc O-unix Operating system: Unix-like rollup A PR which is a rollup T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) 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.