diff options
| -rw-r--r-- | clippy_lints/src/redundant_field_names.rs | 5 | ||||
| -rw-r--r-- | tests/ui/redundant_field_names.rs | 11 |
2 files changed, 15 insertions, 1 deletions
diff --git a/clippy_lints/src/redundant_field_names.rs b/clippy_lints/src/redundant_field_names.rs index 308f0066b69..d8d80f2d128 100644 --- a/clippy_lints/src/redundant_field_names.rs +++ b/clippy_lints/src/redundant_field_names.rs @@ -57,7 +57,10 @@ impl EarlyLintPass for RedundantFieldNames { continue; } if let ExprKind::Path(None, path) = &field.expr.node { - if path.segments.len() == 1 && path.segments[0].ident == field.ident { + if path.segments.len() == 1 + && path.segments[0].ident == field.ident + && path.segments[0].args.is_none() + { span_lint_and_sugg( cx, REDUNDANT_FIELD_NAMES, diff --git a/tests/ui/redundant_field_names.rs b/tests/ui/redundant_field_names.rs index 68adba92f8a..3d727ee6e6a 100644 --- a/tests/ui/redundant_field_names.rs +++ b/tests/ui/redundant_field_names.rs @@ -68,3 +68,14 @@ fn main() { let _ = RangeInclusive::new(start, end); let _ = RangeToInclusive { end: end }; } + +fn issue_3476() { + fn foo<T>() { + } + + struct S { + foo: fn(), + } + + S { foo: foo::<i32> }; +} |
