Rollup of 9 pull requests - #161599
Closed
JonathanBrouwer wants to merge 71 commits into
Closed
Conversation
Record the current CLI and DAP behavior for interpreter errors and post-exit commands before changing the debugger lifecycle semantics. Temporarily relax the expected process exit status for fixtures whose pre-change behavior lets Miri termination escape the debugger: UB fixtures exit with Miri's error status, and the nonzero-exit fixture exits before returning to the prompt. The implementation commit removes this relaxation after Priroda turns those cases into clean debugger states.
Record normal program termination as debugger state instead of letting the Miri termination escape the session. This lets CLI commands after exit report the saved code and lets the nonzero-exit fixture return through the prompt without relaxing the process status.
Report non-exit interpreter errors as debugger stops instead of terminating the Priroda session. Execution commands may still be issued after an exception stop. They ask Miri to advance again and report the resulting stop, which can be another exception at the same location.
[Priroda] Handle interpreter errors and program exit
With this, we get C dep remap for free when building in rustc bootstrap: See * rust-lang#161049 * rust-lang/cargo#17309 * rust-lang/cc-rs#1794
chore: update to cc@1.4.3
Record the current CLI behavior before adding the `next` command.
Add stack-depth based source step-over support and expose it through the CLI `next` command. The CLI fixture now shows `next` being accepted instead of rejected. DAP keeps the baseline behavior until a later commit wires the same helper into the DAP frontend.
Add CLI fixtures for same-line `next` behavior and for the unsupported `out` command before source step-out is implemented. The same-line fixture keeps its physical line layout with `rustfmt::skip` because that layout is the behavior under test.
Add source step-out support and expose it through the CLI `out` command. The command runs until execution reaches a source location in a shallower stack frame.
Record the current DAP behavior before wiring `next` to source step-over.
Route DAP `next` through the source step-over helper and keep `stepIn` on the source step-in path. The fixture now shows DAP `next` stopping after the call instead of inside the callee.
Record the current DAP behavior before supporting `stepOut` requests.
Route DAP `stepOut` through the source step-out helper. The fixture now shows `stepOut` returning from the callee to the caller instead of being rejected as unsupported.
Add DAP coverage for `next` stepping over a call and CLI coverage for running `next` from a source breakpoint on a call line. The CLI fixture records the old repeated-breakpoint behavior before the following fix changes stepping breakpoint handling.
Suppress the source breakpoint a stepping command started from while that command is leaving the line. The CLI breakpoint fixture now shows `next` stopping on the following source line instead of reporting the same breakpoint again.
Record repeated DAP `next` stops around a call followed by a same-line helper.
Keep source `next` moving when a same-frame return span points back to an earlier line in the same file. The repeated DAP `next` fixture now stops after the same-line helper instead of stopping on the `main` function header.
Record DAP `stepOut` from the entry user frame before changing step-out to use user frames. The fixture shows the current raw-stack behavior stopping in Rust runtime code.
Track source step-out using user-relevant frame depth instead of raw interpreter stack depth. DAP stepOut from the entry user frame now returns an error and leaves the selected frame unchanged, while step-out from a callee still returns to the caller.
Document that source step-in only enters calls with distinct displayed source positions, and that stepOut operates on user frames.
This updates the rust-version file to f7d782a.
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: rust-lang/rust@f7d782a Filtered ref: rust-lang/miri@f9b5de1 Upstream diff: rust-lang/rust@67854e5...f7d782a This merge was created using https://github.com/rust-lang/josh-sync.
x86 intrinsics: remove no-longer-needed intrinsics
Reuse the step-over resume arm for source step-in by treating a usize::MAX start depth as never deeper than the starting point. `step` and `next` now share the same source-position change check.
[Priroda] Add source stepping commands
miri subtree update Subtree update of `miri` to rust-lang/miri@383ad68. Created using https://github.com/rust-lang/josh-sync. r? @ghost
Recover on attribute in use tree
add crashtests [5/N], remove unused aux files Followup to rust-lang#161150. Adds more tests, removes some auxillary files whose crash test was already removed. [Link to issue list](https://github.com/rust-lang/rust/issues?q=is%3Aissue%20state%3Aopen%20label%3AI-ICE%20label%3AS-has-mcve%20sort%3Acreated-asc%20AND%20(%20153005%20OR%20153362%20OR%20153375%20OR%20153947%20OR%20154296%20OR%20154779%20OR%20154782%20OR%20154871%20)).
add crashtests [6/N] Followup to rust-lang#161166. [Link to issue list.](https://github.com/rust-lang/rust/issues?q=is:issue%20state:open%20label:I-ICE%20label:S-has-mcve%20sort:created-asc%20AND%20(%20138262%20OR%20142155%20OR%20144241%20OR%20149562%20OR%20152414%20OR%20152416%20OR%20152626%20OR%20154903%20OR%20154963%20OR%20155053%20OR%20156101%20OR%20156288%20))
…kruppe Bump cfg_aliases to 0.2.2 Resolves FCW in `nix@0.30.1`'s usage of `cfg_aliases` when building stage1 since rust-lang#159222 reached beta. Example of FCW: https://github.com/rust-lang/rust/actions/runs/32585824494/job/97061994743?pr=161548#step:28:4792 . If you `./x b` locally, then you should also see this warning, and have a file `build/x86_64-unknown-linux-gnu/stage1-rustc/.future-incompat-report.json` mentioning `nix` and `cfg_aliases`. cc @Zalathar
re-bless `pretty-std` on windows Corrects a small error from rust-lang#160331. I forgot CI doesn't run lldb on windows, so it didn't catch that these hadn't been updated. At the very least though, this lets us see, in isolation, what a typical diff will look like for the json data. r? @Kobzol @jieyouxu
update eyre This fixes some future-compat warnings in ui_test. (The warnings show up in a different crate due to macros being involved.)
…-llvm-config, r=Kobzol [Bootstrap] Pass exact CI `llvm-config` executable path ## Summary Follow-up fix for rust-lang#160916. I noticed that against latest `main` we are repeatedly invalidating `rustc_llvm`'s build script after ``` Fresh ar_archive_writer v0.5.3 Dirty rustc_llvm v0.0.0 (X:\repos\rust\compiler\rustc_llvm): the file `build\x86_64-pc-windows-msvc\ci-llvm\bin\llvm-config` is missing Compiling rustc_llvm v0.0.0 (X:\repos\rust\compiler\rustc_llvm) Fresh unicode-security **v0.1.2** ``` This PR passes the *exact* CI LLVM `llvm-config` executable path (including the `.exe` extension on Windows). Otherwise, this will cause `rustc_llvm` build script to consider the `llvm-config` executable missing, causing cargo build cache invalidation. I tested this locally and this seems to fix the invalidation w/ CI LLVM. r? Kobzol
Member
Author
Contributor
This comment has been minimized.
This comment has been minimized.
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 23, 2026
Rollup of 9 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-1 try-job: aarch64-apple-2 try-job: x86_64-mingw-1 try-job: i686-msvc-1 try-job: i686-msvc-2
Contributor
|
⌛ Testing commit 691c575 with merge d7d3c5d... Workflow: https://github.com/rust-lang/rust/actions/runs/32646036265 |
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 23, 2026
…uwer Rollup of 9 pull requests Successful merges: - #160302 (target_features: sse (or at least avx2) is incompatible with soft-float ABI) - #161586 (miri subtree update) - #155254 (Recover on attribute in use tree) - #161166 (add crashtests [5/N], remove unused aux files ) - #161294 (add crashtests [6/N]) - #161569 (Bump cfg_aliases to 0.2.2) - #161573 (re-bless `pretty-std` on windows) - #161588 (update eyre) - #161598 ([Bootstrap] Pass exact CI `llvm-config` executable path)
Collaborator
|
The job Click to see the possible cause of the failure (guessed by this bot) |
Contributor
|
PR #161294, which is a member of this rollup, was unapproved. This rollup was thus unapproved. Auto build was cancelled due to unapproval. Cancelled workflows: |
Contributor
|
💔 Test for 5e1c04e failed: CI. Failed jobs:
|
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:
pretty-stdon windows #161573 (re-blesspretty-stdon windows)llvm-configexecutable path #161598 ([Bootstrap] Pass exact CIllvm-configexecutable path)r? @ghost
Create a similar rollup