Merge pull request #18419 from ChayimFriedman2/leading-or

fix: Put leading `|` in patterns under `OrPat`
This commit is contained in:
Lukas Wirth 2024-10-27 11:25:16 +00:00 committed by GitHub
commit 3b3a87fe9b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 87 additions and 31 deletions

View file

@ -1598,6 +1598,10 @@ impl ExprCollector<'_> {
for (id, _) in current_is_used.into_iter() {
binding_list.check_is_used(self, id);
}
if let &[pat] = &*pats {
// Leading pipe without real OR pattern. Leaving an one-item OR pattern may confuse later stages.
return pat;
}
Pat::Or(pats.into())
}
ast::Pat::ParenPat(p) => return self.collect_pat_opt(p.pat(), binding_list),