Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Rollup of 18 pull requests - #155373

Closed
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R
Closed

Rollup of 18 pull requests#155373
jhpratt wants to merge 56 commits into
rust-lang:mainfrom
jhpratt:rollup-qjxAt4R

Conversation

@jhpratt

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

hkBstand others added 30 commits January 27, 2026 13:00
Shaves off 368 bytes from the total size of all Unicode data tables.
When a type alias is locally re-exported from a private module (an implicit
inline), rustdoc drops its `cfg` attributes because it treats it like a
standard un-inlined re-export. Since type aliases have no inner fields to
carry the `cfg` badge (unlike structs or enums), the portability info
is lost entirely.
This patch explicitly preserves the target's `cfg` metadata when the
generated item is a `TypeAliasItem`, ensuring the portability badge
renders correctly without breaking standard cross-crate re-export behavior.
This avoids having to add several unhelpful annotations when enabling
diagnostic checks for `cpass` and `rpass` revisions.
This allows warnings to be annotated, and verifies that no unexpected warnings
occur.
* Adds musl CVE fix to compiler section
* Removes Cargo section per feedback in the PR
`DroplessArena::alloc` already disallows ZST allocation.
`TypedArena::alloc` allows it but:
- (a) it's never used, and
- (b) writing to `NonNull::dangling()` seems dubious, even if the write
is zero-sized.
This commit just changes it to panic on a ZST. This eliminates an
untested code path, and we shouldn't be allocating ZSTs anyway.
It also eliminates an unused ZST code path in `clear_last_chunk`.
Tests are also updated accordingly.
Co-authored-by: Josh Stone <cuviper@gmail.com>
This adds a `--quiet` flag to x.py and bootstrap to suppress some of the
output when compiling Rust. It conflicts with `--verbose`, matching the
behavior of `cargo` which does not allow `--verbose` and `--quiet`.
It works by passing quiet flags down to the underlying cargo, or LLVM
build processes. Note that for LLVM, we only can suppress logs when we
explicitly configure it with ninja. Otherwise we won't know what flag
to pass along to whichever build system cmake decides to use.
This can be helpful with AI workloads in the Rust codebase to help
shrink down the output to reduce token usage, which can help prevent
context pollution and lower costs.
This patch was partially generated with Gemini, but I've reviewed the
changes it made.
…_id, r=WaffleLapkin
remove calls to AliasTyKind::def_id
ref rust-lang#154941
I asked the LSP where `AliasTyKind::def_id` and then checked where the `AliasTyKind::def_id` was trivial to change. Could only find 2 places, and I am not sure about the `opaque_types.rs` (open to feedback!! :) ). All the others need refactoring or will end up with a logic as complex as `AliasTyKind::def_id`
This is the list checked:
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/member_constraints.rs — 1
- [X] compiler/rustc_borrowck/src/region_infer/opaque_types/mod.rs — 1
- [X] compiler/rustc_hir_analysis/src/check/compare_impl_item/refine.rs — 5
- [X] compiler/rustc_hir_analysis/src/check/mod.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/for_liveness.rs — 2
- [X] compiler/rustc_infer/src/infer/outlives/obligations.rs — 1
- [X] compiler/rustc_infer/src/infer/outlives/verify.rs — 3
- [X] compiler/rustc_middle/src/ty/print/pretty.rs — 1
- [X] compiler/rustc_middle/src/ty/sty.rs — 1
- [X] compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs — 3
- [X] compiler/rustc_next_trait_solver/src/solve/effect_goals.rs — 3
- [X] compiler/rustc_pattern_analysis/src/rustc.rs — 1
- [X] compiler/rustc_public/src/unstable/convert/stable/ty.rs — 1
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/mod.rs — 2
- [X] compiler/rustc_trait_selection/src/error_reporting/infer/note_and_explain.rs — 4
- [X] compiler/rustc_trait_selection/src/error_reporting/traits/suggestions.rs — 2
- [X] compiler/rustc_trait_selection/src/traits/effects.rs — 1
- [X] compiler/rustc_trait_selection/src/traits/query/normalize.rs — 1
- [X] compiler/rustc_ty_utils/src/opaque_types.rs — 7
- [X] compiler/rustc_ty_utils/src/ty.rs — 1
- [X] compiler/rustc_type_ir/src/outlives.rs — 1
- [X] compiler/rustc_type_ir/src/predicate.rs — 1
- [X] compiler/rustc_type_ir/src/relate.rs — 5
- [X] compiler/rustc_type_ir/src/ty_kind.rs — 2
r? @WaffleLapkin
…bilities, r=Kivooeo
Reduce diagnostic type visibilities.
Most diagnostic types are only used within their own crate, and so have a `pub(crate)` visibility. We have some diagnostic types that are unnecessarily `pub`. This is bad because (a) information hiding, and (b) if a `pub(crate)` type becomes unused the compiler will warn but it won't warn for a `pub` type.
This commit eliminates unnecessary `pub` visibilities for some diagnostic types, and also some related things due to knock-on effects. (I found these types with some ad hoc use of `grep`.)
r? @Kivooeo
@rust-borsrust-borsBot added the rollup A PR which is a rollup label Apr 16, 2026
@rustbotrustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-run-make Area: port run-make Makefiles to rmake.rs 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-release Relevant to the release subteam, 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 Apr 16, 2026
@jhpratt

