about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-08-06Fix CSS indentGuillaume Gomez-12/+12
2025-08-06Add annotations to the graphviz region graph on region originsAmanda Stjerna-1/+15
This adds - (ex) for regions whose origin is existential, - (p) for regoins whose origin is a placeholder, and - (p for <name>) if the originating placeholder is named. This has helped _my_ debugging and it doesn't create too bad clutter, I feel. The change is ridiculously small, but I turned it into a separate PR so we can bikeshed the format.
2025-08-06expand the issue template for new lints (#15336)Philipp Krones-0/+21
When I first tried contributing to clippy, I encountered the problem that a lot of lint suggestions overlapped with existing lints, so I would spend a bunch of time implementing something only to figure out it wasn't actually needed. The "comparison with existing lints" field should hopefully reduce this somewhat, while not incresing the burden of requesting a new lint too much due to not being mandatory. changelog: none
2025-08-06Auto merge of #143684 - nikic:llvm-21, r=cuviperbors-3/+5
Update to LLVM 21 Timeline: LLVM 21.1.0 is scheduled to release on Aug 26th. Rust 1.90 branches on Aug 1st and releases September 18. Depends on: * [x] https://github.com/llvm/llvm-project/issues/147781 * [x] https://github.com/llvm/llvm-project/issues/147935 * [x] https://github.com/llvm/llvm-project/issues/139443 * [x] https://github.com/llvm/llvm-project/pull/148207 * [x] https://github.com/llvm/llvm-project/pull/148607 * [x] https://github.com/llvm/llvm-project/pull/149046 * [x] https://github.com/llvm/llvm-project/issues/149097 * [x] https://github.com/rust-lang/rust/pull/144116 r? `@ghost`
2025-08-06Rename some `PrettyPrinter` methods.Nicholas Nethercote-33/+33
More consistency.
2025-08-06Rename some `Printer` methods.Nicholas Nethercote-61/+71
I find these name clearer, and starting them all with `print_` makes things more consistent.
2025-08-06run-make: Allow blessing snapshot files that don't exist yetZalathar-1/+10
This makes it possible to bless the snapshot files used by `diff()` in newly-created run-make tests, without having to create the files manually beforehand.
2025-08-06Move `should_truncate` from trait `Printer` to sub-trait `PrettyPrinter`.Nicholas Nethercote-8/+8
It's not used in `Printer`.
2025-08-06Add comments to `Printer`.Nicholas Nethercote-17/+39
These details took me some time to work out.
2025-08-05Fix some doc links for intrinsicsEric Huss-4/+4
This fixes a few intrinsic docs that had a link directly to itself instead of to the correct function in the `mem` module.
2025-08-06Fortify generic param default checksLeón Orell Valerian Liehr-285/+297
2025-08-05Do not lint for `wildcard_imports` in external macro (#15413)Alejandra González-4/+26
Fixes rust-lang/rust-clippy#15412 changelog: [`wildcard_imports`]: do not lint code coming from an external macro
2025-08-05`File::set_times`: Add documentation about setting directory timestampsJosh Triplett-0/+4
Inspired by https://github.com/rust-lang/rust/issues/123883 .
2025-08-05`File::set_times`: Remove `write(true)` from the example so it works on ↵Josh Triplett-1/+1
directories Inspired by https://github.com/rust-lang/rust/issues/123883 .
2025-08-05Merge pull request #20384 from vxpm/fix-external-docsChayim Refael Friedman-1/+26
fix external docs for exported macros
2025-08-05configure: Use `CARGO_CFG_*_{F16,F128}` rather than invoking rustcTrevor Gross-47/+10
Currently we run the `rustc` from the `RUSTC` environment variable to figure out whether or not to enable `f16` and `f128`, based on the `target_has_reliable_{f16,f128}` config. However, this does not know about the codegen backend used, and the backend isn't trivial to check in a build script (usually it gets set via `RUSTFLAGS`). It turns out we don't actually need to run `rustc` here: Cargo unconditionally emits all config from the relevant compiler as `CARGO_CFG_*` variables, regardless of whether or not they are known options. Switch to checking these for setting config rather than invoking `rustc`. As an added advantage, this will work with target.json files without any special handling. Fixes: ed17b95715dd ("Use the compiler to determine whether or not to enable `f16` and `f128`")
2025-08-05Merge pull request #2534 from skrobchik/patch-1Manuel Drehwald-1/+1
Update installation.md
2025-08-05fix external docs for exported macrosvinícius x-1/+26
add test
2025-08-05add code example showing that file_prefix treats dotfiles as the name of a ↵The 8472-0/+2
file, not an extension
2025-08-05Renamed `isolate_most_least_significant_one` functionsokaneco-38/+38
libs-api has agreed to rename these functions to `isolate_highest_one`/`isolate_lowest_one`
2025-08-05rustdoc: fix caching of intra-doc links on reexportsbinarycat-2/+60
2025-08-05Add aarch64_be-unknown-none-softfloat targetJens Reidel-0/+123
Signed-off-by: Jens Reidel <adrian@travitia.xyz>
2025-08-05Add `std::ascii::Char` `MIN` and `MAX` constantsChai T. Rex-0/+8
2025-08-05Add `u8`-as-ASCII methods to `core::ascii::Char`Chai T. Rex-1/+603
2025-08-05Auto merge of #144863 - cjgillot:live-or-dead, r=Urgaubors-274/+199
Simplify dead code lint This PR scratches a few itches I had when looking at that code. The perf improvement comes from keeping the `scanned` set through several marking phases. This pretty much divides by 2 the number of HIR traversals.
2025-08-05Fix description of unsigned `checked_exact_div`Michael Tautschnig-12/+6
Like its signed counterpart, this function does not panic. Also, fix the examples to document how it returns Some/None.
2025-08-05Dynamically enable LSE for aarch64 rust provided intrinsicsPaul Murphy-0/+27
Create a private module to hold the bootstrap code needed enable LSE at startup on aarch64-*-linux-* targets when rust implements the intrinsics. This is a bit more heavyweight than compiler-rt's LSE initialization, but has the benefit of initializing the aarch64 cpu feature detection for other uses. Using the rust initialization code does use some atomic operations, that's OK. Mixing LSE and non-LSE operations should work while the update flag propagates.
2025-08-05compiler-builtins: plumb LSE support for aarch64 on linuxPaul Murphy-10/+66
Add dynamic support for aarch64 LSE atomic ops on linux targets when optimized-compiler-builtins is not enabled. A hook, __enable_rust_lse, is provided for the runtime to enable them if available. A future patch will use this to enable them if available. The resulting asm should exactly match that of LLVM's compiler-rt builtins, though the symbol naming for the support function and global does not.
2025-08-05Merge pull request #20381 from A4-Tacks/fix-assign-sugChayim Refael Friedman-0/+82
Add assignment type analysis for ide-completion
2025-08-05Stabilize `core::iter::chain`Ross MacArthur-6/+3
2025-08-05commentsKivooeo-73/+84
2025-08-05moved 35 tests to organized locationsKivooeo-0/+0
2025-08-05fix &str type check in `from_str_radix_10`Zihan-3/+35
changelog: none Signed-off-by: Zihan <zihanli0822@gmail.com>
2025-08-05Use runtimes build for host compiler-rt buildNikita Popov-1/+3
The project build for compiler-rt is deprecated. The runtimes build will use the just-built clang. As such, we also need to pass --gcc-toolchain to the runtimes build, so that it can find the GCC installation.
2025-08-05fix(unicode-table-generator): fix duplicated unique indicesMarco Cavenati-1/+1
unicode-table-generator panicked while populating distinct_indices because of duplicated indices. This was introduced by swapping the order of canonical_words.push(...) and canonical_words.len().
2025-08-05Add regression tests for seemingly fixed issuesShoyu Vanilla-0/+73
2025-08-05we only merge candidates for trait and normalizes-to goalslcnr-69/+48
2025-08-05Change prev whitespace to prev triviaA4-Tacks-3/+3
2025-08-05Gate const trait syntaxLeón Orell Valerian Liehr-3/+29
2025-08-05Ignore sleep_until test on SGXRaoul Strackx-0/+1
2025-08-05Fix `unnecessary_sort_by` lint method consistency in message and suggestion ↵Samuel Tardieu-42/+48
(#15416) The `unnecessary_sort_by` lint displays different method names in message and suggestion, which is a bit confusing. Also got a question about `UNNECESSARY_SORT_BY` lint definition. Should we extend its message to also cover *_unstable_* methods? changelog: [`unnecessary-sort-by`]: sort method consistency in message and suggestion
2025-08-05Mark all deprecation lints in name resolution as deny-by-default and ↵Vadim Petrochenkov-42/+297
report-in-deps
2025-08-05fix: unnecessary_sort_by lint method consistency in message and suggestionHuterenok-42/+48
2025-08-05Move `cognitive_complexity` lint from `nursery` to `restriction` (#15415)Philipp Krones-1/+1
changelog: [`cognitive_complexity`]: move the lint from `nursery` to the `restriction` r? @flip1995
2025-08-05Move `cognitive_complexity` lint from `nursery` to `restriction`Samuel Tardieu-1/+1
2025-08-05Generate lint count in template (#15414)Samuel Tardieu-14/+8
Removes the pop-in of the element on page load changelog: none
2025-08-05Generate lint count in templateAlex Macleod-14/+8
2025-08-05Auto merge of #144303 - Kobzol:bootstrap-tool-cleanup, r=jieyouxubors-453/+744
Consolidate staging for `rustc_private` tools This PR continues bootstrap refactoring, this time by consolidating staging for `Mode::ToolRustc` tools. This refactoring was in the critical path of refactoring `test`/`dist`/`clippy`/`doc` steps, and getting rid of the rmeta/rlib sysroot copy, because tools are pervasive and they are being used for a lot of things in bootstrap. The main idea is to explicitly model the fact that a stage N `Mode::ToolRustc` tool always works with two different compilers: - Stage N-1 rustc (`build_compiler`) builds stage N rustc (`target_compiler`) - Rlib artifacts from stage N rustc are copied to the sysroot of stage N-1 rustc - Stage N-1 rustc builds the (stage N) tool itself, the tool links to the rlib artifacts of the stage N rustc Before, the code often used `compiler`, which meant sometimes the build compiler, sometimes the target compiler, and sometimes neither (looking at you, `download-rustc`). This is especially annoying when you get to a situation where you have an install step that invokes a dist step that invokes a tool build step, where *some* compiler is being propagated through, without it being clear what does that compiler represent. This refactoring hopefully makes that clearer and more explicit. It also gets rid of a few `builder.ensure(Rustc(...))` calls within bootstrap, which is always nice. `Rustdoc` needs to be handled a bit specially, because it acts as a compiler itself, I documented that in the changes. It wasn't practical to do these refactorings in multiple PRs, so I did it all in one PR. The meat of the change is 9ee6d1c1ed112c3dcfb5684b33772b136df0dca3. I tested manually that `x build rustdoc` and `x build miri` still works even with `download-rustc`, although I cannot promise any extra support for `download-rustc`, IMO we will just have to reimplement it from scratch in a different way. As usually, I did some drive-by refactorings to bootstrap, trying to document and clarify things, add more step metadata and tests. Since these changes broke Cargo, which was incorrectly using `Mode::ToolRustc`, I also changed cargo to `ToolTarget` in this PR. Best reviewed commit-by-commit (note that I renamed `link_compiler` to `target_compiler`, in accordance to the rest of bootstrap, in the last commit). r? `@jieyouxu` try-job: x86_64-gnu-aux try-job: x86_64-msvc-ext1
2025-08-05Merge pull request #1896 from folkertdev/add-flags-into-iterSayantan Chakraborty-10/+11
`intrinsic-test`: use `IntoIterator` for the `add_flags` methods
2025-08-05use `IntoIterator` for the `add_flags` methodsFolkert de Vries-10/+11