mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-30 13:51:31 +00:00
Fix incorrect missing field diagnostic with box patterns
This commit is contained in:
parent
20a911f3cc
commit
af4148970a
1 changed files with 13 additions and 4 deletions
|
@ -381,11 +381,20 @@ impl ast::RecordPatField {
|
|||
if let Some(name_ref) = self.name_ref() {
|
||||
return Some(NameOrNameRef::NameRef(name_ref));
|
||||
}
|
||||
if let Some(ast::Pat::IdentPat(pat)) = self.pat() {
|
||||
let name = pat.name()?;
|
||||
return Some(NameOrNameRef::Name(name));
|
||||
match self.pat() {
|
||||
Some(ast::Pat::IdentPat(pat)) => {
|
||||
let name = pat.name()?;
|
||||
Some(NameOrNameRef::Name(name))
|
||||
}
|
||||
Some(ast::Pat::BoxPat(pat)) => match pat.pat() {
|
||||
Some(ast::Pat::IdentPat(pat)) => {
|
||||
let name = pat.name()?;
|
||||
Some(NameOrNameRef::Name(name))
|
||||
}
|
||||
_ => None,
|
||||
},
|
||||
_ => None,
|
||||
}
|
||||
None
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue