From: bors Date: Sat, 29 Aug 2020 10:07:05 +0000 (+0000) Subject: Auto merge of #75985 - csmoe:issue-61076-1, r=estebank X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=65d071eeb52eba78896dd09b95a80c647ef150e9;hp=1dc748fb3d2c54f536e6abd74f1ad34b3624f640;p=rust.git Auto merge of #75985 - csmoe:issue-61076-1, r=estebank Should not apply field accessing on enum Closes #75977 But I'm surprised that `x.py test --stage 1` and CI didn't catch this with existing testcase. r? @estebank --- diff --git a/src/librustc_typeck/check/expr.rs b/src/librustc_typeck/check/expr.rs index ad4418ddca7..1573fb96791 100644 --- a/src/librustc_typeck/check/expr.rs +++ b/src/librustc_typeck/check/expr.rs @@ -1545,13 +1545,17 @@ fn suggest_await_on_field_access( normalized_ty.kind, ); if let ty::Adt(def, _) = normalized_ty.kind { - if def.non_enum_variant().fields.iter().any(|field| field.ident == field_ident) { - err.span_suggestion_verbose( - base.span.shrink_to_hi(), - "consider awaiting before field access", - ".await".to_string(), - Applicability::MaybeIncorrect, - ); + // no field access on enum type + if !def.is_enum() { + if def.non_enum_variant().fields.iter().any(|field| field.ident == field_ident) + { + err.span_suggestion_verbose( + base.span.shrink_to_hi(), + "consider awaiting before field access", + ".await".to_string(), + Applicability::MaybeIncorrect, + ); + } } } }