Skip to content

Rollup of 23 pull requests - #161075

Merged
rust-bors[bot] merged 141 commits into
rust-lang:mainfrom
jhpratt:rollup-sSE7Oua
Aug 14, 2026
Merged

Rollup of 23 pull requests#161075
rust-bors[bot] merged 141 commits into
rust-lang:mainfrom
jhpratt:rollup-sSE7Oua

Conversation

@jhpratt

@jhpratt jhpratt commented Aug 13, 2026

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

jyn514 and others added 30 commits April 17, 2026 11:07
Add LLM guidance, based on the new rl/r policy
yk what we can do btree later

raaaaagh

pain and suffering

*unleaks your box* whats thiSegmentation fault (core dumped)

straight up testing it. and by it,

well, let's just say. "my allocator"

linked and listed

the unnecesary bits? gone. reduced to atoms
This updates the rust-version file to 969b803.
@rust-bors rust-bors Bot removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 14, 2026
@rust-bors

rust-bors Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

💔 Test for cc0f289 failed: CI. Failed job:

@jhpratt

jhpratt commented Aug 14, 2026

Copy link
Copy Markdown
Member Author

No apparent cause.

@bors retry

@bors try jobs=dist-i686-mingw

@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 Aug 14, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Aug 14, 2026
Rollup of 23 pull requests


try-job: dist-i686-mingw
@rust-bors

rust-bors Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: b2700aa (b2700aa63b503bc8ce0bcd7c6da9a4b59f08dc46)
Base parent: 93c9086 (93c9086fdd5b80d286480a19ac047746ecc5fa1f)

@rust-bors

This comment has been minimized.

@rust-bors rust-bors Bot added merged-by-bors This PR was explicitly merged by bors. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 14, 2026
@rust-bors

rust-bors Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

☀️ Test successful - CI
Approved by: jhpratt
Duration: 3h 5m 37s
Pushing 059bf4a to main...

@github-actions

Copy link
Copy Markdown
Contributor
What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 93c9086 (parent) -> 059bf4a (this PR)

Test differences

Show 2493 test diffs

Stage 1

  • [ui] tests/ui/allocator/156920-allocator-clone.rs: [missing] -> pass (J0)
  • [ui] tests/ui/allocator/157089-box-pin-in.rs: [missing] -> pass (J0)
  • [ui] tests/ui/allocator/159445-unsize-pin-box.rs: [missing] -> pass (J0)
  • [ui] tests/ui/const-generics/mgca/braced-const-infer-in-body.rs: [missing] -> pass (J0)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#full-debuginfo: [missing] -> pass (J0)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#no-debuginfo: [missing] -> pass (J0)
  • [ui] tests/ui/mut-restriction/mut-restriction-ctor-value.rs: [missing] -> pass (J0)
  • [ui] tests/ui/offload/offload_macro.rs: [missing] -> pass (J0)
  • [ui] tests/ui/rfcs/rfc-2008-non-exhaustive/shadowed-non-exhaustive.rs: [missing] -> pass (J0)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-attribute-riscv.rs: pass -> [missing] (J0)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-flag-enable-riscv.rs: pass -> [missing] (J0)
  • [ui] tests/ui/try-block/invalid-label-suggestion-issue-160987.rs: [missing] -> pass (J0)
  • [codegen] tests/codegen-llvm/complex-abi.rs#I686: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WIN32_GNU: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WIN32_MSVC: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WINDOWS_GNU: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WINDOWS_MSVC: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/complex-abi.rs#X86_64: [missing] -> pass (J1)
  • [codegen] tests/codegen-llvm/cstr-nonempty-no-bounds-check.rs: [missing] -> pass (J1)
  • arc::issue_155746_make_mut_panic_safety: pass -> [missing] (J1)
  • [ui (polonius)] tests/ui/allocator/156920-allocator-clone.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/allocator/157089-box-pin-in.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/allocator/159445-unsize-pin-box.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/const-generics/mgca/braced-const-infer-in-body.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/layout/size-of-val-raw-too-big-64.rs#full-debuginfo: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/layout/size-of-val-raw-too-big-64.rs#no-debuginfo: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/mut-restriction/mut-restriction-ctor-value.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/offload/offload_macro.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/rfcs/rfc-2008-non-exhaustive/shadowed-non-exhaustive.rs: [missing] -> pass (J5)
  • [ui (polonius)] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-attribute-riscv.rs: pass -> [missing] (J5)
  • [ui (polonius)] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-flag-enable-riscv.rs: pass -> [missing] (J5)
  • [ui (polonius)] tests/ui/try-block/invalid-label-suggestion-issue-160987.rs: [missing] -> pass (J5)
  • [rustdoc-html] tests/rustdoc-html/fake-items-doc-private-items.rs: [missing] -> pass (J12)
  • [rustdoc-html] tests/rustdoc-html/intra-doc/enum-variant-field-title.rs: [missing] -> pass (J12)
  • [codegen] tests/codegen-llvm/const-vector.rs#OPT0: pass -> ignore (ignored when the LLVM version 21.1.2 is older than 22.0.0) (J15)

