Skip to content

Rollup of 9 pull requests#152639

Merged
rust-bors[bot] merged 31 commits intorust-lang:mainfrom
jhpratt:rollup-sIUYGho
Feb 15, 2026
Merged

Rollup of 9 pull requests#152639
rust-bors[bot] merged 31 commits intorust-lang:mainfrom
jhpratt:rollup-sIUYGho

Conversation

@jhpratt
Copy link
Member

@jhpratt jhpratt commented Feb 15, 2026

Successful merges:

r? @ghost

Create a similar rollup

cuviper and others added 30 commits February 5, 2026 13:41
Co-authored-by: lcnr <rust@lcnr.de>
Unix Domain Socket support has only been added to Windows since Windows
10 Insider Preview Build 17063. Thus, it has no chance of ever being
supported under Windows 7, making current tests fail. This therefore
adds the necessary in order to make the tests dynamically skip when run
under Windows 7, 8, and early 10, as it does not trigger linker errors.

Signed-off-by: Paul Mabileau <paul.mabileau@harfanglab.fr>
…mGCA

Using a struct constructor (DefKind::Ctor(Struct, Const)) as an array
repeat count with `#![feature(min_generic_const_args)]` used to trigger
an ICE in const alias normalization. Add a regression test to ensure
the compiler produces a proper type error instead of panicking.
…, r=lcnr

diagnostics: add note when param-env shadows global impl

 This PR adds a diagnostics note when param-env shadows global impl as discussed in rust-lang#149910

It adds a note explaining that the definition is hidden by the generic bound.

r?lcnr
…imulacrum

implement `carryless_mul`

tracking issue: rust-lang#152080
ACP: rust-lang/libs-team#738

This defers to LLVM's `llvm.clmul` when available, and otherwise falls back to a method from the `polyval` crate ([link](https://github.com/RustCrypto/universal-hashes/blob/master/polyval/src/field_element/soft/soft64.rs)).

Some things are missing, which I think we can defer:

- the ACP has some discussion about additional methods, but I'm not sure exactly what is wanted or how to implement it efficiently
- the SIMD intrinsic is not yet `const` (I think I ran into a bootstrapping issue). That is fine for now, I think in `stdarch` we can't really use this intrinsic at the moment, we'd only want the scalar version to replace some riscv intrinsics.
- the SIMD intrinsic is not implemented for the gcc and cranelift backends. That should be reasonably straightforward once we have a const eval implementation though.
…gnostic, r=Mark-Simulacrum

Improve write! and writeln! error when called without destination

Fixes rust-lang#152493

Adds catch-all arms to `write!` and `writeln!` macros so that calling them without a destination (e.g., `write!("S")` instead of `write!(f, "S")`) gives a clear error instead of the cryptic "unexpected end of macro invocation" pointing at macro internals.

r? @estebank
… r=Mark-Simulacrum

Test(lib/win/net): Skip UDS tests when under Win7

Unix Domain Socket support has only been added to Windows since Windows 10 Insider Preview Build 17063. Thus, it has no chance of ever being supported under Windows 7, making current tests fail. This therefore adds the necessary in order to make the tests dynamically skip when run under Windows 7, 8, and early 10, as it does not trigger linker errors.

cc rust-lang#150487 @roblabla

@rustbot label T-libs A-io O-windows-7
…crum

ci: Lock cross toolchain version and update docs

This PR locks the cross-toolchain component version to avoid unexpected changes when bumping crosstool-ng, and updates the toolchain configuration in the docs to match the actual setup.

try-job: dist-arm-linux-musl
try-job: dist-loongarch64-linux
try-job: dist-loongarch64-musl
try-job: dist-powerpc64-linux-musl
try-job: dist-powerpc64le-linux-gnu
try-job: dist-powerpc64le-linux-musl
…k-Simulacrum

Include `library/stdarch` for `CURRENT_RUSTC_VERSION` updates

Our tool `replace-version-placeholder` uses the `tidy` file walker and its
directory filter, but that skips `library/stdarch` which we do need for public
stability markers. This PR adds a local filter function that explicitly allows
that path.

The commit for 1.94 `stdarch` updates is coming from beta rust-lang#152187.
…ctor-array-len, r=BoxyUwU

