Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 7 pull requests #138831

Merged
merged 14 commits into from
Mar 22, 2025
Merged

Rollup of 7 pull requests #138831

merged 14 commits into from
Mar 22, 2025

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

Berrysoft and others added 14 commits March 18, 2025 23:00
Currently this cannot be inlined, which among other things means it
can't be used in `compiler-builtins` [1]. These are trivial functions
that should be inlineable, so add `#[inline]`.

[1]: rust-lang/compiler-builtins#790 (comment)
…joboet

Add stack overflow handler for cygwin

The cygwin runtime handles stack overflow exception and converts it to `SIGSEGV`, but the passed `si_addr` is obtained from `ExceptionInformation[1]` which is actually an undocumented value when stack overflows. Thus I choose to use Windows API directly to register handler, just like how std does on native Windows. The code is basically copied from the Windows one.

Ref:
* https://github.com/cygwin/cygwin/blob/5ec497dc80bcb7ad78cc07bb919b2624b361f017/winsup/cygwin/exceptions.cc#L822-L823
* https://learn.microsoft.com/zh-cn/windows/win32/api/winnt/ns-winnt-exception_record
… r=jieyouxu

Clean UI tests 2 of n

Modified 4 tests in tests/ui. Cleaned 3 and deleted one.

I have a final commit changing the values in `src/tools/tidy/src/ui_tests.rs`.
I wasn't sure if it was best practice to change this value as you go along or
once at the end. I can rebase to something that incrementally changes the value
in the "cleaned" commits if that is preferred.

Related Issues:
rust-lang#73494
rust-lang#133895

r? jieyouxu
catch_unwind intrinsic: document return value

