about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-09-04compiler: Apply target features to the entry functionWANG Rui-10/+22
2025-09-04Document Cargo with in-tree rustdocJakub Beránek-24/+63
2025-09-04Merge pull request #2571 from emmet-horgan/bugfix-broken-linksTshepang Mbambo-10/+10
Fix some broken links
2025-09-04Auto merge of #145955 - bjorn3:lto_refactors4, r=nnethercotebors-155/+97
Rework how the codegen coordinator code handles the allocator shim Continuing from https://github.com/rust-lang/rust/pull/144503 this centralizes most handling of the allocator shim to a single 4 line block in the codegen coordinator. The allocator shim is small enough that making it go through the main codegen loop and spawning a worker thread for it is wasted effort.
2025-09-04Fix user facing stringEmmet Horgan-2/+2
Signed-off-by: Emmet Horgan <emmet.horgan@analog.com>
2025-09-04fixbendn-1/+1
2025-09-04triagebot: fix rustc_allow_const_fn_unstable matcherRalf Jung-1/+1
2025-09-04rustc_log: remove direct dep on tracing_coreklensy-2/+1
required features reexported from tracing
2025-09-04unpin tracing_coreklensy-4/+4
2025-09-04Update src/compiler-debugging.md emmet-horgan-1/+1
Change to public abi Co-authored-by: Tshepang Mbambo <hopsi@tuta.io>
2025-09-04Update src/appendix/code-index.md emmet-horgan-1/+1
Fix display string Co-authored-by: Tshepang Mbambo <hopsi@tuta.io>
2025-09-04Merge pull request #20607 from ChayimFriedman2/ns-dyn-mismatchChayim Refael Friedman-1/+22
internal: Add a regression test for a fixed new trait solver bug
2025-09-04Merge pull request #20606 from ChayimFriedman2/reborrow-config-typoChayim Refael Friedman-1/+1
fix: Fix typo in config
2025-09-04Add a regression test for a fixed new trait solver bugChayim Refael Friedman-1/+22
Not sure what exactly fixed it, but why not.
2025-09-04Fix typo in configChayim Refael Friedman-1/+1
To make it backwards-compatible.
2025-09-04Auto merge of #146192 - jhpratt:rollup-mam0bss, r=jhprattbors-133/+734
Rollup of 5 pull requests Successful merges: - rust-lang/rust#145682 (Promote aarch64-pc-windows-msvc to Tier 1) - rust-lang/rust#145690 (Implement Integer funnel shifts) - rust-lang/rust#146119 (compiletest: Implement an experimental `--new-output-capture` mode) - rust-lang/rust#146168 (Update bootstrap's dependencies to remove winapi and old windows-sys) - rust-lang/rust#146182 (Don't require next-solver `ProbeRef` to be `Copy`) r? `@ghost` `@rustbot` modify labels: rollup
2025-09-04Special case allocator module submission to avoid special casing it elsewherebjorn3-146/+79
A lot of places had special handling just in case they would get an allocator module even though most of these places could never get one or would have a trivial implementation for the allocator module. Moving all handling of the allocator module to a single place simplifies things a fair bit.
2025-09-04Ensure the allocator shim never participates in LTObjorn3-18/+13
Making it participate in LTO would be incorrect if you compile a crate as both a dylib (which needs it) and rlib (which must not include it) in the same rustc invocation. With linker plugin LTO, the allocator shim will still participate in LTO as it is safe to do so in that case.
2025-09-04Export __rdl_* symbols to the allocator shim when doing LTObjorn3-0/+14
2025-09-04add testbendn-0/+6
2025-09-04Add cfg_attr predicate completionA4-Tacks-1/+53
Example --- ```rust #[cfg_attr($0, must_use)] struct Foo; ```
2025-09-04improved solution for function is_non_auto_or_matchesFrancescoV1985-13/+11
2025-09-04Merge pull request #4564 from rust-lang/rustup-2025-09-04Ralf Jung-398/+924
Automatic Rustup
2025-09-04Rollup merge of #146182 - ChayimFriedman2:ns-probe, r=jackh726Jacob Pratt-8/+9
Don't require next-solver `ProbeRef` to be `Copy` rust-analyzer would like to use a non-interned `Probe` there. Also rename it to `Probe` for this reason. We can make it `Copy` (although then `Probe` will need to be `Clone` for rust-analyzer) but it seems just non-needed. r? types
2025-09-04Rollup merge of #146168 - dpaoliello:bootstrapdeps, r=jieyouxuJacob Pratt-34/+108
Update bootstrap's dependencies to remove winapi and old windows-sys Bumps `opener` to 0.8 and `junction` to 1.3 - this removes the dependency on `winapi` (unless the `build-metrics` feature is enabled) and replaces the usage of `windows-sys` 0.52 with 0.60. Together this means that bootstrap can now be built for Arm64EC.
2025-09-04Rollup merge of #146119 - Zalathar:capture, r=jieyouxuJacob Pratt-75/+275
compiletest: Implement an experimental `--new-output-capture` mode Thanks to the efforts on rust-lang/rust#140192, compiletest no longer has an unstable dependency on libtest, but it still has an unstable dependency on `#![feature(internal_output_capture)]`. That makes building compiletest more complicated than for most other bootstrap tools. This PR therefore adds opt-in support for an experimental compiletest mode that avoids the use of `internal_output_capture` APIs, and instead uses more mundane means to capture the output of individual test runners. Each `TestCx` now contains `&dyn ConsoleOut` references for stdout and stderr. All print statements in `compiletests::runtest` have been replaced with `write!` or `writeln!` calls that explicitly write to one of those trait objects. The underlying implementation then forwards to `print!` or `eprint!` (for `--no-capture` or old-output-capture mode), or writes to a separate buffer (in new-output-capture mode). --- Currently, new-output-capture is disabled by default. It can be explicitly enabled in one of two ways: - When running `x test`, pass `--new-output-capture=on` as a *compiletest* argument (after `--`). - E.g. `x test ui -- --new-output-capture=on`. - The short form is `-Non` or `-Ny`. - Set environment variable `COMPILETEST_NEW_OUTPUT_CAPTURE=on`. After some amount of opt-in testing, new-output-capture will become the default (with a temporary opt-out). Eventually, old-output-capture and `#![feature(internal_output_capture)]` will be completely removed from compiletest. r? jieyouxu
2025-09-04Rollup merge of #145690 - sayantn:integer-funnel-shift, r=tgross35Jacob Pratt-9/+338
Implement Integer funnel shifts Tracking issue: rust-lang/rust#145686 ACP: https://github.com/rust-lang/libs-team/issues/642 This implements funnel shifts on primitive integer types. Implements this for cg_llvm, with a fallback impl for everything else Thanks `@folkertdev` for the fixes and tests cc `@rust-lang/libs-api`
2025-09-04Rollup merge of #145682 - dpaoliello:arm64tier1, r=jieyouxuJacob Pratt-7/+4
Promote aarch64-pc-windows-msvc to Tier 1 Per <https://github.com/rust-lang/rfcs/pull/3817> Tracking issue: <https://github.com/rust-lang/rust/issues/145671>
2025-09-04Auto merge of #146176 - weihanglo:update-cargo, r=weihanglobors-0/+0
Update cargo submodule 12 commits in a6c58d43051d01d83f55a3e61ef5f5b2b0dd6bd9..761c4658d0079d607e6d33cf0c060e61a617cad3 2025-08-26 23:05:12 +0000 to 2025-09-04 01:25:01 +0000 - refactor(shell): Prepare for `Report`s being generated in more places (rust-lang/cargo#15920) - refactor(frontmatter): Pull out as a dedicated mod (rust-lang/cargo#15914) - chore: downgrade to libc@0.2.174 (rust-lang/cargo#15918) - fix(publish): Don't generate final artifacts (rust-lang/cargo#15910) - chore: Address most typos (rust-lang/cargo#15911) - chore(deps): update rust crate annotate-snippets to 0.12.1 (rust-lang/cargo#15909) - test(script): Switch frontmatter tests to end-to-end (rust-lang/cargo#15899) - chore: fix some typos and grammar (rust-lang/cargo#15905) - Update dependencies (rust-lang/cargo#15904) - feat: Don't stop at first error when emitting lints and warnings (rust-lang/cargo#15889) - fix(cli): Show the bad manifest path (rust-lang/cargo#15896) - chore(deps): update rust crate tracing-subscriber to v0.3.20 [security] (rust-lang/cargo#15898)
2025-09-03Update cargo submoduleWeihang Lo-0/+0
2025-09-04Merge ref '9385c64c95d9' from rust-lang/rustThe Miri Cronjob Bot-397/+923
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: 9385c64c95d971329e62917adc4349c8ccdbafe0 Filtered ref: 80818ce34771a13f1a67a706e7e283ba58bdc460 This merge was created using https://github.com/rust-lang/josh-sync.
2025-09-04Prepare for merging from rust-lang/rustThe Miri Cronjob Bot-1/+1
This updates the rust-version file to 9385c64c95d971329e62917adc4349c8ccdbafe0.
2025-09-04Implement compiletest `--new-output-capture`, in stable RustZalathar-2/+76
2025-09-04Auto merge of #146185 - Zalathar:rollup-n14lyv6, r=Zalatharbors-707/+2934
Rollup of 24 pull requests Successful merges: - rust-lang/rust#140459 (Add `read_buf` equivalents for positioned reads) - rust-lang/rust#143725 (core: add Peekable::next_if_map) - rust-lang/rust#145209 (Stabilize `path_add_extension`) - rust-lang/rust#145342 (fix drop scope for `super let` bindings within `if let`) - rust-lang/rust#145750 (raw_vec.rs: Remove superfluous fn alloc_guard) - rust-lang/rust#145827 (On unused binding or binding not present in all patterns, suggest potential typo of unit struct/variant or const) - rust-lang/rust#145932 (Allow `inline(always)` with a target feature behind a unstable feature `target_feature_inline_always`.) - rust-lang/rust#145962 (Ensure we emit an allocator shim when only some crate types need one) - rust-lang/rust#145963 (Add LSX accelerated implementation for source file analysis) - rust-lang/rust#146054 (add `#[must_use]` to `array::repeat`) - rust-lang/rust#146090 (Derive `PartialEq` for `InvisibleOrigin`) - rust-lang/rust#146112 (don't uppercase error messages) - rust-lang/rust#146120 (Correct typo in `rustc_errors` comment) - rust-lang/rust#146124 (Test `rustc-dev` in `distcheck`) - rust-lang/rust#146127 (Rename `ToolRustc` to `ToolRustcPrivate`) - rust-lang/rust#146131 (rustdoc-search: add test case for indexing every item type) - rust-lang/rust#146134 (llvm: nvptx: Layout update to match LLVM) - rust-lang/rust#146136 (docs(std): add missing closing code block fences in doc comments) - rust-lang/rust#146137 (Disallow frontmatter in `--cfg` and `--check-cfg` arguments) - rust-lang/rust#146140 (compiletest: cygwin follows windows in using PATH for dynamic libraries) - rust-lang/rust#146150 (fix(rustdoc): match rustc `--emit` precedence ) - rust-lang/rust#146155 (Make bootstrap self test parallel) - rust-lang/rust#146161 ([rustdoc] Uncomment code to add scraped rustdoc examples in loaded paths) - rust-lang/rust#146172 (triagebot: configure some pings when certain attributes are used) r? `@ghost` `@rustbot` modify labels: rollup
2025-09-03rustdoc-search: yet another stringdex optimization attemptMichael Howell-164/+647
This one's uses a different tactic. It shouldn't significantly increase the amount of downloaded index data, but still reduces the amount of disk usage. This one works by changing the suffix-only node representation to omit some data that's needed for checking. Since those nodes make up the bulk of the tree, it reduces the data they store, but also requires validating the match by fetching the name itself (but the names list is pretty small, and when I tried it with wordnet "indexing" it was about the same).
2025-09-04Rollup merge of #146172 - RalfJung:triagebot-keyword-mentions, r=UrgauStuart Cook-1/+21
triagebot: configure some pings when certain attributes are used Let's try this out in practice. :) Cc `@rust-lang/miri` `@rust-lang/wg-const-eval` `@Urgau`
2025-09-04Rollup merge of #146161 - GuillaumeGomez:loaded-paths-scraped-examples, ↵Stuart Cook-6/+4
r=lolbinarycat [rustdoc] Uncomment code to add scraped rustdoc examples in loaded paths Since the bug was fixed in https://github.com/rust-lang/rust/pull/146091, we can now uncomment the code. :) r? lolbinarycat
2025-09-04Rollup merge of #146155 - Shourya742:2025-09-03-make-test-run-parallel, r=KobzolStuart Cook-45/+25
Make bootstrap self test parallel This PR refactors the bootstrap self test: 1. Replaced the hardcoded --test-threads=1 with std::thread::available_parallelism(), allowing tests to run with the maximum concurrency supported by the system. 2. Replaced custom hacks around OUT_DIR with TempDir and introduced TestCtx to simplify configuration setup. r? `@Kobzol`
2025-09-04Rollup merge of #146150 - weihanglo:rustdoc-emit, r=aDotInTheVoidStuart Cook-2/+21
fix(rustdoc): match rustc `--emit` precedence Resolves rust-lang/rust#141664 This changes rustdoc's `--emit` to allow only one instance of each type, regardless of the actual data that `--emit` carries. This matches rustc's `--emit` behavior. As of the writing, only `dep-info` emit type carries extra data.
2025-09-04Rollup merge of #146140 - jeremyd2019:patch-1, r=jieyouxuStuart Cook-1/+1
compiletest: cygwin follows windows in using PATH for dynamic libraries `@Berrysoft`
2025-09-04Rollup merge of #146137 - Urgau:cfg-disallow-frontmatter, r=fmeaseStuart Cook-6/+65
Disallow frontmatter in `--cfg` and `--check-cfg` arguments This PR disallows the frontmatter syntax in `--cfg` and `--check-cfg` arguments. Fixes https://github.com/rust-lang/rust/issues/146130 r? fmease
2025-09-04Rollup merge of #146136 - ↵Stuart Cook-2/+7
AudaciousAxiom:docs/missing-closing-code-block-fences, r=tgross35 docs(std): add missing closing code block fences in doc comments This PR adds a few closing code block fences which I believe are missing in some doc comments. It seems that rustdoc just autocloses code blocks at the end of doc comments and thus these were easily overlooked: I do not think these code blocks are special in any way. I found these when working on a Clippy lint that checks the last sentence of doc comments for terminal punctuation, and these were failing cases when testing against the std. Therefore I am not entirely sure these are all such cases, but still have high hopes that they are (or at least a well-defined subset of them).
2025-09-04Rollup merge of #146134 - maurer:nvptx-sync, r=durin42Stuart Cook-1/+5
llvm: nvptx: Layout update to match LLVM LLVM upstream switched layouts to support 256-bit vector load/store. ``````@rustbot`````` label llvm-main r? durin42
2025-09-04Rollup merge of #146131 - notriddle:rustdoc-search-load-itemtype-test, ↵Stuart Cook-1/+171
r=GuillaumeGomez rustdoc-search: add test case for indexing every item type Test case for https://github.com/rust-lang/rust/pull/146117
2025-09-04Rollup merge of #146127 - Kobzol:rename-tool-rustc, r=jieyouxuStuart Cook-63/+71
Rename `ToolRustc` to `ToolRustcPrivate` I think that this name gets the point across much better. r? ````@jieyouxu````
2025-09-04Rollup merge of #146124 - Kobzol:distcheck-ext, r=jieyouxuStuart Cook-62/+99
Test `rustc-dev` in `distcheck` Adds a new `distcheck` test component. Fixes: https://github.com/rust-lang/rust/issues/138646 r? ``@jieyouxu`` try-job: x86_64-gnu-distcheck
2025-09-04Rollup merge of #146120 - smoelius:patch-3, r=lqdStuart Cook-1/+1
Correct typo in `rustc_errors` comment
2025-09-04Rollup merge of #146112 - scrabsha:push-utkysktvulto, r=WaffleLapkinStuart Cook-248/+248
don't uppercase error messages
2025-09-04Rollup merge of #146090 - Kobzol:invisible-origin-eq, r=petrochenkovStuart Cook-19/+21
Derive `PartialEq` for `InvisibleOrigin` For https://github.com/rust-lang/rust/pull/145354, we need `PartialEq` for `TokenStream` to "just work". However, due to the special comparison implementation that was used for `InvisibleOrigin`, this wasn't the case. So I derived `PartialEq` for `InvisibleOrigin`, and used the previous special comparison logic only on the single place where it was actually required. r? `````````@petrochenkov`````````
2025-09-04Rollup merge of #146054 - joboet:array-repeat-must_use, r=ibraheemdevStuart Cook-0/+1
add `#[must_use]` to `array::repeat`