about summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2025-06-04match on segments of path and some small cleanupRyan Mehri-23/+14
2025-06-04refactor: Cleanup descension stuffLukas Wirth-35/+46
2025-06-04Merge pull request #19922 from Veykril/push-oxyomxrsplpxLukas Wirth-217/+405
feat: Add `dyn` keyword inlay hints
2025-06-04feat: Add `dyn` keyword inlay hintsLukas Wirth-2/+142
2025-06-04Give path segment type anchors their own grammar ruleLukas Wirth-158/+223
2025-06-04Remove unnecessary parameters in inlay-hint computationLukas Wirth-58/+41
2025-06-04Merge pull request #4372 from nia-e/multiple-native-libsOli Scherer-57/+70
native-lib: allow multiple libraries and/or dirs
2025-06-04Merge pull request #19913 from ↵Laurențiu Nicola-3/+3
rust-lang/dependabot/npm_and_yarn/editors/code/tar-fs-2.1.3 chore(deps): bump tar-fs from 2.1.2 to 2.1.3 in /editors/code
2025-06-04Merge pull request #19914 from ↵Lukas Wirth-0/+253
davidbarsky/davidbarsky/add-some-additional-incrementalism-tests hir-ty: add incremental tests checking for `infer` invalidation
2025-06-04ci: Pin `cargo-workspaces` version to `0.3.6`, againShoyu Vanilla-2/+2
2025-06-04fix: Typo mistake in autopublish workflowShoyu Vanilla (Flint)-1/+1
2025-06-04Rollup merge of #141871 - nia-e:fix-bitset, r=eholkMatthias Krüger-4/+1
index: add method for checking range on DenseBitSet Micro-optimisation that Miri benefits from with the new isolated allocator for native-libs mode. Also possibly just a useful method to have on `DenseBitSet`
2025-06-04ci: When autopublishing, remove `xtask` from workspaceShoyu Vanilla (Flint)-3/+3
Revert `cargo-workspaces` version fix
2025-06-04Merge from rustcThe Miri Cronjob Bot-667/+3459
2025-06-04Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2025-06-04Merge pull request #19915 from ShoyuVanilla/publish-libs-crashLaurențiu Nicola-1/+1
ci: Pin `cargo-workspaces` to `0.3.6`
2025-06-03Auto merge of #141984 - matthiaskrgr:rollup-wy6j9ca, r=matthiaskrgrbors-339/+388
Rollup of 8 pull requests Successful merges: - rust-lang/rust#137725 (Add `iter` macro) - rust-lang/rust#141455 (std: abort the process on failure to allocate a TLS key) - rust-lang/rust#141569 (Replace ad-hoc ABI "adjustments" with an `AbiMap` to `CanonAbi`) - rust-lang/rust#141698 (Use the informative error as the main const eval error message) - rust-lang/rust#141925 (Remove bootstrap cfgs from library/) - rust-lang/rust#141943 (Remove pre-expansion AST stats.) - rust-lang/rust#141945 (Remove `Path::is_ident`.) - rust-lang/rust#141957 (Add missing `dyn` keywords to tests that do not test for them Part 2) r? `@ghost` `@rustbot` modify labels: rollup
2025-06-04index: add method for checking range on DenseBitSetNia Espera-4/+1
2025-06-03Rollup merge of #141698 - oli-obk:ctfe-err-flip, r=RalfJungMatthias Krüger-12/+12
Use the informative error as the main const eval error message r? `@RalfJung` I only did the minimal changes necessary to the const eval error machinery. I'd prefer not to mix test changes with refactorings 😆
2025-06-03Rollup merge of #141569 - workingjubilee:canonicalize-abi, r=bjorn3Matthias Krüger-327/+354
Replace ad-hoc ABI "adjustments" with an `AbiMap` to `CanonAbi` Our `conv_from_spec_abi`, `adjust_abi`, and `is_abi_supported` combine to give us a very confusing way of reasoning about what _actual_ calling convention we want to lower our code to and whether we want to compile the resulting code at all. Instead of leaving this code as a miniature adventure game in which someone tries to combine stateful mutations into a Rube Goldberg machine that will let them escape the maze and arrive at the promised land of codegen, we let `AbiMap` devour this complexity. Once you have an `AbiMap`, you can answer which `ExternAbi`s will lower to what `CanonAbi`s (and whether they will lower at all). Removed: - `conv_from_spec_abi` replaced by `AbiMap::canonize_abi` - `adjust_abi` replaced by same - `Conv::PreserveAll` as unused - `Conv::Cold` as unused - `enum Conv` replaced by `enum CanonAbi` target-spec.json changes: - If you have a target-spec.json then now your "entry-abi" key will be specified in terms of one of the `"{abi}"` strings Rust recognizes, e.g. ```json "entry-abi": "C", "entry-abi": "win64", "entry-abi": "aapcs", ```
2025-06-03native-lib: allow multiple libraries and/or dirsNia Espera-57/+70
2025-06-03Auto merge of #141229 - tgross35:builtins-josh-subtree, r=Kobzolbors-0/+2
Merge `compiler-builtins` as a Josh subtree Use the Josh [1] utility to add `compiler-builtins` as a subtree, which will allow us to stop using crates.io for updates. This is intended to help resolve some problems when unstable features change and require code changes in `compiler-builtins`, which sometimes gets trapped in a bootstrap cycle. This was done using `josh-filter` built from the r24.10.04 tag: git fetch https://github.com/rust-lang/compiler-builtins.git 233434412fe7eced8f1ddbfeddabef1d55e493bd josh-filter ":prefix=library/compiler-builtins" FETCH_HEAD git merge --allow-unrelated FILTERED_HEAD The HEAD in the `compiler-builtins` repository is 233434412f ("fix an if statement that can be collapsed"). [1]: https://github.com/josh-project/josh
2025-06-03Add `iter` macroOli Scherer-0/+22
This adds an `iter!` macro that can be used to create movable generators. This also adds a yield_expr feature so the `yield` keyword can be used within iter! macro bodies. This was needed because several unstable features each need `yield` expressions, so this allows us to stabilize them separately from any individual feature. Co-authored-by: Oli Scherer <github35764891676564198441@oli-obk.de> Co-authored-by: Jieyou Xu <jieyouxu@outlook.com> Co-authored-by: Travis Cross <tc@traviscross.com>
2025-06-03hir-ty: add incremental tests checking for `infer` invalidationDavid Barsky-0/+253
2025-06-03Enable Float non-determinism in miri. Update and add tests and changeLorrensP-2158466-62/+327
change tests in std, core and coretests.
2025-06-03miri: sed to CanonAbiJubilee Young-327/+354
2025-06-03Remove uses of `stdarch_x86_avx512`sayantn-6/+0
2025-06-04ci: Pin `cargo-workspaces` to `0.3.6`Shoyu Vanilla-1/+1
2025-06-03Auto merge of #141954 - matthiaskrgr:rollup-zptd6t9, r=matthiaskrgrbors-299/+3037
Rollup of 9 pull requests Successful merges: - rust-lang/rust#141554 (Improve documentation for codegen options) - rust-lang/rust#141817 (rustc_llvm: add Windows system libs only when cross-compiling from Wi…) - rust-lang/rust#141843 (Add `visit_id` to ast `Visitor`) - rust-lang/rust#141881 (Subtree update of `rust-analyzer`) - rust-lang/rust#141898 ([rustdoc-json] Implement PartialOrd and Ord for rustdoc_types::Id) - rust-lang/rust#141921 (Disable f64 minimum/maximum tests for arm 32) - rust-lang/rust#141930 (Enable triagebot `[concern]` functionality) - rust-lang/rust#141936 (Decouple "reporting in deps" from `FutureIncompatibilityReason`) - rust-lang/rust#141949 (move `test-float-parse` tool into `src/tools` dir) r? `@ghost` `@rustbot` modify labels: rollup
2025-06-03Rollup merge of #141949 - onur-ozkan:move-test-float-parse, r=KobzolMatthias Krüger-1/+2396
move `test-float-parse` tool into `src/tools` dir Obviously `test-float-parse` is a tool like any other in `src/tools`. cc `@tgross35`
2025-06-03Rollup merge of #141881 - lnicola:sync-from-ra, r=lnicolaMatthias Krüger-298/+641
Subtree update of `rust-analyzer` r? `@ghost`
2025-06-03chore(deps): bump tar-fs from 2.1.2 to 2.1.3 in /editors/codedependabot[bot]-3/+3
Bumps [tar-fs](https://github.com/mafintosh/tar-fs) from 2.1.2 to 2.1.3. - [Commits](https://github.com/mafintosh/tar-fs/commits) --- updated-dependencies: - dependency-name: tar-fs dependency-version: 2.1.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com>
2025-06-03move `test-float-parse` tool into `src/tools` dironur-ozkan-1/+2396
Obviously `test-float-parse` is a tool like any other in `src/tools`. Signed-off-by: onur-ozkan <work@onurozkan.dev>
2025-06-03Merge pull request #19869 from MatrixFrog/publicize_fieldLukas Wirth-182/+138
Add a quickfix for accessing a private field of a struct
2025-06-03Merge pull request #19894 from ShoyuVanilla/some-query-cyclesLukas Wirth-7/+72
fix: Cycle handlers for `HirDatabase::infer, const_param_ty_with_diagnostics`
2025-06-03Merge pull request #19901 from BazookaMusic/masterLukas Wirth-12/+192
Enable Assist edit for tuple<->named struct for the struct and visiblity keywords
2025-06-02Add a quickfix for accessing a private field of a structTyler Breisacher-182/+138
2025-06-03Rollup merge of #141741 - nnethercote:overhaul-UsePath, r=petrochenkovMatthias Krüger-29/+32
Overhaul `UsePath` It currently uses `SmallVec<[Res; 3]>` which is really weird. Details in the individual commits. r? `@petrochenkov`
2025-06-03Merge from rustcThe Miri Cronjob Bot-679/+2038
2025-06-03Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2025-06-03fix: Cycle handlers for `HirDatabase::infer, const_param_ty_with_diagnosticsShoyu Vanilla-7/+72
2025-06-02feat: implement completion for diagnostic moduleRyan Mehri-17/+175
2025-06-03Overhaul `UsePath`.Nicholas Nethercote-26/+29
`UsePath` contains a `SmallVec<[Res; 3]>`. This holds up to three `Res` results, one per namespace (type, value, or macro). `lower_import_res` takes a `PerNS<Option<Res<NodeId>>>` result and lowers it into the `SmallVec`. This is pretty weird. The input `PerNS` makes it clear which `Res` belongs to which namespace, but the `SmallVec` throws that information away. And code that operates on the `SmallVec` tends to use iteration (or even just grabbing the first entry!) without knowing which namespace the `Res` belongs to. Even weirder! Also, `SmallVec` is an overly flexible type to use here, because it can contain any number of elements (even though it's optimized for 3 in this case). This commit changes `UsePath` so it also contains a `PerNS<Option<Res<HirId>>>`. This type preserves more information and is more self-documenting. The commit also changes a lot of the use sites to access the result for a particular namespace. E.g. if you're looking up a trait, it will be in the `Res` for the type namespace if it's present; it's silly to look in the `Res` for the value namespace or macro namespace. Overall I find the new code much easier to understand. However, some use sites still iterate. These now use `present_items` because that filters out the `None` results. Also, `redundant_pub_crate.rs` gets a bigger change. A `UseKind:ListStem` item gets no `Res` results, which means the old `all` call in `is_not_macro_export` would succeed (because `all` succeeds on an empty iterator) and the `ListStem` would be ignored. This is what we want, but was more by luck than design. The new code detects `ListStem` explicitly. The commit generalizes the name of that function accordingly. Finally, the commit also removes the `use_path` arena, because `PerNS<Option<Res>>` impls `Copy` (unlike `SmallVec`) and it can be allocated in the arena shared by all `Copy` types.
2025-06-02simplify expression that checks the offsetBazookaMusic-36/+30
2025-06-02fix: don't duplicate must_use for functions and traitsRyan Mehri-2/+2
2025-06-02Clarify why we are talking about a failed const eval at a random placeOli Scherer-4/+4
2025-06-02Use the informative error as the main const eval error messageOli Scherer-12/+12
2025-06-02Support derive-macros for rename prefix magicLukas Wirth-117/+211
2025-06-02fix: Fix edition handling for names in rename logicLukas Wirth-115/+161
2025-06-02Enhance renaming to include identifiers that are generated from the original ↵Lukas Wirth-44/+251
symbol Co-authored-by: Jake Goulding <jake.goulding@integer32.com>