Seems like we forgot to document this. The comment reflects what Miri does, which seems to also match what codegen does at least [in `codegen_gnu_try`](https://github.com/rust-lang/rust/blob/b754ef727ca87050a8d758fc44f524cfb4310eff/compiler/rustc_codegen_llvm/src/intrinsic.rs#L953-L964).
…mpiler-errors

test(ui): add tuple-struct-where-clause-suggestion ui test for rust-lang#91520

Fixes rust-lang#91520

I tried to also make it a .fixed test, but I failed to accomplish that.
That's because of the 'consider annotating `Inner<T>` with `#[derive(Clone)]`' suggestion does not compile (conflicting Clone implementations), and I can't isolate them with `rustfix-only-machine-applicable` as both suggestions are not marked as `MachineApplicable`.
Instead I just test that the where clause suggestion is applied to the correct line.
expand: Do not report `cfg_attr` traces on macros as unused attributes

Fixes rust-lang#138779
…38565, r=Noratrieb

triagebot: add autolabel rules for D-* and L-*

fixes rust-lang#138565

r? `@Noratrieb`
…=RalfJung

Allow inlining for `Atomic*::from_ptr`

Currently this cannot be inlined, which among other things means it can't be used in `compiler-builtins` [1]. These are trivial functions that should be inlineable, so add `#[inline]`.

[1]: rust-lang/compiler-builtins#790 (comment)
@rustbot rustbot added A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-tidy Area: The tidy tool O-unix Operating system: Unix-like 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-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Mar 22, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=3

@bors
Copy link
Contributor

bors commented Mar 22, 2025

📌 Commit 2644500 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 Mar 22, 2025
@matthiaskrgr
Copy link
Member Author

@bors p=5

@bors
Copy link
Contributor

bors commented Mar 22, 2025

⌛ Testing commit 2644500 with merge b48576b...

@bors
Copy link
Contributor

bors commented Mar 22, 2025

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

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Mar 22, 2025
@bors bors merged commit b48576b into rust-lang:master Mar 22, 2025
7 checks passed
@rustbot rustbot added this to the 1.87.0 milestone Mar 22, 2025
Copy link

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 d93f678 (parent) -> b48576b (this PR)

Test differences

Show 1426 test diffs
  • [ui] tests/ui/coercion/struct-coerce-vec-to-slice.rs (stage 1): [missing] -> pass (J0)
  • [ui] tests/ui/coercion/struct-literal-field-type-coercion-to-expected-type.rs (stage 1): [missing] -> pass (J0)
  • [ui] tests/ui/issues/issue-28777.rs (stage 1): pass -> [missing] (J0)
  • [ui] tests/ui/issues/issue-31260.rs (stage 1): pass -> [missing] (J0)
  • [ui] tests/ui/issues/issue-9382.rs (stage 1): pass -> [missing] (J0)
  • [ui] tests/ui/parser/operator-precedence-braces-exprs.rs (stage 1): [missing] -> pass (J0)
  • [ui] tests/ui/suggestions/tuple-struct-where-clause-suggestion-91520.rs (stage 1): [missing] -> pass (J0)
  • [ui] tests/ui/coercion/struct-coerce-vec-to-slice.rs (stage 2): [missing] -> pass (J1)
  • [ui] tests/ui/coercion/struct-literal-field-type-coercion-to-expected-type.rs (stage 2): [missing] -> pass (J1)
  • [ui] tests/ui/issues/issue-28777.rs (stage 2): pass -> [missing] (J1)
  • [ui] tests/ui/issues/issue-31260.rs (stage 2): pass -> [missing] (J1)
  • [ui] tests/ui/issues/issue-9382.rs (stage 2): pass -> [missing] (J1)
  • [ui] tests/ui/parser/operator-precedence-braces-exprs.rs (stage 2): [missing] -> pass (J1)
  • [ui] tests/ui/suggestions/tuple-struct-where-clause-suggestion-91520.rs (stage 2): [missing] -> pass (J1)

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

Job group index

  • J0: x86_64-gnu-llvm-18-3, x86_64-gnu-llvm-19-3
  • J1: aarch64-apple, aarch64-gnu, arm-android, armhf-gnu, dist-i586-gnu-i586-i686-musl, i686-gnu-1, i686-gnu-nopt-1, i686-msvc-1, test-various, x86_64-apple-2, x86_64-gnu, x86_64-gnu-llvm-18-1, x86_64-gnu-llvm-18-2, x86_64-gnu-llvm-19-1, x86_64-gnu-llvm-19-2, x86_64-gnu-nopt, x86_64-gnu-stable, x86_64-mingw-1, x86_64-msvc-1

@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#138609 Add stack overflow handler for cygwin f21dba3c55891c8d3bc3e87b39a697ec147cb2a3 (link)
#138639 Clean UI tests 2 of n a7d49a040c564068afce96e911f71fe5be21b86f (link)
#138773 catch_unwind intrinsic: document return value 80934c6c54fe179b5223f8456dc33bb7d8ed5f88 (link)
#138782 test(ui): add tuple-struct-where-clause-suggestion ui test … 5265dfbc1de567b92db7d508915897cf7922fe78 (link)
#138794 expand: Do not report cfg_attr traces on macros as unused… 03ca51cb046b624cd1208301317d0acd3eb9199c (link)
#138801 triagebot: add autolabel rules for D-* and L-* 462982ed342ea55c3d6802a61c301f5bee313784 (link)
#138804 Allow inlining for Atomic*::from_ptr 6a4616097ccd900f9f05a793791820492abe5466 (link)

previous master: d93f678fa5

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
Collaborator

Finished benchmarking commit (b48576b): 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.3% [-0.3%, -0.2%] 2
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary 2.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)
2.3% [2.0%, 2.7%] 2
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 2.3% [2.0%, 2.7%] 2

Cycles

Results (secondary 2.2%)

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)
2.2% [2.2%, 2.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 775.31s -> 775.46s (0.02%)
Artifact size: 365.54 MiB -> 365.52 MiB (-0.00%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. O-unix Operating system: Unix-like 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-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.