Copy link
Copy Markdown
MemberAuthor

@bors r+ rollup=never p=5

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 837292d has been approved by jhpratt

It is now in the queue for this repository.

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

This comment has been minimized.

rust-borsBot pushed a commit that referenced this pull request Apr 16, 2026
Rollup of 18 pull requests
Successful merges:
- #154595 (Emit fatal on invalid const args with nested defs)
- #154599 (report the `varargs_without_pattern` lint in deps)
- #154699 (`core::unicode`: Replace `Cased` table with `Lt`)
- #155353 (resolve: Remove `inaccessible_ctor_reexport` resolver field)
- #155357 (Add `--remap-path-scope` as unstable in rustdoc)
- #150649 (clippy fix: non_canonical_clone_impl)
- #154604 (abort in core)
- #154616 (Add `--quiet` flag to x.py and bootstrap to suppress output)
- #154970 (rustdoc: preserve `doc(cfg)` on locally re-exported type aliases)
- #155215 (Clean up `AttributeLintKind` and refactor diagnostic attribute linting)
- #155228 (Check diagnostic output in incremental `cpass` and `rpass` revisions)
- #155266 (Adjust release notes for post-merge feedback)
- #155326 (Disallow ZST allocations with `TypedArena`.)
- #155334 (docs: Use `0b1` instead of `NonZero::MIN` in `NonZero::bit_width` doctests)
- #155340 (Handle nonnull pattern types in size skeleton)
- #155347 (Add push_mut and new Layout methods to release notes)
- #155356 (remove calls to AliasTyKind::def_id)
- #155364 (Reduce diagnostic type visibilities.)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-apple failed! Check out the build log: (web)(plain enhanced)(plain)

Click to see the possible cause of the failure (guessed by this bot)

---- [rustdoc-html] tests/rustdoc-html/reexport/type-alias-reexport.rs stdout ----
------rustdoc stdout------------------------------
------rustdoc stderr------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]
---
------------------------------------------
error: rustdoc failed!
status: exit status: 1
command: cd "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" && env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/bin/rustdoc" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/stage2/lib/rustlib/aarch64-apple-darwin/lib" "-L" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport/auxiliary" "-o" "/Users/runner/work/rust/rust/build/aarch64-apple-darwin/test/rustdoc-html/reexport/type-alias-reexport" "--deny" "warnings" "/Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs" "-A" "internal_features"
stdout: none
--- stderr -------------------------------
error[E0432]: unresolved import `self::inner::One`
##[error] --> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:32:23
|
32 | pub use self::inner::{One, Two};
| ^^^ no `One` in `inner`
|
note: found an item that was configured out
--> /Users/runner/work/rust/rust/tests/rustdoc-html/reexport/type-alias-reexport.rs:10:14
|
9 | #[cfg(target_os = "linux")]

@rust-borsrust-borsBot 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 Apr 16, 2026
@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 63faf88 failed: CI. Failed job:

@rust-bors

rust-borsBot commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

PR #154970, which is a member of this rollup, was unapproved.

@rust-borsrust-borsBot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 16, 2026
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 16, 2026
@jhpratt
jhpratt deleted the rollup-qjxAt4R branch April 16, 2026 05:53
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributesArea: Attributes (`#[…]`, `#![…]`)A-compiletestArea: The compiletest test runnerA-run-makeArea: port run-make Makefiles to rmake.rsA-testsuiteArea: The testsuite used to check the correctness of rustcrollupA PR which is a rollupS-waiting-on-authorStatus: This is awaiting some action (such as code changes or more information) from the author.T-bootstrapRelevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.T-libsRelevant to the library team, which will review and decide on the PR/issue.T-releaseRelevant to the release subteam, which will review and decide on the PR/issue.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant 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.

20 participants

@jhpratt@rust-log-analyzer@rustbot@hkBst@CAD97@Jules-Bertholet@shivendra02467@mejrs@Zalathar@folkertdev@Mark-Simulacrum@mu001999@nnethercote@sorairolake@oli-obk@balt-dev@erickt@petrochenkov@WilliamTakeshi@Urgau