bors
cfc959d73a
Auto merge of #16143 - Veykril:base-db-no-proc-macros, r=lnicola
...
internal: Move proc-macro knowledge out of base-db into hir-expand
It does not make much sense to me to have that live in base-db, additionally, it kind of conflicts with moving span things out into a separate crate
2023-12-18 12:18:24 +00:00
Laurențiu Nicola
e628f1715e
Merge branch 'master' into sync-from-rust
2023-12-18 14:02:12 +02:00
Lukas Wirth
35620306a6
internal: Move proc-macro knowledge out of base-db
2023-12-18 12:37:18 +01:00
Laurențiu Nicola
e37cf75791
Merge commit '21b06c1beb9bb59369ffd652f5d617bcf6952e05' into sync-from-ra
2023-12-18 09:21:55 +02:00
Jimmy Miller
b67b352ac7
Make functions in impl have a container name
...
fixes #16015
2023-12-17 13:44:47 -05:00
bors
cac74d98f6
Auto merge of #118830 - GuillaumeGomez:env-tracked_env, r=Nilstrieb
...
Add support for `--env` on `tracked_env::var`
Follow-up of https://github.com/rust-lang/rust/pull/118368 .
Part of Part of https://github.com/rust-lang/rust/issues/80792 .
It adds support of the `--env` option for proc-macros through `tracked_env::var`.
r? `@Nilstrieb`
2023-12-17 04:23:08 +00:00
unexge
3b8801c3ac
Go to definition for macros in #[macro_use(...)]
2023-12-16 18:00:29 +00:00
unexge
0e4902467f
Add missing docs string
2023-12-16 17:10:11 +00:00
unexge
b986d8ac92
Complete exported macros in #[macro_use($0)]
2023-12-16 16:19:58 +00:00
bors
21b06c1beb
Auto merge of #16131 - HKalbasi:rustc-tests-fixup, r=HKalbasi
...
Fix false positive type mismatch in const reference patterns
2023-12-15 15:42:00 +00:00
hkalbasi
4f722165b6
Fix false positive type mismatch in const reference patterns
2023-12-15 19:09:07 +03:30
bors
a7764198b1
Auto merge of #16123 - Veykril:simplify, r=Veykril
...
internal: Remove `ModuleId` from `TypeOwnerId`
It only exists due to the IDE layer, but we can encode this temporary hack more cleanly
2023-12-15 13:10:17 +00:00
Lukas Wirth
4c45d23948
fix: Syntax fixup now removes subtrees with fake spans
2023-12-15 13:52:49 +01:00
hkalbasi
7b9595a5ab
Run rust-analyzer on rustc tests in metrics
2023-12-15 02:10:25 +03:30
Lukas Wirth
9083017c9d
Remove ModuleId
from TypeOwnerId
2023-12-14 14:11:57 +01:00
bors
35e2f13b5c
Auto merge of #16121 - Veykril:assert-messages, r=Veykril
...
minor: Add messages to some asserts for better debugging
cc https://github.com/rust-lang/rust-analyzer/issues/16118
2023-12-14 09:27:14 +00:00
Lukas Wirth
070cd4e8b0
minor: Add messages to some asserts for better debugging
2023-12-14 10:24:41 +01:00
bors
dd07f1f2fb
Auto merge of #15887 - jinohkang-theori:fix/ide-assists/convert_tuple_struct_to_named_struct/handle_refs_inside_macro_invocations, r=Veykril
...
Fix incorrectly replacing references in macro invocation in "Convert to named struct" assist
Fixes #15630 .
Complements #13647 (same assist but missed this one), #14920 (inverse action assist).
2023-12-13 21:30:18 +00:00
hkalbasi
6a40400c13
Update builtin attrs from rustc
2023-12-13 21:18:24 +03:30
roife
38b5dcb53c
fix: self type replacement with macros
2023-12-14 00:42:33 +08:00
roife
3449222ab1
fix: self type replacement in inline-function
2023-12-13 23:13:55 +08:00
bors
94af6c63b7
Auto merge of #16061 - Veykril:vec-completion, r=Veykril
...
fix: Fix fragment parser replacing matches with dummies on incomplete parses
Notably, this caused some completions in the `vec!` macro to no longer work. Fixes https://github.com/rust-lang/rust-analyzer/issues/15016
2023-12-13 09:59:13 +00:00
roife
5070534d32
fix: testcases in generate_delegate_trait
2023-12-13 11:42:45 +08:00
roife
59aa791fe6
fix: rewrite code_action generate_delegate_trait
2023-12-13 11:22:42 +08:00
Lukas Wirth
7cc6b0f2e9
Partially revert #16101
2023-12-12 22:53:40 +01:00
Lukas Wirth
c209b5f97c
fix: Fix syntax bridge assigning invalid span to lifetime tokens
2023-12-12 22:05:21 +01:00
bors
dd42c1457d
Auto merge of #16101 - Veykril:search-depedencies-fix, r=Veykril
...
fix: Fix `import_map::search_dependencies` getting confused by assoc and non assoc items with the same name
No test case as creating one is kind of tricky... Ideally the code should be restructured such that this collision wouldn't matter in the first place, its kind of a mess.
Fixes https://github.com/rust-lang/rust-analyzer/issues/16074
Fixes https://github.com/rust-lang/rust-analyzer/issues/16080
Fixes https://github.com/rust-lang/rust-analyzer/issues/15845
2023-12-12 14:51:25 +00:00
Lukas Wirth
ca995d765d
fix: Fix import_map::search_dependencies
getting confused by assoc and non assoc items with the same name
2023-12-12 15:45:42 +01:00
bors
d4accf8e96
Auto merge of #16099 - Veykril:flyimport, r=Veykril
...
internal: Improve import asset perf a bit
And bump the query limit from 40 to 100
2023-12-12 14:37:38 +00:00
Lukas Wirth
1604ad1a6d
Bump DEFAULT_QUERY_SEARCH_LIMIT from 40 to 100
2023-12-12 15:36:22 +01:00
Lukas Wirth
34ec665ba1
Simplify and improve perf of import_assets::import_for_item
2023-12-12 11:35:34 +01:00
Laurențiu Nicola
13d4609f50
Merge remote-tracking branch 'upstream/master' into sync-from-rust
2023-12-12 12:26:15 +02:00
Laurențiu Nicola
54acf874a6
Fix formatting
2023-12-12 12:26:01 +02:00
Laurențiu Nicola
df7b4289cb
Merge branch 'master' into sync-from-rust
2023-12-12 12:25:31 +02:00
bors
be035e80e8
Auto merge of #118817 - lnicola:sync-from-ra, r=lnicola
...
Subtree update of `rust-analyzer`
r? `@ghost`
2023-12-12 08:22:37 +00:00
Matthias Krüger
a254cc5bde
Rollup merge of #118445 - ferrocene:jp-support-reuse-in-submodules, r=Mark-Simulacrum
...
Let `reuse` look inside git submodules
Changes `collect-license-metadata` and `generate-copyright` so they can now look at the git submodules.
Unfortunately `reuse` chokes on the LLVM submodule - it finds the word "Copyright" or the unicode copyright symbol in all kinds of places, including UTF-8 test cases. The `reuse` tool expressly won't let you ignore folders, so we let it scan everything and then strip out the LLVM sub-folder in post. Instead, we add in a hand-curated list of copyright information gleaned by reading the LLVM codebase carefully, which is stored in `.reuse/dep5` in Debian format where `reuse` can find and use it.
The `.reuse/dep5` continues to track copyright info for files in the tree that do not have SPDX metadata in them (i.e. all of them)
2023-12-12 06:52:49 +01:00
hkalbasi
801c0ea478
Replace doc_comments_and_attrs
with collect_attrs
, 2nd round
2023-12-11 22:56:50 +03:30
Lukas Wirth
18591ae5c8
Always render the path to be imported in the completion detail
2023-12-11 18:37:12 +01:00
bors
4e82988aa2
Auto merge of #118344 - saethlin:rmeta-header-pos, r=WaffleLapkin
...
Use a u64 for the rmeta root position
Waffle noticed this in https://github.com/rust-lang/rust/pull/117301#discussion_r1405410174
We've upgraded the other file offsets to u64, and this one only costs 4 bytes per file. Also the way the truncation was being done before was extremely easy to miss, I sure missed it! It's not clear to me if not having this change effectively made the other upgrades from u32 to u64 ineffective, but we can have it now.
r? `@WaffleLapkin`
2023-12-11 17:21:14 +00:00
Guillaume Gomez
6adb21a408
Update rust-analyzer to support new injected_env_var
function
2023-12-11 16:44:33 +01:00
Kirill Bulatov
8ae42b55e7
Search for parent blocks and items when resolving inlay hints
2023-12-11 15:16:55 +02:00
Kirill Bulatov
be6d34b810
Query for nearest parent block around the hint to resolve
...
This way, parameter hints will be found for resolution
2023-12-11 14:53:51 +02:00
Laurențiu Nicola
71d98c53bd
Fix typo in cfg
2023-12-11 11:55:43 +02:00
Laurențiu Nicola
f532576ac5
Merge commit '457b966b171b09a7e57acb710fbca29a4b3526f0' into sync-from-ra
2023-12-11 11:16:01 +02:00
Ben Kimock
f9453e33c0
Apply suggestions from code review
...
Co-authored-by: Waffle Maybe <waffle.lapkin@gmail.com>
2023-12-10 23:26:40 -05:00
DropDemBits
1506435f65
Update various_resolve_strategies
test
...
The weird disjoint `Indel`s are likely an artifact of the tree diffing
algorithm we use.
2023-12-10 20:33:32 -05:00
DropDemBits
c486637ec5
Migrate replace_is_method_with_if_let_method
to mutable ast
2023-12-10 18:39:43 -05:00
DropDemBits
316269901f
Migrate generate_function
to mutable ast
2023-12-10 18:39:43 -05:00
DropDemBits
1e1761e9ae
Migrate extract_variable
to mutable ast
2023-12-10 18:37:51 -05:00
bors
457b966b17
Auto merge of #16039 - WaffleLapkin:don't-emit-missing-assoc-items-diagnostic-for-negative-impls, r=Veykril
...
fix: Don't emit "missing items" diagnostic for negative impls
Negative impls can't have items, so there is no reason for this diagnostic.
LMK if I should add a test somewhere. Also LMK if that's not how we usually check multiple things in an if in r-a.
2023-12-10 22:24:32 +00:00