Skip to content

Rollup of 10 pull requests#159604

Closed
JonathanBrouwer wants to merge 113 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-Sb6P4rP
Closed

Rollup of 10 pull requests#159604
JonathanBrouwer wants to merge 113 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-Sb6P4rP

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Contributor

Successful merges:

Failed merges:

r? @ghost

Create a similar rollup

ChayimFriedman2 and others added 30 commits May 29, 2026 01:16
…onstant-sized

We used to set a `slice: None`.
The InvocationStrategy::Once path indexed world.flycheck[0] directly. The always!() above only logs in release builds, so when the list was empty it fell through and panicked with index out of bounds. Use first() and skip the restart when there is no handle.

Fixes rust-lang/rust-analyzer#21638
Previously we would still try to rename the incr comp session dir after
deleting it.
In both cases the incr comp session dir should no longer be accessed.
They should skip non-module scope (although I think they cannot skip and will do just fine), but must also process block module scopes.
internal: update links to `rustc_hir_analysis`
fix: Resolve non-plain paths in blocks correctly
…tpluxqp

feat: Treat library files as truly client immutable
…ztynowk

internal: Split out a session construct
feat: early late classification of lifetimes
…-from-location, r=nnethercote

Enable single Location to issue multiple borrows

In the Reborrow work, a single MIR assignment statement can produce multiple borrows. To support that the GatherBorrows contents need to change a little. Aside from the `get_index_of` function which is used in three places, none of the changes affect code outside the `borrow_set.rs` file.

I also changed the one `Vec` there was into a `SmallVec<[1]>` as that is the most likely case (I believe), and similarly used `SmallVec<[1]>` for the `Location->BorrowIndex[]` listing.

r? compiler
…chenkov

Improve `AttrItem::span`

It has some shortcomings. Details in individual commits.

r? @petrochenkov
…, r=lcnr

Do not mark unnormalized const aliases as rigid when normalizing param env

Fixes rust-lang/trait-system-refactor-initiative#279
The old solver actually evaluates const aliases before normalizing param env.
The next solver should be consistent with that.

r? lcnr
also cc @BoxyUwU
…s-test, r=nnethercote

Add regression test for nested replacement ranges in `collect_tokens`

rust-lang#129346 removed support for nested replacement ranges in `collect_tokens`, and simplified the nesting out of `tests/ui/proc-macro/macro-rules-derive-cfg.rs` accordingly. That removal turned out to break real-world code, so it was reverted in rust-lang#132587 — but the revert only restored the compiler code, not the original nested shape of the test, leaving the nested case uncovered ever since.

This reinstates the nested case as a separate test: the pre-rust-lang/rust#129346 shape of `macro-rules-derive-cfg.rs` (a `cfg_attr` expansion nested inside a `let` statement, nested inside an anonymous constant), combined with the extra inner attributes that rust-lang#129346 added to the simplified version. If nested replacement range support regresses again, this test fails.

The expected stdout was verified against current nightly; the sibling test's checked-in stdout reproduces byte-for-byte under the same setup.

Closes rust-lang#132727
…ovements, r=Kobzol

Minor `TokenStream` improvements

I found these while attempting to improve the `TokenStream` representation in rust-lang#159048.

r? @Kobzol
…li-obk

Separate `InterpCx` usage by `ConstAnalysis` phases

`ConstAnalysis` has a `RefCell<InterpCx>`. During the analysis phase the accesses are read-only, but the visiting phase (performed by `Collector`) requires mutation, because of calls to `try_make_constant`.

This commit removes the `RefCell` by having two `InterpCx` instances: a read-only one for the `ConstAnalysis` and a mutable one for the visiting phase, stored in `Collector`. This removes the need for the `OperandCollector::ecx` field, and for many `borrow`/`borrow_mut` calls.

r? @cjgillot
…=Kobzol

Clarify `push_stream`/`push_tree`

More `TokenStream` cleanups. Details in individual commits.

r? @Kobzol
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Jul 20, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) 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-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Jul 20, 2026
@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-*

@rust-bors

rust-bors Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

📌 Commit a429491 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 20, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 20, 2026
Rollup of 10 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

This comment has been minimized.

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

Rollup of 10 pull requests

Successful merges:

 - #159600 (`rust-analyzer` subtree update)
 - #158046 (proc_macro: preserve file module spans for inner attrs)
 - #159000 (Small cleanups to the incr comp session code)
 - #159449 (Enable single Location to issue multiple borrows)
 - #159587 (Improve `AttrItem::span`)
 - #159460 (Do not mark unnormalized const aliases as rigid when normalizing param env)
 - #159529 (Add regression test for nested replacement ranges in `collect_tokens`)
 - #159585 (Minor `TokenStream` improvements)
 - #159586 (Separate `InterpCx` usage by `ConstAnalysis` phases)
 - #159603 (Clarify `push_stream`/`push_tree`)

Failed merges:

 - #159590 (Remove some dead code)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple-macos-26 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)

Important

For more information how to resolve CI failures of this job, visit this link.

@rust-bors rust-bors Bot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jul 20, 2026
@rust-bors

rust-bors Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 9169afd failed: CI. Failed job:

@rust-bors

rust-bors Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: 62f6391 (62f6391c197cdbdc35751e032ab889628d8e0e0a)
Base parent: 14ead7d (14ead7d3d509f50efe9afb84673e65885dfd4d07)

@rust-bors rust-bors Bot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 20, 2026
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 20, 2026
@rust-bors

rust-bors Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved due to being closed.

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

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) rollup A PR which is a rollup S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue. 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.