Skip to content

Rollup of 4 pull requests#158212

Merged
rust-bors[bot] merged 17 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-s7MPo5g
Jun 21, 2026
Merged

Rollup of 4 pull requests#158212
rust-bors[bot] merged 17 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-s7MPo5g

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Contributor

Successful merges:

r? @ghost

Create a similar rollup

qaijuang and others added 17 commits June 15, 2026 17:56
This also syncs `RUSTFLAGS: -D warnings` which is added in
rust-lang/rustfmt
This is an optimization to reduce the amount for paths that get added to
the dylib search path. This is especially important for Windows as it
has issues when PATH gets too long. With the new Cargo build-dir we
increased the number of paths being passed.
This allows compiletest to support the new Cargo `build-dir` layout
which passes more `-L` flags as the `deps` dir has been split per build
unit. This can be an issue on Windows as the max command size is fairly
small.
This reduces the size of PATH on windows during macro expansion to avoid
hitting windows limits. With the new Cargo build-dir layout this becomes
more important as Cargo now passes more `-L` args which end up bloating
PATH.
…yout, r=bjorn3,kobzol

Enable Cargo's new build-dir layout

This PR enables the new Cargo `build-dir` layout in boostrap builds with `-Zbuild-dir-new-layout`.

See: [#t-infra/bootstrap > Has anyone tested &rust-lang#96;./x&rust-lang#96; with the new build-dir layout?](https://rust-lang.zulipchat.com/#narrow/channel/326414-t-infra.2Fbootstrap/topic/Has.20anyone.20tested.20.60.2E.2Fx.60.20with.20the.20new.20build-dir.20layout.3F/with/581660716)

Tracked in: rust-lang/cargo#15010

r? @bjorn3

cc: @epage
…op-order-awaitee, r=JonathanBrouwer

Do not use desugared local names in tail_expr_drop_order diagnostics

`tail_expr_drop_order` labels values using names from `body.var_debug_info`.
That works for user-written bindings, but `.await` lowering also introduces a synthetic `__awaitee` binding for debuginfo. This can leak into the user-facing lint diagnostic.

This PR filters collected diagnostic names through `LocalDecl::from_compiler_desugaring()`, so compiler-generated locals fall back to the existing `#N` temporary labels. This does not change async lowering or the `__awaitee` debuginfo name itself.

A user-written binding named `__awaitee` is still treated as user-written and is still shown by name.

Fixes rust-lang#136206
…nt, r=jdonszelmann

Remove `has_delayed_lints` optimization

Keeping track of `has_delayed_lints` doesn't seem to have a perf effect anymore so let's not make the code more complicated than needed. These flags were previously used so we don't have to iterate over all hir owners, but iterating over all hir owners seems fast enough

cc @jdonszelmann
More general assert in Interner const fn check

Fixes rust-lang#158188
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Jun 21, 2026
@rustbot rustbot added A-CI Area: Our Github Actions CI A-compiletest Area: The compiletest test runner 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustfmt Relevant to the rustfmt team, which will review and decide on the PR/issue. labels Jun 21, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Contributor Author

@bors r+ rollup=never p=5

@rust-bors

rust-bors Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 6e58171 has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-bors rust-bors Bot added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jun 21, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 21, 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 Jun 21, 2026
@rust-bors

rust-bors Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

☀️ Test successful - CI
Approved by: JonathanBrouwer
Duration: 3h 10m 3s
Pushing ff64732 to main...

@rust-bors rust-bors Bot merged commit ff64732 into rust-lang:main Jun 21, 2026
14 checks passed
@rustbot rustbot added this to the 1.98.0 milestone Jun 21, 2026
@rust-timer

Copy link
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#155439 Enable Cargo's new build-dir layout 498bc9b53c74138b61ea1a6054f1c68350747c70 (link)
#157942 Do not use desugared local names in tail_expr_drop_order di… f60e56455c89202dc7316e23d5e2c441ae040007 (link)
#158193 Remove has_delayed_lints optimization 8baecfa52380f1119fa4093a1dbf3922cded7ff2 (link)
#158204 More general assert in Interner const fn check fd8d4a9826832028fa0c04f03ff9a026de550f27 (link)

previous master: 40f92b37c4

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
Copy Markdown
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 40f92b3 (parent) -> ff64732 (this PR)

Test differences

Show 10 test diffs

Stage 1

  • [ui] tests/ui/consts/const-fn-variant-ctor.rs#current: [missing] -> pass (J0)
  • [ui] tests/ui/consts/const-fn-variant-ctor.rs#next: [missing] -> pass (J0)
  • [ui (polonius)] tests/ui/consts/const-fn-variant-ctor.rs#current: [missing] -> pass (J2)
  • [ui (polonius)] tests/ui/consts/const-fn-variant-ctor.rs#next: [missing] -> pass (J2)

Stage 2

  • [ui] tests/ui/consts/const-fn-variant-ctor.rs#current: [missing] -> pass (J1)
  • [ui] tests/ui/consts/const-fn-variant-ctor.rs#next: [missing] -> pass (J1)

Additionally, 4 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 ff647322379c48947c196639599067665ff9eb88 --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-gnu-gcc-core-tests: 7m 27s -> 14m 49s (+98.5%)
  2. x86_64-gnu-llvm-21-2: 1h -> 1h 36m (+59.5%)
  3. x86_64-msvc-ext1: 1h 23m -> 2h 11m (+58.5%)
  4. i686-gnu-nopt-2: 1h 26m -> 2h 9m (+50.0%)
  5. x86_64-gnu-gcc: 47m 6s -> 1h 7m (+43.9%)
  6. pr-check-1: 26m 11s -> 33m 46s (+29.0%)
  7. dist-i686-linux: 1h 28m -> 1h 51m (+25.5%)
  8. optional-x86_64-gnu-parallel-frontend: 2h 18m -> 2h 50m (+23.3%)
  9. x86_64-rust-for-linux: 43m 57s -> 54m 4s (+23.0%)
  10. x86_64-gnu-llvm-21-1: 48m 22s -> 59m 22s (+22.8%)
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

Finished benchmarking commit (ff64732): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

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

Max RSS (memory usage)

Results (primary -2.5%)

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

Cycles

Results (primary 2.2%, secondary 3.7%)

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

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

Binary size

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

Bootstrap: 479.892s -> 482.919s (0.63%)
Artifact size: 390.75 MiB -> 391.25 MiB (0.13%)

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-compiletest Area: The compiletest test runner 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 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. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustfmt Relevant to the rustfmt team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants