2 Checks for cases where generics are being used and multiple
3 syntax specifications for trait bounds are used simultaneously.
6 Duplicate bounds makes the code
7 less readable than specifying them only once.
11 fn func<T: Clone + Default>(arg: T) where T: Clone + Default {}
16 fn func<T: Clone + Default>(arg: T) {}
20 fn func<T>(arg: T) where T: Clone + Default {}
24 fn foo<T: Default + Default>(bar: T) {}
28 fn foo<T: Default>(bar: T) {}
32 fn foo<T>(bar: T) where T: Default + Default {}
36 fn foo<T>(bar: T) where T: Default {}