Lukas Wirth
882ae7105d
Simplify unresolved proc-macro handling
2024-06-30 13:26:13 +02:00
Lukas Wirth
8df034d453
Shrink mbe's Op
2024-06-24 10:07:32 +02:00
Lukas Wirth
e052b3e9a6
Intern ModPath within RawVisibility
2024-06-24 10:07:32 +02:00
Lukas Wirth
5548aecdca
Save a bit on empty item trees by deduplicating them
2024-06-24 10:07:32 +02:00
Lukas Wirth
3168ab5b99
Enum variants are not generic def ids
2024-06-24 10:07:31 +02:00
Lukas Wirth
c01f4cf902
Simplify
2024-06-21 18:27:05 +02:00
Lukas Wirth
480bfd5a7d
There can only be one self param
2024-06-21 17:55:16 +02:00
Lukas Wirth
f9bb5476c3
fix: Fix pat fragment parsers choking on <eoi>
2024-06-17 19:42:56 +02:00
bors
6b8b8ff4c5
Auto merge of #17417 - Wilfred:intern_macros_salsa, r=Veykril
...
refactor: Prefer plain trait definitions over macros for impl_intern_value_trivial
`impl_intern_value_trivial` can be defined with a trait directly, so prefer that over a macro definition.
2024-06-14 06:20:26 +00:00
Wilfred Hughes
3874681cb6
Prefer plain trait definitions over macros for salsa
2024-06-13 17:32:06 -07:00
Wilfred Hughes
d68e549205
internal: Fix rustdoc warnings
...
`cargo doc` generates a bunch of warnings on rust-analyzer. Fix all the
bare URL and empty code block warnings.
2024-06-13 17:29:10 -07:00
bors
fa486e694e
Auto merge of #17406 - Veykril:modpath-clone, r=Veykril
...
internal: Don't unnecessarily clone ModPaths out of interning wrappers
2024-06-12 09:49:41 +00:00
Lukas Wirth
ba543f7d76
internal: Don't unnecessarily clone ModPaths out of interning wrappers
2024-06-12 11:43:36 +02:00
bors
22648b2655
Auto merge of #17405 - Veykril:modpath-clone, r=Veykril
...
internal: Don't unnecessarily clone ModPaths in early name res
2024-06-12 09:27:49 +00:00
Lukas Wirth
855282fa53
internal: Don't unnecessarily clone ModPaths in early name res
2024-06-12 11:25:19 +02:00
bors
b5e0d7c349
Auto merge of #17398 - Veykril:bogus-file, r=Veykril
...
internal: Remove FileId::BOGUS
2024-06-12 07:19:31 +00:00
Lukas Wirth
8ebabce475
internal: Remove FileId::BOGUS
2024-06-12 08:16:07 +02:00
Young-Flash
6403bdb930
minor: use push_str instead
2024-06-09 22:31:55 +08:00
Young-Flash
e8941dae46
internal: tweak test case
2024-06-09 20:55:40 +08:00
Young-Flash
dcbc76b967
internal: better print style for hir
2024-06-09 12:00:43 +08:00
Wilfred Hughes
27182bb96b
chore: Prefer tracing span shorthand macros
2024-06-06 16:52:25 -07:00
bors
af488c971f
Auto merge of #17352 - roife:fix-issue-17338, r=Veykril
...
fix: do not resolve prelude within block modules
fix #17338 (continuing from #17251 ).
In #17251 , we injected preludes into non-top-level modules, which leading to r-a to directly resolve names in preludes in block modules. This PR fix it by checking whether the module is a pseudo-module introduced by blocks. (similar to what we do for extern preludes)
2024-06-06 09:40:39 +00:00
roife
c330c62aa2
fix: do not resolve prelude within block modules
2024-06-06 16:55:09 +08:00
Lukas Wirth
97b58f2846
Try caching macro calls more aggressively
2024-06-04 15:23:00 +02:00
Lukas Wirth
6f0207d594
Cleanup some inert attribute stuff
2024-06-04 12:38:20 +02:00
Lukas Wirth
f1dbb958c8
Add fuel to find_path
2024-06-03 20:07:00 +02:00
Lukas Wirth
f94d34bd72
Remove an allocation in find_path::find_local_import_locations
2024-06-03 19:57:49 +02:00
Lukas Wirth
48822e0941
Simplify
2024-06-03 19:46:40 +02:00
Lukas Wirth
426d01eab0
Deduplicate
2024-06-03 19:26:11 +02:00
Lukas Wirth
db80216dac
Fix find_path search not reducing scope appropriately for foreign items
2024-06-03 19:21:19 +02:00
Lukas Wirth
60fa981df1
Simplify
2024-06-03 19:06:58 +02:00
Nilstrieb
0e1353bebd
Don't mark #[rustc_deprecated_safe_2024]
functions as unsafe
...
`std::env::set_var` will be unsafe in edition 2024, but not before it.
I couldn't quite figure out how to check for the span properly, so for now
we just turn the false positives into false negatives, which are less bad.
2024-06-02 15:04:26 +02:00
bors
d4da3f925c
Auto merge of #17251 - roife:fix-issue-17057, r=Veykril
...
fix: resolve extern prelude for local mods in block modules
fix https://github.com/rust-lang/rust-analyzer/issues/17057 , https://github.com/rust-lang/rust-analyzer/issues/17032 .
We should use `ModuleOrigin` to check if the current module is a pseudo-module introduced by blocks (where names might be shadowed), rather than checking `block_def_map`.
2024-05-22 20:11:24 +00:00
Lukas Wirth
3a7dcf91c4
Simplify
2024-05-22 21:57:44 +02:00
David Barsky
b75301cec8
internal: refactor prefer_no_std
/prefer_prelude
bools into a struct
2024-05-22 20:46:30 +02:00
roife
d9cc159b26
fix: check pseudo-block by local_id instead of ModuleOrigin
2024-05-23 02:39:53 +08:00
bors
6a16749eb0
Auto merge of #17277 - Veykril:find-path-fixes, r=Veykril
...
fix: Various find path fixes
Fixes https://github.com/rust-lang/rust-analyzer/issues/17271
2024-05-22 18:22:32 +00:00
bors
42a8500ebf
Auto merge of #17279 - Veykril:format_args-escape, r=Veykril
...
fix: Fix format_args lowering passing incorrect parameters to `rustc_parse_format`
2024-05-22 14:12:22 +00:00
Lukas Wirth
4f17d07e69
fix: Fix format_args lowering passing incorrect parameters to rustc_parse_format
2024-05-22 16:11:06 +02:00
bors
daf66ad8eb
Auto merge of #17268 - Veykril:signatures, r=Veykril
...
feat: More callable info
With this PR we retain more info about callables other than functions, allowing for closure parameter type inlay hints to be linkable as well as better signature help around closures and `Fn*` implementors.
2024-05-22 12:48:17 +00:00
Lukas Wirth
ca06b090d7
expectify find_path tests
2024-05-22 14:05:24 +02:00
Lukas Wirth
c88b421853
fix: Fix general find-path inconsistencies
2024-05-22 14:05:24 +02:00
roife
48dc20f80d
test: add tests for extern preludes resolving in local mods
2024-05-21 20:35:55 +08:00
Laurențiu Nicola
49cae17fa2
Merge from rust-lang/rust
2024-05-19 11:20:26 +03:00
Lukas Wirth
cd9e90cc71
Update builtin tool list
2024-05-18 10:52:05 +02:00
roife
55db9530eb
fix: resolve extern prelude for local mods in block modules
2024-05-17 23:29:00 +08:00
bors
77c7886283
Auto merge of #17227 - Veykril:build-deps-changed-hashes, r=Veykril
...
fix: Hash file contents to verify whether file actually changed
Fixes https://github.com/rust-lang/rust-analyzer/issues/16580
2024-05-14 10:48:18 +00:00
Lukas Wirth
1ca97ba896
Hash file contents to verify whether file actually changed
2024-05-14 11:55:12 +02:00
bors
d28111dce8
Auto merge of #17224 - Veykril:lock-bump, r=Veykril
...
Bump Cargo.lock
2024-05-14 08:59:34 +00:00
Lukas Wirth
2a4be8d1f7
Bump Cargo.lock
2024-05-14 10:57:02 +02:00