diff options
| author | bors <bors@rust-lang.org> | 2021-10-03 10:30:16 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-10-03 10:30:16 +0000 |
| commit | 63b04f7d7f3ab6c34ecc1c732a6c61bf100f0ab3 (patch) | |
| tree | 6ee1015078c4f8dacf133a5554a981654d7053a4 | |
| parent | 33c34fb2d76aeff15ccafedc8b3ebb17bebbc782 (diff) | |
| parent | 0ebc656a9add6a08dac7d8be3e7f1983998bef34 (diff) | |
| download | rust-63b04f7d7f3ab6c34ecc1c732a6c61bf100f0ab3.tar.gz rust-63b04f7d7f3ab6c34ecc1c732a6c61bf100f0ab3.zip | |
Auto merge of #7755 - HKalbasi:master, r=xFrednet
exclude enum from derivable impls fix #7753 changelog: Exclude enum from ``[`derivable_impls`]``
| -rw-r--r-- | clippy_lints/src/derivable_impls.rs | 1 | ||||
| -rw-r--r-- | tests/ui/derivable_impls.rs | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/clippy_lints/src/derivable_impls.rs b/clippy_lints/src/derivable_impls.rs index 15252ef96cd..fdef0abe970 100644 --- a/clippy_lints/src/derivable_impls.rs +++ b/clippy_lints/src/derivable_impls.rs @@ -83,6 +83,7 @@ impl<'tcx> LateLintPass<'tcx> for DerivableImpls { if !attrs.iter().any(|attr| attr.doc_str().is_some()); if let child_attrs = cx.tcx.hir().attrs(impl_item_hir); if !child_attrs.iter().any(|attr| attr.doc_str().is_some()); + if adt_def.is_struct(); then { if let TyKind::Path(QPath::Resolved(_, p)) = self_ty.kind { if let Some(PathSegment { args: Some(a), .. }) = p.segments.last() { diff --git a/tests/ui/derivable_impls.rs b/tests/ui/derivable_impls.rs index 3eeebc117f3..a6412004726 100644 --- a/tests/ui/derivable_impls.rs +++ b/tests/ui/derivable_impls.rs @@ -227,4 +227,17 @@ impl Default for RepeatDefault2 { } } +// https://github.com/rust-lang/rust-clippy/issues/7753 + +pub enum IntOrString { + Int(i32), + String(String), +} + +impl Default for IntOrString { + fn default() -> Self { + IntOrString::Int(0) + } +} + fn main() {} |
