Skip to content

Rollup of 7 pull requests #138831

New issue

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

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

Already on GitHub? # to your account

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
Collaborator

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
Collaborator

bors commented Mar 22, 2025

⌛ Testing commit 2644500 with merge b48576b...

@bors
Copy link
Collaborator

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%)

github-actions bot pushed a commit to model-checking/verify-rust-std that referenced this pull request Apr 2, 2025
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#138609 (Add stack overflow handler for cygwin)
 - rust-lang#138639 (Clean UI tests 2 of n)
 - rust-lang#138773 (catch_unwind intrinsic: document return value)
 - rust-lang#138782 (test(ui): add tuple-struct-where-clause-suggestion ui test for rust-lang#91520)
 - rust-lang#138794 (expand: Do not report `cfg_attr` traces on macros as unused attributes)
 - rust-lang#138801 (triagebot: add autolabel rules for D-* and L-*)
 - rust-lang#138804 (Allow inlining for `Atomic*::from_ptr`)

r? `@ghost`
`@rustbot` modify labels: rollup
# for free to join this conversation on GitHub. Already have an account? # 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.