Skip to content

Rollup of 13 pull requests#157266

Merged
rust-bors[bot] merged 40 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-EIe7NPQ
Jun 2, 2026
Merged

Rollup of 13 pull requests#157266
rust-bors[bot] merged 40 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-EIe7NPQ

Conversation

@JonathanBrouwer
Copy link
Copy Markdown
Contributor

Successful merges:

r? @ghost

Create a similar rollup

GrigorenkoPV and others added 30 commits May 13, 2026 01:28
As preparation for turning #[panic_handler] from a weak lang item into
an EII.
This is one of the things that made cg_clif not use cg_ssa, IIRC, so let's take the opportunities to avoid it where we can.
…hlin

miri: require (almost) all 1-ZST arguments to be actually passed

We can't ignore *all* of them since the compiler itself relies on non-capturing closure arguments being ignored.

Fixes rust-lang/miri#4993

Cc @folkertdev since it also changes the checks for variadics.
…=jdonszelmann

Check arguments of attributes where no arguments are expected

This PR does the following:
- Add a debug assertion to `rustc_attr_parsing`, to ensure we never forget to check the arguments of a meta item again
- Removes the unused `#[derive(Clone)]` from `ArgParser` as that would break this debug assertion
- **[BREAKING]** Properly check that `#[inline(always(...))]` gets no arguments
- **[BREAKING]** Properly check that `#[instruction_set(arm::a32(...))]` gets no arguments
- **[BREAKING]** Properly check that `#[macro_export(local_inner_macros(...))]` gets no arguments.
  Fixes rust-lang#154977
- **[BREAKING]** Properly check that `#[used(compiler(...))]` gets no arguments.
- Properly check that `#[optimize(size(...))]` gets no arguments.
- Properly check that `#[coverage(on(...))]` gets no arguments.
- Properly check that `#[rustc_dump_layout(debug(...))]` gets no arguments.
- Properly check that `#[rustc_abi(debug(...))]` gets no arguments.
- Properly check that `#![test_runner(arg(...))]` gets no arguments.
- Properly check that `#[rustc_must_implement_one_of(arg(...))]` gets no arguments.
- Properly check that `#[allow_internal_unstable(arg(...))]` gets no arguments.
- Properly check that `#[unstable_feature_bound(arg(...))]` gets no arguments.
- Properly check that `#[rustc_allow_const_fn_unstable(arg(...))]` gets no arguments.
- Properly check that `#[rustc_if_this_changed(arg(...))]` gets no arguments.
- Properly check that `#[rustc_then_this_would_need(arg(...))]` gets no arguments.

r? @jdonszelmann
nix: remove some unneeded variables

Does not alter the semantics
@rust-bors rust-bors Bot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 1, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Jun 1, 2026

💔 Test for 6b84e61 failed: CI. Failed job:

@JonathanBrouwer
Copy link
Copy Markdown
Contributor Author

@bors retry

@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 Jun 1, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jun 1, 2026
…uwer

Rollup of 13 pull requests

Successful merges:

 - #156085 (miri: require (almost) all 1-ZST arguments to be actually passed)
 - #155193 (Check arguments of attributes where no arguments are expected)
 - #156516 (nix: remove some unneeded variables)
 - #156562 (Resolving Windows environment test failures)
 - #156588 (Don't drop uninit memory when `MapWindows::clone` panics)
 - #156673 (Privacy: small cleanups)
 - #156817 (Add `#[unsafe_eii]` to unsafe EII UI tests)
 - #156924 (Use #[panic_handler] rather than #[lang = "panic_impl"])
 - #157055 (LLVM 23: Run AssignGUIDPass in some places)
 - #157108 (Add Xtensa va_arg assembly coverage)
 - #157220 (cg_ssa: a bit less `immediate_or_packed_pair`)
 - #157241 (Trace `?id.local_def_index` instead of `id` in `def_path_hash`)
 - #157242 (Tune backport Zulip messages)
@rust-bors rust-bors Bot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 1, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Jun 1, 2026

💔 Test for ef18367 failed: CI. Failed job:

@JonathanBrouwer
Copy link
Copy Markdown
Contributor Author

@bors retry

@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 Jun 1, 2026
@JonathanBrouwer
Copy link
Copy Markdown
Contributor Author

@bors try jobs=x86_64-gnu-distcheck

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jun 1, 2026
Rollup of 13 pull requests


try-job: x86_64-gnu-distcheck
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Jun 1, 2026

☀️ Try build successful (CI)
Build commit: e31cdb2 (e31cdb2cf1f40747541f4ce7588be2f5f732c481, parent: c0bb140a37c81cf59a0b40c21c9413059644e294)

@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 Jun 2, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Jun 2, 2026

☀️ Test successful - CI
Approved by: JonathanBrouwer
Duration: 3h 19m 59s
Pushing 4a31759 to main...

@rust-bors rust-bors Bot merged commit 4a31759 into rust-lang:main Jun 2, 2026
14 checks passed
@rustbot rustbot added this to the 1.98.0 milestone Jun 2, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jun 2, 2026

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 6bdf430 (parent) -> 4a31759 (this PR)

Test differences

Show 13 test diffs

