roife
e49887ecb4
internal: move NavigationTarget::from_expr to goto_definition
2024-07-20 01:58:51 +08:00
roife
b70fab267f
fix: sort references in tests
2024-07-20 01:55:55 +08:00
roife
5aa60cf61d
fix: handle highlightings inside macro calls & only highlight kws in current file
2024-07-20 01:45:51 +08:00
roife
c590cfb700
fix: ensure that highlight_related works for macro_expr
2024-07-20 01:42:52 +08:00
roife
92d0ee8758
use token_ancestors_with_macros to simplify goto-def on kw
2024-07-20 01:42:52 +08:00
roife
7df7db52d8
fix: navigate to label directly when perform 'goto-def' on control-flow kw
...
See https://github.com/rust-lang/rust-analyzer/pull/17542#discussion_r1667656190
2024-07-20 01:42:52 +08:00
roife
7a14800915
feat: find references on control-flow kws
2024-07-20 01:42:52 +08:00
roife
5c39c85335
fix: keyword highlighting in macro expansion
2024-07-20 01:42:52 +08:00
roife
63bacc111c
fix: incorrect highlighting of try blocks with control flow kws
2024-07-20 01:42:51 +08:00
roife
9ede85344f
fix: ensure that goto-def works on fn/try/async kw
2024-07-20 01:41:01 +08:00
roife
ab1989b139
feat: goto-def on keywords
2024-07-20 01:41:00 +08:00
bors
d16acea62c
Auto merge of #17622 - roife:fix-issue-17602, r=Veykril
...
fix: handle synonymous imports with different renaming in 'merge imports'
fix #17602
2024-07-19 15:16:02 +00:00
bors
fd240c00e0
Auto merge of #17620 - Veykril:edition-aware-parser, r=Veykril
...
Edition aware parser
Fixes https://github.com/rust-lang/rust-analyzer/issues/16324 by allowing us to properly thread through the edition to the parser
2024-07-19 14:56:56 +00:00
Lukas Wirth
754f53ca1a
Test macros doing edition dependent parsing
2024-07-19 16:43:58 +02:00
Lukas Wirth
62eba06591
Prevent generated runner module from being format checked
2024-07-19 16:01:47 +02:00
Lukas Wirth
2dc84abb55
Parse try as a keyword only in edition 2018 and up
2024-07-19 15:43:20 +02:00
Lukas Wirth
f4b2bf5c53
Add basic edition inline parser test support
2024-07-19 15:19:43 +02:00
bors
e6e8bd299d
Auto merge of #17634 - lnicola:fix-xtask-install, r=lnicola
...
minor: Make xtask install work again
CC https://github.com/rust-lang/rust-analyzer/pull/17559#issuecomment-2234052939
2024-07-19 06:15:00 +00:00
Laurențiu Nicola
6fa6d2081a
Make xtask install work again
2024-07-19 09:11:26 +03:00
bors
40730a4baf
Auto merge of #17246 - davidbarsky:david/move-rust-project-generation-to-server, r=Veykril
...
feature: teach rust-analyzer to discover `linked_projects`
This PR's been a long-time coming, but like the title says, it introduces server-side project discovery and removes the extension hooks I previously introduced. I don't think this PR is ready to land, but here are the things I'm feeling squishy about:
- I don't think I like the idea of introducing the `cargo-metadata` command-but-for-everything-else in the `flycheck` module, but the progress reporting infrastructure was too convenient to pass up. Happy to move it elsewhere.
Here are the things I _know_ I need to change:
- For progress reporting, I'm extracting from a `serde_json::Value` that corresponds to `tracing_subsciber::fmt::Layer`'s JSON output. I'd like to make this a bit more structured/documented than the current nonsense I wrote.
- The progress reporting currently hardcodes "Buck"; it should be deriving that from the previously mentioned more-structured-output.
- This doesn't handle *reloading* when a corresponding buildfile is changed. It should be doing that.
<details>
<summary>Anyway, here's a video of rust-analyzer discovering a Buck target.</summary>
https://github.com/rust-lang/rust-analyzer/assets/2067774/be6cd9b9-2c9a-402d-847f-05f860a91df1
</details>
2024-07-18 16:15:31 +00:00
David Barsky
2e582ad848
feature: move linked_projects discovery to the rust-analyzer server
2024-07-18 12:01:27 -04:00
Lukas Wirth
eae705e5ed
Rewrite inline parser test infra to generated proper rust test cases
2024-07-18 10:03:19 +02:00
Lukas Wirth
736723d435
Update test fixtures
2024-07-18 09:09:31 +02:00
Lukas Wirth
20e27b874d
Encode edition within FileId in the hir layer
2024-07-18 08:49:10 +02:00
roife
9dcd4ba0ef
fix: handle synonymous imports in 'merge imports'
2024-07-18 05:01:58 +08:00
bors
020b7acd6a
Auto merge of #17618 - Veykril:rustc_skip_during_method_dispatch, r=Veykril
...
Support rustc_skip_during_method_dispatch
Fixes https://github.com/rust-lang/rust-analyzer/issues/17256
2024-07-17 09:48:18 +00:00
Lukas Wirth
835734eed0
Support rustc_skip_during_method_dispatch
2024-07-17 11:46:36 +02:00
bors
0401e1c52a
Auto merge of #17617 - Veykril:grammar-kind-gen, r=Veykril
...
Derive kinds information from ungrammar file
This reduces the need to touch more files when adding a new grammar rule
2024-07-17 09:27:03 +00:00
Lukas Wirth
f7516d95a7
string is not a keyword
2024-07-17 11:11:57 +02:00
Lukas Wirth
0bffb1345b
Add always disabled gen parse support
2024-07-17 10:49:12 +02:00
Lukas Wirth
373e84fb28
Derive kinds information from ungrammar file
2024-07-17 10:04:45 +02:00
bors
d95ce94543
Auto merge of #17616 - Veykril:config-param-hints, r=Veykril
...
Fix incorrect generic parameter hint defaults
Missed this in the review but we should show const param hints, not lifetime param hints by default
2024-07-17 06:54:06 +00:00
Lukas Wirth
7ef5f46c83
Fix incorrect generic parameter hint defaults
2024-07-17 08:52:23 +02:00
bors
523465a677
Auto merge of #17614 - lnicola:build-scripts-override-docs, r=lnicola
...
minor: Add --keep-going to the `cargo.buildScripts.overrideCommand` docs
CC https://github.com/rust-lang/rust-analyzer/issues/17608#issuecomment-2231949548
2024-07-17 05:45:18 +00:00
Laurențiu Nicola
f0b8055164
Add --keep-going to rust-analyzer.cargo.buildScripts.overrideCommand docs
2024-07-17 08:42:39 +03:00
bors
2a8b4a2000
Auto merge of #17611 - Veykril:macro-arg-no-call, r=Veykril
...
fix: Don't call macro_arg directly in `ExpandDatabase::syntax_context`
2024-07-16 20:12:14 +00:00
Lukas Wirth
811ce15b12
Don't call macro_arg directly in ExpandDatabase::syntax_context
2024-07-16 22:10:42 +02:00
bors
216bef36bc
Auto merge of #17609 - lnicola:sync-from-rust, r=lnicola
...
minor: Sync from downstream
2024-07-16 13:38:39 +00:00
Laurențiu Nicola
137c736d66
Merge from rust-lang/rust
2024-07-16 16:23:47 +03:00
Augie Fackler
72e22554ca
cleanup: remove support for 3DNow! cpu features
...
In llvm/llvm-project@f0eb5587ce all
support for 3DNow! intrinsics and instructions were removed. Per the commit message
there, only AMD chips between 1998 and 2011 or so actually supported
these instructions, and they were effectively replaced by SSE which was
available on many more chips. I'd be very surprised if anyone had ever
used these from Rust.
2024-07-17 11:45:02 -04:00
Laurențiu Nicola
2e37675cc9
Preparing for merge from rust-lang/rust
2024-07-16 16:23:33 +03:00
bors
e5b1a2b3cd
Auto merge of #17605 - Veykril:runnable-sysroot, r=Veykril
...
Set `RUSTC_TOOLCHAIN` for runnables
With this the client doesn't necessarily need to guess the sysroot anymore
2024-07-16 11:49:27 +00:00
Lukas Wirth
4f031d9768
Set RUSTC_SYSROOT for runnables
2024-07-16 13:48:14 +02:00
bors
064e6ed163
Auto merge of #17604 - Veykril:tt-symbols, r=Veykril
...
More symbol usage
2024-07-16 11:04:14 +00:00
bors
a91f7d72f1
Auto merge of #127617 - lnicola:sync-from-ra, r=lnicola
...
Subtree update of `rust-analyzer`
r? `@ghost`
2024-07-16 10:54:30 +00:00
Lukas Wirth
41451a26e9
Remove Name::to_smol_str
2024-07-16 12:43:58 +02:00
Lukas Wirth
1a20a0803f
More symbol usage
2024-07-16 12:05:16 +02:00
bors
6c10c85838
Auto merge of #17603 - Veykril:tt-symbols, r=Veykril
...
Switch token trees to use Symbols
2024-07-16 08:42:58 +00:00
Lukas Wirth
9ce066e6fa
Use symbol in cfg
2024-07-16 10:41:42 +02:00
bors
5572759b8d
Auto merge of #127796 - tgross35:rollup-ubo5hzb, r=tgross35
...
Rollup of 6 pull requests
Successful merges:
- #120990 (Suggest a borrow when using dbg)
- #127047 (fix least significant digits of f128 associated constants)
- #127709 (match lowering: Move `MatchPair` tree creation to its own module)
- #127770 (Update books)
- #127780 (Make sure trait def ids match before zipping args in `note_function_argument_obligation`)
- #127795 (Fix typos in RELEASES.md)
r? `@ghost`
`@rustbot` modify labels: rollup
2024-07-16 08:33:11 +00:00