Skip to content

Rollup of 6 pull requests - #165838

Closed
Zalathar wants to merge 21 commits into
rust-lang:mainfrom
Zalathar:rollup-9U74MCP
Closed

Zalathar wants to merge 21 commits into
rust-lang:mainfrom
Zalathar:rollup-9U74MCP

Conversation

@Zalathar

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

cuviper and others added 21 commits November 10, 2026 12:31
(cherry picked from commit b791169)
LangItem might eventually be the type that forces us to support
`#[derive(StableHash)]` for enums with more than 256 variants.
This commit also removes `#[derive(Hash)]` from the affected types, since it is
no longer used.

If these types need a plain Hash impl is needed in the future, it could
potentially share the `stable_hash_inner` implementation.
By moving away from the old `impl_stable_traits_for_trivial_type!` macro, this
commit has the side-effect of removing unused StableOrd impls for some types.
Those impls could potentially be re-added if they are ever needed.
Add a test for a case that results in a recursive loop that runs until
it runs out of memory or gets killed. This used to take a long time to
compile because of nested recursion caused by dereferencing the type of
the struct.

Signed-off-by: Hardik Kumar <hardikxk@gmail.com>
Co-authored-by: xkevio <xkeviota@gmail.com>

style: use ecx stmt item method
…rk-Simulacrum

Bump stage0 to 1.101.0-beta.1

https://forge.rust-lang.org/release/process.html#default-branch-bootstrap-update-and-crater-tuesday

- run replace-version-placeholder (cherry-picked from beta)
- bump stage0 to 1.101.0-beta.1
- update STAGE0_MISSING_TARGETS
- reformat with `cfg_select!` awareness
- update `cfg(bootstrap)`
feat: support nested functions with `#[offload_kernel]`

Related to rust-lang#131513.

Allows annotating nested functions with `#[offload_kernel]`, similar to autodiff.

Also fixes the error message when `#[offload_kernel]` is used on anything other than functions.

r? @ZuseZ4

(@Sa4dUs, ping)
Avoid `Hash::hash` when stable-hashing various types

This PR makes StableHash independent of stdlib-dependent Hash impls for several types, to avoid potential inconsistency in stable hashing between stage1 and stage2 compilers.

This covers all of the StableHash impls that I'm aware of. However, there are still various other places in the compiler where we rely on `Hash::hash` for hashes that probably should be made consistent between compiler stages.
…winwhite

tests: Add regression test for infinite recursive dereference

Add a test for a case that results in a recursive loop that runs until it runs out of memory or gets killed.

closes rust-lang#67064
…ns, r=Mark-Simulacrum

Avoid redundant scans when extracting stage0 archives

[`getnames()`](https://github.com/python/cpython/blob/b4e48a444ea02921ce4b701fe165e6cfd4cf5845/Lib/tarfile.py#L1991-L1995) calls [`getmembers()`](https://github.com/python/cpython/blob/b4e48a444ea02921ce4b701fe165e6cfd4cf5845/Lib/tarfile.py#L1981-L1989), which can scan the entire archive if its members have not already been loaded. Iterating over tar directly (https://github.com/python/cpython/blob/v3.10.12/Lib/tarfile.py#L2715-L2747) allows archive entries to be handled one at a time. Passing each `TarInfo` directly to [`extract()`](https://docs.python.org/3.10/library/tarfile.html#tarfile.TarFile.extract) also avoids name-based lookup, removing the preliminary scan and its associated repeated decompression.

With cached stage0 archives, `RustBuild.download_toolchain()` improved from 6.44 s to 3.50 s (medians of two runs per version). The rustc, rust-std, and cargo archives were extracted in parallel into fresh directories. Output hashes were verified separately.
…initions, r=wesleywiser

Remove unused compiler modules and types

This pr removes unused types and modules.

In detail, rust-lang#145244 removed the call to `binary_search_slice`. rust-lang#145951 removed `GenerateProofTree` usages. rust-lang#123761 removed `PrintClosureAsImpl` diagnostic usage in favor of `suggest_impl_trait`. rust-lang#125775 subsequently removed the helper that constructed it.
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Nov 12, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-binaryheap Area: `std::collections::BinaryHeap` A-btree Area: `std::collections::{BTreeMap, BTreeSet}` A-collections Area: `std::collections` (prefer A-binaryheap, A-btree, A-hashtable, A-linkedlist, A-vecdeque) A-filesystem Area: `std::fs` A-fmt Area: `core::fmt` A-linkedlist Area: `std::collections::LinkedList` A-networking Area: `std::net` labels Nov 12, 2026
@rustbot rustbot added A-option-result Area: Option and Result combinators A-raw-pointers Area: raw pointers, MaybeUninit, NonNull A-rc Area: `Rc` and `Arc` A-slice-vec Area: `[T]` and `Vec<T>` A-str Area: `str` and `String` A-vecdeque Area: `std::collections::VecDeque` O-windows Operating system: Windows 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Nov 12, 2026
@Zalathar

Copy link
Copy Markdown
Member Author

@bors r+ rollup=never p=5 force

@rust-bors

rust-bors Bot commented Nov 12, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 24bd397 has been approved by Zalathar

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 Nov 12, 2026
@rust-bors

rust-bors Bot commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

⌛ Testing commit 24bd397 with merge 7733ae9...

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

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

Successful merges:

 - #165778 (Bump stage0 to 1.101.0-beta.1)
 - #163077 (feat: support nested functions with `#[offload_kernel]`)
 - #165578 (Avoid `Hash::hash` when stable-hashing various types)
 - #165729 (tests: Add regression test for infinite recursive dereference)
 - #165819 (Avoid redundant scans when extracting stage0 archives)
 - #165822 (Remove unused compiler modules and types)
@Zalathar

Copy link
Copy Markdown
Member Author

#165829 flaked out, so instead of letting this run I'm going to make a new rollup of everything.

@Zalathar

Copy link
Copy Markdown
Member Author

@Zalathar Zalathar closed this Nov 12, 2026
@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 Nov 12, 2026
@Zalathar
Zalathar deleted the rollup-9U74MCP branch November 12, 2026 04:22
@rust-bors

rust-bors Bot commented Nov 12, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved due to being closed.

Auto build was cancelled due to the PR being closed. Cancelled workflows:

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

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-binaryheap Area: `std::collections::BinaryHeap` A-btree Area: `std::collections::{BTreeMap, BTreeSet}` A-collections Area: `std::collections` (prefer A-binaryheap, A-btree, A-hashtable, A-linkedlist, A-vecdeque) A-filesystem Area: `std::fs` A-fmt Area: `core::fmt` A-linkedlist Area: `std::collections::LinkedList` A-networking Area: `std::net` A-option-result Area: Option and Result combinators A-raw-pointers Area: raw pointers, MaybeUninit, NonNull A-rc Area: `Rc` and `Arc` A-slice-vec Area: `[T]` and `Vec<T>` A-str Area: `str` and `String` A-vecdeque Area: `std::collections::VecDeque` O-windows Operating system: Windows 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-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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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.

6 participants