1 error[E0308]: mismatched types
2 --> $DIR/type-params-in-different-spaces-3.rs:3:9
4 LL | fn test<X>(u: X) -> Self {
5 | ---- expected `Self` because of return type
7 | ^ expected type parameter, found a different type parameter
9 = note: expected type `Self`
11 = note: a type parameter was expected, but a different one was found; you might be missing a type parameter or trait bound
12 = note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters
14 error: aborting due to previous error
16 For more information about this error, try `rustc --explain E0308`.