Add regression test for rust-lang#141738

Closes rust-lang#141738

- Add a regression test for rust-lang#141738
- Using a struct constructor (`DefKind::Ctor(Struct, Const)`) as an array repeat count with `#![feature(min_generic_const_args)]` used to ICE in const alias normalization
- Fixed by rust-lang#150704, which added const constructor support for mGCA. This test covers the **error path** (struct ctor where `usize` is expected), which was not covered by the tests in rust-lang#150704
unwind/wasm: fix compile error by wrapping wasm_throw in unsafe block

This fix rust-std compile error on wasm32-unknown-unknown with panic=unwind because of `#![deny(unsafe_op_in_unsafe_fn)]`
…, r=clubby789

Exchange js_lint message between bless and non-bless

The message `applying suggestions` should be emitted when bless is enabled.
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Feb 15, 2026
@rustbot rustbot added A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool 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-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. labels Feb 15, 2026
@jhpratt
Copy link
Member Author

jhpratt commented Feb 15, 2026

@bors r+ rollup=never p=5

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 15, 2026

📌 Commit 12755aa has been approved by jhpratt

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 Feb 15, 2026
@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 Feb 15, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 15, 2026

☀️ Test successful - CI
Approved by: jhpratt
Duration: 3h 34m 22s
Pushing ce0bf0b to main...

@rust-bors rust-bors bot merged commit ce0bf0b into rust-lang:main Feb 15, 2026
12 checks passed
@rustbot rustbot added this to the 1.95.0 milestone Feb 15, 2026
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#150424 diagnostics: add note when param-env shadows global impl 2cb654d8000806e0739319cfd54210ddc07ffd86 (link)
#152132 implement carryless_mul ae7d87a538d896ecf0638f3af8cf6c2996b7f5d7 (link)
#152188 Include library/stdarch for CURRENT_RUSTC_VERSION updat… fb759df61eb48e4e3a976aeab16e3fcec379b781 (link)
#152402 Add regression test for #141738 a8acc021f1fc3d89e73576b2413df31cc1bc0a21 (link)
#152472 unwind/wasm: fix compile error by wrapping wasm_throw in un… 2d85cf209b02a27a1cda5ae8ecbc448c829b8ad9 (link)
#152508 Improve write! and writeln! error when called without desti… 67f3e84e29730f5400af588fcfe415768d3b004a (link)
#152534 Test(lib/win/net): Skip UDS tests when under Win7 d9af5456a3a91202979d3f03a6150d0c43b571cc (link)
#152578 ci: Lock cross toolchain version and update docs 8698768fa629c06f7e1b1dedaf1f7c53d22f3380 (link)
#152610 Exchange js_lint message between bless and non-bless 654ae8d55ce6270636c58137a60c5813b27837e5 (link)

previous master: 75b9d89c68

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

@github-actions
Copy link
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 75b9d89 (parent) -> ce0bf0b (this PR)

Test differences

Show 4434 test diffs

Stage 1

  • num::carryless_mul::carrying_carryless_mul: [missing] -> pass (J0)
  • num::carryless_mul::carryless_mul_u128: [missing] -> pass (J0)
  • num::carryless_mul::carryless_mul_u16: [missing] -> pass (J0)
  • num::carryless_mul::carryless_mul_u32: [missing] -> pass (J0)
  • num::carryless_mul::carryless_mul_u64: [missing] -> pass (J0)
  • num::carryless_mul::carryless_mul_u8: [missing] -> pass (J0)
  • num::carryless_mul::widening_carryless_mul: [missing] -> pass (J0)
  • num::u128::test_carryless_mul: [missing] -> pass (J0)
  • num::u16::test_carryless_mul: [missing] -> pass (J0)
  • num::u32::test_carryless_mul: [missing] -> pass (J0)
  • num::u64::test_carryless_mul: [missing] -> pass (J0)
  • num::u8::test_carryless_mul: [missing] -> pass (J0)
  • [ui] tests/ui/associated-types/param-env-shadowing-false-positive.rs: [missing] -> pass (J1)
  • [ui] tests/ui/associated-types/param-env-shadowing-gat.rs: [missing] -> pass (J1)
  • [ui] tests/ui/associated-types/param-env-shadowing-issue-149910.rs: [missing] -> pass (J1)
  • [ui] tests/ui/const-generics/mgca/struct-ctor-in-array-len.rs: [missing] -> pass (J1)
  • [ui] tests/ui/macros/write-missing-destination.rs: [missing] -> pass (J1)