Stage 2

  • num::floats::clamp_max_is_nan::test_f128: [missing] -> pass (J2)
  • num::floats::clamp_min_greater_than_max::test_f128: [missing] -> pass (J2)
  • num::floats::clamp_min_is_nan::test_f128: [missing] -> pass (J2)
  • num::floats::from::test_f128: [missing] -> pass (J2)
  • num::floats::from_u16_i16::test_f128: [missing] -> pass (J2)
  • num::floats::from_u32_i32::test_f128: [missing] -> pass (J2)
  • num::floats::infinity::test_f128: [missing] -> pass (J2)
  • num::floats::is_finite::test_f128: [missing] -> pass (J2)
  • num::floats::is_infinite::test_f128: [missing] -> pass (J2)
  • num::floats::is_nan::test_f128: [missing] -> pass (J2)
  • num::floats::is_normal::test_f128: [missing] -> pass (J2)
  • num::floats::is_sign_negative::test_f128: [missing] -> pass (J2)
  • num::floats::is_sign_positive::test_f128: [missing] -> pass (J2)
  • num::floats::max_exact_integer_constant::test_f128: [missing] -> pass (J2)
  • num::floats::min_exact_integer_constant::test_f128: [missing] -> pass (J2)
  • num::floats::mul_add::test_f128: [missing] -> pass (J2)
  • num::floats::nan::test_f128: [missing] -> pass (J2)
  • num::floats::neg_infinity::test_f128: [missing] -> pass (J2)
  • num::floats::neg_zero::test_f128: [missing] -> pass (J2)
  • num::floats::next_down::test_f128: [missing] -> pass (J2)
  • num::floats::next_up::test_f128: [missing] -> pass (J2)
  • num::floats::num::test_f128: [missing] -> pass (J2)
  • num::floats::one::test_f128: [missing] -> pass (J2)
  • num::floats::to_algebraic::test_f128: [missing] -> pass (J2)
  • num::floats::to_bits_conv::test_f128: [missing] -> pass (J2)
  • num::floats::to_degrees::test_f128: [missing] -> pass (J2)
  • num::floats::to_radians::test_f128: [missing] -> pass (J2)
  • num::floats::zero::test_f128: [missing] -> pass (J2)
  • [ui] tests/ui/allocator/156920-allocator-clone.rs: [missing] -> pass (J3)
  • [ui] tests/ui/allocator/157089-box-pin-in.rs: [missing] -> pass (J3)
  • [ui] tests/ui/allocator/159445-unsize-pin-box.rs: [missing] -> pass (J3)
  • [ui] tests/ui/const-generics/mgca/braced-const-infer-in-body.rs: [missing] -> pass (J3)
  • [ui] tests/ui/mut-restriction/mut-restriction-ctor-value.rs: [missing] -> pass (J3)
  • [ui] tests/ui/offload/offload_macro.rs: [missing] -> pass (J3)
  • [ui] tests/ui/rfcs/rfc-2008-non-exhaustive/shadowed-non-exhaustive.rs: [missing] -> pass (J3)
  • [ui] tests/ui/try-block/invalid-label-suggestion-issue-160987.rs: [missing] -> pass (J3)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#full-debuginfo: [missing] -> ignore (gcc backend is marked as ignore) (J4)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-attribute-riscv.rs: ignore (gcc backend is marked as ignore) -> [missing] (J4)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-flag-enable-riscv.rs: ignore (gcc backend is marked as ignore) -> [missing] (J4)
  • [codegen] tests/codegen-llvm/complex-abi.rs#I686: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WIN32_GNU: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WIN32_MSVC: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WINDOWS_GNU: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/complex-abi.rs#WINDOWS_MSVC: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/complex-abi.rs#X86_64: [missing] -> pass (J6)
  • [codegen] tests/codegen-llvm/cstr-nonempty-no-bounds-check.rs: [missing] -> pass (J6)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#full-debuginfo: [missing] -> pass (J7)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-attribute-riscv.rs: pass -> [missing] (J8)
  • [ui] tests/ui/target-feature/cfg-stable-toggle-unstable-target-feature-flag-enable-riscv.rs: pass -> [missing] (J8)
  • arc::issue_155746_make_mut_panic_safety: pass -> [missing] (J9)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#full-debuginfo: [missing] -> ignore (only executed when the pointer width is 64bit (Layout computation rejects this layout for different reasons on 32-bit.)) (J10)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#no-debuginfo: [missing] -> ignore (only executed when the pointer width is 64bit (Layout computation rejects this layout for different reasons on 32-bit.)) (J10)
  • [codegen] tests/codegen-llvm/const-vector.rs#OPT0: pass -> ignore (ignored when the LLVM version 21.1.2 is older than 22.0.0) (J11)
  • [ui] tests/ui/layout/size-of-val-raw-too-big-64.rs#no-debuginfo: [missing] -> pass (J13)
  • [rustdoc-html] tests/rustdoc-html/fake-items-doc-private-items.rs: [missing] -> pass (J14)
  • [rustdoc-html] tests/rustdoc-html/intra-doc/enum-variant-field-title.rs: [missing] -> pass (J14)

