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