Skip to content

Conversation

@GuillaumeGomez
Copy link
Member

Successful merges:

r? @ghost

Create a similar rollup

smirzaei and others added 30 commits December 22, 2025 10:14
`find()` has a missing example. In the docs there was a mention of an
example with double reference but it didn't exist.

`rfind()` is also very similar to `find()`, however it had the double
reference example and no owned value example like `find()` did.

This commit adds the missing examples and making them look consistent.
Change the `SmallVec` size from 4 to 1, because that's sufficient in the
vast majority of cases. (This doesn't affect performance in practice, so
it's more of a code clarity change than a performance change.)
…tes section (from the internal feature gates section) and give it a tracking issue.
…tmcm

docs(core): update `find()` and `rfind()` examples

[find()](https://doc.rust-lang.org/std/iter/trait.Iterator.html) has a missing example. In the docs there is mention of an example with double reference but it doesn't exist.

<img width="1476" height="1229" alt="image" src="https://github.com/user-attachments/assets/b99062ed-3a47-4b87-8e0c-58afd7de1332" />

[rfind()](https://doc.rust-lang.org/core/iter/trait.DoubleEndedIterator.html#method.rfind) is also very similar to `find()`, however it has the double reference example and no owned value example like `find()` does.

<img width="1473" height="1163" alt="image" src="https://github.com/user-attachments/assets/7977ae5c-9888-4513-8dfc-a7c03c7ef072" />

This commit adds the missing examples and making them look consistent.
…jdonszelmann,samueltardieu

fix `Expr::can_have_side_effects` for `[x; N]` style array literal and binary expressions

AFAIK `[0; 3]` is basically a syntax sugar for `[0, 0, 0]` so it should return whether the repeat's element can have side effects, like what it does on arrays.
And it seems that the rule for unary operators and indexings can be applied to binary operators as well.
Finish transition from `semitransparent` to `semiopaque` for `rustc_macro_transparency`

Since it's a bit annoying to have different names for the same thing.

My understanding is that this is just internal stuff that is not part of any public API even tough rust-analyzer knows about it.

Continuation of
- rust-lang#139084.

Discovered while investigating
- rust-lang#150514
Clarify `MoveData::init_loc_map`.

Change the `SmallVec` size from 4 to 1, because that's sufficient in the vast majority of cases. (This doesn't affect performance in practice, so it's more of a code clarity change than a performance change.)

r? @cjgillot
Use functions more in rustdoc GUI tests

Now that conditions are supported in `browser-ui-test`, we can start simplify some parts of the tests. This is a first cleanup, but I guess a lot more could be simplified. For follow-ups I guess. :)

I made some improvements in backtrace display in `browser-ui-test`, hence the version update once more.

r? @lolbinarycat
rename the `derive_{eq, clone_copy}` features to `*_internals`

Features like `derive_from` and `derive_coerce_pointee` refer to actual unstable derive macros, but the `derive_eq` and `derive_clone_copy` features are internal hacks. Rename them accordingly by adding the suffix `_internals`.
Fix trait method anchor disappearing before user can click on it

A good example of this bug is going to https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir_analysis/collect/struct.ItemCtxt.html#impl-HirTyLowerer%3C'tcx%3E-for-ItemCtxt%3C'tcx%3E, and then try to click on the `§` anchor of the `tcx` method.

The solution to this bug is to simply "glue" the anchor to the method, so when the mouse cursor moves to it, there is no gap between the two, preventing the anchor to disappear (hopefully this explanation doesn't make sense only to me ^^').

First commit fixes the bug by expanding the anchor size.
Second commit is a small clean-up of the GUI test.
Third commit actually adds the GUI regression test.

cc @BoxyUwU
r? @camelid
tests/ui/borrowck/issue-92157.rs: Remove (bug not fixed)

The bug the test tests for is masked by the wrong `#[lang = "start"]` signature. If the signature is corrected, the test builds. But that is not because the bug is fixed, but because the test has been changed too much from the original reproducer. The original reproducer still ICE:s. See rust-lang#92157 (comment).

But that's fine since in the latest compiler says:

> note: using internal features is not supported and expected to cause internal compiler errors when used incorrectly

So let's remove the test and close the issue as "won't fix". See rust-lang#92157 (comment).

r? @JohnTitor since you added the test in rust-lang#106878
…anBrouwer

make attrs actually use `Target::GenericParam`

currently attributes lower `GenericParam` -> `Target::Param` this PR fixes this, so that `GenericParam` is lowered to `Target::GenericParam`

r? @JonathanBrouwer
…-internal, r=Kivooeo

Add tracking issue for `feature(multiple_supertrait_upcastable)`

Move feature(multiple_supertrait_upcastable) to the actual feature gates section (from the internal feature gates section) and give it a tracking issue.

Tracking issue: rust-lang#150833

Fixes rust-lang#150773

This feature is for the `multiple_supertrait_upcastable` lint, which was added as `unstable` without a tracking issue, but was placed in the internal feature gates section. This PR moves its listing to the actual feature gates section and gives it a tracking issue.

If the lint is intended to stay internal-only, then this can be changed to instead mark it as `internal` (and maybe close the tracking issue).
…zelmann

The aarch64-unknown-none target requires NEON, so the docs were wrong.

As discussed [on zulip](https://rust-lang.zulipchat.com/#narrow/channel/242906-t-compiler.2Farm/topic/aarch64-unknown-none.20platform.20docs/with/567045743), we think the docs for the aarch64-unknown-none target don't match the target spec.
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Jan 9, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-tidy Area: The tidy tool 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-clippy Relevant to the Clippy team. 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. T-rust-analyzer Relevant to the rust-analyzer 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-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. labels Jan 9, 2026
@GuillaumeGomez
Copy link
Member Author

@bors r+ p=5 rollup=never

@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 Jan 9, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 9, 2026

📌 Commit 8f89503 has been approved by GuillaumeGomez

It is now in the queue for this repository.

@rust-bors

This comment has been minimized.

@rust-bors rust-bors bot added the merged-by-bors This PR was explicitly merged by bors. label Jan 9, 2026
@rust-bors
Copy link
Contributor

rust-bors bot commented Jan 9, 2026

☀️ Test successful - CI
Approved by: GuillaumeGomez
Pushing 1b39278 to main...

@rust-bors rust-bors bot merged commit 1b39278 into rust-lang:main Jan 9, 2026
12 checks passed
@rustbot rustbot added this to the 1.94.0 milestone Jan 9, 2026
@GuillaumeGomez GuillaumeGomez deleted the rollup-puFKE8I branch January 9, 2026 15:36
@github-actions
Copy link
Contributor

github-actions bot commented Jan 9, 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 85d0cdf (parent) -> 1b39278 (this PR)

Test differences

Show 372 test diffs

Stage 0

  • tests::simple::macro_semiopaque_hygiene: [missing] -> pass (J0)
  • tests::simple::macro_semitransparent_hygiene: pass -> [missing] (J0)

Stage 1

  • [ui] tests/ui/binop/can-have-side-effects-consider-operands.rs: [missing] -> pass (J0)
  • [ui] tests/ui/borrowck/issue-92157.rs: pass -> [missing] (J0)
  • [ui] tests/ui/repeat-expr/can-have-side-effects-consider-element.rs: [missing] -> pass (J0)
  • tests::simple::macro_semiopaque_hygiene: [missing] -> pass (J2)
  • tests::simple::macro_semitransparent_hygiene: pass -> [missing] (J2)

Stage 2

  • [ui] tests/ui/binop/can-have-side-effects-consider-operands.rs: [missing] -> pass (J1)
  • [ui] tests/ui/borrowck/issue-92157.rs: pass -> [missing] (J1)
  • [ui] tests/ui/repeat-expr/can-have-side-effects-consider-element.rs: [missing] -> pass (J1)

Additionally, 362 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 1b39278a315a1120ab10c234ec284d151826fb96 --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-aux: 6612.3s -> 7556.2s (+14.3%)
  2. dist-x86_64-apple: 7135.2s -> 7992.8s (+12.0%)
  3. aarch64-gnu-llvm-20-1: 3293.0s -> 3655.3s (+11.0%)
  4. dist-aarch64-apple: 7418.6s -> 6625.8s (-10.7%)
  5. aarch64-gnu: 7536.5s -> 8334.3s (+10.6%)
  6. aarch64-gnu-llvm-20-2: 2776.9s -> 3056.9s (+10.1%)
  7. aarch64-msvc-1: 6458.0s -> 7067.2s (+9.4%)
  8. x86_64-msvc-ext2: 5523.9s -> 6019.1s (+9.0%)
  9. dist-apple-various: 3506.0s -> 3232.8s (-7.8%)
  10. x86_64-gnu-llvm-20-3: 6690.5s -> 7173.4s (+7.2%)
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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#150272 docs(core): update find() and rfind() examples 7aa77b77e9e8c7893e43f6fc58e09a162309b5e8 (link)
#150385 fix Expr::can_have_side_effects for [x; N] style array … c56935d766badb9451c719a96aaacfa66da74612 (link)
#150561 Finish transition from semitransparent to semiopaque fo… 877aec0a36d6570b207802bdb2805a688c19e453 (link)
#150574 Clarify MoveData::init_loc_map. c0f83a6fbbeaef0aa0c0c53c9597c5faab61cd4b (link)
#150762 Use functions more in rustdoc GUI tests a9849a7db134b0021169dc54482405e262aa8422 (link)
#150808 rename the derive_{eq, clone_copy} features to `*_interna… 61a542ab7aaa8cfc842572339d14373b0a5de40b (link)
#150816 Fix trait method anchor disappearing before user can click … 3c4aae44b599cb2562854306fff3ca04c7ba2d1f (link)
#150821 tests/ui/borrowck/issue-92157.rs: Remove (bug not fixed) f0e5f78ff35e2cc946b85607a8fa188b8754cdfc (link)
#150829 make attrs actually use Target::GenericParam d6ae9a161f9d4d04074ad281278dda3c3d9e4cb8 (link)
#150834 Add tracking issue for `feature(multiple_supertrait_upcasta… 1246dd7003f8fc32761dcd84ba07617f5b80912d (link)
#150864 The aarch64-unknown-none target requires NEON, so the docs … 9c0363f1959964c1d2b66b8dcc10e60abbcc14b8 (link)

previous master: 85d0cdfe34

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 (1b39278): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

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

Max RSS (memory usage)

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

Cycles

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

Binary size

Results (secondary 0.0%)

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

Bootstrap: 473.885s -> 473.995s (0.02%)
Artifact size: 390.84 MiB -> 390.87 MiB (0.01%)

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

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-tidy Area: The tidy tool 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-clippy Relevant to the Clippy team. 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. T-rust-analyzer Relevant to the rust-analyzer 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-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.