Stage 2

  • [ui] tests/ui/associated-types/param-env-shadowing-false-positive.rs: [missing] -> pass (J2)
  • [ui] tests/ui/associated-types/param-env-shadowing-gat.rs: [missing] -> pass (J2)
  • [ui] tests/ui/associated-types/param-env-shadowing-issue-149910.rs: [missing] -> pass (J2)
  • [ui] tests/ui/const-generics/mgca/struct-ctor-in-array-len.rs: [missing] -> pass (J2)
  • [ui] tests/ui/macros/write-missing-destination.rs: [missing] -> pass (J2)
  • num::carryless_mul::carrying_carryless_mul: [missing] -> pass (J3)
  • num::carryless_mul::carryless_mul_u128: [missing] -> pass (J3)
  • num::carryless_mul::carryless_mul_u16: [missing] -> pass (J3)
  • num::carryless_mul::carryless_mul_u32: [missing] -> pass (J3)
  • num::carryless_mul::carryless_mul_u64: [missing] -> pass (J3)
  • num::carryless_mul::carryless_mul_u8: [missing] -> pass (J3)
  • num::carryless_mul::widening_carryless_mul: [missing] -> pass (J3)
  • num::u128::test_carryless_mul: [missing] -> pass (J3)
  • num::u16::test_carryless_mul: [missing] -> pass (J3)
  • num::u32::test_carryless_mul: [missing] -> pass (J3)
  • num::u64::test_carryless_mul: [missing] -> pass (J3)
  • num::u8::test_carryless_mul: [missing] -> pass (J3)

Additionally, 4400 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 ce0bf0b22b646bacf91f73393483f684a44848ca --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. dist-apple-various: 1h 51m -> 3h 12m (+72.3%)
  2. aarch64-apple: 2h 54m -> 3h 26m (+18.6%)
  3. dist-aarch64-apple: 2h 5m -> 1h 46m (-15.5%)
  4. dist-aarch64-llvm-mingw: 1h 39m -> 1h 55m (+15.4%)
  5. x86_64-gnu-llvm-20-3: 1h 47m -> 2h 3m (+14.9%)
  6. aarch64-msvc-1: 1h 55m -> 2h 9m (+12.2%)
  7. x86_64-gnu-llvm-21-3: 1h 58m -> 1h 44m (-12.1%)
  8. x86_64-gnu-distcheck: 2h 25m -> 2h 9m (-11.1%)
  9. aarch64-gnu: 2h 2m -> 2h 15m (+10.4%)
  10. x86_64-gnu-llvm-20-2: 1h 41m -> 1h 31m (-10.3%)
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.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (ce0bf0b): comparison URL.

Overall result: ❌ regressions - no action needed

@rustbot label: -perf-regression

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
Regressions ❌
(secondary)
0.1% [0.1%, 0.2%] 3
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (secondary -8.3%)

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

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-8.3% [-8.3%, -8.3%] 1
All ❌✅ (primary) - - 0

Cycles

Results (primary 0.1%, secondary -0.2%)

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)
3.5% [2.4%, 5.0%] 3
Improvements ✅
(primary)
-2.3% [-2.3%, -2.3%] 1
Improvements ✅
(secondary)
-5.9% [-7.7%, -4.1%] 2
All ❌✅ (primary) 0.1% [-2.3%, 2.5%] 2

Binary size

Results (primary 0.1%, secondary 0.1%)

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

mean range count
Regressions ❌
(primary)
0.1% [0.0%, 0.1%] 26
Regressions ❌
(secondary)
0.1% [0.0%, 0.1%] 20
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.1% [0.0%, 0.1%] 26

Bootstrap: 480.584s -> 479.824s (-0.16%)
Artifact size: 397.92 MiB -> 397.98 MiB (0.02%)

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

Labels

A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. 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-windows Operating system: Windows 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.