about summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2025-04-15feat: highlight tail expression in labeled blockroifewu-0/+29
2025-04-15compiletest: Add an experimental new executor to replace libtestZalathar-11/+451
The new executor can be enabled by passing `--new-executor` or `-n` to compiletest. For example: `./x test ui -- -n`
2025-04-15compiletest: Extract libtest-specific executor code to a submoduleZalathar-103/+113
2025-04-15fix: `Extract into function include inline variable in fmt macroHayashi Mikihiro-14/+71
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
2025-04-14Remove incorrect doc commentTyler Breisacher-1/+0
2025-04-15Move `name` field from `AssocItem` to `AssocKind` variants.Nicholas Nethercote-6/+6
To accurately reflect that RPITIT assoc items don't have a name. This avoids the use of `kw::Empty` to mean "no name", which is error prone. Helps with #137978.
2025-04-15Move `opt_rpitit_info` field to `hir::AssocKind::Type`.Nicholas Nethercote-1/+1
From `hir::AssocItem`.
2025-04-14Rollup merge of #139813 - RalfJung:miri-sync, r=RalfJungMatthias Krüger-14/+42
Miri subtree update r? `@ghost` Fixes build failures on macOS
2025-04-14Rollup merge of #139757 - ognevny:opt-dist-hostllvm, r=KobzolMatthias Krüger-1/+3
opt-dist: use executable-extension for host llvm-profdata because it's used for target llvm-profdata too r? Kobzol
2025-04-14Merge pull request #19583 from Kobzol/revert-19582-ci-pgoLukas Wirth-2/+0
Do not perform PGO on Linux CI
2025-04-14Do not enable PGO in combination with zigbuildJakub Beránek-2/+0
2025-04-14Merge pull request #19568 from snprajwal/destructure-struct-editorLukas Wirth-99/+76
refactor: editor for `destructure_struct_binding`
2025-04-14Disable some r-a tests in bootstrap.Mara Bos-0/+2
2025-04-14Merge pull request #19572 from snprajwal/expand-rest-patternLukas Wirth-53/+66
refactor: migrate `expand_rest_pattern` to editor
2025-04-14Merge pull request #19582 from Kobzol/ci-pgoLukas Wirth-9/+104
Distribute x64 and aarch64 Linux builds with PGO optimizations
2025-04-14Expose Pointer to/from AllocId conversion functions, make some arguments ↵Patrick-6-49/+62
optional
2025-04-14Merge pull request #19569 from snprajwal/fixmesLukas Wirth-75/+79
fix(ast): return correct types for `make::expr_*` methods
2025-04-14Merge pull request #19578 from clouds56-contrib/drive-letterLukas Wirth-12/+35
add normalizeDriveLetter
2025-04-14Merge pull request #19521 from snprajwal/ciLukas Wirth-4/+16
ci: cancel parallel jobs if test fails
2025-04-14Merge pull request #19579 from ChayimFriedman2/cyclic-closureLukas Wirth-7/+65
fix: Prevent panics when there is a cyclic dependency between closures
2025-04-14Use PGO for x64 and aarch64 Linux builds on CIJakub Beránek-3/+6
2025-04-14Add `xdist dist --pgo` command to build Rust Analyzer with PGO optimizationsJakub Beránek-6/+98
2025-04-14Auto merge of #139781 - jhpratt:rollup-qadsjvb, r=jhprattbors-434/+410
Rollup of 9 pull requests Successful merges: - #138336 (Improve `-Z crate-attr` diagnostics) - #139636 (Encode dep node edge count as u32 instead of usize) - #139666 (cleanup `mir_borrowck`) - #139695 (compiletest: consistently use `camino::{Utf8Path,Utf8PathBuf}` throughout) - #139699 (Proactively update coroutine drop shim's phase to account for later passes applied during shim query) - #139718 (enforce unsafe attributes in pre-2024 editions by default) - #139722 (Move some things to rustc_type_ir) - #139760 (UI tests: migrate remaining compile time `error-pattern`s to line annotations when possible) - #139776 (Switch attrs to `diagnostic::on_unimplemented`) r? `@ghost` `@rustbot` modify labels: rollup
2025-04-14Move `has_self` field to `hir::AssocKind::Fn`.Nicholas Nethercote-19/+17
`hir::AssocItem` currently has a boolean `fn_has_self_parameter` field, which is misplaced, because it's only relevant for associated fns, not for associated consts or types. This commit moves it (and renames it) to the `AssocKind::Fn` variant, where it belongs. This requires introducing a new C-style enum, `AssocTag`, which is like `AssocKind` but without the fields. This is because `AssocKind` values are passed to various functions like `find_by_ident_and_kind` to indicate what kind of associated item should be searched for, and having to specify `has_self` isn't relevant there. New methods: - Predicates `AssocItem::is_fn` and `AssocItem::is_method`. - `AssocItem::as_tag` which converts `AssocItem::kind` to `AssocTag`. Removed `find_by_name_and_kinds`, which is unused. `AssocItem::descr` can now distinguish between methods and associated functions, which slightly improves some error messages.
2025-04-14Use `Symbol` in `LateContext::get_associated_type`.Nicholas Nethercote-8/+8
To avoid unnecessary interning.
2025-04-14Prevent panics when there is a cyclic dependency between closuresChayim Refael Friedman-7/+65
We didn't include them in the sorted closures list, therefore didn't analyze them, then failed to find them.
2025-04-13Rollup merge of #139695 - jieyouxu:compiletest-utf8path, r=KobzolJacob Pratt-434/+410
compiletest: consistently use `camino::{Utf8Path,Utf8PathBuf}` throughout compiletest already practically assumes UTF-8 paths everywhere. Use `camino`'s `{Utf8Path,Utf8PathBuf}` consistently throughout compiletest to enforce UTF-8 path assumptions. r? ```@Kobzol``` (or compiler/bootstrap)
2025-04-14Auto merge of #124141 - ↵bors-7/+7
nnethercote:rm-Nonterminal-and-TokenKind-Interpolated, r=petrochenkov Remove `Nonterminal` and `TokenKind::Interpolated` A third attempt at this; the first attempt was #96724 and the second was #114647. r? `@ghost`
2025-04-14fix formatClouds Flowing-2/+8
2025-04-14add normalizeDriveLetterClouds Flowing-12/+29
2025-04-14Ignore errors from rustfmt which may trigger error notificationyukang-1/+5
2025-04-14Remove rustc_on_unimplemented on impl testsmejrs-1/+0
2025-04-13rustdoc-gui-test: pass a `camino::Utf8PathBuf` to `compiletest`Jieyou Xu-1/+6
2025-04-13compiletest: consistently use `{Utf8Path,Utf8PathBuf}`Jieyou Xu-433/+403
Since compiletest already assumes UTF-8 paths and does not try to be robust against non-UTF-8 paths.
2025-04-13compiletest: add `camino` for UTF-8 path handlingJieyou Xu-0/+1
2025-04-13Rollup merge of #139721 - dtolnay:stage0newline, r=onur-ozkanChris Denton-12/+13
End all lines in src/stage0 with trailing newline Most tools that process text files prefer if every line ends in \n. Text files without the last newline are aberrant and usually not what you want. **Before:** ```console $ cat src/stage0 src/stage0 dist_server=https://static.rust-lang.org artifacts_server=https://ci-artifacts.rust-lang.org/rustc-builds ... dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.gz=986f6c594d37bcbd3833e053640ba8775f68d26a65c5618386654ef55d7b3542 dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.xz=c0d9a88c30d2ab38ec3a11fabb5515ed9bc3ac1a8e35a438d68bf7ff82f6b843dist_server=https://static.rust-lang.org artifacts_server=https://ci-artifacts.rust-lang.org/rustc-builds ... dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.gz=986f6c594d37bcbd3833e053640ba8775f68d26a65c5618386654ef55d7b3542 dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.xz=c0d9a88c30d2ab38ec3a11fabb5515ed9bc3ac1a8e35a438d68bf7ff82f6b843$ ▌ ``` **After:** ```console $ cat src/stage0 src/stage0 dist_server=https://static.rust-lang.org artifacts_server=https://ci-artifacts.rust-lang.org/rustc-builds ... dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.gz=986f6c594d37bcbd3833e053640ba8775f68d26a65c5618386654ef55d7b3542 dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.xz=c0d9a88c30d2ab38ec3a11fabb5515ed9bc3ac1a8e35a438d68bf7ff82f6b843 dist_server=https://static.rust-lang.org artifacts_server=https://ci-artifacts.rust-lang.org/rustc-builds ... dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.gz=986f6c594d37bcbd3833e053640ba8775f68d26a65c5618386654ef55d7b3542 dist/2025-04-02/rustc-nightly-x86_64-unknown-netbsd.tar.xz=c0d9a88c30d2ab38ec3a11fabb5515ed9bc3ac1a8e35a438d68bf7ff82f6b843 $ ▌ ```
2025-04-13Rollup merge of #139618 - petrochenkov:virsugg, r=jieyouxuChris Denton-38/+18
compiletest: Make `SUGGESTION` annotations viral If one of them is expected in a test file, then others should be annotated as well, in the same way as with `HELP`s and `NOTE`s. This doesn't require much of an additional annotation burden, but simplifies the rules. r? ```@jieyouxu```
2025-04-13Rollup merge of #139605 - oyvindln:update_miniz_oxide_0_8, r=Mark-SimulacrumChris Denton-4/+4
update ```miniz_oxide``` to 0.8.8 I would normally let the auto actions handle this but it turns out 0.8.7 can trigger a panic when debug assertions are enabled in a few cases so I feel it's important it gets sorted more quickly. (and I would ideally like to yank that version but was worried that could cause some issues had been pulled in as a dependency by this repo already before I discovered the problem) As it can only happen when debug assertions are enabled (the overflow results in the intended result so it doesn't cause any issue in release mode) and using the wrapping buffer mode when decompressing it is very unlikely to cause any issues here but I would like to get it sorted just to be safe. ```miniz_oxide``` is used in the standard library (and some tools) via ```backtrace-rs ``` which doesn't use a wrapping buffer, and thus won't trigger this condition. There does however seem like there are some tools that do dependency on ```flate2``` which does use ```miniz_oxide``` decompression using a a wrapping buffer and could in theory trigger it if they are run when compiled with debug assertions enabled. It's kinda unclear what version what tool uses though as several of them specify older versions of flate2 which depended on ```miniz_oxide``` 0.7.x in cargo.toml, and ```miniz_oxide```, and not all have a cargo.lock and due to an older version of ```backtrace``` being in the root Cargo.lock which still depended on ```miniz_oxide``` 0.7.4, so that version is also pulled in alongside the newer version.
2025-04-13internal: Render sigantures with view hir commandLukas Wirth-44/+146
2025-04-13cargo updategithub-actions-18/+18
compiler & tools dependencies: Locking 11 packages to latest compatible versions Updating bstr v1.11.3 -> v1.12.0 Updating clap v4.5.35 -> v4.5.36 Updating clap_builder v4.5.35 -> v4.5.36 Updating crossbeam-channel v0.5.14 -> v0.5.15 Updating jiff v0.2.5 -> v0.2.6 Updating jiff-static v0.2.5 -> v0.2.6 Updating jsonpath-rust v1.0.0 -> v1.0.1 Updating linux-raw-sys v0.9.3 -> v0.9.4 Updating miniz_oxide v0.8.7 -> v0.8.8 Updating self_cell v1.1.0 -> v1.2.0 Updating winnow v0.7.4 -> v0.7.6 note: pass `--verbose` to see 38 unchanged dependencies behind latest library dependencies: Locking 1 package to latest compatible version Updating miniz_oxide v0.8.7 -> v0.8.8 note: pass `--verbose` to see 4 unchanged dependencies behind latest rustbook dependencies: Locking 9 packages to latest compatible versions Updating bstr v1.11.3 -> v1.12.0 Updating cc v1.2.18 -> v1.2.19 Updating clap v4.5.35 -> v4.5.36 Updating clap_builder v4.5.35 -> v4.5.36 Updating jiff v0.2.5 -> v0.2.6 Updating jiff-static v0.2.5 -> v0.2.6 Updating linux-raw-sys v0.9.3 -> v0.9.4 Updating miniz_oxide v0.8.7 -> v0.8.8 Updating winnow v0.7.4 -> v0.7.6
2025-04-12store the kind of pattern adjustments in `pat_adjustments`dianne-1/+1
This allows us to better distinguish builtin and overloaded implicit dereferences.
2025-04-12Rollup merge of #139382 - ChrisDenton:windows-bindgen-0-61, r=Mark-SimulacrumChris Denton-1/+1
Update windows-bindgen to 0.61.0 This updates the automatically generate Windows API bindings. Not much changed this time: - There's now `Default` implementations for many types, which is convenient. It does however conflict with one place where we implemented a non-zeroed default (to set the length field). But that's no big problem. - The `--no-core` flag has been renamed to `--no-deps` to more accurately reflect its meaning (i.e. generate all necessary code without requiring additional dependencies). - The `--link` flag allows us to set the location of the `link!` macro. Currently we use our workspace's `windows_targets` crate but we could move it into library/std using `--link`. However, this would need to be co-ordinated with the `backtrace` crate (which is a separate crate but included in std using `#[path]`). So I've left that for another time.
2025-04-12Rollup merge of #139315 - clubby789:deranged-bump, r=Mark-SimulacrumChris Denton-6/+3
Switch `time` to `jiff` for time formatting in ICE dumps Due to https://github.com/jhpratt/deranged/issues/21, Clippy, R-A and Miri currently fail to build if we bump to 0.4.1, pulled in via `time`. ~~Add some specific type annotations so we don't have to just pin it.~~ ~~I can open 3 PRs to the tool repos if preferred, but I thought it might be easier to do this than to pin the transitive dep and go back and remove it once the changes are synced back.~~
2025-04-12End all lines in src/stage0 with trailing newlineDavid Tolnay-12/+13
2025-04-12Auto merge of #139242 - jieyouxu:run-make-artifact-names-cross, r=Kobzolbors-13/+40
run-make-support: Calculate artifact names for target platform, not host platform This was implemented incorrectly during the porting process, where we relied on std consts. However, `run-make-support` is a host-only library, which meant that these artifact names were for the *host* and not the *target*. Helps with #138066. r? `@Kobzol` try-job: armhf-gnu try-job: test-various try-job: x86_64-msvc-1 try-job: i686-msvc-1 try-job: x86_64-mingw-1 try-job: aarch64-apple try-job: x86_64-apple-1
2025-04-12opt-dist: use executable-extension for host llvm-profdataMaksim Bondarenkov-1/+3
so the merging step doesn't fail for `opt-dist local` on Windows
2025-04-12run-make-support: fix artifact name calculations for targetJieyou Xu-13/+40
This was implemented incorrectly during the porting process, where we relied on std consts. However, `run-make-support` is a host-only library, which meant that these artifact names were for the *host* and not the *target*.
2025-04-12fmtThe Miri Cronjob Bot-1/+1
2025-04-12Merge from rustcThe Miri Cronjob Bot-74/+283
2025-04-12Preparing for merge from rustcThe Miri Cronjob Bot-1/+1