Ensure that we don't try to access fields on a non-struct pattern type in diagnostic
Fix #135209.
This commit is contained in:
parent
ad211ced81
commit
5f04f98c9a
3 changed files with 38 additions and 1 deletions
|
@ -1130,7 +1130,9 @@ impl<'ast, 'ra: 'ast, 'tcx> LateResolutionVisitor<'_, 'ast, 'ra, 'tcx> {
|
|||
let None = following_seg else { return };
|
||||
for rib in self.ribs[ValueNS].iter().rev() {
|
||||
for (def_id, spans) in &rib.patterns_with_skipped_bindings {
|
||||
if let Some(fields) = self.r.field_idents(*def_id) {
|
||||
if let DefKind::Struct = self.r.tcx.def_kind(*def_id)
|
||||
&& let Some(fields) = self.r.field_idents(*def_id)
|
||||
{
|
||||
for field in fields {
|
||||
if field.name == segment.ident.name {
|
||||
if spans.iter().all(|(_, had_error)| had_error.is_err()) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue