about summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2025-01-16Merge pull request #18949 from Veykril/push-yzklntsnnutsLukas Wirth-13/+5
Partially back out "fix: Fix sourceroot construction for virtual manifests"
2025-01-16Partially back out "fix: Fix sourceroot construction for virtual manifests"Lukas Wirth-13/+5
2025-01-16Merge pull request #18946 from lh123/goto-to-type-def-func-param-and-trait-boundLukas Wirth-1/+108
feat: show go-to-type-def actions for func param and trait bound when hovering
2025-01-16Merge pull request #18927 from ChayimFriedman2/skip-iter-awaitLukas Wirth-72/+230
feat: Add smart completions that skip `await` or `iter()` and `into_iter()`
2025-01-16add goto-to-def actions for trait boundlh123-1/+104
2025-01-16add go-to-type-def actions for func paramslh123-1/+5
2025-01-16Auto merge of #135458 - jieyouxu:migrate-extern-fn-reachable, r=lqdbors-1/+0
tests: Port `extern-fn-reachable` to rmake.rs Part of #121876. ## Summary This PR ports `tests/run-make/extern-fn-reachable` to use `rmake.rs`. Notable changes: - We now use the `object` crate and look at the exported symbols specifically. - This test's coverage regressed against windows-msvc back in [replace dynamic library module with libloading #90716](https://github.com/rust-lang/rust/pull/90716), but since we use `object` now, we're able to claw the test coverage back. - The checks are now stricter: 1. It no longer looks for substring symbol matches in `nm` textual outputs, it inspects the symbol names precisely. 2. We now also explicitly check for the presence of leading underscore in exported symbol names on apple vs non-apple targets. - Added another case of `#[no_mangle] fn fun6() {}` (note the lack of `pub`) to check that Rust nameres visibility is orthogonal to symbol visibility in dylib. ## History - Test was initially introduced as a run-pass[^run-pass] test as part of [Don't mark reachable extern fns as internal #10539](https://github.com/rust-lang/rust/pull/10539). - Test re-introduced as a run-make test in https://github.com/rust-lang/rust/pull/13741. - Later, the test coverage regressed in https://github.com/rust-lang/rust/pull/90716. [^run-pass]: no longer a thing nowadays Supersedes #128314. Co-authored with `@lolbinarycat.` try-job: x86_64-msvc try-job: i686-msvc try-job: i686-mingw try-job: x86_64-mingw-1 try-job: x86_64-apple-1 try-job: aarch64-apple try-job: test-various
2025-01-16Use resolve_method_call_as_callable to handle function types1hakusai1-2/+3
2025-01-16refactor: Change order of arguments1hakusai1-2/+2
2025-01-16refactor: rename to descriptive name1hakusai1-2/+3
2025-01-16update chalkWaffle Lapkin-13/+12
this brings in support from trait upcasting, yay! (and as such fixes a test)
2025-01-16add a test for trait upcasting type mismatchWaffle Lapkin-0/+32
this adds a test asserting *incorrect* behavior that can be seen in <https://github.com/rust-lang/rust-analyzer/issues/18083>, and a test asserting the *correct* behavior for the case of no super traits.
2025-01-15Add smart completions that skip `await` or `iter()` and `into_iter()`Chayim Refael Friedman-72/+230
E.g. complete `await.foo()`.
2025-01-15Merge pull request #18897 from duncanawoods/masterHKalbasi-1/+5
fix: Make test_runner::TestState::stdout optional to fix parsing cargo test json output
2025-01-15Auto merge of #135540 - GuillaumeGomez:rollup-40lfb7l, r=GuillaumeGomezbors-32/+32
Rollup of 6 pull requests Successful merges: - #132654 (std: lazily allocate the main thread handle) - #135003 (deprecate `std::intrinsics::transmute` etc, use `std::mem::*` instead) - #135428 (rustdoc: Remove `AttributesExt` trait magic that added needless complexity) - #135498 (Prefer lower `TraitUpcasting` candidates in selection) - #135507 (TRPL: incorporate all backward-compatible Edition changes) - #135529 (remove outdated FIXME) r? `@ghost` `@rustbot` modify labels: rollup
2025-01-15Auto merge of #133461 - ferrocene:add-copyright-files-to-dist, r=Kobzolbors-15/+39
Add COPYRIGHT-*.html files to distribution and update `COPYRIGHT` * Updates the `COPYRIGHT` file to describe how we actually do things now, and removes the licence text from it as they are stored elsewhere. * dist tarballs get all of the files in `LICENSES/*`. * This folder is managed by `reuse` and each file exists because we refer to the licence somewhere in our tree. We should be supplying these licence texts to anyone who obtains a copy of the source code and now we do. * The binary rust tarball gets `COPYRIGHT.html` and `COPYRIGHT-library.html`, which are auto-generated files that describe the licence information for both the in-tree source files used to build the Rust toolchain, and the out-of-tree dependencies we used to build the toolchain. * The other binary tarballs are unchanged, for now. In future you need to make a call whether to ship multiple version of COPYRIGHT.html, or whether to try and make, for example, a cargo-specific COPYRIGHT.html file. * The `LICENSE-MIT` file now includes a blanket copyright statement, as the text indicates that it should and because users will expect to know who owns the copyright of the material they have been given (even if the answer is 'lots of people'). try-job: x86_64-fuchsia
2025-01-15Rollup merge of #135003 - RalfJung:deprecate-allowed-through-unstable, ↵Guillaume Gomez-32/+32
r=davidtwco deprecate `std::intrinsics::transmute` etc, use `std::mem::*` instead The `rustc_allowed_through_unstable_modules` attribute lets users call `std::mem::transmute` as `std::intrinsics::transmute`. The former is a reexport of the latter, and for a long time we didn't properly check stability for reexports, so making this a hard error now would be a breaking change for little gain. But at the same time, `std::intrinsics::transmute` is not the intended path for this function, so I think it is a good idea to show a deprecation warning when that path is used. This PR implements that, for all the functions in `std::intrinsics` that carry the attribute. I assume this will need ``@rust-lang/libs-api`` FCP.
2025-01-15Merge pull request #18922 from Veykril/push-tmtzukrsnottLukas Wirth-24/+28
fix: Don't return inlay hints outside requested range
2025-01-15fix: Don't return inlay hints outside requested rangeLukas Wirth-24/+28
2025-01-15Merge pull request #18940 from Veykril/push-ulowqkpprslqLukas Wirth-40/+36
fix: Fix semantics not always correctly caching file roots
2025-01-15Merge pull request #18929 from ChayimFriedman2/i-acknowledge-defeatLukas Wirth-0/+31
fix: Fix another bug when reaching macro expansion limit caused a stack overflow
2025-01-15Merge pull request #18939 from Veykril/push-wztmylkyqttuLukas Wirth-32/+42
Flip on typing config to be opt-in, better defaults
2025-01-15fix: Fix semantics not always correctly caching file rootsLukas Wirth-40/+36
2025-01-15Fix wrong fixture1hakusai1-1/+1
2025-01-15Auto merge of #134353 - oli-obk:safe-target-feature-unsafe-by-default, ↵bors-10/+10
r=wesleywiser Treat safe target_feature functions as unsafe by default [less invasive variant] This unblocks * #134090 As I stated in https://github.com/rust-lang/rust/pull/134090#issuecomment-2541332415 I think the previous impl was too easy to get wrong, as by default it treated safe target feature functions as safe and had to add additional checks for when they weren't. Now the logic is inverted. By default they are unsafe and you have to explicitly handle safe target feature functions. This is the less (imo) invasive variant of #134317, as it doesn't require changing the Safety enum, so it only affects FnDefs and nothing else, as it should.
2025-01-15Use adjusted type1hakusai1-1/+1
2025-01-15Add test cases1hakusai1-2/+130
2025-01-15Flip on typing config to be opt-in, better defaultsLukas Wirth-28/+33
2025-01-15Rollup merge of #135424 - compiler-errors:unstable-lint, r=ehussJacob Pratt-24/+51
Detect unstable lint docs that dont enable their feature Makes sure that we detect cases where unstable lint's docs don't enable the corresponding feature. r? ehuss
2025-01-15Rollup merge of #133807 - mrkajetanp:ci-aarch64-opt-dist, r=KobzolJacob Pratt-9/+32
ci: Enable opt-dist for dist-aarch64-linux builds Move the CI dist-aarch64-linux job to an aarch64 runner and enable optimised dist builds with the opt-dist pipeline. For the time being, disable bolt on aarch64 due to upstream bolt bugs. r? `@Kobzol` cc `@lqd` try-job: dist-aarch64-linux
2025-01-15Rollup merge of #132397 - m-ou-se:warn-missing-abi, r=NadrierilJacob Pratt-12/+15
Make missing_abi lint warn-by-default. This makes the missing_abi lint warn-by-default, as suggested here: https://github.com/rust-lang/rfcs/pull/3722#issuecomment-2447719047 This needs a lang FCP.
2025-01-15Early exit in search properlyLukas Wirth-4/+9
2025-01-15intrinsics: deprecate calling them via the unstable std::intrinsics pathRalf Jung-31/+31
2025-01-15allowed_through_unstable_modules: support showing a deprecation message when ↵Ralf Jung-1/+1
the unstable module name is used
2025-01-15Merge pull request #18925 from Veykril/push-mtxxvpowwtrtLukas Wirth-2/+88
feat: Render type parameter projection target bounds in inlays
2025-01-15feat: Render type parameter projection target bounds in inlaysLukas Wirth-2/+88
2025-01-15Merge pull request #18917 from boattime/masterLukas Wirth-37/+110
feat: Add dereferencing autocomplete
2025-01-15Merge from rustcThe Miri Cronjob Bot-20/+141
2025-01-15Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2025-01-15Auto merge of #135385 - rust-lang:cargo_update, r=clubby789bors-52/+131
Weekly `cargo update` Automation to keep dependencies in `Cargo.lock` current. The following is the output from `cargo update`: ```txt compiler & tools dependencies: Locking 27 packages to latest compatible versions Updating bitflags v2.6.0 -> v2.7.0 Updating clap v4.5.23 -> v4.5.26 Updating clap_builder v4.5.23 -> v4.5.26 Updating clap_complete v4.5.40 -> v4.5.42 Updating clap_derive v4.5.18 -> v4.5.24 Updating handlebars v6.2.0 -> v6.3.0 Updating libz-sys v1.1.20 -> v1.1.21 Updating linux-raw-sys v0.4.14 -> v0.4.15 Updating phf v0.11.2 -> v0.11.3 Updating phf_codegen v0.11.2 -> v0.11.3 Updating phf_generator v0.11.2 -> v0.11.3 Updating phf_shared v0.11.2 -> v0.11.3 Updating pin-project-lite v0.2.15 -> v0.2.16 Updating proc-macro2 v1.0.92 -> v1.0.93 Updating rustix v0.38.42 -> v0.38.43 Updating serde_json v1.0.134 -> v1.0.135 Adding siphasher v1.0.1 Updating syn v2.0.94 -> v2.0.96 Updating thiserror v2.0.9 -> v2.0.11 Updating thiserror-impl v2.0.9 -> v2.0.11 Updating tokio v1.42.0 -> v1.43.0 Updating uuid v1.11.0 -> v1.11.1 Updating wasm-encoder v0.222.0 -> v0.223.0 Adding wasmparser v0.223.0 Updating wast v222.0.0 -> v223.0.0 Updating wat v1.222.0 -> v1.223.0 Updating xattr v1.3.1 -> v1.4.0 note: pass `--verbose` to see 39 unchanged dependencies behind latest library dependencies: Locking 0 packages to latest compatible versions note: pass `--verbose` to see 4 unchanged dependencies behind latest rustbook dependencies: Locking 27 packages to latest compatible versions Updating bitflags v2.6.0 -> v2.7.0 Updating cc v1.2.7 -> v1.2.8 Updating clap v4.5.23 -> v4.5.26 Updating clap_builder v4.5.23 -> v4.5.26 Updating clap_complete v4.5.40 -> v4.5.42 Updating clap_derive v4.5.18 -> v4.5.24 Adding darling v0.20.10 Adding darling_core v0.20.10 Adding darling_macro v0.20.10 Adding derive_builder v0.20.2 Adding derive_builder_core v0.20.2 Adding derive_builder_macro v0.20.2 Updating handlebars v6.2.0 -> v6.3.0 Adding ident_case v1.0.1 Updating linux-raw-sys v0.4.14 -> v0.4.15 Updating phf v0.11.2 -> v0.11.3 Updating phf_codegen v0.11.2 -> v0.11.3 Updating phf_generator v0.11.2 -> v0.11.3 Updating phf_shared v0.11.2 -> v0.11.3 Updating proc-macro2 v1.0.92 -> v1.0.93 Updating rustix v0.38.42 -> v0.38.43 Updating serde_json v1.0.134 -> v1.0.135 Adding siphasher v1.0.1 Updating syn v2.0.94 -> v2.0.96 Updating thiserror v2.0.9 -> v2.0.11 Updating thiserror-impl v2.0.9 -> v2.0.11 Updating winnow v0.6.22 -> v0.6.24 ```
2025-01-14add tidy warning for unrecognized directivescod10129-30/+68
This makes tidy warn on the presence of any directives it does not recognize. There are changes in compiletest because that file used "tidy-alphabet" instead of "tidy-alphabetical".
2025-01-14Hide syntax tree view by defaultDavid Richey-1/+1
2025-01-14Un-spaghettify the control flow of generate_lint_outputMichael Goulet-40/+49
Co-authored-by: Eric Huss <eric@huss.org>
2025-01-15tests: port `extern-fn-reachable` to rmake.rs许杰友 Jieyou Xu (Joe)-1/+0
Co-authored-by: binarycat <binarycat@envs.net>
2025-01-14Add hir::HeaderSafety to make follow up commits simplerOli Scherer-10/+10
2025-01-14refactor: get(0) -> first()1hakusai1-1/+1
2025-01-14Remove trailing spaces1hakusai1-1/+1
2025-01-14fix_typo1hakusai1-1/+1
2025-01-14Merge pull request #4138 from geetanshjuneja/derefRalf Jung-1/+1
Use deref_poiner_as instead of deref_pointer
2025-01-14Add the ability to jump from `into` to `from` definitions1hakusai1-1/+93