aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_ty/src/diagnostics/pattern/usefulness.rs
diff options
context:
space:
mode:
authorDawer <[email protected]>2021-05-06 09:15:40 +0100
committerDawer <[email protected]>2021-05-31 20:03:46 +0100
commitde6f430140a49e3ecf34dcb914326bb5b9789772 (patch)
tree1f493d2e613d3aaa03ae2f3b70b563937f476378 /crates/hir_ty/src/diagnostics/pattern/usefulness.rs
parent975109051caf05de6d166779589e299d9aca9cd5 (diff)
Fix panics on pattern_arena.borrow with ugly cloning
Diffstat (limited to 'crates/hir_ty/src/diagnostics/pattern/usefulness.rs')
-rw-r--r--crates/hir_ty/src/diagnostics/pattern/usefulness.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/crates/hir_ty/src/diagnostics/pattern/usefulness.rs b/crates/hir_ty/src/diagnostics/pattern/usefulness.rs
index 28b9e71f8..3bfb7afed 100644
--- a/crates/hir_ty/src/diagnostics/pattern/usefulness.rs
+++ b/crates/hir_ty/src/diagnostics/pattern/usefulness.rs
@@ -94,12 +94,12 @@ impl PatIdExt for PatId {
94 fn expand_or_pat(self, cx: &MatchCheckCtx<'_>) -> Vec<Self> { 94 fn expand_or_pat(self, cx: &MatchCheckCtx<'_>) -> Vec<Self> {
95 fn expand(pat: PatId, vec: &mut Vec<PatId>, mut pat_arena: &mut PatternArena) { 95 fn expand(pat: PatId, vec: &mut Vec<PatId>, mut pat_arena: &mut PatternArena) {
96 if let PatKind::Or { pats } = pat_arena[pat].kind.as_ref() { 96 if let PatKind::Or { pats } = pat_arena[pat].kind.as_ref() {
97 // for pat in pats { 97 let pats = pats.clone();
98 // // TODO(iDawer): Ugh, I want to go back to references (PatId -> &Pat) 98 for pat in pats {
99 // let pat = pat_arena.alloc(pat.clone()); 99 // TODO(iDawer): Ugh, I want to go back to references (PatId -> &Pat)
100 // expand(pat, vec, pat_arena); 100 let pat = pat_arena.alloc(pat.clone());
101 // } 101 expand(pat, vec, pat_arena);
102 todo!() 102 }
103 } else { 103 } else {
104 vec.push(pat) 104 vec.push(pat)
105 } 105 }