Skip to content

Rollup of 9 pull requests - #161599

Closed
JonathanBrouwer wants to merge 71 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-l2z6D0K
Closed

Rollup of 9 pull requests#161599
JonathanBrouwer wants to merge 71 commits into
rust-lang:mainfrom
JonathanBrouwer:rollup-l2z6D0K

Conversation

@JonathanBrouwer

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

moabo3li and others added 30 commits August 16, 2026 05:57
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
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.
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.
…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
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Aug 23, 2026
@rustbot rustbot added 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. labels Aug 23, 2026
@JonathanBrouwer

Copy link
Copy Markdown
Member Author

@bors r+ p=5

Trying commonly failed jobs
@bors try jobs=dist-various-1,test-various,x86_64-gnu-aux,x86_64-gnu-llvm-21-3,x86_64-msvc-1,aarch64-apple-1,aarch64-apple-2,x86_64-mingw-1,i686-msvc-1,i686-msvc-2

@rust-bors

rust-bors Bot commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

📌 Commit 691c575 has been approved by JonathanBrouwer

It is now in the queue for this repository.

@rust-bors rust-bors Bot added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 23, 2026
@rust-bors

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
@rust-bors

rust-bors Bot commented Aug 23, 2026

Copy link
Copy Markdown
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)
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job x86_64-msvc-1 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
test [crashes] tests\crashes\137187.rs ... ok
test [crashes] tests\crashes\137129.rs ... ok
test [crashes] tests\crashes\138008.rs ... ok
test [crashes] tests\crashes\138009.rs ... ok
2026-08-23T14:46:53.771020Z ERROR compiletest::runtest: fatal error, panic: "crashtest no longer crashes/triggers ICE, hooray! Please give it a meaningful name, add a doc-comment to the start of the test explaining why it exists and move it to tests/ui or wherever you see fit. Adding 'Fixes #<issueNr>' to your PR description ensures that the corresponding ticket is auto-closed upon merge. If you want to see verbose output, set `COMPILETEST_VERBOSE_CRASHES=1`."
test [crashes] tests\crashes\138262.rs ... FAILED
test [crashes] tests\crashes\138156.rs ... ok
test [crashes] tests\crashes\138534.rs ... ok
test [crashes] tests\crashes\138564.rs ... ok
test [crashes] tests\crashes\138707.rs ... ok
---

---- [crashes] tests\crashes\138262.rs stdout ----
------rustc.exe stdout------------------------------

------rustc.exe stderr------------------------------
error: cfi sanitizer is not supported for this target

error: aborting due to 1 previous error


------------------------------------------

error: crashtest no longer crashes/triggers ICE, hooray! Please give it a meaningful name, add a doc-comment to the start of the test explaining why it exists and move it to tests/ui or wherever you see fit. Adding 'Fixes #<issueNr>' to your PR description ensures that the corresponding ticket is auto-closed upon merge. If you want to see verbose output, set `COMPILETEST_VERBOSE_CRASHES=1`.

thread '[crashes] tests\crashes\138262.rs' panicked at src\tools\compiletest\src\runtest\crashes.rs:16:18:
fatal error
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
---- [crashes] tests\crashes\138262.rs stdout end ----
---
Currently active steps:
test::Crashes { test_compiler: Compiler { stage: 2, host: x86_64-pc-windows-msvc, forced_compiler: false }, target: x86_64-pc-windows-msvc } at src\bootstrap\src\core\build_steps\test.rs:1945
test::Compiletest { test_compiler: Compiler { stage: 2, host: x86_64-pc-windows-msvc, forced_compiler: false }, target: x86_64-pc-windows-msvc, mode: crashes, suite: "crashes", path: "tests/crashes", compare_mode: None } at src\bootstrap\src\core\build_steps\test.rs:1945
Build completed unsuccessfully in 1:28:11
make: *** [Makefile:115: ci-msvc-py] Error 1
  local time: Sun Aug 23 14:46:56 CUT 2026
  network time: Sun, 23 Aug 2026 14:46:56 GMT
##[error]Process completed with exit code 2.
##[group]Run echo "disk usage:"
echo "disk usage:"

@rust-bors rust-bors Bot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Aug 23, 2026
@rust-bors

rust-bors Bot commented Aug 23, 2026

Copy link
Copy Markdown
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:

@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 23, 2026
@rust-bors rust-bors Bot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Aug 23, 2026
@rust-bors

rust-bors Bot commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 5e1c04e failed: CI. Failed jobs:

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

Labels

rollup A PR which is a rollup S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.