Additionally, 2402 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 059bf4a660ddea5bd8302ecdd4f7e40dd7a04313 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. x86_64-gnu-stable: 1h 39m -> 2h 22m (+42.3%)
  2. armhf-gnu: 1h 3m -> 1h 28m (+40.2%)
  3. dist-android: 21m 17s -> 29m 46s (+39.8%)
  4. x86_64-mingw-2: 1h 58m -> 2h 42m (+37.2%)
  5. test-various: 1h 25m -> 1h 54m (+34.7%)
  6. dist-powerpc64le-linux-musl: 1h 34m -> 1h 4m (-32.0%)
  7. dist-apple-various: 2h -> 1h 26m (-28.0%)
  8. pr-check-1: 21m 48s -> 27m 49s (+27.6%)
  9. x86_64-gnu-distcheck: 1h 42m -> 2h 9m (+26.1%)
  10. x86_64-msvc-ext3: 1h 32m -> 1h 8m (-25.9%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@jhpratt
jhpratt deleted the rollup-sSE7Oua branch August 14, 2026 10:58
@rust-timer

Copy link
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#157428 allocator: refactor for stabilisation 364c9dea926885d60daef4bf1a15fa03efa35a84 (link)
#158918 x86_64-win: Enable f128 on LLVM 23+ 8c7a065d15ac5e77f1bb8960e77b8d18b51fd27b (link)
#160077 Don't compute FnAbi for LLVM intrinsics a96bde1411c3b0fe68417c04e85624f33b645516 (link)
#160288 rustdoc: use anonymous constant for primitives/keywords/att… 77cb04ee49e4f29833262112d5abf705c96faa98 (link)
#160440 Couple of misc improvements to the unwind infrastructure b2a467ba9b8a2ec219b3ead03c19a4195c8b5778 (link)
#160896 tidy: Update Python version requirements to 3.11 423f08dd6eb277453ac6708a68de53990b3d1d8b (link)
#160972 std: map ERROR_NEGATIVE_SEEK to ErrorKind::InvalidInput on … 1a9a739704cb30c97472acd98586d5d9d3ef7a42 (link)
#160984 Fix ICE on { _ } const args in bodies by tracking const-onl… 8e49f1a863cc6f9382c8023dca2a08ec1ca43134 (link)
#161036 Use with_types_for_suggestion! in write_struct_like() 3e34267d92d3cba2d82ec9e737d0cbd173e1a6c0 (link)
#161037 std: don't clean up the main thread's altstack 23d00e24938949d30bf435c52f4427efc3fac41c (link)
#161040 Optimize CStr backing slice bounds checks 98b932e1db6ca3ab16e240699972c62e2f249660 (link)
#161065 core: Fix a typo in funnel shift documentation ba00734c91319ccc411c5ddc30cb51319a41bb11 (link)
#158885 Add core::num::Complex 357ddcfc8c07a9f1477e52ebef230ca10ad391dd (link)
#160928 check mut-restriction when tuple constructor is used as a… 208d24a320ec6d99f4558b62a5f8124c6734c421 (link)
#160969 give layout errors from size_of_val and align_of_val a … 691624e8f8d460bfd32f519683ebc8f886dd41ea (link)
#161002 disallow #[cold] on extern "custom" functions ea2d42c432f8a891dcea27c9feb0f2d1686fdf5c (link)
#161016 Fix invalid suggestion from try unlabled block d350a8df75dcc6c0b4ec4987a00f6bbb375539bc (link)
#161020 io: Use NonNull for all Custom API related to Box, up… c17ff70b50218b23e281a32009a94aec4fbccd62 (link)
#161044 rustc-dev-guide subtree update f245c4aba2ab57753aab16c8fb2f425318283baa (link)
#161046 Enable unrolling feature of bors b315a4d4f9a6268d6be0e3f907e5c7b9a0cbd589 (link)
#161054 rustdoc: Fix link title attribute value when field of enum … a9835c8ff632ab6114114b53c192e6305c7693f1 (link)
#161055 offload! function-like macro ecc34d52073c3ba6269a89bd6b781c8da279451b (link)
#161064 Revert "riscv: promote d, e, and f target_features to CfgSt… 4cbee7b9cd8c0b01bd5c18e63f352791e2448fb3 (link)

previous master: 93c9086fdd

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (059bf4a): comparison URL.

Overall result: ❌✅ regressions and improvements - please read:

Our benchmarks found a performance regression caused by this PR.
This might be an actual regression, but it can also be just noise.

Next Steps:

  • If the regression was expected or you think it can be justified,
    please write a comment with sufficient written justification, and add
    @rustbot label: +perf-regression-triaged to it, to mark the regression as triaged.
  • If you think that you know of a way to resolve the regression, try to create
    a new PR with a fix for the regression.
  • If you do not understand the regression or you think that it is just noise,
    you can ask the @rust-lang/wg-compiler-performance working group for help (members of this group
    were already notified of this PR).

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
0.5% [0.2%, 1.5%] 19
Regressions ❌
(secondary)
0.8% [0.0%, 1.7%] 51
Improvements ✅
(primary)
-0.2% [-0.2%, -0.1%] 2
Improvements ✅
(secondary)
-0.8% [-1.6%, -0.6%] 6
All ❌✅ (primary) 0.5% [-0.2%, 1.5%] 21

Max RSS (memory usage)

Results (primary -0.2%, secondary -6.2%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
1.3% [1.3%, 1.3%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.9% [-1.4%, -0.4%] 2
Improvements ✅
(secondary)
-6.2% [-6.2%, -6.2%] 1
All ❌✅ (primary) -0.2% [-1.4%, 1.3%] 3

Cycles

Results (primary -0.8%, secondary -2.1%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
2.5% [2.5%, 2.5%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-4.1% [-4.1%, -4.1%] 1
Improvements ✅
(secondary)
-2.1% [-2.2%, -2.0%] 2
All ❌✅ (primary) -0.8% [-4.1%, 2.5%] 2

Binary size

Results (primary -0.7%, secondary -1.5%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
0.2% [0.2%, 0.2%] 3
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 3
Improvements ✅
(primary)
-1.1% [-1.9%, -0.0%] 7
Improvements ✅
(secondary)
-1.6% [-2.2%, -0.0%] 50
All ❌✅ (primary) -0.7% [-1.9%, 0.2%] 10

Bootstrap: 455.615s -> 456.237s (0.14%)
Artifact size: 396.47 MiB -> 396.49 MiB (0.00%)

@rustbot rustbot added the perf-regression Performance regression. label Aug 14, 2026
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-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-run-make Area: port run-make Makefiles to rmake.rs A-rustc-dev-guide Area: rustc-dev-guide A-rustdoc-json Area: Rustdoc JSON backend A-test-infra-minicore Area: `minicore` test auxiliary and `//@ add-core-stubs` A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. O-unix Operating system: Unix-like O-windows Operating system: Windows perf-regression Performance regression. rollup A PR which is a rollup T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.