Lukas Wirth
fe5a925a74
Merge pull request #19984 from WaffleLapkin/unprefer_align
...
remove `pref_align_of` intrinsic handling, rename `{min_=>}align_of{,_val}`
2025-06-14 05:13:06 +00:00
Tadeo Kondrak
a7c09532a0
Allow lifetime repeats in macros: $($x)'a*
...
This works in rustc. This change isn't motivated by any real code.
I just learned about it and decided to see why it doesn't work with
rust-analyzer.
2025-06-13 18:13:01 -06:00
Waffle Lapkin
cfc416a7ba
remove pref_align_of
intrinsic handling, rename {min_=>}align_of{,_val}
2025-06-13 21:31:46 +02:00
Lukas Wirth
a497f4114c
Merge pull request #19997 from Veykril/push-xltylvqtpwzx
...
Remove `InternedCallableDefId`
2025-06-13 15:41:49 +00:00
Lukas Wirth
133418e3cc
Remove InternedCallableDefId
...
It's unnecessary
2025-06-13 17:30:50 +02:00
Lukas Wirth
8643a858db
Turn BlockId
into a #[salsa::tracked]
2025-06-13 17:30:04 +02:00
Lukas Wirth
9f051ee104
Use ThinVec
in ItemScope
in a couple places
2025-06-13 15:34:03 +02:00
Lukas Wirth
b9ce647cf1
Bring back EMPTY item tree deduplication
2025-06-13 14:51:23 +02:00
Lukas Wirth
c0258d01ba
Merge pull request #19990 from Veykril/push-zkvrlrotmuzr
...
Generate annotations for macro defined items if their name is in the input
2025-06-13 11:41:26 +00:00
Lukas Wirth
d78cade65e
Generate annotations for macro defined items if their name is in the input
2025-06-13 13:30:09 +02:00
Lukas Wirth
bd002fe65c
Merge pull request #19982 from Veykril/push-uptnmqtlylsx
...
Simplify and optimize `ItemTree`
2025-06-13 11:16:24 +00:00
Lukas Wirth
16ebd2990f
Remove unnecessary item tree query calls
2025-06-13 13:05:52 +02:00
Lukas Wirth
23712aea06
cargo upgrade
2025-06-13 10:08:20 +02:00
Lukas Wirth
048a01a05d
Remove ast ids from item tree mod items
2025-06-13 08:47:25 +02:00
Lukas Wirth
65e2e2c083
Split mod items into small and big variants
2025-06-13 08:24:50 +02:00
Lukas Wirth
ace69d93e0
Store item tree visibilities in a thin vec
2025-06-13 08:09:57 +02:00
Lukas Wirth
87f99c7dbd
Merge pull request #19985 from ChayimFriedman2/proc-macro-srv-ast-id
...
fix: Support spans with proc macro servers from before the ast id changes
2025-06-12 13:26:03 +00:00
Chayim Refael Friedman
3e834add61
Support spans with proc macro servers from before the ast id changes
...
The only thing changed is the value of the fixup ast id, so we just swap it.
2025-06-12 16:08:48 +03:00
Lukas Wirth
17d848a1bb
Fix tests
2025-06-12 14:01:46 +02:00
Lukas Wirth
d8a6aaef96
Return item tree query results by ref
2025-06-12 13:35:43 +02:00
Lukas Wirth
2448abdb55
Remove dead code
2025-06-12 13:35:43 +02:00
Lukas Wirth
23eef0c4ea
Shrink ModItem
by usize
2025-06-12 13:35:43 +02:00
Chayim Refael Friedman
8715e6f8ac
Merge pull request #19983 from ChayimFriedman2/proc-macro-eq
...
fix: Fix comparison of proc macros
2025-06-12 10:42:21 +00:00
Chayim Refael Friedman
4f54885901
Fix comparison of proc macros
...
Comparing the TypeId is not enough, they also contain data.
2025-06-12 13:31:55 +03:00
Lukas Wirth
83a7ecdead
Remove AttrOwner
2025-06-12 12:09:41 +02:00
Lukas Wirth
f27268f319
Ditch the unnecessary smallvec
2025-06-12 11:27:55 +02:00
Lukas Wirth
8930c58d30
Coalesce item tree data maps
2025-06-12 11:21:26 +02:00
Lukas Wirth
80996dca35
AttrOwner
needs no ModItem
2025-06-12 11:05:18 +02:00
Lukas Wirth
f3434f537f
Remove FileItemTreeId
2025-06-12 10:25:06 +02:00
Lukas Wirth
e9f8ecab45
Remove ItemTreeId
2025-06-12 10:25:06 +02:00
Lukas Wirth
7011fd054f
Merge pull request #19981 from Veykril/push-tzzunsrqqunv
...
fix: Do not force descend into derives for goto IDE features
2025-06-12 07:48:49 +00:00
Lukas Wirth
c8cedae2f9
fix: Do not force descend into derives for goto IDE features
...
Doing so can cause us to duplicate navigation targets for the same ranges which breaks convenience features of some editors where go to def can trigger find all references
2025-06-12 09:37:45 +02:00
Lukas Wirth
13494f4cac
ItemTree
's ItemVisibilities
has no identity, so deduplicate
2025-06-12 09:14:43 +02:00
Lukas Wirth
c15fc9a344
Merge pull request #19837 from ChayimFriedman2/stable-astid
...
Provide better incrementality when items are changed
2025-06-12 06:09:01 +00:00
Chayim Refael Friedman
9a1063f266
LRU ast id map
...
We can do that and it's pretty heavy.
2025-06-12 08:50:43 +03:00
Chayim Refael Friedman
0a1a78cb87
Remove most of the item tree
...
I'm joking, but now that the def map is the only thing that uses the item tree, we can remove a lot of things from it that aren't needed for the def map.
2025-06-12 08:50:43 +03:00
Chayim Refael Friedman
ed0b4506dd
Avoid referring to the item tree except in the def map
...
Item tree IDs are very unstable (adding an item of a kind invalidates all following items of the same kind). Instead use ast ids, which, since the previous commit, are pretty stable.
2025-06-12 08:50:40 +03:00
Chayim Refael Friedman
4bcf03e28b
Use stable AST IDs
...
Instead of simple numbering, we hash important bits, like the name of the item.
This will allow for much better incrementality, e.g. when you add an item. Currently, this invalidates the IDs of all following items, which invalidates pretty much everything.
2025-06-12 08:47:22 +03:00
Lukas Wirth
2095af26ad
Merge pull request #19942 from ChayimFriedman2/faux
...
fix: Fix completion with some attribute macros
2025-06-12 05:44:34 +00:00
David Barsky
210c71eac5
hir-ty: test (the absence of) incremental trait solving
2025-06-11 12:12:58 -04:00
Lukas Wirth
f7b7db8b8c
Merge pull request #19973 from Veykril/push-ppltxvqvqmkk
...
fix: Hide dyn inlay hints for incomplete `impl`s
2025-06-11 10:01:01 +00:00
Lukas Wirth
4cf958cfd4
fix: Hide dyn inlay hints for incomplete impl
s
2025-06-11 11:49:44 +02:00
Chayim Refael Friedman
8ca5ad6bdd
Fix proc macro server handling of strings with minuses
...
It used to decompose them thinking they were numbers.
2025-06-11 01:03:35 +03:00
Chayim Refael Friedman
9c3476d225
Merge pull request #19964 from Wilfred/fix_typos
...
[minor] Fix typos
2025-06-10 12:32:44 +00:00
Wilfred Hughes
e7ae13368b
[minor] Fix typos
2025-06-10 13:22:03 +01:00
Lukas Wirth
f15267aaf4
Merge pull request #19963 from ChayimFriedman2/unsized-impl-items
...
fix: Do not error at impls for unsized types that do not include `where Self: Sized` items
2025-06-10 11:37:30 +00:00
Chayim Refael Friedman
6f4a6d4349
Do not error at impls for unsized types that do not include where Self: Sized
items
2025-06-10 14:04:21 +03:00
David Barsky
bf6d445810
Merge pull request #19930 from regexident/dyn-semantics-take-two
...
Make `Semantics<'db, DB>` support `Semantics<'db, dyn HirDatabase>`, take two
2025-06-09 18:18:49 +00:00
Laurențiu Nicola
273514a9fb
Merge from rust-lang/rust
2025-06-09 15:44:40 +03:00
Chayim Refael Friedman
14cb64c9d9
Stabilize the "JSON is not Rust" diagnostic
2025-06-09 00:35:40 +03:00