Lukas Wirth
220d913cbc
Merge pull request #19366 from Veykril/push-mkunlxkysssr
...
chore: Remove legacy `SyntaxContextId` re-export
2025-03-15 16:25:13 +00:00
Lukas Wirth
02a793bd59
chore: Remove legacy SyntaxContextId re-export
2025-03-15 17:09:17 +01:00
Lukas Wirth
f19c416d45
fix: Fix missing with_durability calls
2025-03-15 15:53:23 +01:00
Chayim Refael Friedman
c94e9efbef
Salsify the crate graph
...
I.e. make it not one giant input but multiple, for incrementality and decreased memory usage for Salsa 3 reasons.
2025-03-12 21:02:30 +02:00
David Barsky
74620e64ec
internal: port rust-analyzer to new Salsa
2025-03-10 13:30:51 -04:00
Lukas Wirth
5249b8bf7e
Merge pull request #19327 from Veykril/push-qyyvkulltzpz
...
Fix `path` macro hygiene
2025-03-10 08:45:04 +00:00
Lukas Wirth
af7f89cc9d
Fix path macro hygiene
2025-03-10 09:29:27 +01:00
¨Florian
5335d8cbc5
Fix syntax fixup producing invalid punctuation
...
Fixes #19206 .
Fixes #18244 .
2025-03-08 13:21:00 +01:00
Lukas Wirth
9200f77068
More precise macro modifiers for syntax highlighting
2025-03-01 17:23:51 +01:00
BenjaminBrienen
b19ef6b046
fix doc tests
2025-02-27 14:58:46 +01:00
BenjaminBrienen
bd7375a58f
enable doctest
2025-02-27 14:58:46 +01:00
Lukas Wirth
6d68c475c7
Merge pull request #19191 from Veykril/push-yzzlosskwrxs
...
Remove `limit` crate in favor `usize`
2025-02-23 16:50:32 +00:00
Lukas Wirth
0b2e8166a1
Remove limit crate in favor usize
2025-02-23 17:35:09 +01:00
Lukas Wirth
88bc40aac0
Merge pull request #19189 from Veykril/push-qutznxznnwqn
...
minor: Improve unset `OUT_DIR` error message
2025-02-20 18:15:29 +00:00
Lukas Wirth
6b32c8329f
Improve unset OUT_DIR error message
2025-02-20 19:00:23 +01:00
Mehul Arora
3a31741627
Use correct working directory for non-workspace proc-macro execution
2025-02-17 10:36:32 -05:00
Lukas Wirth
09db657439
Merge pull request #19127 from ChayimFriedman2/different-generic-args
...
feat: Refactor path lowering and serve a new path diagnostic
2025-02-17 08:30:10 +00:00
Chayim Refael Friedman
55c04ab371
Refactor path lowering
...
And add a new diagnostic for non-`Fn` parenthesized generic args.
Path lowering started to look like a mess, with each function carrying additional parameters for the diagnostic callback (since paths can occur both in type and in expression/pattern position, and their diagnostic handling is different) and the segment index, for the diagnostics report. So I refactored it from stateless functions on `TyLoweringContext` into stateful struct, `PathLoweringContext`, that tracks the process of lowering a path from resolution til assoc types selection.
2025-02-16 19:44:50 +02:00
Chayim Refael Friedman
933832008b
Censor cfg_attr for attribute macros
...
This is not documented (and I discovered that from experimenting and looking at the compiler's source code), but cfg_attrs *on the same level* as the attribute macro should be processed before it is expanded. cfg_attrs *below* should not (and this is contrary to what happens with derive macros, where both should be processed).
2025-02-10 01:28:28 +02:00
Lukas Wirth
ab5e821d97
Expose symbol of CrateName
2025-02-04 14:38:58 +01:00
David Barsky
be3307450f
Back out "feat: Implement default-field-values"
...
This backs out commit 7de0b2e75a .
2025-01-27 17:30:35 -05:00
Shoyu Vanilla
7de0b2e75a
feat: Implement default-field-values
2025-01-27 19:38:35 +09:00
Lukas Wirth
76585539f5
Cleanup Name string rendering
2025-01-21 10:05:32 +01:00
Lukas Wirth
03ea40369f
Move dual blanket impl logic from source analyzer to goto_def
2025-01-20 16:24:42 +01:00
Lukas Wirth
93a5846784
Merge pull request #18967 from Veykril/push-pwonkmwqmmol
...
Properly record meaningful imports as re-exports in symbol index
2025-01-20 13:46:52 +00:00
Lukas Wirth
a06606c802
Fix import search not discarding rawness
2025-01-20 14:29:11 +01:00
1hakusai1
5384dd8947
Use Semantics::resolve_method_call_as_callable to find implementation
2025-01-20 21:17:48 +09:00
Lukas Wirth
4f35021ca9
Merge pull request #18907 from Veykril/push-uqlzpttmvurv
...
Implement `#[rust_analyzer::skip]` for bodies
2025-01-10 13:59:23 +00:00
Lukas Wirth
f209d50dcf
Implement #[rust_analyzer::skip] for bodies
2025-01-10 14:41:27 +01:00
Lukas Wirth
bf669dab84
Re-implement rust string highlighting via tool attribute
2025-01-10 13:49:35 +01:00
Chayim Refael Friedman
bbcb71a403
Fix another issue with fixup reversing
...
We need to *remove* the whole subtree, but we don't advance `i` by this, because it hasn't gotten there yet (and never will).
2025-01-09 22:02:44 +02:00
Lukas Wirth
3fe50ef83c
Merge pull request #18861 from ChayimFriedman2/await-edition
...
fix: Make edition per-token, not per-file
2025-01-09 10:20:11 +00:00
Lukas Wirth
646e96f68d
minor: Fixup macro error kinds
2025-01-09 09:38:58 +01:00
Chayim Refael Friedman
97afb7bfba
Make edition per-token, not per-file
...
More correctly, *also* per-token. Because as it turns out, while the top-level edition affects parsing (I think), the per-token edition affects escaping of identifiers/keywords.
2025-01-09 05:43:08 +02:00
Laurențiu Nicola
f5e698d0b0
Merge from rust-lang/rust
2025-01-07 17:57:53 +02:00
Laurențiu Nicola
bfb81275fb
Merge pull request #18852 from ChayimFriedman2/proc-macro-panic
...
fix: Fix a bug that was caused by fixup reversing
2025-01-06 18:38:24 +00:00
Chayim Refael Friedman
f7c4833830
Fix a bug that was caused by fixup reversing
2025-01-06 20:06:20 +02:00
Lukas Wirth
4b6007115a
minor: New clippy lints
2025-01-06 17:57:17 +01:00
Chayim Refael Friedman
ce323627c5
Support the new CoercePointee derive
2025-01-04 18:35:53 +02:00
Chayim Refael Friedman
ceba289f80
Store token trees in contiguous Vec instead of as a tree
...
I expected this to be faster (due to less allocations and better cache locality), but benchmarked it is not (neither it is slower). Memory usage, however, drops by ~50mb (of `analysis-stats .`). I guess tt construction is just not hot.
This also simplifies using even less memory for token trees by compressing equal span, which I plan to do right after.
Some workflows are more easily expressed with a flat tt, while some are better expressed with a tree. With the right helpers, though (which was mostly a matter of trial and error), even the worst workflows become very easy indeed.
2025-01-02 19:21:46 +02:00
bors
485f5e80e6
Auto merge of #134681 - lnicola:sync-from-ra, r=lnicola
...
Subtree update of `rust-analyzer`
r? `@ghost`
2024-12-23 12:18:14 +00:00
Laurențiu Nicola
a2a5b72c47
Merge from rust-lang/rust
2024-12-23 11:27:07 +02:00
Zalathar
aeec9ba525
Revert "Auto merge of #130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser"
...
This reverts commit 1d35638dc38dbfbf1cc2a9823135dfcf3c650169, reversing
changes made to f23a80a4c2fbca593b64e70f5970368824b4c5e9.
2024-12-23 12:30:37 +11:00
Chayim Refael Friedman
02d47f3a81
Fix a case where completion was unable to expand a macro
...
Which caused the macros of the popular `tracing` crate to not offer completions.
The reason is rather complicated: it boils down to macro ignoring their input and completion always choosing the first expansion.
2024-12-20 13:14:59 +02:00
ltdk
c180e41198
Stabilize #[coverage] attribute
2024-12-16 21:07:06 -05:00
Lukas Wirth
6aadbae022
Merge pull request #18674 from Veykril/push-lrxotqknvxvr
...
Show expansion errors in expand_macro feature
2024-12-13 08:50:45 +00:00
Lukas Wirth
28fbecff42
Show expansion errors in expand_macro feature
2024-12-13 09:36:03 +01:00
Lukas Wirth
f748eb510e
internal: Implement naked_asm! builtin
2024-12-12 17:43:27 +01:00
Laurențiu Nicola
30262281eb
Merge from rust-lang/rust
2024-12-11 11:49:08 +02:00
Ben Kimock
0843b6f308
Remove polymorphization
2024-12-06 16:42:09 -05:00