do not suggest enum tuple variant for named field variant

This commit is contained in:
Michael Goulet 2022-03-27 16:05:14 -07:00
parent dd6683fcda
commit 07776c111f
3 changed files with 27 additions and 2 deletions

View file

@ -336,7 +336,9 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
let compatible_variants: Vec<String> = expected_adt
.variants()
.iter()
.filter(|variant| variant.fields.len() == 1)
.filter(|variant| {
variant.fields.len() == 1 && variant.ctor_kind == hir::def::CtorKind::Fn
})
.filter_map(|variant| {
let sole_field = &variant.fields[0];
let sole_field_ty = sole_field.ty(self.tcx, substs);