Stage 1

  • [ui] tests/ui/attributes/args-checked.rs: [missing] -> pass (J0)
  • [ui] tests/ui/rustc-env/def-path-hash-ice-157238.rs: [missing] -> pass (J0)
  • [assembly] tests/assembly-llvm/c-variadic/xtensa.rs#XTENSA: [missing] -> pass (J4)
  • [assembly] tests/assembly-llvm/c-variadic/xtensa.rs#XTENSA: [missing] -> ignore (ignored when the LLVM version 21.1.2 is older than 22.0.0) (J5)
  • iter::adapters::map_windows::drop_checks::panicking_clone: [missing] -> pass (J7)

Stage 2

  • [assembly] tests/assembly-llvm/c-variadic/xtensa.rs#XTENSA: [missing] -> ignore (ignored when the LLVM version 21.1.2 is older than 22.0.0) (J1)
  • [ui] tests/ui/attributes/args-checked.rs: [missing] -> pass (J2)
  • [ui] tests/ui/rustc-env/def-path-hash-ice-157238.rs: [missing] -> pass (J2)
  • iter::adapters::map_windows::drop_checks::panicking_clone: [missing] -> pass (J3)
  • [assembly] tests/assembly-llvm/c-variadic/xtensa.rs#XTENSA: [missing] -> pass (J6)

Additionally, 3 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 4a31759ad18b3c29c5ec99ca23c4764a8bedcf52 --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-arm-linux-musl: 1h 4m -> 1h 38m (+52.2%)
  2. aarch64-apple: 2h 21m -> 3h 13m (+36.4%)
  3. pr-check-2: 34m 12s -> 45m 28s (+32.9%)
  4. dist-apple-various: 1h 58m -> 1h 25m (-27.8%)
  5. x86_64-msvc-ext3: 1h 57m -> 1h 25m (-27.5%)
  6. x86_64-gnu-llvm-22-1: 58m 46s -> 1h 12m (+23.3%)
  7. x86_64-gnu-llvm-21-3: 1h 59m -> 1h 32m (-22.9%)
  8. dist-aarch64-apple: 1h 29m -> 1h 47m (+20.5%)
  9. dist-powerpc64le-linux-gnu: 1h 37m -> 1h 18m (-19.4%)
  10. dist-x86_64-apple: 2h 27m -> 2h 6m (-14.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
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#155193 Check arguments of attributes where no arguments are expect… 2013467fa8d0ee6c737352174719465f138ba25f (link)
#156085 miri: require (almost) all 1-ZST arguments to be actually p… f3e57429005101d93bd93da03bcb6d744dc6557f (link)
#156516 nix: remove some unneeded variables 585986b73a671e36ff9168da5cdb774410943162 (link)
#156562 Resolving Windows environment test failures f9f0ce0cb0937a950dbdc7b2c763444524512d5b (link)
#156588 Don't drop uninit memory when MapWindows::clone panics 6a93f431aab6a2cbf5b334b8970f377adc2065d8 (link)
#156673 Privacy: small cleanups 12e7119812a47a08491bc8d870c8906b126f536b (link)
#156817 Add #[unsafe_eii] to unsafe EII UI tests 81de2cc44e2a366902a3f39aafb87a377de4fa03 (link)
#156924 Use #[panic_handler] rather than #[lang = "panic_impl"] a79deacc062009649bb520f783d0a799f43e167b (link)
#157055 LLVM 23: Run AssignGUIDPass in some places 100b2c812cd75044a790ce83352ed117abe6bc5c (link)
#157108 Add Xtensa va_arg assembly coverage 8b96b0876723d30772dc0f1306956a5721b27f0a (link)
#157220 cg_ssa: a bit less immediate_or_packed_pair d4daf1853e18433d34e4991a420bc7aed866d5d3 (link)
#157241 Trace ?id.local_def_index instead of id in `def_path_ha… 23dc0df4c505a3e4812ed00ac1085f538a65b9b4 (link)
#157242 Tune backport Zulip messages 3349158cac139ce3ad3e2af338a7c43dff5b1b3f (link)

previous master: 6bdf43094f

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 (4a31759): comparison URL.

Overall result: ❌✅ regressions and improvements - 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.1% [-0.1%, -0.0%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary 0.2%, 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)
3.9% [3.9%, 3.9%] 1
Regressions ❌
(secondary)
1.2% [1.0%, 1.6%] 5
Improvements ✅
(primary)
-1.6% [-2.2%, -1.0%] 2
Improvements ✅
(secondary)
-3.3% [-5.6%, -1.0%] 2
All ❌✅ (primary) 0.2% [-2.2%, 3.9%] 3

Cycles

Results (primary -2.7%, secondary -3.9%)

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)
5.4% [2.2%, 8.7%] 3
Improvements ✅
(primary)
-2.7% [-2.7%, -2.7%] 1
Improvements ✅
(secondary)
-7.3% [-17.8%, -2.1%] 8
All ❌✅ (primary) -2.7% [-2.7%, -2.7%] 1

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 512.33s -> 511.17s (-0.23%)
Artifact size: 400.60 MiB -> 400.72 MiB (0.03%)

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

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself merged-by-bors This PR was explicitly merged by bors. PG-exploit-mitigations Project group: Exploit mitigations rollup A PR which is a rollup 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.