rust/crates
bors a2f73d3142 Auto merge of #16879 - Nadrieril:fuel, r=Veykril
Add fuel to match checking

Exhaustiveness checking is NP-hard hence can take extremely long to check some specific matches. This PR makes ehxaustiveness bail after a set number of steps. I chose a bound that takes ~100ms on my machine, which should be more than enough for normal matches.

I'd like someone with less recent hardware to run the test to see if that limit is low enough for them. Also curious if the r-a team thinks this is a good ballpark or if we should go lower/higher. I don't have much data on how complex real-life matches get, but we can definitely go lower than `500 000` steps.

The second commit is a drive-by soundness fix which doesn't matter much today but will matter once `min_exhaustive_patterns` is stabilized.

Fixes https://github.com/rust-lang/rust-analyzer/issues/9528 cc `@matklad`
2024-03-19 14:44:05 +00:00
..
base-db Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
cfg Review Updates and added tests. 2024-03-11 11:05:59 -04:00
flycheck Use --workspace and --no-fail-fast in test explorer 2024-03-19 01:46:41 +03:30
hir fix: Goto implementation to impls inside blocks 2024-03-19 22:04:48 +09:00
hir-def Repalce Span with SyntaxContextId in MacroCallLoc 2024-03-15 12:47:05 +01:00
hir-expand Remove usages of SpanData where Span suffices 2024-03-15 13:02:40 +01:00
hir-ty Auto merge of #16879 - Nadrieril:fuel, r=Veykril 2024-03-19 14:44:05 +00:00
ide fix: Goto implementation to impls inside blocks 2024-03-19 22:04:48 +09:00
ide-assists fix: typo 2024-03-15 21:14:17 +08:00
ide-completion Auto merge of #16860 - Veykril:macarons, r=Veykril 2024-03-18 09:14:08 +00:00
ide-db Split SymbolKind::Function into Function and Method 2024-03-17 11:07:22 +01:00
ide-diagnostics Auto merge of #16879 - Nadrieril:fuel, r=Veykril 2024-03-19 14:44:05 +00:00
ide-ssr internal: Improve rooted upmapping 2024-03-12 13:46:58 +01:00
intern Merge commit '426d2842c1' into sync-from-ra2 2024-01-03 11:35:07 +02:00
limit Merge commit 'ddf105b646' into sync-from-ra 2024-02-11 08:40:19 +02:00
load-cargo Auto merge of #16335 - lnicola:salsa-lz4-file-text, r=Veykril 2024-03-11 13:43:33 +00:00
mbe Remove usages of SpanData where Span suffices 2024-03-15 13:02:40 +01:00
parser fix: Improve error recovery for match arms 2024-03-19 10:55:47 +01:00
paths Merge commit '4ef6a49b44' into sync-from-ra 2024-03-03 09:17:31 +02:00
proc-macro-api Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
proc-macro-srv Remove dead test code 2024-03-14 16:24:51 +01:00
proc-macro-srv-cli Merge commit 'ddf105b646' into sync-from-ra 2024-02-11 08:40:19 +02:00
profile Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
project-model internal: Delay drawing of workspace dev-dependency edges 2024-03-19 11:37:27 +01:00
rust-analyzer minor: Do progress reporting for crate-graph construction 2024-03-19 10:06:51 +01:00
salsa Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
sourcegen Merge commit 'ddf105b646' into sync-from-ra 2024-02-11 08:40:19 +02:00
span Remove usages of SpanData where Span suffices 2024-03-15 13:02:40 +01:00
stdx Remove dead test code 2024-03-14 16:24:51 +01:00
syntax internal: Move grammar codegen into xtask 2024-03-19 10:57:53 +01:00
test-fixture Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
test-utils Merge commit 'ac998a74b3' into sync-from-ra 2024-02-18 09:41:20 +02:00
text-edit Merge commit 'ddf105b646' into sync-from-ra 2024-02-11 08:40:19 +02:00
toolchain Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
tt feat: Support macro calls in eager macros for IDE features 2024-03-14 15:40:35 +01:00
vfs Merge commit '574e23ec50' into sync-from-ra 2024-03-10 08:47:38 +02:00
vfs-notify Merge commit 'a911652360' into sync-from-ra 2024-01-21 16:53:06 +02:00