error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:13:36 | LL | fn deref_derefmut(x: T) -> impl Deref + DerefMut { | ^^^^^^^^^^^^^^^^^ | = note: `-D clippy::implied-bounds-in-impls` implied by `-D warnings` = help: to override `-D warnings` add `#[allow(clippy::implied_bounds_in_impls)]` help: try removing this bound | LL - fn deref_derefmut(x: T) -> impl Deref + DerefMut { LL + fn deref_derefmut(x: T) -> impl DerefMut { | error: this bound is already specified as the supertrait of `GenericSubtrait` --> tests/ui/implied_bounds_in_impls.rs:30:37 | LL | fn generics_implied() -> impl GenericTrait + GenericSubtrait | ^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_implied() -> impl GenericTrait + GenericSubtrait LL + fn generics_implied() -> impl GenericSubtrait | error: this bound is already specified as the supertrait of `GenericSubtrait<(), i32, V>` --> tests/ui/implied_bounds_in_impls.rs:36:40 | LL | fn generics_implied_multi() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), i32, V> {} | ^^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_implied_multi() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), i32, V> {} LL + fn generics_implied_multi() -> impl GenericTrait2 + GenericSubtrait<(), i32, V> {} | error: this bound is already specified as the supertrait of `GenericSubtrait<(), i32, V>` --> tests/ui/implied_bounds_in_impls.rs:36:60 | LL | fn generics_implied_multi() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), i32, V> {} | ^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_implied_multi() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), i32, V> {} LL + fn generics_implied_multi() -> impl GenericTrait + GenericSubtrait<(), i32, V> {} | error: this bound is already specified as the supertrait of `GenericSubtrait<(), T, V>` --> tests/ui/implied_bounds_in_impls.rs:38:44 | LL | fn generics_implied_multi2() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), T, V> | ^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_implied_multi2() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), T, V> LL + fn generics_implied_multi2() -> impl GenericTrait2 + GenericSubtrait<(), T, V> | error: this bound is already specified as the supertrait of `GenericSubtrait<(), T, V>` --> tests/ui/implied_bounds_in_impls.rs:38:62 | LL | fn generics_implied_multi2() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), T, V> | ^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_implied_multi2() -> impl GenericTrait + GenericTrait2 + GenericSubtrait<(), T, V> LL + fn generics_implied_multi2() -> impl GenericTrait + GenericSubtrait<(), T, V> | error: this bound is already specified as the supertrait of `GenericSubtrait<(), i32, ()>` --> tests/ui/implied_bounds_in_impls.rs:48:28 | LL | fn generics_same() -> impl GenericTrait + GenericSubtrait<(), i32, ()> {} | ^^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn generics_same() -> impl GenericTrait + GenericSubtrait<(), i32, ()> {} LL + fn generics_same() -> impl GenericSubtrait<(), i32, ()> {} | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:52:20 | LL | fn f() -> impl Deref + DerefMut; | ^^^^^ | help: try removing this bound | LL - fn f() -> impl Deref + DerefMut; LL + fn f() -> impl DerefMut; | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:57:20 | LL | fn f() -> impl Deref + DerefMut { | ^^^^^ | help: try removing this bound | LL - fn f() -> impl Deref + DerefMut { LL + fn f() -> impl DerefMut { | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:63:20 | LL | fn f() -> impl Deref + DerefMut { | ^^^^^ | help: try removing this bound | LL - fn f() -> impl Deref + DerefMut { LL + fn f() -> impl DerefMut { | error: this bound is already specified as the supertrait of `PartialOrd` --> tests/ui/implied_bounds_in_impls.rs:74:41 | LL | fn default_generic_param1() -> impl PartialEq + PartialOrd + Debug {} | ^^^^^^^^^ | help: try removing this bound | LL - fn default_generic_param1() -> impl PartialEq + PartialOrd + Debug {} LL + fn default_generic_param1() -> impl PartialOrd + Debug {} | error: this bound is already specified as the supertrait of `PartialOrd` --> tests/ui/implied_bounds_in_impls.rs:75:54 | LL | fn default_generic_param2() -> impl PartialOrd + PartialEq + Debug {} | ^^^^^^^^^ | help: try removing this bound | LL - fn default_generic_param2() -> impl PartialOrd + PartialEq + Debug {} LL + fn default_generic_param2() -> impl PartialOrd + Debug {} | error: this bound is already specified as the supertrait of `DoubleEndedIterator` --> tests/ui/implied_bounds_in_impls.rs:88:26 | LL | fn my_iter() -> impl Iterator + DoubleEndedIterator { | ^^^^^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn my_iter() -> impl Iterator + DoubleEndedIterator { LL + fn my_iter() -> impl DoubleEndedIterator { | error: this bound is already specified as the supertrait of `Copy` --> tests/ui/implied_bounds_in_impls.rs:93:27 | LL | fn f() -> impl Copy + Clone { | ^^^^^ | help: try removing this bound | LL - fn f() -> impl Copy + Clone { LL + fn f() -> impl Copy { | error: this bound is already specified as the supertrait of `Trait2` --> tests/ui/implied_bounds_in_impls.rs:107:21 | LL | fn f2() -> impl Trait1 + Trait2 {} | ^^^^^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn f2() -> impl Trait1 + Trait2 {} LL + fn f2() -> impl Trait2 {} | error: this bound is already specified as the supertrait of `Trait4` --> tests/ui/implied_bounds_in_impls.rs:122:21 | LL | fn f3() -> impl Trait3 + Trait4 {} | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | help: try removing this bound | LL - fn f3() -> impl Trait3 + Trait4 {} LL + fn f3() -> impl Trait4 {} | error: this bound is already specified as the supertrait of `Y` --> tests/ui/implied_bounds_in_impls.rs:149:21 | LL | fn f3() -> impl X + Y {} | ^ | help: try removing this bound | LL - fn f3() -> impl X + Y {} LL + fn f3() -> impl Y {} | error: this bound is already specified as the supertrait of `Y` --> tests/ui/implied_bounds_in_impls.rs:150:21 | LL | fn f4() -> impl X + Y {} | ^ | help: try removing this bound | LL - fn f4() -> impl X + Y {} LL + fn f4() -> impl Y {} | error: this bound is already specified as the supertrait of `Y` --> tests/ui/implied_bounds_in_impls.rs:151:21 | LL | fn f5() -> impl X + Y {} | ^^^^^^^^^^^^^ | help: try removing this bound | LL - fn f5() -> impl X + Y {} LL + fn f5() -> impl Y {} | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:154:17 | LL | fn apit(_: impl Deref + DerefMut) {} | ^^^^^ | help: try removing this bound | LL - fn apit(_: impl Deref + DerefMut) {} LL + fn apit(_: impl DerefMut) {} | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:157:20 | LL | fn f() -> impl Deref + DerefMut; | ^^^^^ | help: try removing this bound | LL - fn f() -> impl Deref + DerefMut; LL + fn f() -> impl DerefMut; | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:165:23 | LL | type Assoc = impl Deref + DerefMut; | ^^^^^ | help: try removing this bound | LL - type Assoc = impl Deref + DerefMut; LL + type Assoc = impl DerefMut; | error: this bound is already specified as the supertrait of `DerefMut` --> tests/ui/implied_bounds_in_impls.rs:171:18 | LL | type Tait = impl Deref + DerefMut; | ^^^^^ | help: try removing this bound | LL - type Tait = impl Deref + DerefMut; LL + type Tait = impl DerefMut; | error: aborting due to 23 previous errors