Skip to content

Rollup of 9 pull requests - #148382

Closed
Zalathar wants to merge 23 commits into
rust-lang:masterfrom
Zalathar:rollup-3kuijsk
Closed

Rollup of 9 pull requests#148382
Zalathar wants to merge 23 commits into
rust-lang:masterfrom
Zalathar:rollup-3kuijsk

Conversation

@Zalathar

@ZalatharZalathar commented Nov 2, 2025

Copy link
Copy Markdown
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

yotamofekand others added 23 commits October 22, 2025 13:06
This "cleanup" function is more than a decade old, and I can't find any
evidence of modern-day bootstrap being able to pass any of these flags to
`--host-rustcflags` or `--target-rustcflags`.
There are probably plenty of tests that will check this incidentally, but it's
convenient to have a dedicated self-test.
In particular, this eliminates the cryptic `of: &TestPaths` parameters.
This method no longer returns a `TestPaths`, so the old name is no longer
appropriate.
…r=joboet
Implement `strip_circumfix` lib feature
Tracking issue: rust-lang#147946
split definition and use site hidden tys
Tracking this implicitly is kinda messy and easy to get wrong.
r? `@BoxyUwU`
compiletest: Remove `cleanup_debug_info_options`
This "cleanup" function is more than a decade old, and I can't find any evidence of modern-day bootstrap being able to pass any of these flags to `--host-rustcflags` or `--target-rustcflags`.
I thought about replacing the cleanup with an assertion, but I think it's better to delete it entirely for now, and re-add checks later if they're motivated by actual problems in practice.
In addition to deleting some old and confusing code, this also lets us remove three instances of duplicating `TestCx`, which is the biggest win.
r? jieyouxu
compiletest: Don't modify `testpaths` when creating aux contexts
Modifying `TestCx::testpaths` makes it vastly harder to reason about how compiletest is using test paths, and can be avoided without much trouble by simply passing explicit source-file paths into a small number of auxiliary-aware methods.
---
This PR was originally based on a much larger change that split `TestPaths` into multiple structs and multiple `TestCx` fields (as seen in early revisions of rust-lang#148160), but after further cleanups it turned out that very few tweaks were actually needed to avoid changes to `testpaths`.
r? jieyouxu
…fleLapkin
rustc_codegen: fix musttail returns for cast/indirect ABIs
Fixesrust-lang#148239rust-lang#144986
Explicit tail calls trigger `bug!` for any callee whose ABI returns via `PassMode::Cast`, and we forgot to to forward the hidden `sret` out-pointer when the ABI requested an indirect return. The former causes ICE, the latter produced malformed IR (wrong codegen) if the return value is large enough to need `sret`.
Updated the musttail helper to accept cast-mode returns, made it so that we pass the return pointer through the tail-call path.
Added two UI tests to demonstrate each case.
This is my first time contributing, please do check if I did it right.
r? theemathas
…ercote
Do not emit solver errors that contain error types
any follow-up errors are going to either be duplicates or often disappear if the error itself is fixed.
in this PR it mostly silences dyn-compat errors as all the other errors are already deduplicated outside of the test suite. The dyn compat errors are independent errors and I think if the dyn compatiblity depended on an error type it would not actually show, so this is PR is actually silencing independent errors, too.
I am opening this PR because I am seeing lots of `{type error}: const Trait` errors when adding more const checking. So instead of targetting just those specific errors, I wanted to try out fully avoiding such errors near the trait solver.
cc ``@rust-lang/types`` for thoughts
temporary-lifetime-extension.rs test works in all editions
…r=Noratrieb
docs: makes a note about possible building `rustc 1.91.0 + host tools` for win7
I have make notes in docs that there is possible to build host tools for target `x86_64-win7-windows-msvc`.
<img width="668" height="331" alt="image" src="https://github.com/user-attachments/assets/0335bc72-963c-4bfd-9910-61963dbf7dd7" />
r? ````@roblabla````
````@rustbot```` label A-docs O-windows-7
P.S. prebuilt binaries can be found [here](https://github.com/Fenex/rust-win7/releases).
…ouxu
Use --print host-tuple to get the host
`--print host-tuple` has been available since 1.84 so there's no longer a need to parse the output of `-vV`. Especially since this script is shipped with the toolchain.
@rustbotrustbot added A-compiletest Area: The compiletest test runner A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-testsuite Area: The testsuite used to check the correctness of rustc F-explicit_tail_calls `#![feature(explicit_tail_calls)]` 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. labels Nov 2, 2025
@rustbotrustbot added T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) rollup A PR which is a rollup labels Nov 2, 2025
@Zalathar

Copy link
Copy Markdown
MemberAuthor

Rollup of everything not in #148380, while we track down an armhf-gnu failure.

@bors r+ rollup=never p=5

@bors

bors commented Nov 2, 2025

Copy link
Copy Markdown
Collaborator

📌 Commit 3f6761b has been approved by Zalathar

It is now in the queue for this repository.

@borsbors 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 Nov 2, 2025
@bors

bors commented Nov 2, 2025

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 3f6761b with merge be15aaf...

bors added a commit that referenced this pull request Nov 2, 2025
Rollup of 9 pull requests
Successful merges:
- #147947 (Implement `strip_circumfix` lib feature)
- #148170 (split definition and use site hidden tys)
- #148194 (compiletest: Remove `cleanup_debug_info_options`)
- #148199 (compiletest: Don't modify `testpaths` when creating aux contexts)
- #148240 (rustc_codegen: fix musttail returns for cast/indirect ABIs)
- #148290 (Do not emit solver errors that contain error types)
- #148357 (temporary-lifetime-extension.rs test works in all editions)
- #148362 (docs: makes a note about possible building `rustc 1.91.0 + host tools` for win7)
- #148367 (Use --print host-tuple to get the host)
r? `@ghost`
`@rustbot` modify labels: rollup
@borsbors mentioned this pull request Nov 2, 2025
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
---- [ui] tests/ui/explicit-tail-calls/become-indirect-return.rs stdout ----
error: test compilation failed although it shouldn't!
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/explicit-tail-calls/become-indirect-return.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=wasm32-wasip1" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/explicit-tail-calls/become-indirect-return/a.wasm" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/wasm32-wasip1/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error: <unknown>:0:0: in function _ZN22become_indirect_return8dispatch17h7543d969c4d22acaE void (ptr, ptr): WebAssembly 'tail-call' feature not enabled
error: aborting due to 1 previous error
------------------------------------------

@bors

bors commented Nov 2, 2025

Copy link
Copy Markdown
Collaborator

💔 Test failed - checks-actions

@borsbors 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 Nov 2, 2025
@rustbotrustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Nov 2, 2025
@Zalathar
Zalathar deleted the rollup-3kuijsk branch November 2, 2025 09:14
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-compiletestArea: The compiletest test runnerA-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.A-testsuiteArea: The testsuite used to check the correctness of rustcF-explicit_tail_calls`#![feature(explicit_tail_calls)]`rollupA PR which is a rollupT-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-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.WG-trait-system-refactorThe Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

12 participants

@Zalathar@bors@rust-log-analyzer@matthiaskrgr@rustbot@yotamofek@InvalidPathException@oli-obk@lcnr@tshepang@Fenex@ChrisDenton