Rollup of 12 pull requests - #160388
Merged
Merged
Conversation
Add UI coverage for source-shaped local values before changing the renderer. The new cases exercise structs, enum variants, tuples, arrays, slices, and fallback leaf values so later commits can bless one behavior change at a time.
This updates the rust-version file to dfbea5b.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: rust-lang/rust@dfbea5b Filtered ref: rust-lang/miri@770df83 Upstream diff: rust-lang/rust@390279b...dfbea5b This merge was created using https://github.com/rust-lang/josh-sync.
…e-buffer skip weak memory buffer handling when there is only one thread
Automatic Rustup
Route local value rendering through a source-shaped renderer helper. At this step the helper still delegates leaves and unsupported shapes back to the existing raw byte renderer, so the behavioral changes can land in focused follow-up commits.
Render struct and struct-like ADT operands using their source field names.
Fields are projected from the operand and each leaf still uses the existing raw
renderer, producing output such as `Point { x: [..], y: [..] }` without relying
on user Debug or Display implementations.
Extend source-shaped ADT rendering to enum operands. The renderer reads the runtime discriminant, downcasts to the active variant, and then renders the payload fields with the same raw-leaf fallback used for struct fields. Unit, tuple, and struct variants keep their Rust-like spelling.
Render tuple operands as positional source-shaped values. Tuple elements are projected in source order and rendered through the existing leaf renderer, including the trailing comma for one-element tuples.
Render array and slice operands as ordered source-shaped elements. Fixed arrays use their layout count while slices use the runtime metadata length, then `project_array_fields` supplies the element operands for raw-leaf rendering.
This updates the rust-version file to d3ea035.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: rust-lang/rust@d3ea035 Filtered ref: rust-lang/miri@7c697be Upstream diff: rust-lang/rust@dfbea5b...d3ea035 This merge was created using https://github.com/rust-lang/josh-sync.
…t-comment fix `ptr_from_addr_cast` comment
Automatic Rustup
…s-and-types-handling [Priroda] Render projected locals with source-shaped values
Implement shims for vsha256hq_u32, vsha256h2q_u32, vsha256su0q_u32 and vsha256su1q_u32
Matches the naming already used in the aarch64 SHA256 shims.
…ntrinsics aarch64: implement SHA256 intrinsic shims
miri subtree update Subtree update of `miri` to rust-lang/miri@29e6073. Created using https://github.com/rust-lang/josh-sync. r? @ghost
…htriplett Allow only implementing `Read::read_buf` This PR allows users to only implement `Read::read_buf`, without the need for implementing `Read::read`. `rustc_must_implement_one_of` annotation ensures that **at least** one of the methods is implemented, so that the default impls don't create infinite recursion. Note that `Read::read_buf` is unstable, so this doesn't change anything on stable, there you still need to implement `Read::read`, since you can't implement `Read::read_buf`. Thus, we don't expose `rustc_must_implement_one_of` to stable. r? @thomcc
tests: prefer max-llvm-major-version over open LLVM ranges Per review, take option 3: replace open `ignore-llvm-version` ranges with `max-llvm-major-version`. Left gdb `X - 99.0` ranges alone so CI's older gdb still runs those tests. Fixes rust-lang#159338.
allocations are allowed to grow (but not shrink) This got permitted on the LLVM side about a year ago (llvm/llvm-project#141338), but didn't require any code changes since LLVM's optimizations were already compatible with growing allocations. That said, LLVM assumes that allocations created via operations it recognizes (e.g. `malloc`, `alloca`, or the Rust global allocator operations) never change their size, so we have to exclude that case. This resolves a part of rust-lang/unsafe-code-guidelines#430. It may seem strange that allocations can grow but not shrink, but we did have multiple users show up in #t-opsem with exactly that request. Cc @nhusung @foonathan; see [here](https://rust-lang.zulipchat.com/#narrow/channel/136281-t-opsem/topic/Shrinking.20allocations.20in-place/near/612181257) and [here](https://rust-lang.zulipchat.com/#narrow/channel/136281-t-opsem/topic/Shrinking.20allocations.20in-place/near/612191402) for some details about their use-cases. Cc @rust-lang/opsem @rust-lang/lang
…parent-map, r=fee1-dead fix: Do not stop `visible_parent_map` breadth-first search reaching children of `#[doc(hidden)]` modules The `visible_parent_map` query misses putting the child items of `#[doc(hidden)]` modules into the queue, resulting in the breadth-first search missing them entirely. This results in inconsistent path printing behavior affecting diagnostics: namely that re-exports nested deeply within `#[doc(hidden)]` modules are not considered as a possible fallback path. See the linked issue (rust-lang#159880) for more details and an example of how this manifests in diagnostics. This PR makes sure that `#[doc(hidden)]` parents in the fallback map are still searched as part of the breadth-first search. Fixes rust-lang#159880. The two tests for this change are based on the inconsistent diagnostics shown in the issue: * `tests/ui/suggestions/suggest-path-through-direct-dep-crate/hidden-reexport-of-transitive-dep-item.rs` captures the current, expected behavior in the already working base case where the hidden module is still recorded in the fallback map; * `tests/ui/suggestions/suggest-path-through-direct-dep-crate/hidden-reexport-of-nested-transitive-dep-item.rs` is a regression test for the breadth-first search covering nested children of `#[doc(hidden)]` modules to populate the fallback map by testing whether the diagnostic prefers the hidden but accessible path through the direct dependency crate. Related PRs/issues: * rust-lang#87349 * rust-lang#153477
…=TaKO8Ki Move codegen_stmt_debuginfo to debuginfo.rs This is the more consistent file to put it, and allows to reduce some visibilities.
…-more-tests, r=TaKO8Ki Add more tests for `must_implement_one_of` Test some additional malformed cases, and test cases where one method has a default implementation but the others don't.
Contributor
Author
Contributor
This comment has been minimized.
This comment has been minimized.
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 2, 2026
Rollup of 12 pull requests try-job: dist-various-1 try-job: test-various try-job: x86_64-gnu-aux try-job: x86_64-gnu-llvm-21-3 try-job: x86_64-msvc-1 try-job: aarch64-apple try-job: x86_64-mingw-1 try-job: i686-msvc-*
This comment has been minimized.
This comment has been minimized.
Contributor
Contributor
17 tasks
Contributor
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing b04d3c8 (parent) -> 28c66af (this PR) Test differencesShow 859 test diffsStage 1
Stage 2
(and 489 additional test diffs) Additionally, 270 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard 28c66af27578a28bc8cad1c5957be4b1e2e7fb8b --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Collaborator
|
📌 Perf builds for each rolled up PR:
previous master: b04d3c8c22 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Successful merges:
mutrestrictions #159906 (Semantic check ofmutrestrictions)std::iotests toalloctests& add prelude #156527 (Movestd::iotests toalloctests& add prelude)asm!on x86 #159525 (Stabilize passing 128-bit integers via vector registers withasm!on x86)advance_bymethod ofFuse#160342 (Specializeadvance_bymethod ofFuse)Read::read_buf#106643 (Allow only implementingRead::read_buf)visible_parent_mapbreadth-first search reaching children of#[doc(hidden)]modules #159881 (fix: Do not stopvisible_parent_mapbreadth-first search reaching children of#[doc(hidden)]modules)must_implement_one_of#160356 (Add more tests formust_implement_one_of)r? @ghost
Create a similar rollup