Chayim Refael Friedman
791a63255b
Move some more AST makers to the quote macro
...
And implement addons as necessary.
There are many more makers to be moved, and I'm not completely satisfied with this (due to the ease of making a mistake in the AST structure, and slightly less but also because of the need to remember whitespaces), but this is already enough to see how this will look like.
2024-12-30 05:46:06 +02:00
Chayim Refael Friedman
abd7263179
Create a quote!
-like API for crafting AST nodes
...
Instead of messing with textual `make`.
And port one `make` helper to it, for the sake of testing.
2024-12-30 04:54:39 +02:00
Chayim Refael Friedman
505e82c19c
Add a function to convert a SyntaxKind to its text, where possible
...
This will also help for the make's quote macro.
2024-12-30 04:01:05 +02:00
Chayim Refael Friedman
737500137f
Generate a method for static retrieval of the SyntaxKind of a node, where possible
...
This will help for the quote macro for `ast::make`.
2024-12-30 03:13:17 +02:00
Lukas Wirth
fb2ca58583
fix: Fix invalid -O
flag used by cfg discovery
2024-12-29 16:04:17 +01:00
Lukas Wirth
90b724afad
Merge pull request #18785 from Veykril/push-uvsqposqyvmo
...
Cleanup toolchain info fetching
2024-12-29 12:57:31 +00:00
Lukas Wirth
98fde69dcf
Inline toolchain_info module
2024-12-29 13:43:12 +01:00
Lukas Wirth
11b351f44b
Merge pull request #18774 from Veykril/push-ysppqxpuknnw
...
Implement parameter variance inference
2024-12-29 12:34:48 +00:00
Lukas Wirth
f5fb2b9e9f
Force a current dir to be supplied for rustc info fetching
2024-12-29 13:26:04 +01:00
Lukas Wirth
8d2b12fe0e
Split out ProjectWorkspace::load_cargo
2024-12-29 12:54:41 +01:00
Lukas Wirth
5ce14b0439
Enforce a current directory being set for spawned commands
2024-12-29 12:51:13 +01:00
Lukas Wirth
0f95e60da3
Cleanup toolchain info fetching
2024-12-29 12:25:51 +01:00
Lukas Wirth
885b6c697c
Merge pull request #18784 from Veykril/push-pqtwsvquxoty
...
fix: Do not merge spans if they have different anchors
2024-12-29 10:44:04 +00:00
Lukas Wirth
49b509310c
fix: Do not merge spans if they have different anchors
2024-12-29 11:29:32 +01:00
Lukas Wirth
2d299ab8a4
Describe variance resolution approach differences to rustc
2024-12-29 10:53:17 +01:00
Chayim Refael Friedman
664e1a18c9
Consider Enum::Variant
even when it comes from a different crate
2024-12-28 22:43:51 +02:00
Lukas Wirth
bb921fbe94
Show variance of parameters on hover
2024-12-28 20:31:20 +01:00
Lukas Wirth
60e28c6bd9
Simplify
2024-12-28 19:54:22 +01:00
Lukas Wirth
9419e199d8
Get rid of constrain and solve steps
2024-12-28 19:54:22 +01:00
Lukas Wirth
85119b528a
Remove unnecessary VarianceTerm
2024-12-28 19:54:22 +01:00
Lukas Wirth
eee2761140
Implement parameter variance inference
2024-12-28 19:54:22 +01:00
Lukas Wirth
dc6cea57a2
Merge pull request #18778 from Veykril/push-oontvoqmxkno
...
fix: Fix flycheck diagnostics flickering for binary targets
2024-12-28 17:31:11 +00:00
Lukas Wirth
17b3662755
Add DynTyExt::principal_id
2024-12-28 18:26:45 +01:00
Lukas Wirth
c800485555
Downgrade salsa log levels
2024-12-28 18:23:24 +01:00
Lukas Wirth
cf307438bc
fix: Fix flycheck diagnostics flickering for binary targets
2024-12-28 18:16:55 +01:00
Erithax
c7f5021de1
fix doc typo
2024-12-27 23:13:09 +01:00
Lukas Wirth
a77cf8e189
Merge pull request #18744 from gbbosak/master
...
Treat ; as a terminator rather part of a glued expression
2024-12-27 09:57:02 +00:00
Lukas Wirth
1ce4de2585
Merge pull request #18762 from davidbarsky/davidbarsky/wrap-salsa-cancellation-error
...
internal: wrap `salsa::Cycle`
2024-12-26 15:42:53 +00:00
Lukas Wirth
7514a92018
Merge pull request #18761 from Veykril/push-vktnzltnxupr
...
internal: Swallow `error: config value is not set` cargo error
2024-12-26 15:28:24 +00:00
David Barsky
3ff2596c3f
internal: wrap salsa::Cycle
2024-12-26 10:26:42 -05:00
Lukas Wirth
e820c4da90
internal: Swallow error: config value is not set
cargo error
2024-12-26 16:13:39 +01:00
Lukas Wirth
ed8227c649
internal: Workaround salsa cycles leaking
2024-12-26 14:55:20 +01:00
roife
5a3d1a6d0d
fix missing name enum when hovering on fields in variants
2024-12-25 07:28:26 +08:00
Lukas Wirth
493ac4d4df
Merge pull request #18743 from ChayimFriedman2/e0107
...
feat: Unify handling of path diagnostics in hir-ty
2024-12-24 17:13:07 +00:00
Lukas Wirth
79d9330560
Merge pull request #18754 from Veykril/push-zkkzxrsxnqnm
...
Cleanup target fetching for cargo metadata
2024-12-24 17:03:31 +00:00
Chayim Refael Friedman
cc11e1a796
Unify handling of path diagnostics in hir-ty
...
Because it was a mess.
Previously, pretty much you had to handle all path diagnostics manually: remember to check for them and handle them. Now, we wrap the resolver in `TyLoweringContext` and ensure proper error reporting.
This means that you don't have to worry about them: most of the things are handled automatically, and things that cannot will create a compile-time error (forcing you top `drop(ty_lowering_context);`) if forgotten, instead of silently dropping the diagnostics.
The real place for error reporting is in the hir-def resolver, because there are other things resolving, both in hir-ty and in hir-def, and they all need to ensure proper diagnostics. But this is a good start, and future compatible.
This commit also ensures proper path diagnostics for value/pattern paths, which is why it's marked "feat".
2024-12-24 18:58:52 +02:00
Lukas Wirth
029261f9cc
Cleanup target fetching for cargo metadata
2024-12-24 17:49:07 +01:00
Lukas Wirth
e30ce42671
Merge pull request #18707 from ChayimFriedman2/subst
...
feat: Show substitution where hovering over generic things
2024-12-24 14:16:16 +00:00
Lukas Wirth
633a10cb58
Merge pull request #18718 from Giga-Bowser/fix-syntaxfactory-intoiterator
...
internal: Standardize how we take iterator parameters in `SyntaxFactory`
2024-12-24 14:12:52 +00:00
Lukas Wirth
c67964884a
Merge pull request #18750 from Veykril/push-tyvtqpwrwvsr
...
Back out "internal: Disable rustc test metrics"
2024-12-24 09:52:37 +00:00
Lukas Wirth
9997374b0c
Remove dangling outdated test module
2024-12-24 10:37:24 +01:00
Lukas Wirth
2c500e2939
Merge pull request #18749 from PrototypeNM1/windows-debugger-wait
...
minor: Break out of waiting for debugger on Windows using native debugger check API.
2024-12-24 08:40:56 +00:00
Nicholas Rishel
f8f7d37b8b
minor: Break out of waiting for debugger on Windows using native debugger check API.
...
For Windows, this removes the need to add a breakpoint and modify a value to exit the debugger wait loop.
As a ridealong, this adds a 100ms sleep for all platforms such that waiting for the debugger doesn't hog the CPU thread.
2024-12-23 14:33:26 -08:00
Laurențiu Nicola
a2a5b72c47
Merge from rust-lang/rust
2024-12-23 11:27:07 +02:00
Brian Bosak
5162a9ab1c
Treat ; as a terminator rather than something that can be glued together in an expression
2024-12-22 16:44:01 -06:00
Lukas Wirth
fa4a40bbe8
Merge pull request #18742 from Veykril/push-yswvkzmsvqql
...
fix: Fix flycheck workspace when requested but package was found
2024-12-22 13:42:39 +00:00
Lukas Wirth
4a86434cf5
fix: Fix flycheck workspace when requested but package was found
2024-12-22 14:28:17 +01:00
Lukas Wirth
2e5998a9bf
fix: Delay initial flycheck until after build scripts
2024-12-22 14:18:53 +01:00
Lukas Wirth
066284addd
Merge pull request #18738 from Veykril/push-vqxqutskzvvu
...
fix: Properly check if workspace flychecking is allowed
2024-12-22 12:11:00 +00:00
Lukas Wirth
d67b900edd
Merge pull request #18740 from Veykril/push-tntsvtmtlotw
...
fix: Fix empty check diagnostics not marking files as changed
2024-12-22 11:52:59 +00:00