mirror of https://github.com/rust-lang/rust
53 lines
1.8 KiB
Plaintext
53 lines
1.8 KiB
Plaintext
error[E0308]: mismatched types
|
|
--> $DIR/struct-path-self-type-mismatch.rs:7:23
|
|
|
|
|
LL | Self { inner: 1.5f32 };
|
|
| ^^^^^^ expected `i32`, found `f32`
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/struct-path-self-type-mismatch.rs:15:20
|
|
|
|
|
LL | impl<T> Foo<T> {
|
|
| - expected type parameter
|
|
LL | fn new<U>(u: U) -> Foo<U> {
|
|
| - found type parameter
|
|
...
|
|
LL | inner: u
|
|
| ^ expected type parameter `T`, found type parameter `U`
|
|
|
|
|
= note: expected type parameter `T`
|
|
found type parameter `U`
|
|
= 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
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/struct-path-self-type-mismatch.rs:13:9
|
|
|
|
|
LL | impl<T> Foo<T> {
|
|
| - ------ this is the type of the `Self` literal
|
|
| |
|
|
| found type parameter
|
|
LL | fn new<U>(u: U) -> Foo<U> {
|
|
| - ------ expected `Foo<U>` because of return type
|
|
| |
|
|
| expected type parameter
|
|
LL | / Self {
|
|
LL | |
|
|
LL | | inner: u
|
|
LL | |
|
|
LL | | }
|
|
| |_________^ expected `Foo<U>`, found `Foo<T>`
|
|
|
|
|
= note: expected struct `Foo<U>`
|
|
found struct `Foo<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
|
|
help: use the type name directly
|
|
|
|
|
LL | Foo::<U> {
|
|
| ~~~~~~~~
|
|
|
|
error: aborting due to 3 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0308`.
|