error[E0308]: mismatched types
--> $DIR/type-params-in-different-spaces-1.rs:5:17
|
+LL | trait BrokenAdd: Copy + Add<Output=Self> {
+ | ---------------------------------------- expected type parameter
+LL | fn broken_add<T>(&self, rhs: T) -> Self {
+ | - found type parameter
LL | *self + rhs
- | ^^^ expected type parameter, found a different type parameter
+ | ^^^ expected type parameter `Self`, found type parameter `T`
|
- = note: expected type `Self`
- found type `T`
+ = note: expected type parameter `Self`
+ found type parameter `T`
= note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound
= note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters