Skip to content

Conversation

matthiaskrgr
Copy link
Member

@matthiaskrgr matthiaskrgr commented Jun 3, 2025

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

jieyouxu and others added 21 commits June 1, 2025 22:47
New Windows Server 2025 images have been released (20250527).
It is only used within cg_llvm.
It is only used within cg_llvm.
…rcote

fix(rust-lang#141141): When expanding `PartialEq`, check equality of scalar types first.

Fixes rust-lang#141141.

Now, `cs_eq` function of `partial_eq.rs` compares [scalar types](https://doc.rust-lang.org/rust-by-example/primitives.html#scalar-types) first.

- Add `is_scalar` field to `FieldInfo`.
- Add `is_scalar` method to `TyKind`.
- Pass `FieldInfo` via `CsFold::Combine` and refactor code relying on it.
- Implement `TryFrom<&str>` and `TryFrom<Symbol>` for FloatTy.
- Implement `TryFrom<&str>` and `TryFrom<Symbol>` for IntTy.
- Implement `TryFrom<&str>` and `TryFrom<Symbol>` for UintTy.
`tests/ui`: A New Order [2/N]

part of rust-lang#133895

r? `@jieyouxu`

let's try this kind of commits, one for each file, commit's name shows what i did, hope this is not harder to review than previous
…527, r=Kobzol

Switch `x86_64-msvc-{1,2}` back to Windows Server 2025 images

New Windows Server 2025 images have been released (**20250527.1.0**). New images appear to not exhibit the lack-of-disk-space problem as tracked by rust-lang#141022, and the new runner image's storage capacity appears to be configured correctly.

Windows Server 2025 image version **20250527.1.0** release notes: <https://github.com/actions/runner-images/releases/tag/win25%2F20250527.1>.

Resolves rust-lang#141022.
redesign stage 0 std follow-ups

Various follow-ups pointed out on Zulip during post-merge discussions of [redesign stage 0 std rust-lang#119899](rust-lang#119899).

r? `@jieyouxu`

Fixes rust-lang#141902.
Fixes rust-lang#141905.

cc `@jyn514`
…thercote

Deconstruct values in the THIR visitor

Hi! I am a beginner rust developer.
I'm trying to solve your problem rust-lang#141849
I see that 2 files need to be corrected, so I’m starting with a simpler step,  `compiler/rustc_middle/src/thir/visit.rs`

r? `@krikera`
Update books

## rust-lang/book

4 commits in 230c68bc1e08f5f3228384a28cc228c81dfbd10d..634724ea85ebb08a542970bf8871ac8b0f77fd15
2025-05-29 13:16:14 UTC to 2025-05-22 21:35:03 UTC

- Chapter 10 from tech review (rust-lang/book#4379)
- Chapter 9 from tech review (rust-lang/book#4377)
- Chapter 8 from tech review (rust-lang/book#4378)
- Chapter 7 from tech review (rust-lang/book#4374)

## rust-embedded/book

3 commits in 0b8219ac23a3e09464e4e0166c768cf1c4bba0d5..10fa1e084365f23f24ad0000df541923385b73b6
2025-05-27 18:37:30 UTC to 2025-05-27 18:26:36 UTC

- portability: add reference to embedded-hal docs (rust-embedded/book#391)
- remove the unused and deprecated `multilingual` field from `book.toml` (rust-embedded/book#388)
- Ci upgrade 20250522 (rust-embedded/book#393)

## rust-lang/nomicon

4 commits in c76a20f0d987145dcedf05c5c073ce8d91f2e82a..8b61acfaea822e9ac926190bc8f15791c33336e8
2025-05-26 10:16:09 UTC to 2025-05-23 15:03:00 UTC

- Use inline const expression in unchecked-uninit.md (rust-lang/nomicon#492)
- Fix code sample output in unchecked-uninit.md (rust-lang/nomicon#491)
- Use consistent type parameters in subtyping.md (rust-lang/nomicon#493)
- Fix typo in atomics.md (rust-lang/nomicon#494)

## rust-lang/reference

1 commits in 118fd1f1f0854f50e3ae1fe4b64862aad23009ca..8e0f593a30f3b56ddb0908fb7ab9249974e08738
2025-05-31 20:12:39 UTC to 2025-05-31 20:12:39 UTC

- Minor fixes to `$crate` behavior (rust-lang/reference#1816)

## rust-lang/rust-by-example

4 commits in c9d151f9147c4808c77f0375ba3fa5d54443cb9e..21f4e32b8b40d36453fae16ec07ad4b857c445b6
2025-05-29 12:45:08 UTC to 2025-05-29 12:44:23 UTC

- Update book.toml rename `author` field to `authors` (rust-lang/rust-by-example#1917)
- Add example to comment.md to teach how to toggle a whole code block using block comments (rust-lang/rust-by-example#1919)
- The example is not meant to be compiled with out passing arguments. (rust-lang/rust-by-example#1930)
- added a shorthand for the #[should_panic(expected = "msg") (rust-lang/rust-by-example#1931)
…nethercote

Deconstruct values in the THIR visitor

I continue to add deconstruction for task rust-lang#141849
The changes concern a more complex part of the task `compiler/rustc_hir/src/intravisit.rs`
r? `@nnethercote`
…-obk

Remove two trait methods from cg_ssa

They are only called by cg_llvm.
@rustbot rustbot added 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 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-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. rollup A PR which is a rollup labels Jun 3, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented Jun 3, 2025

📌 Commit 3772a16 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors 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 Jun 3, 2025
@bors
Copy link
Collaborator

bors commented Jun 3, 2025

⌛ Testing commit 3772a16 with merge a124fb3...

@bors
Copy link
Collaborator

bors commented Jun 3, 2025

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing a124fb3 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jun 3, 2025
@bors bors merged commit a124fb3 into rust-lang:master Jun 3, 2025
11 checks passed
@rustbot rustbot added this to the 1.89.0 milestone Jun 3, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#141724 fix(#141141): When expanding PartialEq, check equality of… 9db891a98f24d8c86bd69bae6a44b301ffbe06dd (link)
#141833 tests/ui: A New Order [2/N] 0f84a303f81b979e970787a3fa663a1856ec5050 (link)
#141861 Switch x86_64-msvc-{1,2} back to Windows Server 2025 imag… 6a963ddf078cce2019fddff4975296b800a764dd (link)
#141914 redesign stage 0 std follow-ups 7bea91f11a7f6035021668e02ccf51ccb4603310 (link)
#141918 Deconstruct values in the THIR visitor 3b000b341ec312cd0b42540f15d0925e8bf53d43 (link)
#141923 Update books d5bab6be817546aa55567c63298fe33a7b149d4d (link)
#141931 Deconstruct values in the THIR visitor cf6531618c7c364d8645d043b2199c6ec01f1260 (link)
#141956 Remove two trait methods from cg_ssa b421810c295b1089a77820f25d82bae8ee144b7d (link)

previous master: aae43c4532

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

Copy link
Contributor

github-actions bot commented Jun 3, 2025

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 aae43c4 (parent) -> a124fb3 (this PR)

Test differences

Show 189 test diffs

Stage 1

  • [ui] tests/ui/bind-by-move.rs: pass -> [missing] (J2)
  • [ui] tests/ui/bitwise.rs: pass -> [missing] (J2)
  • [ui] tests/ui/bounds-lifetime.rs: pass -> [missing] (J2)
  • [ui] tests/ui/pattern/pattern-match-arc-move.rs: [missing] -> pass (J2)

Stage 2

  • [debuginfo-cdb] tests/debuginfo/associated-types.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/basic-types-globals-metadata.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/basic-types-globals.rs#lto: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/basic-types-globals.rs#no-lto: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/basic-types-metadata.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/borrowed-basic.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/borrowed-c-style-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/borrowed-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/borrowed-tuple.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/boxed-struct.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/c-style-enum-in-composite.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/c-style-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/captured-fields-2.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/closure-in-generic-function.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/collapse-debuginfo-in-non-collapse-macro.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/collapse-debuginfo-static-external.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/collapse-debuginfo-with-attr-flag.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/collapse-debuginfo-with-yes-flag.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/constant-in-match-pattern.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/constant-ordering-prologue.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/coroutine-closure.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/coroutine-locals.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/destructured-fn-argument.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/destructured-for-loop-variable.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/destructured-local.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/dummy_span.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/duration-type.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/empty-string.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/enum-thinlto.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/extern-c-fn.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/fn_ptr.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/function-arguments.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/function-call.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/function-names.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/function-prologue-stepping-regular.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/generic-enum-with-different-disr-sizes.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/generic-function.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/generic-functions-nested.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/generic-static-method-on-struct-and-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/generic-struct-style-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/include_string.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/issue-12886.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/issue-13213.rs: ignore (ignored when the debugger is cdb (Fails with exit code 0xc0000135 ("the application failed to initialize properly"))) -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/issue-14411.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/issue-22656.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/issue-57822.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-if-let.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-if.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-parameterless-closure.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-unconditional-loop.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-unique-closure.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/lexical-scope-in-while.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/method-on-generic-struct.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/msvc-pretty-enums.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/multi-byte-chars.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/multi-cgu.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/multiline-calls.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/multiple-functions-equal-var-names.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/multiple-functions.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/name-shadowing-and-scope-nesting.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/no_mangle-info.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/numeric-types.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/packed-struct.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/path.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/pretty-huge-vec.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/pretty-std-collections-hash.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/pretty-std.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/recursive-type-with-gat.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/rwlock-read.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/rwlock-write.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/should-fail.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/simd.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/simple-tuple.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/skip_second_statement_collapse.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/static-method-on-struct-and-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/strings-and-strs.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/struct-in-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/struct-style-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/thread-names.rs#macos: ignore (only executed when the operating system is macos) -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/thread-names.rs#win: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/trait-pointers.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/tuple-in-struct.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/type-names.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/unique-enum.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/unit-type.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/unreachable-locals.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/var-captured-in-nested-closure.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/vec-slices.rs: pass -> [missing] (J0)
  • [debuginfo-cdb] tests/debuginfo/vec.rs: pass -> [missing] (J0)
  • [ui] tests/ui/autoref-autoderef/autoderef-vec-to-slice-by-value.rs: [missing] -> pass (J1)
  • [ui] tests/ui/bind-by-move.rs: pass -> [missing] (J1)
  • [ui] tests/ui/bitwise.rs: pass -> [missing] (J1)
  • [ui] tests/ui/bogus-tag.rs: pass -> [missing] (J1)
  • [ui] tests/ui/bounds-lifetime.rs: pass -> [missing] (J1)
  • [ui] tests/ui/higher-ranked/higher-ranked-invalid-bounds.rs: [missing] -> pass (J1)
  • [ui] tests/ui/numbers-arithmetic/bitwise-ops-platform.rs: [missing] -> pass (J1)

(and 87 additional test diffs)

Additionally, 2 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 a124fb3cb7291d75872934f411d81fe298379ace --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-apple-1: 5946.8s -> 9194.8s (54.6%)
  2. dist-aarch64-linux: 7899.3s -> 5443.9s (-31.1%)
  3. x86_64-apple-2: 6338.6s -> 4610.2s (-27.3%)
  4. aarch64-apple: 4664.3s -> 5625.5s (20.6%)
  5. dist-apple-various: 8351.2s -> 6768.4s (-19.0%)
  6. dist-x86_64-apple: 10397.8s -> 8711.8s (-16.2%)
  7. mingw-check-2: 1924.4s -> 2231.4s (16.0%)
  8. i686-gnu-1: 9146.4s -> 8060.1s (-11.9%)
  9. mingw-check-1: 1796.4s -> 1956.1s (8.9%)
  10. dist-x86_64-msvc: 6505.8s -> 6013.0s (-7.6%)
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 (a124fb3): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

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

Max RSS (memory usage)

Results (primary -0.1%, secondary -0.3%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
5.4% [5.4%, 5.4%] 1
Regressions ❌
(secondary)
1.8% [0.7%, 2.8%] 2
Improvements ✅
(primary)
-2.9% [-3.9%, -1.8%] 2
Improvements ✅
(secondary)
-4.3% [-4.3%, -4.3%] 1
All ❌✅ (primary) -0.1% [-3.9%, 5.4%] 3

Cycles

Results (secondary -2.5%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

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

Binary size

Results (primary -0.0%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

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

Bootstrap: 745.073s -> 745.424s (0.05%)
Artifact size: 372.30 MiB -> 372.33 MiB (0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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 merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants